Files
dotfiles/claude/memory/MEMORY.md
T
David F Glidden 3254dcb697 session close 08-17: AMENDMENT 1 complete, binding rule ratified
The truncation and the unclosed fence are both resolved; A3's binding rule is
ratified and quoted verbatim in corpus/v2-stratum-tags.yaml.

⚠ Banked: a governed record's own FORMATTING can make an entry invisible to the
check that guards it while the check reports clean. The re-paste indented the
body but left the heading at column 0 — had it indented the heading, RE_HEAD
would have stopped matching and the amendment would have vanished from
register-integrity with no alarm. Third instance in a week of a check whose
subject sits adjacent to the property that matters.
2026-08-17 14:23:01 +02:00

87 lines
20 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: ''
metadata:
node_type: memory
title: MEMORY
type: note
permalink: claude-memory/memory
originSessionId: 22915403-bc5d-4796-9c7d-196b7c30d2f9
modified: 2026-08-09T19:50:40.617Z
permalink: claude-memory/memory
---
# Claude Code Memory
## Standing preferences
*Entries keep their rule inline when they fire at a moment I would not recognize as needing a lookup; they shrink to a pointer when the trigger is loud enough that I'd open the file anyway. A ⚠ constraint always travels with the workaround it limits.*
**Rules that fire silently — keep these in front of me**
- [Fowler's rules for quotation](feedback_fowlers_rules_quotation.md) — single quotes primary, double for nested, logical British punctuation order. All writing.
- [Canadian spelling in ARC prose](feedback-canadian-spelling-arc-prose.md) — centre/colour ("almost EU"). Draft all steward-voiced prose this way; corpus "center" = autocorrect drift (cleanup open).
- [Close thoroughly — no frequent deferrals](feedback-close-thoroughly-no-frequent-deferrals.md) — **frequent deferrals ARE how the cloud accumulated.** Close ALL of a block that's closable-now; for the rest, **name the specific dependency**.
- [Shorter, concentrated sessions](feedback-shorter-concentrated-sessions.md) — ONE tightly-scoped high-leverage bite taken all the way, then wrap; hold the rest as ranked horizons.
- [Constitution-as-block, then pull-based corpus](feedback-constitution-as-block-then-pull-based-corpus.md) — finish the **constitution as one block FIRST**, then corpus-into-spec **pulled by what each engine phase needs**. **Bounded question → bounded answer**; keep open-thread count LOW.
- [Removing a claim ≠ removing the reliance](feedback-removing-a-claim-is-not-removing-the-reliance.md) — cutting an unsupported sentence can **hide** the gap; the dependency survives, now invisible. Test: does the conclusion still *need* it?
- [Derive the rule from the consumer, not the survivor](feedback-derive-the-rule-from-the-consumer-not-from-the-survivor.md) — choosing between two disagreeing implementations is **selection, not derivation**. Derive from what a CONSUMER must do.
- [Rank on fields you actually write](feedback-rank-on-fields-you-actually-write.md) — a consumer ranking by an evaluative field nothing populates degrades to trivial order while claiming to rank. Verify scoring fields end-to-end; prefer signals already captured.
- [The central path — answerability, not purity](feedback-central-path-answerability-not-purity.md) — the contamination recursion is probably irresolvable, so **bind the claims, don't certify the parties**. Route by claim-type: *checkable* → produce the check + a falsifier; *judgment* → disclose standpoint in one line, decide, record; *undecidable* → name it open. **One layer, then act — never audit the audit.**
- [Notes are part of the work](feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md) — footnotes/endnotes are integral: KEEP+CONVERT (`<sup><a>`→`[^N]`), never drop on graduation.
- [One-shot instruments are proportionate](feedback-one-shot-instruments-are-proportionate.md) — a measurement answering a question **asked once** is NOT a directive violation; its counterfactual is an **assertion**, not a durable tool. The violation is **re-writing what's already banked** (rule of three → ladder). *Too few promoted*, not *too many built*.
- [Grounding finds my errors, not my support](feedback-grounding-pass-finds-errors-not-support.md) — **three packages running, every omission cut AGAINST my own case.** Ground in TWO passes: (1) what did I get wrong? (2) **what already says this?** Search the register for the CONCLUSION, not just the citations. ⚠ Quote from the FILE, never from the relayed message — placement adds and cuts.
- [Resurface banked notes before re-deriving](feedback-resurface-banked-notes-before-rederiving.md) · [Checkable claim surfaces bugs](feedback-checkable-claim-surfaces-bugs.md) · [Census by mechanism, not proxy](feedback-census-by-mechanism-not-proxy.md) · [Completion is a tripwire](feedback-completion-is-a-tripwire.md) · [Trust prior pass frame](feedback-trust-prior-pass-frame.md) — the five epistemic disciplines. Kernels: **read the banked note before re-deriving** · **a checkable claim over a soft classification is itself a defect-detector** · **census by RUNNING the real pipeline** · **the feeling of "done" is the cue to verify the tail** · **re-run a prior verification at the scope of your extension**. ⚠ Also carried as Symmetria §3 flags — *two surfaces, deliberately*: §3 loads only when Symmetria is invoked, so these stay here for sessions where it isn't.
**Loud trigger — pointer suffices**
- [Chamber work: ground in constitution + charter + runbook FIRST](feedback-chamber-work-ground-in-constitution-charter-runbook.md) — **any chamber work *or talk about it*** begins there (incl. `reanchor:`). Repo CLAUDE.mds are pointers, not state; corpus claims come from a self-tested tool, never a hand grep.
- [Governance files are dotfiles symlinks](reference-governance-files-are-dotfiles-symlinks.md) — Edit/Write refuse to write through a symlink, so **edit the real `~/dotfiles/…` path** when appending — **`PENDING`/`REVIEWED` only.** ⚠ That refusal is a tool artifact, **not** a permission check, and this note is the documented route past the only friction guarding the constitution (PENDING-107). **`~/CLAUDE.md`/`~/REVIEWED.md`/L2 = `[ESCALATE]`, steward's hand — a jurist sign-off does not authorize one.**
- [Verification ladder](reference-verification-ladder.md) — the named instruments; reach for the gate the claim's shape demands instead of re-deriving one.
- [Skill-harvest register](skill-harvest-register.md) — canonical home for proposed skills (governed analog of PENDING.md for tooling); `/wrap-up` §1.6 proposes, steward authorizes. **Rebuilt 2026-08-07** from the archive: **154 live proposals**, grouped by kind, each with an exact `archive:L###` pointer. ⚠ The 2026-08-01 compaction was *lossless but illegible* (55 scraped header rows, 95% of cells cut mid-word) — the count it advertised, 177, was never the number. **Sequenced next: the Stroke-2 ladder batch-append** — 41 rows stamped `S2` are ALREADY AUTHORIZED (2026-07-19), needing execution not a ruling; 22 more are `S2?` (name two destinations, so no stroke settles them). **REVIEWED-95 Q3 resequenced it to follow the ladder's wake trigger — which now exists**, so it is unblocked. ⚠ Filing new proposals now requires a **declared firing moment** (`/wrap-up` §1.6); one that cannot name it is documentation and must say so.
- [Copy-paste-clean governance drafts](feedback-governance-drafting-copy-paste-clean.md) — draft PENDING/REVIEWED blocks as plain fenced markdown; display formatting leaks into the placed record.
- [Verify-before-compose hook](feedback-verify-before-compose-hook.md) — chamber constitutional writes are BLOCKED without `<!-- GROUNDED-IN: … -->` + verbatim Grounding. Don't fight the block.
- [Tool review after each use](feedback-tool-review-after-each-use.md) — review every tool we built after each run, success OR failure. **PASS-BUT-FALSELY is the priority signal.** Log: `chamber-library/_curation/tool-evolution-log.md`.
- [Every canon doc's source lives in Chamber Sources](feedback-resolve-source-through-chamber-sources.md) — a canonical's source = whatever `resolve_archived_source` returns, **never** the master library or a path in frontmatter. Read the banked record before calling a mismatch a defect.
- [Engine sources graduate to the permanent chamber](feedback-engine-sources-become-permanent-chamber-collection.md) — work added for the engine ALSO becomes permanent collection unless stated otherwise; take it all the way (clean→verify→graduate→catalogue→sidecar). Never leave staged.
- [Studium Engine charter](reference-studium-engine-architectural-charter.md) — the engine's constitutional doc. Read before building. · [Sixtus-V collaboration](feedback-studium-engine-sixtus-v-collaboration.md) — build freely, surface only vision-forks; **constraint-candidates** = 3rd governed instrument. Studium-engine only.
- [CapableHands standing authorization](reference-capablehands-standing-authorization.md) — M4 mini `david@10.0.1.136` durably authorized for remote OCR/inference; don't re-ask (steward 2026-07-01).
- [Typography palace — query via CLI](reference-typography-palace-cli.md) — ~20 type masters at `~/.mempalace/palace-chamber-typography`; `mempalace --palace <that> search "…"`. For ARC typography; don't re-ask where it lives.
- [Steward maps live in ~/dotfiles/maps](reference-steward-maps-home.md) — a **map** = an artifact David reads *directly* to orient. Write to `~/dotfiles/maps/`, symlink to Desktop, **never** straight onto the Desktop.
- [Plane coordination workflow](reference-plane-coordination-workflow.md) — CENTRAL to steward↔Seb: `app.plane.so/capablemind`, thin effort-tasks `[BM #N]` over canonical GH issues. ⚠ BBF = BetterBridge *product*, NOT the board.
- [MemPalace is an unaffiliated stopgap](mempalace-is-unaffiliated-stopgap.md) — third-party; don't conflate with BMF/CapableMind. MemPalace PRs await MemPalace's maintainers, **not Seb**.
- [The maturation of the chamber — a dialogue](~/_Dev/studium-engine/docs/the-maturation-of-the-chamber-a-dialogue-2026-06-28.md) — the 2026-06-28 exchange on the chamber's telos (fidelity-without-trust; reading-is-unsolvable-is-the-feature). Companion to [[project-studium-engine-telos-chamber-of-voices]].
## Canonical Workstream Trackers
*Read the tracker for any active workstream at /wake-up before composing the briefing. Append substantive moves at /wrap-up — to the **chronological log**, not only "current state". Per `feedback-canonical-workstream-tracker-discipline.md`.*
- **[Chamber as versioned releases](project-chamber-versioned-releases.md) — THE GOVERNING FRAME for all library work.** The 2000-year Chamber as versioned releases with soft borders, each serving a PURPOSE; scope every library bite through this. **Open decision: which purpose anchors V1.** Read the file, not this line — it holds the reframe that resolved the purpose/scope paralysis.
- [Studium Engine](project-studium-engine.md) — canonical engine tracker. **N0–N2 + R0 + `voice_stamp` built**; corpus **14 sources, trilingual**, fleet **9 suites / 285**. **fr cell all but closed** — 8 grounded (1 A + 7 B), `ratio_A_to_B` **VOID** until PENDING-134 lands. ⚠ **PENDING-131 (c) never bound the engine** (`chunker.py` has `char_range` since Cluster A). **NEXT: rule PENDING-134 — last blocker is a steward MCP restart.**
- [Studium engine telos — the chamber of voices](project-studium-engine-telos-chamber-of-voices.md) — **the ultimate goal, above the build plan**: the childhood chamber of hero-voices, rebuilt so the counsel is *accountably* theirs. Why verbatim fidelity is load-bearing.
- [The Chamber touchstone — the *why*](~/_Dev/studium-engine/docs/the-chamber-touchstone.md) — seven questions to test work against when lost in the trees. **Read at Step 0 of any chamber work.** Holds no state; does not decay.
- [The Chamber vision is NOT in one place](project-chamber-vision-is-not-in-one-place.md) — it lives in **seven** sources across two repos + memory. A single home would become an eighth unless it supersedes or points.
- [L1 reliability](project-L1-reliability.md) — canonical L1 tracker. **BLOCKED ON SEB (PENDING-94); BMF is down and staying down.** The replay **has never resumed, only restarted** (`minCursor` is a minimum over 11 modules, two never participate ⇒ every start rebuilds from seq 0). Completion is gated by **uninterrupted run length, not rate**. Recall never worked either (`retrieval_count = 0`). **Read the tracker before ANY L1 work** — walked past once on 2026-08-03.
- [Instrument censuses — have our gates ever fired?](../governance/fool/census-02-have-they-ever-fired-RESULT.md) — census 01 (has each gate a real negative instance? → **decay, not construction**, is the failure mode) + census 02 (has it fired at all? → the record divides by whether a human invokes it). Both pre-registered. **Read before trusting any gate's silence.**
- [ARC open-work register](project-arc-open-work-register.md) — **the single code-verified source of truth for what is OPEN on ARC.** Read THIS for remaining ARC work, not the chronological tracker. · [ARC](project-arc-rework.md) — chronological record; **Stage G DONE/SEALED (GPG `ac0a7ee`) — reactive mode governs.**
- [Source library — link + dedupe](project-source-library-link-and-dedupe.md) — master ebook library `~/Documents/___The Library [ePub_AWZ3]/` (2190 ebooks). GOAL: link chamber↔sources + dedupe; a real link needs EPUB/PDF internal metadata + edition-identity, **not filenames**.
- [Sidecar typology — protocol-dependent reading-indexes](project-sidecar-typology-protocol-dependent.md) — `.meta.json` structural sidecar = PROTOCOL-NEUTRAL (the graduated bar); reading-indexes = PROTOCOL-DEPENDENT and probably PLURAL — **don't design the schema yet.**
- [Character-as-image hazard](feedback-character-as-image-hazard.md) — EPUBs rendering diacritics as inline images are SILENTLY MUTILATED by image-drop. Mechanism built + wired; per-source glyph-maps still owed. **VIEW the glyph; map to SOURCE form.**
- [Making sequence source set](project-making-sequence-source-set.md) — **COMPLETE against the ReadingList** (reconciliation-verified). Sourced ≠ ingested. Read before any Making/studium source work.
- [Studium = CM's unfettered sandbox](project-studium-cm-sandbox-and-transfer.md) — experiment freely on library/engine without risking CM's runtime; breakthroughs transfer back. Steward-framed 2026-07-08.
- [Be (laundromat)](project-be-laundromat.md) — Skemantix startup (Seb+David) funding CapableMind's ladder; **bridge, not venture**. Decisions LOCKED. **Pre-revenue WTP gate = renovate Pat → charge her; no new spec until it clears ⇒ nothing for executor on be.**
- Chamber-typography — *tracker not yet established*; moves live in per-session memories (2026-05-11 →) + `project-chamber-cruft-restoration.md` + `project-chamber-typography-mining-plan-2026-05-15.md`.
## Active Session
> 🔑 **PULLING THREAD (HELD, NOT CARRIED) — THE UNBUILT FENCE, PENDING-131 (c).** `role: quotation` is still unmarked on L926 and L1551; the identification pass measured a **532-span corpus-wide citation-safety exposure**. **REVIEWED-121 made seeking the fence a CONDITION of the doctrine it ratified**, not a wish. It is where a claim could ground in Ranaipiri's words and present them as Mauss's — the dishonesty the engine exists to prevent.
> ⚠ **NEXT SESSION IS DELIBERATELY NOT THIS — steward direction 2026-08-14:** pause this line a day or two, take something lighter (discouraged despite real progress). **Do not treat the thread above as the agenda.** Confirm it holds, then do what the steward asks that day.
> ✅ **PENDING-134 CLOSED END-TO-END.** Package → jurist ruling → **REVIEWED-121 placed + AUTHORIZED** → executed (`5425414`) → pushed. Whose-proposition test ratified **narrowly** (nested-voice only; general principle = argument, NOT doctrine), **conditioned on PENDING-131 (c)**.
> ⚠ **THE FINDING: A CONTROL PASSED TRUTHFULLY AND LICENSED A FALSE CLAIM.** IV.1 said *"F10 is the only §5 row with a stratum-B admission clause"*, marked **verified**. Three rows carry one (F3/F7/F10) — **quoted intact in the package's own I.2 and reproduced in its own IV.2 table.** The script tested whether *quotes were present*; the claim was an *inference over the rows*. **A control whose subject differs from the claim's is not a weak check — it is not a check.** ⚠ And it **understated an objection to my own proposal**, inside the paragraph written to state it at full strength.
> ⚠ **`test_legacy_indices_are_not_self_verified` DOES NOT EXIST** — one occurrence repo-wide, a docstring. Carried into a corpus file, a commit message and a steward report unopened. 4th cited-a-derived-label instance; fixed `966168b`.
> ⚠ **PENDING-140 [ESCALATE] FILED 08-17 — a proposed THIRD axis for Constraint 6.** Jurist *without* keys (REVIEWED-116 pt 7) ruled on my testimony and its own A4 was false; *with* keys it returned **three defects in one sitting**. **Formation, role and incentive identical across both — only access changed.** ⇒ bias-difference is **necessary and radically insufficient**; a differently-biased reader with no access checks the *account*, not the *thing*. ⚠ n=1/condition, self-reported, and **authored by the party under discussion** — filed, not acted on. Also: `contamination-problem.md` is a theory of **glazing only**, while a crude probe puts our 235 drift-patterns at **86 literal-genie / 12 trickster / 8 glazing** (129 unclassified; classifier is the very defect PENDING-139 names).
> ✅ **AMENDMENT 1 PLACED 08-17** (`~/REVIEWED.md` L1813) **and A3 EXECUTED** (`a3be778`, REVIEWED-121-A1) — the latch now carries `defeater_dispositions_recorded` + `defeater_population` (**named, not numbered**, on the amendment's instruction). Register check now sees **2 amendments** where it saw 1.
> ✅ **AMENDMENT 1 COMPLETE 08-17** — truncation filled, fence closed at L1853, all 10 elements verified present; A3's binding rule **ratified** and quoted verbatim in the corpus (`cd6d4bf`). ⚠ **The re-paste indented the body 2 spaces but left the HEADING at column 0 — had it not, `RE_HEAD` would have stopped matching and the amendment would have gone invisible to register-integrity while the check reported clean.** **`ratio_A_to_B` VOID until PENDING-137 lands.**
- [Session 2026-08-14 — the controls tested the wrong property](session-2026-08-14-the-controls-tested-the-wrong-property.md) — PENDING-134 closed; REVIEWED-121 placed/executed; PENDING-137/138/139 + a PENDING-89 docket entry filed; three package defects jurist-caught, the addendum's own A4 false, the governance checker carrying two blind spots. **LITERAL Q (sharpens 08-13's): not regression-vs-discovery — was the control's SUBJECT the claim it was cited as verifying, or an adjacent property? Census the last ~10 sessions on that axis.** **+ CODA (post-wrap, 08-17 capture): the four-flavours reading → PENDING-140 [ESCALATE] — Constraint 6 names formation and role/information/incentive; the variable that actually decided whether the jurist caught me was SUBSTRATE ACCESS.**
## Historical reference → MEMORY-reference.md
Older archived-session pointers and the stable reference layer (steward profile · project-state detail · L1/L2/Chamber inventories · legacy pending-work · reference-file list) live in [MEMORY-reference.md](MEMORY-reference.md) — consult on demand; not loaded at wake. Recent cross-session trajectory comes from the Active Session entry above + the recent `session-*.md` files (wake §2.b.1).
## Index discipline (self-bounding — keep this file lean)
Wake-loaded live index; hard budget well under the harness load ceiling. Keep to: Standing preferences · Canonical Trackers *as one-line pointers* (chronological detail lives in the linked tracker files, **not** here) · Active Session · these pointers. Rotation + budget-breach handling are wired into `/wrap-up` (demote prior Active Session on promote) and `/wake-up` (truncated load = flag + trim). Back up before restructuring.
*Compaction history: 2026-07-17 re-slimmed to one-liners, 20.5→17.1 KB. 2026-08-07 trim (steward-directed): 19.9→~15 KB by the fires-silently/loud-trigger split, plus `project-studium-engine.md` created to hold engine state MEMORY.md had been carrying inline. **⚠ MEASURED 2026-08-09: the harness read limit is 24.4 KB** (surfaced by the index-size hook), which answers the standing "unmeasured" caveat this line used to carry. 17.1 KB remains a prior achievement, NOT the ceiling. 2026-08-09 trim: Active Session block condensed 5.2→3.6 KB, 21.0→19.4 KB total (80% of the real limit). ⚠ Going below ~18 KB requires restructuring **Standing preferences** (9.4 KB, the largest section and explicitly the fires-silently set) — a proper task, not an end-of-day squeeze.*