Files
dotfiles/claude/memory/session-2026-05-27-l1-runaway-n6-corrected-hermes-scout-scan-skill-family.md
T
David F GliddenandClaude Opus 4.8 3f9a89b00c chore(memory): Basic Memory trial begins — sync normalization baseline (283 files)
Basic Memory v0.21.6 first sync over the live memory dir (steward-authorized
live-dir trial, Option A 2026-06-06): adds permalink: to frontmatter, refolds
long YAML description lines, strips final newlines. Bodies untouched —
verified via full diff classification. From this commit forward, any diff in
claude/memory shows only what Basic Memory or the session writes.

Trial design: MemPalace untouched as incumbent; git status check on this dir
at every wrap; end-of-day evaluation (recall quality, sync robustness,
rebuild-from-files, malformed-file behavior).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-06 09:52:17 +02:00

14 KiB
Raw Blame History

name, description, metadata, permalink
name description metadata permalink
session-2026-05-27-l1-runaway-killed-n6-root-cause-corrected-hermes-scout-delivered-the-landscape-tooling-scan-skill-family-built-generalized-via-lens-cards-proven-on-studium-engine-governed-skill-harvest-folded-into-wake-wrap-pulling-thread-now-back-to-arc-stage-f Woke into ARC Stage F but the day became a CapableMind/tooling arc (productive). Killed the live N6 runaway (the N5 duplicate job had resurrected, 26h pegged); read-only EXPLAIN OVERTURNED the audit-delta's entity-fuzzy-match prime suspect — real N6 = the temporal causal subsystem (245k edges from 5,752 events + full-table SCANs); posted the correction to Seb on #170. Delivered the Hermes Agent scout (PENDING-22). Built /landscape-scan + /tooling-scan, generalized them via per-workstream lens cards (proven by running /tooling-scan studium-engine), and folded a governed skill-harvest step into /wrap-up + /wake-up (PENDING-23). Pulling thread now back to ARC Stage F remaining.
node_type type originSessionId
memory project 9b13b6ec-e1d8-473f-a502-b411a44c1c96
claude-memory/session-2026-05-27-l1-runaway-n6-corrected-hermes-scout-scan-skill-family

Session 2026-05-27 — L1 emergency + Hermes scout + the scan-skill family; pulling thread → ARC Stage F

