session 2026-06-16: officina (ADR-008) + chamber conversion tooling trustworthy + Station-I corpus complete; review-after-every-use discipline

This commit is contained in:
David F Glidden
2026-06-16 17:52:36 +02:00
parent c1deb0a432
commit 555d0c2eec
5 changed files with 110 additions and 1 deletions
+17
View File
@@ -169,3 +169,20 @@ The single place proposed skills live so they don't evaporate between sessions.
| **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.)*
### Harvest 2026-06-16 (officina + the chamber conversion-tooling upgrade)
**Standing discipline ESTABLISHED (steward-directed):** *review every conversion/audit/repair tool after each use — success or failure — capture what it taught, iterate until reliable.* Home: `chamber-library/_curation/tool-evolution-log.md` (operationalizes conversion-skill-plan §13). PASS-BUT-FALSELY (tool reports success on a wrong result) is the priority signal. **This is a standing memory:** see [[feedback-tool-review-after-each-use]].
**BUILT + validated 2026-06-16 (the conversion batch's tools, "made most effective they can be"):**
- `audit_cruft.py` hardened — added `md_image` (any `![](…)`, not just `img/`), `svg_raw`, `repl_char` (`U+FFFD`). Re-audit surfaced **160 standing canonical files with residue the old gate hid** (95 image / 64 svg / 8 encoding) → corpus cleaning pass owed.
- `verify_conversion.py` NEW — the composite verifier (the planned `/convert-verify` in script form): cruft + heading-density + ocr-damage + encoding + word-sanity, pass/fail per check. Calibrated (Greek-apparatus false-positive fixed → 948/952 on clean Loeb tier).
- `repair_epub_headings.py` fixed — hyphen-separator bug (Crawford 4→12 headings, all chapters) + honest structural-coverage report (fails loud, no more silent partial ships).
**PROPOSED (register, awaiting steward / for the historical-treatise track):**
- Author the four `/convert-*` skills proper (the v3 plan) — today's manual run is their empirical spec.
- `ocrmac_pdf.py`: retain per-token confidence (currently discarded) → per-page confidence + low-confidence flagging; auto-detect-body-column (the TODO); apparatus-zone separation.
- **OCR frontier = research track, not a tweak:** no validated polytonic-Greek/Latin/fraktur/critical-apparatus path exists (ocrmac=modern-Latin only; Marker CPU-infeasible >50pp). Needs investigation before historical treatises + the apparatus `role` vocabulary (jurist-owed).
- Positive language-validity check (dictionary-valid-word ratio per language) for verify_conversion — catches "no cruft fires but text is OCR garbage."
- Promote today's catalogue census (title+author co-required, evidence-emitting) into a reusable `census_membership` tool.
- Calibration follow-ups logged: word_sanity floor vs genuine short fragments; repair coverage threshold should weight content over front-matter.