You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Fork CI reconciler: scope the cached green-trust decision to the pull request and its base #74907
When a fork run turns green, the reconciler (AIP-120, #74822) checks once whether the pull request changes CI-defining files. It records the result as the Fork CI / Tests (AMD) commit status (green or green_unverified) and reuses it while that status is newer than the last retarget. A commit status belongs to the commit, so every open pull request with that head commit shares it, and their changed files can differ by base. A green decision made for one can mark another one ready without checking its files, which bypasses the CI-file check. The opposite case leaves a clean pull request green_unverified.
Proposed: key the decision by pull request and base, for example by making the status context or description specific to the base, or by recomputing when more than one open gated pull request has the same head commit. Add a test with one head commit shared by two pull requests with different bases.
Code: the green-trust block in classify in dev/breeze/src/airflow_breeze/utils/fork_ci_reconcile.py.
Drafted-by: Claude Code (Opus 5); reviewed by @potiuk before posting
Activity