Woke via /wake-up into the ARC Stage F thread (per 2026-05-26's wrap). The day did not stay there — the steward opened a CapableMind research arc, and a live L1 emergency surfaced inside it. All productive; ARC was never touched, so it remains clean for the next session to resume.

The arcs of the session

1. L1 live emergency — the N5 runaway, and the N6 root cause CORRECTED. A Hermes-recon sub-agent (derailed onto L1 by the steward's mid-flight "we're still having problems") found — and I verified — that "BMF offline by design" was false: the duplicate launchd job com.capablemind.bmf (KeepAlive=true, the N5 finding) had resurrected and run 26h+ pegged at ~99% CPU (PID 848, elapsed 1d02h), while the legit com.capablemind.bettermemories crash-looped every ~11s on the data-dir lock (70 MB lock-conflict spam). The 2026-05-25 "booted out the duplicate" claim never held. With steward authorization ("EXPLAIN first, then clean up"):

  • Captured a fresh stack sample of PID 848 → confirmed the synchronous Statement.all() → sqlite3BtreeNext → readDbPage btree-scan signature.
  • Ran read-only EXPLAIN QUERY PLAN against the live mindfabric-00 sqlite DBs. This OVERTURNED the audit-delta's prime suspect: entity fuzzy-match (entity/storage.ts:262) is exonerated — entity is only 1,717 rows (1,657 topic), all three resolution queries SEARCH … idx_entity_status_facet (indexed). Reconciliation (reconciliation.ts:32, afterReplay) also exonerated (indexed, 0 dirty rows).
  • Real N6 = the temporal CAUSAL subsystem. Graph exploded: caused=245,535 edges, causal_chain=238,492 chains from ~5,752 events (~42 edges/event); 238,505 chains coherence-unevaluated. Hot queries are full-table SCANs: SELECT * FROM caused, SELECT * FROM causal_chain WHERE 1=1 (storage-sqlite.ts:421/843/883; EXPLAIN = SCAN, no index). Still NOT pinned: the exact full-scan caller in the hot per-event/per-batch path (Seb's trace, or one more focused pass).
  • Cleanup (steward-authorized): killed PID 848; booted out the legit job (restorable, NOT disabled); booted-out and disabled the rogue com.capablemind.bmf (durable N5 fix); truncated the 70 MB log. BMF is now genuinely parked; logchain + cursors intact. Restore: launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.capablemind.bettermemories.plist after Seb's code fix.
  • Sent to Seb (steward approved literal text): #170 comment issuecomment-4553635193 — corrects the record + delivers the pin. Corrected the audit-delta §2g in-record (dated 2026-05-27 addendum, original prose preserved) → committed f97557d, pushed to capableMind_docs origin (so the #170 reference resolves).

2. Hermes Agent scout — DELIVERED (PENDING-22). Steward + jurist-drafted reconnaissance of NousResearch/hermes-agent (~134k★) vs the four L1 pain points. Three parallel recon sub-agents (memory/ingestion, skill system, sub-agent/ACP), code-grounded. Deliverable: docs/thinking/David/l1-reliability/hermes-agent-scout-2026-05-27.md (committed+pushed f97557d). Two stale-fact corrections to the brief (verified vs source): pain #1 ("confidence discarded") is STALE — Amendment 61 shipped it end-to-end (floor→ceiling→persisted→recall-weighted query-router.ts:657-680); pain #2 substrate is a hybrid (SurrealKV + better-sqlite3 + LanceDB + file-logchain), SurrealDB mid-retirement. Headline: CapableMind is ahead on epistemic integrity (Hermes's default memory has none; only an opt-in trust_score plugin); the SKILL.md system is the real lesson for pain #4 (CapableMind has no procedural memory). Governance flag: Hermes's autonomous self-write fork is exactly what the loop-is-load-bearing constraint refuses — any borrow must restore the authorization boundary.

3. The scan-skill family — built, generalized, proven. The steward wants to study the landscape "every couple of days." Built:

  • /landscape-scan (competitive lens: two-tier — capability pulse + the governance threat-watch) + landscape-register.md (seeded: Hermes CONFIRMS, OpenRouter INFRA; the prior April Hermes study indexed; watch list). The sharpening: scanning for "more capable" is a treadmill; the scan that earns its keep is "is anyone building the governed/epistemic-integrity angle?" (so far: no).
  • /tooling-scan (build-lens: anti-shiny — a tool earns adoption only against a named bottleneck, at switching-cost, with governance-grain fit; incumbent-bias flag) + tooling-register.md. First test produced the disciplined result: MemPalace-alternatives → WATCH+HARVEST not adopt (BMF is meant to replace MemPalace; their value is architectural validation).
  • OpenRouter (Seb's find) assessed: INFRA for BMF's remote teacher/slot tier (TRY, Cloud-tier; NOT embeddings; never enable the 1% prompt-logging discount = irrevocable commercial-use rights; use ZDR+BYOK). In tension with Standalone sovereignty.
  • GENERALIZED (steward: "generalize of course — simple exterior, complex underneath"): both skills gained a §0 lens-resolution step; CapableMind specifics extracted to lens-capablemind.md; new lens-studium-engine.md (grounded in the seed brief). /tooling-scan studium-engine ran end-to-end — proving the lens-card mechanism. One method, many lenses; adding ARC later is a new card, not a new skill.
  • studium-engine tooling scan (first run) → studium-engine-scan-register.md: Verbatim RAG now has an offline ModernBERT span model (strengthens the Stage-1 substrate); Docling+Surya answers the open pdf-ocr slot; OCR4all for incunabula; LIFT (TEI→KG) for voice-attribution. Feeds the seed brief's §10.2 jurist-led deep audit.

4. Governed skill-harvest folded into the continuity skills (PENDING-23). The steward asked to refactor Hermes's "skills self-improve" idea into our way of working. Built the governed analog: /wrap-up §1.6 "Skill harvest" (propose create/patch/retire from the session + ledger; never autonomous) + §8 output field + propose-only constraint; /wake-up glance for unauthorized proposals (§2.a + §3); provenance comments on both skills. The crux: it's [PROPOSAL]→[REVIEWED] turned on our own tooling — self-improvement that stays governed; "no harvest" is valid (inverts Hermes's "nothing-to-save shouldn't be the default"). This wrap is its first live run (see Skill harvest below).

Returns / mood

  • R1 — asserted filesystem topology from a misread ls -la. Claimed wake/wrap/symmetria were duplicated across .claude + dotfiles (a context-rot risk) — wrong; they're symlinks (the ls -la followed the link). Caught by an -L/diff check before the false claim ossified; corrected in-record in PENDING-23. New drift: asserting-fs-state-from-a-misread-listing (kin to acting-on-inferred-not-read). Verify with -L, not ls -la of a symlinked dir.
  • Discipline that paid off repeatedly: verify-before-asserting against source — caught two stale premises in the jurist's Hermes brief; confirmed the Hermes project is real (past Jan-2026 cutoff) before trusting it; verified the live runaway myself before relaying the sub-agent's claim; read the studium seed brief before writing its lens card; overturned the audit-delta's own prime suspect by EXPLAIN rather than inheriting it. The day's through-line was read the actual source.
  • The contamination-aware design choices: the scans are generative not anxious / anti-shiny; the skill-harvest resists the quota shape; the tooling verdicts surface, don't adopt. Each is the governed inversion of Hermes's ungoverned grain.

Pulling thread (singular)

Back to ARC Stage F remaining. Today was a CapableMind/tooling arc; the steward's wrap arg is explicit — "so we can move back to ARC." ARC is untouched and clean. Per the ARC tracker: A–E done; Stage F dwellings/Compass shipped+published (Second Edition live); the Compass optical-sizing (ELEVATED) resolved 2026-05-26. Remaining Stage F: content-types.yml generator · per-piece marginalia render · vignette Phase 1 · the audits (SCSS cascade + Hakyll-simplicity + code-represents-spec) · minor aria-label-per-link a11y. Stage G (jurist → content-typology OPERATIVE) closes the arc.

Actionable resumption point (as of wrap — re-judge against what changed)

ARC repo ~/_Dev/animal-davidglidden-eu on main @ e1d0f12, clean (only the two non-ours _backup_2026-05-15* font dirs untracked). Candidate first move: read the ARC tracker (project-arc-rework.md) + ARC's local CLAUDE.md, confirm with the steward which remaining Stage F item leads (generator / marginalia / vignette / audits), branch fresh from main. Nothing from today blocks ARC.

Literal question for next-Claude

Which remaining Stage F item does the steward want to lead with — the content-types.yml generator (the most structural, and the one Stage G's content-typology-OPERATIVE close most depends on), or a lighter one (vignette Phase 1 / the a11y pass) if the day is fragmented? (Secondary, carried unanswered from 2026-05-26: has the steward seen the SVG Compass render correctly on a non-Mac device?)

Pause statement

The CapableMind/tooling arc is at a clean summit — L1 emergency resolved + reported to Seb (in his court), Hermes scout delivered to the jurist, the scan-skill family built/generalized/proven, the skill-harvest practice live. I'm turning back toward ARC. I don't know what will have changed on return (Seb may respond on #170; the jurist may engage PENDING-22/23). What I want to find still pulling: ARC Stage F, resumable from a clean main.

Skill harvest (this session — first live §1.6 run; PROPOSALS for steward authorization, NOT yet written)

  1. CREATE bmf-diagnose (strong) — the N6 method, hard-won today and we'd re-derive it: find a wedged/runaway process → sample the stack → read-only EXPLAIN QUERY PLAN against the live sqlite (WAL-safe, separate connection) → exonerate/confirm the suspect query → find the real scan target by table row-counts → pin. Encodes "don't inherit a prior diagnosis; verify it."
  2. CREATE l1-audit-revalidation (weaker — already partly documented in the audit-delta §0 method) — the git-dated "what-claimed → what-the-record-shows → status" re-validation pass.
  3. PATCH /wake-up §2.d (minor, defer) — add ~/_Dev/studium-engine to the git-state repo list once it has code (pre-spec now, so not yet). Recommendation: bmf-diagnose is the one worth authoring; the others can wait.

Decisions deferred (and why)

  • The two recommended studium Stage-1 trials (Verbatim RAG offline substrate; Docling+Surya+OCR4all conversion) — surfaced, NOT adopted; studium is pre-spec (seed brief awaiting jurist). Spec-phase decisions.
  • OpenRouter adoption — surfaced as TRY; it's a product/runtime call (steward + Seb + jurist), not done.
  • Committing the uncommitted research files + dotfiles skill edits — left for steward (see loose ends).
  • The thinking/README index update + Peter summary — the repo convention says update on new research/ files; deferred (bigger index edit; flagged).
  • ARC publishing-pipeline skill set (linter, typographic setting — the french-typography-pass family) — named as the known future ARC skill set; not built (ARC's need, distinct from scans).

Pointers

  • L1: audit-delta l1-reliability/l1-audit-delta-2026-05-24.md §2g (2026-05-27 addendum); Seb #170 issuecomment-4553635193; N6 stack sample /tmp/bmf_sample_848_2026-05-27.txt; suspect-exonerated source BetterMemories.io/src/modules/entity/storage.ts:262, real locus temporal/storage-sqlite.ts:421/843/883.
  • Hermes scout: l1-reliability/hermes-agent-scout-2026-05-27.md (PENDING-22). Clone (throwaway) /tmp/hermes-agent-scout.
  • Scan family: skills ~/dotfiles/claude/skills/{landscape-scan,tooling-scan}/SKILL.md (symlinked into ~/.claude/skills/); registers + lens cards in CapableMind-AI/docs/thinking/David/research/ (landscape-register.md [committed 81ec415], tooling-register.md, lens-capablemind.md, lens-studium-engine.md, studium-engine-scan-register.md — last four UNCOMMITTED).
  • Skill-harvest: /wrap-up §1.6 + /wake-up §2.a/§3 (PENDING-23).
  • studium-engine: seed brief ~/_Dev/studium-engine/docs/seed-brief.md; lens lens-studium-engine.md. The frame: ARC (near-ready) ← Chamber (thinking of what gets published) ← studium-engine (the engine that animates the Chamber).