session 2026-08-04: PENDING-92/93/94 + the replay-never-resumed finding + l1-replay-sampler
Filed PENDING-92 [HARDENING] idle ladder (cool/deep unreachable, spec §9A.1 divergence), PENDING-93 [PROPOSAL] event_seqs normalisation, PENDING-94 [ESCALATE] the resume floor — minCursor pinned at 0 by two non-participating modules, so 13/13 restarts rebuilt from seq 0 and the catch-up branch has never executed. Recall never worked either (retrieval_count = 0 across the whole April-June graph); same fact from the other end. Adds scripts/l1-replay-sampler.py (external read-only sampler, four positive controls, refuses to run blind). Note to Seb pushed separately as CapableMind-AI@ad285df. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WuMjg3ipEVa3n8CoSzoyvc
This commit is contained in:
co-authored by
Claude Opus 5
parent
ad2fb07698
commit
9c2a7c985c
@@ -8,6 +8,7 @@ metadata:
|
||||
node_type: memory
|
||||
type: project
|
||||
originSessionId: fd7dd184-f64d-4f13-a1bd-abe1fa26192e
|
||||
modified: 2026-08-04T08:01:19.473Z
|
||||
permalink: claude-memory/project-l1-reliability
|
||||
---
|
||||
|
||||
@@ -18,7 +19,19 @@ permalink: claude-memory/project-l1-reliability
|
||||
|
||||
---
|
||||
|
||||
## Current state (as of 2026-08-03)
|
||||
## Current state (as of 2026-08-04)
|
||||
|
||||
- **The replay is running and is NOT on the projected curve.** Real denominator is **39,089 events**, not the ~19,925 the 08-03 wrap recorded; **nodes are not the progress metric** (the log writes `Phase 2 replay: N/39089`). Position 22,400/39,089 (57%) at 07:59 UTC. Three distinct rate regimes observed in 14 hours: **~2 events/min overnight**, **~150/min in a 35-min morning burst**, **~12.5/min now**. No mechanism yet explains the regime changes.
|
||||
- **Three mechanism hypotheses proposed and all three refuted the same morning** — machine sleep (killed by `pmset`: last sleep/wake event 2026-08-03 08:54 CEST, machine awake 24 h), the entity-pipeline 30 s timeout (killed by a windowed count: **0 occurrences overnight** against 2 in a 35-min morning window), and work-queue drain gating (killed by observation: 44 min with no progress *through* two `warm→active` transitions). Each matched a constant and none was a cause. **Do not propose a fourth from log-shaped evidence.**
|
||||
- **Root instrument problem, now fixed:** the replay logs progress once per 100 events — one data point per ~51 min in the slow regime, **telemetry coarser than the failure mode**, which is why all three hypotheses survived as long as they did. `~/dotfiles/scripts/l1-replay-sampler.py` (also staged at `BetterMemories.io/scripts/`) samples the substrate every 30 s: node/edge/chain counts, `coherence_evaluated`, replay position, idle state, process CPU. Four same-run positive controls; prints `INSTRUMENT NOT VERIFIED` and refuses to run rather than emitting zeros while blind. Output `~/.capablemind/diagnostics/replay-samples-mindfabric-00.jsonl`.
|
||||
- **Densification is climbing, and the rebuild buys a constant factor only.** edges/node 4.85 → 8.0 → **11.29**; chains/node **10.47** (72,381 chains at 6,915 nodes, 57% through). Linear extrapolation ~125k chains vs the pre-governor 813k — a ~6.5× reduction, but a **floor, not an estimate**, since both ratios are still rising. `getChainsContainingSeq` stays linear in chain count. **PENDING-93 filed.**
|
||||
- **`coherence_evaluated` = 0 of 72,381 — still zero, now sampled continuously.** The 08-03 literal question stays open and will answer itself in the sampler stream.
|
||||
- **Sixth instance of governor-exists-and-never-engages, first found by looking rather than tripping: the idle ladder's bottom half is unreachable.** 2,393 transitions across the whole log in exactly two shapes (`active→warm` 1,197 / `warm→active` 1,196); **zero** to `cool` or `deep` ever; **zero** `idle_only` deferrable drains ever — so background training, consolidation and Ollama batch windows have never executed on this instance. Cause: `tick()` returned early on `warm`, so the only warm→cool trigger was `onAgentDisconnect()`, whose sole caller is the **shutdown sequence**. Spec §9A.1 requires the time-based path (*"'Agent disconnected' maps to 'no HTTP activity for cool idle threshold'"*), so this is a **spec↔code divergence**. **PENDING-92 filed; fix built on branch `fix/idle-ladder-service-mode-cool-descent` (`d5e1e79`), flag-off by default, 42/42 idle tests green, `tsc --noEmit` clean. NOT merged, NOT enabled** — enabling starts a subsystem that has never run in production.
|
||||
- **Why the unit tests never caught it:** the existing cool→deep test reaches `cool` by calling `onAgentDisconnect()` directly. It proves the transition works and proves nothing about whether anything fires it. The new tests are a **discrimination gate** — identical elapsed time and tick must yield different verdicts flag-off vs flag-on.
|
||||
- **`[FIX]` applied:** `BM_CPU_PAUSE_THRESHOLD=1.0` written to `~/.capablemind/env` (repo `CLAUDE.md` documents the 0.65 default as a starvation loop on Ollama-saturated hosts; 497 pauses in the log). **Inert until restart.** Honest scope: only 6 pauses across 8.5 overnight hours, so this was never the main brake.
|
||||
- **⚠ A restart costs the whole run.** Every restart logs `kind: rebuild (from scratch — derived state reconstructed) (minCursor=0)` across all 11 modules — replay progress is **not resumable**. Every pending fix needs a restart, so nothing lands until the replay finishes or is deliberately abandoned.
|
||||
|
||||
## Previous state (as of 2026-08-03)
|
||||
|
||||
- **The baton rule is LIFTED.** The 2026-06-06 instruction — *"Do not re-enter L1 until Seb responds or pushes — his move"* — was steward-lifted 2026-08-03 (*"if we can move this ahead then let's do what it takes"*). Context the steward supplied: Seb is not silent by choice; he is deep in a frustrating rabbit hole on Peter's side project, which borrows heavily from L1. Seb's last commit remains **2026-06-07**; the steward's own **2026-06-23** (`#175` N6, `/health` auth tiering).
|
||||
- **mindfabric-00 was event-loop-pinned for 6+ days and nobody was looking.** 100% CPU, `/health` silent while port 3011 listened, PID 874 up 6d 9h. Same signature as the June pin, *after* the N6 fix.
|
||||
|
||||
Reference in New Issue
Block a user