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:
@@ -35,8 +35,9 @@ straylight against rift; no finding is open. M5d (scheduler and compaction, spec
|
|||||||
`docs/specs/2026-10-03-m5d-scheduler.md`) is split: M5d-1 (epochs and compaction) is done,
|
`docs/specs/2026-10-03-m5d-scheduler.md`) is split: M5d-1 (epochs and compaction) is done,
|
||||||
reviewed in `docs/implementer-log.md` and checked on straylight (spec 7); no finding is open.
|
reviewed in `docs/implementer-log.md` and checked on straylight (spec 7); no finding is open.
|
||||||
M5d-2 (heartbeat, cron, ToolSummary, live-slot isolation) is done on branch `m5d2`, reviewed in
|
M5d-2 (heartbeat, cron, ToolSummary, live-slot isolation) is done on branch `m5d2`, reviewed in
|
||||||
`docs/implementer-log.md`; finding 1 closed by task 11. The spec 7 device check on straylight is
|
`docs/implementer-log.md`; finding 1 closed by task 11; spec 7 device-checked on straylight
|
||||||
not yet run.
|
(heartbeat on slot 2 left a following slot-0 turn's `cache_n` at 1398 of 1399; `jobs/tier.toml`
|
||||||
|
promoted only a trusted note).
|
||||||
P22 (proposed, not applied) makes Boxmaker a fleet of
|
P22 (proposed, not applied) makes Boxmaker a fleet of
|
||||||
independent agents, one per host, deployed with Nix in a last milestone, M8; `flake.nix` builds
|
independent agents, one per host, deployed with Nix in a last milestone, M8; `flake.nix` builds
|
||||||
every binary, the tool image and a dev shell. Work happens on titan (macOS, no Nix); build and run
|
every binary, the tool image and a dev shell. Work happens on titan (macOS, no Nix); build and run
|
||||||
|
|||||||
@@ -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
|
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,
|
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
|
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
@@ -1126,4 +1126,24 @@ test is byte-identical to `docs/plans/M5d2/files/`. Trailer
|
|||||||
| Log row | 1 `done`, first gate pass, under the header |
|
| Log row | 1 `done`, first gate pass, under the header |
|
||||||
| `make gate` | `gate: ok`, 1575 tests |
|
| `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.
|
||||||
|
|||||||
Reference in New Issue
Block a user