memory: supersede the 'verify by eye' clause, and name the case where the remedy is the cause

The copy-paste-clean note told me to verify a draft parses as intended BY EYE.
Today's instance 6 is the counterexample: two leading spaces before a ## render
as a flawless heading and parse as nothing. By eye is exactly what cannot catch
it. Superseded by exact-string comparison with a negative control.

And the note's own remedy — the fenced block — is what added the indentation. It
stays right for entries and is wrong for whitespace-only repairs, which should go
over as a command that never touches the paste path.

Amendment joined rather than rewritten, so the original stays visible.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T1i5VRfHjD79hfaXjWsBXA
This commit is contained in:
David F Glidden
2026-09-10 19:35:40 +02:00
co-authored by Claude Opus 5
parent 065ff240b1
commit 7ca1540182
2 changed files with 15 additions and 1 deletions
+1 -1
View File
@@ -39,7 +39,7 @@ permalink: claude-memory/memory
- [Governance files are dotfiles symlinks](reference-governance-files-are-dotfiles-symlinks.md) — Edit/Write refuse to write through a symlink, so **edit the real `~/dotfiles/…` path** when appending — **`PENDING`/`REVIEWED` only.** ⚠ That refusal is a tool artifact, **not** a permission check, and this note is the documented route past the only friction guarding the constitution (PENDING-107). **`~/CLAUDE.md`/`~/REVIEWED.md`/L2 = `[ESCALATE]`, steward's hand — a jurist sign-off does not authorize one.** - [Governance files are dotfiles symlinks](reference-governance-files-are-dotfiles-symlinks.md) — Edit/Write refuse to write through a symlink, so **edit the real `~/dotfiles/…` path** when appending — **`PENDING`/`REVIEWED` only.** ⚠ That refusal is a tool artifact, **not** a permission check, and this note is the documented route past the only friction guarding the constitution (PENDING-107). **`~/CLAUDE.md`/`~/REVIEWED.md`/L2 = `[ESCALATE]`, steward's hand — a jurist sign-off does not authorize one.**
- [Verification ladder](reference-verification-ladder.md) — the named instruments; reach for the gate the claim's shape demands instead of re-deriving one. ⚠ **FROZEN — REVIEWED-123 (2026-08-17): no additions, rewordings, removals or reorderings, from ANY source, whatever its authorization**, until the trial is graded (N-now **65/84, measured 2026-09-03** — *and the direction has REVERSED: 52 on 08-31, 65 today, **rising fast and rising for the wrong reason**. Composition, measured the same day by the fool's own prompt signature: **41 real + 24 mumble (36.9%)**. The earlier reading here — 44/84, "DOWN 7 from 51", "shedding faster than it gains" — was **wrong in the number and backwards in the direction**; corrected 2026-09-03 as a record-only arithmetic fix (PENDING-179 gate 2b). The counter is still a 30-day ROLLING WINDOW per PENDING-147, so it can fall; it is not falling now. ⚠ **Report the COMPOSITION with the count** — a bare 65 reads as 65 sessions and roughly a third is machine chatter (PENDING-178). Re-measure, never relay: `len(glob('~/.claude/projects/-Users-davidglidden/*.jsonl'))`, the trial's own method at `governance-drift-check.py:513`*). Entries earned meanwhile queue in **PENDING-141's owed-entries list** (4 rows). Reading it is unaffected — that is the point of the freeze. - [Verification ladder](reference-verification-ladder.md) — the named instruments; reach for the gate the claim's shape demands instead of re-deriving one. ⚠ **FROZEN — REVIEWED-123 (2026-08-17): no additions, rewordings, removals or reorderings, from ANY source, whatever its authorization**, until the trial is graded (N-now **65/84, measured 2026-09-03** — *and the direction has REVERSED: 52 on 08-31, 65 today, **rising fast and rising for the wrong reason**. Composition, measured the same day by the fool's own prompt signature: **41 real + 24 mumble (36.9%)**. The earlier reading here — 44/84, "DOWN 7 from 51", "shedding faster than it gains" — was **wrong in the number and backwards in the direction**; corrected 2026-09-03 as a record-only arithmetic fix (PENDING-179 gate 2b). The counter is still a 30-day ROLLING WINDOW per PENDING-147, so it can fall; it is not falling now. ⚠ **Report the COMPOSITION with the count** — a bare 65 reads as 65 sessions and roughly a third is machine chatter (PENDING-178). Re-measure, never relay: `len(glob('~/.claude/projects/-Users-davidglidden/*.jsonl'))`, the trial's own method at `governance-drift-check.py:513`*). Entries earned meanwhile queue in **PENDING-141's owed-entries list** (4 rows). Reading it is unaffected — that is the point of the freeze.
- [Skill-harvest register](skill-harvest-register.md) — canonical home for proposed skills (governed analog of PENDING.md for tooling); `/wrap-up` §1.6 proposes, steward authorizes. **Rebuilt 2026-08-07** from the archive: **154 live proposals**, grouped by kind, each with an exact `archive:L###` pointer. ⚠ The 2026-08-01 compaction was *lossless but illegible* (55 scraped header rows, 95% of cells cut mid-word) — the count it advertised, 177, was never the number. ⚠ **THE STROKE-2 BATCH IS AUTHORIZED BUT SHOULD NOT BE EXECUTED YET — PENDING-141.** 41 rows stamped `S2` are authorized (2026-07-19, execution not a ruling) and 22 are `S2?` (unsettled). **BUT appending them triples the ladder from 20 entries WHILE a pre-registered trial is measuring whether the ladder is reached** (baseline 14%, graded at 84 transcripts). Ladder size is an uncontrolled variable in that design, so executing the authorized batch would confound the only check behind REVIEWED-95's causal claim. **⚖ RULED — REVIEWED-123 (2026-08-17): AUTHORIZED (a) HOLD, on six conditions, and the freeze is GENERAL rather than S2-specific.** Grading does NOT authorize the append — the batch returns for a *ruling*. Report **N-now at every wake** until lifted; 30-day review is a live `DEFERRED-DECISION`. ⚠ Filing new proposals now requires a **declared firing moment** (`/wrap-up` §1.6); one that cannot name it is documentation and must say so. - [Skill-harvest register](skill-harvest-register.md) — canonical home for proposed skills (governed analog of PENDING.md for tooling); `/wrap-up` §1.6 proposes, steward authorizes. **Rebuilt 2026-08-07** from the archive: **154 live proposals**, grouped by kind, each with an exact `archive:L###` pointer. ⚠ The 2026-08-01 compaction was *lossless but illegible* (55 scraped header rows, 95% of cells cut mid-word) — the count it advertised, 177, was never the number. ⚠ **THE STROKE-2 BATCH IS AUTHORIZED BUT SHOULD NOT BE EXECUTED YET — PENDING-141.** 41 rows stamped `S2` are authorized (2026-07-19, execution not a ruling) and 22 are `S2?` (unsettled). **BUT appending them triples the ladder from 20 entries WHILE a pre-registered trial is measuring whether the ladder is reached** (baseline 14%, graded at 84 transcripts). Ladder size is an uncontrolled variable in that design, so executing the authorized batch would confound the only check behind REVIEWED-95's causal claim. **⚖ RULED — REVIEWED-123 (2026-08-17): AUTHORIZED (a) HOLD, on six conditions, and the freeze is GENERAL rather than S2-specific.** Grading does NOT authorize the append — the batch returns for a *ruling*. Report **N-now at every wake** until lifted; 30-day review is a live `DEFERRED-DECISION`. ⚠ Filing new proposals now requires a **declared firing moment** (`/wrap-up` §1.6); one that cannot name it is documentation and must say so.
- [Copy-paste-clean governance drafts](feedback-governance-drafting-copy-paste-clean.md) — draft PENDING/REVIEWED blocks as plain fenced markdown; display formatting leaks into the placed record. - [Copy-paste-clean governance drafts](feedback-governance-drafting-copy-paste-clean.md) — fenced, paste-ready blocks for **entries**; ⚠ **AMENDED 2026-09-10: a COMMAND for whitespace/line-anchored REPAIRS** (a fenced block is what adds the indentation), and **verify by exact-string check with a negative control — the 'by eye' clause is SUPERSEDED.** A `##` with two leading spaces renders perfectly and parses as nothing.
- [Verify-before-compose hook](feedback-verify-before-compose-hook.md) — chamber constitutional writes are BLOCKED without `<!-- GROUNDED-IN: … -->` + verbatim Grounding. Don't fight the block. - [Verify-before-compose hook](feedback-verify-before-compose-hook.md) — chamber constitutional writes are BLOCKED without `<!-- GROUNDED-IN: … -->` + verbatim Grounding. Don't fight the block.
- [Tool review after each use](feedback-tool-review-after-each-use.md) — review every tool we built after each run, success OR failure. **PASS-BUT-FALSELY is the priority signal.** Log: `chamber-library/_curation/tool-evolution-log.md`. - [Tool review after each use](feedback-tool-review-after-each-use.md) — review every tool we built after each run, success OR failure. **PASS-BUT-FALSELY is the priority signal.** Log: `chamber-library/_curation/tool-evolution-log.md`.
- [Every canon doc's source lives in Chamber Sources](feedback-resolve-source-through-chamber-sources.md) — a canonical's source = whatever `resolve_archived_source` returns, **never** the master library or a path in frontmatter. Read the banked record before calling a mismatch a defect. - [Every canon doc's source lives in Chamber Sources](feedback-resolve-source-through-chamber-sources.md) — a canonical's source = whatever `resolve_archived_source` returns, **never** the master library or a path in frontmatter. Read the banked record before calling a mismatch a defect.
@@ -15,3 +15,17 @@ When drafting a PENDING/REVIEWED entry for the steward to *place* (the copy-past
**How to apply:** in any `REVIEWED draft (steward copy-paste)` section, emit the block inside a fenced code block (```markdown … ```) so no styling is interpreted, headers are plain `##`, and the steward can select-copy the interior verbatim. Verify the draft parses as intended by eye at the *placed* location's conventions, not the draft doc's. **How to apply:** in any `REVIEWED draft (steward copy-paste)` section, emit the block inside a fenced code block (```markdown … ```) so no styling is interpreted, headers are plain `##`, and the steward can select-copy the interior verbatim. Verify the draft parses as intended by eye at the *placed* location's conventions, not the draft doc's.
Authorized at the 2026-07-19 harvest review (steward). Kin: [[feedback-checkable-claim-surfaces-bugs]] (the record's form is part of its correctness). Authorized at the 2026-07-19 harvest review (steward). Kin: [[feedback-checkable-claim-surfaces-bugs]] (the record's form is part of its correctness).
---
## AMENDMENT — 2026-09-10. The last clause is superseded, and the remedy has a case where it is the cause.
**Joined, not rewritten**, so the original stays visible — the same discipline the register uses for a placed entry.
**⚠ "Verify the draft parses as intended BY EYE" is SUPERSEDED. By eye is precisely what cannot catch the worst case.** REVIEWED-138 was placed with two leading spaces before its `##`. CommonMark permits up to three, so it rendered as a flawless heading and read as correct to everyone who looked at it — while `grep -c "^## REVIEWED-13[89]"` returned **1, not 2**, making the ruling invisible to the wake digest, `governance-drift-check.py`, `governance_item` and every scan of that sitting. **Replace with: verify by exact-string comparison against the draft, with a negative control proving the check can fail.** Over four defects in one day, eye caught none; the check caught all four in minutes.
**⚠ AND THE FENCED BLOCK IS THE CAUSE IN ONE NARROW CASE.** Indentation is exactly what a fenced block in transit adds. For an ordinary entry this is harmless — prose reflows and a heading survives. **For a whitespace-only or line-anchored repair, text-to-paste is the wrong instrument: hand the fix over as a COMMAND the steward runs, which never traverses the paste path at all.** Proven the same day: the fenced replacement introduced the defect; the `sed` one-liner did not.
**The rule, restated whole:** fenced, paste-ready blocks for *entries*; a command for *repairs*; and an exact-string check with a negative control for *both*, in place of the eye.
Evidence: PENDING-181 ADDENDUM 1 and ADDENDUM 2 — six transit corruptions, three distinct mechanisms, of which **only two are catchable by reading at all**.