Create airflow_integration.mdx#1058
Conversation
Greptile SummaryThis PR adds a new Airflow integration guide covering architecture, configuration, a failing-DAG example, investigation flow, and planner behavior. Two of the three testing commands reference test files that do not exist in the repository ( Confidence Score: 3/5Not safe to merge as-is — the two broken test paths will mislead users and should either be corrected to existing paths or the test files created before this doc ships. Two P1 findings exist: both pytest commands in the Testing section point to files absent from the repository. A developer following the guide will get errors rather than passing tests, undermining the guide's purpose. docs/integrations/airflow_integration.md — both Testing section commands reference non-existent test files Important Files Changed
Sequence DiagramsequenceDiagram
participant Alert as Alert Source
participant Planner as Planner (LLM)
participant Tools as Airflow Tools
participant API as Airflow REST API
participant RCA as RCA Generator
Alert->>Planner: Ingest alert (source=airflow, dag_id)
Planner->>Planner: Seed Airflow tools into action space
Planner->>Tools: Select & invoke tool (list_dag_runs / get_task_instances)
Tools->>API: GET /api/v1/dags/{dag_id}/dagRuns
API-->>Tools: DAG run list
Tools->>API: GET /api/v1/dags/{dag_id}/dagRuns/{run_id}/taskInstances
API-->>Tools: Task instance details
Tools-->>Planner: Evidence (failures, logs)
Planner->>RCA: Pass structured evidence
RCA-->>Planner: Root cause analysis
Reviews (1): Last reviewed commit: "Create airflow_integration.md" | Re-trigger Greptile |
| ```bash | ||
| python -m pytest tests/e2e/airflow/test_orchestrator.py -v | ||
| ``` |
There was a problem hiding this comment.
The e2e test path tests/e2e/airflow/test_orchestrator.py referenced here does not exist in the repository. There is no tests/e2e/airflow/ directory at all. Running the documented command will produce a collection error rather than a passing test, misleading users who follow the guide. The only Airflow-related test found is tests/tools/test_tracer_airflow_metrics_tool.py.
| ``` | ||
|
|
||
| ### Routing Tests |
There was a problem hiding this comment.
Routing test path does not exist
tests/nodes/plan_actions/test_airflow_routing.py is not present in the repository. The tests/nodes/plan_actions/ directory contains several test_detect_sources_*.py files for other integrations but no Airflow-specific routing test. Running this command will fail with a "no tests ran" or collection error.
|
The test files referenced in the Testing section (tests/e2e/airflow/test_orchestrator.py and tests/nodes/plan_actions/test_airflow_routing.py) are being added in a separate #570 PR and are not yet merged. |
|
@muddlebee could you please look at that 🙏🏻 |
|
@cerencamkiran nice, but I think you need to add the entry to docs.json as well? did you test this locally? that it renders in the doc page? |
|
docs/docs.json: Add the new page to navigation so it shows under Integrations (and the right group). For docs/integrations/airflow_integration.mdx, the slug should be integrations/airflow_integration. Without this, the guide may be reachable only by direct URL or not wired into the site as intended. |
|
@muddlebee |
| "google-docs", | ||
| "discord" | ||
| "discord", | ||
| "rabbitmq", |
There was a problem hiding this comment.
I think that came from my branch being slightly behind the latest docs.json state.
|
hey @cerencamkiran if you see the naming conventions https://github.com/Tracer-Cloud/opensre/blob/main/docs/docs.json#L52-L69
does the above naming convention makes sense? |
|
Yes @muddlebee, makes sense 👍 I've updated it accordingly:
|
|
🎉 MERGED! @cerencamkiran just shipped something. The diff gods are pleased. 🙌 👋 Join us on Discord - OpenSRE : hang out, contribute, or hunt for features and issues. Everyone's welcome. |
|
@cerencamkiran awesome 🚀 |

Adds a comprehensive Airflow integration guide:
Closes #1020