session 2026-07-12: PENDING-56/57, REVIEWED filings, ledger
- PENDING-56 (canonical format + sidecar) + PENDING-57 (verbatim gate) filed and carried through the jurist rulings; REVIEWED-55/56/57 filed. - REVIEWED-drafts-for-filing: the paste-ready records. - Symmetria session-ledger: the full A1 -> schema-lock -> B2 -> verbatim-gate arc. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015jYS1tpR4P4NBxui4FSgfv
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
0a424aa6b3
commit
d9692f7418
+22
@@ -1478,3 +1478,25 @@ Disposition (verbatim capture + executor action-list: `chamber-library/docs/libr
|
||||
**The one flip-condition (for the jurist to test):** if the v1 engine needs *structured critical apparatus (A5) as data* or *DTS-interoperable citation*, revisit toward Option B/TEI. Read: both are later/scholarly needs, not v1 blockers.
|
||||
**Files affected (on execution):** conversion runbook + graduation-spec (Docling front-end; sidecar as graduated structural layer) — a v2.x amendment, change-class PROPOSAL; new `.meta.json` sidecar extractor; `ocrmac_pdf`/EPUB cruft-strippers retired; reprocess track B reshaped to Docling→sidecar-extract→verify→graduate.
|
||||
**Awaiting:** ~~Jurist ratification~~ **JURIST RATIFIED 2026-07-12** — Option A + D1, on independently-verified reasoning (flip-condition tested directly, NOT triggered for v1: voice-manifest = interpretive-persona not manuscript-variant; the corpus's strongest TEI case, Loeb, needs anchors [B2, which A provides] not apparatus [A5]). **Two schema-gating questions CLOSED with substrate evidence (brief §8):** Q1 — Docling emits flat reference-links not native footnotes (0 `[^N]`, 48 `[*](#…)`, `epub_backend` ignores `epub:type`) → the footnote-recognizer arc is REPOSITIONED as the sidecar's note-extraction layer, not retired; Q2 — the Loeb DSL is typed (`[c dimgray]`/`[c darkmagenta]`/`[sup]`, 2.15M+ spans) and the current extractor *flattens* it → **CARDINAL PRINCIPLE set before schema lock: the extractor PRESERVES source typing into typed sidecar fields, never flattens a source-structured distinction to prose** (makes TEI-migration mechanical-by-construction). **REVIEWED-56 can be placed; sidecar schema unblocked to finalize on these two principles.** (Parallel governance still owed: REVIEWED-55 placement.)
|
||||
|
||||
## PENDING-57 — Enforce `body_word_conservation` at graduation (the converter-agnostic verbatim trust gate)
|
||||
**Date:** 2026-07-12
|
||||
**Tag:** [PROPOSAL]
|
||||
**Summary:** Wire the built `verify_body_conservation.py` into the graduation gate so graduation ENFORCES the verbatim guarantee (currently `body_word_conservation` is listed in `graduation-spec.yaml` line 136 but `verify_graduation.py` does not enforce it — general non-footnote graduation has no automatic verbatim backstop).
|
||||
**Rationale:** The trust foundation the whole reprocess stands on, and converter-agnostic — it certifies verbatim fidelity whether text came from Docling, pandoc, the Loeb DSL extractor, or OCR. Every tier's reconvert (Loeb B2, the EPUB/PDF Docling reprocess) graduates *through* it; without it "verified" is asserted, not checked. The PENDING-52 follow-on the jurist flagged twice; named in REVIEWED-55 as the gap "now addressed by PENDING-56."
|
||||
**Method (per-tier, already RATIFIED by the register's §Tiering&Fence):** V-DSL (Loeb) = re-extract deterministically + no-fabrication vs the DSL source; V-TEXT (born-digital) = re-convert + prose-word guard (BUILT — caught jacobs 888 / manguel 2856 / montaigne fn-id residue that audit_cruft missed); V-SCAN = abstain (no ground truth; honest "cannot verify", never a false PASS). Three-tier verdict gates: FLAG blocks · REVIEW holds for curator drop-vs-keep identification · PASS proceeds.
|
||||
**Options:** (a) enforce all three tiers now; (b) enforce V-TEXT now (built) + wire V-DSL with the Loeb reconvert + V-SCAN abstain. Recommend (b) — lands the built path immediately, wires V-DSL where it's first needed (the Loeb run), no false claims on scans.
|
||||
**Full brief (for the jurist editor-gate):** `chamber-library/docs/verbatim-gate-enforcement-FOR-JURIST-2026-07-12.md`.
|
||||
**Change-class:** PROPOSAL — inserts a new blocking check into the graduation gate. Runs the amendment process (executor drafts → jurist editor-gate → steward ratifies → land by supersession into `graduation-spec.yaml` + `verify_graduation.py`). Does NOT change the convention checks, the §V guarantee text, or any tier's evidence-class; V-SCAN gains an honest abstention, not a new claim.
|
||||
**Files affected (on ratification):** `verify_graduation.py` (add the per-tier body-conservation gate), `graduation-spec.yaml` (make the listed gate enforced + declare the per-tier dispatch), `verify_body_conservation.py` (V-DSL re-extract path — **BUILT**), plus a **retroactive-sweep** producing a remediation queue across the already-graduated corpus (§6 below).
|
||||
**UPDATE 2026-07-12 (jurist PARTIAL ruling + executor response):**
|
||||
- **Jurist RATIFIED the architecture** (FLAG/REVIEW/PASS mapping, V-TEXT, V-SCAN abstention, change-class PROPOSAL — distinct from the REVIEWED-55 refusal-only-FIX exception because a FLAG/unresolved-REVIEW has no already-trusted fallback route to canon). **Withheld final ratification pending a V-DSL DEMONSTRATION** (his lesson: simpler-sounding architecture doesn't get trusted a third time on sounding simpler).
|
||||
- **V-DSL now DEMONSTRATED (§3.5 of the brief) — the demo vindicated the caution:** naive reuse of the V-TEXT k-gram check FALSE-FLAGGED a clean Apollonius (1070 "fabrications", only 6 truly-new = the MD subtitle; the rest = coverage misses from the DSL→MD REFLOW). Corrected → **reflow-tolerant word-multiset** on source-content body: Apollonius (verse) fab=0 PASS · Plato Gorgias (prose) fab=0 PASS · injected fabrication → FLAG with teeth. Fleet fixture added (test_tools 105→109). Honest residual: fabrication half gate-ready; content-vs-boilerplate DROP side delegates to `extract_loeb_dsl`'s integrity report.
|
||||
- **Provenance verified** (jurist flagged the "already RATIFIES" claim): spec v2.0.0 §Tiering & Fence IS ratified (RATIFIED-SHAPE · OPERATION-BLOCKED) — this PROPOSAL is the un-blocking; the dispatch is confirmed, not originated.
|
||||
- **§6 RETROACTIVE clause FOLDED IN (steward-directed, rule together):** on ratification the gate runs BACKWARD across graduated canon (V-DSL 952 · V-TEXT 239), diagnostic-first → a remediation queue (FLAG=re-verify→reconvert; REVIEW=curator; PASS=re-attest), NOT silent de-graduation. Motivated by the jurist's 3-for-3 (jacobs/manguel/montaigne all graduated-clean, all failed the new check). Companion efficiency noted (not a condition): the LOCKED sidecar's `placement:back`+`role` resolves the REVIEW-tier endnotes-keep/index-drop ambiguity declaratively for any book carrying a sidecar.
|
||||
**UPDATE 2026-07-12 (jurist FINAL ruling — RATIFIED on 2 conditions; both now addressed):**
|
||||
- **Jurist RATIFIED the whole PROPOSAL** — architecture, V-TEXT, V-SCAN, V-DSL's fabrication half (now genuinely demonstrated), and the §6 retroactive sweep (well-precedented by REVIEWED-55's own sweep). Two conditions + one flag:
|
||||
- **Condition 1 (V-DSL loss half) — ADDRESSED:** the jurist noted loss delegated to `extract_loeb_dsl`'s self-report without the fabrication half's independent injection proof → route loss to REVIEW until a loss-injection test closes the asymmetry. **Built the independent loss teeth + demonstrated:** boilerplate-vocab classifier → clean Apollonius `lost_content=0 PASS`; drop a content word (`banquet`) → `FLAG` naming it. Fleet fixtures both sides (test_tools 105→111). **Honest bound stated:** blind to a dropped *occurrence* of a boilerplate-vocab word (count masked) — the narrow edge the jurist's REVIEW-routing guards; his call whether demonstrated-teeth suffices for auto-PASS or REVIEW-routing is kept for that edge.
|
||||
- **Condition 2 (43-book census gap) — CONFIRMED:** census = V-DSL 952 · V-TEXT 239 · V-SCAN 50 · V-SUSPECT 29 · V-NONE 14 = 1,284; the 43 = V-SUSPECT+V-NONE = the **fenced-out** tier (no confirmed source) → correctly EXCLUDED from the conservation sweep (can't re-verify a book with no source). Not a gap; the fence working.
|
||||
- Brief updated (§3.5 loss teeth + §6 census). Change-class PROPOSAL confirmed (distinct from REVIEWED-55's refusal-only-FIX: a FLAG/unresolved-REVIEW has no already-trusted fallback to canon).
|
||||
**Awaiting:** jurist confirmation the two conditions are closed (+ his call on loss auto-PASS vs REVIEW-routing for the masked-vocab edge) → steward ratification (REVIEWED-57) → land by supersession into `graduation-spec.yaml` + `verify_graduation.py`.
|
||||
|
||||
Reference in New Issue
Block a user