The audit-live-rows --check CI gate (.github/workflows/ci.yml:487) fails on main itself, so it reds every pull request that merges main.
Verified on a pristine main worktree
Detached worktree at origin/main (cae8ace0c), nothing else applied:
$ python3 scripts/audit-live-rows.py # bare mode
rc=0
$ python3 scripts/audit-live-rows.py --check # the mode CI runs
245 live rows; 1 abandoned ACTIVE; 18 PARTIAL rows to review; 3 IDs live in two matrices: …
rc=1
The offending row is KERNEL-DFLASH2-GROUPED-CONV, .agents/kernel-matrix.md:143, verdict ABANDONED — no branch, no commit on main mentioning the row ID.
Note the two modes disagree. Bare audit-live-rows.py exits 0; only --check exits 1. An agent baselining this briefly concluded the failure was its own because it ran the bare form — worth knowing for anyone reproducing, and arguably worth making the bare mode say that it is not the gate.
How it got here
The row arrived with 028438e68 (#1465, SPEC-DFLASH2), which landed on main without a completed CI verdict. That is the same mechanism as #1464 and #1403: of the last 25 main runs of the ci workflow, 16 are cancelled and 3 success, because ci.yml:122-124 applies cancel-in-progress to push as well as pull_request. A cancelled run is not a red, so nothing alerted.
This is a different and newer failure from #1464 — that one is five broken CPU test suites, this one is a records gate — but they share a cause and both block the same lane.
Why it needs an owner rather than a workaround
A gate that is red on main is worse than a gate that is absent: every PR inherits it, reviewers learn to baseline-subtract it, and the habit carries over to the day the red is genuinely theirs. That has already cost this repository once this week — #1415 carries a real device-leakage regression (DSR REGRESSION in bucket 'vt_ifdef': 35 > baseline 32) that three independent review passes missed, because CI never completed during any of them.
What would close this
Either the row is genuinely live and owes a branch or a commit that names its ID, or it is genuinely abandoned and its matrix row should say so. Do not silence the checker — .agents/-level policy is explicit that a red gate must not be made green by deleting an assertion or widening its scope, and this gate is doing exactly the job it was written for. It found a real record defect.
The row's owner is the SPEC-DFLASH2 lane; #1314 and #1404 are the DFlash2 porting rows and are not this record defect.
Related: #1464, #1403, #1285, #1316.
The
audit-live-rows --checkCI gate (.github/workflows/ci.yml:487) fails onmainitself, so it reds every pull request that mergesmain.Verified on a pristine
mainworktreeDetached worktree at
origin/main(cae8ace0c), nothing else applied:The offending row is
KERNEL-DFLASH2-GROUPED-CONV,.agents/kernel-matrix.md:143, verdictABANDONED — no branch, no commit on main mentioning the row ID.Note the two modes disagree. Bare
audit-live-rows.pyexits 0; only--checkexits 1. An agent baselining this briefly concluded the failure was its own because it ran the bare form — worth knowing for anyone reproducing, and arguably worth making the bare mode say that it is not the gate.How it got here
The row arrived with
028438e68(#1465, SPEC-DFLASH2), which landed onmainwithout a completed CI verdict. That is the same mechanism as #1464 and #1403: of the last 25mainruns of theciworkflow, 16 arecancelledand 3success, becauseci.yml:122-124appliescancel-in-progresstopushas well aspull_request. A cancelled run is not a red, so nothing alerted.This is a different and newer failure from #1464 — that one is five broken CPU test suites, this one is a records gate — but they share a cause and both block the same lane.
Why it needs an owner rather than a workaround
A gate that is red on
mainis worse than a gate that is absent: every PR inherits it, reviewers learn to baseline-subtract it, and the habit carries over to the day the red is genuinely theirs. That has already cost this repository once this week — #1415 carries a realdevice-leakageregression (DSR REGRESSION in bucket 'vt_ifdef': 35 > baseline 32) that three independent review passes missed, because CI never completed during any of them.What would close this
Either the row is genuinely live and owes a branch or a commit that names its ID, or it is genuinely abandoned and its matrix row should say so. Do not silence the checker —
.agents/-level policy is explicit that a red gate must not be made green by deleting an assertion or widening its scope, and this gate is doing exactly the job it was written for. It found a real record defect.The row's owner is the SPEC-DFLASH2 lane; #1314 and #1404 are the DFlash2 porting rows and are not this record defect.
Related: #1464, #1403, #1285, #1316.