session 2026-07-03: doctrine phase complete (Wave 0 + full spec-revision rulings + Loeb substrate reframe); PENDING-46; Phase 2 v2.0-draft next

This commit is contained in:
David F Glidden
2026-07-03 10:47:23 +02:00
parent 33de643d2d
commit 33e19e87ce
5 changed files with 326 additions and 1 deletions
+4 -1
View File
@@ -51,7 +51,10 @@ permalink: claude-memory/memory
- [Be (laundromat)](project-be-laundromat.md) — canonical workstream tracker established 2026-06-08 (Seb-relay of locked decisions). Be = Skemantix startup (Seb+David) funding CapableMind's funding-ladder; **bridge, not venture**. Decisions LOCKED: entity/exit (CapableMind decoupled, grant-funded), pricing (Living $12.99/mo · Archive $69.99/yr · Memorial $49.99/yr · Renovate ~$199 · $8.99 floor), CF Self-Serve Agency + versioned-template-package infra. **a11y gate MERGED (Pat 100/100/100).** Pre-revenue: the WTP gate = renovate Pat → charge her. **Discipline: stop adding spec until the gate clears → nothing for executor on be until then.** Repo @ `f43a0fd`.
## Active Session
- [Session 2026-07-02 evening — Sennett + Family-D tool + the corpus standard & method](session-2026-07-02-evening-corpus-standard-and-the-method.md) — Short evening session; ONE work graduated but the value was elsewhere. **Reconverted+graduated Sennett *The Craftsman*** (calibre-era canonical had silently-lost note-linkage + old-schema frontmatter + `****` residue) — recovered 294 endnotes, spec-normalized headings (incl. a setext Conclusion), both gates PASS, verbatim-preserved; **committed `10cff59`**. To do it, **built+tested+committed the Family-D (stem-suffix) footnote handler** in `clean_epub_residue.py` (regression caught+fixed against Families B/C) — the 4th of ≥5 anchor families the corpus actually uses (Crawford's `filepos` = a different pairing model, still owed). **PENDING-45.** Then a **corpus-quality census** answered the steward's "is poor-quality-graduated widespread?": **YES, 3 distinct axes** — conventions **8/332 pass** (pre-spec, mechanical), text-health **110/332 damaged** (OCR'd big works: Bringhurst/Hochuli/Taruskin/music-bios), **apparatus UNMONITORED** by either gate (Sennett proves "has notes" ≠ "apparatus intact"). Steward felt the vision slipping (**"mandelbrot set… whack-a-mole… clutching sand… I tremble at making the engine work"**) → named the **STANDARD** (verified verbatim fidelity + provenance + apparatus for ANYTHING the engine cites — a floor not a tier; "graduated"=converted+filed ≠ verified; a quietly-corrupt bounded corpus is WORSE than none; fence the engine to green NOW, grow green→100% by waves) and the **METHOD** (whack-a-mole = working reactively per-file; cure = **measure-the-whole-first → one quality MAP → remediate BY DEFECT-CLASS in finite waves, each a countdown**). **PULLING THREAD: build `audit_corpus.py` + the apparatus check → the full quality ledger/MAP of all 1,284 works (the instrument that ends the whack-a-mole), then plan waves from data. Do NOT resume graduating reactively.** Q: did the map get built + real defect-class distribution + is Wave A (frontmatter migration, ≈8→200) the right first countdown?
- [Session 2026-07-03 — doctrine phase complete; Phase 2 next](session-2026-07-03-doctrine-phase-complete-phase2-next.md) — **A very long session that closed the entire DOCTRINE PHASE of the chamber-library spec revision.** Morning: built `audit_corpus.py` + the corpus quality MAP (delivered yesterday's thread). Then steward challenged the framing → **tool-fleet audit (3 agents) → WAVE 0**: fixed all 8 blocking tool bugs test-first (`scripts/test_tools.py`, 21 assertions; graduation gate was HALF-MISSING; normalize_ocr guard off in common case; etc.), retired 6 dead tools, **committed `f9cbb8e`+`1c88650`**; record `_curation/tool-fleet-compliance-2026-07-03.md`. Then **prior-art scans (3 agents)**: ~70% of our spec re-derives **TEI + CTS + Standard Ebooks + W3C PROV + TEI-ODD** — adopt their marked ground; watch **Seck arXiv 2604.10658** (independent governance convergence, added to landscape-register). Then **the FULL spec revision RULED by the jurist** (via steward relay): gaps 1-8, generative principle, amendment process (RFC-supersession + change-class + semver), the three questions (A/B/C), and §III citation posture — **ALL RATIFIED**. Unifying insight: gaps 2+3+item-8 = ONE addressing substrate. Then **THE LOEB SUBSTRATE REFRAME** (steward: "look at the DSL directly" — decisive): I'd told the jurist 74% of the corpus was anchorless; the SOURCE inverted it — Stephanus/Bekker/book+line anchors are ALL in `loeb.dsl`, **FLATTENED by extraction** (`extract_loeb_dsl.py:47`). Per-genre audit (re-verified vs source): **>99% of ~2,041 works carry a recoverable anchor**; 35,261 division-carrying `%` lines discarded; residual = single-digit fragments. §III re-ruled → cite the Loeb by RECOVERED canonical anchor (CTS edition-as-identity); the structured-but-unanchored extension VOIDED (dormant only). **Full-run scope decided:** current 952 = Tier 1; rebuild-anyway → run the FULL DSL (2,041 works); fence discharges dilution. Installed wordfreq (venvs) + jsonschema. Disambiguation map durable: `docs/loeb-anchor-audit-and-disambiguation-map-2026-07-03.md`. **THE ARC:** yesterday's despair ("clutching sand") → a marked, finite plan (ground → instruments → corpus → fence). **MY drift-of-the-session (jurist-elevated to standing practice): trusted a derived-artifact/regex over the SOURCE 3× — the steward twice sent me to the substrate and was right.** **PULLING THREAD: Phase 2 — draft `chamber-library-specification.md` v2.0 (superseding, semver-MAJOR) + the generative validator, BEGINNING with a clean END-TO-END READ of the current spec (deliberately NOT read today — I worked from audits), then §III the CTS addressing spine.** Everything in PENDING-46. Q: does the real spec text hold anything the day's audits missed/collide-with, before v2.0 is drafted against my model rather than the text?
## Archived (2026-07-03 — doctrine phase complete)
- [Session 2026-07-02 evening — Sennett + Family-D + corpus standard & method](session-2026-07-02-evening-corpus-standard-and-the-method.md) — Graduated Sennett *The Craftsman* (294 endnotes recovered); built the Family-D footnote handler (`clean_epub_residue.py`); committed `10cff59`; PENDING-45. Corpus census → steward named the STANDARD (verified-not-just-graduated; fence engine to green) + METHOD (measure-whole-first → map → remediate-by-defect-class in finite waves). Led directly into 2026-07-03's map + the full spec-revision doctrine phase.
## Archived (2026-07-02 evening — corpus standard & the method)
- [Session 2026-07-02 — Chamber source-provenance archive + pipeline](session-2026-07-02-chamber-source-provenance-archive.md) — Woke toward the Making graduation queue; a second Jonas copy opened a full source-provenance arc. **Jonas p248 dissolved** (the "illegible page" held only the "Notes" divider — no content lost). **Built the Chamber Sources archive** (`~/Library/Mobile Documents/com~apple~CloudDocs/Chamber Sources/`, iCloud Keep-Downloaded): **322 verified source COPIES, 3.3 GB** + 14 Braid/L2 in `pending-graduation/`. Covers ~all of the ~332 non-Loeb corpus (1284 canonical; 952 = Loeb, pipeline-sourced/excluded). **Built + committed the pipeline (`7553f59`, pushed):** `build_inventory.py` (reproducible census — Apple Books + unzipped .epub dirs + .zip; the gaps that hid ~25 works), `match_sources.py` (internal-metadata + diacritic-fold + TITLE-coverage scoring + Loeb-skip + author-agreement VERIFICATION; 321/335 non-Loeb confirmed), `archive_sources.py`; runbook `source_provenance:` section. **Crux:** first census excluded Apple Books + accent-blind greps → wrongly called ~25 works "absent" + posed FALSE edition-dilemmas; steward corrected *"the texts exist because I have them"* — every dilemma dissolved to the correct edition once Apple Books included. **Caught+fixed 3 high-conf FPs** (meditations→Daily-Laws→Hays; aesthetics/Adorno→Sontag→Adorno; nietzsche/Zweig→Nietzsche's-Works→Zweig). Steward directive: **source-archiving is now a STEP OF graduation.** **PULLING THREAD: come through the graduation queue (~12 Making + 14 Braid/L2), filing each source as we graduate.** Q: did the short evening session happen + which source graduated first?