session 2026-07-10: PENDING-53 landed (engine hash-locality) + PENDING-54 pre-processor build-in; REVIEWED-52/53/54 drafted; session file + ledger + KG(+5) + skill-harvest + MEMORY index rotate
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
37b05ebfc2
commit
9e148b7a8f
@@ -391,4 +391,14 @@ The single place proposed skills live so they don't evaporate between sessions.
|
||||
### Harvest 2026-07-09 evening (P1 clean + the cross-repo re-anchor miss + the EPUB-normalizer pivot)
|
||||
- **PROPOSE — verification-ladder entry: `re-anchor spans BOTH repos`.** When a chamber canonical is re-hashed (source-clean OR reconvert), the sha-binding surface is NOT chamber-internal only: studium-engine binds via `corpus/manifest.yaml` sha + `sidecars/*.source_sha256` + `coverage-ledger.json`, enforced by `ingest_gate §1.1`. **Discipline:** grep BOTH `chamber-library` + `studium-engine` for the OLD sha (zero occurrences = completeness gate); regenerate the engine ledger via `ingest_gate` (never hand-edit the derived ledger); the engine gate re-VALIDATING is the proof. Born 2026-07-09 (P1 re-anchored chamber only; engine's 4 bindings missed, caught by luck during P2). **Already landed operationally** in `conversion-runbook.yaml` `reanchor:`; the ladder is the cross-workstream home. Kin to `trust-prior-pass-frame` (cross-repo variant). Home: `reference-verification-ladder.md`. **PROPOSED.**
|
||||
- **PROPOSE (surface, not auto-apply) — chamber `CLAUDE.md:67` discipline note.** The load-bearing line *"Clean at the SOURCE layer … (new hash, re-anchor)"* under-specifies what "re-anchor" covers — the exact under-specification that produced the miss. Add a cross-repo pointer to the runbook `reanchor:` block. This is a **discipline change** → surface for steward review per the CLAUDE.md-freshness rule (not a mechanical fleet/term update). Pairs with PENDING-53 (which completes the *governed graduation-spec* side). **PROPOSED.**
|
||||
- *Watch-list (not yet a skill): `/normalize-epub`* — a structural, verbatim-guarded EPUB normalizer keyed on the bidirectional href↔id mirror predicate (this session's pivot). Premature — the tool doesn't exist yet; the pulling thread is to prototype-then-build it. If it proves out, it earns a skill that carries the detector→converter→verbatim-guard sequence. **NOT YET PROPOSED (build first).**
|
||||
- *Watch-list (not yet a skill): `/normalize-epub`* — a structural, verbatim-guarded EPUB normalizer keyed on the bidirectional href↔id mirror predicate (this session's pivot). Premature — the tool doesn't exist yet; the pulling thread is to prototype-then-build it. If it proves out, it earns a skill that carries the detector→converter→verbatim-guard sequence. **NOT YET PROPOSED (build first).** → **DISCHARGED 2026-07-10:** the tool was built + shipped into the chamber fleet (`inject_epub_footnotes.py` + `convert_mega_epub.py`, PENDING-54/REVIEWED-54). NOT proposing a `/normalize-epub` skill: the *method* that produced it (measure-before-build → census → pandoc-2×2-diagnosis → prototype → adversarial-test → per-pair verbatim guard) generalizes to existing disciplines (`/pre-build-audit`, the verification ladder, adversarial-verify), so no new skill is earned; the tool + its `tool-evolution-log` entry carry the specifics.
|
||||
|
||||
### Harvest 2026-07-10 (EPUB footnote pre-processor: census → hardening → ruling → fleet build-in)
|
||||
|
||||
| Element | Kind | One-line | Where it lands | Status |
|
||||
|---|---|---|---|---|
|
||||
| **verify at the granularity of the mutation, not the aggregate** | verification-ladder entry | A whole-set invariant (a document-wide word-multiset guard) can PASS while a per-item operation (a cross-note swap — a word from note A landing in note B's body) violates it, because the total bag is unchanged. **Check per-item, keyed by the item's own identity** (here: per-footnote-pair, keyed by (destination-file, id)). Earned hard 2026-07-10: the jurist (PENDING-54 §3) caught that the aggregate guard was blind to a swap → the per-pair guard was built, teeth-demonstrated (a deliberate swap caught), and it **immediately earned its keep** by surfacing Jung's cross-volume id reuse (81 collisions) that a bare-id key hid. Kin to `trust-prior-pass-frame` (verify at the scope of the change) — this is verify at the *granularity* of the change. | `reference-verification-ladder.md` | **PROPOSED** |
|
||||
|
||||
*Mechanical (applied at wrap per §1.6 CLAUDE.md-freshness): chamber `CLAUDE.md` fleet line gains the two footnote-pre-processor tools (tools entered the fleet — event-based update). Discipline-level items (the CLAUDE.md:67 re-anchor note from 2026-07-09; a §V ratified-spec cross-ref for the pre-processor) remain surfaced-not-applied.*
|
||||
|
||||
*(One ladder proposal, load-bearing — it's a clean generalization the jurist forced, and the guard it names has already caught a real defect. The session was otherwise disciplined [returns held: measure-before-build, verify-against-substrate, honest-refuse-built-into-the-tool]; no other harvest manufactured.)*
|
||||
|
||||
Reference in New Issue
Block a user