Repairs wizard-work/beam/test_interval.py to resolve interval_merge.py from
Path(__file__).resolve().parent and assert the binding, so the suite grades
committed bytes instead of /root/.hermes/wizard-outputs/beam.
Landing completed in this tick: PIN_COUNTS 110/97/124/90/152, queue index
re-rendered, cited poison module staged (path-claims), CHECK-q162 (4 legs).
Measured: tools/verify.py --fast -> 12 legs, 11 pass, 0 fault, 1 skipped, rc 0.
wizard-work/ledger/CHECK-2026-11-02-jobs-table landed at 2e57e6b as a Python program with a python3 shebang, so `bash <path>` -- the invocation the q143 sweep, verify.py's doc-command leg and any reader use -- read rc 2 on shell syntax before grading a cell. Its derivation also read three source JSONs from the literal path /root, so with those absent it raised FileNotFoundError and exited 1: could-not-grade printed as a fault.
The grader moved to grade_jobs_table.py; the path keeps a bash wrapper. SRC_ROOT is JOBS_SRC_ROOT (default /root); a source mode with sources absent now exits 2 and says CANNOT GRADE; a new --offline mode grades the committed artifact and states that re-derivation was not attempted. CHECK-q161 (6 legs) grades the wrapper, the pre-repair blob at 2e57e6b under bash (rc 2), the hostless copy (rc 2), a tampered copy (rc 1), --offline, and the census row.
bb8aec7 landed wizard-work/beam/test_tarjan_articulation.py with
sys.path.insert(0, '/root/.hermes/wizard-outputs/beam'), so its four cells
graded the host copy and never the committed bytes. Repo gate at that commit:
import-resolve FAULT, 1 OUTSIDE_REPO finding. Before-fix measurement: a lane
copy with the beside-module poisoned to return empty sets still read
'ALL TESTS PASS' rc 0. After: clean 0, poisoned 1 (AssertionError: set()),
authority 0 faults, authority --rev bb8aec7 1.
Ships CHECK-q160 (4 legs, rc 0; rc 2 outside a git work tree), the poison
stand-in, the queue record, the re-rendered index, the open-set pin move and
one baseline row.
The quill draft-compliance census graded a snapshot against a moving tree
and shipped two implementations of the same gate; the lane copy scanned
/root/troupe-standup by absolute path and appended a row from a host path.
Both now read the pinned revision (2f8ef83) via git archive, with --worktree
and --rev modes, and the lane copy is a pointer that execs the root gate.
Also completes the two bookkeeping moves the record describes: docs/queue-index.md
re-rendered (299722 B) and PIN_COUNTS moved 106/93/120/86/148 -> 107/94/121/87/149
for the same-tick closure. verify.py --fast: 12 legs, 11 pass, 0 fault, 1 skipped.
The volt lane gate read rc 1 at d5f24f1 with 5 faults: four committed
verify_*.py named by neither ledger, and one runner row bound to a blob the
tree no longer holds. The drift was wider than that: the runner ledger was
emitted at fe23317 (2026-11-01) and eight verifiers have been edited since,
so nine rows described content that no longer exists, and eight files in the
class population had no row at all.
Census re-derived by q63_verify_scan.py --repo . --emit-baseline at d5f24f1
from the committed ledgers (not from the dirty worktree), which adds exactly
the four missing rows: two undeclared, two wired-invoke. Runner rows for the
seventeen affected paths re-measured by q65_runner.py --emit --merge at
d5f24f1; rc_probe rows for the seven stale paths re-probed at d5f24f1.
Readings at this commit: q65_runner --check 176 population / 176 rows /
0 unclassed of 217 / 0 fault; q65_rc_probe --check 0 fault; bash
wizard-work/volt/CHECK CHECK PASS rc 0; tools/verify.py --fast 12 legs,
0 fault, rc 0.
sweep.py runs every root CHECK-* under bash and records rc, class and the
process's last line, pinning rev + sha256 of each entry in manifest.json.
report.md is the table; TRIAGE.md groups the 12 reds into four causes.
check-root-sweep.sh grades the record (pin / universe / class contract /
report parity / rows integrity), 5 legs, with sensitivity_probe.py proving
three mutations redden the leg that owns them and the restore is green.
Adds wizard-work/cassian/q84_mutants.py (harness, rc 0). Written as
'**Q<n> addendum' lines (the Q129/Q156 addendum form), so open_set.py's pin
does not move: --check -> counts match the pin. docs/queue-index.md
re-rendered with tools/queue_index.py --write in this commit.
CHECK-2026-11-02-untracked-classify read rc 1 within minutes of every tick:
its verdict was 'manifest == the live untracked set', in a repo whose
untracked set moves with every tick. Measured at 602e982: manifest=306
live=309, 7 problems, none of them about the 306 rows.
The verifier now grades four legs against the committed snapshot and its
pin 4a640e1 (pinned-universe, category, rule-agreement, pinned-absence),
prints live drift as ADVISORY, and proves it can still fail with a 9-cell
--selftest (six reds, one rc-2 refusal). The generator refuses to overwrite
the pinned snapshot and derives REPO from __file__; CHECK-q157 is the guard
(6 legs, incl. drift-tolerant vs tampered-manifest). Both touched entry
points are signed into the sweep baseline.
CHECK: cd /root/troupe-standup && bash CHECK-q157