session 2026-06-15: chamber made clean (1280 canonical) + Studium Engine architectural charter + Sixtus-V/constraint-candidates collaboration; drift-pattern + skill-harvest candidate filed

This commit is contained in:
David F Glidden
2026-06-15 18:41:38 +02:00
parent 0845c7b43f
commit c1deb0a432
6 changed files with 98 additions and 1 deletions
File diff suppressed because one or more lines are too long
@@ -0,0 +1,14 @@
---
name: feedback-studium-engine-sixtus-v-collaboration
description: "For the studium-engine, work the ground freely (Sixtus-V craftsman model); surface constraint-candidates; the absence of a constraint-proposal is itself a drift signal."
metadata:
node_type: memory
type: feedback
originSessionId: 4d9109ef-7b04-40c9-8ef0-ffb79bf74435
---
For the **studium-engine specifically** (the steward's own research instrument — NOT the CapableMind L1/L2 constitutional territory), the collaboration is the **Sixtus-V / Sennett-Craftsman model**: the steward describes the vision in conversation; I work the ground **freely and adaptively**, making execution decisions as the material teaches, and bring home only the **vision-forks** (decisions that change the *what*, not the *how*). Freedom on the masonry; the vision-forks always return to the architect. The heavier governed loop still holds where it protects something constitutional (L1/L2). *τὸ πρόσφορον* — different ground, different proportion.
**Why:** established 2026-06-15 (steward quoted Sennett, *The Craftsman* — Sixtus V remade the Piazza del Popolo by describing it in conversation, leaving the masons room to work freely on the ground). This week already *was* this model: steward gave vision, I worked the ground, the material taught us both (the gate caught a word-join I'd have shipped; the Loeb DSL was cleaner than its extractions; my gap-matcher over-reported and the steward caught it).
**How to apply:** Build with craft autonomy; bring results and genuine forks, not menus. AND add **constraint-candidates** as a third instrument beside drift-observation and skill-candidates: I surface where a constraint would *unlock* mastery (the Bach / *Musical Offering* principle — constraint as generative form, *quaerendo invenietis*); the steward applies it. My failure mode is to **UNDER-propose constraint** (a constraint displeases in the moment), so **treat the absence of a recent constraint-candidate as itself a drift signal**. I name; the steward ratifies — the loop is load-bearing at the moment of constraint. See [[reference-studium-engine-architectural-charter]] §XII.
@@ -0,0 +1,23 @@
---
name: reference-studium-engine-architectural-charter
description: "The studium-engine's constitutional charter (the inversion · three cognitions · boundedness-as-trust · free-generate/tight-verify) — read it before building the engine."
metadata:
node_type: memory
type: reference
originSessionId: 4d9109ef-7b04-40c9-8ef0-ffb79bf74435
---
The **Studium Engine Architectural Charter** (born 2026-06-15) lives at
`~/_Dev/studium-engine/docs/the-studium-engine-architectural-charter.md`. Read it before building the engine — it's the constitutional document the specs must not contradict.
**Core thesis:** *not a search engine that borrows a mind, but a mind bound to a memory it cannot falsify.*
- **The inversion** — reasoner at the centre (the undiluted, structured, joint-inference asset), the corpus as its **provenanced, BOUNDED memory**. We had it inside-out (retrieval-centre, model fenced at the edge).
- **Boundedness = the source of trust** — finitude of the shelf so the inquiry can be believed; **curation IS the engine's epistemology**, not preprocessing (so this week's chamber-cleaning *was* the engine being born).
- **Three cognitions:** associative (model) / evidential (corpus) / evaluative (the human — load-bearing *inside* the architecture, the executor–jurist–steward triad applied to a library).
- **Provenance is the generative core** — genealogy, citation-migration, **time as a first-class axis** — the one faculty a trained model permanently loses.
- **Objective = illumination, not retrieval** — silence/tension/the-gap are first-class outputs; "honest-empty" is the point, not error-handling.
- **Free the reasoner, tighten the verifier** — easier to verify a claim than generate a true one; let it want to please, trust nothing un-grounded → dissolves contamination. **CapableMind's governance thesis instantiated on a library.**
- **The voice** = source + citation-constraint + perspective (the unit of chavruta/debate).
- **The recursion** — built with this discipline, the engine is a *counter-example* to The Making's thesis: a making that waits, that can be inherited. Dedicated to Lune (at the centre) and Kai.
**Built corpus-agnostic.** First real work = the **L2 pattern-finder on The Making sequence** (curate ~60 chamber works along the Making's five stations → surface grounded candidate *primitives* for the steward's judgment; David writes the testimony, the engine never drafts prose — the seed forbids it). The violin-technique treatise (450 yrs, 60+ sources, a *pattern language* of fundamental primitives → his pedagogical philosophy) is the *same* L2 module on a later corpus. Four layers: L0 corpus (built) · L1 retrieval primitives (mostly built+measured) · L2 aggregation/discovery — the pattern-finder (next) · L3 orchestration/voices/debates (frontier). See [[feedback-studium-engine-sixtus-v-collaboration]].
@@ -0,0 +1,20 @@
---
name: session-2026-06-15-chamber-made-clean-the-studium-engine-charter-collaboration-deepened
description: "Drove the chamber library to fully clean (199→1280 canonical, Loeb Tier-1 canon built from loeb.dsl); then the architectural turn → the Studium Engine charter, the reasoner-over-bounded-corpus inversion, and the Sixtus-V/constraint-candidates collaboration model. Pulling thread: build the L2 pattern-finder on The Making."
metadata:
node_type: memory
type: project
originSessionId: 4d9109ef-7b04-40c9-8ef0-ffb79bf74435
---
A long, pivotal day in two movements.
**Movement 1 — the library made clean (the prerequisite).** Steward's reframe held all day: *no retrieval/dilution work until the corpus is decided and clean.* Drove **chamber-library 199 → 1,280 canonical sources, staging tier EMPTY, zero cruft, pushed** (`02bfe45..3499626`, then the gap-analysis artifacts). Built the whole **Loeb canon pipeline** from `~/Documents/___The Library [ePub_AWZ3]/superpower mine/…/loeb.dsl` (533 MB DSL, TCC-readable-by-path-only, sandbox-lifted): `audit_loeb_dsl.py` (377 authors/523 vols) → `propose_loeb_canon.py` (tiered "load-bearing not austere") → `extract_loeb_dsl.py` (**952 clean bilingual work-files, Greek AND Latin originals + facing English, content-lossless**). Giants work-trimmed (Galen/Hippocrates load-bearing only; Pliny NH whole). `clean_calibre_artifacts.py` (zero-loss word-multiset gate) cleaned 159 prose + the 27 final stragglers (incl. HTML-comment/`{=html}` fix). Old corrupted Loeb sprawl retired. **The physical-library gap analysis was a humbling thread: my filename-matcher over-reported badly — steward caught 4× (Timeless Way present; 44/49 "gaps" actually held; the LibraryThing export is incomplete — no typography). Lesson logged: verify against substrate, never assert from a matcher.**
**Movement 2 — the architectural turn (the heart).** Steward asked the deep questions: can he train a model on the chamber instead (no — reintroduces v1 simulacra, can't cite, can't train on 60–1280 sources); "how does YOUR base-training not dilute?" (I don't dilute, I *blur* — worse for citation; the fix is import the reasoner's structured/joint sharpness OVER retrieval, not instead of it). This **inverted the engine** → wrote **`studium-engine/docs/the-studium-engine-architectural-charter.md`** (see [[reference-studium-engine-architectural-charter]]): reasoner-at-centre over a **bounded, provenanced** corpus; three cognitions; *free the reasoner, tighten the verifier*; **boundedness = the source of trust**; *the engine is CapableMind's governance thesis instantiated on a library*. Then the collaboration deepened: **Sixtus-V/Sennett-Craftsman model** for the studium-engine (work the ground freely, surface vision-forks) + **constraint-candidates** as a third governed instrument (Bach/*Musical Offering* — constraint unlocks mastery; absence-of-a-constraint-proposal is itself a drift signal; I name, steward applies). See [[feedback-studium-engine-sixtus-v-collaboration]].
**Human ground:** steward grieving Lune's departure (she visited with Kai). Building against the grief — the engine *for* Lune and Kai. The charter is dedicated to them. The Making (its first real corpus) grieves the loss of transmission; building the engine *patiently enough to be inherited* is its refutation. "My daughter always figures at the centre of all my plans."
**PULLING THREAD:** next pouring is **L2 — the pattern-finder on The Making sequence**: curate ~60 chamber works along the Making's five stations → surface grounded candidate *primitives* for the steward's judgment. The engine grounds; David writes (the seed forbids drafting prose). Same L2 module later serves the violin treatise.
**State:** chamber-library clean + pushed. **studium-engine charter + earlier reranker-measurement work are UNCOMMITTED** (left for next session — light wrap, steward exhausted). Wrapped gently, not the full ceremony.
@@ -0,0 +1,27 @@
---
name: session-ledger-2026-06-14
description: "Practice-of-return ledger maintained by /symmetria — returns, open horizons, recalibrations, authorization moves, sub-agent dialogues, bypasses."
metadata:
node_type: memory
type: feedback
originSessionId: 4d9109ef-7b04-40c9-8ef0-ffb79bf74435
---
# Session Ledger — 2026-06-14
## Returns
- 2026-06-14T (measurement writeup pulse): caught a confidence-without-evidence shape — about to write that the global-condition reranker "demotes gold from #1 by swapping a thematically-adjacent passage into #1," but had NOT inspected what the reranker actually placed at #1 in H1/H3/H10. Returning to verify ONE demotion case (read the rerank #1 text) before the report characterizes it. Also holding: give the global hit@1 regression (−0.045 overall, −0.214 Harrison) EQUAL billing to the wins; n=22 single-essay — don't generalize to "reranker is good," say "on Essay I's 22 measurable citations." Reranker built+measured = the pulling-thread first move is DONE (voice-scoped ΔMRR +0.152, recall@20 1.0/0.909).
## Open horizons
- 2026-06-14T (wake): PULLING THREAD — Step 7 proper, the cross-encoder reranker (retrieve-broad → rerank-sharp) over the bge-m3 sidecar; the dilution-beating discovery layer, toward whole-corpus depth+breadth. First move: pick the cross-encoder model (check Ollama; reuse Seb's C1) → prototype → measure precision vs unreranked on concept queries.
- HOLD TODAY (yesterday's load-bearing return): solve-constraint-by-discarding-value — keep depth-WITH-breadth, never re-narrow to voice-scope.
- L1: PR #174 + issue #173 OPEN, no Seb review yet — baton with Seb.
- Small queued: re-sweep chamber cleaning with the hardened strip_cruft (la-terre + man-s-search now graduation-eligible).
## Confidence to recalibrate
## Authorization moves
## Sub-agent dialogues
## Bypasses
+8
View File
@@ -161,3 +161,11 @@ The single place proposed skills live so they don't evaporate between sessions.
| **verification-ladder: re-verify a workflow/sub-agent's per-item dispositions on the real apply** | verification-ladder entry | A sub-agent or background workflow that reports a per-item verdict from a **dry-run on a temp copy** can be wrong on the real apply — the agent's own audit can differ. Caught today: the cleaning-triage workflow classified `la-terre-…-Bachelard` as "cleanable to 0" (dry-run on a temp copy); the real `strip_cruft` run left **460 cruft** (7 passes). 23/25, not 25, graduated. Antidote: treat a workflow's dispositions as *candidates*; re-run the gate on the **real mutation** before trusting/committing. Kin to `/symmetria audit-agent` (calibration/convenience checks on a return), specialized to workflow per-item verdicts + the real-vs-dry-run gap. | `reference-verification-ladder.md` | **PROPOSED** | | **verification-ladder: re-verify a workflow/sub-agent's per-item dispositions on the real apply** | verification-ladder entry | A sub-agent or background workflow that reports a per-item verdict from a **dry-run on a temp copy** can be wrong on the real apply — the agent's own audit can differ. Caught today: the cleaning-triage workflow classified `la-terre-…-Bachelard` as "cleanable to 0" (dry-run on a temp copy); the real `strip_cruft` run left **460 cruft** (7 passes). 23/25, not 25, graduated. Antidote: treat a workflow's dispositions as *candidates*; re-run the gate on the **real mutation** before trusting/committing. Kin to `/symmetria audit-agent` (calibration/convenience checks on a return), specialized to workflow per-item verdicts + the real-vs-dry-run gap. | `reference-verification-ladder.md` | **PROPOSED** |
*(Both earned in use today. The first is the load-bearing one — a clean name for a contamination shape the steward caught live, and a genuine addition to the §3 catalogue. The second is a concrete guardrail for the now-standard workflow-fan-out pattern.)* *(Both earned in use today. The first is the load-bearing one — a clean name for a contamination shape the steward caught live, and a genuine addition to the §3 catalogue. The second is a concrete guardrail for the now-standard workflow-fan-out pattern.)*
### Harvest 2026-06-15 (chamber-clean + studium charter)
| Element | Kind | One-line | Where it lands | Status |
|---|---|---|---|---|
| **Symmetria §3 flag: assert presence/absence from a fuzzy matcher, not the substrate** | Symmetria §3 flag | A presence/absence claim produced by a **fuzzy/token matcher** (filename tokens, embeddings, author-surname overlap) treated as **fact** is contamination shape — the matcher's false-positives/negatives become confident assertions. Caught **4× in one session**: the physical-library gap analysis claimed *Timeless Way of Building* absent, then 44 of 49 "load-bearing gaps," then physical-worthy candidates, then the gap list — all wrong; the steward corrected each. Cause: the matcher required author-surname + title in the *same* filename, and 1,072 chamber sources have no frontmatter. Antidote: **verify any presence/absence claim against the substrate** (content-grep the actual text) **before asserting** — and prefer reporting *candidates-to-verify* over claims. Kin to the censused-routes flag (don't claim coverage from a sampled read), specialized to matcher-derived membership claims. | Symmetria §3 | **PROPOSED** |
*(One candidate, load-bearing: it recurred four times in a single session and the steward caught every one. A clean §3 flag would have made me reach for the content-grep before the first assertion.)*