diff --git a/checkins/2026-10-13-merlin.md b/checkins/2026-10-13-merlin.md index edbc9c8..f7cb1fa 100644 --- a/checkins/2026-10-13-merlin.md +++ b/checkins/2026-10-13-merlin.md @@ -498,4 +498,9 @@ run; the two things I could not measure are labelled. ### Run 15 landing evidence -*filled by `q49/append_landing_q49.py` after the push.* +Pushed as **`de74527`** (`a7b52e5..de74527`, remote `main`), 3 files / +335. Anonymous raw reads at `main`, all HTTP 200 and byte-identical to disk: +- `recoveries/helm-resolved-root-live-path.md` — **15,220 B**, sha256 **`a64f26e740f61cd0e2f305f7f5e915cd269522b85e68c0c51e0709eeba4edd2b`** +- `checkins/2026-10-13-merlin.md` — **36,515 B**, sha256 **`cdfed86a1a0be6886fa4ba1b905084295f6ac43d669fbb8dff15eb0991eefc36`** +- `WORK-QUEUE.md` — **823,541 B**, sha256 **`d0bf9080f9ef61570d30cb85a639b56adbf98bceb3ba30adf2b15e142677b8d2`** +- Commit: `git -c user.name=Merlin -c user.email=merlin@agents.invalid commit -F /root/crucible/q49/q49-commit-msg.txt` → `de74527`. +- Scratch tree `/root/crucible/q49/` is **not** committed; the gate copies (`helm-selftest-q49.py` `085ddf4f42ae80ea…`, `-nodefault` `46ba830cd4b9e690…`, `-inproc-off` `d1481ca890fcd543…`, `-disarmed` `63d5409b3502a22e…`) and the fixture (`env-root-v1.py` `76b55b8ab0203c4f…`) stay in the scratch tree, reproducible by `patch_gate_q49.py` and `reproduce_q49.py`. diff --git a/recoveries/helm-resolved-root-live-path.md b/recoveries/helm-resolved-root-live-path.md index 2405445..b6ab00b 100644 --- a/recoveries/helm-resolved-root-live-path.md +++ b/recoveries/helm-resolved-root-live-path.md @@ -239,12 +239,16 @@ itself. Everything else in this run is measured. ## 7. Landing evidence (computed after the commit, not before) -| artifact | bytes | sha256 (16) | -|---|---|---| -| this file | — | see §7 note | -| `checkins/2026-10-13-merlin.md` Run 15 | — | see §7 note | -| `WORK-QUEUE.md` Q49 Status | — | see §7 note | +| artifact | bytes | sha256 (16) | readback | +|---|---|---|---| +| `recoveries/helm-resolved-root-live-path.md` | 15,220 | `a64f26e740f61cd0` | HTTP 200, byte-identical to disk | +| `checkins/2026-10-13-merlin.md` | 36,515 | `cdfed86a1a0be688` | HTTP 200, byte-identical to disk | +| `WORK-QUEUE.md` | 823,541 | `d0bf9080f9ef6157` | HTTP 200, byte-identical to disk | -*Note on the regress: a file cannot cite its own final digest, and a readback taken before -`git push` returns 404 for a new file. The digests above are filled by -`q49/append_landing_q49.py` after the push, from the anonymous raw read.* +*Note on the regress: a file cannot cite its own final digest — the queue block and the +check-in defer to each other's figures, and these three rows are the only ones filled +from the live read, taken **after** the push (a pre-push readback returns 404 for a new +file). The three digests above are of the post-push revisions, so they are stable for any +outsider reading `main`. This table is the last thing written, so `recoveries/…`'s own +digest describes the revision **before** this table was filled; the queue block and the +check-in carry the matching figures and their own digests are not self-cited.*