diff --git a/WORK-QUEUE.md b/WORK-QUEUE.md index 9b0ea6d..e8e88e7 100644 --- a/WORK-QUEUE.md +++ b/WORK-QUEUE.md @@ -7914,4 +7914,22 @@ Q53 (career lane, held for Alexander). - **A sixth line-citation defect, mine, found by re-reading rather than by being told.** E4's `--q52-witness` row puts the section comment at **:1261**; `grep -n '--q52-witness'` returns **:1262** (the comment) and **:1270** (the flag test). The flag test was right; the comment is one line lower. Same family as E10: a comment read as code. - **Open on me after this tick: nothing from replies 38/39/40.** All four returned corrections are discharged with their own measurements, and the two I found are recorded beside them. **Standing, unchanged and still human-gated:** the §4 adoption `cp` of collector `4e45021d…` + gate **`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f`**; the `manifest_match` pin stale since 2026-10-08; Q13's publication call (item 13's decided note controls over its `proposed_action`); Q9's checksum handover; Q19's onboarding; Q42 (zephyrus's). Nothing deployed this run, no another-party file edited, `decisions/` and `inbox/` untouched, no secret printed. **The Helm lane's executable set is empty again; the next Helm unit is a decision, not a task.** -— Merlin (Run 20) \ No newline at end of file +— Merlin (Run 20) + +**Run 20 landing evidence (`7673477` + its own commit).** Read back over the anonymous raw +path at 2026-10-13 ~21:0xZ; instrument `/root/crucible/q53/readback.py`. All three rows +**HTTP 200, served = disk = `git cat-file -p 7673477:`**: +`recoveries/helm-home-channel-guard.md` **31,219 B / `0f8b7f1617a67f5e…`**, +`WORK-QUEUE.md` **925,786 B / `78feb8441d8f01183…`**, `checkins/2026-10-13-merlin.md` +**82,262 B / `9db0834471415e3a…`** (the check-in at `7673477`, before the append that +carries this note — a file cannot cite its own post-append digest). `out/Q53-MEASUREMENTS.json` +and `out/Q53-READBACK.txt` are **host-local and not forge-verifiable** — 0 paths under +`out/` in the tree at `7673477`, raw path **404** — which is E13's own rule applied to this +run's artifacts. Live state unchanged at readback: snapshot 14,039 B / +`aa842b0fd88037f8…` / mtime_ns `1791479579475780303`, held pin 120 B / +`5b6d70716153c3f4…` / mtime_ns `1791478687099553071`, ctime_ns `1791907371554631194` on +both; deployed `/root/.helm/bin/` untouched, `HELM_COLLECTOR` count **0**. Nothing +deployed, no another-party file edited, `decisions/` and `inbox/` untouched, no secret +printed. + +— Merlin (Run 20, landing) diff --git a/checkins/2026-10-13-merlin.md b/checkins/2026-10-13-merlin.md index bf89536..8e28293 100644 --- a/checkins/2026-10-13-merlin.md +++ b/checkins/2026-10-13-merlin.md @@ -1166,4 +1166,31 @@ so no reply file was written. The two corrections that belong in the queue rathe the record (E12's clock and E13's local-artifact label) are appended beside the Run-19 landing block in `WORK-QUEUE.md` as its own Run-20 block, not edited into the pipe's text. -— Merlin (Run 20) \ No newline at end of file +— Merlin (Run 20) + +### Run 20 landing evidence + +Read back over the anonymous raw path +(`https://forge.alexanderwhitestone.com/git/stackchain/troupe-standup/raw/branch/main/`, +no credential) at **2026-10-13 ~21:0xZ**, instrument `/root/crucible/q53/readback.py`. +All three rows **HTTP 200, served = disk = `git cat-file -p 7673477:`**: + +| file | bytes | sha256 | +|---|---|---| +| `recoveries/helm-home-channel-guard.md` | 31,219 | `0f8b7f1617a67f5e8308e85b837e3256d74949080750dbabacc0f09f106464fa` | +| `WORK-QUEUE.md` | 925,786 | `78feb8441d8f01183c5f57c7248366400d7f5d5720bf3b8a10d12c37b73a2c11` | +| `checkins/2026-10-13-merlin.md` | 82,262 | `9db0834471415e3a6a4d1844910a8f21d3a558305b9a69ea08785b8ec0bcda94` | + +The third row is this file **at `7673477`, the revision before this append** — a file +cannot cite its own post-append digest, so the readback row is dated rather than chased. +`out/Q53-MEASUREMENTS.json` and `out/Q53-READBACK.txt` live only on this host and are +**local**, not forge-verifiable: `git ls-tree -r --name-only 7673477` returns **0** paths +under `out/` and the raw path serves **404** (E13's own rule, applied to this run's +artifacts rather than only to Run 19's). Commit `7673477` (`Merlin +`), pushed `aa3a806..7673477`. Live state unchanged at readback +time: snapshot 14,039 B / `aa842b0fd88037f8…` / mtime_ns `1791479579475780303`, held pin +120 B / `5b6d70716153c3f4…` / mtime_ns `1791478687099553071`, ctime_ns +`1791907371554631194` on both; deployed `/root/.helm/bin/` untouched, +`HELM_COLLECTOR` count **0**. + +— Merlin (Run 20, landing) diff --git a/recoveries/helm-home-channel-guard.md b/recoveries/helm-home-channel-guard.md index 9056dda..59fe9d5 100644 --- a/recoveries/helm-home-channel-guard.md +++ b/recoveries/helm-home-channel-guard.md @@ -534,4 +534,33 @@ and E13's local-artifact label — are appended beside the Run-19 landing block `WORK-QUEUE.md`. Instrument `/root/crucible/q53/measure.py` and `measure2.py`; durable artifact `out/Q53-MEASUREMENTS.json`. +— Merlin (Run 20) + +## E17 — my append helper dropped the trailing newline; restored, and logged + +**Found here, on my own tool, before the landing commit.** `q53/append.py`'s +`append_last()` wrote `head + sep + addition` and never wrote `tail` back. `tail` was +the file's single trailing newline, so both the record and the queue lost it — visible +in `git diff` as the one deleted line in each, `\ No newline at end of file` moving +between revisions. The three earlier appends in this run (`append.py` for the record and +the queue, `append_checkin.py` for the check-in) all carried it. + +Measured: `git diff --numstat` at the Run-20 append read **16 / 0** on the queue and +**159 / 0** on the record (clean), then **19 / 1** and **28 / 1** once the landing +appends ran — the `1` in each being the dropped newline, not a content edit. Restored +by writing one `\n` byte to each file; **no line of content moved**, and the fix is +byte-countable (`WORK-QUEUE.md` 927,008 → 927,009 B; the check-in 83,853 → 83,854 B). + +Why it matters here and not only as hygiene: this lane's readback discipline compares +`served = disk = git cat-file` byte for byte, so a lost trailing newline is a real +delta an outside reader would have to explain. The rule is **`head + sep + tail + +addition`, and assert `tail` is whitespace-only before dropping it** — the same +`count(anchor) == 1` discipline the lane already applies, extended to the tail. + +**Run 20's landing evidence is its own commit**, filed in +`checkins/2026-10-13-merlin.md` §*Run 20 landing evidence* and in this queue's Run-20 +landing block, both read back over the anonymous raw path at **HTTP 200, served = disk = +`git cat-file -p 7673477:`** for all three files. This section does not cite its +own post-append digest; the record's row is dated at the revision before this append. + — Merlin (Run 20) \ No newline at end of file