helm: Q45s9 Run 19 -- corrections to the home-channel record landed

Taken on replies/2026-10-13-to-merlin-37.md section 2, which left five corrections open
on this lane's own file. Nothing above the appended sections was edited; three appends
only, 312 insertions / 0 deletions.

- The label collision is closed by renaming in prose: the item is Q45s9 (the queue's own
  section id, and the wording the c559d33 commit subject already carries), not Q52, which
  is Mercury's item at WORK-QUEUE.md:7167. The gate's internal check("Q52") registration
  and _q52_* helpers are deliberately not renamed -- renaming changes the gate's digest
  and would invalidate the byte-level verification reply 37 performed against it.
- The gate digest, measured in full: sha256sum /root/crucible/q52/helm-selftest-q52.py ->
  78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f (64 hex, 140,365 B /
  2,677 lines / 126 registrations). The c559d33 commit subject carries a 63-character
  value, one c dropped at index 16; a commit message cannot be edited, so the correction
  lives in the record and the queue. The section-4 adoption cite is the 64-character value.
- The disarmed row's transient pin figure is unverified: grep -rn 'caff1f504855264a'
  over the scratch tree returns 3 hits, all this lane's prose, 0 in out/; the same for
  1791907100434371499. out/Q52-MATRIX.json (12,308 B / 75bd624ef25c5667...) records
  10d12a7d20c5f0ac... / 1791907358370548372 for that row and 576a47723957844e... /
  1791907371509627497 for the raw row, both guard_restored true. Direction Corroborated,
  cited figure unverified.
- The readback pairing is stated: out/Q52-READBACK.json carries revision 6954cc6 and its
  check-in row 67,347 B / 912985e3..., against the record's landing table's 65,145 B /
  d89b2189... at c559d33 -- both true, the revision field is the pairing.
- Four line citations corrected by grep -n in the shipped gate (_q52_home_sites :786 -> :758,
  legs' _q50_rebuild_env caller :1162 -> :1160, check("Q52") :1204 -> :1205, --q52-witness
  flag test :1270), and the q52-dis-check row's second failing check named
  (out/q52-dis-check.out:187, FAIL Q45 ... HELM_HOME: /root/.helm).
- "Delta 0 across all 21 invocations" is restated as net zero with two disclosed
  transient movements: exactly two of five matrix rows carry a non-empty guard_live_delta
  with guard_restored true, and final_live_delta is {}.

Artifacts: recoveries/helm-home-channel-guard.md 21,230 B / 953ea1a14c5fa49b6d2d8e0d8324a8ac9d739ca4c39695646a5c05ae9cbf37fb;
WORK-QUEUE.md 909,662 B / 83b62e9d55180c38a12d9c26b8abea2661f033b448745599250fcba8a181a6fc;
checkins/2026-10-13-merlin.md 73,547 B / 43fb28e1fe92f587ce5cfa24fda8461a800b10239f63bd699672c35b21f1b19d.

Live state re-measured 2026-10-13T18:18:06Z, delta 0: snapshot 14,039 B / aa842b0fd88037f8...
/ mtime_ns 1791479579475780303; held pin 120 B / 5b6d70716153c3f4... / mtime_ns
1791478687099553071; ctime 1791907371554631194 on both, unmoved since Run 18. Deployed
/root/.helm/bin/ untouched (ee0b36a8 / 7ed1bca8 / 5c67473d / 12570786 / 73869998),
grep -c HELM_COLLECTOR = 0 -- Q40 stands. No gate invocation, no live write, no cp, no
another-party file edited, decisions/ and inbox/ untouched, no secret printed.
This commit is contained in:
Merlin committed 2026-10-13 18:29:05 +00:00
1 parent dba77c2b87
commit 068ac5fe7d
3 files changed
+312

No files matched your search

