The GitHub Actions job "Tests (AMD)" on airflow.git/main has failed. Run started by GitHub user potiuk (triggered by potiuk).
Head commit for run: 6a95da5e98d755860aec60bf946017bbc5e7442e / Kaxil Naik <[email protected]> Register operator-declared XCom classes from a worker-side DAG walk (#67875) The common-ai typed-XCom feature registered an operator's ``output_type`` Pydantic class for XCom deserialization as a side effect of operator ``__init__``. That misses two real cases: 1. Mapped producers. ``@task.llm(output_type=X).expand(...)`` registers X only when the mapped task unmaps and runs (which goes through ``__init__``), in the producer's own process. A downstream consumer runs in a different process that loads the DAG with the producer still an unexpanded ``MappedOperator`` (no ``__init__``), so X is never registered there and deserialization raises ``ImportError``. The shipped ``example_llm_analysis_pipeline`` is this shape. 2. Workers that reconstruct operators without ``__init__`` -- e.g. a parsed-DAG cache that loads operators -- never run the registration, so the same ``ImportError`` occurs. Move registration to the worker: ``task_runner.parse()`` walks the loaded DAG's tasks and registers each operator's declared deserialization classes before any task runs. It reads the classes off real operators and off not-yet-expanded mapped operators (``partial_kwargs``), and works regardless of how the DAG was loaded. Operators opt in by declaring ``deserialization_allowed_class_fields`` (``("output_type",)`` for the common-ai operators); the generic Pydantic type-tree walk (``Union``/``Optional``/``list``) lives in ``serde`` as ``iter_pydantic_models``. The operator ``__init__`` registration side effect is removed. Operators probe ``serde.SUPPORTS_OPERATOR_DESERIALIZATION_WALKER`` and fall back to dumping the model to a ``dict`` on cores that lack the walk, so the value stays deserializable without an allow-list edit. ``allow_class`` (and thus the gate) is unchanged: only an operator-declared class, sourced from the trusted parsed DAG, is registered, and registration stays exact-match. Report URL: https://github.com/apache/airflow/actions/runs/26810681326 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
