9.3 KiB
Q65 residual, cycle 4 — 2026-10-25 (volt, at 25b04d0)
Census red → green in one tick: three committed verifiers were unrowed and one row had
outlived its bytes. Two of the three were not orphans at all — a committed line already
invokes them, so they belong in the census as wired-invoke, not in the runner ledger.
The third was graded by execution. The census now reads 106 of 106, q65: 0 fault(s),
bash wizard-work/volt/CHECK rc 0.
Three things are recorded and not repaired here, because they are other lanes' files:
wizard-work/ledger/verify_dates.py exits 0 on any input including deliberately
impossible dates (a printer, not a verifier); the ledger lane's verify_wizards.sh is
rc 1 at HEAD for three separate reasons; and both files I classified wired-invoke
sit behind scripts that nothing invokes.
1. Red, reproduced — not relayed
At 25b04d0, in this worktree, verbatim in q65-2026-10-25-c4-red.txt:
bash wizard-work/volt/CHECK rc 1
q65_runner --check: 87 rows (PASS 63, FAIL 24), 3 unclassed of 106, 1 DRIFT,
q65: 4 fault(s)
q63_verify_scan.py: 103 of 106 covered, NEW_UNWIRED 1, q63: 1 fault(s) rc 1
The four runner faults were three UNCLASSED rows (wizard-work/ledger/verify_dates.py,
wizard-work/ledger/verify_wizards.py, wizard-work/sol/verify_sol_profile_triage.py)
and one DRIFT (wizard-work/forge/verify_scan_dry_refactor.py, rc measured against
blob d3543efa42, tree at HEAD holding 6fb7aa14b9).
2. Two of the three were wired, and the census says so
q63_verify_scan.py --emit-baseline was run before anything was graded, so the
classification is the scan's own reading of the tree, not a label I chose
(census.diff = the emitted diff against the committed file):
wired-invoke wizard-work/ledger/verify_wizards.py
HEAD:wizard-work/ledger/verify_wizards.sh:9:exec python3 "$OUT/verify_wizards.py" "$@"
wired-invoke wizard-work/sol/verify_sol_profile_triage.py
HEAD:wizard-work/sol/gen_and_verify.sh:20:python3 verify_sol_profile_triage.py
undeclared wizard-work/ledger/verify_dates.py
no invocation, no declaration, no graded run
So two rows went into the census as wired-invoke and one into the runner ledger. That
is the class definition applied, not a shortcut: wired-invoke = "a committed line
invokes it (the ref is the evidence)", and both refs are committed lines at HEAD.
And both invoking scripts are themselves dead ends. Measured at 25b04d0:
$ git grep -l -F "verify_wizards.sh" HEAD -> 0 files
$ git grep -l -F "gen_and_verify.sh" HEAD -- '*.py' '*.sh' '*CHECK*' '*.yml' '*.yaml'
-> wizard-work/sol/build_solo_triage.py (:88, inside an f-string the report prints)
verify_wizards.sh is named by no committed path at all; gen_and_verify.sh appears
only as prose about the gate inside the report builder. Neither script is run by cron,
by a CHECK, or by any gate. The census class is satisfied and the reachability gap is
untouched — that is Q63's open item, and this cycle does not pretend otherwise.
3. The third was graded by execution
$ python3 wizard-work/volt/q65_runner.py --repo . --class undeclared --emit --merge \
--only wizard-work/ledger/verify_dates.py
PASS 0.13s wizard-work/ledger/verify_dates.py
q65_runner: 88 row(s) in 0.5s -> wizard-work/volt/q65_runner_baseline.tsv
Row: undeclared wizard-work/ledger/verify_dates.py PASS 0 0.13 <note> dd3f643441c9 L6:/root/troupe-standup
— true rc, blob bound to HEAD, and host-pinned at :6 (REPO = "/root/troupe-standup",
then a second absolute path for the JSON at :20), so it is a PASS* and adds nothing
to graded-clean.
4. That PASS is vacuous, and this is the measurement
verify_dates.py has no verdict. It prints six lines and falls off the end of main();
grep for a failure path in the file returns sys.exit/raise SystemExit/assert /FAIL
— none. Control run in a scratch clone at 25b04d0 (q65-2026-10-25-c4-controls.txt):
- A. clone's JSON corrupted (
latest = 1999-01-01,earliest = 2099-12-31, row 0's date = 1999-01-01), clone's verifier run unmodified → rc 0, and it prints the host's values, because it reads/root/troupe-standup. The host pin, demonstrated. - B. same corruption, the file's 2 absolute path occurrences rewritten to the clone
→ rc 0, printing
script_latest : 1999-01-01…andscript_earliest : 2099-12-31…beside live values. An impossible date makes it print, not fail. No verdict exists. - C. host run, unmodified → rc 0, same six lines.
Why the census did not catch it: q63_verify_scan.py's STRIPPED_ASSERT heuristic looks
for _check/raise/a non-zero exit and scores this file exit_safe on
subprocess.run(..., check=True) — so the scan reports 0 of 106 stripped-assert while
a file with no assertion at all is counted as covered. That heuristic blind spot is Q63's
finding to widen; the row here is honest (PASS, rc 0) and says nothing about substance.
5. DRIFT cleared by forge's fix, not by bookkeeping
b4720ab (forge) moved REPO_ROOT in wizard-work/forge/verify_scan_dry_refactor.py to
resolve from __file__. Re-run through the runner at the new blob:
PASS 2.10s wizard-work/forge/verify_scan_dry_refactor.py
-undeclared … verify_scan_dry_refactor.py PASS 0 2.48 d3543efa421d L38:/root/troupe-standup
+gate-run … verify_scan_dry_refactor.py PASS 0 2.10 6fb7aa14b96e <no host pin>
The host column is now empty, so the row moved from PASS* to graded-clean:
graded-clean 9 → 10 of 88. That is the only row in this ledger whose grade improved
because its author changed the file rather than because a label changed.
6. Numbers, reconciled rather than restated
q63_verify_scan.py prints run by q65_runner : 86 (FAIL 24, PASS 62) while the ledger
holds 88 rows (PASS 64, FAIL 24). Not a defect: the scan counts
ran = in gate AND not wired by name, and exactly 2 files satisfy both —
wizard-work/sphinx/archive-lcmm-metadata-2026-10-25/verify_lcmm_dossier.py (CHECK.sh:23)
and wizard-work/sphinx/archive-mmlongcite-2026-10-25/verify_mmlongcite.py (CHECK.sh:26).
88 − 2 = 86, 64 − 2 = 62 (q65-2026-10-25-c4-overlap.txt, which re-derives the sets).
The census file itself reads 88 q65:PASS/24 q65:FAIL — counted with grep -c, not read
off the prose.
7. Green, measured at 25b04d0 (q65-2026-10-25-c4-green.txt)
q63_verify_scan.py --repo . committed 106; run by runner 86 (PASS 62, FAIL 24);
covered 106 of 106; NEW 0; q63: 0 fault(s) rc 0
q65_runner.py --check --class gate-run,undeclared
88 population / 88 rows; graded 88 of 88;
graded-clean 10 of 88; host-pinned 54;
tree audit 0 unclassed of 106; q65: 0 fault(s) rc 0
bash wizard-work/volt/CHECK selftest 22/22; CHECK PASS rc 0
python3 tools/verify.py --repo . 8 legs, 8 pass, 0 fault, 0 ungradable rc 0
Census composition: 88 + 10 + 8 = 106 (gate-run / wired-invoke /
declared-one-off), against 106 committed wizard-work/**/verify_*.py at HEAD.
host-pinned stays 54 across the change by coincidence worth naming: forge's row left
that column (§5) and verify_dates.py joined it (§3).
Instruments changed: q63_unwired_baseline.tsv 4 1, q65_runner_baseline.tsv 3 2
(git diff --numstat). No verifier was edited by this lane.
8. What is open, and whose
verify_dates.pyhas no verdict (wizard-work/ledger/…) — a file committed today (98987b7) that passes on impossible dates. Owner: ledger. Ask: reply 17.verify_wizards.shis rc 1 at HEAD, three causes, one of them structural:latestdeclared11:12:53vs live11:36:19(a point-in-time artifact re-derived against live git goes red on every later commit — the gate cannot stay green);:100's chained equalityearliest == json['earliest'] == csv_rows[0]['date']compares a date-sorted minimum to a churn-sorted first row, so it can never hold, and its message prints two of the three operands (which is why it readsdeclared='…10:30:11' observed='…10:30:11'yetFAIL);:122raisesIndexErrorbeforesys.exit(1), so rc 1 arrives as a traceback. Owner: ledger. Ask: reply 17.- Both new
wired-invokerows sit behind scripts nothing invokes — see §2. The class is honest as defined; the reachability question is Q63's and stays open. - 24
FAILrows and 53PASS*rows remain Q62/Q65's per-lane populations, unchanged by this cycle. The census is still not atools/verify.pyleg — the operator's call at reply 93 §4; this cycle is the fourth reopening in two days that nothing outside this lane's ownCHECKwould have noticed.
Evidence
q65-2026-10-25-c4-red.txt, -green.txt, -controls.txt, -counts.txt,
-overlap.txt, -emit.txt, -census.diff (each carries its provenance line);
git diff --numstat on the two ledgers (4 1, 3 2); replies/2026-10-25-to-ledger-17.md
for the two findings in other lanes' files. Nothing from inbox/ is quoted. No other
lane's file was edited.