EncrypterParv opened a new pull request, #75351: URL: https://github.com/apache/airflow/pull/75351
Celery provider 3.20.0 uses the Airflow 3.3 workload dispatch API when available. Its pre-3.3 fallback still handled task workloads but no longer handled `ExecuteCallback`, even though Airflow 3.2 provides the callback execution helper. As a result, Celery workers rejected deadline callback workloads and `SyncCallback` alerts did not run. Restore `ExecuteCallback` dispatch in the pre-3.3 fallback using the helper available in Airflow 3.2. Keep the Airflow 3.3+ `BaseExecutor.run_workload()` path unchanged, and raise a clear error when callback execution reports failure. Add regression coverage for successful and failed callback execution through the fallback. Closes #75315 ### Checks - `uv run --project providers/celery pytest providers/celery/tests/unit/celery/executors/test_celery_executor.py -k 'execute_callback_before_airflow_3_3 or execute_task_before_airflow_3_3 or execute_workload_runs_base_executor_workload_on_airflow_3_3_plus' -xvs` — 3 passed, 1 skipped (the pre-3.3 task-path test is version-gated on this Airflow 3.4 checkout). - Ruff formatting and lint on both changed Python files — passed. - `uv run --project providers/celery --with mypy mypy providers/celery/src/airflow/providers/celery/executors/celery_executor_utils.py` — passed. - `prek run --from-ref upstream/main --stage pre-commit` and the documented manual-stage checks — passed. - Breeze's provider mypy command was not completed: Breeze attempted to build the full CI Docker image, and that build was canceled. Breeze's `verify` output identified additional CI suites for provider/core coverage. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes — OpenAI Codex (GPT-6) Generated-by: OpenAI Codex (GPT-6) 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]
