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
t27b ready: a red non-required check against a still-running master tip must use master's last completed verdict or WAIT #6334
tri t27b ready / watch let #6333 merge at 02:02Z with coverage=FAILURE (master PENDING). Master's tip run of coverage was only queued, so the comparison proved nothing (it happened to be safe: coverage failed on the 3 previous master commits).
Two causes:
pr_ready in specs/tri/t27b/steward.t27 folds the non-required effects but only acts on BLOCK (other == 2); a WAIT from a non-required check (check_effect(2, 1, false) == 1, Q29) fell through to READY.
fold_master reports PENDING as soon as the tip's run is going, hiding the older completed verdict, so the report cannot say what master actually was.
Fix
steward.t27: pr_ready waits on a non-required WAIT; new master_state(running, last) decides which master state a check is judged against: a red verdict under a running tip stays red (master was already broken), a green one is PENDING (Q29), no verdict in the window is PENDING (WAIT, never MERGE).
t27b.py (plumbing): fold_master keeps the newest completed verdict and its sha plus whether a newer run is still going; ready reports e.g. coverage=FAILURE (master FAILURE@f329e27c1).
gen/c/tri/t27b/steward.c regenerated; fixture tests in scripts/ci.
Acceptance
tri t27b ready on a fixture with a red PR check and master {running, last FAILURE@sha} says READY with (master FAILURE@sha...); with {running, no verdict} says WAIT.
spec tests pass in the generated C; tri t27b gen-check says SAME.
Activity
Merge pull request #6342 from gHashTag/claude/t27b-ready-master-fallback