Airflow And Workflow Orchestration
Overview
Use this skill when the problem is orchestration rather than transformation logic. It helps agents design Airflow, MWAA, Cloud Composer, Azure Data Factory, Step Functions, Google Cloud Workflows, or Databricks Workflows patterns with explicit dependencies, retries, ownership, backfills, and publish-safe cutover behavior.
When to Use
- building or modifying
Airflow DAGs
- choosing between scheduler-driven, event-driven, or platform-native orchestration
- designing scheduling, sensors, task dependencies, or retry policy
- coordinating ingestion, transformation, quality checks, and publish steps
- changing backfill, catchup, or SLA behavior
Do not use this as a substitute for the underlying processing skill. Orchestration coordinates work; it does not define the compute logic itself.
Workflow
Define the workflow contract.
Capture:
- owner
- schedule or trigger mode
- upstream and downstream dependencies
- task boundaries
- success and failure signals
Choose the orchestration model before choosing the product.
Decide whether the workload is:
- scheduler-driven
- event-driven
- metadata-driven fan-out
- platform-native inside a lakehouse
Separate orchestration concerns from processing concerns.
Workflow tasks should call well-defined jobs, not hide business logic in orchestration code.
Design retries and timeouts deliberately.
Account for:
- idempotency
- duplicate writes
- sensor cost
- late-arriving upstream data
- alert routing
Make backfill behavior explicit.
Decide how catchup, reruns, and historical windows behave before enabling them.
Gate publish steps on validation.
A successful task chain is not enough if downstream tables fail quality checks.
Service Selection Hints
AWS: prefer MWAA for dependency-rich DAGs, Step Functions for branching and service coordination, and lightweight event triggers for arrival-based flows.
Azure: prefer Azure Data Factory or Synapse Pipelines for connector-heavy and parameterized workflows, and Databricks Workflows when execution stays in Databricks.
GCP: prefer Cloud Composer for DAGs, Google Cloud Workflows for API and service coordination, and Cloud Scheduler plus Pub/Sub for simple triggers.
Databricks: prefer Databricks Workflows or Delta Live Tables for platform-native jobs, and use an external orchestrator when dependencies cross platform boundaries.
- Load
references/pipeline-orchestration-patterns.md when selecting or reviewing the orchestration model, not only the syntax of one tool.
Common Rationalizations
| Rationalization |
Reality |
| "We can keep the transformation logic inside the DAG file." |
That creates brittle orchestration code and harder testing and reuse. |
| "Retries are always safe." |
Retries on non-idempotent tasks can duplicate data or corrupt publish layers. |
| "Catchup will handle backfills automatically." |
Historical reprocessing usually needs different safeguards than normal schedule runs. |
| "The platform-default orchestrator is automatically the right one." |
Tool choice should follow workload shape, cross-system boundaries, and recovery needs. |
Red Flags
- business logic is embedded in scheduler wiring
- orchestrator choice is driven by habit rather than workflow shape
- task ownership and alerts are undefined
- sensors poll without clear timeout or cost awareness
- publish tasks run without validation gates
- backfills rely on default catchup behavior with no review
Verification
1---2name: airflow-and-workflow-orchestration3description: Guides agents through workflow orchestration design and operation across Airflow-style DAGs, cloud-native schedulers, and event-driven pipeline control planes. Use when building or modifying workflow dependencies, retries, triggers, sensors, SLAs, or cross-system pipeline coordination.4---56# Airflow And Workflow Orchestration78## Overview910Use this skill when the problem is orchestration rather than transformation logic. It helps agents design `Airflow`, `MWAA`, `Cloud Composer`, `Azure Data Factory`, `Step Functions`, `Google Cloud Workflows`, or `Databricks Workflows` patterns with explicit dependencies, retries, ownership, backfills, and publish-safe cutover behavior.1112## When to Use1314- building or modifying `Airflow` DAGs15- choosing between scheduler-driven, event-driven, or platform-native orchestration16- designing scheduling, sensors, task dependencies, or retry policy17- coordinating ingestion, transformation, quality checks, and publish steps18- changing backfill, catchup, or SLA behavior1920Do not use this as a substitute for the underlying processing skill. Orchestration coordinates work; it does not define the compute logic itself.2122## Workflow23241. Define the workflow contract.25 Capture:26 - owner27 - schedule or trigger mode28 - upstream and downstream dependencies29 - task boundaries30 - success and failure signals31322. Choose the orchestration model before choosing the product.33 Decide whether the workload is:34 - scheduler-driven35 - event-driven36 - metadata-driven fan-out37 - platform-native inside a lakehouse38393. Separate orchestration concerns from processing concerns.40 Workflow tasks should call well-defined jobs, not hide business logic in orchestration code.41424. Design retries and timeouts deliberately.43 Account for:44 - idempotency45 - duplicate writes46 - sensor cost47 - late-arriving upstream data48 - alert routing49505. Make backfill behavior explicit.51 Decide how catchup, reruns, and historical windows behave before enabling them.52536. Gate publish steps on validation.54 A successful task chain is not enough if downstream tables fail quality checks.5556## Service Selection Hints5758- `AWS`: prefer `MWAA` for dependency-rich DAGs, `Step Functions` for branching and service coordination, and lightweight event triggers for arrival-based flows.59- `Azure`: prefer `Azure Data Factory` or `Synapse Pipelines` for connector-heavy and parameterized workflows, and `Databricks Workflows` when execution stays in `Databricks`.60- `GCP`: prefer `Cloud Composer` for DAGs, `Google Cloud Workflows` for API and service coordination, and `Cloud Scheduler` plus `Pub/Sub` for simple triggers.61- `Databricks`: prefer `Databricks Workflows` or `Delta Live Tables` for platform-native jobs, and use an external orchestrator when dependencies cross platform boundaries.62- Load `references/pipeline-orchestration-patterns.md` when selecting or reviewing the orchestration model, not only the syntax of one tool.6364## Common Rationalizations6566| Rationalization | Reality |67| --- | --- |68| "We can keep the transformation logic inside the DAG file." | That creates brittle orchestration code and harder testing and reuse. |69| "Retries are always safe." | Retries on non-idempotent tasks can duplicate data or corrupt publish layers. |70| "Catchup will handle backfills automatically." | Historical reprocessing usually needs different safeguards than normal schedule runs. |71| "The platform-default orchestrator is automatically the right one." | Tool choice should follow workload shape, cross-system boundaries, and recovery needs. |7273## Red Flags7475- business logic is embedded in scheduler wiring76- orchestrator choice is driven by habit rather than workflow shape77- task ownership and alerts are undefined78- sensors poll without clear timeout or cost awareness79- publish tasks run without validation gates80- backfills rely on default catchup behavior with no review8182## Verification8384- [ ] DAG responsibilities are separated from compute logic85- [ ] Orchestrator choice matches the workflow shape and platform boundary86- [ ] Scheduling, retries, alerts, and dependencies are explicit87- [ ] Backfill and catchup behavior are documented88- [ ] Publish sequencing depends on validation, not just task completion