null: Q57 residual record -- host-pinned builder, dead citation and unwired control, each measured before the fix

This commit is contained in:
null committed 2026-10-25 06:06:12 +00:00
1 parent 0792278523
commit 3967455b68
1 file changed
+96
@@ -0,0 +1,96 @@
# Q57 residual -- the entry and its control locate their own checkout
**Lane:** Codeforge (null). **Rev:** `912e8a8` (work), entry regenerated at `0792278`.
**Date:** 2026-10-25. **Item:** Q57, opened 2026-10-24 by the pipe; done-means met
2026-10-24, three defects found in its own evidence on 2026-10-25.
Q57 asked that the standup entry be bound to the bytes it grades. That binding
landed on 2026-10-24 (`831f809`, `c48f098`) and `check.py` reads 30 of 30 green.
What follows is not that repair. It is what the repair still got wrong about
*where it is running*, measured before it was changed.
## 1. Three defects, measured at `fe4ef9f` before any edit
**(a) The builder was pinned to this host, so a replay reproduced nothing.**
`wizard.py` carried `REPO = "/root/troupe-standup"` and `HERE =
"/root/troupe-standup/wizard-work/null"` as literals. A clone at `fe4ef9f` was
made, and inside it:
$ python3 wizard-work/null/wizard.py
CHECK: python3 /root/troupe-standup/wizard-work/null/check.py
$ stat -c '%n %Y %s' /root/troupe-standup/wizard-work/null/wizard.log.md \
wizard-work/null/wizard.log.md
.../troupe-standup/wizard-work/null/wizard.log.md 1792907995 2347
.../q57red.iUNJl8/c/wizard-work/null/wizard.log.md 1792907993 2347
# after the clone-side run:
.../troupe-standup/wizard-work/null/wizard.log.md 1792908011 2347 <- written
.../q57red.iUNJl8/c/wizard-work/null/wizard.log.md 1792907993 2347 <- untouched
The clone's replay wrote **the host's** tracked file and left the clone alone.
`git status` in the clone read clean, which is the worst shape of this defect:
the replay looked reproducible because nothing in the clone had moved. The
entry also printed absolute host paths, so `render()` was a function of where
the checkout lived and could not round-trip anywhere else.
**(b) A citation to a file that exists on no ref.** `q57_mutation.py:32` sent
the reader to `../q57-binding/transcript-before.txt` for the CRLF transcript.
`git log --all --oneline -- wizard-work/q57-binding/` returns 0 commits and the
directory is absent from the worktree.
**(c) The negative control was invoked by nothing.** `git grep -n q57_mutation`
returned `check.py`'s compile cell and three lines of prose. The control's
green verdict was whatever its author last saw by hand -- Q63/Q65's class,
inside the file that exists to prove the gate can fail.
## 2. What changed
| file | change |
| --- | --- |
| `wizard-work/null/wizard.py` | `HERE` from `__file__`, `REPO` from `git rev-parse --show-toplevel`; the entry prints repository-relative paths (`bash wizard-work/null/CHECK`); `main()` writes only when the rendered bytes differ; `--stamp` / `--restamp` are the only ways to move the date |
| `wizard-work/null/q57_mutation.py` | `REPO` self-located (`NULL_REPO` overrides it and the path used is printed); rc 2 for could-not-grade; **case 6** replay; the published-gate case renumbered to 7; the dead citation removed |
| `wizard-work/null/CHECK` | new lane gate: resolves `$0`, runs `check.py` then the control, 0 green / 1 fault / 2 could not grade |
| `wizard-work/null/check.py` | `CHECK` added to `NEED` and `WORK_FILES` (its bytes are bound to the named commit too), plus one cell asserting `CHECK` still invokes both programs |
Case 6 is the cell that would have caught (a). It runs the *fixture's* builder
inside the frozen clone and asserts four things at once: the clone's entry is
byte-identical, the clone's file is not even opened for writing (mtime
unchanged), `git status` is empty, and **the host's entry is untouched**. Under
the old builder the last assertion fails by construction -- that is the
measurement in §1(a).
## 3. Measured after
$ bash wizard-work/null/CHECK
...
30 passed, 0 failed
ALL CHECKS GREEN
...
case 6 the replay reproduces the entry byte-for-byte -> 2821 bytes
case 6 the replay opens no file for writing (mtime unchanged)
case 6 the worktree is clean after the replay -> clean
case 6 the HOST's entry is untouched: the builder grades its own checkout
21 passed, 0 failed
MUTATION CONTROL GREEN
LANE GATE GREEN
rc=0
Full transcript, verbatim with its rev: `/root/.hermes/wizard-outputs/null/q57-residual/transcript-green.txt`.
The entry now names `912e8a8`, the commit that carries all four work files
byte-identically, and `check.py` prints `the gate on disk is the gate published
on the remote main` at 16552 bytes.
## 4. What is not claimed
- **Case 6 was not re-run against the old builder.** It cannot be: the old
builder writes `/root/troupe-standup` from wherever it is invoked, so running
it to falsify the cell would rewrite this lane's committed entry. The RED is
the §1(a) probe, taken against the old code before the edit; case 6 asserts
its negation. A cell whose falsifier destroys the artifact is measured by
probe, not by replay.
- **Q57's queue line is still OPEN.** The done-means is met and measured, but
the closure belongs in `WORK-QUEUE.md`, whose appends re-render the shared
index and whose `path-claims` leg is currently red on another lane's citation.
This lane will not add citing sites to a red leg; the closure line is the
control plane's to append.
- **`CHECK` is not a `tools/verify.py` leg.** Adding one is the operator's call
(reply 93 §4), not a lane's, and this file does not ask for it.