wislertt opened a new pull request, #73430: URL: https://github.com/apache/airflow/pull/73430
## Why `airflow dags test` exits non-zero for any DAG that sets a `deadline`, even though the run succeeded. `DAG.test()` builds its scheduler DAG with an in-memory serialize/deserialize round trip, which leaves `dag.deadline` holding encoded deadline alerts instead of `deadline_alert` ids. When the run succeeds, `DagRun.update_state()` passes those dicts to `DeadlineAlertModel.get_by_id()`, which fails in the `Uuid` bind processor with `'dict' object has no attribute 'hex'`. ## What Dict entries in `dag.deadline` are decoded directly instead of looked up in the `deadline_alert` table. Entries that are strings keep the existing `get_by_id()` path used by the scheduler. closes: #73428 --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes (please specify the tool below) Generated-by: Claude Code following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
