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

dabla pushed a change to branch dabla/agent-async/01-task-agent-aexecute
in repository https://gitbox.apache.org/repos/asf/airflow.git


    from 82179b5889d Annotate the task state store accessor stub in the async 
AgentOperator tests
     add 91a8ab6950a Fix airflowctl pools export/import dropping pool team 
ownership (#73132)
     add d5ba49cbd6a Close German Translation Gaps 2026-10-15 (#74802)
     add 4c4bab01e06 Allow loop gates to add human-readable decisions (#74806)
     add 238bb6ee2bd Complete Hebrew UI translations 2026-10-16 (#74467)
     add 4c98adf9e20 Skip the scheduler's Dag lookup for Dag runs with no 
callback to send (#74835)
     add 896f3711bdd Update Magpie floor to 0.9.0.dev202610140816 (#74815)
     add 028a4da8672 Add Map Index search to dag breadcrumb (#74763)
     add a23aa81c62e Fix flaky static checks crashing on ts-sdk node_modules 
during editable build (#74117)
     add d6d425da028 Declare pyarrow for Parquet output of SqlToS3Operator 
(#74691)
     add 8317410ef7d Do not warn about bare postgresql:// metadata DB URLs 
(#74863)
     add 23f4aee0239 Fix Dag version diff max-changes border, limit wording and 
duplicate count (#74818)
     add 0795688f863 Bump swagger-ui-dist from 5.33.1 to 5.33.2 in /registry 
(#74872)
     add 7acab3c3b02 Bump the ui-plugin-template-package-updates group across 1 
directory with 7 updates (#74877)
     add e009c1167eb Bump the edge-ui-package-updates group across 1 directory 
with 13 updates (#74879)
     add b9aa889577c Cover long-running jobs in the deferrable BigQuery check 
system test (#74356)
     add f54d32d969b Cap the workers of the SFTP concurrent directory transfer 
test (#74888)
     add 3ce8d152d0d Keep queued connection tests from overwriting newer 
connections (#74837)
     add 20ccfcd7457 Match camelCase keys against sensitive field names in 
masker (#74840)
     add c7cec687bb6 Cap `pydantic-ai-skills` below 2 for the Common AI skills 
extra (#74899)
     add 91937288435 Bump the core-ui-package-updates group across 1 directory 
with 16 updates (#74881)
     add f8b42cf2f41 Bump happy-dom from 20.14.5 to 21.0.1 in 
/airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui (#74876)
     add 7178a785947 Bump the ts-sdk-package-updates group across 1 directory 
with 3 updates (#74874)
     add 1f4fe796933 Keep the pydantic-ai first-run banner out of Common AI 
task logs (#74900)
     add b1ce1cac7f5 Fix Common AI Model tab not loading on Airflow 3.4 (#74898)
     add 0eab1db3d2b Replay an OpenAI Agents SDK agent's completed calls when 
Airflow retries its task (#74770)
     add f5038e67834 Fix dynamically mapped tasks never running on scheduled 
Dag runs (#74861)
     add bd0aedee6eb Bump the typescript group across 1 directory with 4 
updates (#74878)
     add 6e16f26400f Bump the auth-ui-package-updates group across 1 directory 
with 8 updates (#74875)
     add 47c1c416525 Bump happy-dom from 20.14.5 to 21.0.1 in 
/airflow-core/src/airflow/ui (#74882)
     add 47b092846cc Bump the uv-dependency-updates group across 1 directory 
with 4 updates (#74509)
     add f3784d2e9e1 Cancel the BigQuery job when BigQueryToGCSOperator is 
killed (#74564)
     add ed5496fe78d Remove unreachable break in get_bagged_dag (#72332)
     add bfe64b1991e Add AthenaSparkSensor (#72229)
     add a6af7e5a08e Show the actual value in two breeze and CI script error 
messages (#74894)
     add db1397a1e89 Reject duplicate durable toolset ids and fail deferred 
tools with `UnsupportedToolDeferralError` (#74902)
     add 4eda1ee76ea Make Common AI example Dags reach the behaviour they show 
(#74901)
     add dba55d8728a Add password grant type to Snowflake OAuth token requests 
(#74804)
     add 5caec465d3d Stop the OpenLineage execution timeout test flaking on 
busy CI runners (#74927)
     add 3fbf0134fde Remove redundant Snowflake prefixes from Cortex Agent and 
SQL API modules (#74300)
     add a5c28069af8 Cancel the Dataflow job when a user kills the deferred 
task (#69586)
     add c35db24a38c Fix Cloud Function invoke operator docs link (#69226)
     add d5aed746ad9 Avoid Vertex AI Feature Store system Dag import timeout 
(#69823)
     add 6a925a8fbe6 Resolve loop iterations through family and path columns on 
dynamic regions (#74892)
     add a1dbc930726 Stop holding `typesafe-sdk` and `boat-sdk` back in the uv 
lock (#74903)
     add 79ce98f1101 Prepare ad-hoc providers release 2026-10-17 (#74933)
     add 70363ba55e6 Fix stale Common AI docs and add a guide to writing a 
toolset (#74904)
     add 4b464ee29ba Clear language SDK task XComs in the coordinator when a 
try starts (#74221)
     add c0e61578a82 Add the Common AI docs fixes to the 1.0.0 changelog 
(#74937)
     add 76943ec8e44 Fix Celery result backend compatibility with PgBouncer 
(#74841)
     add 0266cae0e24 Keep the custom-toolset example's version from changing 
the PyPI path (#74939)
     add 4bc581aab21 Allow GKE Autopilot clusters without node pools and stop 
GKE pod trigger reviving should_delete_pod (#69876)
     add a9440be98a9 Update providers metadata 2026-10-18 (#74942)
     add 5dc96d65dd3 Fail publishing provider docs when a provider is missing 
from the site index (#74941)
     add fd4654dce4f Fall back for empty console domain (#70067)
     add 7644e35f8b7 Add retry-safe batch_id_prefix to 
DataprocCreateBatchOperator (#69855)
     add b00cfeb11f0 Drain result_queue before dispatch in LocalExecutor to 
prevent runtime dispatch deadlock (#70545)
     add c3cc5573b80 Batch triggerer unused trigger cleanup deletes (#70961)
     add 3f03b18920f Document that use_job_schedule also stops asset-triggered 
Dag runs (#73952)
     add b59f7489cd8 Make ZIP_REGEX case-insensitive to match .ZIP archives 
(#74269)
     add 4fbbcddf022 Reduce db clean batch probe overhead (#74455)
     add b8987f0356c UI: Open nav sidebar menus on hover and add a Dags menu 
(#74745)
     add 113bc123a6b Warn when ignore_unknown_values is a no-op in 
GCSToBigQueryOperator (#71675)
     add 0f8d6f88b0e UI: Keep unnamed columns out of the table columns menu 
(#74774)
     add 912bbe58050 Fix Dag list run badges and counters not refreshing after 
completion (#74734)
     add 71e74bc9554 Add deadline callback log visibility to the Dag Run view 
in UI (#73580)
     add a1e66b1f1d3 Check hooks before cancelling BigQuery jobs in on_kill 
(#74946)
     add ae8c970f12d Fix Discord embed author name length validation using 
wrong limit (#74940)
     add 34ffab8e4a4 Fix GKEStartPodOperator ignoring execution_timeout when 
deferrable (#71528)
     add 4bda61c8c3d Keep the HTTPError when a Dataprep error body is not JSON 
(#71702)
     add 7bf4936bd79 Bump prettier from 3.9.9 to 3.9.10 in 
/providers/fab/src/airflow/providers/fab/www (#74765)
     add 675b02a2f9b Make airflow-core typing hold for SQLAlchemy 2.0 and 2.1 
(#74629)
     add 099c03e4435 Fix SqlToS3Operator failing for every format when df_type 
is polars (#74692)
     add ad8fd59c1a8 Merge branch 'main' into 
dabla/agent-async/01-task-agent-aexecute

No new revisions were added by this update.

Summary of changes:
 .agents/skills/airflow-translations/locales/he.md  |  32 +-
 .../prepare-providers-documentation/SKILL.md       |   7 +
 .../release-management-config.md                   |   9 +
 .apache-magpie.lock                                |   6 +-
 .../docs/authoring-and-scheduling/loops.rst        |  30 +-
 airflow-core/docs/migrations-ref.rst               |   4 +-
 airflow-core/newsfragments/74837.bugfix.rst        |   1 +
 airflow-core/newsfragments/74840.bugfix.rst        |   1 +
 airflow-core/pyproject.toml                        |   2 +-
 .../api_fastapi/auth/managers/base_auth_manager.py |   3 +-
 .../auth/managers/simple/ui/package.json           |  18 +-
 .../auth/managers/simple/ui/pnpm-lock.yaml         | 462 +++++------
 .../api_fastapi/core_api/datamodels/ui/deadline.py |   7 +
 .../api_fastapi/core_api/datamodels/ui/grid.py     |  14 +-
 .../api_fastapi/core_api/openapi/_private_ui.yaml  | 151 +++-
 .../core_api/openapi/v2-rest-api-generated.yaml    |  11 +
 .../core_api/routes/public/connections.py          |   4 +-
 .../api_fastapi/core_api/routes/public/xcom.py     |  18 +
 .../api_fastapi/core_api/routes/ui/deadlines.py    |  75 +-
 .../core_api/services/public/task_instances.py     |  11 +-
 .../core_api/services/ui/dependencies.py           |   6 +-
 .../api_fastapi/core_api/services/ui/grid.py       |  18 +-
 .../execution_api/datamodels/taskinstance.py       |  21 +
 .../execution_api/routes/connection_tests.py       |   7 +-
 .../execution_api/routes/task_instances.py         |  52 +-
 .../api_fastapi/execution_api/routes/xcoms.py      |  58 +-
 .../api_fastapi/execution_api/versions/__init__.py |   2 +
 .../execution_api/versions/v2026_10_30.py          |  12 +
 .../src/airflow/config_templates/config.yml        |  14 +-
 airflow-core/src/airflow/configuration.py          |  29 +-
 .../src/airflow/example_dags/example_task_loops.py |   6 +-
 .../src/airflow/executors/local_executor.py        |   1 +
 .../src/airflow/jobs/scheduler_job_runner.py       |  11 +-
 .../src/airflow/jobs/triggerer_job_runner.py       |  16 +-
 .../0143_3_4_0_add_dynamic_region_storage.py       |   6 +
 ...add_commit_allows_update_to_connection_test.py} |  25 +-
 ..._job.py => 0148_3_5_0_add_session_id_to_job.py} |   4 +-
 airflow-core/src/airflow/models/connection_test.py |  26 +-
 airflow-core/src/airflow/models/dagrun.py          |  44 +-
 airflow-core/src/airflow/models/dynamic_region.py  | 232 ++++--
 airflow-core/src/airflow/models/pool.py            |   2 +-
 .../src/airflow/models/task_coordinates.py         |   9 +-
 airflow-core/src/airflow/models/trigger.py         |  63 +-
 airflow-core/src/airflow/models/xcom.py            |   7 +-
 .../src/airflow/ui/openapi-gen/queries/common.ts   |  14 +-
 .../ui/openapi-gen/queries/ensureQueryData.ts      |  25 +-
 .../src/airflow/ui/openapi-gen/queries/prefetch.ts |  25 +-
 .../src/airflow/ui/openapi-gen/queries/queries.ts  |  25 +-
 .../src/airflow/ui/openapi-gen/queries/suspense.ts |  25 +-
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts |  44 +-
 .../ui/openapi-gen/requests/services.gen.ts        |  37 +-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |  51 +-
 airflow-core/src/airflow/ui/package.json           |  42 +-
 airflow-core/src/airflow/ui/pnpm-lock.yaml         | 891 +++++++++++----------
 .../src/airflow/ui/public/i18n/locales/ca/dag.json |   4 -
 .../airflow/ui/public/i18n/locales/de/common.json  |   7 +
 .../src/airflow/ui/public/i18n/locales/de/dag.json |  28 +-
 .../airflow/ui/public/i18n/locales/de/dags.json    |   4 +-
 .../src/airflow/ui/public/i18n/locales/el/dag.json |   4 -
 .../airflow/ui/public/i18n/locales/en/common.json  |   3 +
 .../src/airflow/ui/public/i18n/locales/en/dag.json |  28 +-
 .../airflow/ui/public/i18n/locales/en/dags.json    |   1 +
 .../src/airflow/ui/public/i18n/locales/fr/dag.json |   4 -
 .../airflow/ui/public/i18n/locales/he/admin.json   |  35 +-
 .../airflow/ui/public/i18n/locales/he/assets.json  |  19 +-
 .../airflow/ui/public/i18n/locales/he/browse.json  |  35 +
 .../airflow/ui/public/i18n/locales/he/common.json  | 150 +++-
 .../ui/public/i18n/locales/he/components.json      |  63 +-
 .../src/airflow/ui/public/i18n/locales/he/dag.json | 122 ++-
 .../airflow/ui/public/i18n/locales/he/dags.json    |  51 +-
 .../ui/public/i18n/locales/he/dashboard.json       |  26 +-
 .../src/airflow/ui/public/i18n/locales/ko/dag.json |   4 -
 .../src/airflow/ui/public/i18n/locales/pl/dag.json |   4 -
 .../airflow/ui/public/i18n/locales/zh-TW/dag.json  |   4 -
 .../airflow/ui/src/components/Breadcrumb/Crumb.tsx |  22 +-
 .../ui/src/components/Breadcrumb/CrumbSwitcher.tsx |  18 +-
 .../DataTable/DataTable.columnVisibility.test.tsx  |  20 +
 .../DataTable/DataTable.expanding.test.tsx         |  74 ++
 .../ui/src/components/DataTable/DataTable.tsx      |  35 +-
 .../ui/src/components/DataTable/TableList.tsx      |  32 +-
 .../ui/src/components/DataTable/features.ts        |   5 +-
 .../LoopDecisionReason.tsx}                        |  28 +-
 .../src/airflow/ui/src/components/SearchSelect.tsx | 113 +--
 .../ui/src/components/renderStructuredLog.test.tsx |  18 +-
 .../ui/src/components/renderStructuredLog.tsx      |   3 +-
 .../ui/src/layouts/Details/DagBreadcrumb.test.tsx  |  29 +-
 .../ui/src/layouts/Details/DagBreadcrumb.tsx       |  32 +-
 .../src/layouts/Details/MapIndexSwitcherButton.tsx |  98 +++
 .../ui/src/layouts/Details/SearchDagRuns.test.tsx  |  38 +-
 .../ui/src/layouts/Details/SearchDagRuns.tsx       |  49 +-
 .../ui/src/layouts/Details/SearchDags.test.tsx     | 135 +++-
 .../airflow/ui/src/layouts/Details/SearchDags.tsx  |  74 +-
 .../src/layouts/Details/SearchMapIndexes.test.tsx  | 192 +++++
 .../ui/src/layouts/Details/SearchMapIndexes.tsx    | 168 ++++
 .../ui/src/layouts/Details/searchOptions.test.ts   |  41 +-
 .../ui/src/layouts/Details/searchOptions.ts        |  59 +-
 .../src/airflow/ui/src/layouts/Nav/AdminButton.tsx |  20 +-
 .../airflow/ui/src/layouts/Nav/BrowseButton.tsx    |  20 +-
 .../airflow/ui/src/layouts/Nav/DagsButton.test.tsx |  67 ++
 .../src/airflow/ui/src/layouts/Nav/DagsButton.tsx  |  77 ++
 .../src/airflow/ui/src/layouts/Nav/DocsButton.tsx  |  56 +-
 .../src/airflow/ui/src/layouts/Nav/Nav.tsx         |  11 +-
 .../airflow/ui/src/layouts/Nav/NavMenu.test.tsx    |  90 +++
 .../src/airflow/ui/src/layouts/Nav/NavMenu.tsx     | 170 ++++
 .../src/airflow/ui/src/layouts/Nav/PluginMenus.tsx |  44 +-
 .../airflow/ui/src/layouts/Nav/SecurityButton.tsx  |  26 +-
 .../ui/src/layouts/Nav/UserSettingsButton.tsx      | 190 +++--
 .../Asset/AssetStateStore/AssetStateStore.tsx      |   1 +
 .../ui/src/pages/Connections/Connections.tsx       |   1 +
 .../ui/src/pages/Dag/Versions/VersionDiff.test.tsx |  30 +-
 .../ui/src/pages/Dag/Versions/VersionDiff.tsx      |  41 +-
 .../ui/src/pages/Dag/Versions/Versions.test.tsx    |   6 +
 .../airflow/ui/src/pages/Dag/Versions/Versions.tsx |   9 +
 .../src/airflow/ui/src/pages/DagRuns/DagRuns.tsx   |   1 +
 .../DagsList/DagsListColumns.test.tsx}             |  16 +-
 .../ui/src/pages/DagsList/DagsListColumns.tsx      |   4 +
 .../GroupTaskInstance/useLoopOutcomeStats.test.tsx |  64 ++
 .../GroupTaskInstance/useLoopOutcomeStats.tsx      |  16 +-
 .../airflow/ui/src/pages/Run/CallbackLogs.test.tsx |  85 ++
 .../src/airflow/ui/src/pages/Run/CallbackLogs.tsx  | 189 +++++
 .../airflow/ui/src/pages/Run/Callbacks.test.tsx    | 139 ++++
 .../src/airflow/ui/src/pages/Run/Callbacks.tsx     | 161 ++++
 .../src/airflow/ui/src/pages/Run/Run.test.tsx      |  81 ++
 airflow-core/src/airflow/ui/src/pages/Run/Run.tsx  |  35 +-
 .../ui/src/pages/TaskInstance/Header.test.tsx      |  34 +-
 .../airflow/ui/src/pages/TaskInstance/Header.tsx   |  12 +
 .../ui/src/pages/TaskInstances/TaskInstances.tsx   |   1 +
 .../ui/src/pages/TaskStateStore/TaskStateStore.tsx |   1 +
 .../airflow/ui/src/pages/Variables/Variables.tsx   |   1 +
 .../src/airflow/ui/src/pages/XCom/XCom.test.tsx    |  18 +
 .../src/airflow/ui/src/pages/XCom/XCom.tsx         |   2 +
 .../ui/src/queries/useDagRunStateCounts.tsx        |   2 +-
 .../src/airflow/ui/src/queries/useDags.test.tsx    | 101 +++
 .../src/airflow/ui/src/queries/useDags.tsx         |   2 +-
 .../src/airflow/ui/src/queries/useLogs.tsx         |  45 +-
 airflow-core/src/airflow/ui/src/router.tsx         |   2 +
 airflow-core/src/airflow/ui/src/utils/option.ts    |  10 +-
 airflow-core/src/airflow/utils/cli.py              |   2 -
 airflow-core/src/airflow/utils/db.py               |   2 +-
 airflow-core/src/airflow/utils/db_cleanup.py       |   4 +-
 airflow-core/src/airflow/utils/file.py             |   2 +-
 .../src/airflow/utils/log/path_log_reader.py       |  98 +++
 airflow-core/src/airflow/utils/sqlalchemy.py       |  12 +-
 .../tests/unit/always/test_project_structure.py    |   1 -
 .../auth/managers/test_base_auth_manager.py        |  17 +
 .../core_api/routes/public/test_connections.py     |  21 +
 .../core_api/routes/public/test_extra_links.py     |   7 +-
 .../core_api/routes/public/test_task_instances.py  |  10 +-
 .../core_api/routes/public/test_xcom.py            |  48 ++
 .../core_api/routes/ui/test_deadlines.py           | 125 ++-
 .../api_fastapi/core_api/routes/ui/test_grid.py    |  40 +-
 .../tests/unit/api_fastapi/core_api/test_app.py    |   1 +
 .../versions/head/test_connection_tests.py         |  33 +
 .../versions/head/test_task_instances.py           | 251 ++----
 .../execution_api/versions/head/test_xcoms.py      |  53 +-
 airflow-core/tests/unit/core/test_configuration.py |  24 +
 .../tests/unit/executors/test_local_executor.py    |  80 ++
 airflow-core/tests/unit/jobs/test_scheduler_job.py |  57 +-
 airflow-core/tests/unit/jobs/test_triggerer_job.py |  31 +
 .../test_0143_add_dynamic_region_storage.py        |  10 +-
 .../test_0144_rename_stored_map_index.py           |  12 +-
 airflow-core/tests/unit/models/conftest.py         |   8 +-
 .../tests/unit/models/test_connection_test.py      |  32 +-
 airflow-core/tests/unit/models/test_dagrun.py      |  36 +-
 .../tests/unit/models/test_dynamic_region.py       | 233 +++++-
 .../tests/unit/models/test_taskinstance.py         |   4 +-
 airflow-core/tests/unit/models/test_trigger.py     | 218 ++++-
 .../tests/unit/utils/log/test_path_log_reader.py   |  76 ++
 airflow-core/tests/unit/utils/test_db_cleanup.py   |  22 +
 airflow-core/tests/unit/utils/test_file.py         |  16 +-
 airflow-core/tests/unit/utils/test_sqlalchemy.py   |  20 +
 .../src/airflowctl/ctl/commands/pool_command.py    |   2 +
 .../airflow_ctl/ctl/commands/test_pool_command.py  |  45 ++
 dev/README_RELEASE_PROVIDERS.md                    |  65 +-
 .../images/output_workflow-run_publish-docs.svg    |  28 +-
 .../images/output_workflow-run_publish-docs.txt    |   2 +-
 .../airflow_breeze/commands/workflow_commands.py   | 170 +++-
 .../commands/workflow_commands_config.py           |   1 +
 dev/breeze/src/airflow_breeze/utils/github.py      |   2 +-
 dev/breeze/tests/test_workflow_commands.py         | 205 +++++
 dev/breeze/uv.lock                                 |  91 +--
 .../react_plugin_template/package.json             |  14 +-
 .../react_plugin_template/pnpm-lock.yaml           | 404 +++++-----
 docs/spelling_wordlist.txt                         |   1 +
 generated/provider_metadata.json                   |  16 +
 go-sdk/pkg/execution/genmodels/models.gen.go       |  22 +-
 go-sdk/schema/supervisor-schema.json               |  49 ++
 providers/.last_release_date.txt                   |   2 +-
 .../alibaba/cloud/log/oss_task_handler.py          |   2 +-
 providers/amazon/docs/index.rst                    |   7 +-
 .../amazon/docs/operators/athena/athena_spark.rst  |  25 +-
 providers/amazon/docs/transfer/sql_to_s3.rst       |   4 +
 providers/amazon/provider.yaml                     |   1 +
 providers/amazon/pyproject.toml                    |   6 +
 .../airflow/providers/amazon/aws/hooks/athena.py   |   7 +
 .../amazon/aws/log/cloudwatch_task_handler.py      |   6 +-
 .../providers/amazon/aws/log/s3_task_handler.py    |   2 +-
 .../providers/amazon/aws/sensors/athena_spark.py   |  84 ++
 .../providers/amazon/aws/transfers/sql_to_s3.py    |  18 +-
 .../airflow/providers/amazon/get_provider_info.py  |   5 +-
 .../system/amazon/aws/example_athena_spark.py      |  25 +-
 .../unit/amazon/aws/sensors/test_athena_spark.py   | 175 ++++
 .../unit/amazon/aws/transfers/test_sql_to_s3.py    |  59 +-
 .../providers/apache/hdfs/log/hdfs_task_handler.py |   2 +-
 providers/celery/docs/celery_executor.rst          |  17 +
 providers/celery/provider.yaml                     |   2 +
 .../providers/celery/executors/default_celery.py   |  30 +-
 .../airflow/providers/celery/get_provider_info.py  |   2 +-
 .../unit/celery/executors/test_celery_executor.py  |   7 +-
 .../unit/celery/executors/test_default_celery.py   | 175 ++++
 providers/common/ai/README.rst                     |   4 +-
 providers/common/ai/docs/changelog.rst             |  34 +-
 providers/common/ai/docs/durable_execution.rst     |   6 +-
 providers/common/ai/docs/features.rst              |   5 +-
 providers/common/ai/docs/frameworks/adk.rst        |   2 +-
 providers/common/ai/docs/frameworks/anthropic.rst  |  11 +-
 .../common/ai/docs/frameworks/openai_agents.rst    |  72 +-
 .../common/ai/docs/frameworks/pydantic_ai.rst      |   6 +
 providers/common/ai/docs/frameworks/strands.rst    |   2 +-
 providers/common/ai/docs/index.rst                 |   2 +-
 providers/common/ai/docs/retry_policies.rst        |   4 +-
 providers/common/ai/docs/stability.rst             |   3 +-
 providers/common/ai/docs/supported_services.rst    |  10 +-
 providers/common/ai/docs/toolsets/custom.rst       | 173 ++++
 providers/common/ai/docs/toolsets/datafusion.rst   |   7 +-
 providers/common/ai/docs/toolsets/index.rst        |   4 +-
 providers/common/ai/docs/troubleshooting.rst       |   4 +
 providers/common/ai/pyproject.toml                 |   7 +-
 .../providers/common/ai/durable/openai_agents.py   | 479 +++++++++++
 .../common/ai/example_dags/example_adk_agent.py    |   8 +-
 .../ai/example_dags/example_agent_tool_approval.py |   2 +-
 .../example_dags/example_anthropic_tool_runner.py  |   7 +-
 .../ai/example_dags/example_custom_toolset.py      | 160 ++++
 .../ai/example_dags/example_llm_retry_policy.py    |  19 +-
 ...s_agent.py => example_openai_agents_durable.py} |  48 +-
 .../ai/example_dags/example_strands_agent.py       |   6 +-
 .../providers/common/ai/hooks/pydantic_ai.py       |   5 +
 .../airflow/providers/common/ai/operators/agent.py |  55 +-
 .../providers/common/ai/plugins/model_panel.py     |   2 +-
 .../airflow/providers/common/ai/policies/retry.py  |   5 +-
 .../airflow/providers/common/ai/toolsets/skills.py |  16 +-
 .../unit/common/ai/durable/test_openai_agents.py   | 521 ++++++++++++
 .../tests/unit/common/ai/hooks/test_pydantic_ai.py |  18 +
 .../tests/unit/common/ai/operators/test_agent.py   | 127 ++-
 .../ai/operators/test_agent_tool_approval.py       |   1 -
 .../unit/common/ai/plugins/test_model_panel.py     |  18 +-
 .../ai/tests/unit/common/ai/policies/test_retry.py |  45 +-
 .../tests/unit/common/ai/toolsets/test_skills.py   |  17 +
 .../providers/discord/hooks/discord_webhook.py     |   2 +-
 .../unit/discord/hooks/test_discord_webhook.py     |   2 +-
 .../providers/edge3/plugins/www/package.json       |  26 +-
 .../providers/edge3/plugins/www/pnpm-lock.yaml     | 815 ++++++++++---------
 .../providers/elasticsearch/log/es_task_handler.py |   5 +-
 .../unit/elasticsearch/log/test_es_task_handler.py |   3 +
 .../fab/src/airflow/providers/fab/www/package.json |   2 +-
 .../src/airflow/providers/fab/www/pnpm-lock.yaml   |  10 +-
 providers/google/docs/operators/cloud/dataproc.rst |  13 +
 .../google/docs/operators/cloud/functions.rst      |  26 +
 .../google/docs/operators/cloud/vertex_ai.rst      |   5 +
 .../providers/google/cloud/hooks/dataprep.py       |  16 +-
 .../google/cloud/hooks/vertex_ai/feature_store.py  |  31 +-
 .../google/cloud/log/cloud_logging_task_handler.py |   5 +-
 .../providers/google/cloud/log/gcs_task_handler.py |   4 +-
 .../providers/google/cloud/operators/bigquery.py   |   6 +-
 .../providers/google/cloud/operators/dataflow.py   |  37 +-
 .../providers/google/cloud/operators/dataproc.py   |  52 +-
 .../providers/google/cloud/operators/functions.py  |   2 +-
 .../google/cloud/operators/kubernetes_engine.py    |  26 +-
 .../cloud/operators/vertex_ai/feature_store.py     |  17 +-
 .../google/cloud/transfers/bigquery_to_gcs.py      |  13 +
 .../google/cloud/transfers/gcs_to_bigquery.py      |  44 +-
 .../providers/google/cloud/triggers/dataflow.py    | 101 ++-
 .../google/cloud/triggers/kubernetes_engine.py     |   3 +-
 .../providers/google/common/hooks/base_google.py   |   3 +-
 .../bigquery/example_bigquery_queries_async.py     |  54 +-
 .../cloud/dataproc/example_dataproc_batch.py       |  22 +
 .../kubernetes_engine/example_kubernetes_engine.py |   2 +-
 .../example_kubernetes_engine_async.py             |   5 +-
 .../example_kubernetes_engine_job.py               |   5 +-
 .../example_kubernetes_engine_kueue.py             |   2 +-
 .../example_kubernetes_engine_ray.py               |   6 -
 .../example_kubernetes_engine_resource.py          |   5 +-
 .../vertex_ai/example_vertex_ai_feature_store.py   |  36 +-
 .../tests/unit/google/cloud/hooks/test_dataprep.py |  31 +
 .../cloud/hooks/vertex_ai/test_feature_store.py    |  40 +-
 .../cloud/log/test_cloud_logging_task_handler.py   |   5 +
 .../unit/google/cloud/operators/test_bigquery.py   |  12 +
 .../unit/google/cloud/operators/test_dataflow.py   | 116 +++
 .../unit/google/cloud/operators/test_dataproc.py   | 170 ++++
 .../cloud/operators/test_kubernetes_engine.py      |  98 ++-
 .../google/cloud/transfers/test_bigquery_to_gcs.py |  53 ++
 .../google/cloud/transfers/test_gcs_to_bigquery.py | 124 +++
 .../unit/google/cloud/triggers/test_dataflow.py    | 224 +++++-
 .../cloud/triggers/test_kubernetes_engine.py       |  20 +-
 .../unit/google/common/hooks/test_base_google.py   |  16 +
 .../microsoft/azure/log/wasb_task_handler.py       |   2 +-
 providers/openai/README.rst                        |   2 +-
 providers/openai/docs/index.rst                    |   2 +-
 providers/openai/pyproject.toml                    |   2 +-
 .../unit/openlineage/plugins/test_execution.py     |   9 +-
 .../providers/opensearch/log/os_task_handler.py    |   5 +-
 .../unit/opensearch/log/test_os_task_handler.py    |   3 +
 providers/sftp/tests/unit/sftp/hooks/test_sftp.py  |   4 +
 providers/snowflake/docs/connections/snowflake.rst |   5 +-
 ...snowflake_cortex_agent.rst => cortex_agent.rst} |   8 +-
 .../snowflake/docs/redirects.txt                   |   2 +-
 providers/snowflake/provider.yaml                  |  12 +-
 .../providers/snowflake/get_provider_info.py       |  12 +-
 .../airflow/providers/snowflake/hooks/__init__.py  |  19 +
 .../{snowflake_cortex_agent.py => cortex_agent.py} |   0
 .../airflow/providers/snowflake/hooks/snowflake.py |  35 +-
 .../hooks/{snowflake_sql_api.py => sql_api.py}     |   0
 .../providers/snowflake/operators/__init__.py      |  14 +
 .../{snowflake_cortex_agent.py => cortex_agent.py} |   2 +-
 .../providers/snowflake/operators/snowflake.py     |   2 +-
 .../snowflake/triggers/snowflake_trigger.py        |   2 +-
 .../providers/snowflake/utils/openlineage.py       |   4 +-
 .../snowflake/example_snowflake_cortex_agent.py    |   4 +-
 ...wflake_cortex_agent.py => test_cortex_agent.py} |  27 +-
 .../tests/unit/snowflake/hooks/test_snowflake.py   | 126 +++
 .../{test_snowflake_sql_api.py => test_sql_api.py} |   4 +-
 ...wflake_cortex_agent.py => test_cortex_agent.py} |   4 +-
 .../unit/snowflake/operators/test_snowflake.py     |  14 +-
 .../{test_snowflake_sql.py => test_sql.py}         |   0
 .../unit/snowflake/triggers/test_snowflake.py      |   8 +-
 .../tests/unit/snowflake/utils/test_openlineage.py |  14 +-
 pyproject.toml                                     |  31 +-
 registry/package.json                              |   2 +-
 registry/pnpm-lock.yaml                            |  10 +-
 scripts/ci/testing/summarize_captured_warnings.py  |   2 +-
 .../logging/src/airflow_shared/logging/remote.py   |  16 +-
 .../secrets_masker/secrets_masker.py               |  17 +-
 .../tests/secrets_masker/test_secrets_masker.py    |  49 +-
 task-sdk/docs/api.rst                              |   2 +
 task-sdk/docs/index.rst                            |   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             |  16 +-
 .../src/airflow/sdk/api/datamodels/_generated.py   |  14 +
 .../src/airflow/sdk/coordinators/_subprocess.py    |  41 +-
 .../src/airflow/sdk/definitions/_internal/loop.py  |  10 +-
 .../sdk/definitions/decorators/task_group.py       |   6 +-
 .../src/airflow/sdk/definitions/loop.py            |  20 +-
 task-sdk/src/airflow/sdk/execution_time/comms.py   |   2 +
 task-sdk/src/airflow/sdk/execution_time/loop.py    |  70 +-
 .../airflow/sdk/execution_time/schema/schema.json  |  49 ++
 .../execution_time/schema/versions/v2026_10_30.py  |  12 +-
 .../src/airflow/sdk/execution_time/supervisor.py   |  18 +
 .../src/airflow/sdk/execution_time/task_runner.py  |  11 +-
 task-sdk/tests/task_sdk/api/test_client.py         |  27 +
 .../tests/task_sdk/coordinators/test_subprocess.py | 179 ++++-
 .../tests/task_sdk/execution_time/test_loop.py     | 214 +++--
 .../task_sdk/execution_time/test_supervisor.py     |  92 ++-
 ts-sdk/pnpm-lock.yaml                              | 145 ++--
 ts-sdk/schema/supervisor-schema.json               |  49 ++
 ts-sdk/src/generated/supervisor.ts                 |  14 +
 uv.lock                                            |  40 +-
 357 files changed, 12584 insertions(+), 3019 deletions(-)
 create mode 100644 airflow-core/newsfragments/74837.bugfix.rst
 create mode 100644 airflow-core/newsfragments/74840.bugfix.rst
 copy 
airflow-core/src/airflow/migrations/versions/{0140_3_4_0_add_language_to_dag_code.py
 => 0147_3_4_0_add_commit_allows_update_to_connection_test.py} (60%)
 rename 
airflow-core/src/airflow/migrations/versions/{0147_3_5_0_add_session_id_to_job.py
 => 0148_3_5_0_add_session_id_to_job.py} (97%)
 create mode 100644 
airflow-core/src/airflow/ui/src/components/DataTable/DataTable.expanding.test.tsx
 copy airflow-core/src/airflow/ui/src/{layouts/Details/Grid/DurationTick.tsx => 
components/LoopDecisionReason.tsx} (67%)
 create mode 100644 
airflow-core/src/airflow/ui/src/layouts/Details/MapIndexSwitcherButton.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/layouts/Details/SearchMapIndexes.test.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/layouts/Details/SearchMapIndexes.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/layouts/Nav/DagsButton.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/layouts/Nav/DagsButton.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/layouts/Nav/NavMenu.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/layouts/Nav/NavMenu.tsx
 copy airflow-core/src/airflow/ui/src/{utils/isOneOf.test.ts => 
pages/DagsList/DagsListColumns.test.tsx} (63%)
 create mode 100644 
airflow-core/src/airflow/ui/src/pages/GroupTaskInstance/useLoopOutcomeStats.test.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/pages/Run/CallbackLogs.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/pages/Run/CallbackLogs.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/pages/Run/Callbacks.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/pages/Run/Callbacks.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/pages/Run/Run.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/queries/useDags.test.tsx
 create mode 100644 airflow-core/src/airflow/utils/log/path_log_reader.py
 create mode 100644 airflow-core/tests/unit/utils/log/test_path_log_reader.py
 create mode 100644 
providers/amazon/src/airflow/providers/amazon/aws/sensors/athena_spark.py
 create mode 100644 
providers/amazon/tests/unit/amazon/aws/sensors/test_athena_spark.py
 create mode 100644 
providers/celery/tests/unit/celery/executors/test_default_celery.py
 create mode 100644 providers/common/ai/docs/toolsets/custom.rst
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/durable/openai_agents.py
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_custom_toolset.py
 copy 
providers/common/ai/src/airflow/providers/common/ai/example_dags/{example_openai_agents_agent.py
 => example_openai_agents_durable.py} (66%)
 create mode 100644 
providers/common/ai/tests/unit/common/ai/durable/test_openai_agents.py
 rename providers/snowflake/docs/operators/{snowflake_cortex_agent.rst => 
cortex_agent.rst} (91%)
 copy airflow-core/src/airflow/py.typed => 
providers/snowflake/docs/redirects.txt (92%)
 rename 
providers/snowflake/src/airflow/providers/snowflake/hooks/{snowflake_cortex_agent.py
 => cortex_agent.py} (100%)
 rename 
providers/snowflake/src/airflow/providers/snowflake/hooks/{snowflake_sql_api.py 
=> sql_api.py} (100%)
 rename 
providers/snowflake/src/airflow/providers/snowflake/operators/{snowflake_cortex_agent.py
 => cortex_agent.py} (99%)
 rename 
providers/snowflake/tests/unit/snowflake/hooks/{test_snowflake_cortex_agent.py 
=> test_cortex_agent.py} (97%)
 rename 
providers/snowflake/tests/unit/snowflake/hooks/{test_snowflake_sql_api.py => 
test_sql_api.py} (99%)
 rename 
providers/snowflake/tests/unit/snowflake/operators/{test_snowflake_cortex_agent.py
 => test_cortex_agent.py} (98%)
 rename 
providers/snowflake/tests/unit/snowflake/operators/{test_snowflake_sql.py => 
test_sql.py} (100%)
 copy airflow-core/tests/unit/task/conftest.py => 
task-sdk/src/airflow/sdk/definitions/loop.py (66%)

Reply via email to