docs: M5d-2 device check on straylight

Spec 7: heartbeat on slot 2, then a following slot-0 turn with cache_n 1398 of 1399;
jobs/tier.toml promoted only a trusted note. Private $HOME, production untouched.
This commit is contained in:
2026-10-03 18:46:31 -07:00
parent 338df8294b
commit cb3e0eeb35
3 changed files with 28 additions and 4 deletions
+4 -1
View File
@@ -184,4 +184,7 @@ no commit twice (context exceeded: whole implementer log, then crate exploration
after T62/T63. Tasks 07 to 10 then ended cleanly. Finding 1 (`last_heartbeat` only on Ok) was
closed by task 11 (I20, T64): first-gate pass, H1 as quoted. Clippy first-gate on 05 and 06,
USAGE indent on 10, an extra gate on 04 (I18), and a duplicated 03 log row (I19). Device check
not yet run.
passed spec 7: heartbeat on slot 2, then a following slot-0 turn with `cache_n` 1398 of 1399;
`jobs/tier.toml` promoted only the trusted note. A long idle gap after the first live turn lost
the prefix (unified pool / other occupancy), which is P9, not a mixed-slot bug. `every_s = 20`
with `last_heartbeat` at tick start re-fired immediately after a long pulse.
+21 -1
View File
@@ -1126,4 +1126,24 @@ test is byte-identical to `docs/plans/M5d2/files/`. Trailer
| Log row | 1 `done`, first gate pass, under the header |
| `make gate` | `gate: ok`, 1575 tests |
The spec 7 device check on straylight is still next.
Device check, 2026-10-04 UTC, on straylight (`target/debug` of `m5d2` at `338df82`; Ornith slot 0
live, slot 2 background; slot 1 left busy; a private `$HOME` at `/home/kyle/boxmaker-m5d2-check`,
production daemons untouched, no `gatewayd`). Empty `grants/` (memory tools are built-in; no
`[runner]`). `[compact] threshold` stayed 0.85. Heartbeat answers stayed in `sessions/heartbeat/`.
A first live session (`m5d2-live`) lost its prefix (`cache_n` 0 of 1398) after a long idle gap:
`every_s = 20` plus `last_heartbeat` stamped at tick start made the standing session pulse
repeatedly (11 usages) while slot 1 held ~70k of the unified pool. A tight retry (`m5d2-live3`)
while a heartbeat turn ran on slot 2 then a following main-slot turn immediately afterwards held
the prefix.
| Check | Result |
|---|---|
| Heartbeat on the background slot | `sessions/heartbeat/0.jsonl` `SessionStart.slot` is 2; first pulse at 01:41:25Z with the time line and `heartbeat.md` |
| Following main-slot turn `cache_n` near previous total | `m5d2-live3` turn 1: `cache_n` 0, `prompt_n` 1377, `predicted_n` 22 on slot 0; turn 2: `cache_n` 1398, `prompt_n` 24 (expected 1399). No `CacheLoss`. Slot 1 stayed busy. |
| `jobs/tier.toml` promotes only a trusted note | Job `job-tier-20261004t0144` on slot 2; `memory` `add` `file=memory` of the amber-kettle line; `memory.md` holds only that fact; `bxctl memory log` `2026-10-04-0001` `add` `memory.md` |
| Journal has the edit; untrusted note is still a note | `memory/edits/2026-10.jsonl` id `2026-10-04-0001`, `untrusted` false, `after` the kettle line; notes.md still has the pewter-spoon entry marked untrusted |
The listing in the job prompt was the `bxctl memory tiers` text (loopd does not special-case
tiering). A leftover `started` for `job-tier-20261004t0145` is from `* * * * *` firing the next
minute; the stack was stopped there. No Mattermost.