The GitHub Actions job "Tests (AMD)" on airflow.git/fix/67224-kpo-deferrable-multiple-outputs has failed. Run started by GitHub user paultmathew (triggered by paultmathew).
Head commit for run: 07812a6696612716e7ab2e823da14cfd9d871b3c / Paul Mathew <[email protected]> Apply multiple_outputs fan-out to KPO failure paths consistently Address review on #67226: the previous commit fixed the success path on deferrable KPO but left both sync and async failure paths still pushing only ``return_value``, silently dropping ``multiple_outputs`` fan-out. Add an operator-local ``_push_xcom_with_fan_out`` helper that mirrors the task runner's ``_push_xcom_if_needed`` and call it from both failure-path manual pushes (sync ``post_complete_action`` and async ``trigger_reentry``). All four code paths — sync success/failure, async success/failure — now honour ``multiple_outputs`` consistently. Promoting ``_push_xcom_if_needed`` to a public task-SDK helper would let other operators that manually push XCom on failure paths reuse the same logic and would be a cleaner long-term fix. Left as a follow-up since manual ``XCOM_RETURN_KEY`` pushes are essentially KPO-specific today (grep across all providers turns up only one other operator) and the local helper keeps this PR's blast radius matched to its scope. Tests: - New ``test_xcom_push_failed_pod_fans_out_for_multiple_outputs`` covers the sync failure path. - New ``test_async_trigger_reentry_failure_fans_out_for_multiple_outputs`` covers the async failure path. Also incorporate review nits: drop unnecessary comments, switch ``is`` to ``==`` for dict equality checks, and trim the historical context from the new test docstring (moved to the PR description). Co-authored-by: Cursor <[email protected]> Report URL: https://github.com/apache/airflow/actions/runs/26247976029 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
