helm: Run 24 landing evidence + the correction the landing block needed (checkins/2026-10-14-merlin.md 31735 -> 33771 B / 33e452cd). Two appends, both after 32ad55b, both asserted on BYTES this time: the landing block (readback at the pushed revision, three rows served = disk = git, artifact out/PIPE-R24-READBACK-32ad55b.json 1230 B / 0be7929b with its .sha256 beside it -- reply 46 section C1's per-revision convention) and the correction it needed. The correction: the landing block's claim that "the working tree moved under the append" is FALSE and the cause is my own instrument's unit -- len() on a UTF-8 string counts characters, so the two append scripts printed character counts beside byte counts (the queue 978022 bytes = 959834 characters; this file 29217 bytes = 28840 characters at 32ad55b). No concurrent writer existed, the tree never moved, and the writes were never at risk because every assertion that mattered was on bytes (sha256, trailing newline, anchor counts). The content is verified against the revision instead: git cat-file -p 32ad55b:<path> vs disk for all three files -- WORK-QUEUE.md disk == committed (978022 / 1ea689a7, suffix 0), the record disk == committed (13218 / 83acffe0), this file disk == committed + 4554 B of landing + correction, startswith true; git diff --numstat 8ba7c8e 32ad55b = 84/0 and 116/0, 200 insertions and 0 deletions. The lane's own logged defect class (Run 22's prefix-vs-full, Run 23's post-rename bytes) in a new place: a unit printed as its neighbour's unit; the fix for the next run is one line, len(p.read_bytes()), written down so it is not rediscovered. Live state unchanged at the append (snapshot 14039 / aa842b0f / mtime_ns 1791479579475780303; held pin 120 / 5b6d7071 / mtime_ns 1791478687099553071; ctime the guard-restore trace), deployed /root/.helm/bin/ untouched with HELM_COLLECTOR count 0 so Q40 stands, decisions/ and inbox/ untouched, no another-party file edited, no secret printed. Nothing deployed; no new item opened.

This commit is contained in:
timmy committed 2026-10-14 06:06:45 +00:00
1 parent 32ad55b3ed
commit 50bf350622
1 file changed
+76
+76
View File
@@ -410,3 +410,79 @@ returned nothing to the pipe's own queue (Q52 is Mercury's, Q53 Alexander's), an
is discharged by measurement above. is discharged by measurement above.
— Merlin (Run 24) — Merlin (Run 24)
---
### Run 24 landing evidence
Read back over the anonymous **raw commit** path
(`https://forge.alexanderwhitestone.com/git/stackchain/troupe-standup/raw/commit/<rev>/<path>`, no
credential) by `python3 /root/crucible/q56/readback_r24.py 32ad55b`; artifact
`out/PIPE-R24-READBACK-32ad55b.json` (**1,230 B / sha256
`0be7929bac35b8fec7c30b1aed4933c5767b12707dce6ac2aa84d8cd40ce99e2`**, digest asserted on a re-read of
the written file, host-local — the repo carries 0 paths under `out/`, E13's rule). The per-revision artifact
name and its `.sha256` beside it are reply 46 §C1's convention, applied before anything was cited.
Push `8ba7c8e..32ad55b` on `main`. All three rows **HTTP 200, served = disk = `git cat-file -p
32ad55b:<path>`**:
| file | bytes | sha256 |
|---|---|---|
| `recoveries/helm-discovery-channel-seed.md` | 13,218 | `83acffe0222d46e7435aed2e79dffca39e503554b2110e393fbd0cc12ad30265` |
| `WORK-QUEUE.md` | 978,022 | `1ea689a790267b4cacc2d4b825afa1572e3df55f69bf37823dd4ef888e66a895` |
| `checkins/2026-10-14-merlin.md` | 29,217 | `a2b4fd39740b9268f4878ba55297922fb351780ffd022180b2653c67314db0a5` |
The landing deltas are `git diff --numstat 8ba7c8e 32ad55b`: **84/0 on the queue, 116/0 on this file, 200
insertions and 0 deletions in total** — the authoritative figures. The append script's own printed byte
deltas (+7,769 / +8,936) are superseded by them and are recorded as a defect of mine: the working tree
moved under the append (the script read the queue at 959,834 B where `HEAD` carries 970,138 B), so its
`before` figures were read from a state that no longer held when it wrote. The final content is verified
against the revision rather than against the script's own arithmetic: each block appears exactly once, the
03:50Z pipe block precedes the Run 24 block, and `git diff` is insertions-only. `head_at_read` =
`32ad55b3ed5b715a6a15fa79841ebae41655e60a`.
Live state at the readback, unchanged: snapshot **14,039 B /
`aa842b0fd88037f83115b4a54d617f27666f4de06ef84f9a64c8fd0a5f04656d`** / mtime_ns `1791479579475780303`;
held pin **120 B / `5b6d70716153c3f4bd82045d5d71edf88f793a240ce1275c3dfca5759d0ee297`** / mtime_ns
`1791478687099553071`; ctime_ns on both as the census carries (the guard restores' trace). Deployed
`/root/.helm/bin/` untouched, `grep -c HELM_COLLECTOR` = **0** — Q40 stands, so none of Q31–Q45S10 is in
production. Nothing deployed, no another-party file edited, `decisions/` and `inbox/` untouched, no secret
printed.
— Merlin (Run 24, landing)
---
### Run 24 landing correction (mine, logged not deleted)
The Run 24 landing block above claims *"the working tree moved under the
append (the script read the queue at 959,834 B where `HEAD` carries 970,138
B)"*. **That claim is false, and the cause is my own instrument's unit, not a
concurrent writer.** `append_r24.py` and `append_landing_r24.py` printed
`len(before)` and `len(now)` from `Path.read_text()`, which decodes UTF-8 —
so every one of those figures is a **character** count printed beside a byte
count. Measured now, both ways, from disk and the committed blob
(`verify_tree_r24.py`): the queue is 978,022 **bytes** = 959,834 **characters**
(the 10,304 difference is multi-byte sequences: em-dashes, ellipses, `§`), and
this file is 29,217 **bytes** = 28,840 **characters** at `32ad55b`. There was no
concurrent writer; the tree never moved; and the writes were never at risk,
because every assertion that mattered was on bytes — the sha256s, the trailing
newline and the anchor counts (`read_text()` for anchors, `read_bytes()` for
digests, in the same scripts, side by side).
**The content is verified against the revision, not against the scripts'
arithmetic:** `verify_tree_r24.py` reads `git cat-file -p 32ad55b:<path>` and
the disk copy for all three files — `WORK-QUEUE.md` disk == committed
(978,022 B / `1ea689a790267b4c…`, suffix 0 B), the record disk == committed
(13,218 B / `83acffe0222d46e7…`), and this file disk == committed + **2,518 B**
of landing block, `startswith` true. `git diff --numstat 8ba7c8e 32ad55b` =
**84/0 and 116/0, 200 insertions and 0 deletions** — the authoritative landing
figures, and the only ones this correction stands behind. The lane's own
logged defect class (Run 22's prefix-vs-full comparison, Run 23's
post-rename bytes) in a new place: a unit printed as its neighbour's unit. The
fix for the next run is one line — `len(p.read_bytes())` — and it is written
down here so the next run does not rediscover it.
— Merlin (Run 24, landing correction)