Later cuts are follow-ups, not prose lines #51

Merged
eureka merged 1 commit from self/later-cuts-are-follow-ups into main 2026-11-06 19:47:32 +00:00
4 changed files with 26 additions and 9 deletions

View file

@ -159,9 +159,18 @@ an edit.
dispatches as soon as the spec is in: its dependencies have landed or are in
their Soul pass, and Self has the head and the machine for it. That is the next
cut of a campaign, plus a sibling that can run beside it in its own worktree.
Every later cut is one line in the prose map's cut sequence (a title and what
it waits on), never a spec. A cut split for budget admits its first part; the
rest stay lines. A spec waits on the Body and goes stale: the variants specs of
Every later cut is a `follow_up`, never a spec: its `item` is the title and
what it waits on, its `source` the ruling or spec that orders it, its `owner`
the steward who will map it. A cut split for budget admits its first part; the
rest are follow-ups. The follow-up stays open while its cut is mapped and
built, and Self closes it `Fixed` by the cut's report once Soul holds, so it
stays in view until the work exists. A later cut kept only as a line in prose
has no owner and no status, and nothing surfaces it: the 2026-10-31
live-mind-sessions sequence planned nine cuts in a research doc's table, and
the six that stayed as table rows (resume, the Self's replies reaching her
Persona, the session keeper) were still unbuilt on 2026-11-06, when the
operator asked again (ruling `three-tiers-of-context`). An operator ruling
that orders work not yet built gets its follow-ups in the same batch. A spec waits on the Body and goes stale: the variants specs of
2026-10-02 sat ten days behind a moving CultLib and needed a fresh Imagination
pass before Hands could use them. Operator, 2026-10-12: "Originally a spec
would get dispatched as soon as it's written, but we've been drifting way ahead

View file

@ -158,7 +158,7 @@ Dispatch: `subagent_type: imagination`, model Opus.
Migration: <migration>. Admit a cut_spec for <the next cut, and at most a
sibling Self will run beside it> so Hands can go straight to the cut with
little reading. Map nothing further ahead (SKILL.md step 1, "Map only what is
about to run"): later cuts are one line each in the prose map's cut sequence.
about to run"): admit each later cut as a `follow_up` naming what it waits on.
Admit only cut_specs, their superseding resolutions, questions, and `idea`s.
Before probing, run `huginn known` on the design question and cite what it
@ -220,8 +220,8 @@ The cut_spec's fields are the spec standard. Beyond filling them:
revision N by it, in one batch; never a second spec for the same cut
If a cut would not fit one Hands pass under <Self's context budget, SKILL.md
step 3>, admit its first part as the spec, with its own verification, and add the
rest to the prose map's cut sequence.
step 3>, admit its first part as the spec, with its own verification, and each
remaining part as a `follow_up`.
Where only the operator can decide, admit a question with a recommended
option, raised in the spec it blocks. A spec or brief never gates a steward's

View file

@ -355,9 +355,9 @@ reads its gaps with this query:
happens to it over time, and who decides (SKILL.md step 0b).
- **Rationale:** why the cut order is what it is, why a design was rejected,
and anything longer than a `Para`.
- **The cut sequence:** one line per cut not yet mapped (a title and what it
waits on). A cut leaves the list when its `cut_spec` is admitted, which is
only when Self is about to dispatch it (SKILL.md step 1).
- **The cut order:** why the cuts run in the order they do. The cuts not yet
mapped are `follow_up`s in the mind (SKILL.md step 1), cited here by id; the
prose never holds one the mind lacks.
It has no progress section, no per-cut sections, no rulings and no ledger table:
those are documents, and the recipes above read them. `docs/<campaign>-target.md`

View file

@ -2,6 +2,14 @@
Record each change to the skill together with the evidence that motivated it.
## 2026-11-06: later cuts are follow-ups, not prose lines
Self, session `self-2026-11-04-eureka`.
Evidence. Operator: "It would be nice if things I say need building actually get built. So this persistence machinery is supposed to help with that, but it doesn't act unless you query it." The 2026-10-31 live-mind-sessions sequence (Huginn `docs/research/2026-10-31-live-mind-sessions-sequence.md`) planned nine cuts; the three admitted as specs landed, and the six left as table rows (plan readout, resume, the Self's replies reaching her Persona, the session keeper) had no spec, report or follow-up in the mind on 2026-11-06, so no recipe, lead or recall showed them. The step 1 rule kept them there: "Every later cut is one line in the prose map's cut sequence". Separately, `tools/recall.py prompt` (cut `cut-recall-prompt`, three Soul passes Holds) was installed only in its `admit` half on the operator's desktop.
What changed. `SKILL.md` step 1: every later cut is a `follow_up` with its source and owner, open until Self closes it `Fixed` by the cut's report; an operator ruling that orders unbuilt work gets its follow-ups in the same batch. `references/briefs.md` (Imagination brief, budget split) and `references/campaign-state.md` (the prose map keeps the cut order and cites the follow-ups) follow. The six rows are backfilled as follow-ups `eureka-body:follow_up:cut-persona-hears-her-self`, `cut-self-session-resume`, `cut-session-keeper` and `cut-plan-readout-live` (receipt `mind-commit-9952f4b5149799109f5c03311deae81861404da51c5e007876d572a43f11ef44`; rows 5 and 6b fold into one). The prompt hook is installed in the operator's `~/.claude/settings.json`. Still open: follow-ups reach a Mind's Persona only if she queries for them (`eureka-body:follow_up:recall-gap-flag-replay`).
## 2026-11-06: three tiers of context
Self, session `self-2026-11-04-eureka`.