# PENDING-101 — Phase 1 baseline: each repo's own account of its authorization/gating model **Written 2026-08-05, BEFORE the Phase 1.5 primary-source read.** Frozen on purpose. **Declared contamination:** pages 1–3 of INC-2026-07-28-01 (title, contents, executive summary) were read 2026-08-05 to test file reachability. So this baseline is formed with the report's headline finding already known. Bounded and recorded; not a clean slate. **Sources read for this pass:** the four repos' `CLAUDE.md` files (CapableMind carries three — root, `docs/thinking/`, `docs/thinking/David/`), plus `docs/specs/orchestration/epistemic-gates-spec.md` and `docs/specs/orchestration/constitutional-governance-addendum.md`. Docs only, by design — Phase 1 records the **claim**; Phase 2 checks it against code. --- ## 1. CapableMind-AI **What it says it is.** A playbook, not a codebase: 103 specs under `docs/specs/`, ADRs and amendments under `docs/thinking/`. `src/` and `tests/` exist but contain only `.DS_Store` — the "no application code" claim is true. Code lives in two other repos (`bettermemories` = L1, `themind` = L2). **Governance of the documents.** Two-phase. `thinking/` is the branch, `specs/` is main; nobody edits specs directly during day-to-day work. Amendments accumulate as candidates, then a synthesis PR applies them. *"The PR is the review and merge moment."* Specs are authoritative over code: if code contradicts spec, the code is wrong unless empirical evidence overturns the spec — in which case the spec is updated **first**. **Governance of the (unbuilt) runtime.** A graduated autonomy scale `none < propose < notify < log < full`, per parameter group (voice/focus/analysis/knowledge/agency), intersected with an operational mode ceiling (observe/respond/act). Three enforcement checkpoints: load-time, write-path, branch-time. Three rules are labelled **meta-constitutional** — outside operator configuration: 1. Agency autonomy cannot exceed `propose`, regardless of manifest or mode. 2. Belief settlement at civilizational scale requires a stewardship attestation. 3. Logchain/ReasonChain are append-only, hash-linked, Ed25519-signed. The addendum says of rule 2: *"This validation is hardcoded — it is not configurable."* And of the `system_enforced` authorization type: *"Any entry written with `system_enforced` by another initiator is rejected by the chain writer."* Drift thresholds explicitly **never** auto-mutate autonomy; every autonomy change requires operator approval. **Its own account of gate bypasses.** `epistemic-gates-spec.md` exists specifically to name that L1 gates have carve-outs, and classifies them: Pattern 1 (trust-delegation — replay, circle-peer-forward) universal across gates; Pattern 2 (cost) per-gate. Its epigraph states the Q1 question against itself: > *Stated invariants must match operational reality. When a gate has bypasses, the bypasses are > either documented architectural principles or undocumented gaps. There is no third category.* **Self-declared limits.** The addendum repeatedly marks itself as design, not implementation: *"design primitives"*, *"deferred to the build phase"*, *"Not a runtime implementation spec."* **My reading of the claim's honest shape.** Nearly every runtime authorization claim here is **necessarily doc-only, and says so.** The repo is pre-implementation; that is a stated build phase, not a concealment. The live question for Phase 2 is narrower and sharper: **the gates the epistemic-gates spec lists as already existing point at code paths in a different repo** (`src/modules/base.ts`, `src/core/keystone/orchestrator.ts`, `src/core/keystone/classification.ts`). Those are checkable — in BetterMemories, not here. --- ## 2. BetterMemories.io **What it says it is.** The L1 engine. 11 modules, ~2300 tests, TypeScript strict, embedded SurrealDB. **What its own CLAUDE.md says about authorization.** Very little, and this is the notable fact of the Phase 1 pass. The document is overwhelmingly operational: setup, MCP config, env vars, git remotes, coding conventions, key commands, and a long "Gotchas" list. Its governance content is one section: - *"Specs in `capablemind/` are the source of truth. Code in `bettermemories/` is the derived artifact."* - The cycle: **Propose** (amendment; never edit specs directly) → **Synthesize** → **Code** → **Merge**. - *"When code diverges from spec, the spec wins. If code proves a spec wrong, update the spec first, then regenerate the code."* - PR workflow: *"All checks must pass before merge: `npm run check` + `npm test`."* **What is absent from its self-account.** No mention of the constitutional layer, autonomy levels, operator approval, the meta-constitutional rules, or the executor authorization taxonomy (`[FIX]`/`[HARDENING]`/`[PROPOSAL]`/`[ESCALATE]`). The invariants that CapableMind states as non-negotiable for L1 — logchain append-only, Ed25519-signed, modules independent — do not appear in L1's own orientation document. A reader working only from this file would not learn that the code it describes is governed by a constitution at all. **One authorization-shaped thing it does carry**, and it is a destructive-operation surface rather than a gate: `npm run ctl -- reset --yes` (factory reset, wipe all data) and `repair --yes` (wipe SurrealDB, replay from logchain) are documented as ordinary commands with the confirmation already in the flag. **My reading of the claim's honest shape.** BMF's stated gating model is a **CI/review model** (tests + type-check + PR), not a constitutional one. Whether the constitutional gates exist in its code is exactly what Phase 2 must check — and I should expect the answer to differ from what this document would lead a reader to believe, in *both* possible directions. --- ## 3. studium-engine **What it says it is.** A reasoning instrument over the Chamber Library — *"a mind bound to a memory it cannot falsify."* Its purpose is to illuminate with provenance, *"never to answer unaccountably."* **Its authorization model, stated explicitly and unusually clearly.** - **D-1 — steward-direct.** *"The engine is the steward's own tool."* Authorization for architecture/spec decisions is steward-direct and immediate. The engine sits **outside** L2 constitutional governance. *"Do not route routine engine work through the jurist."* - **One named exception: V0, the verifier contract** — because it defines *what the engine may assert as verified and when it must abstain*, and everything downstream inherits that standard. Its method routes through the jurist, steward-relayed. - `fidelity_equivalence@N` bumps are **jurist-gated doctrine**; `@1`/`@2` are frozen; `@N ⊃ @N-1` is a standing requirement on all future bumps. - **First law:** the files are authoritative, every index derived and disposable, *"no surface may hold state not reconstructible from the verbatim files (**proven, not asserted** — `store.py rebuild`/`verify`)."* - Abstention is a hard gate; **the verifier is a separate instrument — never the reasoner grading itself.** **Self-declared failures, in its own orientation document.** This repo volunteers its holes: `retrieve.py` **has no test at all**; the consuming end "does not answer" (bare FTS terms are conjunctive — `what does levi mean by the gray zone` returns 0); `pattern_finder.py` shipped a pass that was **PASS-BUT-FALSELY** and that known-bad output is deliberately retained as an adversarial fixture; a `RETRIEVAL_BLINDNESS` constant rides every silence, with a ⚠ marking that it must be revisited when PENDING-97 lands. **My reading of the claim's honest shape.** This is the repo with the **least** doc-only exposure by construction, because it claims the least: it does not claim a governance loop it lacks — it claims steward-directness and names its single gated surface. The Q1 target here is narrow: is the jurist-gate on V0/`fidelity_equivalence` mechanical, procedural, or doc-only? --- ## 4. chamber-library **What it says it is.** A bounded, verbatim-fidelity, provenance-controlled corpus. *"Its trustworthiness **is** its design."* The thesis it opens on: *"A substrate that cannot be trusted is not a substrate — it is a source of false confidence more dangerous than no memory at all."* **Its authorization model.** - **Governed, NOT D-1.** The spec is a **ratified constitution** (`chamber-library-specification.md`, v2.9.1 operative). Changes run the loop through `~/PENDING.md` / `~/REVIEWED.md` with a jurist ruling. - **Amendment process:** RFC-style supersession, semver, and a **change-class rule** — a change is `FIX` unless *it changes what a gate accepts*, at which point it becomes `PROPOSAL`. - **Generative-from-spec:** tools are thin consumers of `_curation/graduation-spec.yaml`, the machine-readable convention data. *"A tool that re-encodes a convention independently of the spec **is drift**."* - **Attest, never default:** provenance and status are positive attestations with a named verifier, never a bare flag or default-by-absence. *"The conversion pipeline **cannot self-attest** (it produced the errors)."* - **`verify-before-compose`** — a PreToolUse hook that **DENIES** any write to the spec, `graduation-spec.yaml`, or a jurist-facing draft unless it carries a `GROUNDED-IN:` attestation and opens with a Grounding section quoting the ratified sections. Its own justification is explicit: *"the hook is the structural mitigation (session-start CLAUDE.md prose alone had failed ≥4 times)."* **A self-declared live violation.** PENDING-84: §VII holds that *"a canonical text without a conversion record is not verifiable and cannot enter canon"* — and **nine canonicals violate it in canon, today**. The repo's response was to **declare** it in a quarantine artifact rather than repair or hide it, on the constitutional ground that production-only provenance would let presence read as compliance. **My reading of the claim's honest shape.** This repo makes the **strongest** enforcement claims of the four and is the only one that names a hook that actually denies a write. It is therefore both the best Q1 candidate for genuine mechanical enforcement *and* the place where a doc-only claim would do the most damage. One is already known: `verify-before-compose` cannot fire on the constitution it protects (PENDING-95, 31 of 59 guarded files). --- ## Cross-cutting predictions, recorded BEFORE the report (so they can be scored) 1. **CapableMind's runtime constitutional claims will be doc-only by construction, and the repo will have said so.** The real finding will not be "unenforced" but *where a present-tense enforcement sentence sits next to a deferred-to-build-phase one.* 2. **BetterMemories will carry gates its own documentation does not mention.** Its CLAUDE.md is operational; the gates are specced elsewhere. Expect Q1(b) — real code checks whose *discoverability* is the weakness, not their existence. 3. **studium-engine's jurist gate on `fidelity_equivalence` will be procedural, not mechanical** — depending on the executor choosing to route, with a hardcoded-version tripwire as the only structural backstop. 4. **chamber-library will have the most real mechanism and the most instructional language.** The `verify-before-compose` disarm (PENDING-95) is likely one of a class, not a singleton. 5. **The scope gap:** the brief names four repos, but the governance documents themselves (`~/CLAUDE.md`, `PENDING.md`, `REVIEWED.md`) and every hook live in **`~/dotfiles`**, which is not in scope. Chamber's `verify-before-compose` cannot be evaluated without reading dotfiles. I will treat dotfiles as **evidence** for the four repos' gates, not as a fifth audit target, and flag the omission for the steward rather than silently widening scope.