Files
dotfiles/claude/memory/skill-harvest-register.md
T
David F GliddenandClaude Opus 5 33c11fff87 session 2026-08-07 evening: PENDING-112 + REVIEWED-95 (route harvested capabilities by firing moment)
Register censused and rebuilt from the archive: 177 claimed -> 154 real live
proposals, legible, with exact archive:L### pointers. The 2026-08-01 compaction
was lossless but illegible (55 scraped header rows; 95% of cells cut mid-word);
completeness verified 124 = 124, so nothing had been dropped.

Skills pruned 63 -> 12 after measuring that 53 had never been invoked across 64
sessions / ~5 months. The finding underneath: retrieval is set by a capability's
HOME, not its importance -- MEMORY.md 83%, register 77% (named in a wake step),
ladder 14%, 'THE GOVERNING FRAME' 12%, 'Read at Step 0' 9%, recall-bound skills 0%.

PENDING-112 filed, jurist design-gated, steward concurred; REVIEWED-95 drafted.
Landed: the /wrap-up 1.6 filing gate (prospective) and the /wake-up ladder
sentence (a pre-registered trial intervention, landed alone). The 20-session
falsifier is WIRED, not intended -- DEFERRED-DECISION ladder-ritual-trial,
trigger: transcripts 84. Wiring it exposed two defects in the deferral checker:
no way to express a session count except as a date proxy, and a scan that never
looked at claude/governance/. Controls 16 -> 19.

Stroke 2's 41-entry ladder append deliberately NOT done: REVIEWED-95 Q3
sequences it after the ladder trigger, which now exists.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NEWjLBP4quXbDPDL2byEzZ
2026-08-07 19:09:46 +02:00

45 KiB
Raw Blame History

name, description, metadata, permalink
name description metadata permalink
skill-harvest-register-proposed-skills-awaiting-steward-authorization Standing register of skill create/patch/retire proposals surfaced by /wrap-up §1.6, awaiting steward authorization. The governed analog of PENDING.md, turned on our own tooling — propose → authorize → build → record. Surfaced every wake via this MEMORY entry.
node_type type
memory reference
claude-memory/skill-harvest-register

Skill-harvest register

The single place proposed skills live so they don't evaporate between sessions. /wrap-up §1.6 proposes here; the steward authorizes; only then is a skill created/patched/retired (never autonomously — the loop is load-bearing, per PENDING-23). /wake-up surfaces the open proposals via this entry. The governed analog of ~/PENDING.md, for our own tools.

Status legend: PROPOSED (awaiting steward) · PROPOSED? (status never marked — open until ruled, never silently closed) · AUTHORIZED (proceed to build) · BUILT · DEFERRED · REJECTED.

Rebuilt 2026-08-07. The 2026-08-01 compaction was lossless but illegible: 55 scraped table-header rows were carried as numbered proposals, 95% of cells were cut mid-word, and pointers reached only a section — one of which holds 81 rows across 410 lines. Regenerated here from skill-harvest-archive.md (authoritative, unchanged) with word-boundary text and exact archive:L### / register:L### pointers. Nothing was ruled, reworded or dropped in the rebuild; the completeness invariant was asserted, not assumed. 154 live proposals (124 from the archive + 30 appended since); 13 ruled items remain excluded by the stated rule.

Stroke coverage — the 2026-07-19 full review granted standing authorizations. S2 = covered by Stroke 2 (all earned ladder entries, append wholesale — execution, not a ruling). S2? = names BOTH the ladder and Symmetria, so the stroke that covers it is not settled — rule before executing. S3 = the skill named in Stroke 3's verdicts. S1? = Symmetria flag needing a per-row check against the consolidated §3. — = genuinely awaiting the steward.


The steward's 2026-07-19 ruling is reproduced verbatim below. The 2026-08-07 rebuild initially carried only a paraphrase of it in the Stroke-coverage note above; a paraphrase must not stand in for a ruling on the live surface, so the ruled text is restored here.

⚖ FULL REVIEW 2026-07-19 (late night) — steward ruled ALL FOUR STROKES

This block is authoritative; per-section statuses below are superseded where they conflict. Physical compaction of the register = the same housekeeping slot as Stroke 2. (The 2026-07-12 steward request for this review is hereby discharged; REVIEWED-55 was separately resolved stale the same sitting — placed :489 since 07-12, PENDING-55 closed.)

Stroke 1 — Symmetria §3: consolidate, don't accumulate — BUILT SAME SITTING. Three consolidated flags + one widening landed in the skill (provenance-commented): assert-from-derivation-not-substrate (consolidates: claim-from-derived-artifact 07-03 jurist-elevated 3× · fuzzy-matcher membership 06-15 4× · soft-classification-over-checkable-claim 07-13 steward-named 5×/day · answer-from-training-before-banked-record 07-14 · re-derived-instructions 07-01 · enter-repo-read-docs-first 07-09) · completion-is-a-tripwire (recurrence-promoted per the governed watch-item pattern; folds gate-suite-blind-to-failure-class 07-07 · closable-now-is-a-claim 07-16 · reconcile-before-"finally" 07-17) · the-say-do-seam (record-asserts-applied-before-the-act · grounding-quoted-but-not-traced · consequence-trace-one-level-shallow — the 07-19 family) · trust-prior-pass-frame WIDENED (per-tier-demonstration 07-12 — the flag the steward queued — + claim-scope 06-28). NOT promoted (stay KG drift-patterns, wake-surfaced): probe-confirms-hypothesis · latency-isolation-first · reassuring-verb · tool-creep-into-substrate · solve-constraint-by-discarding-value · lost-the-forest · provenance-is-part-of-process · graduated-with-flagged-gap · convert-steward-state (redundant w/ contamination directives) · theorize-before-measuring-layout (redundant w/ causal-story) · reinvent-governed-DESIGN (widens the existing KG entry).

