This is an automated email from the ASF dual-hosted git repository.

vatsrahul1001 pushed a commit to branch v3-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 77fa2ed62551ecdde9e73355f79684b719115f03
Merge: 9cb69142c39 194e0ea4c98
Author: Rahul Vats <[email protected]>
AuthorDate: Mon Oct 12 19:51:14 2026 +0530

    Merge main into v3-4-test

 .agents/skills/airflow-translations/SKILL.md       |    4 +
 .agents/skills/airflow-translations/locales/ar.md  |   10 +-
 .agents/skills/airflow-translations/locales/ca.md  |    2 +-
 .agents/skills/airflow-translations/locales/de.md  |    2 +-
 .agents/skills/airflow-translations/locales/el.md  |    2 +-
 .agents/skills/airflow-translations/locales/es.md  |    2 +-
 .agents/skills/airflow-translations/locales/fr.md  |    2 +-
 .agents/skills/airflow-translations/locales/he.md  |    4 +-
 .agents/skills/airflow-translations/locales/hu.md  |    4 +-
 .agents/skills/airflow-translations/locales/ja.md  |    2 +-
 .agents/skills/airflow-translations/locales/ko.md  |   26 +-
 .agents/skills/airflow-translations/locales/nl.md  |    2 +-
 .agents/skills/airflow-translations/locales/pl.md  |    6 +-
 .agents/skills/airflow-translations/locales/pt.md  |    2 +-
 .agents/skills/airflow-translations/locales/tr.md  |    2 +-
 .../skills/airflow-translations/locales/zh-CN.md   |   12 +-
 .../skills/airflow-translations/locales/zh-TW.md   |    8 +-
 .apache-magpie-overrides/pmc-roster.md             |    2 +-
 .github/workflows/ci-amd.yml                       |   36 +
 .github/workflows/ci-arm.yml                       |   36 +
 .github/workflows/k8s-tests.yml                    |   36 +-
 .github/workflows/release-constraints.yml          |   21 +-
 .pre-commit-config.yaml                            |   43 +-
 .rat-excludes                                      |    1 +
 Dockerfile                                         |    3 +
 Dockerfile.ci                                      |    3 +
 .../0015-per-dag-source-in-bundle-artifact.md      |    2 +
 .../administration-and-deployment/dag-bundles.rst  |   24 +
 .../dag-importers.rst                              |  169 ++
 .../dag-serialization.rst                          |    2 +-
 .../dagfile-processing.rst                         |   10 +-
 .../docs/administration-and-deployment/index.rst   |    1 +
 .../docs/administration-and-deployment/plugins.rst |  105 +-
 .../task-and-asset-state-store.rst                 |    4 +-
 .../administration-and-deployment/web-stack.rst    |   13 +-
 .../authoring-and-scheduling/asset-scheduling.rst  |   64 +
 .../docs/authoring-and-scheduling/deferring.rst    |    2 +-
 .../dynamic-task-mapping.rst                       |   18 +-
 .../docs/authoring-and-scheduling/index.rst        |    2 +
 .../language-sdks/index.rst                        |   81 +-
 .../language-sdks/java.rst                         |    4 +
 .../language-sdks/typescript.rst                   |  933 +++++------
 .../loops-and-mapped-tasks.rst                     |   61 +
 .../docs/authoring-and-scheduling/loops.rst        |  392 +++++
 airflow-core/docs/best-practices.rst               |   52 +-
 airflow-core/docs/core-concepts/dags.rst           |   76 +-
 .../core-concepts/task-and-asset-state-store.rst   |    2 +-
 .../docs/core-concepts/task-state-store.rst        |    4 +-
 airflow-core/docs/core-concepts/tasks.rst          |    2 +-
 airflow-core/docs/migrations-ref.rst               |   11 +-
 airflow-core/docs/public-airflow-interface.rst     |   16 +
 airflow-core/docs/start.rst                        |    9 +-
 airflow-core/newsfragments/68517.significant.rst   |   14 +
 airflow-core/newsfragments/73746.significant.rst   |   22 +
 airflow-core/newsfragments/74278.feature.rst       |    2 +-
 airflow-core/newsfragments/74499.bugfix.rst        |    1 +
 airflow-core/newsfragments/task-loops.feature.rst  |    1 +
 airflow-core/src/airflow/api_fastapi/app.py        |    3 +-
 .../auth/managers/simple/ui/package.json           |    6 +-
 .../auth/managers/simple/ui/pnpm-lock.yaml         |  242 +--
 .../airflow/api_fastapi/common/parameters/misc.py  |    3 +-
 .../airflow/api_fastapi/common/parameters/sort.py  |    6 +-
 .../api_fastapi/common/parameters/task_instance.py |    7 +-
 .../src/airflow/api_fastapi/common/region.py       |   54 +
 .../core_api/datamodels/asset_state_store.py       |    8 +-
 .../api_fastapi/core_api/datamodels/assets.py      |    2 +
 .../api_fastapi/core_api/datamodels/event_logs.py  |    2 +
 .../core_api/datamodels/task_instance_history.py   |   10 +-
 .../core_api/datamodels/task_instances.py          |   42 +-
 .../api_fastapi/core_api/datamodels/ui/common.py   |    4 +
 .../datamodels/ui/{gantt.py => execution.py}       |   44 +-
 .../api_fastapi/core_api/datamodels/ui/gantt.py    |   10 +-
 .../api_fastapi/core_api/datamodels/ui/grid.py     |   58 +
 .../core_api/datamodels/ui/structure.py            |    4 +
 .../api_fastapi/core_api/datamodels/xcom.py        |   10 +-
 .../api_fastapi/core_api/openapi/_private_ui.yaml  |  661 ++++++++
 .../core_api/openapi/v2-rest-api-generated.yaml    | 1151 ++++++++++++-
 .../core_api/routes/public/asset_state_store.py    |   16 +
 .../api_fastapi/core_api/routes/public/assets.py   |    6 +
 .../api_fastapi/core_api/routes/public/dag_run.py  |    7 +-
 .../core_api/routes/public/event_logs.py           |   33 +-
 .../core_api/routes/public/extra_links.py          |   39 +-
 .../api_fastapi/core_api/routes/public/hitl.py     |   98 +-
 .../api_fastapi/core_api/routes/public/log.py      |   27 +-
 .../core_api/routes/public/task_instances.py       |  537 +++++--
 .../core_api/routes/public/task_state_store.py     |  105 +-
 .../api_fastapi/core_api/routes/public/xcom.py     |  119 +-
 .../api_fastapi/core_api/routes/ui/__init__.py     |    2 +
 .../airflow/api_fastapi/core_api/routes/ui/dags.py |   12 +-
 .../api_fastapi/core_api/routes/ui/execution.py    |  112 ++
 .../api_fastapi/core_api/routes/ui/gantt.py        |   28 +-
 .../airflow/api_fastapi/core_api/routes/ui/grid.py |  123 +-
 .../core_api/routes/ui/partitioned_dag_runs.py     |   11 +-
 .../core_api/services/public/dag_run.py            |  119 +-
 .../core_api/services/public/event_logs.py         |   10 +-
 .../core_api/services/public/task_coordinates.py   |  249 +++
 .../core_api/services/public/task_instances.py     |  398 ++++-
 .../api_fastapi/core_api/services/ui/execution.py  |   74 +
 .../api_fastapi/core_api/services/ui/grid.py       |  278 +++-
 .../api_fastapi/core_api/services/ui/task_group.py |   15 +
 .../src/airflow/api_fastapi/execution_api/app.py   |  153 +-
 .../execution_api/datamodels/taskinstance.py       |   42 +-
 .../api_fastapi/execution_api/in_process.py        |  148 ++
 .../execution_api/routes/asset_state_store.py      |   40 +-
 .../execution_api/routes/task_instances.py         |  510 ++++--
 .../execution_api/routes/task_reschedules.py       |   11 +-
 .../execution_api/routes/task_state_store.py       |    8 +-
 .../api_fastapi/execution_api/routes/xcoms.py      |  359 ++++-
 .../api_fastapi/execution_api/versions/__init__.py |   10 +
 .../execution_api/versions/v2026_10_30.py          |   35 +
 .../versions/v2026_10_30_xcom_params.py            |   28 +-
 .../src/airflow/api_fastapi/logging/decorators.py  |   39 +
 airflow-core/src/airflow/assets/manager.py         |   33 +-
 .../src/airflow/cli/commands/dag_command.py        |    9 +-
 .../src/airflow/cli/commands/standalone_command.py |   31 +
 .../airflow/cli/commands/state_store_command.py    |    6 +-
 .../src/airflow/cli/commands/task_command.py       |  103 +-
 .../src/airflow/config_templates/config.yml        |   24 +-
 .../src/airflow/dag_processing/collection.py       |   19 +-
 airflow-core/src/airflow/dag_processing/dagbag.py  |   31 +-
 airflow-core/src/airflow/dag_processing/manager.py |   14 +-
 .../src/airflow/dag_processing/processor.py        |   11 +-
 .../src/airflow/example_dags/example_task_loops.py |  114 ++
 .../src/airflow/executors/base_executor.py         |   19 +-
 .../src/airflow/executors/workloads/task.py        |   23 +-
 .../src/airflow/jobs/scheduler_job_runner.py       |  297 +++-
 .../src/airflow/jobs/triggerer_job_runner.py       |   48 +-
 airflow-core/src/airflow/migrations/utils.py       |   72 +
 ..._3_4_0_fold_task_map_into_xcom_mapped_length.py |    2 -
 .../0142_3_4_0_unify_task_attempt_ownership.py     |   26 +-
 .../0143_3_4_0_add_dynamic_region_storage.py       |  211 +++
 .../versions/0144_3_4_0_rename_stored_map_index.py |   76 +
 .../0145_3_4_0_add_task_identity_to_events.py      |   49 +
 .../0146_3_4_0_add_asset_state_writer_identity.py  |   55 +
 airflow-core/src/airflow/models/__init__.py        |    1 +
 airflow-core/src/airflow/models/asset.py           |   21 +-
 .../src/airflow/models/asset_state_store.py        |    9 +-
 airflow-core/src/airflow/models/dagrun.py          |  627 ++++++--
 airflow-core/src/airflow/models/dagwarning.py      |    1 +
 airflow-core/src/airflow/models/dynamic_region.py  |  885 ++++++++++
 airflow-core/src/airflow/models/expandinput.py     |   31 +-
 airflow-core/src/airflow/models/log.py             |   71 +-
 .../src/airflow/models/renderedtifields.py         |    2 +-
 airflow-core/src/airflow/models/serialized_dag.py  |    4 +-
 .../src/airflow/models/task_coordinates.py         |  838 ++++++++++
 .../src/airflow/models/task_state_store.py         |   20 +-
 airflow-core/src/airflow/models/taskinstance.py    |  799 ++++++++-
 airflow-core/src/airflow/models/trigger.py         |   17 +-
 airflow-core/src/airflow/models/xcom.py            |   73 +-
 airflow-core/src/airflow/plugins_manager.py        |   93 +-
 .../src/airflow/serialization/dag_version_diff.py  |    2 +
 airflow-core/src/airflow/serialization/decoders.py |   44 +-
 .../airflow/serialization/definitions/assets.py    |   13 +
 .../serialization/definitions/baseoperator.py      |    6 +-
 .../src/airflow/serialization/definitions/dag.py   |  180 +--
 .../serialization/definitions/mappedoperator.py    |   55 +-
 .../serialization/definitions/operatorlink.py      |    8 +-
 .../airflow/serialization/definitions/taskgroup.py |   52 +-
 .../airflow/serialization/definitions/xcom_arg.py  |  111 +-
 airflow-core/src/airflow/serialization/encoders.py |    7 +-
 airflow-core/src/airflow/serialization/schema.json |   12 +
 .../airflow/serialization/serialized_objects.py    |   22 +-
 airflow-core/src/airflow/state/metastore.py        |   94 +-
 airflow-core/src/airflow/ti_deps/dep_context.py    |   71 +-
 .../airflow/ti_deps/deps/mapped_task_expanded.py   |    2 +-
 .../ti_deps/deps/mapped_task_upstream_dep.py       |   37 +-
 .../ti_deps/deps/not_previously_skipped_dep.py     |    8 +-
 .../airflow/ti_deps/deps/ready_to_reschedule.py    |    9 +-
 .../src/airflow/ti_deps/deps/trigger_rule_dep.py   |   98 +-
 airflow-core/src/airflow/timetables/assets.py      |   35 +-
 airflow-core/src/airflow/timetables/base.py        |   16 +
 airflow-core/src/airflow/timetables/simple.py      |   91 +-
 .../src/airflow/ui/openapi-gen/queries/common.ts   |  175 +-
 .../ui/openapi-gen/queries/ensureQueryData.ts      |  263 ++-
 .../src/airflow/ui/openapi-gen/queries/prefetch.ts |  263 ++-
 .../src/airflow/ui/openapi-gen/queries/queries.ts  |  369 ++++-
 .../src/airflow/ui/openapi-gen/queries/suspense.ts |  263 ++-
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts | 1207 ++++++++++++--
 .../ui/openapi-gen/requests/services.gen.ts        |  370 ++++-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |  529 +++++-
 .../airflow/ui/public/i18n/locales/ar/admin.json   |   12 +-
 .../airflow/ui/public/i18n/locales/ar/common.json  |   14 +-
 .../ui/public/i18n/locales/ar/components.json      |   56 +-
 .../src/airflow/ui/public/i18n/locales/ar/dag.json |   30 +-
 .../airflow/ui/public/i18n/locales/ar/dags.json    |    4 +-
 .../ui/public/i18n/locales/ar/dashboard.json       |   18 +-
 .../airflow/ui/public/i18n/locales/ar/hitl.json    |   12 +-
 .../airflow/ui/public/i18n/locales/ca/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/ca/assets.json  |    3 +-
 .../airflow/ui/public/i18n/locales/ca/browse.json  |   30 +
 .../airflow/ui/public/i18n/locales/ca/common.json  |   54 +-
 .../ui/public/i18n/locales/ca/components.json      |   55 +-
 .../src/airflow/ui/public/i18n/locales/ca/dag.json |   88 +-
 .../airflow/ui/public/i18n/locales/ca/dags.json    |   33 +-
 .../ui/public/i18n/locales/ca/dashboard.json       |   27 +-
 .../airflow/ui/public/i18n/locales/ca/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/de/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/de/browse.json  |    4 +-
 .../airflow/ui/public/i18n/locales/de/common.json  |   16 +-
 .../ui/public/i18n/locales/de/components.json      |   40 +-
 .../src/airflow/ui/public/i18n/locales/de/dag.json |   24 +-
 .../airflow/ui/public/i18n/locales/de/dags.json    |    4 +-
 .../ui/public/i18n/locales/de/dashboard.json       |   12 +-
 .../airflow/ui/public/i18n/locales/de/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/el/admin.json   |   19 +-
 .../airflow/ui/public/i18n/locales/el/assets.json  |   16 +-
 .../airflow/ui/public/i18n/locales/el/browse.json  |   32 +
 .../airflow/ui/public/i18n/locales/el/common.json  |  143 +-
 .../ui/public/i18n/locales/el/components.json      |   70 +-
 .../src/airflow/ui/public/i18n/locales/el/dag.json |  101 +-
 .../airflow/ui/public/i18n/locales/el/dags.json    |   49 +-
 .../ui/public/i18n/locales/el/dashboard.json       |   27 +-
 .../airflow/ui/public/i18n/locales/el/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/en/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/en/browse.json  |    2 +-
 .../airflow/ui/public/i18n/locales/en/common.json  |   20 +-
 .../ui/public/i18n/locales/en/components.json      |   30 +-
 .../src/airflow/ui/public/i18n/locales/en/dag.json |   71 +-
 .../airflow/ui/public/i18n/locales/en/dags.json    |    9 +-
 .../ui/public/i18n/locales/en/dashboard.json       |   14 +-
 .../airflow/ui/public/i18n/locales/en/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/es/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/es/common.json  |   16 +-
 .../ui/public/i18n/locales/es/components.json      |   28 +-
 .../src/airflow/ui/public/i18n/locales/es/dag.json |   20 +-
 .../airflow/ui/public/i18n/locales/es/dags.json    |    4 +-
 .../ui/public/i18n/locales/es/dashboard.json       |   10 +-
 .../airflow/ui/public/i18n/locales/es/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/fr/admin.json   |    8 +-
 .../airflow/ui/public/i18n/locales/fr/browse.json  |    6 +-
 .../airflow/ui/public/i18n/locales/fr/common.json  |   20 +-
 .../ui/public/i18n/locales/fr/components.json      |   60 +-
 .../src/airflow/ui/public/i18n/locales/fr/dag.json |   34 +-
 .../airflow/ui/public/i18n/locales/fr/dags.json    |    4 +-
 .../ui/public/i18n/locales/fr/dashboard.json       |   20 +-
 .../airflow/ui/public/i18n/locales/fr/hitl.json    |   10 +-
 .../airflow/ui/public/i18n/locales/he/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/he/common.json  |   14 +-
 .../ui/public/i18n/locales/he/components.json      |   22 +-
 .../src/airflow/ui/public/i18n/locales/he/dag.json |   22 +-
 .../airflow/ui/public/i18n/locales/he/dags.json    |    4 +-
 .../ui/public/i18n/locales/he/dashboard.json       |   10 +-
 .../airflow/ui/public/i18n/locales/he/hitl.json    |   10 +-
 .../airflow/ui/public/i18n/locales/hi/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/hi/common.json  |   12 +-
 .../ui/public/i18n/locales/hi/components.json      |   26 +-
 .../src/airflow/ui/public/i18n/locales/hi/dag.json |   20 +-
 .../airflow/ui/public/i18n/locales/hi/dags.json    |    4 +-
 .../ui/public/i18n/locales/hi/dashboard.json       |   10 +-
 .../airflow/ui/public/i18n/locales/hi/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/hu/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/hu/common.json  |   12 +-
 .../ui/public/i18n/locales/hu/components.json      |   28 +-
 .../src/airflow/ui/public/i18n/locales/hu/dag.json |   20 +-
 .../airflow/ui/public/i18n/locales/hu/dags.json    |    4 +-
 .../ui/public/i18n/locales/hu/dashboard.json       |    6 +-
 .../airflow/ui/public/i18n/locales/hu/hitl.json    |    4 +-
 .../airflow/ui/public/i18n/locales/it/admin.json   |    8 +-
 .../airflow/ui/public/i18n/locales/it/common.json  |    4 +-
 .../ui/public/i18n/locales/it/components.json      |   44 +-
 .../src/airflow/ui/public/i18n/locales/it/dag.json |    6 +-
 .../airflow/ui/public/i18n/locales/it/dags.json    |    4 +-
 .../ui/public/i18n/locales/it/dashboard.json       |    6 +-
 .../airflow/ui/public/i18n/locales/it/hitl.json    |    6 +-
 .../airflow/ui/public/i18n/locales/ja/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/ja/common.json  |    4 +-
 .../ui/public/i18n/locales/ja/components.json      |   24 +-
 .../src/airflow/ui/public/i18n/locales/ja/dag.json |    4 +-
 .../airflow/ui/public/i18n/locales/ja/dags.json    |    4 +-
 .../ui/public/i18n/locales/ja/dashboard.json       |    4 +-
 .../airflow/ui/public/i18n/locales/ja/hitl.json    |    4 +-
 .../airflow/ui/public/i18n/locales/ko/admin.json   |    5 +-
 .../airflow/ui/public/i18n/locales/ko/assets.json  |    1 +
 .../airflow/ui/public/i18n/locales/ko/browse.json  |    2 +-
 .../airflow/ui/public/i18n/locales/ko/common.json  |   58 +-
 .../ui/public/i18n/locales/ko/components.json      |   44 +-
 .../src/airflow/ui/public/i18n/locales/ko/dag.json |  135 +-
 .../airflow/ui/public/i18n/locales/ko/dags.json    |   35 +-
 .../ui/public/i18n/locales/ko/dashboard.json       |   14 +-
 .../airflow/ui/public/i18n/locales/ko/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/nl/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/nl/common.json  |   12 +-
 .../ui/public/i18n/locales/nl/components.json      |   26 +-
 .../src/airflow/ui/public/i18n/locales/nl/dag.json |   20 +-
 .../airflow/ui/public/i18n/locales/nl/dags.json    |    4 +-
 .../ui/public/i18n/locales/nl/dashboard.json       |    6 +-
 .../airflow/ui/public/i18n/locales/nl/hitl.json    |    8 +-
 .../airflow/ui/public/i18n/locales/pl/admin.json   |   13 +-
 .../airflow/ui/public/i18n/locales/pl/assets.json  |    1 +
 .../airflow/ui/public/i18n/locales/pl/browse.json  |    6 +-
 .../airflow/ui/public/i18n/locales/pl/common.json  |   68 +-
 .../ui/public/i18n/locales/pl/components.json      |   91 +-
 .../src/airflow/ui/public/i18n/locales/pl/dag.json |  108 +-
 .../airflow/ui/public/i18n/locales/pl/dags.json    |   25 +-
 .../ui/public/i18n/locales/pl/dashboard.json       |   35 +-
 .../airflow/ui/public/i18n/locales/pl/hitl.json    |   12 +-
 .../airflow/ui/public/i18n/locales/pt/admin.json   |    8 +-
 .../airflow/ui/public/i18n/locales/pt/common.json  |   10 +-
 .../ui/public/i18n/locales/pt/components.json      |   44 +-
 .../src/airflow/ui/public/i18n/locales/pt/dag.json |    6 +-
 .../airflow/ui/public/i18n/locales/pt/dags.json    |    4 +-
 .../ui/public/i18n/locales/pt/dashboard.json       |    6 +-
 .../airflow/ui/public/i18n/locales/pt/hitl.json    |    6 +-
 .../airflow/ui/public/i18n/locales/ru/admin.json   |   12 +-
 .../airflow/ui/public/i18n/locales/ru/common.json  |   16 +-
 .../ui/public/i18n/locales/ru/components.json      |   58 +-
 .../src/airflow/ui/public/i18n/locales/ru/dag.json |   36 +-
 .../airflow/ui/public/i18n/locales/ru/dags.json    |    4 +-
 .../ui/public/i18n/locales/ru/dashboard.json       |   18 +-
 .../airflow/ui/public/i18n/locales/ru/hitl.json    |   12 +-
 .../airflow/ui/public/i18n/locales/th/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/th/common.json  |    4 +-
 .../ui/public/i18n/locales/th/components.json      |   16 +-
 .../src/airflow/ui/public/i18n/locales/th/dag.json |    4 +-
 .../airflow/ui/public/i18n/locales/th/dags.json    |    4 +-
 .../ui/public/i18n/locales/th/dashboard.json       |    4 +-
 .../airflow/ui/public/i18n/locales/th/hitl.json    |    4 +-
 .../airflow/ui/public/i18n/locales/tr/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/tr/common.json  |   12 +-
 .../ui/public/i18n/locales/tr/components.json      |   26 +-
 .../src/airflow/ui/public/i18n/locales/tr/dag.json |   20 +-
 .../airflow/ui/public/i18n/locales/tr/dags.json    |    4 +-
 .../ui/public/i18n/locales/tr/dashboard.json       |    6 +-
 .../airflow/ui/public/i18n/locales/tr/hitl.json    |    4 +-
 .../ui/public/i18n/locales/zh-CN/admin.json        |    4 +-
 .../ui/public/i18n/locales/zh-CN/common.json       |   12 +-
 .../ui/public/i18n/locales/zh-CN/components.json   |   26 +-
 .../airflow/ui/public/i18n/locales/zh-CN/dag.json  |   14 +-
 .../airflow/ui/public/i18n/locales/zh-CN/dags.json |    4 +-
 .../ui/public/i18n/locales/zh-CN/dashboard.json    |    6 +-
 .../airflow/ui/public/i18n/locales/zh-CN/hitl.json |    8 +-
 .../ui/public/i18n/locales/zh-TW/admin.json        |    4 +-
 .../ui/public/i18n/locales/zh-TW/browse.json       |    2 +-
 .../ui/public/i18n/locales/zh-TW/common.json       |   23 +-
 .../ui/public/i18n/locales/zh-TW/components.json   |   30 +-
 .../airflow/ui/public/i18n/locales/zh-TW/dag.json  |   22 +-
 .../airflow/ui/public/i18n/locales/zh-TW/dags.json |   11 +-
 .../ui/public/i18n/locales/zh-TW/dashboard.json    |   12 +-
 .../airflow/ui/public/i18n/locales/zh-TW/hitl.json |    8 +-
 .../components/ActionAccordion/ActionAccordion.tsx |    6 +-
 .../ui/src/components/ActionAccordion/columns.tsx  |   16 +-
 .../ui/src/components/AssetProgressCell.test.tsx   |   70 +
 .../ui/src/components/AssetProgressCell.tsx        |   15 +-
 .../ui/src/components/Breadcrumb/CrumbSwitcher.tsx |   85 +
 .../airflow/ui/src/components/Breadcrumb/index.ts  |    1 +
 .../TaskInstance/ClearGroupTaskInstanceDialog.tsx  |    1 -
 .../ClearTaskInstanceConfirmationDialog.tsx        |   33 +-
 .../TaskInstance/ClearTaskInstanceDialog.test.tsx  |  357 ++++-
 .../Clear/TaskInstance/ClearTaskInstanceDialog.tsx |  383 +++--
 .../DagActions/RunBackfillForm.dateRange.test.tsx  |  118 ++
 .../ui/src/components/DataTable/DataTable.test.tsx |   15 +-
 .../ui/src/components/DurationChart.test.tsx       |   36 +-
 .../airflow/ui/src/components/DurationChart.tsx    |   10 +-
 .../ui/src/components/Graph/TaskLink.test.tsx      |    6 +-
 .../airflow/ui/src/components/Graph/TaskLink.tsx   |   11 +-
 .../airflow/ui/src/components/Graph/TaskNode.tsx   |    4 +
 .../ui/src/components/Graph/elkGraphUtils.ts       |    6 +
 .../ui/src/components/Graph/reactflowUtils.ts      |    2 +
 .../TaskInstance/MarkTaskInstanceAsDialog.test.tsx |   61 +-
 .../TaskInstance/MarkTaskInstanceAsDialog.tsx      |   14 +-
 .../src/airflow/ui/src/components/SearchSelect.tsx |  117 ++
 .../ui/src/components/TaskInstanceTooltip.test.tsx |    1 +
 .../ui/src/components/TaskInstanceTooltip.tsx      |   31 +-
 .../src/airflow/ui/src/components/TaskName.tsx     |   17 +-
 .../ui/src/components/TaskTrySelect.test.tsx       |   18 +-
 .../airflow/ui/src/components/TaskTrySelect.tsx    |   31 +-
 .../src/airflow/ui/src/constants/localStorage.ts   |    2 -
 .../src/airflow/ui/src/constants/searchParams.ts   |    8 +
 .../ui/src/hooks/useHITLReviewTabs.test.tsx        |   58 +
 .../src/airflow/ui/src/hooks/useHITLReviewTabs.ts  |   26 +-
 .../src/airflow/ui/src/hooks/useLoopRuleStats.tsx  |   61 +
 .../ui/src/hooks/usePluginAppliesToContext.test.ts |   62 +-
 .../ui/src/hooks/usePluginAppliesToContext.ts      |   53 +-
 .../airflow/ui/src/hooks/useRequiredActionTabs.ts  |   55 +-
 .../ui/src/hooks/useSelectedVersion.test.tsx       |   73 +
 .../src/airflow/ui/src/hooks/useSelectedVersion.ts |    3 +
 .../useTaskInstanceCoordinates.ts}                 |   21 +-
 .../ui/src/hooks/useTaskInstanceView.test.ts       |   97 ++
 .../airflow/ui/src/hooks/useTaskInstanceView.ts    |   68 +
 airflow-core/src/airflow/ui/src/i18n/config.ts     |   10 +
 .../src/airflow/ui/src/i18n/locales.test.ts        |  101 ++
 .../ui/src/layouts/Details/DagBreadcrumb.test.tsx  |   89 ++
 .../ui/src/layouts/Details/DagBreadcrumb.tsx       |   50 +-
 .../src/layouts/Details/DagRunSwitcherButton.tsx   |   89 ++
 .../ui/src/layouts/Details/DagSwitcherButton.tsx   |   75 +-
 .../airflow/ui/src/layouts/Details/Gantt/Gantt.tsx |    1 -
 .../layouts/Details/Gantt/GanttTimeline.test.tsx   |  120 +-
 .../ui/src/layouts/Details/Gantt/GanttTimeline.tsx |   20 +-
 .../ui/src/layouts/Details/Gantt/utils.test.ts     |  122 +-
 .../airflow/ui/src/layouts/Details/Gantt/utils.ts  |   50 +-
 .../airflow/ui/src/layouts/Details/Grid/Bar.tsx    |    3 +-
 .../ui/src/layouts/Details/Grid/GridButton.tsx     |    4 +-
 .../ui/src/layouts/Details/Grid/GridTI.test.tsx    |   13 +
 .../airflow/ui/src/layouts/Details/Grid/GridTI.tsx |   10 +-
 .../layouts/Details/Grid/TaskInstancesColumn.tsx   |    1 +
 .../ui/src/layouts/Details/Grid/TaskNames.tsx      |    5 +-
 .../ui/src/layouts/Details/SearchDagRuns.test.tsx  |  215 +++
 .../ui/src/layouts/Details/SearchDagRuns.tsx       |  129 ++
 .../Details}/SearchDags.test.tsx                   |    2 +-
 .../SearchDags => layouts/Details}/SearchDags.tsx  |   67 +-
 .../ui/src/layouts/Details/searchOptions.test.ts   |   50 +
 .../ui/src/layouts/Details/searchOptions.ts        |   66 +
 .../Asset/AssetStateStore/AssetStateStore.test.tsx |  123 ++
 .../Asset/AssetStateStore/AssetStateStore.tsx      |   14 +-
 .../Dag/Calendar/Calendar.failedView.test.tsx      |  140 ++
 .../ui/src/pages/Dag/Calendar/Calendar.test.tsx    |  153 ++
 .../airflow/ui/src/pages/Dag/Calendar/Calendar.tsx |   53 +-
 .../airflow/ui/src/pages/Dag/Code/Code.test.tsx    |   72 +
 .../ui/src/pages/Dag/RequiredActionsRoute.test.tsx |   54 +
 .../airflow/ui/src/pages/Dag/Tasks/Tasks.test.tsx  |  114 ++
 .../ui/src/pages/Dag/Versions/VersionDiff.test.tsx |    4 +-
 .../ui/src/pages/DagsList/DagsList.test.tsx        |   29 +
 .../src/pages/DagsList/PartitionScheduleModal.tsx  |    1 +
 .../airflow/ui/src/pages/Events/Events.test.tsx    |   61 +
 .../src/airflow/ui/src/pages/Events/Events.tsx     |    8 +-
 .../pages/GroupTaskInstance/GroupTaskInstance.tsx  |    1 +
 .../GroupTaskInstance/GroupTaskInstances.test.tsx  |   93 ++
 .../pages/GroupTaskInstance/GroupTaskInstances.tsx |   47 +
 .../ui/src/pages/GroupTaskInstance/Header.tsx      |   19 +
 .../LoopIterations/IterationSelect.test.tsx        |  107 ++
 .../LoopIterations/IterationSelect.tsx             |  155 ++
 .../GroupTaskInstance/LoopIterations}/index.ts     |    3 +-
 .../LoopIterations/loopUtils.test.ts               |  110 ++
 .../GroupTaskInstance/LoopIterations/loopUtils.ts  |   58 +
 .../ui/src/pages/GroupTaskInstance/index.ts        |    2 +-
 .../GroupTaskInstance/useLoopOutcomeStats.tsx      |   74 +
 .../pages/HITLTaskInstances/HITLResponseForm.tsx   |    2 +
 .../src/airflow/ui/src/pages/ReactPlugin.test.tsx  |   28 +-
 .../src/airflow/ui/src/pages/ReactPlugin.tsx       |    4 +
 .../airflow/ui/src/pages/Run/Execution.test.tsx    |  512 ++++++
 .../src/airflow/ui/src/pages/Run/Execution.tsx     |  325 ++++
 airflow-core/src/airflow/ui/src/pages/Run/Run.tsx  |    1 +
 .../airflow/ui/src/pages/Task/GroupTaskHeader.tsx  |    7 +-
 .../pages/Task/Overview/LoopHistoryChart.test.tsx  |  129 ++
 .../src/pages/Task/Overview/LoopHistoryChart.tsx   |  137 ++
 .../ui/src/pages/Task/Overview/Overview.test.tsx   |   43 +-
 .../ui/src/pages/Task/Overview/Overview.tsx        |    9 +-
 .../ui/src/pages/TaskInstance/AssetEvents.test.tsx |   61 +
 .../ui/src/pages/TaskInstance/AssetEvents.tsx      |    8 +-
 .../ui/src/pages/TaskInstance/BlockingDeps.tsx     |    2 +
 .../ui/src/pages/TaskInstance/Details.test.tsx     |   19 +-
 .../airflow/ui/src/pages/TaskInstance/Details.tsx  |   64 +-
 .../ui/src/pages/TaskInstance/ExtraLinks.test.tsx  |   20 +-
 .../ui/src/pages/TaskInstance/ExtraLinks.tsx       |    3 +
 .../ui/src/pages/TaskInstance/HITLResponse.tsx     |    4 +
 .../ui/src/pages/TaskInstance/Header.test.tsx      |   32 +-
 .../airflow/ui/src/pages/TaskInstance/Header.tsx   |   24 +-
 .../pages/TaskInstance/Logs/ExternalLogLink.tsx    |    6 +-
 .../ui/src/pages/TaskInstance/Logs/Logs.test.tsx   |   62 +-
 .../ui/src/pages/TaskInstance/Logs/Logs.tsx        |   28 +-
 .../pages/TaskInstance/Logs/LogsTryNumber.test.tsx |   25 +
 .../src/pages/TaskInstance/Logs/TaskLogHeader.tsx  |    6 +-
 .../src/pages/TaskInstance/RenderedTemplates.tsx   |    3 +
 .../src/pages/TaskInstance/TaskInstance.test.tsx   |  253 ++-
 .../ui/src/pages/TaskInstance/TaskInstance.tsx     |  116 +-
 .../TaskInstances/BulkClearTaskInstancesButton.tsx |  126 +-
 .../BulkDeleteTaskInstancesButton.tsx              |    3 +
 .../BulkMarkTaskInstancesAsButton.tsx              |   13 +-
 .../DeleteTaskInstanceButton.test.tsx              |   58 +
 .../TaskInstances/DeleteTaskInstanceButton.tsx     |    3 +
 .../src/pages/TaskInstances/TaskInstances.test.tsx |   88 +-
 .../ui/src/pages/TaskInstances/TaskInstances.tsx   |   50 +-
 .../ClearAllTaskStateStoreButton.tsx               |    4 +-
 .../TaskStateStore/DeleteTaskStateStoreButton.tsx  |    4 +-
 .../pages/TaskStateStore/TaskStateStore.test.tsx   |  114 ++
 .../ui/src/pages/TaskStateStore/TaskStateStore.tsx |    4 +
 .../TaskStateStore/TaskStateStoreModal.test.tsx    |   81 +
 .../pages/TaskStateStore/TaskStateStoreModal.tsx   |    5 +-
 .../airflow/ui/src/pages/XCom/AddXComButton.tsx    |    4 +
 .../airflow/ui/src/pages/XCom/DeleteXComButton.tsx |    2 +
 .../airflow/ui/src/pages/XCom/EditXComButton.tsx   |    2 +
 .../src/airflow/ui/src/pages/XCom/XCom.test.tsx    |   80 +
 .../src/airflow/ui/src/pages/XCom/XCom.tsx         |   24 +-
 .../airflow/ui/src/pages/XCom/XComEntry.test.tsx   |   72 +-
 .../src/airflow/ui/src/pages/XCom/XComEntry.tsx    |   34 +-
 .../airflow/ui/src/pages/XCom/XComModal.test.tsx   |   82 +
 .../src/airflow/ui/src/pages/XCom/XComModal.tsx    |   21 +-
 .../airflow/ui/src/queries/gridViewQueryKeys.ts    |    4 +
 .../airflow/ui/src/queries/useBulkClearDryRun.ts   |  114 --
 .../ui/src/queries/useBulkClearTaskInstances.ts    |  133 --
 .../ui/src/queries/useBulkMarkAsDryRun.test.tsx    |   76 +
 .../airflow/ui/src/queries/useBulkMarkAsDryRun.ts  |    4 +-
 .../ui/src/queries/useClearTaskInstances.test.tsx  |   82 +
 .../ui/src/queries/useClearTaskInstances.ts        |   38 +-
 .../queries/useClearTaskInstancesDryRun.test.tsx   |   88 +
 .../ui/src/queries/useClearTaskInstancesDryRun.ts  |   57 +-
 .../{utils/option.ts => queries/useIsLoopGroup.ts} |   20 +-
 .../src/airflow/ui/src/queries/useLogs.test.ts     |   44 +-
 .../src/airflow/ui/src/queries/useLogs.tsx         |   22 +-
 .../index.ts => queries/useLoopHistory.ts}         |    7 +-
 .../airflow/ui/src/queries/useLoopSummary.test.tsx |   93 ++
 .../src/airflow/ui/src/queries/useLoopSummary.ts   |   77 +
 .../ui/src/queries/usePatchTaskInstance.test.tsx   |   60 +
 .../airflow/ui/src/queries/usePatchTaskInstance.ts |    6 +-
 .../ui/src/queries/usePatchTaskInstanceDryRun.ts   |    2 +
 .../ui/src/queries/useTaskInstanceNote.test.tsx    |   54 +
 .../airflow/ui/src/queries/useTaskInstanceNote.ts  |    2 +-
 .../airflow/ui/src/queries/useUpdateHITLDetail.ts  |    6 +
 airflow-core/src/airflow/ui/src/router.tsx         |    6 +-
 .../airflow/ui/src/utils/executionParams.test.ts   |   18 +-
 .../ui/src/utils/{option.ts => executionParams.ts} |   28 +-
 .../src/airflow/ui/src/utils/links.test.ts         |   15 +
 airflow-core/src/airflow/ui/src/utils/links.ts     |   18 +-
 .../index.ts => utils/loopTaskInstance.ts}         |    4 +-
 airflow-core/src/airflow/ui/src/utils/option.ts    |    4 +
 .../airflow/ui/src/utils/pluginAppliesTo.test.ts   |    7 +-
 .../src/airflow/ui/tests/e2e/fixtures/pom.ts       |    5 -
 .../src/airflow/ui/tests/e2e/pages/BackfillPage.ts |   30 -
 .../airflow/ui/tests/e2e/pages/DagCalendarTab.ts   |   47 +-
 .../src/airflow/ui/tests/e2e/pages/DagCodePage.ts  |   20 -
 .../airflow/ui/tests/e2e/pages/DagDetailPage.ts    |   49 -
 .../src/airflow/ui/tests/e2e/pages/DagRunPage.ts   |    8 +-
 .../src/airflow/ui/tests/e2e/pages/DagRunsPage.ts  |   32 -
 .../airflow/ui/tests/e2e/pages/DagRunsTabPage.ts   |   33 -
 .../src/airflow/ui/tests/e2e/pages/DagsPage.ts     |  115 --
 .../src/airflow/ui/tests/e2e/pages/XComsPage.ts    |   14 -
 .../src/airflow/ui/tests/e2e/specs/asset.spec.ts   |   17 +-
 .../airflow/ui/tests/e2e/specs/backfill.spec.ts    |   64 -
 .../airflow/ui/tests/e2e/specs/dag-bundles.spec.ts |   37 +-
 .../ui/tests/e2e/specs/dag-calendar-tab.spec.ts    |   75 +-
 .../ui/tests/e2e/specs/dag-code-tab.spec.ts        |    8 -
 .../airflow/ui/tests/e2e/specs/dag-detail.spec.ts  |   43 -
 .../src/airflow/ui/tests/e2e/specs/dag-run.spec.ts |   13 +-
 .../ui/tests/e2e/specs/dag-runs-tab.spec.ts        |   30 +-
 .../airflow/ui/tests/e2e/specs/dag-runs.spec.ts    |   10 -
 .../airflow/ui/tests/e2e/specs/dag-tasks.spec.ts   |  102 --
 .../airflow/ui/tests/e2e/specs/dags-list.spec.ts   |   67 +-
 .../src/airflow/ui/tests/e2e/specs/plugins.spec.ts |   35 +-
 .../airflow/ui/tests/e2e/specs/providers.spec.ts   |   19 +-
 .../ui/tests/e2e/specs/task-instances.spec.ts      |    5 -
 .../airflow/ui/tests/e2e/specs/task-logs.spec.ts   |   66 +-
 .../src/airflow/ui/tests/e2e/specs/xcoms.spec.ts   |   20 +-
 airflow-core/src/airflow/utils/db.py               |    5 +-
 airflow-core/src/airflow/utils/db_cleanup.py       |    8 +-
 .../src/airflow/utils/log/file_task_handler.py     |   42 +-
 .../src/airflow/utils/log/task_log_address.py      |  268 ++++
 airflow-core/src/airflow/utils/sqlalchemy.py       |   57 +-
 .../tests/unit/always/test_project_structure.py    |    4 +-
 .../unit/api_fastapi/common/test_parameters.py     |   12 +
 .../routes/public/test_asset_state_store.py        |   55 +
 .../core_api/routes/public/test_assets.py          |   61 +
 .../core_api/routes/public/test_dag_run.py         |  212 ++-
 .../core_api/routes/public/test_dag_warning.py     |    6 +-
 .../core_api/routes/public/test_event_logs.py      |  205 ++-
 .../core_api/routes/public/test_execution.py       |  177 ++
 .../core_api/routes/public/test_extra_links.py     |  111 +-
 .../core_api/routes/public/test_hitl.py            |  140 ++
 .../api_fastapi/core_api/routes/public/test_log.py |  129 +-
 .../core_api/routes/public/test_task_instances.py  | 1546 +++++++++++++++++-
 .../routes/public/test_task_state_store.py         |  143 +-
 .../core_api/routes/public/test_xcom.py            |  164 +-
 .../api_fastapi/core_api/routes/test_routes.py     |   22 +
 .../core_api/routes/ui/test_execution.py           |   82 +
 .../api_fastapi/core_api/routes/ui/test_gantt.py   |   47 +
 .../api_fastapi/core_api/routes/ui/test_grid.py    |  461 +++++-
 .../routes/ui/test_partitioned_dag_runs.py         |   48 +-
 .../core_api/routes/ui/test_structure.py           |   50 +
 .../core_api/services/ui/test_execution.py         |   72 +
 .../unit/api_fastapi/execution_api/test_app.py     |   47 +-
 .../api_fastapi/execution_api/test_in_process.py   |   60 +
 .../versions/head/test_asset_state_store.py        |   52 +
 .../versions/head/test_task_instances.py           | 1691 ++++++++++++++++++--
 .../versions/head/test_task_state_store.py         |   27 +-
 .../execution_api/versions/head/test_xcoms.py      |  682 +++++++-
 .../versions/v2026_10_30/test_task_instances.py    |   61 +-
 .../unit/api_fastapi/logging/test_decorators.py    |   67 +
 airflow-core/tests/unit/api_fastapi/test_app.py    |    2 +-
 airflow-core/tests/unit/assets/test_manager.py     |   43 +-
 .../tests/unit/callbacks/test_callback_requests.py |   13 +-
 .../tests/unit/cli/commands/test_dag_command.py    |   40 +-
 .../unit/cli/commands/test_partition_command.py    |   53 +-
 .../unit/cli/commands/test_standalone_command.py   |   51 +
 .../unit/cli/commands/test_state_store_command.py  |   10 +-
 .../tests/unit/cli/commands/test_task_command.py   |  283 +++-
 .../lang_sdk_fixtures/go_native.json               |    4 +-
 .../tests/unit/dag_processing/test_collection.py   |   88 +-
 .../tests/unit/dag_processing/test_dagbag.py       |   86 +-
 .../tests/unit/dag_processing/test_processor.py    |   37 +-
 .../tests/unit/executors/test_base_executor.py     |   11 +
 .../tests/unit/executors/test_local_executor.py    |   32 +
 .../tests/unit/executors/test_workloads.py         |  159 +-
 airflow-core/tests/unit/jobs/test_scheduler_job.py |  782 ++++++++-
 airflow-core/tests/unit/jobs/test_triggerer_job.py |   44 +-
 .../test_0143_add_dynamic_region_storage.py        |  231 +++
 .../test_0144_rename_stored_map_index.py           |  324 ++++
 airflow-core/tests/unit/models/conftest.py         |  113 ++
 airflow-core/tests/unit/models/test_asset.py       |   87 +-
 airflow-core/tests/unit/models/test_cleartasks.py  |  868 +++++++++-
 airflow-core/tests/unit/models/test_dag.py         |   63 +-
 airflow-core/tests/unit/models/test_dagrun.py      |  922 ++++++++++-
 .../tests/unit/models/test_dynamic_region.py       |  885 ++++++++++
 airflow-core/tests/unit/models/test_log.py         |   92 +-
 .../tests/unit/models/test_mappedoperator.py       |  414 ++++-
 .../tests/unit/models/test_task_coordinates.py     |  635 ++++++++
 airflow-core/tests/unit/models/test_task_data.py   |   22 +-
 .../tests/unit/models/test_task_state_store.py     |   18 +-
 .../tests/unit/models/test_taskinstance.py         |  558 ++++++-
 airflow-core/tests/unit/models/test_xcom_arg.py    |  242 +++
 .../tests/unit/plugins/test_plugins_manager.py     |  158 +-
 .../unit/serialization/definitions/test_assets.py  |   19 +
 .../unit/serialization/test_dag_serialization.py   |  104 +-
 .../unit/serialization/test_dag_version_diff.py    |   31 +
 .../tests/unit/serialization/test_decoders.py      |   84 +
 airflow-core/tests/unit/state/test_metastore.py    |  136 ++
 .../ti_deps/deps/test_mapped_task_upstream_dep.py  |   33 +-
 .../ti_deps/deps/test_ready_to_reschedule_dep.py   |   28 +
 .../unit/ti_deps/deps/test_trigger_rule_dep.py     |  295 +++-
 .../tests/unit/timetables/test_assets_timetable.py |  144 +-
 .../unit/timetables/test_partitioned_timetable.py  |   54 +-
 .../tests/unit/utils/log/test_task_log_address.py  |  362 +++++
 airflow-core/tests/unit/utils/test_db.py           |   20 +
 airflow-core/tests/unit/utils/test_db_cleanup.py   |   49 +-
 airflow-core/tests/unit/utils/test_log_handlers.py |    1 +
 airflow-core/tests/unit/utils/test_sqlalchemy.py   |   62 +-
 airflow-core/tests/unit/utils/test_task_group.py   |  134 ++
 .../src/airflowctl/api/datamodels/generated.py     |   75 +
 airflow-ctl/src/airflowctl/ctl/cli_config.py       |   30 +-
 .../tests/airflow_ctl/api/test_operations.py       |    2 +
 .../airflow_ctl/ctl/commands/test_task_command.py  |    3 +
 .../tests/airflow_ctl/ctl/test_cli_config.py       |   60 +-
 airflow-e2e-tests/docker/go.yml                    |    7 +
 airflow-e2e-tests/docker/java.yml                  |   10 +-
 airflow-e2e-tests/docker/ts.yml                    |   12 +
 airflow-e2e-tests/java-native-bundle/.gitignore    |    2 +
 .../java-native-bundle/build.gradle                |   38 +-
 .../java-native-bundle/gradle.properties           |   17 +-
 .../java-native-bundle/settings.gradle             |   22 +-
 .../apache/airflow/e2e/NativeBundleBuilder.java    |  150 ++
 .../airflow/e2e/nativedag/AnnotationDag.java       |  106 ++
 .../apache/airflow/e2e/nativedag/TargetDag.java    |   33 +-
 .../tests/airflow_e2e_tests/conftest.py            |  102 +-
 .../tests/airflow_e2e_tests/constants.py           |    8 +
 .../airflow_e2e_tests/e2e_test_utils/clients.py    |   76 +-
 .../go_sdk_tests/test_go_sdk_native_dag.py         |  220 +++
 .../java_sdk_tests/test_java_sdk_native_dag.py     |  215 +++
 .../ts_sdk_tests/test_ts_sdk_dag.py                |   65 +-
 .../ts_sdk_tests/test_ts_sdk_hitl.py               |  200 +++
 .../ts_sdk_tests/test_ts_sdk_native_dag.py         |  253 +++
 .../03a_contributors_quick_start_beginners.rst     |   31 +-
 dev/README_RELEASE_AIRFLOW.md                      |   24 +
 dev/breeze/doc/05_test_commands.rst                |   10 +-
 dev/breeze/doc/09_release_management_tasks.rst     |   14 +
 dev/breeze/doc/ci/04_selective_checks.md           |   28 +-
 dev/breeze/doc/images/output_k8s.svg               |   26 +-
 dev/breeze/doc/images/output_k8s.txt               |    2 +-
 .../doc/images/output_k8s_run-complete-tests.svg   |    6 +-
 .../doc/images/output_k8s_run-complete-tests.txt   |    2 +-
 .../doc/images/output_k8s_setup-lang-sdk-test.svg  |   28 +-
 .../doc/images/output_k8s_setup-lang-sdk-test.txt  |    2 +-
 .../doc/images/output_release-management.svg       |  120 +-
 .../doc/images/output_release-management.txt       |    2 +-
 ...utput_release-management_start-beta-process.svg |  138 ++
 ...utput_release-management_start-beta-process.txt |    1 +
 .../output_setup_check-all-params-in-groups.svg    |   48 +-
 .../output_setup_check-all-params-in-groups.txt    |    2 +-
 .../output_setup_regenerate-command-images.svg     |   56 +-
 .../output_setup_regenerate-command-images.txt     |    2 +-
 .../airflow_breeze/commands/kubernetes_commands.py |  531 +++---
 .../commands/kubernetes_commands_config.py         |    3 +-
 .../commands/release_candidate_command.py          |  140 +-
 .../commands/release_management_commands_config.py |   11 +
 .../src/airflow_breeze/commands/ui_commands.py     |    8 +-
 .../airflow_breeze/utils/release_constraints.py    |   10 +-
 .../src/airflow_breeze/utils/selective_checks.py   |   34 +-
 .../src/airflow_breeze/utils/verification_plan.py  |    1 +
 .../tests/test_kubernetes_lang_sdk_commands.py     |  196 ++-
 dev/breeze/tests/test_release_candidate_command.py |   88 +-
 dev/breeze/tests/test_release_constraints.py       |    1 +
 dev/breeze/tests/test_selective_checks.py          |   93 +-
 dev/breeze/tests/test_ui_commands.py               |    9 +
 dev/breeze/uv.lock                                 |   48 +-
 .../react_plugin_template/package.json             |   14 +-
 .../react_plugin_template/pnpm-lock.yaml           |  406 ++---
 dev/sign.sh                                        |    9 +
 .../src/sphinx_exts/providers_extensions.py        |   34 +-
 .../provider_connection_services.rst.jinja2        |   28 +
 devel-common/src/tests_common/pytest_plugin.py     |   15 +
 .../src/tests_common/test_utils/asserts.py         |   20 +
 .../tests_common/test_utils/attempt_ownership.py   |   10 +-
 .../src/tests_common/test_utils/taskinstance.py    |    8 +-
 .../unit/sphinx_exts/test_providers_extensions.py  |   57 +
 docs/spelling_wordlist.txt                         |   10 +
 go-sdk/README.md                                   |    4 +-
 go-sdk/airflow/bundle.go                           |   13 +-
 go-sdk/airflow/bundle_test.go                      |   59 +-
 go-sdk/airflow/conformance_test.go                 |    7 +
 go-sdk/airflow/serialize.go                        |   36 +-
 go-sdk/airflow/serialize_test.go                   |   56 +-
 go-sdk/airflow/spec.gen.go                         |    3 +-
 go-sdk/airflow/trigger_dag_run.go                  |   82 +-
 go-sdk/airflow/trigger_dag_run_test.go             |   26 +-
 go-sdk/capabilities.yaml                           |   15 +-
 go-sdk/example/native/main.go                      |  177 ++
 go-sdk/example/native/report.go                    |   35 +
 go-sdk/internal/bundle/trigger.go                  |   64 +
 go-sdk/internal/genspec/authoring.go               |    4 +-
 go-sdk/pkg/execution/client.go                     |   46 +
 go-sdk/pkg/execution/client_test.go                |  136 ++
 go-sdk/pkg/execution/genmodels/models.gen.go       |  191 ++-
 go-sdk/pkg/execution/task_runner.go                |   38 +-
 go-sdk/pkg/execution/trigger_runner.go             |  418 +++++
 go-sdk/pkg/execution/trigger_runner_test.go        |  648 ++++++++
 go-sdk/schema/dag-schema.json                      |   12 +
 go-sdk/schema/supervisor-schema.json               |  114 ++
 java-sdk/README.md                                 |   10 +-
 java-sdk/capabilities.yaml                         |   18 +-
 .../airflow/example/ExampleBundleBuilder.java      |    3 +-
 .../example/nativedag/AnnotationExample.java       |   44 +-
 .../example/nativedag/InterfaceExample.java        |   57 +-
 .../airflow/example/nativedag/TargetExample.java   |   49 +
 java-sdk/plugin/build.gradle.kts                   |    6 +
 .../apache/airflow/sdk/plugin/AirflowSdkPlugin.kt  |   78 +-
 .../org/apache/airflow/sdk/plugin/ClassFiles.kt    |   85 +
 .../apache/airflow/sdk/plugin/PackDagSources.kt    |  256 +++
 .../airflow/sdk/plugin/AirflowSdkPluginTest.kt     |  415 +++++
 .../apache/airflow/sdk/plugin/ClassFilesTest.kt    |   80 +
 .../airflow/sdk/plugin/PackDagSourcesTest.kt       |   89 ++
 .../org/apache/airflow/sdk/plugin/TestSupport.kt   |   44 +-
 .../org/apache/airflow/sdk/BuilderProcessor.kt     |  209 ++-
 .../kotlin/org/apache/airflow/sdk/BuilderTest.kt   |  692 +++++++-
 .../ci/prek/check_serialization_conformance.py     |    2 +-
 java-sdk/sdk/build.gradle.kts                      |   69 +
 java-sdk/sdk/module.md                             |    6 +-
 java-sdk/sdk/schema/dag-schema.json                |   12 +
 .../main/kotlin/org/apache/airflow/sdk/Bundle.kt   |   27 +-
 .../org/apache/airflow/sdk/BundleInspector.kt      |  113 ++
 .../kotlin/org/apache/airflow/sdk/Condition.kt     |  224 +++
 .../main/kotlin/org/apache/airflow/sdk/DagDef.kt   |  150 +-
 .../main/kotlin/org/apache/airflow/sdk/Decider.kt  |   90 ++
 .../kotlin/org/apache/airflow/sdk/IdValidation.kt  |   86 +
 .../main/kotlin/org/apache/airflow/sdk/Server.kt   |  109 +-
 .../main/kotlin/org/apache/airflow/sdk/Switch.kt   |  240 +++
 .../kotlin/org/apache/airflow/sdk/TaskGroupRef.kt  |   81 +
 .../kotlin/org/apache/airflow/sdk/TriggerDagRun.kt |  189 +++
 .../org/apache/airflow/sdk/execution/Client.kt     |   88 +
 .../org/apache/airflow/sdk/execution/Logger.kt     |    5 +
 .../org/apache/airflow/sdk/execution/Serde.kt      |  129 +-
 .../org/apache/airflow/sdk/execution/Task.kt       |   42 +-
 .../apache/airflow/sdk/execution/TriggerRunner.kt  |  324 ++++
 .../org/apache/airflow/sdk/internal/DagSource.kt   |   66 +
 .../org/apache/airflow/sdk/internal/Fields.kt      |   33 +
 .../kotlin/org/apache/airflow/sdk/internal/Ids.kt  |   10 +
 .../apache/airflow/example/DagSourceFixtures.kt    |   35 +-
 .../org/apache/airflow/sdk/ArgTestSupport.kt       |   19 +
 .../org/apache/airflow/sdk/BundleInspectorTest.kt  |  164 ++
 .../kotlin/org/apache/airflow/sdk/ClientTest.kt    |   19 +
 .../kotlin/org/apache/airflow/sdk/ConditionTest.kt |  208 +++
 .../kotlin/org/apache/airflow/sdk/DagSourceTest.kt |  132 ++
 .../org/apache/airflow/sdk/IdValidationTest.kt     |  105 ++
 .../kotlin/org/apache/airflow/sdk/ServerTest.kt    |    6 +-
 .../kotlin/org/apache/airflow/sdk/SwitchTest.kt    |  224 +++
 .../org/apache/airflow/sdk/TriggerDagRunTest.kt    |  275 ++++
 .../airflow/sdk/conformance/SerializeJava.kt       |  191 ++-
 .../org/apache/airflow/sdk/execution/CommTest.kt   |  171 ++
 .../org/apache/airflow/sdk/execution/TaskTest.kt   |  319 ++++
 .../airflow/sdk/execution/TriggerRunnerTest.kt     |  473 ++++++
 .../apache/airflow/sdk/internal/ArgValuesTest.kt   |   19 +
 .../org/apache/airflow/sdk/internal/RefsTest.kt    |   65 +
 kubernetes-tests/lang_sdk/Dockerfile.runtimes      |   49 +
 kubernetes-tests/lang_sdk/README.md                |  145 +-
 kubernetes-tests/lang_sdk/airflowignore_all        |    1 +
 kubernetes-tests/lang_sdk/config/values.yaml       |   67 +-
 ..._sdk_combined.py => lang_sdk_mixed_language.py} |   30 +-
 kubernetes-tests/lang_sdk/go_example/main.go       |   21 +-
 .../airflow/k8sexample/K8sBundleBuilder.java       |    4 +-
 ...binedExample.java => MixedLanguageExample.java} |   16 +-
 .../lang_sdk/pod_templates/lang_sdk_golang.yaml    |  118 --
 .../{lang_sdk_java.yaml => lang_sdk_worker.yaml}   |   60 +-
 kubernetes-tests/lang_sdk/stage_artifacts.py       |   92 --
 kubernetes-tests/lang_sdk/ts_example/.gitignore    |    3 +
 .../lang_sdk/ts_example}/package.json              |    5 +-
 .../lang_sdk/ts_example/pnpm-lock.yaml             |  336 ++++
 kubernetes-tests/lang_sdk/ts_example/src/main.ts   |   47 +
 .../lang_sdk/ts_example}/tsconfig.json             |   13 +-
 ...executor.py => test_lang_sdk_mixed_language.py} |   24 +-
 .../kubernetes_tests/test_lang_sdk_native_dag.py   |  206 +++
 providers/.last_release_date.txt                   |    2 +-
 providers/airbyte/README.rst                       |    6 +-
 providers/airbyte/docs/changelog.rst               |   22 +
 providers/airbyte/docs/index.rst                   |    6 +-
 providers/airbyte/provider.yaml                    |    3 +-
 providers/airbyte/pyproject.toml                   |    6 +-
 .../src/airflow/providers/airbyte/__init__.py      |    2 +-
 providers/akeyless/README.rst                      |    6 +-
 providers/akeyless/docs/changelog.rst              |   20 +
 providers/akeyless/docs/index.rst                  |    6 +-
 providers/akeyless/provider.yaml                   |    3 +-
 providers/akeyless/pyproject.toml                  |    6 +-
 .../src/airflow/providers/akeyless/__init__.py     |    2 +-
 providers/alibaba/README.rst                       |    6 +-
 providers/alibaba/docs/changelog.rst               |   17 +
 providers/alibaba/docs/index.rst                   |    6 +-
 providers/alibaba/provider.yaml                    |    3 +-
 providers/alibaba/pyproject.toml                   |    6 +-
 .../src/airflow/providers/alibaba/__init__.py      |    2 +-
 providers/amazon/README.rst                        |   12 +-
 .../docs/auth-manager/setup/identity-center.rst    |   10 +
 providers/amazon/docs/changelog.rst                |   55 +
 providers/amazon/docs/index.rst                    |    8 +-
 providers/amazon/docs/transfer/exasol_to_s3.rst    |   63 +
 providers/amazon/provider.yaml                     |    4 +-
 providers/amazon/pyproject.toml                    |    8 +-
 .../src/airflow/providers/amazon/__init__.py       |    2 +-
 .../amazon/aws/auth_manager/routes/login.py        |    9 +-
 .../providers/amazon/aws/transfers/exasol_to_s3.py |    5 +-
 .../airflow/providers/amazon/get_provider_info.py  |    1 +
 .../system/amazon/aws/example_exasol_to_s3.py      |   92 ++
 .../amazon/aws/tests/test_aws_auth_manager.py      |   65 +-
 .../amazon/aws/auth_manager/routes/test_login.py   |   27 +-
 .../aws/executors/batch/test_batch_executor.py     |   31 +-
 .../amazon/aws/executors/ecs/test_ecs_executor.py  |   31 +-
 providers/anthropic/README.rst                     |    8 +-
 providers/anthropic/docs/changelog.rst             |   22 +
 providers/anthropic/docs/commits.rst               |    5 +-
 providers/anthropic/docs/index.rst                 |    8 +-
 providers/anthropic/provider.yaml                  |    3 +-
 providers/anthropic/pyproject.toml                 |    8 +-
 .../src/airflow/providers/anthropic/__init__.py    |    2 +-
 providers/apache/arrow/README.rst                  |    6 +-
 providers/apache/arrow/docs/changelog.rst          |   19 +
 providers/apache/arrow/docs/commits.rst            |    8 +-
 providers/apache/arrow/docs/index.rst              |    6 +-
 providers/apache/arrow/provider.yaml               |    3 +-
 providers/apache/arrow/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/arrow/__init__.py |    2 +-
 providers/apache/beam/README.rst                   |    6 +-
 providers/apache/beam/docs/changelog.rst           |   17 +
 providers/apache/beam/docs/index.rst               |    6 +-
 providers/apache/beam/provider.yaml                |    3 +-
 providers/apache/beam/pyproject.toml               |    6 +-
 .../src/airflow/providers/apache/beam/__init__.py  |    2 +-
 providers/apache/cassandra/README.rst              |    6 +-
 providers/apache/cassandra/docs/changelog.rst      |   17 +
 providers/apache/cassandra/docs/index.rst          |    6 +-
 providers/apache/cassandra/provider.yaml           |    3 +-
 providers/apache/cassandra/pyproject.toml          |    6 +-
 .../airflow/providers/apache/cassandra/__init__.py |    2 +-
 providers/apache/drill/README.rst                  |    6 +-
 providers/apache/drill/docs/changelog.rst          |   21 +
 providers/apache/drill/docs/index.rst              |    6 +-
 providers/apache/drill/provider.yaml               |    3 +-
 providers/apache/drill/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/drill/__init__.py |    2 +-
 providers/apache/druid/README.rst                  |    6 +-
 providers/apache/druid/docs/changelog.rst          |   17 +
 providers/apache/druid/docs/index.rst              |    6 +-
 providers/apache/druid/provider.yaml               |    3 +-
 providers/apache/druid/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/druid/__init__.py |    2 +-
 providers/apache/flink/README.rst                  |    6 +-
 providers/apache/flink/docs/changelog.rst          |   17 +
 providers/apache/flink/docs/index.rst              |    6 +-
 providers/apache/flink/provider.yaml               |    3 +-
 providers/apache/flink/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/flink/__init__.py |    2 +-
 providers/apache/hdfs/README.rst                   |    6 +-
 providers/apache/hdfs/docs/changelog.rst           |   17 +
 providers/apache/hdfs/docs/index.rst               |    6 +-
 providers/apache/hdfs/provider.yaml                |    3 +-
 providers/apache/hdfs/pyproject.toml               |    6 +-
 .../src/airflow/providers/apache/hdfs/__init__.py  |    2 +-
 providers/apache/hive/README.rst                   |    8 +-
 providers/apache/hive/docs/changelog.rst           |   19 +
 providers/apache/hive/docs/index.rst               |    6 +-
 providers/apache/hive/provider.yaml                |    3 +-
 providers/apache/hive/pyproject.toml               |    6 +-
 .../src/airflow/providers/apache/hive/__init__.py  |    2 +-
 providers/apache/iceberg/README.rst                |    6 +-
 providers/apache/iceberg/docs/changelog.rst        |   20 +
 providers/apache/iceberg/docs/index.rst            |    6 +-
 providers/apache/iceberg/provider.yaml             |    3 +-
 providers/apache/iceberg/pyproject.toml            |    6 +-
 .../airflow/providers/apache/iceberg/__init__.py   |    2 +-
 providers/apache/impala/README.rst                 |   14 +-
 providers/apache/impala/docs/changelog.rst         |   24 +
 providers/apache/impala/docs/index.rst             |    6 +-
 providers/apache/impala/provider.yaml              |    3 +-
 providers/apache/impala/pyproject.toml             |    6 +-
 .../airflow/providers/apache/impala/__init__.py    |    2 +-
 providers/apache/kafka/README.rst                  |    6 +-
 providers/apache/kafka/docs/changelog.rst          |   29 +
 providers/apache/kafka/docs/index.rst              |    6 +-
 providers/apache/kafka/provider.yaml               |    3 +-
 providers/apache/kafka/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/kafka/__init__.py |    2 +-
 providers/apache/kylin/README.rst                  |    6 +-
 providers/apache/kylin/docs/changelog.rst          |   17 +
 providers/apache/kylin/docs/index.rst              |    6 +-
 providers/apache/kylin/provider.yaml               |    3 +-
 providers/apache/kylin/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/kylin/__init__.py |    2 +-
 providers/apache/livy/README.rst                   |    6 +-
 providers/apache/livy/docs/changelog.rst           |   19 +
 providers/apache/livy/docs/index.rst               |    6 +-
 providers/apache/livy/provider.yaml                |    3 +-
 providers/apache/livy/pyproject.toml               |    6 +-
 .../src/airflow/providers/apache/livy/__init__.py  |    2 +-
 providers/apache/pig/README.rst                    |    6 +-
 providers/apache/pig/docs/changelog.rst            |   17 +
 providers/apache/pig/docs/index.rst                |    6 +-
 providers/apache/pig/provider.yaml                 |    3 +-
 providers/apache/pig/pyproject.toml                |    6 +-
 .../src/airflow/providers/apache/pig/__init__.py   |    2 +-
 providers/apache/pinot/README.rst                  |    6 +-
 providers/apache/pinot/docs/changelog.rst          |   21 +
 providers/apache/pinot/docs/index.rst              |    6 +-
 providers/apache/pinot/provider.yaml               |    3 +-
 providers/apache/pinot/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/pinot/__init__.py |    2 +-
 providers/apache/spark/README.rst                  |    6 +-
 providers/apache/spark/docs/changelog.rst          |   27 +
 providers/apache/spark/docs/index.rst              |    6 +-
 providers/apache/spark/provider.yaml               |    3 +-
 providers/apache/spark/pyproject.toml              |    6 +-
 .../src/airflow/providers/apache/spark/__init__.py |    2 +-
 .../providers/apache/spark/hooks/spark_submit.py   |   48 +-
 .../unit/apache/spark/hooks/test_spark_submit.py   |  491 +++---
 providers/apache/tinkerpop/README.rst              |    8 +-
 providers/apache/tinkerpop/docs/changelog.rst      |   17 +
 providers/apache/tinkerpop/docs/index.rst          |    6 +-
 providers/apache/tinkerpop/provider.yaml           |    7 +-
 providers/apache/tinkerpop/pyproject.toml          |    9 +-
 .../airflow/providers/apache/tinkerpop/__init__.py |    2 +-
 providers/apprise/README.rst                       |    6 +-
 providers/apprise/docs/changelog.rst               |   17 +
 providers/apprise/docs/index.rst                   |    6 +-
 providers/apprise/provider.yaml                    |    3 +-
 providers/apprise/pyproject.toml                   |    6 +-
 .../src/airflow/providers/apprise/__init__.py      |    2 +-
 providers/arangodb/README.rst                      |    6 +-
 providers/arangodb/docs/changelog.rst              |   17 +
 providers/arangodb/docs/index.rst                  |    6 +-
 providers/arangodb/provider.yaml                   |    3 +-
 providers/arangodb/pyproject.toml                  |    6 +-
 .../src/airflow/providers/arangodb/__init__.py     |    2 +-
 providers/asana/README.rst                         |    6 +-
 providers/asana/docs/changelog.rst                 |   17 +
 providers/asana/docs/index.rst                     |    6 +-
 providers/asana/provider.yaml                      |    3 +-
 providers/asana/pyproject.toml                     |    6 +-
 .../asana/src/airflow/providers/asana/__init__.py  |    2 +-
 providers/atlassian/jira/README.rst                |    6 +-
 providers/atlassian/jira/docs/changelog.rst        |   17 +
 providers/atlassian/jira/docs/index.rst            |    6 +-
 providers/atlassian/jira/provider.yaml             |    3 +-
 providers/atlassian/jira/pyproject.toml            |    6 +-
 .../airflow/providers/atlassian/jira/__init__.py   |    2 +-
 providers/celery/README.rst                        |    6 +-
 providers/celery/docs/changelog.rst                |   28 +
 providers/celery/docs/index.rst                    |    6 +-
 providers/celery/provider.yaml                     |    3 +-
 providers/celery/pyproject.toml                    |    6 +-
 .../src/airflow/providers/celery/__init__.py       |    2 +-
 providers/clickhousedb/README.rst                  |    6 +-
 providers/clickhousedb/docs/changelog.rst          |   28 +
 providers/clickhousedb/docs/index.rst              |    6 +-
 providers/clickhousedb/provider.yaml               |    3 +-
 providers/clickhousedb/pyproject.toml              |    6 +-
 .../src/airflow/providers/clickhousedb/__init__.py |    2 +-
 providers/cloudant/README.rst                      |    6 +-
 providers/cloudant/docs/changelog.rst              |   17 +
 providers/cloudant/docs/index.rst                  |    6 +-
 providers/cloudant/provider.yaml                   |    3 +-
 providers/cloudant/pyproject.toml                  |    6 +-
 .../src/airflow/providers/cloudant/__init__.py     |    2 +-
 providers/cncf/kubernetes/README.rst               |    6 +-
 providers/cncf/kubernetes/docs/changelog.rst       |   30 +
 providers/cncf/kubernetes/docs/index.rst           |    6 +-
 providers/cncf/kubernetes/provider.yaml            |    3 +-
 providers/cncf/kubernetes/pyproject.toml           |    6 +-
 .../airflow/providers/cncf/kubernetes/__init__.py  |    2 +-
 .../kubernetes/executors/kubernetes_executor.py    |    3 +-
 .../executors/test_kubernetes_executor.py          |   40 +
 .../kubernetes/operators/test_spark_kubernetes.py  |    4 +-
 providers/cohere/README.rst                        |    6 +-
 providers/cohere/docs/changelog.rst                |   17 +
 providers/cohere/docs/index.rst                    |    6 +-
 providers/cohere/provider.yaml                     |    3 +-
 providers/cohere/pyproject.toml                    |    6 +-
 .../src/airflow/providers/cohere/__init__.py       |    2 +-
 providers/common/ai/.pre-commit-config.yaml        |    2 +-
 providers/common/ai/README.rst                     |   13 +-
 providers/common/ai/docs/agent_security.rst        |   14 +-
 providers/common/ai/docs/capabilities.rst          |   10 +-
 providers/common/ai/docs/changelog.rst             |   93 ++
 providers/common/ai/docs/connections/langchain.rst |   10 +-
 providers/common/ai/docs/hitl_review.rst           |   14 +-
 providers/common/ai/docs/index.rst                 |    9 +-
 providers/common/ai/docs/model_providers.rst       |    3 +
 providers/common/ai/docs/observability.rst         |   18 +-
 providers/common/ai/docs/operators/agent.rst       |   11 +-
 providers/common/ai/docs/operators/llm.rst         |   53 +-
 providers/common/ai/docs/stability.rst             |    5 +-
 providers/common/ai/docs/supported_services.rst    |   82 +
 providers/common/ai/docs/toolsets/hook.rst         |   11 +-
 providers/common/ai/docs/toolsets/index.rst        |   26 +-
 providers/common/ai/docs/toolsets/logging.rst      |   30 +-
 .../common/ai/docs/toolsets/managed_agent.rst      |    8 +
 providers/common/ai/docs/toolsets/sql.rst          |   20 +-
 providers/common/ai/provider.yaml                  |   35 +-
 providers/common/ai/pyproject.toml                 |    8 +-
 .../ai/src/airflow/providers/common/ai/__init__.py |    2 +-
 .../providers/common/ai/durable/fingerprint.py     |   19 +-
 .../common/ai/example_dags/example_agent.py        |    4 +-
 .../common/ai/example_dags/example_hook_toolset.py |    2 +-
 .../providers/common/ai/get_provider_info.py       |   31 +-
 .../providers/common/ai/hooks/pydantic_ai.py       |    2 +-
 .../providers/common/ai/mixins/hitl_review.py      |   21 +-
 .../providers/common/ai/mixins/usage_budget.py     |  152 ++
 .../airflow/providers/common/ai/operators/agent.py |  154 +-
 .../airflow/providers/common/ai/operators/llm.py   |   76 +-
 .../providers/common/ai/operators/llm_branch.py    |   14 +-
 .../common/ai/operators/llm_file_analysis.py       |    5 +-
 .../common/ai/operators/llm_schema_compare.py      |   24 +-
 .../providers/common/ai/operators/llm_sql.py       |   13 +-
 .../providers/common/ai/plugins/hitl_review.py     |  125 +-
 .../providers/common/ai/plugins/www/package.json   |    1 +
 .../providers/common/ai/plugins/www/src/api.ts     |   13 +-
 .../ai/plugins/www/src/components/ChatPage.tsx     |    9 +-
 .../common/ai/plugins/www/src/hooks/useSession.ts  |    5 +-
 .../providers/common/ai/plugins/www/src/main.tsx   |   46 +-
 .../common/ai/plugins/www/tests/api.test.ts        |   63 +
 .../common/ai/plugins/www/tests/main.test.mjs      |   43 +
 .../airflow/providers/common/ai/tools/__init__.py  |    8 +-
 .../providers/common/ai/toolsets/__init__.py       |    9 +
 .../airflow/providers/common/ai/toolsets/hook.py   |   40 +-
 .../providers/common/ai/toolsets/logging.py        |   51 +-
 .../providers/common/ai/toolsets/sandbox.py        |   16 +-
 .../airflow/providers/common/ai/toolsets/sql.py    |   41 +-
 .../airflow/providers/common/ai/utils/logging.py   |   17 +-
 .../providers/common/ai/utils/usage_budget.py      |   15 +-
 .../common/ai/tests/unit/common/ai/conftest.py     |   48 +
 .../tests/unit/common/ai/decorators/test_agent.py  |   12 +-
 .../ai/decorators/test_llm_schema_compare.py       |   14 +
 .../unit/common/ai/decorators/test_llm_sql.py      |   12 +
 .../unit/common/ai/durable/test_fingerprint.py     |   15 +
 .../unit/common/ai/managed_agents/test_failover.py |    7 +-
 .../unit/common/ai/mixins/test_hitl_review.py      |   37 +-
 .../unit/common/ai/mixins/test_usage_budget.py     |  190 +++
 .../tests/unit/common/ai/operators/test_agent.py   |  611 +++++--
 .../ai/tests/unit/common/ai/operators/test_llm.py  |  265 ++-
 .../unit/common/ai/operators/test_llm_branch.py    |  140 +-
 .../common/ai/operators/test_llm_file_analysis.py  |   88 +-
 .../common/ai/operators/test_llm_schema_compare.py |  135 +-
 .../tests/unit/common/ai/operators/test_llm_sql.py |  125 +-
 .../unit/common/ai/plugins/test_hitl_review.py     |  469 +++++-
 .../ai/tests/unit/common/ai/policies/test_retry.py |   18 +-
 .../ai/tests/unit/common/ai/sandbox/test_base.py   |    2 +-
 .../ai/tests/unit/common/ai/sandbox/test_modal.py  |   12 +-
 .../tests/unit/common/ai/test_provider_metadata.py |  478 ++++++
 .../unit/common/ai/tools/test__from_toolset.py     |    2 +-
 .../ai/tests/unit/common/ai/tools/test_tools.py    |    5 +-
 .../ai/tests/unit/common/ai/toolsets/test_hook.py  |   58 +-
 .../tests/unit/common/ai/toolsets/test_logging.py  |  135 +-
 .../unit/common/ai/toolsets/test_managed_agent.py  |    9 +-
 .../tests/unit/common/ai/toolsets/test_sandbox.py  |   45 +-
 .../ai/tests/unit/common/ai/toolsets/test_sql.py   |   62 +
 .../ai/tests/unit/common/ai/utils/test_logging.py  |   17 -
 .../unit/common/ai/utils/test_sql_validation.py    |  163 +-
 .../unit/common/ai/utils/test_toolset_base.py      |    4 +-
 providers/common/compat/README.rst                 |    6 +-
 providers/common/compat/docs/changelog.rst         |   27 +
 providers/common/compat/docs/index.rst             |    6 +-
 providers/common/compat/provider.yaml              |    3 +-
 providers/common/compat/pyproject.toml             |    6 +-
 .../airflow/providers/common/compat/__init__.py    |    2 +-
 providers/common/io/README.rst                     |    6 +-
 providers/common/io/docs/changelog.rst             |   14 +
 providers/common/io/docs/index.rst                 |    6 +-
 providers/common/io/docs/state_store_backend.rst   |    4 +-
 providers/common/io/provider.yaml                  |    7 +-
 providers/common/io/pyproject.toml                 |    6 +-
 .../io/src/airflow/providers/common/io/__init__.py |    2 +-
 .../providers/common/io/get_provider_info.py       |    2 +-
 .../providers/common/io/state_store/backend.py     |   32 +-
 .../airflow/providers/common/io/version_compat.py  |    1 +
 .../unit/common/io/state_store/test_backend.py     |   49 +-
 providers/common/messaging/README.rst              |    6 +-
 providers/common/messaging/docs/changelog.rst      |   17 +
 providers/common/messaging/docs/index.rst          |    6 +-
 providers/common/messaging/provider.yaml           |    3 +-
 providers/common/messaging/pyproject.toml          |    6 +-
 .../airflow/providers/common/messaging/__init__.py |    2 +-
 providers/common/sql/README.rst                    |    8 +-
 providers/common/sql/docs/changelog.rst            |   27 +
 providers/common/sql/docs/index.rst                |    6 +-
 providers/common/sql/provider.yaml                 |    3 +-
 providers/common/sql/pyproject.toml                |    6 +-
 .../src/airflow/providers/common/sql/__init__.py   |    2 +-
 providers/databricks/README.rst                    |   10 +-
 providers/databricks/docs/changelog.rst            |   25 +
 providers/databricks/docs/index.rst                |    8 +-
 providers/databricks/provider.yaml                 |    3 +-
 providers/databricks/pyproject.toml                |    8 +-
 .../src/airflow/providers/databricks/__init__.py   |    2 +-
 providers/datadog/README.rst                       |    6 +-
 providers/datadog/docs/changelog.rst               |   17 +
 providers/datadog/docs/index.rst                   |    6 +-
 providers/datadog/provider.yaml                    |    3 +-
 providers/datadog/pyproject.toml                   |    6 +-
 .../src/airflow/providers/datadog/__init__.py      |    2 +-
 providers/dbt/cloud/README.rst                     |    6 +-
 providers/dbt/cloud/docs/changelog.rst             |   27 +
 providers/dbt/cloud/docs/index.rst                 |    6 +-
 providers/dbt/cloud/provider.yaml                  |    3 +-
 providers/dbt/cloud/pyproject.toml                 |    6 +-
 .../src/airflow/providers/dbt/cloud/__init__.py    |    2 +-
 providers/dingding/README.rst                      |    6 +-
 providers/dingding/docs/changelog.rst              |   17 +
 providers/dingding/docs/index.rst                  |    6 +-
 providers/dingding/provider.yaml                   |    3 +-
 providers/dingding/pyproject.toml                  |    6 +-
 .../src/airflow/providers/dingding/__init__.py     |    2 +-
 providers/discord/README.rst                       |    6 +-
 providers/discord/docs/changelog.rst               |   26 +
 providers/discord/docs/index.rst                   |    6 +-
 providers/discord/provider.yaml                    |    3 +-
 providers/discord/pyproject.toml                   |    6 +-
 .../src/airflow/providers/discord/__init__.py      |    2 +-
 providers/docker/README.rst                        |    6 +-
 providers/docker/docs/changelog.rst                |   17 +
 providers/docker/docs/index.rst                    |    6 +-
 providers/docker/provider.yaml                     |    3 +-
 providers/docker/pyproject.toml                    |    6 +-
 .../src/airflow/providers/docker/__init__.py       |    2 +-
 providers/duckdb/README.rst                        |    6 +-
 providers/duckdb/docs/changelog.rst                |   17 +
 providers/duckdb/docs/commits.rst                  |    4 +-
 providers/duckdb/docs/index.rst                    |    6 +-
 providers/duckdb/provider.yaml                     |    3 +-
 providers/duckdb/pyproject.toml                    |    6 +-
 .../src/airflow/providers/duckdb/__init__.py       |    2 +-
 providers/edge3/docs/changelog.rst                 |   17 +-
 providers/edge3/provider.yaml                      |    2 +-
 .../src/airflow/providers/edge3/cli/api_client.py  |   19 +-
 .../src/airflow/providers/edge3/cli/worker.py      |    3 +
 .../providers/edge3/worker_api/datamodels.py       |    7 +
 .../providers/edge3/worker_api/routes/logs.py      |   31 +-
 .../edge3/worker_api/v2-edge-generated.yaml        |   28 +
 .../edge3/tests/unit/edge3/cli/test_api_client.py  |   52 +
 .../edge3/tests/unit/edge3/cli/test_worker.py      |   31 +-
 .../unit/edge3/worker_api/routes/test_logs.py      |  139 ++
 providers/elasticsearch/README.rst                 |    6 +-
 providers/elasticsearch/docs/changelog.rst         |   25 +
 providers/elasticsearch/docs/index.rst             |    6 +-
 providers/elasticsearch/provider.yaml              |    3 +-
 providers/elasticsearch/pyproject.toml             |    6 +-
 .../airflow/providers/elasticsearch/__init__.py    |    2 +-
 .../providers/elasticsearch/log/es_task_handler.py |    3 +-
 .../unit/elasticsearch/log/test_es_task_handler.py |    6 +
 providers/exasol/README.rst                        |   14 +-
 providers/exasol/docs/changelog.rst                |   22 +
 providers/exasol/docs/index.rst                    |    6 +-
 providers/exasol/provider.yaml                     |    3 +-
 providers/exasol/pyproject.toml                    |    6 +-
 .../src/airflow/providers/exasol/__init__.py       |    2 +-
 providers/fab/README.rst                           |    6 +-
 providers/fab/docs/changelog.rst                   |   30 +
 providers/fab/docs/index.rst                       |    6 +-
 providers/fab/provider.yaml                        |    3 +-
 providers/fab/pyproject.toml                       |    6 +-
 .../fab/src/airflow/providers/fab/__init__.py      |    2 +-
 .../providers/fab/auth_manager/fab_auth_manager.py |    9 +
 .../unit/fab/auth_manager/test_fab_auth_manager.py |   18 +
 providers/facebook/README.rst                      |    6 +-
 providers/facebook/docs/changelog.rst              |   21 +
 providers/facebook/docs/index.rst                  |    6 +-
 providers/facebook/provider.yaml                   |    3 +-
 providers/facebook/pyproject.toml                  |    6 +-
 .../src/airflow/providers/facebook/__init__.py     |    2 +-
 providers/ftp/README.rst                           |    6 +-
 providers/ftp/docs/changelog.rst                   |   22 +
 providers/ftp/docs/index.rst                       |    6 +-
 providers/ftp/provider.yaml                        |    3 +-
 providers/ftp/pyproject.toml                       |    6 +-
 .../ftp/src/airflow/providers/ftp/__init__.py      |    2 +-
 providers/git/README.rst                           |    6 +-
 providers/git/docs/changelog.rst                   |   24 +
 providers/git/docs/index.rst                       |    6 +-
 providers/git/provider.yaml                        |    3 +-
 providers/git/pyproject.toml                       |    6 +-
 .../git/src/airflow/providers/git/__init__.py      |    2 +-
 providers/github/README.rst                        |    6 +-
 providers/github/docs/changelog.rst                |   17 +
 providers/github/docs/index.rst                    |    6 +-
 providers/github/provider.yaml                     |    3 +-
 providers/github/pyproject.toml                    |    6 +-
 .../src/airflow/providers/github/__init__.py       |    2 +-
 providers/google/README.rst                        |   16 +-
 providers/google/docs/changelog.rst                |   51 +
 providers/google/docs/index.rst                    |    8 +-
 providers/google/provider.yaml                     |    3 +-
 providers/google/pyproject.toml                    |    8 +-
 .../src/airflow/providers/google/__init__.py       |    2 +-
 .../google/cloud/operators/kubernetes_engine.py    |   26 +-
 .../cloud/operators/test_kubernetes_engine.py      |   39 +-
 providers/grpc/README.rst                          |    6 +-
 providers/grpc/docs/changelog.rst                  |   17 +
 providers/grpc/docs/index.rst                      |    6 +-
 providers/grpc/provider.yaml                       |    3 +-
 providers/grpc/pyproject.toml                      |    6 +-
 .../grpc/src/airflow/providers/grpc/__init__.py    |    2 +-
 providers/hashicorp/README.rst                     |    8 +-
 providers/hashicorp/docs/changelog.rst             |   22 +
 providers/hashicorp/docs/index.rst                 |    6 +-
 providers/hashicorp/provider.yaml                  |    3 +-
 providers/hashicorp/pyproject.toml                 |    6 +-
 .../src/airflow/providers/hashicorp/__init__.py    |    2 +-
 providers/http/README.rst                          |    6 +-
 providers/http/docs/changelog.rst                  |   28 +
 providers/http/docs/index.rst                      |    6 +-
 providers/http/provider.yaml                       |    3 +-
 providers/http/pyproject.toml                      |    6 +-
 .../http/src/airflow/providers/http/__init__.py    |    2 +-
 providers/ibm/db2/README.rst                       |  121 +-
 providers/ibm/mq/README.rst                        |   43 +-
 providers/imap/README.rst                          |    6 +-
 providers/imap/docs/changelog.rst                  |   17 +
 providers/imap/docs/index.rst                      |    6 +-
 providers/imap/provider.yaml                       |    3 +-
 providers/imap/pyproject.toml                      |    6 +-
 .../imap/src/airflow/providers/imap/__init__.py    |    2 +-
 providers/influxdb/README.rst                      |    6 +-
 providers/influxdb/docs/changelog.rst              |   22 +
 providers/influxdb/docs/index.rst                  |    6 +-
 providers/influxdb/provider.yaml                   |    3 +-
 providers/influxdb/pyproject.toml                  |    6 +-
 .../src/airflow/providers/influxdb/__init__.py     |    2 +-
 providers/informatica/README.rst                   |    6 +-
 providers/informatica/docs/changelog.rst           |   19 +
 providers/informatica/docs/index.rst               |    6 +-
 providers/informatica/provider.yaml                |    3 +-
 providers/informatica/pyproject.toml               |    6 +-
 .../src/airflow/providers/informatica/__init__.py  |    2 +-
 providers/jdbc/README.rst                          |    8 +-
 providers/jdbc/docs/changelog.rst                  |   15 +
 providers/jdbc/docs/index.rst                      |    6 +-
 providers/jdbc/provider.yaml                       |    3 +-
 providers/jdbc/pyproject.toml                      |    6 +-
 .../jdbc/src/airflow/providers/jdbc/__init__.py    |    2 +-
 providers/jenkins/README.rst                       |    6 +-
 providers/jenkins/docs/changelog.rst               |   23 +
 providers/jenkins/docs/index.rst                   |    6 +-
 providers/jenkins/provider.yaml                    |    3 +-
 providers/jenkins/pyproject.toml                   |    6 +-
 .../src/airflow/providers/jenkins/__init__.py      |    2 +-
 providers/keycloak/README.rst                      |    6 +-
 providers/keycloak/docs/changelog.rst              |   23 +
 providers/keycloak/docs/index.rst                  |    6 +-
 providers/keycloak/provider.yaml                   |    3 +-
 providers/keycloak/pyproject.toml                  |    6 +-
 .../src/airflow/providers/keycloak/__init__.py     |    2 +-
 providers/microsoft/azure/README.rst               |    8 +-
 providers/microsoft/azure/docs/changelog.rst       |   27 +
 providers/microsoft/azure/docs/index.rst           |    8 +-
 providers/microsoft/azure/provider.yaml            |    3 +-
 providers/microsoft/azure/pyproject.toml           |    8 +-
 .../airflow/providers/microsoft/azure/__init__.py  |    2 +-
 providers/microsoft/mssql/README.rst               |    6 +-
 providers/microsoft/mssql/docs/changelog.rst       |   21 +
 providers/microsoft/mssql/docs/index.rst           |    6 +-
 providers/microsoft/mssql/provider.yaml            |    3 +-
 providers/microsoft/mssql/pyproject.toml           |    6 +-
 .../airflow/providers/microsoft/mssql/__init__.py  |    2 +-
 providers/microsoft/psrp/README.rst                |    6 +-
 providers/microsoft/psrp/docs/changelog.rst        |   17 +
 providers/microsoft/psrp/docs/index.rst            |    6 +-
 providers/microsoft/psrp/provider.yaml             |    3 +-
 providers/microsoft/psrp/pyproject.toml            |    6 +-
 .../airflow/providers/microsoft/psrp/__init__.py   |    2 +-
 providers/microsoft/winrm/README.rst               |    6 +-
 providers/microsoft/winrm/docs/changelog.rst       |   17 +
 providers/microsoft/winrm/docs/index.rst           |    6 +-
 providers/microsoft/winrm/provider.yaml            |    3 +-
 providers/microsoft/winrm/pyproject.toml           |    6 +-
 .../airflow/providers/microsoft/winrm/__init__.py  |    2 +-
 providers/modal/README.rst                         |    1 -
 providers/mongo/README.rst                         |    6 +-
 providers/mongo/docs/changelog.rst                 |   17 +
 providers/mongo/docs/index.rst                     |    6 +-
 providers/mongo/provider.yaml                      |    3 +-
 providers/mongo/pyproject.toml                     |    6 +-
 .../mongo/src/airflow/providers/mongo/__init__.py  |    2 +-
 providers/mysql/README.rst                         |    6 +-
 providers/mysql/docs/changelog.rst                 |   17 +
 providers/mysql/docs/index.rst                     |    6 +-
 providers/mysql/provider.yaml                      |    3 +-
 providers/mysql/pyproject.toml                     |    6 +-
 .../mysql/src/airflow/providers/mysql/__init__.py  |    2 +-
 providers/neo4j/README.rst                         |    6 +-
 providers/neo4j/docs/changelog.rst                 |   17 +
 providers/neo4j/docs/index.rst                     |    6 +-
 providers/neo4j/provider.yaml                      |    3 +-
 providers/neo4j/pyproject.toml                     |    6 +-
 .../neo4j/src/airflow/providers/neo4j/__init__.py  |    2 +-
 providers/odbc/README.rst                          |    6 +-
 providers/odbc/docs/changelog.rst                  |   19 +
 providers/odbc/docs/index.rst                      |    6 +-
 providers/odbc/provider.yaml                       |    3 +-
 providers/odbc/pyproject.toml                      |    6 +-
 .../odbc/src/airflow/providers/odbc/__init__.py    |    2 +-
 providers/openai/README.rst                        |    6 +-
 providers/openai/docs/changelog.rst                |   27 +
 providers/openai/docs/commits.rst                  |    2 +-
 providers/openai/docs/index.rst                    |    6 +-
 providers/openai/provider.yaml                     |    3 +-
 providers/openai/pyproject.toml                    |    6 +-
 .../src/airflow/providers/openai/__init__.py       |    2 +-
 providers/openfaas/README.rst                      |    6 +-
 providers/openfaas/docs/changelog.rst              |   21 +
 providers/openfaas/docs/index.rst                  |    6 +-
 providers/openfaas/provider.yaml                   |    3 +-
 providers/openfaas/pyproject.toml                  |    6 +-
 .../src/airflow/providers/openfaas/__init__.py     |    2 +-
 providers/openlineage/README.rst                   |   14 +-
 providers/openlineage/docs/changelog.rst           |   25 +
 providers/openlineage/docs/index.rst               |    6 +-
 providers/openlineage/provider.yaml                |    3 +-
 providers/openlineage/pyproject.toml               |    6 +-
 .../src/airflow/providers/openlineage/__init__.py  |    2 +-
 .../providers/openlineage/plugins/facets.py        |    7 +-
 .../providers/openlineage/plugins/listener.py      |   37 +-
 .../providers/openlineage/plugins/macros.py        |    6 +-
 .../airflow/providers/openlineage/utils/utils.py   |  163 +-
 .../providers/openlineage/version_compat.py        |    3 +-
 .../unit/openlineage/plugins/test_listener.py      |   71 +
 .../tests/unit/openlineage/plugins/test_macros.py  |   40 +-
 .../tests/unit/openlineage/plugins/test_utils.py   |   39 +-
 .../tests/unit/openlineage/utils/test_utils.py     |  285 +++-
 providers/opensearch/README.rst                    |    6 +-
 providers/opensearch/docs/changelog.rst            |   30 +
 providers/opensearch/docs/index.rst                |    6 +-
 providers/opensearch/provider.yaml                 |    3 +-
 providers/opensearch/pyproject.toml                |    6 +-
 .../src/airflow/providers/opensearch/__init__.py   |    2 +-
 .../providers/opensearch/log/os_task_handler.py    |    3 +-
 .../unit/opensearch/log/test_os_task_handler.py    |    6 +
 providers/opsgenie/README.rst                      |    6 +-
 providers/opsgenie/docs/changelog.rst              |   18 +
 providers/opsgenie/docs/index.rst                  |    6 +-
 providers/opsgenie/provider.yaml                   |    3 +-
 providers/opsgenie/pyproject.toml                  |    6 +-
 .../src/airflow/providers/opsgenie/__init__.py     |    2 +-
 providers/oracle/README.rst                        |   12 +-
 providers/oracle/docs/changelog.rst                |   17 +
 providers/oracle/docs/index.rst                    |    6 +-
 providers/oracle/provider.yaml                     |    3 +-
 providers/oracle/pyproject.toml                    |    6 +-
 .../src/airflow/providers/oracle/__init__.py       |    2 +-
 providers/pagerduty/README.rst                     |    6 +-
 providers/pagerduty/docs/changelog.rst             |   17 +
 providers/pagerduty/docs/index.rst                 |    6 +-
 providers/pagerduty/provider.yaml                  |    3 +-
 providers/pagerduty/pyproject.toml                 |    6 +-
 .../src/airflow/providers/pagerduty/__init__.py    |    2 +-
 providers/papermill/README.rst                     |    6 +-
 providers/papermill/docs/changelog.rst             |   20 +
 providers/papermill/docs/index.rst                 |    6 +-
 providers/papermill/provider.yaml                  |    3 +-
 providers/papermill/pyproject.toml                 |    6 +-
 .../src/airflow/providers/papermill/__init__.py    |    2 +-
 providers/pgvector/README.rst                      |    6 +-
 providers/pgvector/docs/changelog.rst              |   20 +
 providers/pgvector/docs/index.rst                  |    6 +-
 providers/pgvector/provider.yaml                   |    3 +-
 providers/pgvector/pyproject.toml                  |    6 +-
 .../src/airflow/providers/pgvector/__init__.py     |    2 +-
 providers/pinecone/README.rst                      |    6 +-
 providers/pinecone/docs/changelog.rst              |   17 +
 providers/pinecone/docs/index.rst                  |    6 +-
 providers/pinecone/provider.yaml                   |    3 +-
 providers/pinecone/pyproject.toml                  |    6 +-
 .../src/airflow/providers/pinecone/__init__.py     |    2 +-
 providers/postgres/README.rst                      |    8 +-
 providers/postgres/docs/changelog.rst              |   23 +
 providers/postgres/docs/index.rst                  |    6 +-
 providers/postgres/provider.yaml                   |    3 +-
 providers/postgres/pyproject.toml                  |    6 +-
 .../src/airflow/providers/postgres/__init__.py     |    2 +-
 providers/presto/README.rst                        |    8 +-
 providers/presto/docs/changelog.rst                |   22 +
 providers/presto/docs/index.rst                    |    6 +-
 providers/presto/provider.yaml                     |    3 +-
 providers/presto/pyproject.toml                    |    6 +-
 .../src/airflow/providers/presto/__init__.py       |    2 +-
 providers/qdrant/README.rst                        |    6 +-
 providers/qdrant/docs/changelog.rst                |   17 +
 providers/qdrant/docs/index.rst                    |    6 +-
 providers/qdrant/provider.yaml                     |    3 +-
 providers/qdrant/pyproject.toml                    |    6 +-
 .../src/airflow/providers/qdrant/__init__.py       |    2 +-
 providers/redis/README.rst                         |    6 +-
 providers/redis/docs/changelog.rst                 |   17 +
 providers/redis/docs/index.rst                     |    6 +-
 providers/redis/provider.yaml                      |    3 +-
 providers/redis/pyproject.toml                     |    6 +-
 .../redis/src/airflow/providers/redis/__init__.py  |    2 +-
 providers/salesforce/README.rst                    |    6 +-
 providers/salesforce/docs/changelog.rst            |   18 +
 providers/salesforce/docs/index.rst                |    6 +-
 providers/salesforce/provider.yaml                 |    3 +-
 providers/salesforce/pyproject.toml                |    6 +-
 .../src/airflow/providers/salesforce/__init__.py   |    2 +-
 providers/samba/README.rst                         |    6 +-
 providers/samba/docs/changelog.rst                 |   17 +
 providers/samba/docs/index.rst                     |    6 +-
 providers/samba/provider.yaml                      |    3 +-
 providers/samba/pyproject.toml                     |    6 +-
 .../samba/src/airflow/providers/samba/__init__.py  |    2 +-
 providers/segment/README.rst                       |    6 +-
 providers/segment/docs/changelog.rst               |   17 +
 providers/segment/docs/index.rst                   |    6 +-
 providers/segment/provider.yaml                    |    3 +-
 providers/segment/pyproject.toml                   |    6 +-
 .../src/airflow/providers/segment/__init__.py      |    2 +-
 providers/sendgrid/README.rst                      |    6 +-
 providers/sendgrid/docs/changelog.rst              |   23 +
 providers/sendgrid/docs/index.rst                  |    6 +-
 providers/sendgrid/provider.yaml                   |    3 +-
 providers/sendgrid/pyproject.toml                  |    6 +-
 .../src/airflow/providers/sendgrid/__init__.py     |    2 +-
 providers/sftp/README.rst                          |    8 +-
 providers/sftp/docs/changelog.rst                  |   28 +
 providers/sftp/docs/index.rst                      |    8 +-
 providers/sftp/provider.yaml                       |    3 +-
 providers/sftp/pyproject.toml                      |    8 +-
 .../sftp/src/airflow/providers/sftp/__init__.py    |    2 +-
 providers/singularity/README.rst                   |    6 +-
 providers/singularity/docs/changelog.rst           |   21 +
 providers/singularity/docs/index.rst               |    6 +-
 providers/singularity/provider.yaml                |    3 +-
 providers/singularity/pyproject.toml               |    6 +-
 .../src/airflow/providers/singularity/__init__.py  |    2 +-
 providers/slack/README.rst                         |    6 +-
 providers/slack/docs/changelog.rst                 |   23 +
 providers/slack/docs/index.rst                     |    6 +-
 providers/slack/provider.yaml                      |    3 +-
 providers/slack/pyproject.toml                     |    6 +-
 .../slack/src/airflow/providers/slack/__init__.py  |    2 +-
 providers/smtp/README.rst                          |    6 +-
 providers/smtp/docs/changelog.rst                  |   23 +
 providers/smtp/docs/index.rst                      |    6 +-
 providers/smtp/provider.yaml                       |    3 +-
 providers/smtp/pyproject.toml                      |    6 +-
 .../smtp/src/airflow/providers/smtp/__init__.py    |    2 +-
 providers/snowflake/README.rst                     |   16 +-
 providers/snowflake/docs/changelog.rst             |   31 +
 providers/snowflake/docs/index.rst                 |    6 +-
 .../docs/operators/snowflake_cortex_agent.rst      |  108 +-
 providers/snowflake/provider.yaml                  |    3 +-
 providers/snowflake/pyproject.toml                 |    6 +-
 .../src/airflow/providers/snowflake/__init__.py    |    2 +-
 .../snowflake/operators/snowflake_cortex_agent.py  |  278 +++-
 .../snowflake/example_snowflake_cortex_agent.py    |   60 +-
 .../operators/test_snowflake_cortex_agent.py       |  309 +++-
 providers/sqlite/README.rst                        |    6 +-
 providers/sqlite/docs/changelog.rst                |   23 +
 providers/sqlite/docs/index.rst                    |    6 +-
 providers/sqlite/provider.yaml                     |    3 +-
 providers/sqlite/pyproject.toml                    |    6 +-
 .../src/airflow/providers/sqlite/__init__.py       |    2 +-
 providers/ssh/README.rst                           |    6 +-
 providers/ssh/docs/changelog.rst                   |   27 +
 providers/ssh/docs/index.rst                       |    6 +-
 providers/ssh/provider.yaml                        |    3 +-
 providers/ssh/pyproject.toml                       |    6 +-
 .../ssh/src/airflow/providers/ssh/__init__.py      |    2 +-
 providers/standard/README.rst                      |    6 +-
 providers/standard/docs/changelog.rst              |   25 +
 providers/standard/docs/index.rst                  |    6 +-
 providers/standard/provider.yaml                   |    3 +-
 providers/standard/pyproject.toml                  |    6 +-
 .../src/airflow/providers/standard/__init__.py     |    2 +-
 providers/tableau/README.rst                       |    6 +-
 providers/tableau/docs/changelog.rst               |   17 +
 providers/tableau/docs/index.rst                   |    6 +-
 providers/tableau/provider.yaml                    |    3 +-
 providers/tableau/pyproject.toml                   |    6 +-
 .../src/airflow/providers/tableau/__init__.py      |    2 +-
 providers/telegram/README.rst                      |    6 +-
 providers/telegram/docs/changelog.rst              |   18 +
 providers/telegram/docs/index.rst                  |    6 +-
 providers/telegram/provider.yaml                   |    3 +-
 providers/telegram/pyproject.toml                  |    6 +-
 .../src/airflow/providers/telegram/__init__.py     |    2 +-
 providers/teradata/README.rst                      |    8 +-
 providers/teradata/docs/changelog.rst              |   19 +
 providers/teradata/docs/index.rst                  |    6 +-
 providers/teradata/provider.yaml                   |    3 +-
 providers/teradata/pyproject.toml                  |    6 +-
 .../src/airflow/providers/teradata/__init__.py     |    2 +-
 providers/trino/README.rst                         |    6 +-
 providers/trino/docs/changelog.rst                 |   17 +
 providers/trino/docs/index.rst                     |    6 +-
 providers/trino/provider.yaml                      |    3 +-
 providers/trino/pyproject.toml                     |    6 +-
 .../trino/src/airflow/providers/trino/__init__.py  |    2 +-
 providers/vertica/README.rst                       |   14 +-
 providers/vertica/docs/changelog.rst               |   28 +
 providers/vertica/docs/index.rst                   |    6 +-
 providers/vertica/provider.yaml                    |    3 +-
 providers/vertica/pyproject.toml                   |    6 +-
 .../src/airflow/providers/vertica/__init__.py      |    2 +-
 providers/vespa/README.rst                         |    8 +-
 providers/vespa/docs/changelog.rst                 |   21 +
 providers/vespa/docs/index.rst                     |    6 +-
 providers/vespa/provider.yaml                      |    6 +-
 providers/vespa/pyproject.toml                     |    9 +-
 .../vespa/src/airflow/providers/vespa/__init__.py  |    2 +-
 providers/weaviate/README.rst                      |    6 +-
 providers/weaviate/docs/changelog.rst              |   17 +
 providers/weaviate/docs/index.rst                  |    6 +-
 providers/weaviate/provider.yaml                   |    3 +-
 providers/weaviate/pyproject.toml                  |    6 +-
 .../src/airflow/providers/weaviate/__init__.py     |    2 +-
 providers/yandex/README.rst                        |    6 +-
 providers/yandex/docs/changelog.rst                |   17 +
 providers/yandex/docs/index.rst                    |    6 +-
 providers/yandex/provider.yaml                     |    3 +-
 providers/yandex/pyproject.toml                    |    6 +-
 .../src/airflow/providers/yandex/__init__.py       |    2 +-
 providers/ydb/README.rst                           |   14 +-
 providers/ydb/docs/changelog.rst                   |   16 +
 providers/ydb/docs/index.rst                       |    6 +-
 providers/ydb/provider.yaml                        |    3 +-
 providers/ydb/pyproject.toml                       |    6 +-
 .../ydb/src/airflow/providers/ydb/__init__.py      |    2 +-
 providers/zendesk/README.rst                       |    6 +-
 providers/zendesk/docs/changelog.rst               |   21 +
 providers/zendesk/docs/index.rst                   |    6 +-
 providers/zendesk/provider.yaml                    |    3 +-
 providers/zendesk/pyproject.toml                   |    6 +-
 .../src/airflow/providers/zendesk/__init__.py      |    2 +-
 pyproject.toml                                     |    8 +-
 registry/package.json                              |    2 +-
 registry/pnpm-lock.yaml                            |   26 +-
 scripts/ci/lang_sdk_serialization/test_dags.yaml   |    7 +-
 scripts/ci/prek/check_applies_to_roots_in_sync.py  |  117 ++
 .../check_template_context_variable_in_sync.py     |    2 +
 scripts/ci/prek/check_xcom_model_columns.py        |    2 +-
 .../ci/prek/check_yaml_importer_schema_versions.py |  137 ++
 scripts/ci/prek/generate_execution_api_schema.py   |    2 +
 scripts/ci/prek/generate_yaml_importer_schema.py   |   66 +
 scripts/ci/prek/sync_ts_sdk_schemas.py             |  127 ++
 scripts/ci/prek/ts_compile_lint_common_ai.py       |    1 +
 scripts/docker/install_os_dependencies.sh          |    3 +
 .../ci/prek/test_check_applies_to_roots_in_sync.py |   84 +
 scripts/tests/ci/prek/test_sync_ts_sdk_schemas.py  |  122 ++
 shared/dagnode/src/airflow_shared/dagnode/node.py  |  113 +-
 shared/dagnode/tests/dagnode/test_node.py          |   36 +-
 .../observability/metrics/metrics_template.yaml    |    6 +-
 shared/state/src/airflow_shared/state/__init__.py  |   48 +-
 shared/state/tests/state/test_state.py             |   28 +
 task-sdk/docs/api.rst                              |   37 +
 task-sdk/docs/concepts.rst                         |    2 +-
 task-sdk/docs/deferred-vs-async-operators.rst      |   12 +-
 task-sdk/docs/dynamic-task-mapping.rst             |    8 +-
 task-sdk/docs/examples.rst                         |    4 +-
 task-sdk/pyproject.toml                            |    1 +
 task-sdk/src/airflow/sdk/__init__.py               |    3 +
 task-sdk/src/airflow/sdk/__init__.pyi              |    2 +
 task-sdk/src/airflow/sdk/api/client.py             |   50 +-
 .../src/airflow/sdk/api/datamodels/_generated.py   |   20 +
 task-sdk/src/airflow/sdk/bases/decorator.py        |   31 +-
 task-sdk/src/airflow/sdk/bases/operator.py         |    1 +
 task-sdk/src/airflow/sdk/bases/xcom.py             |    2 +
 .../airflow/sdk/coordinators/java/_dag_importer.py |    4 +-
 .../src/airflow/sdk/definitions/_internal/loop.py  |  218 +++
 .../src/airflow/sdk/definitions/_internal/node.py  |   15 +-
 .../src/airflow/sdk/definitions/asset/__init__.py  |   13 +
 task-sdk/src/airflow/sdk/definitions/context.py    |    4 +-
 task-sdk/src/airflow/sdk/definitions/dag.py        |   62 +-
 .../sdk/definitions/decorators/task_group.py       |   39 +-
 .../src/airflow/sdk/definitions/mappedoperator.py  |    1 -
 task-sdk/src/airflow/sdk/definitions/taskgroup.py  |   90 +-
 .../airflow/sdk/definitions/timetables/assets.py   |   51 +-
 task-sdk/src/airflow/sdk/definitions/xcom_arg.py   |    3 +-
 task-sdk/src/airflow/sdk/exceptions.py             |    4 +
 task-sdk/src/airflow/sdk/execution_time/comms.py   |    4 +
 .../airflow/sdk/execution_time/lazy_sequence.py    |    4 +
 task-sdk/src/airflow/sdk/execution_time/loop.py    |  104 ++
 .../airflow/sdk/execution_time/request_handlers.py |   34 +-
 .../airflow/sdk/execution_time/schema/schema.json  |  114 ++
 .../sdk/execution_time/schema/versions/__init__.py |    6 +
 .../execution_time/schema/versions/v2026_10_30.py  |   51 +-
 .../src/airflow/sdk/execution_time/supervisor.py   |    6 +-
 .../src/airflow/sdk/execution_time/task_runner.py  |   63 +-
 .../sdk/importers/yaml_importer/__init__.py        |   26 +-
 .../sdk/importers/yaml_importer/migrator.py        |  168 ++
 .../airflow/sdk/importers/yaml_importer/models.py  |  459 ++++++
 .../airflow/sdk/importers/yaml_importer/parser.py  |  102 ++
 .../sdk/importers/yaml_importer/schema.json        |  365 +++++
 .../importers/yaml_importer/versions/__init__.py   |   42 +-
 task-sdk/src/airflow/sdk/log.py                    |   33 +-
 task-sdk/src/airflow/sdk/types.py                  |    9 +-
 task-sdk/tests/conftest.py                         |    6 +
 task-sdk/tests/task_sdk/bases/test_decorator.py    |   12 +
 .../coordinators/java/test_dag_importer.py         |   19 +
 .../task_sdk/definitions/_internal/test_loop.py    |  431 +++++
 .../task_sdk/definitions/decorators/test_result.py |   39 +-
 .../definitions/decorators/test_task_group.py      |  120 +-
 task-sdk/tests/task_sdk/definitions/test_asset.py  |   16 +
 task-sdk/tests/task_sdk/definitions/test_dag.py    |  342 +++-
 .../tests/task_sdk/definitions/test_xcom_arg.py    |   51 +-
 .../task_sdk/definitions/timetables/test_assets.py |  166 ++
 .../execution_time/schema/test_migrator.py         |  153 +-
 .../tests/task_sdk/execution_time/test_comms.py    |   16 +-
 .../tests/task_sdk/execution_time/test_loop.py     |  245 +++
 .../execution_time/test_request_handlers.py        |   51 +
 .../task_sdk/execution_time/test_supervisor.py     |   42 +-
 .../task_sdk/execution_time/test_task_runner.py    |  204 ++-
 .../task_sdk/importers/yaml_importer/__init__.py   |   16 -
 .../importers/yaml_importer/example_dag.yaml       |   69 +
 .../importers/yaml_importer/test_migrator.py       |  188 +++
 .../importers/yaml_importer/test_parser.py         |  576 +++++++
 task-sdk/tests/task_sdk/test_log.py                |   32 +
 ts-sdk/.pre-commit-config.yaml                     |    1 +
 ts-sdk/README.md                                   |  378 ++---
 ts-sdk/adr/0002-native-dag-interface.md            |   18 +-
 ts-sdk/api-docs/dag-authoring-api.ts               |   12 +-
 .../api-docs/{supporting-types.ts => hitl-api.ts}  |   14 +-
 ts-sdk/api-docs/supporting-types.ts                |    8 +-
 ts-sdk/capabilities.yaml                           |   14 +-
 ts-sdk/docs/index.md                               |   68 +-
 ts-sdk/example/README.md                           |   24 +-
 ts-sdk/example/dags/typescript_example.py          |   10 +
 ts-sdk/example/package.json                        |    4 +-
 ts-sdk/example/src/ai-approval.ts                  |  198 +++
 ts-sdk/example/src/hitl.ts                         |  137 ++
 ts-sdk/example/src/main.ts                         |   48 +-
 ts-sdk/example/src/native.ts                       |  167 ++
 ts-sdk/example/tsconfig.json                       |    4 +-
 ts-sdk/package.json                                |    4 +
 ts-sdk/pnpm-lock.yaml                              |  270 ++--
 ts-sdk/schema/dag-schema.json                      |   12 +
 {go-sdk => ts-sdk}/schema/supervisor-schema.json   |  114 ++
 ts-sdk/scripts/ci/prek/check_supervisor_schema.py  |    4 +-
 ts-sdk/scripts/ci/prek/sync_dag_schema.py          |   65 -
 ts-sdk/scripts/generate-dag-schema.mjs             |    4 +-
 ts-sdk/scripts/generate-supervisor.mjs             |    7 +-
 ts-sdk/src/coordinator/client.ts                   |  217 ++-
 ts-sdk/src/coordinator/operator-runner.ts          |  140 ++
 ts-sdk/src/coordinator/protocol.ts                 |    9 +
 ts-sdk/src/coordinator/runtime.ts                  |   65 +-
 ts-sdk/src/coordinator/serde.ts                    |  275 +---
 ts-sdk/src/generated/supervisor.ts                 |   37 +
 .../SearchDags => ts-sdk/src/hitl}/index.ts        |   12 +-
 ts-sdk/src/hitl/operator.ts                        |  281 ++++
 ts-sdk/src/hitl/spec.ts                            |  447 ++++++
 ts-sdk/src/index.ts                                |   11 +-
 ts-sdk/src/sdk/bundle.ts                           |   30 +-
 ts-sdk/src/sdk/client-types.ts                     |   23 +
 ts-sdk/src/sdk/client.ts                           |   74 +-
 ts-sdk/src/sdk/dag-graph.ts                        |  236 +++
 ts-sdk/src/sdk/dag.ts                              |  117 +-
 .../dag-authoring-api.ts => src/sdk/env.ts}        |   24 +-
 ts-sdk/src/sdk/operator.ts                         |  150 ++
 ts-sdk/src/sdk/plain-json.ts                       |   60 +
 .../trigger-dag-run-execute.ts}                    |  106 +-
 ts-sdk/src/sdk/trigger-dag-run.ts                  |   43 +-
 ts-sdk/tests/coordinator/client.test.ts            |  238 ++-
 ts-sdk/tests/coordinator/integration.test.ts       |  584 ++++++-
 ts-sdk/tests/coordinator/operator-runner.test.ts   |  207 +++
 ts-sdk/tests/hitl/operator.test.ts                 |  169 ++
 ts-sdk/tests/hitl/spec.test.ts                     |  353 ++++
 ts-sdk/tests/public-api.test.ts                    |   28 +
 ts-sdk/tests/sdk/dag.test.ts                       |   35 +
 ts-sdk/tests/sdk/hitl-inference.test.ts            |  117 ++
 ts-sdk/tests/sdk/native-dag-example.test.ts        |  213 +++
 ts-sdk/tests/sdk/trigger-dag-run.test.ts           |   21 +-
 ts-sdk/tsconfig.json                               |   12 +-
 ts-sdk/vitest.config.ts                            |   15 +
 uv.lock                                            |  757 +++++----
 1673 files changed, 74022 insertions(+), 11405 deletions(-)

Reply via email to