docs: M5d-2 task 11, failed heartbeat still advances last_heartbeat

Review finding 1: last_heartbeat and TickWork::Heartbeat were gated on
outcome.is_ok(). The given test fails today with left: [] / right: [Heartbeat].

Co-Authored-By: Grok 4.6 <noreply@x.ai>
This commit is contained in:
2026-10-03 18:20:47 -07:00
co-authored by Grok 4.6
parent 85f70de5eb
commit 3940588ce7
4 changed files with 205 additions and 5 deletions
+14 -2
View File
@@ -70,8 +70,9 @@ its own. Before task 01 it is **1508** (straylight, rustc 1.98.1 / clippy 0.1.98
| 08 | After a turn, opted-in `ToolResult` without a `ToolSummary` gets a background summary appended with the result's labels | loopd | 1563 | 6 | 2, 2 |
| 09 | `memoryd` indexes `ToolSummary` as kind `summary`; `recall` finds it and taints when untrusted | memoryd | 1568 | 5 | 1, 1 |
| 10 | `MemoryCommand::Tiers`, `bxctl memory tiers`, starter `config/jobs/tier.toml.example` | bxcore, memoryd, bxctl | 1574 | 6 | 1, 1 |
| 11 | A failed heartbeat turn still sets `last_heartbeat` and pushes `Heartbeat` | loopd | 1575 | 1 | 1, 1 |
After task 10, the design model runs the M5d-2 device check (spec 7) on straylight: a heartbeat
After task 11, the design model runs the M5d-2 device check (spec 7) on straylight: a heartbeat
turn on the background slot leaves a following main-slot turn's `cache_n` near its previous
total; a `jobs/tier.toml` for the check promotes only a trusted note.
@@ -90,6 +91,8 @@ happy-path tests will miss them.
(task 08).
- A secret `ToolSummary` is skipped when the index is private (task 09).
- Untrusted notes appear in `Tiers` and are marked; they cannot be omitted (task 10).
- A failed heartbeat turn still advances `last_heartbeat`; the next tick before `every_s` does
not retry (task 11).
## Known limits
@@ -129,4 +132,13 @@ OPENCODE_MODEL=llama.cpp/ornith-1.5-35b-a3b RESUME=1 \
tools/run-plan.sh docs/plans/M5d2 01
```
After task 10, the gate count is 1574. Then the device check above.
After task 11, the gate count is 1575. Then the device check above.
Task 11 is the M5d-2 review follow-up (finding 1). From the repository root, with the OpenCode
TUI closed:
```sh
OPENCODE_MODEL=llama.cpp/ornith-1.5-35b-a3b RESUME=1 \
SLOTS_URL='http://straylight:11434/slots?model=ornith-1.5-35b-a3b' \
tools/run-plan.sh docs/plans/M5d2 11
```