Stroke 2 — verification-ladder batch-append: AUTHORIZED; slot = next housekeeping pass. ALL earned ladder entries queued in this register (~25–30, from gate-itself-PASS-BUT-FALSELY and prose-word-guard through implement-the-relation-not-an-approximation and re-anchor=re-verify-by-sha-match; incl. the Fowler pair, CI-upper-bound-for-ESCALATE, positive-test-at-enforcement-path, method-class-vs-calibration, per-claim-citation) append to reference-verification-ladder.md with provenance, kin merged in the same pass. The ladder is the already-authorized canonical home (2026-06-05); this discharges the queue wholesale.

Stroke 3 — skills. BUILD (next session slots): /jurist-package (5-for-5, jurist-endorsed; ABSORBS /spec-amendment — supersession procedure goes to the ladder) · /model-handoff (3 proven uses + the path-verification authoring rule). CONFIRMED build-on-need (standing): /reconcile-open-work · /clone-test-runtime-fix · bmf-diagnose · /pre-build-audit · /measure-render · /version-essay. HOLD, named dependency: /graduate-chamber-source — build AFTER the one-door lane ruling (Eichmann pilot report §8.2); it would codify the very pipeline the ruling will change. BUILT SAME SITTING (small authorized patches): wake-up link-resolution canary · wake-up telos-conditional · feedback-governance-drafting-copy-paste-clean.md. RETIRED/REJECTED: mempalace-diagnose (wind-down done) · /wrap-up §4.a tags patch (overtaken by the 07-07 rewiring) · CLAUDE.md staleness canary (doc-currency-on-wrap covers it) · Fowler bad-smells lens (redundant w/ code-review) · /spec-amendment standalone (merged into /jurist-package). /vignette stays DEFERRED (condition unchanged since 06-05).

Stroke 4 — register compaction: AUTHORIZED; same slot as Stroke 2 (ruled items collapse to verdict lines; detail stays in git history — the register exceeded read caps 2026-07-19, its own tripwire).

Post-review additions to the Stroke-2 batch list (same authorization — "all earned ladder entries"; harvested from the pilot-ruling block later the same night): byte-check-hand-classifications-at-source-before-citing (two of my classes AND the jurist's Q3 assessment overturned by bytes — the F7 lesson, jurist-directed at F3's own numbers, discharged strengthening the finding) · coverage-metrics-are-blind-to-block-moves (jurist-minted from their own refuted assessment: any permutation preserving local windows passes coverage; refuted-by-default unless demonstrated on a block move — the demonstrated-not-composed instrument). No other harvest from the late-night block — the session's harvest WAS the ruled review; nothing manufactured.

