From 8adc8ad5906e3fa294b3a3d8a442d0386b2ce07b Mon Sep 17 00:00:00 2001 From: David F Glidden Date: Sun, 28 Jun 2026 22:11:10 +0200 Subject: [PATCH] session 2026-06-28: Musil graduated + Position I complete + gold-standard gate fixed (verify RAW_HTML) + 2 policies (engine-sources-graduate, notes-are-the-work) + maturation dialogue --- claude/memory/MEMORY.md | 8 ++- ...ces-become-permanent-chamber-collection.md | 16 +++++ ...art-of-the-work-keep-footnotes-endnotes.md | 14 +++++ ...settling-position-I-complete-gate-fixed.md | 62 +++++++++++++++++++ claude/memory/session-ledger-2026-06-28.md | 34 ++++++++++ claude/memory/skill-harvest-register.md | 12 ++++ 6 files changed, 145 insertions(+), 1 deletion(-) create mode 100644 claude/memory/feedback-engine-sources-become-permanent-chamber-collection.md create mode 100644 claude/memory/feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md create mode 100644 claude/memory/session-2026-06-28-corpus-settling-position-I-complete-gate-fixed.md create mode 100644 claude/memory/session-ledger-2026-06-28.md diff --git a/claude/memory/MEMORY.md b/claude/memory/MEMORY.md index 2fc7b6b..3c36dd0 100644 --- a/claude/memory/MEMORY.md +++ b/claude/memory/MEMORY.md @@ -29,6 +29,9 @@ permalink: claude-memory/memory - [Plane coordination workflow](reference-plane-coordination-workflow.md) — **NOW CENTRAL to the steward↔Seb workflow** (est. 2026-06-02): `app.plane.so/capablemind`, BMF project, thin effort-tasks `[BM #N]` over canonical GH issues (effort-only, no technical detail; labels/priority mirror GH; issue attached as link). Executor keeps task state current as the 6-hour relay. ⚠ BBF = BetterBridge *product*, NOT the board. Plane MCP user-scoped/OAuth; load tools via ToolSearch `select:mcp__plane__*`. `create_work_item` needs `description_html`. - [Resurface banked notes before re-deriving](feedback-resurface-banked-notes-before-rederiving.md) — when an idea was already captured (runbook known_gaps, skill-harvest, prior note), READ the note before re-deriving; re-derivation drifts (page-numbers mis-recalled as provenance vs structure-scaffolding, steward re-corrected 2026-06-27). The engine's own purpose, turned on my practice. - [Tool review after each use](feedback-tool-review-after-each-use.md) — steward directive (2026-06-16): review every tool we built after each run (success OR failure), capture what it taught, iterate until reliable; PASS-BUT-FALSELY is the priority signal. Log at `chamber-library/_curation/tool-evolution-log.md`. Proven same day (audit_cruft hardening → 160 hidden-dirty files surfaced). +- [Engine sources graduate to the permanent chamber](feedback-engine-sources-become-permanent-chamber-collection.md) — steward policy (2026-06-28): any work added for the engine ALSO becomes permanent chamber collection unless expressly stated; take it ALL the way (clean→verify→graduate→catalogue→sidecar); never leave staged. The chamber accumulates. ⇒ all ~30 Making sources graduate in. +- [Notes are part of the work](feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md) — steward directive (2026-06-28): footnotes/endnotes are integral — KEEP+CONVERT them (``→`[^N]`), never drop on graduation. (Caught dropping Taylor's endnotes — wrong.) +- [The maturation of the chamber — a dialogue](../../../../../_Dev/studium-engine/docs/the-maturation-of-the-chamber-a-dialogue-2026-06-28.md) — the pivotal 2026-06-28 exchange clarifying the chamber's telos: fidelity-without-trust, reading-is-unsolvable-and-that's-the-feature, language-as-notation, L2/engine=answerable-not-pure. Read when the thread touches the engine's purpose; 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. Per `feedback-canonical-workstream-tracker-discipline.md`.* @@ -44,7 +47,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-06-27 — ocrmac conversion toolset CALIBRATED + Making-corpus advance + engine research](session-2026-06-27-ocr-toolset-calibrated-making-corpus-research.md) — Marathon. Alexander book1 graduation → **discovered olmOCR SCRAMBLES 2-column figure-dense books** (reads across the gutter; the verbatim word-guard can't catch it — PASS-BUT-FALSELY at the corpus level) → **built+calibrated the ocrmac (Apple Vision) column-aware conversion toolset**: (1) **column detection** = line-crossing-of-narrow-lines + line-width (DPI was the key, 120→150); validated all 491 pages; (2) **de-hyphenation** = **wordfreq, MULTILINGUAL** `--lang en|fr|de|es` (merged-Zipf≥3.4→merge / both-parts≥4→compound / unknown-lowercase→**merge_flag** catches OCR+reflow errors); Camus/Handke forward-req met by design; (3) **structure recovery** = steward's page-number method (scaffolding NOT provenance; retain→map ToC printed-page→scan→place→strip) **PROVEN 9/9**. Tools evolved: `scripts/normalize_ocr.py` (+within-page rejoin, page-top runhead detection, `--no-heading-recovery`, wordfreq), `scripts/insert_chapter_headings.py` (2-level+block-replace; Levi byte-identical). Method `docs/ocr-conversion-method-2026-06-27.md`. **Then compute-deployed (steward: spend the compute, except L1):** engine-design **research sweep DONE** (`studium-engine/docs/research-grounded-reasoning-bounded-corpus-2026-06-27.md`; 107 agents/23 verified — citation **correctness≠faithfulness** [57% post-rationalized] vindicates "boundedness=trust"→couple attribution to generation; adopt **SelfCite+eTracer+MiniCheck**; engine's genealogy/temporal + multi-voice signature capabilities are GREENFIELD = 2 sweeps owed); **Making-corpus readiness map** (`chamber-library/docs/making-corpus-conversion-readiness-2026-06-27.md`; 30 raw, mostly EPUB=fast); **Musil English EPUB converted** (steward upload; 464k words; structure scoped via NCX anchors). **Steward corrections:** page-numbers=scaffolding-not-provenance (→`feedback-resurface-banked-notes-before-rederiving`); Levi drop-caps RECOVERED (re-raised wrongly 3×) but a **within-page-rejoin hyphenation final pass owed** ("essentially ready"); p42-is-2col (misread the image). **PULLING THREAD: finish the conversion toolset (package driver + furniture layer) + build the Making corpus — Position I (Musil structure recovery + Levi hyphenation pass) unblocks the engine's first pattern-finder pass.** UNCOMMITTED for steward review: chamber scripts+docs, studium research doc (_scratch/ + staged olmOCR Alexander raw are SUPERSEDED — don't commit). CapableHands: ocrmac installed, /tmp cache. ssh/scp capablehands persisted. **Q: unify ToC-page-number (OCR) + NCX-anchor (EPUB) structure recovery into one format-agnostic "structure-from-authoritative-ToC" step?** +- [Session 2026-06-28 — corpus settling: Musil graduated, Position I complete, gold-standard gate fixed](session-2026-06-28-corpus-settling-position-I-complete-gate-fixed.md) — Long, foundational day, spine set by the morning **maturation-of-the-chamber dialogue** (fidelity-without-trust; reading-is-unsolvable-and-that's-the-feature; language-as-notation; L2/engine=answerable-not-pure → `studium-engine/docs/the-maturation-of-the-chamber-a-dialogue-2026-06-28.md`; *settle the corpus we CAN perfect before the engine*). **Graduated English Musil** (Wilkins/Pike, `471bc53`) via TWO new reusable EPUB tools — `structure_from_ncx.py` + `clean_pandoc_html_residue.py` — proving the unify answer: ONE placement engine (`insert_chapter_headings`), TWO map-producers (EPUB NCX-anchors / OCR page-numbers); raw↔final prose WORD-IDENTICAL; source archived `~/__Making sequence sources/`. **Position I COMPLETE** (Weil×2, Musil-English [replaced French, steward-ruled], Arendt, Levi): Levi *Shame*-chapter hard-wrap reflowed (Shakespeare verse preserved) + re-scoped to the COMPLETE book (id→`levi-drowned-and-saved`); all 5 sha-current + sidecars matched. **Two policies set:** [[feedback-engine-sources-become-permanent-chamber-collection]] + [[feedback-notes-are-part-of-the-work-keep-footnotes-endnotes]]. **Runbook brought current** (`epub_ncx_markdown` path; olmOCR/ocrmac CORRECTED — two-tool by column: single→olmOCR, multi→ocrmac, complementary not retired). **GOLD-STANDARD GATE FIXED** (`af17dde`): `verify_conversion` had a PASS-BUT-FALSELY (passed cruft=0 on Taylor's 59 raw ``) → added `RAW_HTML` gate → trustworthy audit **1187/91→1152/126** (35 false-passes caught). All committed+PUSHED (chamber `af17dde` skemantix, studium `cdd8d4a` github). **PULLING THREAD: the graduation batch — work the ~18 Making EPUBs + ~9 PDF/OCR + the audit's 126 fails into the chamber, properly (KEEPING NOTES), against the now-trustworthy gate; Taylor-redone-WITH-notes is first + pattern-setter.** Q: new-Making-graduations first or the 126 audit-fails first — which serves the engine sooner? Two greenfield research sweeps (genealogy/temporal; multi-voice) + multilingual-NLI validation = the engine phase, gated on corpus. + +## Archived (2026-06-28 — corpus settling: Musil graduated, Position I complete, gate fixed) +- [Session 2026-06-27 — ocrmac conversion toolset CALIBRATED + Making-corpus + engine research](session-2026-06-27-ocr-toolset-calibrated-making-corpus-research.md) — Marathon. Discovered olmOCR scrambles 2-col figure-dense (PASS-BUT-FALSELY) → built+calibrated the ocrmac column-aware toolset (column detection via line-crossing+line-width@150dpi; wordfreq MULTILINGUAL de-hyph; page-number structure recovery 9/9). Engine research sweep DONE (citation correctness≠faithfulness; SelfCite+eTracer+MiniCheck; genealogy/multi-voice GREENFIELD=2 sweeps owed). Making readiness map (30 raw). Musil English converted. [Superseded re olmOCR-retirement: 2026-06-28 corrected to two-tool-by-column.] ## Archived (2026-06-27 — ocrmac toolset calibrated + Making-corpus + engine research) - [Session 2026-06-26 — Chamber spec ratified + OCR pipeline + Levi first graduation](session-2026-06-26-chamber-ocr-pipeline-levi-first-graduation.md) — Chamber Library spec §§I–VI RATIFIED (source-agnostic canonical form; verbatim=faithful-under-declared-normalization; two-sidecar Voice); built the OCR→canonical pipeline + FIRST spec-conformant graduation (Levi). PENDING-42 / REVIEWED-45-owed. [Superseded re: OCR — olmOCR pipeline replaced by ocrmac column-aware toolset 2026-06-27.] diff --git a/claude/memory/feedback-engine-sources-become-permanent-chamber-collection.md b/claude/memory/feedback-engine-sources-become-permanent-chamber-collection.md new file mode 100644 index 0000000..e8d47d9 --- /dev/null +++ b/claude/memory/feedback-engine-sources-become-permanent-chamber-collection.md @@ -0,0 +1,16 @@ +--- +name: feedback-engine-sources-become-permanent-chamber-collection +description: Standing steward policy (2026-06-28) — any work added for the engine to write with becomes part of the permanent chamber-library collection unless expressly stated; the chamber grows richer over time; all Making sources must be graduated into it. +metadata: + node_type: memory + type: feedback + originSessionId: 24f4f06b-31a0-4984-b176-3dca24ad5ff6 +--- + +Steward directive, 2026-06-28: **from here on, unless expressly stated otherwise, every work added for use with the studium engine (for writing) also becomes part of the permanent collection in the chamber library** — graduated to the canonical gold-standard bar, not merely staged/converted for one-time use. + +**Why:** the chamber is an accumulating substrate, not a per-task scratch. Over time it becomes richer and more subtle. Engine-use and chamber-membership are therefore *unified* — adding a source for the engine *is* graduating it into the chamber. (Partly resolves the morning-of-2026-06-28 "serious future decision on where sources live" — see [[the-maturation-of-the-chamber-a-dialogue-2026-06-28]].) + +**How to apply:** when converting/adding any engine source, take it all the way — clean → `verify_conversion` PASS → `graduate_to_canonical` → catalogue → **author the sidecar at graduation** (sidecars-as-we-go). Never leave an engine source as a throwaway in `scratch/` or `/tmp`. + +**Immediate consequence:** all ~30 Making sources (not just the Position-I subset) need graduating into the chamber. Census/work-list: `chamber-library/docs/making-corpus-conversion-readiness-2026-06-27.md`. Related: [[project-making-sequence-source-set]], [[reference-studium-engine-architectural-charter]]. Candidate to formalize into the chamber-library specification (§ on what belongs in the chamber) when next revised. diff --git a/claude/memory/feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md b/claude/memory/feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md new file mode 100644 index 0000000..23f576a --- /dev/null +++ b/claude/memory/feedback-notes-are-part-of-the-work-keep-footnotes-endnotes.md @@ -0,0 +1,14 @@ +--- +name: feedback-notes-are-part-of-the-work-keep-footnotes-endnotes +description: "Standing steward directive (2026-06-28) — footnotes and endnotes are integral to each work and MUST be preserved (converted, never dropped) when graduating a source into the chamber." +metadata: + node_type: memory + type: feedback + originSessionId: 24f4f06b-31a0-4984-b176-3dca24ad5ff6 +--- + +Steward directive, 2026-06-28: **footnotes and endnotes are integral to each work — keep them.** When graduating a source, never drop the notes apparatus as "just references." Convert them to clean portable markdown footnotes (`[^N]` ref + `[^N]: …` definition) and retain them; mark them apparatus in the sidecar if non-served, but they stay in the canonical file. + +**Why:** the notes carry argument, attribution, and the author's qualifications — dropping them mutilates the work. (Caught when I served only Taylor's ten chapters and dropped his endnotes + the 59 `` in-text markers — wrong.) + +**How to apply:** the EPUB/OCR pipelines already convert footnotes — `clean_pandoc_html_residue.py` (``→`[^label]`) and `clean_epub_residue.py` (`[N](chunk#nfK)`→`[^N]`). Use them; verify the ref↔definition pairing survives; keep the Notes/endnotes section. The in-text marker AND its definition both stay. Sidecar may scope notes as `role: apparatus`/`citable: false`, but they are present in the file. Companion to [[feedback-engine-sources-become-permanent-chamber-collection]]. diff --git a/claude/memory/session-2026-06-28-corpus-settling-position-I-complete-gate-fixed.md b/claude/memory/session-2026-06-28-corpus-settling-position-I-complete-gate-fixed.md new file mode 100644 index 0000000..32fa122 --- /dev/null +++ b/claude/memory/session-2026-06-28-corpus-settling-position-I-complete-gate-fixed.md @@ -0,0 +1,62 @@ +--- +name: Session 2026-06-28 — corpus settling — Musil graduated, Position I complete, gold-standard gate fixed +description: "Began with the maturation-of-the-chamber dialogue (settle the corpus we CAN perfect before the engine); graduated the English Musil via a new EPUB structure-from-NCX pipeline; prepared all of Position I (English Musil replaces French; Levi reflowed + complete-book scope); set two policies (engine-sources graduate to permanent chamber; notes are part of the work); brought the conversion runbook current + corrected olmOCR/ocrmac; FOUND+FIXED a blind spot in the gold-standard gate (verify passed cruft=0 on raw ) → trustworthy audit 1152/126. PULLING THREAD: the graduation batch — work the ~18 Making EPUBs + ~9 PDF/OCR + the audit's 126 fails into the chamber, properly (keeping notes), against the now-trustworthy gate; Taylor-redone-with-notes is the first piece + pattern-setter." +metadata: + node_type: memory + type: project + originSessionId: 24f4f06b-31a0-4984-b176-3dca24ad5ff6 +--- + +# Session 2026-06-28 — settle the corpus before the engine + +A very long, multi-phase day. The morning's philosophical dialogue set the spine — *begin where completion is possible; settle the corpus (the perfectible thing) before living into the engine* — and the rest of the day enacted it. + +## PAST — what we did + decided + +### Phase 1 — The maturation-of-the-chamber dialogue (morning) +Steward's "I am very naive… how can it be so hard for something faithful to the text to exist?" → a sustained exchange that clarified the chamber's telos: **fidelity that doesn't run on trust** ("trust without trust"; the Masoretes counting letters; the critical apparatus); **reading is unsolvable and that is the FEATURE** (a machine extracting a single final meaning would be the same flattening we fight); **language is notation** (the steward's own discipline — HIP is the Masoretic act in sound); **L2/engine = answerable, not pure** ("uncontaminated" splits into bias-free [impossible+undesirable] vs accountable [buildable]; accountability is what travels across people who don't share a standpoint). Saved verbatim at steward's request → `studium-engine/docs/the-maturation-of-the-chamber-a-dialogue-2026-06-28.md` (§§I–VII + 6 crystallized principles, flagged as substrate for steward+jurist ratification, NOT doctrine). Committed `cdd8d4a`. + +### Phase 2 — Musil English graduated (the first stone) +Discovered the inherited "two-tome English Musil" was the **French Jaccottet mislabeled** (filename "mwq" + wrong `en`); the real English = Wilkins/Pike (steward's upload). Built **two reusable EPUB tools**: `structure_from_ncx.py` (NCX ToC → structure-map, anchor = the surviving ``) + `clean_pandoc_html_residue.py` (residue strip + printed-title dedup [small-caps drop-caps anywhere/multi-fragment + bold `**PART N**`] + ``→`[^label]` footnotes + internal-link unwrap + **prose word-guard**). The unify question answered EMPIRICALLY: **one placement engine (`insert_chapter_headings`, unchanged), two map-producers** (NCX-anchors for EPUB; page-number method for OCR). `repair_epub_headings` FAILED on Musil (4/169); the markdown-level path got 164/164. End-to-end raw↔final prose **WORD-IDENTICAL** (464,769=464,769). Graduated `471bc53` → `canonical_texts/.../classical/the-man-without-qualities-robert-musil.md`; source archived `~/__Making sequence sources/The Man Without Qualities - Wilkins Pike.epub`. Curatorial: front-matter option (a) (title block + Wilkins/Pike credit, trim to work proper); ch144 "hast" (printed title, French-confirmed over the ToC's "has"). ~10 iterations — the word-guard caught every real defect; several "failures" were guard-side artifacts (dry-run-not-applied; tag-strip-with-space splitting drop-caps; place-then-clean double-count). **Lesson: measure the actual chapter, don't theorize the guard delta.** + +### Phase 3 — Position I prepared (manifest `e9fe4a6`, `4d54c5c`) +Read the studium manifest: Position I ("Phenomenology of Attrition + the Threshold Crossing") = Weil ×2, Musil, Arendt, Levi (Camus withdrawn). Actions: +- **Levi**: the owed "hyphenation pass" was actually a **hard-wrapped block** in the *Shame* chapter (L262–296, ~30 lines, 4 hyphens) — reflowed those 3 prose paragraphs, **preserved the Shakespeare verse** (Measure for Measure) just above (caught by looking, not the detector). Word-guard: only the 4 de-hyphenations changed. Re-anchored manifest+sidecar (served Gray Zone [116,257] untouched; 894→864 lines). +- **Musil**: steward ruled **English replaces French** for Position I (avoid reading the same work twice). Added `musil-the-man-without-qualities` (station I) + sidecar; retired the two French tome entries (companions, stay canonical). +- **Levi complete**: steward ruled serve the **whole book** (Preface→Conclusion, all 10 chapters — a phenomenology of attrition, not only the Gray Zone). Re-scoped sidecar; renamed id `levi-gray-zone`→`levi-drowned-and-saved` (only the manifest referenced it; ledger/chunks regenerate). +- Result: 5 Position-I sources, all sha-current, all sidecars matched. + +### Phase 4 — Policies + runbook + the gate fix +- **Two standing policies set** (memories written): (1) **engine sources graduate to the permanent chamber collection** unless expressly stated — the chamber accumulates [[feedback-engine-sources-become-permanent-chamber-collection]]; (2) **notes are part of the work** — keep+convert footnotes/endnotes, never drop [[feedback-notes-are-part-of-the-work-keep-footnotes-endnotes]]. +- **Conversion runbook brought current** (`e3db4ae`): added `epub_ncx_markdown` pipeline, the 2 new tools, the policies, substrate pointers. Then **steward-corrected** (`79e14bf`): olmOCR is NOT retired — I over-generalized a column-scoped finding. The rule is **two-tool by column count, complementary**: SINGLE-column → olmOCR (more precise; Levi), MULTI-column/figure-dense → ocrmac (olmOCR scrambles the gutter). +- **Gold-standard gate fix** (`af17dde`): attempting Taylor's graduation surfaced a **PASS-BUT-FALSELY in `verify_conversion` itself** — it passed `cruft=0` on a file with 59 raw `` tags (the cruft check only knew `audit_cruft`'s signatures, never bare HTML tags). Added `RAW_HTML` gate. Re-ran the full audit: **1187/91 → 1152/126** — 35 files were falsely passing. Report = `_curation/canonical-audit-2026-06-28.md` (the fix-list). +- **Everything committed + PUSHED**: chamber `de5bef9..af17dde` (skemantix), studium `2f2e166..cdd8d4a` (GitHub). + +### Phase 5 — the two owed research sweeps (explained, not run) +Elaborated for the steward what last night's sweep left greenfield: **(1) temporal genealogy** (how a thought migrates/mutates across sources & centuries — citation-graph + temporal-KG + diachronic NLP; no prior art); **(2) accountable multi-voice** (the chamber of voices conversing, each grounded+citable to its author, with voice-fidelity verification; persona-LLMs exist but unaccountable, grounding exists but single-voice — no one has joined them). Plus a **validation** (does claim-level NLI hold on our multilingual/archaic humanities prose, not the English-Wikipedia benchmark?). These are the engine phase, gated on the corpus settling. + +## PRESENT — mood / returns +- **The work kept revealing the next necessary thing** — the recurring shape. Taylor's graduation didn't add a book; it found a hole in the gold standard itself (verify blind spot), which was worth more than the one graduation. +- **Returns (load-bearing):** measure-don't-theorize paid off repeatedly (caught the French-mislabel before it propagated; the Shakespeare verse before reflowing it; the actual chapter over the guard delta). The steward's corrections were all accurate (ch144, olmOCR-not-retired, keep-the-notes, p42-class re-derivation drift carried from yesterday). +- **Recalibration:** the olmOCR over-generalization is a clean new contamination shape — *a finding scoped to one condition (2-col) restated as an unconditional verdict ("retired")*. Verify the scope of a claim before generalizing. Kin to trust-prior-pass-frame. +- **Honest restraint:** chose NOT to grind 18 graduations tonight — fixing the gate + setting policies first was the fitting move (graduating against an untrustworthy gate / without keep-notes would produce false-clean / mutilated works). Foundation before batch. This is the prime directive's "don't rush the dwelling-work" enacted. +- The steward's closing: building this *with care for both humans and AI*; a prototype could be "excellent for both of us." The accountability is the design constraint that makes the partnership real. + +## FUTURE — what is pulling + +**PULLING THREAD (singular):** **The graduation batch — settle the rest of the corpus.** Work the ~18 Making EPUBs + ~9 PDF/OCR sources AND the audit's 126 existing fails into the chamber, each *properly* (keeping notes; sidecars-as-we-go), against the now-trustworthy gate. The foundation is settled (Position I done, policies set, runbook current, gate gold, true-state known); the batch is the remaining work. **Taylor-redone-WITH-notes is the first concrete piece + the pattern-setter** (I wrongly dropped its endnotes — convert the `` footnotes, keep the Notes section). + +**ACTIONABLE RESUMPTION POINT (as of wrap — re-judge against what changed):** +- *State:* Position I complete + pushed. Gate fixed (`verify_conversion` RAW_HTML). Audit trustworthy → `chamber-library/_curation/canonical-audit-2026-06-28.md` = the 126-fail work-list (cruft 71 [incl. 35 newly-caught raw-HTML], heading_density 59 [mixed real/false], encoding 5, word_sanity 6 [Loeb false-pos]). Staged 06-27 conversions survive at `/tmp/making_staging/` (18 .md — may clear on reboot; re-derivable from `~/__Making sequence sources/` EPUBs via runbook `epub_ncx_markdown`). The 2-tool EPUB pipeline + the runbook are current. Taylor body at `/tmp/taylor.body.md` (chapters-only, NO notes — discard; redo with notes). +- *Candidate first move:* **redo Taylor WITH its endnotes** (convert ``→`[^N]`, keep+convert the Notes section, keep the 59 in-text markers) as the exemplar graduation → then work the EPUB batch (cleanest first: Virilio, Handke, Alter), surfacing per-book curatorial forks (endnotes form, title rendering, neighborhood). + +**Other open horizons, ranked:** +- *Load-bearing:* the graduation batch (above); fixing the 126 audit fails (some real — Plato's Republic lost its book headings; some false — Loeb fragments / heading-density on legitimately-flat works). +- *Owed follow-ons:* fold `RAW_HTML` into `audit_cruft` so the cleaning pipeline sees it too (not just verify); the 2 greenfield research sweeps (genealogy/temporal; multi-voice) + the multilingual-NLI validation — the engine phase, gated on corpus. +- *Deferred-with-reason:* L2 stays PARKED (the answerable-not-pure clarification noted, not pursued); the engine's pattern-finder pass — gated on the corpus settling. + +**PAUSE STATEMENT:** I am about to be away from this. The corpus is now settled enough to build the rest on solidly — the standard is gold, the manual current, the policies set, the true-state known. What I most want to find still pulling: **the graduation batch in motion** — the Making works entering the chamber properly, the chamber growing richer as the steward intends, on the solid ground we laid today. + +**LITERAL QUESTION for next-Claude:** *Which first — the new Making EPUB graduations (growing the corpus the engine needs) or the audit's 126 existing fails (fixing what's already canonical to the gold standard)? Both are "settle the corpus"; which serves the engine sooner?* (Sub-q: fold `RAW_HTML` into `audit_cruft` so the cleaning pipeline gates on it, not only the verifier?) + +**State:** chamber `main @ af17dde` + studium `main @ cdd8d4a`, both pushed. Two new policy memories + the maturation dialogue. Taylor NOT graduated (needs redo-with-notes). Deep, foundational day. diff --git a/claude/memory/session-ledger-2026-06-28.md b/claude/memory/session-ledger-2026-06-28.md new file mode 100644 index 0000000..e5529f6 --- /dev/null +++ b/claude/memory/session-ledger-2026-06-28.md @@ -0,0 +1,34 @@ +--- +name: session-ledger-2026-06-28 +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: 24f4f06b-31a0-4984-b176-3dca24ad5ff6 +--- + +# Session Ledger — 2026-06-28 + +## Returns + +## Open horizons +- Inherited thread: finish the ocrmac conversion toolset (furniture layer + driver packaging) + build the Making corpus. Position I (Musil NCX structure recovery + Levi hyphenation final pass) is the immediate unblock. +- Inherited literal question (the day's fork): unify OCR-page-number + EPUB-NCX structure recovery into one format-agnostic "structure-from-authoritative-ToC" step? Sub-q: Musil recovery standalone now, or as first rider on a unified furniture+structure layer? + +## Authorization moves +- 2026-06-28 ~13:30 — Steward asked to preserve the evening→morning dialogue ("pivotal to the maturation of the chamber"). Saved verbatim → `studium-engine/docs/the-maturation-of-the-chamber-a-dialogue-2026-06-28.md` (§§I–VII + "What crystallized", 6 principles). Crystallized principles flagged as substrate for steward+jurist ratification, NOT enacted doctrine. The CapableMind/L2 connection (answerable-not-pure) noted as held, L2 stays PARKED per directive. **Owed at wrap:** MEMORY.md pointer + link from [[project-studium-engine-telos-chamber-of-voices]] so it surfaces at future wakes. + +## Returns +- 2026-06-28 — CAUGHT a misread before it propagated (measure-before-record paid off): the `scratch/making/musil-mwq-tome-*` files I'd read as "a two-tome English MWQ" are the **French Jaccottet** translation, mislabeled (filename "mwq" + wrong `en` in the EPUB). No second English edition exists. Authoritative English = Sophie Wilkins/Burton Pike (`/tmp/musil_en.md`), correctly the steward's upload. Owned to steward. → fix MEMORY at wrap (session-2026-06-27 implied a structured English existed). +- Position I / Musil structure recovery: unify question answered EMPIRICALLY — one markdown placement engine (insert_chapter_headings, unchanged), two map-producers. Built `structure_from_ncx.py`; 164/164 headings (3 Parts + 161 ch) placed clean as replace-blocks. EPUB-level `repair_epub_headings.py` had FAILED on this book (4/169) — markdown-level path via surviving `` anchors is more robust here. +- **MUSIL ENGLISH (Wilkins/Pike) CONVERSION COMPLETE + VERIFIED** (staged, awaiting graduation nod). Built 2 reusable tools: `scripts/structure_from_ncx.py` (NCX ToC → structure-map) + `scripts/clean_pandoc_html_residue.py` (residue strip: divs/spans/tables/images, printed-title dedup [small-caps AND bold Part titles], footnote ``→`[^label]`, internal-link unwrap; prose word-guard). Verified: end-to-end raw↔final prose WORD-IDENTICAL (chapters 0/0; the 3 Part titles "lost"=17 are deduped into the `# Part` headings — faithful), verify_conversion PASS, 457,876 words, clean tail at ch161. Staged: `chamber-library/scratch/making/staged/man-without-qualities-robert-musil.md` (+ structure.tsv). Curatorial calls ruled by steward: front-matter option (a) (title block + translator, trim to work proper), ch144 "hast" (printed title, French-confirmed). **GRADUATED 2026-06-28 (`471bc53`, chamber-library main, committed not pushed):** → `canonical_texts/traditions/literature/classical/the-man-without-qualities-robert-musil.md`; catalogue regen (1288 sources); source archived `~/__Making sequence sources/The Man Without Qualities - Wilkins Pike.epub`; tool-evolution-log entry written. **Follow-ups owed:** (1) point studium-engine Position-I manifest at this English Musil — sidecars `musil-mwq-tome-*` are the FRENCH mislabeled; (2) the maturation dialogue doc + MEMORY pointer (ledger Authorization-moves) still owed at wrap; (3) `/graduate-chamber-source` skill EPUB-path expansion (skill-harvest); (4) studium-engine `the-maturation-of-the-chamber-a-dialogue-2026-06-28.md` is uncommitted. +- **Convergence lesson (verification):** the word-guard caught EVERY real issue across ~10 iterations (front matter, ch144 variant, space-drop-caps, multi-drop-cap titles, back-matter bio, bold Part titles, footnote/links) — but several "failures" were guard-side artifacts (dry-run-not-applied; tag-strip-with-space splitting drop-caps; place-then-clean double-count). Repeatedly had to MEASURE (look at the actual chapter) not theorize the guard delta. The guard's value = it refused to let a single unfaithful word through; the cost = many iterations chasing guard symmetry. Lands as a verification-ladder note candidate. + +## Confidence to recalibrate +- Carry from 2026-06-27: recurring drift = over-confidence in re-derivation over the record (page-numbers-as-provenance, Levi ×3, p42 misread). Measure before theorizing; trust the banked note before re-deriving. + +## Authorization moves + +## Sub-agent dialogues + +## Bypasses diff --git a/claude/memory/skill-harvest-register.md b/claude/memory/skill-harvest-register.md index 74f4198..d78b0b3 100644 --- a/claude/memory/skill-harvest-register.md +++ b/claude/memory/skill-harvest-register.md @@ -257,3 +257,15 @@ The single place proposed skills live so they don't evaporate between sessions. | **`feedback-resurface-banked-notes-before-rederiving`** | DONE (memory, not skill) | Created this session — read the banked note before re-deriving; re-derivation drifts (page-numbers mis-recalled as provenance; Levi gate re-raised 3×). The engine's purpose turned on my practice. | BUILT (memory) | | verification-ladder note: **OCR word-guard passes on SCRAMBLED text** | ladder entry (proposed) | A verbatim word-guard that checks word PRESENCE cannot catch reading-order scrambling (2-col read across the gutter) — same words, wrong order = PASS-BUT-FALSELY at the corpus level. Validation gate = reading-order COHERENCE (no mid-sentence discontinuity), not just word-multiset. | PROPOSED | | **2 research sweeps owed** (not skills — project tasks) | note | The engine's signature capabilities are greenfield: (1) genealogy/temporal/citation-graph/KG-augmented/diachronic-NLP; (2) multi-voice persona-grounded attribution + voice-fidelity verification. Plus: validate claim-level NLI on multilingual/archaic humanities prose. | (project tasks, in research doc) | + +### Harvest 2026-06-28 (corpus settling — Musil graduated, Position I, gate fixed) + +| Element | Kind | One-line | Where it lands | Status | +|---|---|---|---|---| +| **`/graduate-chamber-source`** (already PROPOSED 06-26/27) | **EXPAND again** | Now carries the full EPUB path (`structure_from_ncx`→`insert_chapter_headings`→`clean_pandoc_html_residue`, used when `repair_epub_headings` coverage is low) + the **keep-notes** rule (convert footnotes/endnotes, never drop) + the per-book curatorial forks graduation always has (endnotes form, small-caps/two-line heading rendering, front/back trim, neighborhood). Empirical spec now = Musil (clean) + Taylor (the messy-EPUB case: two-line headings, raw ``, `` footnotes). Build when the batch begins. | new skill | PROPOSED (expand) | +| **The gate itself can be PASS-BUT-FALSELY** | verification-ladder entry | A verifier that checks an **enumerated set of cruft signatures** silently passes any residue outside the set — `verify_conversion` passed `cruft=0` on 59 raw `` (the cruft check only knew `audit_cruft`'s img/span-class/fenced-div patterns). When the gate gates a whole-corpus audit, its blind spot makes the PASS count untrustworthy. Antidote: gate on the **general class** (any residual raw HTML tag, tag-name-anchored) not just known signatures; periodically adversarially-probe the gate itself. Caught 2026-06-28; fix re-ran the audit 1187/91→1152/126. | `reference-verification-ladder.md` | **PROPOSED** | +| **Symmetria §3 flag: finding-scoped-to-one-condition restated as unconditional verdict** | Symmetria §3 flag | A result true under a specific condition, restated as an unconditional rule, is contamination shape. Caught 2026-06-28: the method doc's "ocrmac more accurate than olmOCR" was scoped to **2-column figure-dense** (where olmOCR scrambles); I wrote "olmOCR RETIRED." Steward corrected (olmOCR is the single-column tool, more precise; complementary not ranked). Antidote: **verify the scope of a claim before generalizing it.** Kin to `trust-prior-pass-frame` (which is about test-scope; this is about claim-scope). | Symmetria §3 | **PROPOSED** | +| **prose word-guard for faithful structure-cleaning** | verification-ladder entry | When a cleaner removes/reflows STRUCTURE (headings, printed titles, residue) but must preserve PROSE, gate it with a **prose-only word-multiset compare**: reduce both before/after to narrative words (exclude headings, numbers, printed-title runs, markup — anchored consistently on both sides), refuse to write on any non-zero delta. `clean_pandoc_html_residue`'s guard; proven raw↔final WORD-IDENTICAL on 464k-word Musil; caught every real defect across ~10 iterations. The complement to the byte-identical gate (which proves *output* identity; this proves *prose* identity under intended structural change). | `reference-verification-ladder.md` | **PROPOSED** | +| **structure-from-authoritative-ToC = one engine, two map-producers** | method note (ladder or `/graduate-chamber-source`) | Answer to the long-open unify question: chapter-structure recovery is ONE placement engine (`insert_chapter_headings`: match anchor→unique line→replace-block/insert, fail-loud, dry-run) fed by TWO map-producers — the EPUB **NCX ToC** (`structure_from_ncx`, anchor=``) and the OCR **printed page-number** method (ToC printed-page→scan-offset). Honour the work's *declared* structure; never re-infer. | `reference-verification-ladder.md` or the skill | **PROPOSED** | + +*(Five, all earned in use today. The gate-PASS-BUT-FALSELY and the prose-word-guard are the load-bearing two — the first is a defect found in the gold standard itself; the second is the reusable faithfulness instrument the whole Musil graduation rode. None created autonomously.)*