/decisions · 2026-06-30 · ops · process-newsletter · i12
process-newsletter WATCH path?The process-newsletter watch mode (Mode 4) keeps writing curation/hybrid notes with invented heading synonyms — ## Stories covered, ## Main Essay, ## Digest Items — instead of the two canonical I12 headings. Two prior wording-fix /improve runs (2026-05-08, 2026-06-24) did not converge. Proposal: add a deterministic parent-level I12 gate that runs after each subagent write and re-dispatches with a surgical heading rename if it fails.
The I12 invariant requires curation/hybrid vault notes to contain exactly one of:
## Curation section## Issue contentsThe subagent, under instruction load, substitutes a semantically plausible synonym. The space of plausible synonyms is unbounded — no wording enumeration can close it. The /improve recurrence guardrail (added 2026-06-29) now explicitly disallows a third wording fix for the same pattern.
The proposed fix adds a new Step 3b to the Mode 4 watch orchestrator loop in process-newsletter/SKILL.md: after each subagent writes its note, the parent (which has no instruction-load synonym risk) checks I12 inline — reads the file, checks newsletter_format, verifies the heading. If it fails, the parent re-dispatches a targeted single-turn correction: rename the heading, nothing else. Cap: 1 re-dispatch per note; failures after retry surface as I12-FAIL in the run report.
A new Step 3b block inserted between Step 3 (subagent spawn) and Step 4 (parent collects summaries) in Mode 4. The parent gate is:
newsletter_format frontmattercuration or hybrid: verify body contains ## Curation section or ## Issue contents (case-insensitive level-2 heading)I12-FAIL if still failing after 1 retryNo other Mode 4 steps change. The subagent prompt and pre-write checklist stay unchanged.
Over a 2-week observation window (2 Review cycles), every fresh curation/hybrid note passes audit-newsletter-outputs.py --strict I12 on first write or after the one automatic re-dispatch — with zero /self-review --fix I12 repairs needed.
Apply the structural I12 gate to SKILL.md exactly as proposed — new Step 3b in Mode 4 with inline heading check + 1-retry re-dispatch. Ray edits SKILL.md and opens a PR.
Approve + sendLeave the current wording approach in place and accept some I12 drift. Self-review --fix handles it when it surfaces. Add a one-line reason so the decision is on record.
Archive + sendApply a lighter-weight partial fix — Ray will scope. E.g. add the inline I12 check to the run report without the re-dispatch loop, or apply only to curation (not hybrid) format.
Split + sendRevisit in 30 days (2026-07-30). Push the Notion task to that date and leave SKILL.md unchanged until then.
Defer + send