Post-review addition (2026-07-22, PENDING-69 build — same authorization): read-the-gate's-decision-code-before-designing-its-consumer — before building a consumer/resolver for a gate's output, read the gate's OWN decision logic to know what it can and cannot mechanically produce or see. On PENDING-69 the inherited literal question forced reading verify_body_conservation.classify first: it revealed the gate classifies boundary runs by POSITION+SIZE only and provably cannot confirm class identity → that "no, and knowably no" shaped the honest design (attested declaration the gate consumes, not teaching it to classify) AND corrected my own package's mis-framing mid-build. Kin to render-and-LOOK / measure-toolchain-before-spec, one level over (read the substrate's decision logic, not just its output). Queue with the Stroke-2 batch.


verification-ladder (63)

Stroke 2 (2026-07-19) AUTHORIZED appending all earned ladder entries wholesale. These need EXECUTION, not a ruling — verify each against the current ladder before appending; some already landed.

# Item Gist Status Stroke Source
1 Revert-and-redo-smaller Ch1's strongest working reflex we don't have: when a verification/gate fails and the cause isn't immediately visible, revert to… PROPOSED S2? archive:L110
2 Two-hat commit separation Name which hat each commit wears: a refactor commit's compiled output is byte-identical (or carries a pre-stated classified… PROPOSED S2 archive:L111
3 Bad-smells → refactoring lens Ch3's smell catalogue (Mutable/Global Data, Duplicated Code, Shotgun Surgery, Speculative Generality, Comments-as-deodorant…) as… PROPOSED S2? archive:L112
4 Headless-Chrome box-model measurement When a rendered layout differs and the cause isn't obvious, measure the box model before theorizing the mechanism. Today this… PROPOSED S2? archive:L136
5 /measure-render (headless-Chrome box-model harness) RE-FLAG — strongly earned. Proposed this morning (compass fix); the pm session ran it 4+ more times (true-advance measurement… PROPOSED S2? archive:L143
6 Measure the font's true average prose advance before a character-count… When setting a measure to a target character count, measure the font's average advance over real corpus prose (incl. spaces), not… PROPOSED S2 archive:L144
7 byte-identical gate: hold/exclude volatile build-stamps When proving a change byte-identical, a build-date/commit stamp (e.g. the colophon buildinfo/stamp) will differ between baseline… PROPOSED S2 archive:L155
8 /measure-render (headless-Chrome box-model/scroll harness) RE-REINFORCED (4th day of evidence). Proposed 2026-06-09 (compass fix) + reinforced 06-09 pm; today drove the ENTIRE §VII.f build… PROPOSED S2? archive:L167
9 /model-handoff (premium-model scope charter) When switching to an expensive/premium model (Fable 5 = 2× Opus rate; burn scales with context×session-length) for a bounded high… PROPOSED S2? archive:L175
10 verification-ladder: feature-detect gates can lie A CSS @supports(feature) (or any capability probe) can return true on a platform where the feature is non-functional — today the… PROPOSED S2 archive:L176
11 verification-ladder: parse/validate machine-consumed artifacts that have… When an artifact that humans have only ever read (a hand-authored YAML index, a config, a data file) is about to be machine… PROPOSED S2 archive:L184
12 dry-run-first for bulk file operations When a mutation touches many files at once (mass git mv, graduation, rename), build it dry-run by default and emit the full move… PROPOSED S2 archive:L193
13 verification-ladder: re-verify a workflow/sub-agent's per-item dispositions… A sub-agent or background workflow that reports a per-item verdict from a dry-run on a temp copy can be wrong on the real apply… PROPOSED S2? archive:L203
14 Work-in-omnibus: verify the interior, not just the endpoints When a sidecar/scope brackets one work out of a multi-work source by heading-to-heading boundaries, content-sample the span… PROPOSED S2 archive:L241
15 CSS-mask: fill WHITE, not black (luminance-safe) A CSS mask/-webkit-mask SVG must fill the shape white/opaque — a black-fill mask renders BLANK (the luminance-vs-alpha trap).… PROPOSED S2 archive:L251
16 live-CSS-patch in site for fast in-browser iteration To eyeball size/style options in the real browser without a full Hakyll rebuild each round, sed the value directly in site/assets… PROPOSED S2? archive:L252
17 headless-Chrome element shot: scrollIntoView + full-viewport, NOT computed… Recalibration: computed box-clips kept mis-landing on the page-top (burned several shots). The reliable element screenshot is… PROPOSED S2? archive:L253
18 glyph-outline → SVG from a woff2 Build a typographic SVG asset from the real font glyphs: fontTools SVGPathPen (path) + BoundsPen (bbox) over the woff2, y-flip… PROPOSED S2 archive:L254
19 /clone-test-runtime-fix (CoW-clone + isolated-worktree harness) When testing a runtime fix that needs real live data but must not touch the live instance: /bin/cp -c -R (APFS CoW) the live data… PROPOSED S2? archive:L270
20 verification-ladder: verify the RUNNING BINARY's provenance, not just… Before reasoning about live behaviour, verify what the running process actually executes — compiled dist/ build mtime + grep the… PROPOSED S2 archive:L271
21 verification-ladder: quantify-the-removed-cost as the A/B control When a fix removes a hot operation, the cleanest control isn't a flaky end-to-end before/after race — it's to time the exact… PROPOSED S2 archive:L273
22 verification-ladder note: OCR word-guard passes on SCRAMBLED text A verbatim word-guard that checks word PRESENCE cannot catch reading-order scrambling (2-col read across the gutter) — same… PROPOSED S2 archive:L300
23 The gate itself can be PASS-BUT-FALSELY A verifier that checks an enumerated set of cruft signatures silently passes any residue outside the set — verifyconversion… PROPOSED S2 archive:L308
24 prose word-guard for faithful structure-cleaning When a cleaner removes/reflows STRUCTURE (headings, printed titles, residue) but must preserve PROSE, gate it with a prose-only… PROPOSED S2 archive:L310
25 structure-from-authoritative-ToC = one engine, two map-producers Answer to the long-open unify question: chapter-structure recovery is ONE placement engine (insertchapterheadings: match… PROPOSED S2 archive:L311
26 Symmetria §3 flag: claim-from-derived-artifact-when-the-source-is-checkable The load-bearing harvest — jurist-elevated to STANDING PRACTICE. I trusted a derived artifact / a regex-over-derived-text over… PROPOSED S2? archive:L338
27 per-claim citation verification (don't let a sub-agent's blanket "verified"… Caught by the jurist: I cited arXiv 2605.24229 for a claim it didn't support, having let a sub-agent's aggregate "4/4 papers… PROPOSED S2? archive:L340
28 verification-ladder: CI-upper-bound + drop-one-robustness = STANDARD for… The jurist RULED (2026-07-04) that grading on the one-sided 90% Clopper-Pearson upper bound (not the point estimate) + the drop… PROPOSED S2 archive:L357
29 memory/index restructure = byte-exact slice + md5-conservation + link-canary When restructuring a memory index or any lossless-relocation of prose between files, do it as line-range slices (never retype) +… PROPOSED S2 archive:L389
30 quote a long-job ETA only from an observed rate, never model-size intuition Twice today I gave a re-embed ETA from gut ("15–45 min") and was wrong by ~30×; the steward caught it. The fix was measuring… PROPOSED S2 archive:L410
31 mempalace-diagnose — RETIRE the proposal AUTHORIZED 2026-06-05 (build-on-need). Now decorative: the steward decided (evidenced) to wind down palace-memory MemPalace.… PROPOSED S2 archive:L412
32 cross-volume verify-before-delete move Moving data across filesystems (internal→external cold archive): rsync -a → verify exact file-count match + du (NOT a byte-sum… PROPOSED S2 archive:L421
33 verify at the granularity of the mutation, not the aggregate A whole-set invariant (a document-wide word-multiset guard) can PASS while a per-item operation (a cross-note swap — a word from… PROPOSED S2 archive:L440
34 re-audit coverage with the TOOL's recognizer, not the classifier that… When a classifier and the tool it feeds share a predicate, the classifier's mis-classifications masquerade as genuine "new… PROPOSED S2 archive:L450
35 extending a tool re-tests its foundations Building an extension exercises shared machinery the original's tests never hit — so a widen's --validate should assert the… PROPOSED S2? archive:L451
36 verification-ladder: retroactively re-verify everything landed under a… The jurist's Q1b principle, proven load-bearing: a stronger check existing and NOT pointed at canon that shipped under the weaker… PROPOSED S2 archive:L463
37 verification-ladder: structural safety = PROVISIONAL FIX; end-to-end proof… The jurist's generalization after nested-block: "same risk as (a)" was true of the matching logic and silent on the rendering… PROPOSED S2? archive:L464
38 split cause from magnitude before sizing a remedy A diagnostic bucket keyed on ONE summary axis (magnitude, holds%, a deficit size) can hold heterogeneous causes — a single label… PROPOSED S2 archive:L502
39 confirm-a-named-cause-by-swap-in (don't assert from identification) When you NAME the true reference / config / cause behind an anomaly, don't assert the fix from the identification — swap the… PROPOSED S2? archive:L503
40 method-class-vs-calibration When a metric/gate fails to separate two cases, ask whether it is mis-CALIBRATED or structurally BLIND to the distinction — no… PROPOSED S2? archive:L511
41 positive-test-at-the-enforcement-path over a negative-grep (bypass /… For any "can X be bypassed?" / "is this gate skippable?" property, a negative grep proves the absence of a STRING, not the… PROPOSED S2 archive:L527
42 Symmetria §3 flag / ladder: "closable-now" is itself a claim to check The jurist named it a standing habit: the closable-vs-blocked partition on a work-list must be reviewed, not asserted — the named… PROPOSED S2? archive:L535
43 ladder: reconcile against the AUTHORITATIVE source before any "closed… Before claiming a block/scope closed or complete, reconcile against the authoritative source (the roadmap stage-1-rebuild-plan §4… PROPOSED S2? archive:L545
44 governed spec-supersession procedure Landing a ratified spec version is: cp live→-vNEW.md → bounded Edits (never retype) → diff shows ONLY intended altered lines +… PROPOSED S2 archive:L551
45 verification-ladder / Symmetria §3: assert-"X is in Y" → read Y A factual claim's grounding must reach the file that HOLDS the fact, not one that merely describes it. Earned hard 2026-07-17… PROPOSED S2? archive:L552
46 implementation-is-a-second-gate A text passed by reading is re-tested by having to act on it — the jurist's own minting, after their 07-16 miss surfaced at build… PROPOSED S2? archive:L560
47 sandbox-must-pin-the-shared-module When a test sandboxes module-level state (paths/constants), the patch must land on the SAME module object the code-under-test… PROPOSED S2? archive:L568
48 census-the-substrate-when-a-safety-net-stays-silent A safety net (generic fallback, fail-loud branch, unrecognized kind) that never fires across N real cases is UNINFORMATIVE, not… PROPOSED S2 archive:L569
49 re-anchor = re-verify: reconstruct the old bound state by sha-match When re-anchoring any sha-bound artifact after an upstream edit: reconstruct the OLD bound state from git by matching the… PROPOSED S2 archive:L597
50 implement-the-relation-not-an-approximation When code implements a RULED relation/contract (an equivalence relation, a gate criterion), the acceptance path must BE the… PROPOSED S2 archive:L605
51 seam-probe the artifact (gates test claims; probes test joins) The night's two REAL defects (empty footnote defs from per-spine -f html; defs-after-index swallowed by the trim) were invisible… PROPOSED S2 archive:L613
52 cmp-after-apply (tool-report ≠ write-decision) stripcruft --apply prints its transform counts BEFORE the write decision; three distinct refusal causes in one night (residual… PROPOSED S2 archive:L614
53 Amendment-process: reassigned-component check Jurist-minted in the REVIEWED-72 ruling: "when a change reassigns a named component, check what else names it." F4 moved the born… PROPOSED S2? archive:L631
54 reference-verification-ladder.md "The parser defines the census." When a census counts items, the item-definition is itself a claim requiring its own control… PROPOSED S2 archive:L652
55 A Strongly earned — three instances in one session. Every substantive vignette defect was found by rendering the artifact and… PROPOSED S2 register:L231
56 C New method, proven today. Building Phase 1a produced nine findings about where the vignette spec fails to determine its output… PROPOSED S2 register:L233
57 verification ladder A suspiciously UNIFORM offset is a constant masquerading as a measurement. A forward-window locator reports the window START, not… PROPOSED S2 register:L256
58 verification ladder Pre-register the expected effect BEFORE building the change. fidelityequivalence@3's effect was filed in the jurist package as 3… PROPOSED S2 register:L257
59 verification ladder Run the counterfactual before attributing a cause. Before claiming X causes Y, remove X and measure Y — where that is cheap and… PROPOSED S2 register:L274
60 verification ladder 2026-08-06. The drainer exits 1 on a halted run; piped through tail, the harness recorded exit 0. A signal that existed was… PROPOSED S2 register:L276
61 verification ladder 2026-08-07, four times in one session and not once by reading: 769 unreachable drawers (455 + 314, two unrelated causes), 2… PROPOSED S2 register:L297
62 verification ladder 2026-08-07. Front-matter re-anchoring: nonsense keys correctly failed, so the control passed — while apatternlanguage silently… PROPOSED S2 register:L299
63 verification ladder Never pin a derived total in a test; assert the invariant — and never let a test depend on a corpus accident. byname == 256 went… PROPOSED S2 register:L300

symmetria-flag (33)

Stroke 1 (2026-07-19) consolidated four flags into the skill and explicitly did NOT promote a named list. Rows here need a per-row check against Symmetria §3 as it now stands before they are treated as open.

# Item Gist Status Stroke Source
1 Symmetria §3 flag: theorize-before-measuring-a-layout The drift this caught, as a standing flag: a causal story about why a layout renders as it does, asserted before the rendered box… PROPOSED S1? archive:L137
2 check-for-governed-tooling-before-building Before hand-rolling infrastructure (a PDF preamble, a build script, a template), grep the repo for an existing governed version.… PROPOSED S1? archive:L154
3 Symmetria §3 flag: inherited-marker-read-as-current-state A status/marker inherited from a RECORD (a selector-index entry, a tracker line, a "-pending" file, a prior framing) asserted as… PROPOSED S1? archive:L166
4 Symmetria §3 flag: census-through-a-pattern A filter/regex used to count or partition a set can silently mis-match and the count reads as authoritative. Today grep -iE 'LOG'… PROPOSED S1? archive:L194
5 Symmetria §3 flag: solve-the-constraint-by-discarding-the-value A "fix" that satisfies a stated constraint by removing the thing the constraint was protecting is contamination shape — it… PROPOSED S1? archive:L202
6 Symmetria §3 flag: assert presence/absence from a fuzzy matcher, not the… A presence/absence claim produced by a fuzzy/token matcher (filename tokens, embeddings, author-surname overlap) treated as fact… PROPOSED S1? archive:L211
7 Symmetria §3 flag: probe-confirms-hypothesis A query/test I constructed to match my hypothesis, whose result I then read as confirming the hypothesis rather than testing… PROPOSED S1? archive:L272
8 Symmetria §3 flag: diagnose-inference/latency-without-isolating-the-exact… The load-bearing harvest. When a network/inference call is slow, the FIRST test must be the isolated one: stop the competing load… PROPOSED S1? archive:L281
9 Symmetria §3 flag: reinvent-governed-DESIGN-without-reading-the-spec Proposed PENDING-41 (consumer-hardware graceful degradation) as a novel architectural direction when local-inference-spec 43L/43M… PROPOSED S1? archive:L282
10 Symmetria §3 flag: finding-scoped-to-one-condition restated as… A result true under a specific condition, restated as an unconditional rule, is contamination shape. Caught 2026-06-28: the… PROPOSED S1? archive:L309
11 Symmetria §3 flag: tool-creep-into-substrate (name genome-or-phenotype… A convenience tool proposed for one job silently becoming the durable substrate (the source of truth) is contamination shape — it… PROPOSED S1? archive:L319
12 Symmetria §3 flag: graduated-with-a-flagged-gap-instead-of-resolved Letting "honestly flagged" substitute for "resolved" — shipping a known-incomplete text because the hole is marked. Contamination… PROPOSED S1? archive:L329
13 Symmetria §3 flag: re-derived-instructions-instead-of-citing-the-governed… Wrote agents hand-made instructions (and invented fields) instead of pointing them at conversion-runbook.yaml/the spec — the… PROPOSED S1? archive:L330
14 Symmetria §3 flag: reassuring-verb-before-verifying-the-mechanism Reaching for a comforting characterization ("self-healed", "fine", "recovered", "handled") before verifying the actual mechanism… PROPOSED S1? archive:L411
15 classify a change by MECHANISM, not by how big it feels Reflexively labeled the recognizer generalization "PROPOSAL" because it felt large; the jurist's own FIX/PROPOSAL test (does it… PROPOSED S1? archive:L452
16 Symmetria §3 flag: lost-the-forest-in-a-long-execution-arc A long, productive execution session that costs the whole-program altitude is contamination shape (composition-over-consideration… PROPOSED S1? archive:L465
17 check-the-register-before-a-substantial-build Before starting substantial INFRA/tool building (a converter, a pipeline, a substrate), read the tooling-register + landscape… PROPOSED S1? archive:L471
18 Symmetria §3 flag: a check proven for one tier/case is NOT proven for… Reusing a verification method across a boundary it wasn't demonstrated on is contamination shape — the V-TEXT k-gram coverage… PROPOSED S1? archive:L484
19 Symmetria §3 flag: soft-classification-where-a-checkable-claim-was-available Shipping a soft label ("this is reordering", "magnitude unresolved", "apparatus") when a CHECKABLE claim (a reportable number, a… PROPOSED S1? archive:L494
20 Symmetria §3 flag: answer-from-training-before-checking-the-banked-record Answering an architecture/tooling/citation question — or proposing a tool/approach — from training memory before grepping the… PROPOSED S1? archive:L519
21 Symmetria §3 flag: convert-a-steward-state-into-a-process-weakening A proposal that converts an observed steward STATE (fatigue, "has carried a lot," being busy) into a weakening of the review… PROPOSED S1? archive:L528
22 grounding-quoted-but-not-traced The hook enforces QUOTING the ratified sections; this session proved quoting ≠ tracing: the coordinate-contract package quoted… PROPOSED S1? archive:L581
23 Symmetria §3 flag: record-asserts-applied-before-the-act A session record (Addendum, brief, tracker line) composed AHEAD of its acts and asserting APPLIED/DONE is contamination shape… PROPOSED S1? archive:L589
24 /symmetria §3 Add the contamination flag: "an instrument whose evidence is the same kind of thing as its own source." A text search cannot… PROPOSED S1? archive:L658
25 /wake-up Read the day's own Symmetria ledger when one exists for today. The wake reads MEMORY.md + the session file + the KG, but never… PROPOSED S1? archive:L681
26 symmetria §4 (ledger template) Add a standing ## What held section — instruments that fired prospectively, lessons that transferred to a failure class they were… PROPOSED S1? archive:L702
27 symmetria §2 / /wrap-up §1 Retire the self-report framing of the standing question. The 2026-07-29 literal question — "is there any instrument I built… PROPOSED S1? archive:L705
28 D Steward-caught today. Asked whether to send a spec to Fable, the executor reached for Constraint 6's independence framing and… PROPOSED S1? register:L234
29 Symmetria §3 flag: the-fix-for-an-overclaim-is-an-overclaim-candidate When you repair an overclaim, the replacement inherits the frame that produced the original. Replacing the engine's "genuine… PROPOSED S1? register:L247
30 Widen assert-from-derivation-not-substrate with the null-result case A null from an instrument you have not positive-controlled is a fact about your instrument, not about the world. Probed… PROPOSED S1? register:L248
31 /wake-up §4 Do not print the Symmetria line unless Symmetria was invoked. This wake's briefing ended "Symmetria active. Practice of return… PROPOSED S1? register:L258
32 Symmetria §3 flag A record asserting that a control is ABSENT is load-bearing, and must be verified like any other claim — it is the note that… PROPOSED S1? register:L275
33 Symmetria §3 flag 2026-08-07, 3 of 3 new checkers: the R0 validator failed six healthy sources and the tempting repair was editing the reading… PROPOSED S1? register:L298

patch (28)

Skill/instrument patches. Each needs a ruling.

# Item Gist Status Stroke Source
1 /wrap-up §5 Palace-fully-derived, part 1: mirror every kgadd/kginvalidate made at wrap into the session memory file (one line each), so KG… PROPOSED — archive:L100
2 /wake-up (new step or §2 check) Wake canary: seconds-cheap probe at wake — every MEMORY.md pointer + link resolves to an existing memory file; flag dead… PROPOSED — archive:L102
3 spec↔spec coherence dimension The 2026-06-10 audit found §I.f-class contradictions — the measure (38→27.2rem) un-propagated across silence-and-rhythm/apparatus… PROPOSED S3 archive:L152
4 /wake-up patch — surface the why when the thread touches the engine's… When the active workstream is studium-engine / The Making / ARC-as-public-proof (the engine's reason-for-being), /wake-up should… PROPOSED — archive:L262
5 /wrap-up §4.a The §4.a drawer-filing step instructs passing tags: to mempalaceadddrawer — the tool rejects it (MCP error -32602: Unknown… PROPOSED — archive:L349
6 Chamber graduation: build to the constitution, not to a legacy canonical Steward-corrected 2× this session: "we cannot use the extant canon as precedent." The extant canon is a pre-constitution/pre… PROPOSED — archive:L632
7 chamber-library CLAUDE.md — integration-test-gap discipline Add to §Load-bearing disciplines: "The fleet has UNIT tests (testtools, per-tool fixtures) but NO integration test — nothing runs… PROPOSED — archive:L640
8 /wake-up §2.c–2.d Consume the SessionStart digest instead of recomputing it. wake-digest.py now fires at every SessionStart and already emits… PROPOSED — archive:L650
9 /wake-up §2.a Fix the link-resolution canary's path handling — resolve pointers against the memory file's physical directory… PROPOSED — archive:L651
10 /wrap-up §6 / §6.5 Verify that every file a commit message names is actually staged, and that steward-authored edits are committed — not just… PROPOSED — archive:L659
11 /wake-up §2.a (Re-proposing, third firing.) Link-canary path resolution — root cause now precise, not merely reproduced: the memory dir's… PROPOSED — archive:L661
12 /jurist-package Require a mechanical verbatim-containment proof over every quoted clause, reported in the package. The skill already says "Quote… PROPOSED S3 archive:L682
13 /jurist-package Mandate a mechanical verbatim-containment proof over every quoted passage, with a positive AND negative control, as a required… PROPOSED S3 archive:L692
14 /jurist-package Formatting convention: ratified text = > blockquote; PROPOSED text = fenced block, never a blockquote. The containment checker… PROPOSED S3 archive:L693
15 /wake-up §3 (Next move) Before executing an inherited resumption point, grep the substrate for whether its premise is already settled. Today's inherited… PROPOSED — archive:L694
16 /wrap-up §5 (KG append) Add a prevention predicate — {subject: , predicate: "prevention", object: <the failure it stopped, and where>}.… PROPOSED — archive:L703
17 /wake-up §2.b.2 Surface one prevention alongside the drift-patterns. Currently the wake greps only drift-pattern, so the session opens by re… PROPOSED — archive:L704
18 wake-digest.py The wake instrument silently hides open items. secpending() drops a PENDING-N whenever a REVIEWED-N exists — matching the number… PROPOSED — register:L222
19 normalizeocr.py (chamber fleet) Silent degradation with no disclosure. dictstate reports only the static word list, so a --lang fr run with wordfreq absent falls… PROPOSED — register:L223
20 /jurist-package Filing is not sending, and the skill has no step that distinguishes them. The 2026-08-01 ESCALATE doctrine package sat filed-and… PROPOSED S3 register:L224
21 /jurist-package Require the mechanical containment proof the skill's own discipline implies. The skill states quote, never paraphrase but carries… PROPOSED S3 register:L225
22 /jurist-package Require reading the clauses ADJACENT to every quote, and stating in the package that you did. Strongly earned and jurist-caught… PROPOSED S3 register:L255
23 governance-mcp / doc-access generally A document whose head is superseded must disclose that at the point of access. The chamber constitution's first ~330 lines are… PROPOSED — register:L259
24 /jurist-package When a quoted source cannot be mechanically containment-checked (PDF, image, external URL, anything the prover cannot read), the… PROPOSED S3 register:L265
25 /wake-up §1 When the wake digest reports a state that contradicts another line of the same digest, name the contradiction as unreconciled… PROPOSED — register:L266
26 /wrap-up §1 A tracker with two update surfaces drifts between them. When updating a canonical tracker, append to its chronological log, not… PROPOSED — register:L277
27 /wake-up + general 2026-08-06. Was one keystroke from asking the steward to invent questions for the corpus, while corpus/chavruta-ground-truth.yaml… PROPOSED — register:L278
28 /jurist-package 2026-08-07. The amendment was pasted OVER REVIEWED-87's original entry; the amendment's own Amends: REVIEWED-87 then pointed at a… PROPOSED S3 register:L296

skill-create (13)

New skills. Stroke 3 ruled several by name (S3).

# Item Gist Status Stroke Source
1 bmf-diagnose Today WAS that need and the method is proven+fresh: process sample → log pattern census (uniq -c histogram) → SIGUSR1→CDP CPU… PROPOSED S3 archive:L94
2 /version-essay The ADR-005 essay-versioning procedure, derived from essay-versioning-specification.md this session: when a published essay gets… PROPOSED S3 archive:L250
3 /graduate-chamber-source (the /convert- family the runbook already plans) Codify the now-PROVEN OCR→canonical→graduation pipeline as a single governed discipline, so the next source (Alexander 1–4, then… PROPOSED S3 archive:L290
4 /graduate-chamber-source (already PROPOSED 06-26/27) Now carries the full EPUB path (structurefromncx→insertchapterheadings→cleanpandochtmlresidue, used when repairepubheadings… PROPOSED S3 archive:L307
5 /graduate-chamber-source (proposed 06-26/27/28) The empirical spec is complete AND the rail it needs now exists (graduation-spec.yaml + verifygraduation.py + graduate-tool… PROPOSED S3 archive:L327
6 /spec-amendment (the RFC-supersession amendment process) The now-RATIFIED chamber amendment process as a codified discipline: normative spec change = a superseding version (Obsoletes… PROPOSED S3 archive:L339
7 CLAUDE.md staleness canary (git tripwire) If the scripts/ set or graduation-spec.yaml changed but CLAUDE.md didn't since, flag "may be stale." Bounded, low-false-positive… PROPOSED — archive:L381
8 /reconcile-open-work (program forest-view register) The practice proven twice now (ARC open-work register, then the whole Chamber→Gold→Engine register today): when tracking has… PROPOSED S3 archive:L462
9 /jurist-package (create) Draft a self-contained jurist package for a repo-blind reviewer: inline the ratified spec clauses verbatim (jurist gates the… PROPOSED S3 archive:L544
10 /glyph-map-source Per-source character-as-image glyph-mapping — the repeatable procedure built + proven on Levi this session (REVIEWED-70/v2.5.0)… PROPOSED — archive:L623
11 /fool Build WHEN STABLE, not now. The differently-formed-checker trial protocol, derived twice this session: withhold the ruling; pre… PROPOSED — register:L221
12 B Headless-Chrome capture used again today, and this time it was decisive rather than diagnostic: the screenshots are what exposed… PROPOSED S3 register:L232
13 /census — the pre-registered instrument census Strongly earned: two runs, ten days apart, both productive, and in BOTH the pre-registration caught a reversal the run would… PROPOSED — register:L246

feedback-memory (9)

Proposed feedback memories.

# Item Gist Status Stroke Source
1 /wake-up §2.b Until upstream #1665 closes: wake searches run unscoped + post-filter by wing (wing-scoped mempalacesearch errors at HEAD).… PROPOSED — archive:L101
2 ARC build has NO autoprefixer — hand-write -webkit- prefixes ARC's plain-sass build adds no vendor prefixes. When introducing a new CSS property, check Safari's prefix need and hand-write… PROPOSED — archive:L145
3 Justification-judgment bar = Bringhurst even-colour/rivers, NOT Rutter… Load-bearing for the future justification decision: when living with the soft rag to judge whether to justify, ask "is the colour… PROPOSED — archive:L146
4 container-must-embody-the-contained When producing an ARTIFACT of a spec (a PDF of the spec, a rendered sample), set it per the spec's OWN rules and verify the… PROPOSED — archive:L153
5 clean cruft at the SOURCE layer, not as a downstream transform When a source carries conversion cruft (EPUB footnote-links, image-scan embeds), clean it at the SOURCE — producing a new… PROPOSED — archive:L185
6 /wrap-up §4.b/§5 Inline reminder at the KG-write step: kgadd object hard-caps at 128 chars — write short keyword objects on the FIRST pass (detail… PROPOSED — archive:L235
7 studium-engine tool-evolution-log Establish the analog of chamber-library/curation/tool-evolution-log.md for the engine tools (patternfinder, ingestgate, chunker… PROPOSED — archive:L242
8 draft governance entries copy-paste-CLEAN When drafting PENDING/REVIEWED entries for the steward to place, format them as clean copy-paste-ready blocks with plain ##… PROPOSED — archive:L534
9 /wake-up patch — a tracker marked THE GOVERNING FRAME is read ENTIRE, not… Earned at a measured cost of ten days. MEMORY.md carries "[Chamber as versioned releases] — THE GOVERNING FRAME for all library… PROPOSED — register:L249

other (8)

Notes, tool promotions, and rows that resist bucketing.

# Item Gist Status Stroke Source
1 /graduate-chamber-source (already PROPOSED 06-26) Its empirical spec is now the full ocrmac column-aware pipeline, not the olmOCR one: render→ocrmac(per-line bbox/conf)→column… PROPOSED S3 archive:L298
2 2 research sweeps owed (not skills — project tasks) The engine's signature capabilities are greenfield: (1) genealogy/temporal/citation-graph/KG-augmented/diachronic-NLP; (2) multi… UNMARKED — archive:L301
3 /spec-amendment (proposed 2026-07-03, DEFERRED-until-first-use) The 2026-07-03/04 v2.0 drafting IS its first real exercise — the empirical spec now exists. Codify the proven procedure so the… PROPOSED S3 archive:L348
4 /model-handoff (premium-model scope-charter) Used tonight end-to-end: produced studium-engine/docs/stage-1-replan-scope-charter-2026-07-05.md on Opus (§0 discipline / §1… PROPOSED S3 archive:L358
5 /model-handoff (proposed 2026-06-12; reinforced 07-04 eve) Tonight was the first time the pattern ran END-TO-END as designed: fresh Fable-5 session woke into the scope-charter, read only… PROPOSED S3 archive:L366
6 /model-handoff (premium-model scope charter) Proposed 2026-06-12; this session built a full scope charter with the discipline (charter-on-Opus → Fable spends premium tokens… PROPOSED S3 archive:L420
7 convertlaneborndigital.py → fleet promotion The one-door born-digital lane driver (whole-EPUB inject → whole-EPUB pandoc -f epub -t markdown-smart + non-empty-defs teeth)… PROPOSED — archive:L615
8 ~/dotfiles/scripts/ Promote the union-losslessness verifier to verify-union-lossless.py ... — asserts baseline ⊆ union of parts at… PROPOSED — archive:L660

New proposals (2026-08-07 evening wrap — retrieval is set by home; awaiting steward)

First batch filed under the REVIEWED-95 firing-moment gate. Each declares where and when it fires; the gate's own test is whether that declaration changes the routing — and for #191 it did, moving it off a 14% home onto an 83% one.

# Target Kind Proposal Firing moment (declared) Earned by Status
190 Symmetria §3 new flag An elegant discriminator that explains the data is not thereby licensed to act on it. When a rule accounts for nearly all of a set, the pull to skip the per-item look is strongest exactly when the rule feels cleanest. Before executing a classification across many items, read the items the rule is about to dispose of. /symmetria check, before any bulk move/delete/reclassification. Symmetria was invoked 56/64 sessions, so §3 is a genuine high-retrieval home — routed here rather than to a skill. 2026-08-07. symlink-vs-real-dir explained 61 of 63 skills and was about to be executed wholesale; it was wrong for the 2 that were the steward's own (french-typography-pass, spec-code-audit). 97% right, and the 3% were what mattered. PROPOSED
191 feedback-tool-review-after-each-use.md patch (extend an existing memory, not a new entry) Add: census where an instrument LOOKS versus where the thing it hunts actually lives. A detector that is correct everywhere it looks, and does not look where the quarry is, reports clean forever. After each tool run — the parent rule's existing moment. Lives in MEMORY.md (83% reach) rather than the ladder (14%), because the gate asked: as a standalone ladder entry it would have been filed at one-sixth the retrieval. 2026-08-07. governance-drift-check.py's deferral scan globbed only */docs/**/*.md, so claude/governance/ — where governance packages live — was invisible to it. Found by using the instrument to wire PENDING-112's falsifier, not by reading it. PROPOSED

Classification: both [PROPOSAL], neither FIX-lane — each changes what the executor must do before acting (the latitude clause of the two-clause test). No FIX-lane changes were applied this session. The /wake-up, /wrap-up and governance-drift-check.py edits were all implementations of REVIEWED-95, not self-tending.

Reinforcement, not a new filing: "a mention is not a retrieval — count the access, never the name" is the existing census-by-mechanism-not-proxy rule, hit again (the ladder read as 53/64 by filename mention; 9/64 by actual tool-call access, because MEMORY.md's pointer line contains the filename and loads every wake). Recorded in the KG; no register row, because the rule already exists and already fires.