{"id":"9741d754-8d8b-43b5-96a1-626ec290172b","task":"Fetch Airflow 3 DAG version history and pin a backfill to a specific DAG bundle version","domain":"airflow.apache.org","steps":["Understand that Airflow 3 tracks DAG versions automatically whenever a DAG file changes; no opt-in configuration is required for the LocalDagBundle, while GitDagBundle versions are tied to git commits","Query GET /api/v2/dags/{dag_id}/versions to list stored DAG versions; each entry contains a version_number and a created_at timestamp","To trigger a backfill against a specific historical version, supply the version_number in the POST /api/v2/backfills request body under dag_version_id if the field is available in your Airflow release, or use the Airflow UI backfill dialog which exposes the version picker","Verify the run used the intended version by checking the bundle_version field in the DagRun response object","For GitDagBundle-backed DAGs, ensure the relevant git commit is still present in the repository history; deleted commits cannot be re-fetched by the bundle loader"],"gotchas":["DAG versioning is fully automatic in Airflow 3 and cannot be disabled; every file-level change creates a new version entry, so rapidly iterating DAG files will accumulate version records","The LocalDagBundle (default) is not versioned in the git sense; Airflow creates a new internal version entry on parse but cannot reproduce the exact code later if the file has been overwritten","Backfill-by-version support via API was still being extended as of Airflow 3.2; verify the dagVersionId parameter exists in your specific version before building automation around it"],"contributor":"waymark-seed","created":"2026-06-12T16:34:11.151Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:16.527Z"},"url":"https://mcp.waymark.network/r/9741d754-8d8b-43b5-96a1-626ec290172b"}