session 2026-07-25→27: spec v2.7.0 (REVIEWED-75) + v2.8.0 (REVIEWED-73 voice-purity) landed; source_lines FIX ×2; 2 skill proposals

Session file + ledger returns + 7 KG appends (2 drift-patterns, 3 good-direction,
2 facts) + feedback-derive-the-rule-from-the-consumer-not-from-the-survivor.
MEMORY.md: prior Active Session demoted to MEMORY-reference.md, new promoted.
Skill-harvest register: /wake-up backlog substrate-check patch + /field-divergence-sweep
create, both PROPOSED for steward authorization.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xefg5EXwcpd9RMAr63dWrD
This commit is contained in:
David F Glidden
2026-07-27 19:35:17 +02:00
co-authored by Claude Opus 4.8
parent 0a7feef12c
commit d7824cffe8
6 changed files with 108 additions and 1 deletions
+7
View File
@@ -449,3 +449,10 @@
{"subject": "claude-code", "predicate": "drift-pattern", "object": "generalize-from-a-proxy-when-it-feels-done — the 2026-07-24 census's '31 heavy-styled = one fix' was a class-VOLUME proxy (pandoc-free), asserted confidently at the end of a bottomless day because a finite-feeling bucket resolved the pressure. Falsified on first real pipeline run (2026-07-25). Banked as feedback-census-by-mechanism-not-proxy: a plan-of-record claim must carry the instrument that can bear it; census by RUNNING, not proxying; distrust the bucket that arrives when you want to feel done.", "valid_from": "2026-07-25", "valid_to": null, "confidence": 1.0, "source_file": "feedback-census-by-mechanism-not-proxy.md", "extracted_at": "2026-07-25"}
{"subject": "claude-code", "predicate": "drift-pattern-good-direction", "object": "banked-lesson caught its own recurrence, one level down — the steward applied the just-banked census-by-mechanism lesson to my NEW 'ONE nav ruling clears 23' inference (also composition-not-consequence). I CHECKED it vs the TSV rather than defending → clears 21/23, 2 hide a 2nd mechanism. The lesson worked on its first live test; the cheap check ran before the inference got planned around.", "valid_from": "2026-07-25", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-cleaner-a-footnote-aware-and-the-mechanism-census-that-ended-the-guessing.md", "extracted_at": "2026-07-25"}
{"subject": "v-text-wave", "predicate": "dominant-blocker", "object": "one internal-nav curation ruling (~31 of 47 files) — NOT one cleaner; per the mechanism-census 2026-07-25 (supersedes the 2026-07-24 volume-census '31 heavy-styled = one fix')", "valid_from": "2026-07-25", "valid_to": null, "confidence": 0.85, "source_file": "_curation/mechanism-census-2026-07-25.tsv", "extracted_at": "2026-07-25"}
{"subject": "claude-code", "predicate": "drift-pattern", "object": "compare-two-implementations-and-pick-the-survivor — ratifying a convention by comparing two existing implementations FEELS like derivation and is SELECTION. Verified that splitlines() != count+1; never verified either was right. BOTH were wrong on complementary subsets (count+1 on 1,261 newline-terminated files; splitlines on 4 carrying \\f/U+2028 — lintott off by 308 LINES). Correct rule was a third thing, derivable only from what a CONSUMER of a line coordinate must do (editor/wc/sed/chunker). Complementary-correctness defeats sampling: no single sample distinguishes all three. Banked feedback-derive-the-rule-from-the-consumer-not-from-the-survivor.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "claude-code", "predicate": "drift-pattern", "object": "read-a-disposition-clause-as-a-status — told the steward at WAKE that REVIEWED-72/73/74 were AUTHORIZED-but-unbuilt; 2 of 3 were FALSE (built+landed in v2.6.0). I read REVIEWED.md's 'If AUTHORIZED: build ...' lines — a record of what was AUTHORIZED, not of what was DONE. A ruling's disposition clause is a FORWARD INSTRUCTION, not a status. Worst-placed possible error: a wake briefing shapes the steward's picture of their own project before any work begins. Reusable: the wake briefing is a claim surface like any other; its backlog section needs the same substrate check as a finding.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "claude-code", "predicate": "drift-pattern-good-direction", "object": "the-rule-not-the-sample (steward-named) caught a LIVE corruption risk — 'confirm the rule rather than the sample' revealed the two source_lines formulas agree iff a file lacks a trailing newline: 36/1,297 canonicals. A blanket '-= 1' migration would have corrupted exactly those; the 11-file sample (ONE producer, all newline-terminated) could not have shown it. Generalizes: when candidates are each right on some subset, sample-based confirmation is structurally blind.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "claude-code", "predicate": "drift-pattern-good-direction", "object": "find-where-two-clauses-MEET before implementing either — REVIEWED-73 Q2 gates at graduation, Q4 bounds the obligation to the engine corpus; they read as conflicting. They meet at one point: the gate fires at the graduation of an ENGINE-CONSUMED source. Wiring it to every candidate would have silently blocked the Loeb wave with a bar that has no jurisdiction over it. Steward-confirmed. Reusable: when two ruled clauses appear to conflict on scope, look for the single point where both are true before choosing one.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "claude-code", "predicate": "drift-pattern-good-direction", "object": "a-named-dependency-can-DISSOLVE rather than get solved — I flagged 'the attestation binds the landed sha but the gate runs at graduation' as blocking. Reading the apply leg showed graduation is a PURE MOVE (git mv/rename, no content transformation), so candidate bytes ARE landed bytes and the seam does not exist. Steward: 'the better kind of dependency resolution — it dissolved rather than got solved, and the reason is checkable in the code.' Reusable: before designing around a dependency, read whether it is real.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "chamber-library", "predicate": "spec-version", "object": "v2.8.0 OPERATIVE (2026-07-27) — v2.7.0 REVIEWED-75 kind-scoping the verification criterion (method declared for the work's KIND; deterministic/scan split preserved; anti-bypass guard bound to the property); v2.8.0 REVIEWED-73 voice-purity as the engine-consumable bar (exhaustive partition · closed-vocab role · chamber-side · attest-never-default). v2.7.0 and v2.6.0 frozen.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}
{"subject": "chamber-library", "predicate": "open-defect", "object": "musil-mwq-tome-1 served to the engine with section boundaries shifted by 6 lines — canonical drifted 5032->5038; body truncated early, 6 lines mislabelled apparatus, 6 unassigned at the tail. Found by REVIEWED-73's exhaustive-partition rule on first application; HELD for re-derivation by a reading pass, NOT migrated. Also: REVIEWED-73's cited instance (5 standing FAILED ARC rows) was WRONG — all five ARC bindings verify clean.", "valid_from": "2026-07-27", "valid_to": null, "confidence": 1.0, "source_file": "session-2026-07-25-to-27-two-supersessions-and-the-sweep-that-caught-its-own-fix.md", "extracted_at": "2026-07-27"}