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

ephraimbuddy pushed a change to branch dag-processor-source-consistency
in repository https://gitbox.apache.org/repos/asf/airflow.git


 discard 49ece412170 Clarify bundle refresh compatibility and simplify its 
regression test
 discard 711853c7036 Keep Git bundles importable on Airflow 3.4
 discard 8ad19caf8c4 Keep Dag parsing responsive during bundle refresh failures
 discard 321d83ff277 Make the bundle refresh regression test independent of 
uptime
 discard 77e805b0a98 Avoid parsing stalls while a bundle refresh waits for 
imports
 discard 910f8408714 Keep Dag parsing results aligned with refreshed bundle 
sources
     add 2fc4238b326 Add missing zh-TW translations for Dag version path 
tooltips (#75450)
     add 2846242adad Show states of task groups as stacked cards in Grid view 
(#75442)
     add a5160a97038 Remove the gap above docs pages left from the old site 
banner (#75485)
     add 99bdeabe3db Show the filtered task count in the Dag Tasks tab heading 
(#75448)
     add a0be43d3b00 Link task instances of task loops to their own page 
(#75458)
     add d41a7c8e400 Bump sphinx-airflow-theme to 0.3.16 to align the docs' On 
this page list (#75491)
     add 6570b8282f2 Skip S3 keys that map to the local sync directory (#74322)
     add d12021da679 Allow ECS exit codes to fail tasks without retrying 
(#73885)
     add d613e999dee Limit the CLI reference's page contents to top-level 
commands (#75483)
     add d81ba9c7f4e Complete German UI translations (#75301)
     add b43705cccee Decide min_one_success trigger rules per index in mapped 
task groups (#75417)
     add e14449953fd Fix deferral paths in task lifecycle diagram (#75428)
     add a7066062a13 Fix pulling `AgentOperator` output for list, marker and 
function types (#74729)
     add 7e02d460c8a Bump swagger-ui-dist from 5.33.3 to 5.34.0 in /registry 
(#75509)
     add 89e5d07a07e Bump typescript-eslint in /ts-sdk in the 
ts-sdk-package-updates group (#75512)
     add 46348732ca3 Bump @tanstack/react-query from 5.104.3 to 5.104.4 in 
/airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui (#75505)
     add b9c657b3bcd Make Dags sidebar button a link and move Dag Runs and Task 
Instances to Browse (#75422)
     add 1159db91258 Deprecate deferrable implying wait in no-wait-default AWS 
operators (#75361)
     add a9ba9b1791f Deprecate deferrable overriding wait_for_completion in AWS 
operators (#75360)
     add 90efd88e2c1 Fix BedrockBatchInferenceSensor sharing success states 
across tasks (#75265)
     add 8aa1cf26ea3 Let each team's KubernetesExecutor connect to its own 
cluster (#75251)
     add 9ef5f3d463f Add XCom read access to deadline callbacks run by 
executors (#74779)
     add 34c72c5e53a Allow excluding datasets from OpenLineage events by 
pattern and hook (#71312)
     add e9a89e25eb0 Fix Common AI's AI Model tab for tasks inside a task loop 
(#75518)
     add 5d1c1d42328 Load Common AI plugin tabs when the browser reaches 
Airflow on another origin (#75522)
     add 57a4751c967 Add an LLM task loop example that stops on a dollar or 
token budget (#75516)
     add 4639f244f84 Remove info tooltip from Dag version comparison (#75526)
     add 602e150aace Allow building docs with a local sphinx_airflow_theme 
checkout (#75001)
     add 829759749df Add missing German Dag trigger translations (#75519)
     add e025c334a56 Allow jason810496 to publish docs to S3 (#75548)
     add a5af91d2c52 Enable auto-merge, gated on a dedicated CI passed check 
(#75142)
     add 9761167313d Go SDK: stop log attributes from displacing standard log 
fields (#73820)
     add 55632723532 Fix KubernetesJobOperator dry_run printing a Pod instead 
of a Job (#75403)
     add f6c19bd1293 Prevent Dag processor crashes with Google Cloud Logging 
when its log directory is outside `base_log_folder` (#74926)
     add 3ce8be439e8 Add the fork CI gate to ci-amd.yml (#74819)
     add 164a812559d Run fork pushes with pull-request selective checks (#74820)
     add bad9f9c83b5 Add the fork CI reconciler and its scheduled monitor 
(#74822)
     add ce044584888 Add breeze ci audit for the fork CI setup (#74823)
     add 7b5fc4b7068 Reset Dag autoregistration state when a Python Dag file 
fails to load (#74911)
     add b9ae12ac432 Add asset ID filtering to database cleanup (#74498)
     add 976c1d08f21 Fix scheduler crash when retrying a task that timed out or 
was killed externally (#75472)
     add 52983d2d5e4 Update providers metadata 2026-10-24 (#75580)
     add ad3ecb8c1ab Fix serialization of datetimes with a fixed UTC offset 
(#74922)
     add bfc288222a3 Document fork CI for contributors and maintainers (#74825)
     add 1b9a32b5283 Do not fail CI passed for a cancelled duplicate CI run 
(#75578)
     add 8e3a9113290 Keep Breeze unit tests independent of the CI repository 
(#75587)
     add daa2a86fdbd Delete the project CI runs that only gate a pull request 
to fork CI (#75588)
     add 0c1fa8eeb72 Keep a Breeze test's --dry-run from leaking into later 
tests (#75589)
     add fd52d8703fb Commit pre-release constraints onto the shared 
constraints-X-Y branch (#75329)
     add da4fafc5ca2 UI: Fix visual and console-error bugs in Dag list and 
details (#75418)
     add ea661e93307 Fix Go SDK install command breaking the first bundle build 
(#75574)
     add f5329a6c804 Cover YAML-generated TypeScript Dags in the ts_sdk e2e 
test (#75054)
     add a1976c57411 Cancel the BigQuery job when BigQueryToBigQueryOperator is 
killed (#75101)
     add 8b2ef80dcde Fix "Dynamic require" error for CommonJS packages in 
airflow-ts-pack (#75067)
     add 054d093651d TS SDK: Reject a blank queue in Dag and task specs (#75573)
     add b5bc253fc2d Run maintainer and canary CI on self-hosted RunsOn runners 
(#74889)
     add 320a469429c Refresh the Magpie reconciliation stamp (#75606)
     add 06771a97969 Let the fork CI monitor gate pull requests and stop 
repeating Slack alerts (#75611)
     add 05f55513e99 Stop the cdxgen server containers when SBOM generation 
ends (#75613)
     add 757898c95e5 Check newsfragment PR numbers in static checks instead of 
a separate workflow (#75612)
     add 4386cb1f89e Report EC2 Spot interruptions on pull requests and keep 
them out of Slack (#75615)
     add 2f7a7ea4be9 Show each fork CI job's status on gated pull requests 
(#75616)
     add e5f2c87a3ab Cancel the workflow runs of pull requests that have 
already merged (#75619)
     add 352ca600361 Fix API client errors losing detail behind a reverse proxy 
(#75493)
     add e9904306f1a Stop airflowctl from failing on fields added by newer API 
servers (#75610)
     add 47296ef5892 Run only the component's tests on chart and airflow-ctl 
release branches (#75621)
     add 2a3ee7ffe25 Auto-approve cheap CI runs of external contributors' PRs 
(#75455)
     add 1d7959a624f Detect when enhanced Power BI refreshes finish or fail 
(#74600)
     add 365692aac59 Run the database test jobs on RunsOn with docker in RAM 
(#75625)
     add 77fe4132770 Fetch provider release tags from apache/airflow in fork CI 
runs (#75632)
     add 9cdb49017ec Run the component branch selection tests against main on 
every branch (#75633)
     add 8bdb287f7ee Build no images on the airflow-ctl release branches 
(#75628)
     add 6e990ea1927 Make common.ai hooks report misconfiguration instead of 
failing silently (#74451)
     add c3e00461d06 Make LoggingToolset private and update Experimental notes 
in common.ai (#74694)
     add 0d527b72265 Fix Go SDK build on 32-bit targets (#75551)
     add 4138878208c Use EXISTS instead of a fan-out join in asset orphanage 
(#75404)
     add 0df550012b1 Clear retry policy state when a TI is cleared (#73889)
     add 6b264738614 Add High Obtainability (HO) mode support to Dataproc 
operators (#74753)
     add 840d3a41c63 Return 5xx on database deadlock when updating task state 
(#75368)
     add a15d3527df1 Require a selection before responding to a multiple-choice 
HITL request (#75643)
     add 77da6dac565 Stop a commented executable_resumable from marking a 
module durable (#73607)
     add be274194a97 Normalize zh-TW plural forms and wording (#75504)
     add eb7a35984ee Propagate OpenLineage parent and root job types to 
triggered Dags (#75303)
     add a57b1e6e241 Fix task loop information and tests for OpenLineage 
provider (#74752)
     add 8dde17bf52a Update zh-TW plural form guidance for translators (#75669)
     add 437daf6eddc Approve fork CI runs that started before "use fork ci" was 
added (#75654)
     add 8aa6762c697 Keep Dag parsing results aligned with refreshed bundle 
sources
     add af280f2063c Avoid parsing stalls while a bundle refresh waits for 
imports
     add d15ccc72bd7 Make the bundle refresh regression test independent of 
uptime
     add a739722f10d Keep Dag parsing responsive during bundle refresh failures
     add cd8c3be6bad Keep Git bundles importable on Airflow 3.4
     add 9e9ecf2098f Clarify bundle refresh compatibility and simplify its 
regression test

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (49ece412170)
            \
             N -- N -- N   refs/heads/dag-processor-source-consistency 
(9e9ecf2098f)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../skills/airflow-translations/locales/zh-TW.md   |   33 +-
 .apache-magpie.lock                                |   43 +-
 .asf.yaml                                          |   64 +-
 .github/AGENTS.md                                  |   38 +
 .github/actions/breeze/action.yml                  |    2 +
 .../actions/prepare_breeze_and_image/action.yml    |    5 +-
 .github/actions/prepare_single_ci_image/action.yml |    5 +-
 .../actions/runs-on-cost-summary/action.yml        |   32 +-
 .github/actions/stash-restore/action.yml           |  137 +
 .github/actions/stash-save/action.yml              |  129 +
 .github/fork-ci-gate.toml                          |   52 +
 .github/workflows/additional-ci-image-checks.yml   |    2 +-
 .github/workflows/additional-prod-image-tests.yml  |   80 +-
 .github/workflows/auto-approve-workflow-runs.yml   |   68 +
 .github/workflows/basic-tests.yml                  |   41 +-
 .github/workflows/check-newsfragment-pr-number.yml |   60 -
 .github/workflows/ci-amd.yml                       |  364 +-
 .github/workflows/ci-arm.yml                       |  249 +-
 .github/workflows/ci-image-build.yml               |   36 +-
 .github/workflows/ci-image-checks.yml              |   14 +-
 .github/workflows/finalize-tests.yml               |    6 +-
 .github/workflows/fork-ci-monitor.yml              |  235 ++
 .github/workflows/generate-constraints.yml         |    6 +-
 .github/workflows/helm-tests.yml                   |    4 +-
 .github/workflows/integration-system-tests.yml     |    6 +-
 .github/workflows/k8s-tests.yml                    |    4 +-
 .github/workflows/kustomize-overlays-tests.yml     |    2 +-
 .github/workflows/prod-image-build.yml             |    8 +-
 .github/workflows/publish-docs-to-s3.yml           |    1 +
 .github/workflows/push-image-cache.yml             |    4 +-
 .github/workflows/release-constraints.yml          |   46 +-
 .../scheduled-legacy-prod-image-canary.yml         |    1 +
 .github/workflows/special-tests.yml                |   26 +-
 .github/workflows/spot-interruption-notice.yml     |   57 +
 .github/workflows/test-providers.yml               |    6 +-
 .github/workflows/ui-e2e-tests.yml                 |    2 +-
 .pre-commit-config.yaml                            |   17 +
 README.md                                          |    2 +
 .../authoring-and-scheduling/language-sdks/go.rst  |    2 +-
 .../language-sdks/typescript.rst                   |    2 +-
 .../docs/authoring-and-scheduling/loops.rst        |   10 +-
 airflow-core/docs/cli-and-env-variables-ref.rst    |    3 +
 airflow-core/docs/howto/deadline-alerts.rst        |    3 +
 airflow-core/docs/howto/usage-cli.rst              |    9 +
 .../docs/img/diagram_task_lifecycle.md5sum         |    2 +-
 airflow-core/docs/img/diagram_task_lifecycle.png   |  Bin 671852 -> 643516 
bytes
 airflow-core/docs/img/diagram_task_lifecycle.py    |   18 +-
 airflow-core/newsfragments/75493.bugfix.rst        |    1 +
 .../auth/managers/simple/ui/package.json           |    2 +-
 .../auth/managers/simple/ui/pnpm-lock.yaml         |   30 +-
 .../api_fastapi/core_api/datamodels/assets.py      |    8 +-
 .../api_fastapi/core_api/datamodels/config.py      |    8 +-
 .../core_api/datamodels/task_instance_history.py   |    4 +-
 .../core_api/datamodels/task_instances.py          |    2 +-
 .../api_fastapi/core_api/openapi/_private_ui.yaml  |    9 +-
 .../core_api/openapi/v2-rest-api-generated.yaml    |   18 +-
 .../execution_api/routes/task_instances.py         |   10 +-
 .../airflow/callbacks/database_callback_sink.py    |   14 +-
 airflow-core/src/airflow/cli/cli_config.py         |    7 +
 .../src/airflow/cli/commands/db_command.py         |    1 +
 .../src/airflow/executors/base_executor.py         |    2 +
 .../src/airflow/jobs/scheduler_job_runner.py       |   49 +-
 airflow-core/src/airflow/models/dagrun.py          |    5 +
 airflow-core/src/airflow/models/taskinstance.py    |   37 +-
 .../src/airflow/ti_deps/deps/trigger_rule_dep.py   |   32 +-
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts |   11 +-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |    4 +-
 .../airflow/ui/public/i18n/locales/ar/common.json  |    1 -
 .../ui/public/i18n/locales/ar/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/ca/common.json  |    1 -
 .../ui/public/i18n/locales/ca/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/ca/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/de/admin.json   |    4 +-
 .../airflow/ui/public/i18n/locales/de/common.json  |    9 +-
 .../ui/public/i18n/locales/de/components.json      |   13 +
 .../src/airflow/ui/public/i18n/locales/de/dag.json |   18 +-
 .../airflow/ui/public/i18n/locales/de/dags.json    |    2 +-
 .../airflow/ui/public/i18n/locales/el/common.json  |    1 -
 .../ui/public/i18n/locales/el/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/el/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/en/common.json  |    1 -
 .../ui/public/i18n/locales/en/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/en/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/en/hitl.json    |    1 +
 .../airflow/ui/public/i18n/locales/es/common.json  |    1 -
 .../ui/public/i18n/locales/es/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/fr/common.json  |    1 -
 .../ui/public/i18n/locales/fr/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/fr/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/he/common.json  |    1 -
 .../ui/public/i18n/locales/he/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/he/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/hi/common.json  |    1 -
 .../ui/public/i18n/locales/hi/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/hi/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/hu/common.json  |    1 -
 .../ui/public/i18n/locales/hu/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/it/common.json  |    1 -
 .../ui/public/i18n/locales/it/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/ja/common.json  |    1 -
 .../ui/public/i18n/locales/ja/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/ko/common.json  |    1 -
 .../ui/public/i18n/locales/ko/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/ko/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/nl/common.json  |    1 -
 .../ui/public/i18n/locales/nl/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/pl/common.json  |    1 -
 .../ui/public/i18n/locales/pl/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/pl/dag.json |    2 -
 .../airflow/ui/public/i18n/locales/pt/common.json  |    1 -
 .../ui/public/i18n/locales/pt/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/ru/common.json  |    1 -
 .../ui/public/i18n/locales/ru/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/th/common.json  |    1 -
 .../ui/public/i18n/locales/th/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/tr/common.json  |    1 -
 .../ui/public/i18n/locales/tr/components.json      |    7 +
 .../ui/public/i18n/locales/zh-CN/common.json       |    1 -
 .../ui/public/i18n/locales/zh-CN/components.json   |    7 +
 .../ui/public/i18n/locales/zh-TW/common.json       |    7 +-
 .../ui/public/i18n/locales/zh-TW/components.json   |    9 +-
 .../airflow/ui/public/i18n/locales/zh-TW/dag.json  |   16 +-
 .../ui/public/i18n/locales/zh-TW/dashboard.json    |    4 +-
 .../airflow/ui/public/i18n/locales/zh-TW/hitl.json |    5 +-
 .../ui/src/components/DAGWarningsModal.test.tsx    |   33 -
 .../airflow/ui/src/components/DAGWarningsModal.tsx |   62 +-
 .../ui/src/components/DagDeactivatedChip.test.tsx  |  154 -
 .../ui/src/components/DagDeactivatedChip.tsx       |   70 -
 ...ortErrorModal.tsx => DagImportErrorDetails.tsx} |   20 +-
 .../ui/src/components/DagImportErrorModal.tsx      |   52 +-
 .../ui/src/components/DagStatusChip.test.tsx       |  161 +
 .../airflow/ui/src/components/DagStatusChip.tsx    |   90 +
 .../ui/src/components/DataTable/DataTable.tsx      |    1 +
 .../src/airflow/ui/src/components/ErrorAlert.tsx   |   15 +-
 .../ui/src/components/FilterBar/FilterBar.test.tsx |   15 +
 .../ui/src/components/FilterBar/FilterPill.tsx     |   29 +-
 .../airflow/ui/src/components/StatusMessage.tsx    |   52 +
 .../src/airflow/ui/src/components/WarningAlert.tsx |   28 +-
 .../ui/src/hooks/useRequiredActionTabs.test.tsx    |   66 +
 .../airflow/ui/src/hooks/useRequiredActionTabs.ts  |   31 +-
 .../ui/src/layouts/Details/DetailsLayout.tsx       |   46 +-
 .../ui/src/layouts/Details/Gantt/utils.test.ts     |   18 +-
 .../airflow/ui/src/layouts/Details/Gantt/utils.ts  |   13 +-
 .../ui/src/layouts/Details/Grid/GridTI.test.tsx    |   25 +
 .../airflow/ui/src/layouts/Details/Grid/GridTI.tsx |    9 +-
 .../ui/src/layouts/Nav/BrowseButton.test.tsx       |   83 +
 .../airflow/ui/src/layouts/Nav/BrowseButton.tsx    |   32 +-
 .../airflow/ui/src/layouts/Nav/DagsButton.test.tsx |   54 +-
 .../src/airflow/ui/src/layouts/Nav/DagsButton.tsx  |   41 +-
 .../ui/src/pages/AssetsList/AssetsList.test.tsx    |   14 +-
 .../airflow/ui/src/pages/Dag/Tasks/Tasks.test.tsx  |    3 +
 .../src/airflow/ui/src/pages/Dag/Tasks/Tasks.tsx   |    2 +-
 .../ui/src/pages/Dag/Versions/VersionDiff.test.tsx |    8 -
 .../ui/src/pages/Dag/Versions/VersionDiff.tsx      |   22 +-
 .../src/airflow/ui/src/pages/DagsList/DagCard.tsx  |    8 +-
 .../DagsList/DagsFilters/DagsFilters.test.tsx      |    6 +-
 .../ui/src/pages/DagsList/RecentRuns.test.tsx      |   58 +
 .../airflow/ui/src/pages/DagsList/RecentRuns.tsx   |   10 +-
 .../HITLTaskInstances/HITLResponseForm.test.tsx    |   89 +
 .../pages/HITLTaskInstances/HITLResponseForm.tsx   |   33 +-
 .../src/airflow/ui/src/utils/dagStatus.test.ts     |   84 +
 airflow-core/src/airflow/ui/src/utils/dagStatus.ts |   75 +
 .../src/airflow/ui/src/utils/errorHandling.ts      |   23 +
 airflow-core/src/airflow/ui/src/utils/index.ts     |    3 +-
 airflow-core/src/airflow/ui/testsSetup.ts          |   29 +
 airflow-core/src/airflow/utils/db_cleanup.py       |   24 +-
 airflow-core/src/airflow/utils/sqlalchemy.py       |   17 +
 .../versions/head/test_task_instances.py           |   41 +-
 .../tests/unit/cli/commands/test_db_command.py     |   84 +
 airflow-core/tests/unit/jobs/test_scheduler_job.py |  176 +
 airflow-core/tests/unit/models/test_dagrun.py      |   41 +-
 .../tests/unit/models/test_mappedoperator.py       |   92 +-
 .../tests/unit/models/test_taskinstance.py         |   92 +
 airflow-core/tests/unit/utils/test_db_cleanup.py   |  178 +
 airflow-core/tests/unit/utils/test_sqlalchemy.py   |   60 +-
 airflow-ctl/docs/cli-and-env-variables-ref.rst     |    3 +
 airflow-ctl/src/airflowctl/api/client.py           |    4 +-
 .../src/airflowctl/api/datamodels/generated.py     |   28 +-
 airflow-ctl/src/airflowctl/api/operations.py       |   18 +-
 airflow-ctl/tests/airflow_ctl/api/test_client.py   |   63 +-
 .../tests/airflow_ctl/api/test_operations.py       |   63 +
 airflow-e2e-tests/docker/ts.yml                    |    6 +
 .../airflow_e2e_tests/openlineage_tests/README.md  |    3 +-
 .../airflow_e2e_tests/openlineage_tests/harness.py |    7 +-
 .../openlineage_tests/prepare_dags.py              |    3 +
 .../ts_sdk_tests/test_ts_sdk_dynamic_dag.py        |   89 +
 contributing-docs/03_contributors_quick_start.rst  |   13 +
 .../03a_contributors_quick_start_beginners.rst     |    5 +
 contributing-docs/05_pull_requests.rst             |   51 +-
 contributing-docs/10_working_with_git.rst          |    3 +
 contributing-docs/11_documentation_building.rst    |   11 +
 contributing-docs/18_contribution_workflow.rst     |   73 +-
 contributing-docs/25_maintainer_pr_triage.md       |   35 +
 dev/AGENTS.md                                      |   17 +
 dev/README_AIRFLOW3_DEV.md                         |   46 +
 dev/README_RELEASE_AIRFLOW.md                      |   19 +-
 dev/breeze/doc/08_ci_tasks.rst                     |   59 +
 ...0-run-ci-for-external-contributions-in-forks.md |  173 +
 dev/breeze/doc/ci/04_selective_checks.md           |  165 +-
 dev/breeze/doc/ci/05_workflows.md                  |  130 +
 dev/breeze/doc/ci/06_debugging.md                  |    6 +-
 .../doc/ci/08_fork_ci_for_external_contributors.md | 1131 +++++
 dev/breeze/doc/ci/README.md                        |    1 +
 dev/breeze/doc/images/output_build-docs.svg        |   52 +-
 dev/breeze/doc/images/output_build-docs.txt        |    2 +-
 dev/breeze/doc/images/output_ci.svg                |   46 +-
 dev/breeze/doc/images/output_ci.txt                |    2 +-
 .../doc/images/output_ci_approve-workflow-runs.svg |  142 +
 .../doc/images/output_ci_approve-workflow-runs.txt |    1 +
 dev/breeze/doc/images/output_ci_audit.svg          |  116 +
 dev/breeze/doc/images/output_ci_audit.txt          |    1 +
 .../doc/images/output_ci_fork-ci-reconcile.svg     |  148 +
 .../doc/images/output_ci_fork-ci-reconcile.txt     |    1 +
 .../output_setup_check-all-params-in-groups.svg    |   96 +-
 .../output_setup_check-all-params-in-groups.txt    |    2 +-
 .../output_setup_regenerate-command-images.svg     |  104 +-
 .../output_setup_regenerate-command-images.txt     |    2 +-
 .../src/airflow_breeze/commands/ci_commands.py     |  243 +-
 .../airflow_breeze/commands/ci_commands_config.py  |   40 +
 .../airflow_breeze/commands/developer_commands.py  |   27 +
 .../commands/developer_commands_config.py          |    1 +
 dev/breeze/src/airflow_breeze/global_constants.py  |   19 +
 .../src/airflow_breeze/params/shell_params.py      |    5 +
 dev/breeze/src/airflow_breeze/utils/cdxgen.py      |   74 +-
 dev/breeze/src/airflow_breeze/utils/ci_audit.py    |  403 ++
 .../airflow_breeze/utils/ci_minutes_estimate.py    |  226 +
 .../src/airflow_breeze/utils/fork_ci_gate.py       |  347 ++
 .../src/airflow_breeze/utils/fork_ci_github.py     |  197 +
 .../src/airflow_breeze/utils/fork_ci_messages.py   |  297 ++
 .../src/airflow_breeze/utils/fork_ci_reconcile.py  | 1580 +++++++
 .../src/airflow_breeze/utils/fork_compare.py       |  151 +
 dev/breeze/src/airflow_breeze/utils/git_remotes.py |   79 +
 .../utils/merged_pull_request_runs.py              |  211 +
 dev/breeze/src/airflow_breeze/utils/path_utils.py  |    3 +
 .../src/airflow_breeze/utils/selective_checks.py   |  352 +-
 .../src/airflow_breeze/utils/verification_plan.py  |    2 +
 .../airflow_breeze/utils/workflow_run_approval.py  |  788 ++++
 dev/breeze/tests/conftest.py                       |   15 +
 .../tests/test_calibrate_ci_minutes_estimates.py   |  101 +
 dev/breeze/tests/test_cdxgen.py                    |   73 +
 dev/breeze/tests/test_ci_audit.py                  |  440 ++
 dev/breeze/tests/test_ci_commands.py               |   52 +
 dev/breeze/tests/test_ci_minutes_estimate.py       |  229 +
 dev/breeze/tests/test_developer_commands.py        |   96 +-
 dev/breeze/tests/test_fork_ci_gate.py              |  438 ++
 dev/breeze/tests/test_fork_ci_github.py            |  189 +
 dev/breeze/tests/test_fork_ci_messages.py          |  163 +
 dev/breeze/tests/test_fork_ci_reconcile.py         | 2115 ++++++++++
 dev/breeze/tests/test_fork_compare.py              |  134 +
 dev/breeze/tests/test_git_remotes.py               |  103 +
 dev/breeze/tests/test_merged_pull_request_runs.py  |  266 ++
 dev/breeze/tests/test_selective_checks.py          |  821 ++++
 dev/breeze/tests/test_shell_params.py              |   14 +
 dev/breeze/tests/test_workflow_run_approval.py     | 1041 +++++
 dev/calibrate_ci_minutes_estimates.py              |  270 ++
 dev/registry/extract_parameters.py                 |   12 +-
 dev/registry/tests/test_extract_parameters.py      |   97 +
 .../tests/test_registry_contract_models.py         |   10 +-
 devel-common/pyproject.toml                        |    2 +-
 devel-common/sphinx_design/static/custom.css       |   12 +-
 docs/README.md                                     |    4 +-
 docs/spelling_wordlist.txt                         |    4 +
 generated/provider_metadata.json                   |  140 +-
 go-sdk/README.md                                   |    2 +-
 go-sdk/cmd/airflow-go-pack/sources.go              |    2 +-
 go-sdk/internal/bundlefooter/footer.go             |    5 +-
 go-sdk/pkg/execution/client.go                     |    7 +-
 go-sdk/pkg/execution/client_test.go                |   17 +-
 go-sdk/pkg/execution/frames.go                     |   16 +-
 go-sdk/pkg/execution/frames_oversized_test.go      |    4 +-
 go-sdk/pkg/execution/frames_test.go                |   14 +
 go-sdk/pkg/execution/logger.go                     |   36 +-
 go-sdk/pkg/execution/logger_test.go                |   38 +
 providers/amazon/docs/operators/ecs.rst            |   36 +
 .../src/airflow/providers/amazon/aws/hooks/s3.py   |    4 +-
 .../providers/amazon/aws/operators/batch.py        |    5 +-
 .../providers/amazon/aws/operators/bedrock.py      |   50 +-
 .../airflow/providers/amazon/aws/operators/ecs.py  |   57 +-
 .../airflow/providers/amazon/aws/operators/eks.py  |   68 +-
 .../airflow/providers/amazon/aws/operators/emr.py  |   78 +-
 .../airflow/providers/amazon/aws/operators/glue.py |   19 +-
 .../providers/amazon/aws/operators/glue_crawler.py |   11 +-
 .../amazon/aws/operators/glue_databrew.py          |    8 +-
 .../amazon/aws/operators/kinesis_analytics.py      |   15 +-
 .../amazon/aws/operators/lambda_function.py        |    7 +-
 .../airflow/providers/amazon/aws/operators/mwaa.py |    8 +-
 .../providers/amazon/aws/operators/neptune.py      |   13 +-
 .../amazon/aws/operators/neptune_analytics.py      |   43 +-
 .../providers/amazon/aws/operators/quicksight.py   |    7 +-
 .../airflow/providers/amazon/aws/operators/rds.py  |   33 +-
 .../amazon/aws/operators/redshift_cluster.py       |   17 +-
 .../providers/amazon/aws/operators/sagemaker.py    |   19 +-
 .../aws/operators/sagemaker_unified_studio.py      |    7 +-
 .../operators/sagemaker_unified_studio_notebook.py |    8 +-
 .../airflow/providers/amazon/aws/operators/ssm.py  |    9 +-
 .../providers/amazon/aws/sensors/bedrock.py        |    4 +-
 .../tests/unit/amazon/aws/bundles/test_s3.py       |   18 +
 .../amazon/tests/unit/amazon/aws/hooks/test_s3.py  |   51 +
 .../tests/unit/amazon/aws/operators/test_batch.py  |   10 +-
 .../unit/amazon/aws/operators/test_bedrock.py      |   52 +-
 .../tests/unit/amazon/aws/operators/test_ecs.py    |   82 +-
 .../tests/unit/amazon/aws/operators/test_eks.py    |  111 +-
 .../amazon/aws/operators/test_emr_add_steps.py     |   51 +-
 .../amazon/aws/operators/test_emr_containers.py    |   11 +-
 .../amazon/aws/operators/test_emr_serverless.py    |   58 +-
 .../tests/unit/amazon/aws/operators/test_glue.py   |   39 +-
 .../unit/amazon/aws/operators/test_glue_crawler.py |   27 +-
 .../amazon/aws/operators/test_glue_databrew.py     |   16 +
 .../amazon/aws/operators/test_kinesis_analytics.py |   11 +-
 .../amazon/aws/operators/test_lambda_function.py   |   10 +-
 .../tests/unit/amazon/aws/operators/test_mwaa.py   |   11 +-
 .../unit/amazon/aws/operators/test_neptune.py      |   26 +-
 .../amazon/aws/operators/test_neptune_analytics.py |   65 +-
 .../unit/amazon/aws/operators/test_quicksight.py   |    6 +-
 .../tests/unit/amazon/aws/operators/test_rds.py    |   57 +-
 .../amazon/aws/operators/test_redshift_cluster.py  |   47 +-
 .../aws/operators/test_sagemaker_endpoint.py       |   11 +-
 .../aws/operators/test_sagemaker_pipeline.py       |   21 +-
 .../amazon/aws/operators/test_sagemaker_tuning.py  |   11 +-
 .../aws/operators/test_sagemaker_unified_studio.py |    9 +-
 .../test_sagemaker_unified_studio_notebook.py      |    9 +-
 .../tests/unit/amazon/aws/operators/test_ssm.py    |    6 +-
 .../tests/unit/amazon/aws/sensors/test_bedrock.py  |   12 +
 providers/cncf/kubernetes/docs/changelog.rst       |    6 +
 .../cncf/kubernetes/docs/kubernetes_executor.rst   |   44 +
 providers/cncf/kubernetes/provider.yaml            |   16 +-
 .../providers/cncf/kubernetes/cli/definition.py    |   35 +-
 .../cncf/kubernetes/cli/kubernetes_command.py      |   79 +-
 .../kubernetes/executors/kubernetes_executor.py    |   39 +-
 .../executors/kubernetes_executor_utils.py         |   19 +-
 .../providers/cncf/kubernetes/get_provider_info.py |    4 +-
 .../providers/cncf/kubernetes/kube_client.py       |   89 +-
 .../providers/cncf/kubernetes/operators/job.py     |   19 +-
 .../cncf/kubernetes/cli/test_kubernetes_command.py |  219 +-
 .../executors/test_kubernetes_executor.py          |  119 +-
 .../unit/cncf/kubernetes/operators/test_job.py     |   30 +
 .../unit/cncf/kubernetes/operators/test_pod.py     |    4 +-
 .../tests/unit/cncf/kubernetes/test_client.py      |   79 +
 .../tests/unit/cncf/kubernetes/test_kube_client.py |  124 +-
 providers/common/ai/docs/changelog.rst             |   67 +
 providers/common/ai/docs/connections/mcp.rst       |    3 +-
 .../ai/docs/connections/pydantic_ai_azure.rst      |   13 +-
 .../ai/docs/connections/pydantic_ai_vertex.rst     |   10 +-
 providers/common/ai/docs/examples.rst              |    4 +
 providers/common/ai/docs/frameworks/index.rst      |   14 +-
 providers/common/ai/docs/index.rst                 |    2 +-
 providers/common/ai/docs/operators/agent.rst       |   15 +-
 .../ai/docs/operators/llm_schema_compare.rst       |    6 +
 providers/common/ai/docs/operators/llm_sql.rst     |    4 +-
 providers/common/ai/docs/provider_fallback.rst     |   16 +-
 providers/common/ai/docs/sandbox/index.rst         |    2 +-
 providers/common/ai/docs/self_hosted_models.rst    |   10 +-
 providers/common/ai/docs/stability.rst             |   11 +-
 providers/common/ai/docs/structured_output.rst     |   48 +-
 providers/common/ai/docs/supported_services.rst    |    2 +-
 providers/common/ai/docs/toolsets/index.rst        |   18 +-
 providers/common/ai/docs/toolsets/logging.rst      |   35 +-
 providers/common/ai/docs/use_cases/index.rst       |    4 +
 .../use_cases/refine_a_draft_within_a_budget.rst   |  202 +
 providers/common/ai/provider.yaml                  |    2 +-
 .../ai/example_dags/example_agent_loop_budget.py   |  141 +
 .../ai/example_dags/example_llm_retry_policy.py    |    7 +-
 .../providers/common/ai/get_provider_info.py       |    2 +-
 .../airflow/providers/common/ai/hooks/langchain.py |   29 +-
 .../providers/common/ai/hooks/llamaindex.py        |   46 +-
 .../src/airflow/providers/common/ai/hooks/mcp.py   |   55 +-
 .../providers/common/ai/hooks/pydantic_ai.py       |   46 +-
 .../airflow/providers/common/ai/operators/agent.py |   63 +-
 .../common/ai/operators/llm_schema_compare.py      |    4 +-
 .../providers/common/ai/operators/llm_sql.py       |    4 +
 .../providers/common/ai/plugins/_plugin_urls.py    |   13 +-
 .../providers/common/ai/plugins/www/package.json   |    1 +
 .../providers/common/ai/plugins/www/pnpm-lock.yaml |  131 +-
 .../providers/common/ai/plugins/www/src/api.ts     |    7 +-
 .../ai/plugins/www/src/components/ChatPage.tsx     |    2 +-
 .../ai/plugins/www/src/components/ModelPanel.tsx   |   24 +-
 .../ai/plugins/www/src/hooks/useModelInfo.ts       |   44 +-
 .../common/ai/plugins/www/src/hooks/useSession.ts  |    3 +-
 .../providers/common/ai/plugins/www/src/main.tsx   |    9 +-
 .../common/ai/plugins/www/src/model-api.ts         |   17 +-
 .../providers/common/ai/plugins/www/src/model.tsx  |   38 +-
 .../providers/common/ai/plugins/www/src/region.ts  |   49 +
 .../common/ai/plugins/www/tests/main.test.mjs      |    2 +-
 .../common/ai/plugins/www/tests/model-api.test.ts  |   68 +
 .../common/ai/plugins/www/tests/model.test.mjs     |  121 +
 .../common/ai/plugins/www/tests/region.test.ts     |   45 +
 .../airflow/providers/common/ai/policies/retry.py  |    5 +-
 .../providers/common/ai/toolsets/__init__.py       |    2 -
 .../providers/common/ai/toolsets/logging.py        |   19 +-
 .../tests/unit/common/ai/hooks/test_langchain.py   |   74 +
 .../tests/unit/common/ai/hooks/test_llamaindex.py  |   84 +
 .../ai/tests/unit/common/ai/hooks/test_mcp.py      |  128 +
 .../tests/unit/common/ai/hooks/test_pydantic_ai.py |   71 +-
 .../tests/unit/common/ai/operators/test_agent.py   |  295 +-
 .../unit/common/ai/plugins/test__plugin_urls.py    |   22 +-
 .../ai/tests/unit/common/ai/policies/test_retry.py |   65 +-
 .../tests/unit/common/ai/test_provider_metadata.py |    9 +-
 .../tests/unit/common/ai/toolsets/test_logging.py  |    6 +-
 .../tests/unit/dbt/cloud/utils/test_openlineage.py |    4 +-
 providers/google/README.rst                        |    2 +-
 providers/google/docs/index.rst                    |    2 +-
 providers/google/docs/operators/cloud/dataproc.rst |   51 +
 providers/google/pyproject.toml                    |    2 +-
 .../google/cloud/log/cloud_logging_task_handler.py |   10 +-
 .../google/cloud/transfers/bigquery_to_bigquery.py |   22 +-
 .../example_dataproc_cluster_high_obtainability.py |  162 +
 .../cloud/log/test_cloud_logging_task_handler.py   |   16 +-
 .../unit/google/cloud/openlineage/test_mixins.py   |    3 +-
 .../unit/google/cloud/operators/test_dataproc.py   |   36 +-
 .../cloud/transfers/test_bigquery_to_bigquery.py   |   42 +
 .../providers/microsoft/azure/hooks/powerbi.py     |   58 +-
 .../providers/microsoft/azure/operators/powerbi.py |   17 +-
 .../unit/microsoft/azure/hooks/test_powerbi.py     |  191 +-
 .../unit/microsoft/azure/operators/test_powerbi.py |   95 +
 .../azure/resources/powerbi_completed_refresh.json |  122 +
 .../azure/resources/powerbi_completed_refresh.md   |   36 +
 .../unit/microsoft/azure/triggers/test_powerbi.py  |   94 +
 providers/openlineage/docs/emission_policy.rst     |  147 +-
 providers/openlineage/docs/macros.rst              |   32 +
 .../airflow/providers/openlineage/api/datasets.py  |   11 +
 .../providers/openlineage/api/emission_policy.py   |   26 +-
 .../src/airflow/providers/openlineage/api/sql.py   |    4 +-
 .../providers/openlineage/extractors/manager.py    |   69 +-
 .../openlineage/facets/AirflowJobFacet.json        |   56 +-
 .../openlineage/facets/AirflowRunFacet.json        |  102 +
 .../providers/openlineage/plugins/adapter.py       |    5 +-
 .../providers/openlineage/plugins/listener.py      |   63 +-
 .../providers/openlineage/plugins/macros.py        |   50 +-
 .../providers/openlineage/plugins/openlineage.py   |    4 +
 .../providers/openlineage/utils/emission_policy.py |  312 +-
 .../openlineage/utils/sql_hook_lineage.py          |   20 +-
 .../airflow/providers/openlineage/utils/utils.py   |  400 +-
 .../example_openlineage_base_complex_dag.py        |    2 +
 ...ups_dag.py => example_openlineage_retry_dag.py} |   31 +-
 ...> example_openlineage_sensor_reschedule_dag.py} |   36 +-
 .../example_openlineage_task_groups_dag.py         |    2 +-
 .../example_openlineage_task_loop_dag.py           |  152 +
 .../example_openlineage_task_loop_groups_dag.py    |  104 +
 ...g.py => example_openlineage_task_states_dag.py} |   39 +-
 .../openlineage/example_openlineage_trigger_dag.py |    8 +-
 .../example_openlineage_trigger_dag_deferrable.py  |    2 +-
 .../system/openlineage/expected_events/__init__.py |    8 +
 .../openlineage_base_complex_dag__af2.json         |   14 +
 .../openlineage_base_complex_dag__af3.json         |   14 +
 .../openlineage_base_simple_dag__af2.json          |   36 +-
 .../openlineage_base_simple_dag__af3.json          |   36 +-
 .../openlineage_manual_lineage_dag.json            |  388 +-
 .../openlineage_policy_hook_lineage_dag.json       |   52 +
 .../expected_events/openlineage_retry_dag.json     |  227 +
 .../openlineage_retry_dag__af2.json                |  227 +
 .../openlineage_retry_dag__af3_0.json              |  227 +
 .../openlineage_sensor_reschedule_dag.json         |  121 +
 .../openlineage_sensor_reschedule_dag__af2.json    |  121 +
 .../openlineage_sensor_reschedule_dag__af3_0.json  |  121 +
 .../openlineage_task_groups_dag.json               |    4 +
 .../expected_events/openlineage_task_loop_dag.json | 4406 ++++++++++++++++++++
 .../openlineage_task_loop_groups_dag.json          | 2237 ++++++++++
 .../openlineage_task_states_dag.json               |  250 ++
 .../openlineage_task_states_dag__af3_0.json        |  155 +
 .../expected_events/openlineage_trigger_dag.json   |  132 +-
 .../openlineage_trigger_dag__af3_3_plus.json       |  132 +-
 .../openlineage_trigger_dag_deferrable.json        |  228 +-
 ...lineage_trigger_dag_deferrable__af3_3_plus.json |  228 +-
 .../openlineage_trigger_failed_dag.json            |   54 +-
 ...openlineage_trigger_failed_dag__af3_3_plus.json |   54 +-
 .../tests/system/openlineage/operator.py           |  229 +-
 .../tests/unit/openlineage/api/test_datasets.py    |   28 +
 .../unit/openlineage/api/test_emission_policy.py   |   29 +
 .../tests/unit/openlineage/api/test_sql.py         |   25 +-
 .../unit/openlineage/extractors/test_manager.py    |  167 +-
 .../unit/openlineage/plugins/test_listener.py      |  223 +-
 .../tests/unit/openlineage/plugins/test_macros.py  |   85 +
 .../test_system_tests_run_id_integrity.py          |  373 ++
 .../unit/openlineage/utils/test_emission_policy.py |  253 ++
 .../openlineage/utils/test_sql_hook_lineage.py     |   74 +
 .../tests/unit/openlineage/utils/test_utils.py     |  998 ++++-
 .../unit/snowflake/hooks/test_cortex_model.py      |   18 +-
 .../providers/standard/utils/openlineage.py        |   24 +-
 .../tests/unit/standard/utils/test_openlineage.py  |  153 +-
 registry/package.json                              |    2 +-
 registry/pnpm-lock.yaml                            |   10 +-
 scripts/ci/analyze_e2e_flaky_tests.py              |   19 +-
 .../mount-sphinx-airflow-theme.yml}                |   28 +-
 scripts/ci/make_mnt_writeable.sh                   |   21 +-
 scripts/ci/move_docker_to_mnt.sh                   |    7 +-
 scripts/ci/prek/check_ci_gate_needs.py             |   70 +
 scripts/ci/prek/check_ci_workflows_in_sync.py      |  167 +-
 scripts/ci/prek/check_fork_ci_gate_config.py       |  149 +
 scripts/ci/prek/newsfragments.py                   |   69 +
 ...un_mypy_full_dist_local_venv_or_breeze_in_ci.py |    4 +-
 scripts/ci/spot_interruptions.py                   |  390 ++
 scripts/in_container/run_docs_build.sh             |    6 +
 .../in_container/run_provider_yaml_files_check.py  |    2 +-
 scripts/tests/ci/prek/test_check_ci_gate_needs.py  |   60 +
 .../ci/prek/test_check_fork_ci_gate_config.py      |  115 +
 scripts/tests/ci/prek/test_newsfragments.py        |  128 +-
 scripts/tests/ci/test_analyze_e2e_flaky_tests.py   |   16 +
 scripts/tests/ci/test_spot_interruptions.py        |  404 ++
 task-sdk/src/airflow/sdk/api/client.py             |   10 +-
 .../sdk/execution_time/callback_supervisor.py      |   50 +-
 .../src/airflow/sdk/execution_time/task_runner.py  |   16 +-
 .../src/airflow/sdk/importers/python_importer.py   |    8 +-
 .../src/airflow/sdk/serde/serializers/timezone.py  |    8 +-
 task-sdk/tests/task_sdk/api/test_client.py         |   29 +
 .../execution_time/test_callback_supervisor.py     |   66 +
 .../task_sdk/execution_time/test_task_runner.py    |   16 +
 .../task_sdk/importers/test_python_importer.py     |   37 +
 task-sdk/tests/task_sdk/serde/test_serializers.py  |   17 +-
 ts-sdk/example/package.json                        |    1 +
 ts-sdk/example/src/dynamic.ts                      |   51 +
 ts-sdk/example/src/main.ts                         |    8 +-
 ts-sdk/pnpm-lock.yaml                              |  137 +-
 ts-sdk/src/cli/pack.ts                             |    6 +
 ts-sdk/src/sdk/dag.ts                              |    9 +
 ts-sdk/tests/cli/pack.test.ts                      |   31 +
 ts-sdk/tests/sdk/dag.test.ts                       |   14 +
 uv.lock                                            |   16 +-
 517 files changed, 38549 insertions(+), 2854 deletions(-)
 create mode 100644 .github/AGENTS.md
 copy scripts/ci/make_mnt_writeable.sh => 
.github/actions/runs-on-cost-summary/action.yml (58%)
 mode change 100755 => 100644
 create mode 100644 .github/actions/stash-restore/action.yml
 create mode 100644 .github/actions/stash-save/action.yml
 create mode 100644 .github/fork-ci-gate.toml
 create mode 100644 .github/workflows/auto-approve-workflow-runs.yml
 delete mode 100644 .github/workflows/check-newsfragment-pr-number.yml
 create mode 100644 .github/workflows/fork-ci-monitor.yml
 create mode 100644 .github/workflows/spot-interruption-notice.yml
 create mode 100644 airflow-core/newsfragments/75493.bugfix.rst
 delete mode 100644 
airflow-core/src/airflow/ui/src/components/DAGWarningsModal.test.tsx
 delete mode 100644 
airflow-core/src/airflow/ui/src/components/DagDeactivatedChip.test.tsx
 delete mode 100644 
airflow-core/src/airflow/ui/src/components/DagDeactivatedChip.tsx
 copy airflow-core/src/airflow/ui/src/components/{DagImportErrorModal.tsx => 
DagImportErrorDetails.tsx} (85%)
 create mode 100644 
airflow-core/src/airflow/ui/src/components/DagStatusChip.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/components/DagStatusChip.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/components/StatusMessage.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/hooks/useRequiredActionTabs.test.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/layouts/Nav/BrowseButton.test.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/pages/DagsList/RecentRuns.test.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/utils/dagStatus.test.ts
 create mode 100644 airflow-core/src/airflow/ui/src/utils/dagStatus.ts
 create mode 100644 
airflow-e2e-tests/tests/airflow_e2e_tests/ts_sdk_tests/test_ts_sdk_dynamic_dag.py
 create mode 100644 
dev/breeze/doc/adr/0020-run-ci-for-external-contributions-in-forks.md
 create mode 100644 dev/breeze/doc/ci/08_fork_ci_for_external_contributors.md
 create mode 100644 dev/breeze/doc/images/output_ci_approve-workflow-runs.svg
 create mode 100644 dev/breeze/doc/images/output_ci_approve-workflow-runs.txt
 create mode 100644 dev/breeze/doc/images/output_ci_audit.svg
 create mode 100644 dev/breeze/doc/images/output_ci_audit.txt
 create mode 100644 dev/breeze/doc/images/output_ci_fork-ci-reconcile.svg
 create mode 100644 dev/breeze/doc/images/output_ci_fork-ci-reconcile.txt
 create mode 100644 dev/breeze/src/airflow_breeze/utils/ci_audit.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/ci_minutes_estimate.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/fork_ci_gate.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/fork_ci_github.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/fork_ci_messages.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/fork_ci_reconcile.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/fork_compare.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/git_remotes.py
 create mode 100644 
dev/breeze/src/airflow_breeze/utils/merged_pull_request_runs.py
 create mode 100644 dev/breeze/src/airflow_breeze/utils/workflow_run_approval.py
 create mode 100644 dev/breeze/tests/test_calibrate_ci_minutes_estimates.py
 create mode 100644 dev/breeze/tests/test_cdxgen.py
 create mode 100644 dev/breeze/tests/test_ci_audit.py
 create mode 100644 dev/breeze/tests/test_ci_minutes_estimate.py
 create mode 100644 dev/breeze/tests/test_fork_ci_gate.py
 create mode 100644 dev/breeze/tests/test_fork_ci_github.py
 create mode 100644 dev/breeze/tests/test_fork_ci_messages.py
 create mode 100644 dev/breeze/tests/test_fork_ci_reconcile.py
 create mode 100644 dev/breeze/tests/test_fork_compare.py
 create mode 100644 dev/breeze/tests/test_git_remotes.py
 create mode 100644 dev/breeze/tests/test_merged_pull_request_runs.py
 create mode 100644 dev/breeze/tests/test_workflow_run_approval.py
 create mode 100644 dev/calibrate_ci_minutes_estimates.py
 create mode 100644 
providers/common/ai/docs/use_cases/refine_a_draft_within_a_budget.rst
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/example_dags/example_agent_loop_budget.py
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/plugins/www/src/region.ts
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/plugins/www/tests/model-api.test.ts
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/plugins/www/tests/model.test.mjs
 create mode 100644 
providers/common/ai/src/airflow/providers/common/ai/plugins/www/tests/region.test.ts
 create mode 100644 
providers/google/tests/system/google/cloud/dataproc/example_dataproc_cluster_high_obtainability.py
 create mode 100644 
providers/microsoft/azure/tests/unit/microsoft/azure/resources/powerbi_completed_refresh.json
 create mode 100644 
providers/microsoft/azure/tests/unit/microsoft/azure/resources/powerbi_completed_refresh.md
 copy 
providers/openlineage/tests/system/openlineage/{example_openlineage_task_groups_dag.py
 => example_openlineage_retry_dag.py} (59%)
 copy 
providers/openlineage/tests/system/openlineage/{example_openlineage_task_groups_dag.py
 => example_openlineage_sensor_reschedule_dag.py} (60%)
 create mode 100644 
providers/openlineage/tests/system/openlineage/example_openlineage_task_loop_dag.py
 create mode 100644 
providers/openlineage/tests/system/openlineage/example_openlineage_task_loop_groups_dag.py
 copy 
providers/openlineage/tests/system/openlineage/{example_openlineage_task_groups_dag.py
 => example_openlineage_task_states_dag.py} (52%)
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_retry_dag.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_retry_dag__af2.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_retry_dag__af3_0.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_sensor_reschedule_dag.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_sensor_reschedule_dag__af2.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_sensor_reschedule_dag__af3_0.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_task_loop_dag.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_task_loop_groups_dag.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_task_states_dag.json
 create mode 100644 
providers/openlineage/tests/system/openlineage/expected_events/openlineage_task_states_dag__af3_0.json
 create mode 100644 
providers/openlineage/tests/unit/openlineage/test_system_tests_run_id_integrity.py
 copy scripts/ci/{make_mnt_writeable.sh => 
docker-compose/mount-sphinx-airflow-theme.yml} (65%)
 mode change 100755 => 100644
 create mode 100755 scripts/ci/prek/check_ci_gate_needs.py
 create mode 100755 scripts/ci/prek/check_fork_ci_gate_config.py
 create mode 100755 scripts/ci/spot_interruptions.py
 create mode 100644 scripts/tests/ci/prek/test_check_ci_gate_needs.py
 create mode 100644 scripts/tests/ci/prek/test_check_fork_ci_gate_config.py
 create mode 100644 scripts/tests/ci/test_spot_interruptions.py
 create mode 100644 ts-sdk/example/src/dynamic.ts

Reply via email to