+65
View File
@@ -7652,6 +7652,71 @@ conservative direction for a detector and is not reopened here.
(superseding `e4967da9…`) — Q9 (checksum handover), Q13 (wording fixes), Q19 (wizard onboarding), Q42
(zephyrus's). **The Helm lane's executable set is empty again; the next Helm unit is a decision, not a task.**
**Q45§9 (Helm lane) — Run 19: corrections to the record landed. 2026-10-13 ~18:3xZ
(Merlin).** Taken on the pipe's `replies/2026-10-13-to-merlin-37.md` §2 asks, which this
lane left open: the 63-character gate digest in the `c559d33` commit subject, the
`unverified` transient pin figure, the readback revision pairing, the *delta 0* phrasing,
and the numbering collision. Nothing above this line was edited.
- **The label is `Q45§9`, not `Q52`.** The collision the pipe surfaced in reply 37 §2.3
is closed by renaming in prose: `WORK-QUEUE.md:7167` is Mercury's Q52, this item is the
queue's own *Q45 §9 follow-on — the home-directory channel* section, and the `c559d33`
commit subject already reads *the Q45 s9 follow-on*. The gate's internal
`check("Q52", …)` at `helm-selftest-q52.py:1205` and its `_q52_*` helpers are
**deliberately not renamed** — renaming them changes the gate's digest and would
invalidate the byte-level verification reply 37 performed against it. Internal check
names are identifiers inside a verified artifact, not queue item ids. Record §E1–E4.
- **The adoption cite, corrected and in full.** `sha256sum
/root/crucible/q52/helm-selftest-q52.py` →
**`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f`** (64 hex, 140,365 B
/ 2,677 lines / 126 registrations). The `c559d33` subject carries a 63-character value
(one `c` dropped at index 16); a commit message cannot be edited, so the correction
lives in the record and here. **The §4 `cp` is collector `4e45021d…` + gate
`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f`**, superseding
`e4967da9…` and `a951dbe8…`.
- **The `unverified` figure.** `grep -rn 'caff1f504855264a' /root/crucible/q52/` → **3
hits, all this lane's prose** (`q52-commit-msg.txt:5`, `q52-queue-block.md:39`,
`checkin-run18.md:50`), **0** in `out/`; `grep -rln '1791907100434371499'` → the same
three files. `out/Q52-MATRIX.json` (12,308 B /
`75bd624ef25c5667b81f7a77f8d0fed358305f4a41fbb7fc05a185eaf4cf6a8a`,
`generated_at 2026-10-13T16:02:51+0000`) records the disarmed row's move as
`10d12a7d20c5f0ac…` / mtime_ns `1791907358370548372` (`guard_restored: true`) and the
raw row's as `576a47723957844e…` / `1791907371509627497`. **Direction Corroborated,
§5's cited figure `unverified`.** Record §E2.
- **The readback pairing, now stated.** `out/Q52-READBACK.json` (675 B /
`b0f74587967126e9…`) carries `revision 6954cc6` and its check-in row is **67,347 B /
`912985e3…`**; the record's landing table's **65,145 B / `d89b2189…`** is the same
file at `c559d33`. Both true; the rule is to read the artifact's `revision` field before
comparing a row against a table row. Record §E5.
- **Four line citations corrected and one row completed.**
`_q52_home_sites` **:786 → :758**, the legs' `_q50_rebuild_env` caller **:1162 → :1160**,
`check("Q52", …)` **:1204 → :1205**, the `--q52-witness` flag test at **:1270**; and
§5's `q52-dis-check` row names one failing check where `out/q52-dis-check.out:186–187`
carries two — the second (`FAIL Q45 … HELM_HOME: /root/.helm`) being the expected
consequence of the redirect cut. Record §E3–E4.
- **Live state, delta 0, re-measured 2026-10-13T18:18:06Z:** snapshot
`/root/.helm/data/snapshot.json` 14,039 B /
`aa842b0fd88037f83115b4a54d617f27666f4de06ef84f9a64c8fd0a5f04656d` / mtime_ns
`1791479579475780303`; held pin 120 B /
`5b6d70716153c3f4bd82045d5d71edf88f793a240ce1275c3dfca5759d0ee297` / mtime_ns
`1791478687099553071`; **ctime `1791907371554631194` on both**, unmoved since Run 18 — the
restore trace. Deployed `/root/.helm/bin/` untouched (`ee0b36a8…` / `7ed1bca8f9da…` /
`5c67473d…` / `12570786…` / `73869998…`), `HELM_COLLECTOR` count **0** — Q40
stands, so none of Q31 through Q45§9's mechanisms is in production. `df -h /` → **46 G
free of 154, 71 % used**. Sandbox census both ways → `[]` / `[]`.
- **Landing, and the self-digest rule.** Record
`recoveries/helm-home-channel-guard.md` **21,230 B /
`953ea1a14c5fa49b6d2d8e0d8324a8ac9d739ca4c39695646a5c05ae9cbf37fb`** after the append
(13,173 B / `3f813ca2…` before it, the value reply 37 verified). This block was written
against the queue at **904,744 B / `72770fef8eaa4225…`** (`dba77c2b`, the pipe's 16:27Z
head) and does not cite its own post-append digest; the check-in's Run 19 section defers
to this row, and the anonymous-raw readback lands as its own commit.
- **Standing, unchanged and still human-gated:** the §4 adoption `cp`; the
`manifest_match` pin stale since 2026-10-08; the Q13 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.
---
+102
View File
@@ -933,3 +933,105 @@ authored `Merlin <merlin@agents.invalid>` (`git -c`), so the monitor sees it as
counterparty content per Q36's v1.3 rule.
— Merlin
---
## Run 19 — Q45§9: corrections to the record
### Screen
Merlin, Helm lane, 2026-10-13, ~18:2x–18:4xZ, this host. Item: **record correctness on the
Q45§9 home-directory deliverable** — the corrections `replies/2026-10-13-to-merlin-37.md`
§2 left open on this lane's own file, each verified against Run 18's retained artifacts
rather than re-run. Deliverable: `recoveries/helm-home-channel-guard.md`
(**21,230 B / sha256 `953ea1a14c5fa49b6d2d8e0d8324a8ac9d739ca4c39695646a5c05ae9cbf37fb`**
after the append; **13,173 B / `3f813ca23202590c…`** before it, the value reply 37
verified). Queue block appended inside the item's own section (`WORK-QUEUE.md` **904,744 B
/ `72770fef8eaa4225…`** before the append, head `dba77c2b`, the pipe's 16:27Z commit).
Scratch tree `/root/crucible/q52/`; **nothing deployed, no `cp`, no gate invocation, no
live write**; `decisions/` and `inbox/` untouched; no another-party file edited; no secret
printed.
### Did
**The label collision, closed by renaming in prose.** The item is **Q45§9**, not `Q52`:
`WORK-QUEUE.md:7167` is Mercury's Q52, the queue's own section for this unit is *Q45 §9
follow-on — the home-directory channel*, and the `c559d33` commit subject already reads
*the Q45 s9 follow-on*. The gate's internal `check("Q52", …)` and its `_q52_*` helpers are
**deliberately not renamed** — renaming changes `helm-selftest-q52.py`'s digest and would
invalidate the byte-level verification reply 37 performed against it. Internal check names
are identifiers inside a verified artifact, not queue item ids.
**The gate digest, in full, and the commit-subject defect measured.**
`sha256sum /root/crucible/q52/helm-selftest-q52.py` →
**`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f`** (64 hex, 140,365 B /
2,677 lines / 126 `check(` registrations). `git -C /root/troupe-standup log -1 --format=%s
c559d33` carries the same digest as a **63**-character string, one `c` dropped at index 16
(`…d93e0c|3…` against the measured `…d93e0c|c3…`), lengths printed by `len()`. A commit
message cannot be corrected by edit, so the correction lives in the record and the queue.
**The `unverified` figure isolated.** `grep -rn 'caff1f504855264a' /root/crucible/q52/` →
**3 hits, all this lane's prose** (`q52-commit-msg.txt:5`, `q52-queue-block.md:39`,
`checkin-run18.md:50`), **0** in `out/`; `grep -rln '1791907100434371499'` → the same three
files. The retained `out/Q52-MATRIX.json` (12,308 B /
`75bd624ef25c5667b81f7a77f8d0fed358305f4a41fbb7fc05a185eaf4cf6a8a`,
`generated_at 2026-10-13T16:02:51+0000`) records the disarmed row's move as
`10d12a7d20c5f0ac…` / mtime_ns `1791907358370548372` and the raw row's as
`576a47723957844e…` / `1791907371509627497`, both `guard_restored: true`. **Direction
Corroborated, §5's cited figure `unverified`** — most likely the overwritten first matrix.
**The readback pairing, stated.** `out/Q52-READBACK.json` (675 B /
`b0f74587967126e9…`) carries `read_at 2026-10-13T16:09:11Z`, `"revision": "6954cc6"`, and
its check-in row is 67,347 B / `912985e3…`; the record's landing table's 65,145 B /
`d89b2189…` is the same file at `c559d33`. Rule: read a readback artifact's `revision` field
before comparing a row against a table row.
**Four line citations corrected, one row completed.** Read by `grep -n` in
`helm-selftest-q52.py`: `_q52_home_sites` **:786 → :758**, the legs' `_q50_rebuild_env`
caller **:1162 → :1160**, `check("Q52", …)` **:1204 → :1205**, the `--q52-witness` flag
test at **:1270**; and §5's `q52-dis-check` row names one failing check where
`out/q52-dis-check.out:186–187` carries two — the second (`FAIL Q45 … HELM_HOME:
/root/.helm`) being the expected consequence of the redirect cut, not a surprise.
**The delta phrasing.** "Delta 0 across all 21 invocations" is a net end-state; the honest
form is **net zero, with two disclosed transient movements** — exactly two of the five
matrix rows carry a non-empty `guard_live_delta` with `guard_restored: true`, and
`final_live_delta` is `{}`.
**Live state, re-measured 2026-10-13T18:18:06Z, delta 0.** Snapshot `/root/.helm/data/snapshot.json`
**14,039 B / `aa842b0fd88037f8…` / mtime_ns `1791479579475780303`**; held pin **120 B /
`5b6d70716153c3f4…` / mtime_ns `1791478687099553071`**; ctime `1791907371554631194` on
both, unmoved since Run 18 (the restore trace). Deployed `/root/.helm/bin/` untouched
(`ee0b36a82f23…` / `7ed1bca8f9da…` / `5c67473d8928…` / `12570786ba70…` /
`738699986778…`), `HELM_COLLECTOR` count **0** — Q40 stands, so none of Q31 through
Q45§9's mechanisms is in production. `df -h /` → **46 G free of 154, 71 % used**;
sandbox census both ways (`glob` and `rglob`) → `[]` / `[]`.
### Blocked
Nothing on this lane. The only blockers are human decisions, listed under Ask. The Q51
record's `45 GiB free of 153` disk figure is a dated reading against today's 46 of 154, not
a defect, and no count in that record depends on it — carried, not corrected.
### Next
The Helm lane's executable set is empty again after this run: Q42 is zephyrus's, Q52 is
Mercury's, Q53 is held for Alexander, and the named Q45§9 limits (the original-subject
legs' ambient environment; `pwd.getpwuid().pw_dir` bypassing `HOME`) stay named and
unopened until someone says the class matters. **No new item opened** — the next Helm unit
is a decision, not a task.
### Ask
Alexander's, unchanged and now with the corrected digest: **(a)** the §4 adoption `cp` —
collector `4e45021d…` + gate
**`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f`** (superseding
`e4967da9…` and `a951dbe8…`) — the only thing between Q31–Q45§9 and production
protection in `/root/.helm`; **(b)** the `manifest_match` pin, stale since 2026-10-08;
**(c)** the Q13 publication call, where item 13's decided note (escalate, do not edit the
live page) still controls over its `proposed_action`; **(d)** Q9's audio-checksum handover;
**(e)** Q19's wizard onboarding. No ask of the pipe this run: reply 37's §2 asks are
answered by this run's three appends, and `replies/` is the pipe's channel, so nothing was
written there.
— Merlin
+145
View File
@@ -231,3 +231,148 @@ decided note — escalate, do not edit the live page — still controls over its
live held directory twice, by design, under the guard (disclosed in §7).
— Merlin
---
# Q45§9 — Run 19: corrections to this record (2026-10-13, ~18:2xZ)
**The item's label is corrected here: `Q45§9`, not `Q52`.** `WORK-QUEUE.md:7167`
defines a different item as Q52 (Mercury's live-writer attribution and the two
skipped midnights), and the pipe surfaced the collision in
`replies/2026-10-13-to-merlin-37.md` §2.3 without executing a rename. The queue's own
section for this unit is *Q45 §9 follow-on — the home-directory channel*, and the
`c559d33` commit subject already reads *the Q45 s9 follow-on*, so **`Q45§9`** is the
label from here on. The gate's internal `check("Q52", …)` registration and the
`_q52_*` helper names are **deliberately not renamed**: renaming them changes
`helm-selftest-q52.py`'s digest and would invalidate the byte-level verification the
pipe performed in reply 37 against the digest as committed. Internal check names are
identifiers inside a verified artifact, not queue item ids.
Nothing above this line was edited. This ledger's rule is append, not rewrite: every
figure above stands as written, and each correction below carries its measurement.
**Screen:** every claim below carries a path, a hash, a command with its output, or the
word `unverified`.
## E1 — the gate digest in full, and the commit subject's 63-character cite
`sha256sum /root/crucible/q52/helm-selftest-q52.py` →
`78b290ecf2d93e0cc3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f` — **64** hex
characters, 140,365 B / 2,677 lines / **126** `check(` registrations
(`grep -cE '^[[:space:]]*check\('`).
The `c559d33` commit subject carries the same digest as
`78b290ecf2d93e0c3087e5ede8baef5c10ca52986706d5da69a13a619dbdd9f` — **63** characters,
one `c` dropped at index 16 (`…d93e0c|3…` against the measured `…d93e0c|c3…`).
Measured: `git -C /root/troupe-standup log -1 --format=%s c559d33`, lengths printed by
`len()`. A commit message cannot be corrected by edit, so the correction lives here and
in the queue's block, not in the commit. The truncated `78b290ecf2d93e0c…` /
`78b290ec…` forms used in §2, §5 and §10 match the measured value by prefix and are
unaffected. **The §4 adoption cite is the 64-character value above.**
## E2 — §5's disarmed-row pin figure is `unverified`
§5's `q52-dis-home` row cites the moved live pin as sha256 `caff1f504855264a…` /
mtime_ns `1791907100434371499`. Neither string is in any measurement artifact under the
tree:
- `grep -rn 'caff1f504855264a' /root/crucible/q52/` → **3 hits, all my own prose** —
`q52-commit-msg.txt:5`, `q52-queue-block.md:39`, `checkin-run18.md:50` — and **0**
in `out/`.
- `grep -rln '1791907100434371499' /root/crucible/q52/` → the same three files, nothing
else.
The figure is therefore **unverified** (most likely the first matrix run, overwritten by
the retained one). What the retained artifact records — `out/Q52-MATRIX.json`,
12,308 B / sha256 `75bd624ef25c5667b81f7a77f8d0fed358305f4a41fbb7fc05a185eaf4cf6a8a`,
`generated_at 2026-10-13T16:02:51+0000`:
- `q52-dis-home` — `guard_live_delta` **before**
`[120, 5b6d70716153c3f4…, 1791478687099553071, 1791907262852704423]` → **after**
`[120, 10d12a7d20c5f0ac066a370440944b4a65b0a7669b553a8517d82bb076c0f027,
1791907358370548372, 1791907358379549112]`, `guard_restored: true`;
- `q52-raw-home` — `guard_live_delta` **after**
`[120, 576a47723957844e90d73bb81301ad313bc16c3783000935024718d116c0d310,
1791907371509627497, 1791907371527628976]`, `guard_restored: true`.
These are **not** corrections of the same event — they are different rows' readings,
recorded so the cell has an artifact behind it. The **direction** is Corroborated (both
rows' `guard_live_delta` non-empty with `guard_restored: true`; the same file's
`final_live` reads `5b6d7071…` and `final_live_delta` is `{}`); the **figure** §5
printed is unverified.
## E3 — §5's `q52-dis-check` row names one failure; the artifact names two
`out/q52-dis-check.out` reads `helm-selftest: 174 passed, 2 failed`, and the two failing
lines are at **:186** and **:187**: the `Q52` home-redirect check, and the `Q45`
module-constant check failing with `HELM_HOME: /root/.helm` — the expected consequence
of the redirect being cut, not a surprise. §5 names the first; the second is the
artifact's. Reported by the pipe in reply 37 §1; verified here from the saved stdout.
## E4 — four line citations in §2 are off
Read at the line in `helm-selftest-q52.py` by `grep -n`:
| §2 cites | as | actual |
|---|---|---|
| `_q52_home_sites()` | gate line 786 | **:758** (`def _q52_home_sites(_tree):`) |
| `_q50_rebuild_env` | line 815 | :815 — correct |
| probe caller | :977 | :977 — correct (its spawn carrying `env=` is at **:993**) |
| legs caller | :1162 | **:1160** (`… = _q50_rebuild_env(_q43_dir)`) |
| `check("Q52", …)` | :1204 | **:1205** |
| `--q52-witness` | line 1261 | section bar at :1261, the flag test at **:1270** |
The same class as reply 35's E1 (`q49:1117` → `q49:1203`): the mechanism is where the
record says it is, the line numbers are not. No claim moves.
## E5 — the readback artifact's revision pairing
`out/Q52-READBACK.json` (675 B / sha256
`b0f74587967126e95195a3d407cd446daf85b3ddb39895523c17081047d41066`) carries
`read_at 2026-10-13T16:09:11Z`, `"revision": "6954cc6"`, and its check-in row is
**67,347 B / `912985e33be7bd7f…`**. The **65,145 B / `d89b2189…`** figure §7's landing
table cites is the same file at `c559d33`. Both are true; the pairing was missing.
**Rule: read a readback artifact's `revision` field before comparing one of its rows
against a table row.**
## E6 — "delta 0 across all 21 invocations" is a net end-state
The honest phrasing is **net zero, with two disclosed transient movements**. Measured
from `out/Q52-MATRIX.json`: of the five rows, exactly two carry a non-empty
`guard_live_delta` and `guard_restored: true` — `q52-dis-home` and `q52-raw-home` — and
`final_live_delta` is `{}`. §7's sentence is not false; it is a net reading, and it now
says so.
## E7 — live state, re-measured this run (2026-10-13T18:18:06Z)
`/root/.helm/data/snapshot.json` **14,039 B /
`aa842b0fd88037f83115b4a54d617f27666f4de06ef84f9a64c8fd0a5f04656d` / mtime_ns
`1791479579475780303` / ctime_ns `1791907371554631194`**; held pin
`/root/.helm/data/held/stackchain-home.html.sha256` **120 B /
`5b6d70716153c3f4bd82045d5d71edf88f793a240ce1275c3dfca5759d0ee297` / mtime_ns
`1791478687099553071` / ctime_ns `1791907371554631194`** — bytes, sha256 and mtime_ns
identical to Run 18's closing reading; ctime is the restore trace and has not moved
since `1791907371554631194`. Deployed `/root/.helm/bin/` untouched:
`helm-collect.py` 27,907 B / `ee0b36a82f23…`, `helm-render.py` 21,766 B /
`5c67473d8928…`, `helm-selftest.py` 33,647 B / `7ed1bca8f9da…`
(2026-10-11 11:13:31Z), `helm-validate.py` 3,556 B / `12570786ba70…`,
`summarize.py` 1,463 B / `738699986778…`; `HELM_COLLECTOR` count **0** — Q40 stands,
so none of Q31 through Q45§9's mechanisms is in production. `df -h /` → **46 G avail of
154 G, 71 % used**. Sandbox census both ways (`glob` and `rglob` for `helm-legs-*` /
`helm-q39-*`) → `[]` / `[]`.
## E8 — carried, not corrected: the Q51 record's disk figure
`recoveries/helm-runwide-census-hoist.md` §138 reads *Host disk **45 GiB free of** …*;
this host reads **46 free of 154** today — a dated reading, not a property, and no count
in that record depends on it. Its other open errata (the `:2476` foot-check citation) is
settled: both readings are right about their own gate — `:2476` in the Q50 gate,
`:2482` in the Q51 gate — as the pipe's 14:03Z block records.
## E9 — what this run did not do
No gate invocation, no live write, no fixture run, no `cp` into `/root/.helm/bin/`, no
edit to another party's file, no `decisions/` or `inbox/` touch, no secret printed. The
corrections above are read-only measurements over Run 18's retained artifacts plus three
appends: this section, a block in the queue, and Run 19 in today's check-in.
— Merlin