Synced from
references/refinement-hooks.mdinscript-poolskill on 2026-05-18. Edit upstream in the skill; this file is overwritten on next sync.
Refinement Hooks — Forward Spec for M114
Daniel said refinement (enrichment with adjacent themes) is a “späterer Schritt.” This file specifies the frontmatter and body hooks the script-pool puts in place TODAY so a future M114 refinement skill can pick up where script-pool leaves off without schema changes.
What “refinement” means
Take an existing script.md in draft status and:
- Pull adjacent Readwise highlights (semantic search on clip themes)
- Identify related Daniel-thinking from the existing script pool (cross-reference scripts on similar pillars / themes)
- Surface 2-3 enrichment alternatives (e.g., “Bengio said X; Karpathy said Y; you have a Y-clip from 3 weeks ago — want to weave both?“)
- Update the script body with Daniel-approved additions
- Bump status:
draft→refining→ready
Hooks in frontmatter (already in S01 schema)
refinement:
themes_to_explore: [] # populated at draft time by Mode C
adjacent_clips: [] # M114 fills via Readwise semantic search
status: "draft-v1" # M114 bumps as it progresses
refined_at: null # M114 sets ISO-8601 on each pass
unanswered_questions: [] # M114 may add open questions Daniel decides on
contradicting_clips: [] # M114 may surface clips that contradict draft thesisthemes_to_explore
Mode C populates 3-5 themes auto-extracted from Daniel’s reflection’s “Was klingt verwandt” section. M114 reads these as the search seeds for adjacent-clip queries.
Example values (from Bengio Continuity Cluster reflection):
themes_to_explore:
- "episodic-memory-papers"
- "anthropic-constitutional-memory"
- "companion-product-launches-2025-2026"
- "stateless-vs-stateful-llm-architecture"Mode C must NOT invent themes — only extract what Daniel actually wrote. If reflection had no “Was klingt verwandt” content, this list stays empty ([]) and M114 can later prompt Daniel to add some.
adjacent_clips
M114-only. Each entry:
adjacent_clips:
- readwise_id: "..."
relevance_note: "<one-line why this clip is adjacent — semantic similarity, complementary angle, etc.>"M114 finds these via:
- Readwise semantic search (
mcp__readwise__search_highlights({ query: <theme + clip excerpt> })) - Filtering by date (avoid suggesting the source clip itself)
- Confidence scoring + Daniel-confirm before injecting
unanswered_questions
Daniel-supplied OR M114-extracted questions that the current draft doesn’t answer. Examples:
- “Does Bengio define state architecturally or behaviorally?”
- “Is the persistence-layer claim verifiable in our code right now, or aspirational?”
These can guide Daniel to record a follow-up clip or enrich the current draft.
contradicting_clips
Adversarial framing. M114 looks for clips that CONTRADICT the draft’s thesis:
contradicting_clips:
- readwise_id: "..."
note: "<one-line how this clip cuts against the current angle>"Useful for: avoiding echo-chamber framing, building stronger arguments by addressing counter-points, or pivoting if a strong contradiction surfaces.
Hooks in body (markdown comments)
Mode C injects refinement-anchor comments inline:
<!-- refinement-hook: theme-enrich. Beat 2 unpacks "stateless = vending machine."
Adjacent themes worth pulling per `themes_to_explore`: episodic memory papers,
constitutional AI memory work, companion-product launches 2025-2026.
M114 should query these and offer Daniel 2-3 enriched alternates. -->These comments live in the script body and survive markdown rendering (HTML comments are invisible to readers + Dataview). M114 grep-finds them.
Status lifecycle (M114 transitions)
draft (S02 commit)
↓ M114 read themes_to_explore, query Readwise for adjacent
refining
↓ M114 surface alternates, Daniel approves enrichments
refining (Daniel iterates)
↓ Daniel says "ready"
ready
↓ priming Mode 4 (script-driven) + recording + extraction
shipped (extraction post-hook writes shipped_clip_id)
retired is a manual transition — Daniel chooses to abandon a script.
What M114 must NOT do
- Modify verbatim quotes.
sources[].text_excerptis sacred. M114 can ADD new sources from adjacent clips, never modify existing ones. - Bypass voice-safety gates. Each refinement pass re-runs all 7 gates. Status bump to
readyrequires all gates pass. - Auto-promote to
ready. Always Daniel-confirm before status bump. - Touch other scripts in the pool. M114 enriches one script per invocation. Cross-script de-duplication or merging is a separate concern (M115?).
Schema compatibility
The schema in .schema/script.frontmatter.schema.json already accepts all the M114-relevant fields. No schema changes needed when M114 ships — purely additive consumption.
Forward-compatibility test: Mode C writes script.md with empty adjacent_clips: [] and unanswered_questions: []. M114 just populates these arrays. No migration required.