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

potiuk pushed a change to branch fork-ci-6-reconciler-followups
in repository https://gitbox.apache.org/repos/asf/airflow.git


 discard 081f95a12c5 Name the cancelled-run CI passed job in the fork CI 
tampering docs
 discard 4ca46389808 Count only started jobs of fork-only workflows as project 
CI work
 discard 90e0158b01b Close fork CI pull requests that change the fork CI gate
 discard ef4774c5ca3 Attribute fork CI runs to the right pull request in the 
tampering check
 discard 415c5860cd3 Keep fork CI pull requests sharing a head commit across 
bases for a maintainer
 discard 8345cbb6ccc Ignore fork-only workflows that skipped every job in the 
fork CI tampering check
 discard 9f6a9d83642 Retry the fork CI push-again nudge when posting it fails
    omit 7e06c66cbde Fix the fork CI section title level and label wording in 
the contributor docs
    omit 6246769e210 Describe apache/airflow push runs after release-branch CI 
moved to a schedule
    omit 4e87728811a Say when fork CI applies in the contributor docs
    omit 61f46ac144a Document fork CI for contributors and maintainers
     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 bb213a30692 Honor next when an authenticated user reaches the FAB 
login page (#75665)
     add 54f645dd303 Check for workflow runs to auto-approve every 15 minutes 
(#75655)
     add 72628b5c4f4 Stop a stale callback stat from forcing constant Dag file 
reparsing (#73433)
     add d1491b82c90 Refuse Human-in-the-loop responses once the task stopped 
waiting (#75645)
     add 6d7e0010cd6 Close German Translation Gaps 2026-10-26 (#75676)
     add bfb620d271b Cancel the runs of merged pull requests when they merge 
(#75683)
     add e4efc876f48 Switch the default async MySQL driver to asyncmy (#75218)
     add 9f1348c2013 Keep the spot interruption notice green on transient 
GitHub errors (#75681)
     add 36038d73b5a Pin the real selective-checks auto-approve test to main 
(#75682)
     add 33486021776 Check out constraints from apache/airflow when diffing 
them in CI (#75675)
     add ffd9398e4b4 Always approve workflow runs of PRs from trusted 
stakeholder repositories (#75677)
     add d22f4e4b470 Retry GitHub server errors in the fork CI monitor (#75692)
     add 62e50c50030 List Meta among common.ai's external services and 
recognise new pydantic-ai 2.59 providers (#75641)
     add dac0a7adc44 Keep common.ai on anthropic 1.x until pydantic-ai supports 
anthropic 2 (#75640)
     add b19bc48f96f Let the EKS executor run per team and next to 
KubernetesExecutor (#75449)
     add 3f0cea0e8ba Add task instance state store commands to airflowctl 
(#72746)
     add 562977d11bf Make the Kubernetes, E2E and Helm release jobs pass on 
fork CI (#75699)
     add 2ae00f1606a Retry GitHub calls that fail to connect in the fork CI 
monitor (#75701)
     add ad6ec79c73e Deprecate airflow.utils.email in favor of the SMTP 
provider (#75414)
     add df03024a9a3 Fix BigQuery durable recovery for regional jobs (#75430)
     add b70a439a238 Allow FastAPI 0.137+ by requiring cadwyn 8.1 (#75689)
     add 04afd601aee Restart crashed Breeze components under mprocs (#75585)
     add ec8737c5417 Handle empty or corrupted JSON in airflowctl credentials 
loading (#75279)
     add e3f5e6ff3af Skip scheduling tasks when their Dag cannot be 
deserialized (#75263)
     add 3a37fb1c33e Fix BigQuery cancellation and links with inferred job 
locations (#75717)
     add bec92bcad02 Let listeners see the end date of a skipped task instance 
(#75685)
     add 34a955c17dd Remove unused type: ignore comments in airflow-ctl (#75203)
     add 750f849cc23 Run a language SDK runtime in its own process group 
(#75707)
     add 5243901c818 Add dag_id and task_id tags to resumable_job metrics 
(#75721)
     add c79293ea4b9 Wait for a maintainer when a fork PR changes any 
CI-defining file (#75718)
     add d340be05a4e Add metrics for task and asset state store access (#75729)
     add 91fbcbff93b Fix airflowctl config lint filters matching partial config 
names (#75690)
     add 8eb5357fb13 Keep cancelled CI runs from showing a failed CI passed 
check (#75720)
     add 968cca0c7e4 Add a dag_run index on (dag_id, run_after) (#74481)
     add fa9c935035d airflowctl: fix datetime.datetime CLI parameters rejecting 
all input (#70249)
     add 21a8a98ba96 Report language SDK runtime launch failures in the task 
log (#75561)
     add aee26d49b6b Fix airflowctl ignoring --env for non-auth commands 
(#73808)
     add ead86184fb5 Emit resumable_job metrics from KubernetesPodOperator 
(#75734)
     add 6cac8fcddc1 Handle None response from airflowctl connections 
create-defaults (#68853)
     add a22fcb9a67b Stop importing airflow.utils.email in the Amazon SES hook 
(#75711)
     add 8b5306690ac Fix 'lineage' export in airflow.sdk (#75744)
     add c4ab82253de Report AwsEksExecutor as the caller in its AWS user agent 
(#75698)
     add 4ace0a1deb7 Run automatic backport PRs on RunsOn runners (#75749)
     add 7c7157b124e Stop breeze k8s commands from silently rewriting uv.lock 
(#75763)
     add cb582009a0b Raise the stale bot operation budget so it reaches older 
PRs (#75761)
     add 7de5ac36770 UI: Remove unused filter count helper (#75760)
     add 455f5125c9a UI: Remove unused clipboard wrappers (#75759)
     add 36767cb0073 UI: Remove unused quick filter button (#75758)
     add aaba5c37195 UI: Don't fire keyboard shortcuts while typing in a Monaco 
editor (#75684)
     add d92a4805a92 UI: Fix labels that render as raw translation keys (#75326)
     add 91ca0ac42c8 UI: Fix slow pending Dag run checks on large databases 
(#75674)
     add 8f7a8e4ff58 Hide empty log groups in the task log view (#75686)
     add df37268410b Fix UI crash by validating unresolvable Windows PT 
timezone (#75723)
     add ae50f958ea2 Surface errors from OpenLineage database info lookups 
without losing lineage (#74805)
     add d583ffe5984 Hide the scheduled run icon in the grid legend (#75775)
     add de5798196d2 Make Breeze Kubernetes image tests independent of the 
branch (#75724)
     add a5ff71dffd3 Keep breeze verify working when dry-run is on (#75713)
     add be28f7fe9c2 Tell agents to stop when breeze cannot run, not use a host 
venv (#75599)
     add efd28053bed Stop Google Cloud Logging handler from starting a thread 
on close (#75596)
     add 70a78162261 Page SqlToS3Operator like GenericTransfer (#75730)
     add 55b3c58dea7 Return None from relative_path_from_logger for logs 
outside base_log_folder (#75572)
     add 4d9fb9e841f Remove unused airflowctl lowercase argument helper (#75768)
     add da767b24133 Bump the fab-ui-package-updates group across 1 directory 
with 2 updates (#75807)
     add a462d683469 UI: Scope partitioned Dag run asset list to readable 
assets (#75213)
     add 891e83dce5d Tell contributors when their fork CI workflow stops 
running (#75814)
     add e0d7083c1b2 Retry the fork CI push-again nudge when posting it fails
     add 1968391f14f Ignore fork-only workflows that skipped every job in the 
fork CI tampering check
     add 67312bfea09 Keep fork CI pull requests sharing a head commit across 
bases for a maintainer
     add 4a9693c894e Attribute fork CI runs to the right pull request in the 
tampering check
     add 177ed31a2cd Close fork CI pull requests that change the fork CI gate
     add 42ef9141800 Count only started jobs of fork-only workflows as project 
CI work
     add 7e3d6f06fa0 Name the cancelled-run CI passed job in the fork CI 
tampering docs

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   (081f95a12c5)
            \
             N -- N -- N   refs/heads/fork-ci-6-reconciler-followups 
(7e3d6f06fa0)

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 +-
 .../setup-isolated-setup-install.md                |    5 +
 .apache-magpie.lock                                |   43 +-
 .asf.yaml                                          |    7 +-
 .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 +-
 .../runs-on-cost-summary/action.yml}               |   29 +-
 .github/actions/stash-restore/action.yml           |  137 +
 .github/actions/stash-save/action.yml              |  129 +
 .github/fork-ci-gate.toml                          |    5 +
 .github/workflows/additional-ci-image-checks.yml   |    2 +-
 .github/workflows/additional-prod-image-tests.yml  |   80 +-
 .github/workflows/auto-approve-workflow-runs.yml   |   69 +
 .github/workflows/basic-tests.yml                  |   52 +-
 .github/workflows/cancel-merged-pr-runs.yml        |  119 +
 .github/workflows/check-newsfragment-pr-number.yml |   60 -
 .github/workflows/ci-amd.yml                       |  227 +-
 .github/workflows/ci-arm.yml                       |  227 +-
 .github/workflows/ci-image-build.yml               |   36 +-
 .github/workflows/ci-image-checks.yml              |   25 +-
 .github/workflows/finalize-tests.yml               |   12 +-
 .github/workflows/fork-ci-monitor.yml              |  172 +-
 .github/workflows/generate-constraints.yml         |    6 +-
 .github/workflows/helm-tests.yml                   |    8 +-
 .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/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/stale.yml                        |    1 +
 .github/workflows/test-providers.yml               |    6 +-
 .github/workflows/ui-e2e-tests.yml                 |    2 +-
 AGENTS.md                                          |    4 +-
 README.md                                          |    2 +
 .../authoring-and-scheduling/language-sdks/go.rst  |    2 +-
 .../language-sdks/typescript.rst                   |    2 +-
 airflow-core/docs/howto/email-config.rst           |   80 +-
 airflow-core/docs/howto/set-up-database.rst        |   28 +-
 airflow-core/docs/howto/usage-cli.rst              |    9 +
 airflow-core/docs/migrations-ref.rst               |    4 +-
 airflow-core/newsfragments/75218.significant.rst   |   13 +
 airflow-core/newsfragments/75414.significant.rst   |   20 +
 airflow-core/newsfragments/75493.bugfix.rst        |    1 +
 airflow-core/pyproject.toml                        |   11 +-
 airflow-core/src/airflow/api_fastapi/app.py        |    2 +
 .../src/airflow/api_fastapi/common/http_metrics.py |   25 +-
 .../src/airflow/api_fastapi/common/telemetry.py    |   21 +-
 .../api_fastapi/core_api/datamodels/assets.py      |    8 +-
 .../api_fastapi/core_api/datamodels/common.py      |   16 +
 .../api_fastapi/core_api/datamodels/config.py      |    8 +-
 .../core_api/datamodels/task_instance_history.py   |    4 +-
 .../core_api/datamodels/task_instances.py          |    2 +-
 .../core_api/datamodels/ui/partitioned_dag_runs.py |   12 +-
 .../api_fastapi/core_api/openapi/_private_ui.yaml  |   25 +-
 .../core_api/openapi/v2-rest-api-generated.yaml    |   18 +-
 .../api_fastapi/core_api/routes/public/dags.py     |   25 +-
 .../api_fastapi/core_api/routes/public/hitl.py     |   32 +-
 .../airflow/api_fastapi/core_api/routes/ui/dags.py |    8 +-
 .../core_api/routes/ui/partitioned_dag_runs.py     |   28 +-
 .../src/airflow/api_fastapi/execution_api/app.py   |   41 +-
 .../execution_api/datamodels/taskinstance.py       |    3 +-
 .../execution_api/routes/task_instances.py         |   10 +-
 .../airflow/api_fastapi/execution_api/security.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 +
 airflow-core/src/airflow/dag_processing/manager.py |   19 +-
 .../src/airflow/executors/base_executor.py         |    2 +
 .../src/airflow/jobs/scheduler_job_runner.py       |   69 +-
 ...50_3_5_0_add_dag_run_dag_id_run_after_index.py} |   28 +-
 airflow-core/src/airflow/models/dagrun.py          |    6 +
 airflow-core/src/airflow/models/taskinstance.py    |   16 +-
 airflow-core/src/airflow/settings.py               |    7 +-
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts |   43 +-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |   11 +-
 .../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 +
 .../airflow/ui/public/i18n/locales/de/common.json  |    1 -
 .../ui/public/i18n/locales/de/components.json      |    7 +
 .../src/airflow/ui/public/i18n/locales/de/dag.json |    4 +
 .../airflow/ui/public/i18n/locales/de/hitl.json    |    1 +
 .../airflow/ui/public/i18n/locales/el/common.json  |    1 -
 .../ui/public/i18n/locales/el/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/en/browse.json  |    1 +
 .../airflow/ui/public/i18n/locales/en/common.json  |    2 +-
 .../ui/public/i18n/locales/en/components.json      |    8 +
 .../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 +
 .../airflow/ui/public/i18n/locales/he/common.json  |    1 -
 .../ui/public/i18n/locales/he/components.json      |    7 +
 .../airflow/ui/public/i18n/locales/hi/common.json  |    1 -
 .../ui/public/i18n/locales/hi/components.json      |    7 +
 .../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 +
 .../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 +
 .../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  |   10 +-
 .../ui/public/i18n/locales/zh-TW/dashboard.json    |    4 +-
 .../airflow/ui/public/i18n/locales/zh-TW/hitl.json |    5 +-
 .../ui/src/components/AssetProgressCell.test.tsx   |   63 +-
 .../ui/src/components/AssetProgressCell.tsx        |   54 +-
 .../src/airflow/ui/src/components/ConfigForm.tsx   |    2 +-
 .../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 +-
 .../ui/src/components/QuickFilterButton.tsx        |   40 -
 .../airflow/ui/src/components/StatusMessage.tsx    |   52 +
 .../src/airflow/ui/src/components/WarningAlert.tsx |   28 +-
 .../src/context/timezone/TimezoneProvider.test.tsx |   59 +
 .../ui/src/context/timezone/TimezoneProvider.tsx   |   17 +-
 .../ui/src/hooks/useRequiredActionTabs.test.tsx    |   66 +
 .../airflow/ui/src/hooks/useRequiredActionTabs.ts  |   31 +-
 .../src/airflow/ui/src/hooks/useShortcut.test.tsx  |   64 +-
 .../src/airflow/ui/src/hooks/useShortcut.ts        |   16 +-
 .../src/airflow/ui/src/i18n/locales.test.ts        |   60 +-
 .../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/RunTypeLegend.tsx  |    7 +-
 .../ui/src/pages/AssetsList/AssetsList.test.tsx    |   14 +-
 .../ui/src/pages/Connections/ConnectionForm.tsx    |    3 +-
 .../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 +-
 .../src/airflow/ui/src/pages/DagsList/Schedule.tsx |   14 +-
 .../HITLTaskInstances/HITLResponseForm.test.tsx    |  193 +-
 .../pages/HITLTaskInstances/HITLResponseForm.tsx   |   33 +-
 .../src/airflow/ui/src/pages/Pools/PoolForm.tsx    |    2 +-
 .../src/airflow/ui/src/pages/XCom/XCom.tsx         |    2 +-
 .../src/airflow/ui/src/queries/useLogs.test.ts     |   38 +
 .../src/airflow/ui/src/queries/useLogs.tsx         |   11 +-
 .../airflow/ui/src/queries/useUpdateHITLDetail.ts  |   16 +-
 .../airflow/ui/src/system-components/Clipboard.tsx |   42 +-
 .../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 +
 .../src/airflow/ui/src/utils/filterUtils.test.ts   |  106 -
 .../src/airflow/ui/src/utils/filterUtils.ts        |   27 -
 airflow-core/src/airflow/ui/src/utils/index.ts     |    3 +-
 .../src/airflow/ui/src/utils/query.test.ts         |   50 +
 airflow-core/src/airflow/ui/src/utils/query.ts     |    7 +-
 airflow-core/src/airflow/ui/testsSetup.ts          |   29 +
 airflow-core/src/airflow/utils/db.py               |    2 +-
 airflow-core/src/airflow/utils/db_cleanup.py       |   24 +-
 airflow-core/src/airflow/utils/email.py            |  350 +-
 .../src/airflow/utils/serve_logs/log_server.py     |    3 +-
 airflow-core/src/airflow/utils/sqlalchemy.py       |   17 +
 .../unit/api_fastapi/common/test_http_metrics.py   |   13 +-
 .../core_api/routes/public/test_assets.py          |    5 +-
 .../core_api/routes/public/test_dags.py            |   41 +
 .../core_api/routes/public/test_hitl.py            |  135 +-
 .../api_fastapi/core_api/routes/test_routes.py     |    8 +-
 .../api_fastapi/core_api/routes/ui/test_dags.py    |   36 +
 .../routes/ui/test_partitioned_dag_runs.py         |  122 +-
 .../unit/api_fastapi/execution_api/test_app.py     |   29 +-
 .../execution_api/test_token_scope_boundaries.py   |   27 +-
 .../versions/head/test_task_instances.py           |   41 +-
 .../unit/api_fastapi/logging/test_decorators.py    |   18 +-
 airflow-core/tests/unit/api_fastapi/test_app.py    |   25 +
 .../tests/unit/cli/commands/test_db_command.py     |   84 +
 airflow-core/tests/unit/core/test_settings.py      |   26 +-
 .../tests/unit/dag_processing/test_manager.py      |  112 +-
 airflow-core/tests/unit/jobs/test_scheduler_job.py |  305 ++
 airflow-core/tests/unit/models/test_dagrun.py      |   41 +-
 .../tests/unit/models/test_taskinstance.py         |   68 +
 .../tests/unit/partition_mappers/test_init.py      |    4 +-
 airflow-core/tests/unit/utils/test_db_cleanup.py   |  178 +
 airflow-core/tests/unit/utils/test_email.py        |  447 +-
 airflow-core/tests/unit/utils/test_sqlalchemy.py   |   60 +-
 .../airflowctl_tests/test_airflowctl_commands.py   |    7 +
 airflow-ctl/docs/images/command_hashes.txt         |    2 +-
 airflow-ctl/docs/images/output_taskinstances.svg   |   82 +-
 airflow-ctl/src/airflowctl/api/client.py           |   22 +-
 .../src/airflowctl/api/datamodels/generated.py     |   28 +-
 airflow-ctl/src/airflowctl/api/operations.py       |  131 +-
 airflow-ctl/src/airflowctl/ctl/cli_config.py       |  107 +-
 airflow-ctl/src/airflowctl/ctl/cli_parser.py       |    2 +
 .../src/airflowctl/ctl/commands/config_command.py  |   16 +-
 .../src/airflowctl/ctl/commands/version_command.py |    3 +-
 airflow-ctl/src/airflowctl/ctl/help_texts.yaml     |    9 +
 airflow-ctl/tests/airflow_ctl/api/test_client.py   |  118 +-
 .../tests/airflow_ctl/api/test_operations.py       |  206 +
 .../ctl/commands/test_config_command.py            |   96 +
 .../ctl/commands/test_version_command.py           |   10 +-
 .../tests/airflow_ctl/ctl/test_cli_config.py       |  143 +-
 airflow-e2e-tests/docker/ts.yml                    |    6 +
 .../tests/airflow_e2e_tests/conftest.py            |   16 +-
 .../airflow_e2e_tests/openlineage_tests/README.md  |    3 +-
 .../airflow_e2e_tests/openlineage_tests/harness.py |    7 +-
 .../openlineage_tests/prepare_dags.py              |    3 +
 .../test_ts_sdk_dynamic_dag.py}                    |   44 +-
 contributing-docs/05_pull_requests.rst             |   47 +
 contributing-docs/18_contribution_workflow.rst     |   18 +-
 contributing-docs/25_maintainer_pr_triage.md       |    8 +-
 contributing-docs/mprocs/mprocs.yaml               |   14 +-
 contributing-docs/testing/unit_tests.rst           |    7 +
 dev/AGENTS.md                                      |   17 +
 dev/README_AIRFLOW3_DEV.md                         |   19 +-
 dev/README_RELEASE_AIRFLOW.md                      |   19 +-
 dev/breeze/doc/08_ci_tasks.rst                     |   25 +-
 dev/breeze/doc/ci/04_selective_checks.md           |  136 +-
 dev/breeze/doc/ci/05_workflows.md                  |  141 +
 dev/breeze/doc/ci/06_debugging.md                  |    6 +-
 .../doc/ci/08_fork_ci_for_external_contributors.md |  251 +-
 dev/breeze/doc/images/output_ci.svg                |   42 +-
 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 +
 .../doc/images/output_ci_fork-ci-reconcile.svg     |   46 +-
 .../doc/images/output_ci_fork-ci-reconcile.txt     |    2 +-
 .../doc/images/output_k8s_build-k8s-image.svg      |   48 +-
 .../doc/images/output_k8s_build-k8s-image.txt      |    2 +-
 .../doc/images/output_k8s_deploy-airflow.svg       |   46 +-
 .../doc/images/output_k8s_deploy-airflow.txt       |    2 +-
 .../doc/images/output_k8s_deploy-cluster.svg       |   30 +-
 .../doc/images/output_k8s_deploy-cluster.txt       |    2 +-
 dev/breeze/doc/images/output_k8s_dev.svg           |   22 +-
 dev/breeze/doc/images/output_k8s_dev.txt           |    2 +-
 .../doc/images/output_k8s_run-complete-tests.svg   |   84 +-
 .../doc/images/output_k8s_run-complete-tests.txt   |    2 +-
 .../doc/images/output_k8s_setup-lang-sdk-test.svg  |   22 +-
 .../doc/images/output_k8s_setup-lang-sdk-test.txt  |    2 +-
 .../doc/images/output_k8s_upload-k8s-image.svg     |   46 +-
 .../doc/images/output_k8s_upload-k8s-image.txt     |    2 +-
 .../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     |   79 +-
 .../airflow_breeze/commands/ci_commands_config.py  |   19 +
 .../airflow_breeze/commands/kubernetes_commands.py |   76 +-
 .../commands/kubernetes_commands_config.py         |   11 +-
 .../commands/kubernetes_kustomize_commands.py      |    2 +-
 .../src/airflow_breeze/commands/verify_commands.py |   10 +-
 dev/breeze/src/airflow_breeze/global_constants.py  |   19 +
 dev/breeze/src/airflow_breeze/utils/cdxgen.py      |   74 +-
 dev/breeze/src/airflow_breeze/utils/ci_audit.py    |   12 -
 .../airflow_breeze/utils/ci_minutes_estimate.py    |  226 +
 .../src/airflow_breeze/utils/fork_ci_gate.py       |   25 +-
 .../src/airflow_breeze/utils/fork_ci_github.py     |   86 +-
 .../src/airflow_breeze/utils/fork_ci_messages.py   |   92 +-
 .../src/airflow_breeze/utils/fork_ci_reconcile.py  |  364 +-
 .../src/airflow_breeze/utils/kubernetes_utils.py   |    3 +-
 .../src/airflow_breeze/utils/selective_checks.py   |  270 +-
 .../src/airflow_breeze/utils/verification_plan.py  |    2 +
 .../airflow_breeze/utils/workflow_run_approval.py  |  821 ++++
 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                  |    4 +-
 dev/breeze/tests/test_ci_minutes_estimate.py       |  229 +
 dev/breeze/tests/test_fork_ci_gate.py              |   51 +-
 dev/breeze/tests/test_fork_ci_github.py            |   74 +
 dev/breeze/tests/test_fork_ci_messages.py          |   41 +
 dev/breeze/tests/test_fork_ci_reconcile.py         |  714 +++-
 dev/breeze/tests/test_kubernetes_commands.py       |  144 +
 .../tests/test_kubernetes_kustomize_commands.py    |   20 +
 .../tests/test_kubernetes_lang_sdk_commands.py     |   18 +-
 dev/breeze/tests/test_kubernetes_utils.py          |    7 +
 dev/breeze/tests/test_selective_checks.py          |  752 ++++
 dev/breeze/tests/test_verify_commands.py           |   15 +
 dev/breeze/tests/test_workflow_run_approval.py     | 1118 +++++
 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 +-
 dev/skill-evals/last-eval-hash.txt                 |    2 +-
 .../src/tests_common/test_utils/api_fastapi.py     |   23 +
 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 +
 providers/amazon/docs/changelog.rst                |    6 +
 providers/amazon/docs/executors/eks-executor.rst   |   52 +-
 providers/amazon/docs/transfer/sql_to_s3.rst       |   19 +
 providers/amazon/pyproject.toml                    |    2 +-
 .../amazon/aws/executors/eks/_client_factory.py    |   38 +-
 .../amazon/aws/executors/eks/eks_executor.py       |  106 +-
 .../providers/amazon/aws/executors/eks/utils.py    |    5 +
 .../src/airflow/providers/amazon/aws/hooks/ses.py  |   80 +-
 .../providers/amazon/aws/transfers/sql_to_s3.py    |  130 +-
 .../src/airflow/providers/amazon/version_compat.py |    2 -
 .../tests/system/amazon/aws/example_sql_to_s3.py   |   13 +
 .../aws/executors/eks/test__client_factory.py      |   61 +-
 .../amazon/aws/executors/eks/test_eks_executor.py  |  330 +-
 .../amazon/tests/unit/amazon/aws/hooks/test_ses.py |   66 +-
 .../unit/amazon/aws/transfers/test_sql_to_s3.py    |  188 +
 .../providers/cncf/kubernetes/operators/pod.py     |   16 +-
 .../unit/cncf/kubernetes/operators/test_pod.py     |  134 +
 providers/common/ai/docs/changelog.rst             |   44 +
 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/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/supported_services.rst    |    2 +-
 providers/common/ai/docs/toolsets/index.rst        |   18 +-
 providers/common/ai/docs/toolsets/logging.rst      |   35 +-
 providers/common/ai/provider.yaml                  |    3 +-
 providers/common/ai/pyproject.toml                 |    8 +-
 .../ai/example_dags/example_llm_retry_policy.py    |    7 +-
 .../providers/common/ai/get_provider_info.py       |    3 +-
 .../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 |    9 +-
 .../common/ai/operators/llm_schema_compare.py      |    4 +-
 .../providers/common/ai/operators/llm_sql.py       |    4 +
 .../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   |    2 +-
 .../ai/tests/unit/common/ai/policies/test_retry.py |   65 +-
 .../tests/unit/common/ai/test_provider_metadata.py |   38 +-
 .../tests/unit/common/ai/toolsets/test_logging.py  |    6 +-
 .../common/compat/openlineage/utils/sql.py         |   29 +-
 .../common/compat/openlineage/utils/test_sql.py    |   60 +
 .../airflow/providers/common/sql/operators/sql.py  |   55 +-
 .../unit/common/sql/operators/test_sql_execute.py  |   89 +
 .../tests/unit/dbt/cloud/utils/test_openlineage.py |    4 +-
 .../edge3/tests/unit/edge3/worker_api/test_app.py  |    5 +-
 .../fab/auth_manager/security_manager/override.py  |    7 +-
 .../providers/fab/auth_manager/views/auth_login.py |   67 +
 .../providers/fab/auth_manager/views/auth_oauth.py |    9 +
 .../fab/src/airflow/providers/fab/www/package.json |    4 +-
 .../src/airflow/providers/fab/www/pnpm-lock.yaml   |  850 ++--
 .../unit/fab/auth_manager/views/test_auth_login.py |  146 +
 .../tests/unit/fab/www/views/test_views_login.py   |   90 +
 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 |    8 +-
 .../providers/google/cloud/operators/bigquery.py   |   41 +-
 .../google/cloud/transfers/bigquery_to_bigquery.py |   22 +-
 ...example_dataproc_cluster_high_obtainability.py} |  114 +-
 .../cloud/log/test_cloud_logging_task_handler.py   |   14 +
 .../unit/google/cloud/operators/test_bigquery.py   |  311 +-
 .../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/mysql/README.rst                         |    2 +
 providers/mysql/docs/changelog.rst                 |   11 +
 providers/mysql/docs/index.rst                     |    4 +-
 providers/mysql/pyproject.toml                     |    8 +-
 providers/openlineage/docs/macros.rst              |   32 +
 .../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 +
 .../src/airflow/providers/openlineage/sqlparser.py |   45 +-
 .../openlineage/utils/sql_hook_lineage.py          |   25 +-
 .../airflow/providers/openlineage/utils/utils.py   |  400 +-
 .../example_openlineage_base_complex_dag.py        |    2 +
 ...ple_dag.py => example_openlineage_retry_dag.py} |   38 +-
 ...> example_openlineage_sensor_reschedule_dag.py} |   18 +-
 .../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} |   44 +-
 .../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 +-
 .../unit/openlineage/plugins/test_listener.py      |  223 +-
 .../tests/unit/openlineage/plugins/test_macros.py  |   85 +
 .../tests/unit/openlineage/test_sqlparser.py       |   53 +-
 .../test_system_tests_run_id_integrity.py          |  373 ++
 .../openlineage/utils/test_sql_hook_lineage.py     |  130 +
 .../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 +-
 scripts/ci/make_mnt_writeable.sh                   |   21 +-
 scripts/ci/move_docker_to_mnt.sh                   |    7 +-
 .../ci/prek/check_airflowctl_command_coverage.py   |   24 +-
 scripts/ci/prek/check_ci_gate_needs.py             |   15 +
 scripts/ci/prek/check_ci_workflows_in_sync.py      |   23 +-
 scripts/ci/prek/newsfragments.py                   |   69 +
 ...un_mypy_full_dist_local_venv_or_breeze_in_ci.py |    4 +-
 scripts/ci/spot_interruptions.py                   |  428 ++
 scripts/in_container/bin/generate_mprocs_config.py |   18 +-
 scripts/in_container/in_container_utils.py         |   18 +-
 .../in_container/run_provider_yaml_files_check.py  |    2 +-
 scripts/tests/ci/prek/test_check_ci_gate_needs.py  |   23 +
 scripts/tests/ci/prek/test_newsfragments.py        |  128 +-
 scripts/tests/ci/test_spot_interruptions.py        |  445 ++
 .../in_container/test_generate_mprocs_config.py    |   30 +
 .../observability/metrics/metrics_template.yaml    |   84 +-
 task-sdk/pyproject.toml                            |    2 +-
 task-sdk/src/airflow/sdk/__init__.py               |  227 +-
 task-sdk/src/airflow/sdk/api/client.py             |   10 +-
 .../src/airflow/sdk/bases/resumablejobmixin.py     |    7 +-
 .../src/airflow/sdk/coordinators/_subprocess.py    |  332 +-
 task-sdk/src/airflow/sdk/execution_time/context.py |   50 +-
 .../src/airflow/sdk/execution_time/coordinator.py  |   14 +-
 .../src/airflow/sdk/execution_time/supervisor.py   |   60 +-
 .../src/airflow/sdk/execution_time/task_runner.py  |   12 +-
 .../src/airflow/sdk/importers/python_importer.py   |    8 +-
 task-sdk/src/airflow/sdk/log.py                    |    6 +-
 .../src/airflow/sdk/serde/serializers/timezone.py  |    8 +-
 task-sdk/tests/task_sdk/api/test_client.py         |   29 +
 .../tests/task_sdk/bases/test_resumablejobmixin.py |   47 +-
 .../tests/task_sdk/coordinators/test_subprocess.py |  485 ++-
 task-sdk/tests/task_sdk/docs/test_public_api.py    |   26 +-
 .../tests/task_sdk/execution_time/test_context.py  |   97 +
 .../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 +-
 task-sdk/tests/task_sdk/test_log.py                |   20 +
 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                              |    3 +
 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                                            |   98 +-
 509 files changed, 31892 insertions(+), 4669 deletions(-)
 create mode 100644 .github/AGENTS.md
 copy .github/{workflows/scheduled-upgrade-check-v3-4-test.yml => 
actions/runs-on-cost-summary/action.yml} (59%)
 create mode 100644 .github/actions/stash-restore/action.yml
 create mode 100644 .github/actions/stash-save/action.yml
 create mode 100644 .github/workflows/auto-approve-workflow-runs.yml
 create mode 100644 .github/workflows/cancel-merged-pr-runs.yml
 delete mode 100644 .github/workflows/check-newsfragment-pr-number.yml
 create mode 100644 .github/workflows/spot-interruption-notice.yml
 create mode 100644 airflow-core/newsfragments/75218.significant.rst
 create mode 100644 airflow-core/newsfragments/75414.significant.rst
 create mode 100644 airflow-core/newsfragments/75493.bugfix.rst
 copy 
providers/common/compat/tests/unit/common/compat/openlineage/utils/test_utils.py
 => airflow-core/src/airflow/api_fastapi/common/telemetry.py (58%)
 copy 
airflow-core/src/airflow/migrations/versions/{0037_3_0_0_add_backfill_to_dag_run_model.py
 => 0150_3_5_0_add_dag_run_dag_id_run_after_index.py} (62%)
 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
 delete mode 100644 
airflow-core/src/airflow/ui/src/components/QuickFilterButton.tsx
 create mode 100644 airflow-core/src/airflow/ui/src/components/StatusMessage.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/context/timezone/TimezoneProvider.test.tsx
 create mode 100644 
airflow-core/src/airflow/ui/src/hooks/useRequiredActionTabs.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
 delete mode 100644 airflow-core/src/airflow/ui/src/utils/filterUtils.test.ts
 delete mode 100644 airflow-core/src/airflow/ui/src/utils/filterUtils.ts
 create mode 100644 airflow-core/src/airflow/ui/src/utils/query.test.ts
 copy 
airflow-e2e-tests/tests/airflow_e2e_tests/{java_sdk_tests/test_java_sdk_dynamic_dag.py
 => ts_sdk_tests/test_ts_sdk_dynamic_dag.py} (60%)
 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/src/airflow_breeze/utils/ci_minutes_estimate.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_minutes_estimate.py
 create mode 100644 dev/breeze/tests/test_kubernetes_commands.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/fab/src/airflow/providers/fab/auth_manager/views/auth_login.py
 create mode 100644 
providers/fab/tests/unit/fab/auth_manager/views/test_auth_login.py
 create mode 100644 providers/fab/tests/unit/fab/www/views/test_views_login.py
 copy 
providers/google/tests/system/google/cloud/dataproc/{example_dataproc_start_from_trigger.py
 => example_dataproc_cluster_high_obtainability.py} (50%)
 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_mapped_simple_dag.py
 => example_openlineage_retry_dag.py} (61%)
 copy 
providers/openlineage/tests/system/openlineage/{example_openlineage_defer_simple_dag.py
 => example_openlineage_sensor_reschedule_dag.py} (73%)
 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_mapped_simple_dag.py
 => example_openlineage_task_states_dag.py} (56%)
 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
 create mode 100755 scripts/ci/spot_interruptions.py
 create mode 100644 scripts/tests/ci/test_spot_interruptions.py
 create mode 100644 ts-sdk/example/src/dynamic.ts

Reply via email to