Harvest
The routed entry point for the end-of-unit harvest — the sweep of what the
unit produced, learned, and left open into their durable sinks. The procedure,
the three legs, and the sink table are owned by harvest.md; consult it
and follow it. Do not re-derive the routing here — point there.
During execution, working notes belong in the active runtime phase sheet
(state/.../phases/phase-NN.md) — disposable working context. The harvest is
the wrap-up sweep that moves what matters into durable homes; the slice's
notes.md (doctrine slice notes <ID> scaffolds it on demand) carries the
durable prose. Honour the storage rule: live progress lives in the state tree,
never in authored files.
If you don't know which slice owns the work, find it with doctrine slice list.
No governing slice (an RFC, spec, or review close)? The harvest still
happens — the legs route to their sinks per harvest.md §5; there is just no
## Harvest manifest to maintain.
The three legs
- produced — the work delta. Be concise, but record:
- what's done
- any:
- surprises encountered or adaptations required
- potential rough edges, omissions, or refactorings for later
- follow-up actions advisable
- open questions relating to completed or upcoming work
- durable facts, patterns, or gotchas that should become a memory
- relevant commit hash(es), or: uncommitted work
- whether
.doctrine changes were committed promptly per repo doctrine, or
are still pending and why
- if committed, whether they went out with code or separately when that
matters for the next agent
- whether the verification gate (
doctrine check gate) has run successfully
since code was last modified, or: outstanding errors
- learned — reusable guidance and citable epistemic observations, routed to
their sinks per
harvest.md.
- open — the decisions, questions, assumptions, and constraints the unit
carries forward. This is the leg a produced-only sweep silently drops: route
it via
/knowledge (→ DEC / QUE / ASM / CON).
Each leg's sink is owned by harvest.md's §2 table — cite it, don't restate it.
## Harvest maintenance
At each pass, update the single-copy ## Harvest section in the slice's
notes.md per harvest.md §3: restamp the fresh-as-of line (date · lifecycle
position · head commit), keep entries pointer-only (ids + one clause, never a
status), and drop settled or superseded entries — git holds the history, so the
section stays current rather than cumulative.
1---2name: harvest3description: Use at the end of any coherent unit — a phase, task, review close, or slice wrap — to sweep what the unit produced, learned, and left open into their durable sinks, and to maintain the Harvest section of the governing slice's notes.4---56# Harvest78The routed entry point for the end-of-unit **harvest** — the sweep of what the9unit produced, learned, and left open into their durable sinks. The procedure,10the three legs, and the sink table are **owned by `harvest.md`**; consult it11and follow it. Do not re-derive the routing here — point there.1213During execution, working notes belong in the **active runtime phase sheet**14(`state/.../phases/phase-NN.md`) — disposable working context. The harvest is15the wrap-up sweep that moves what matters into durable homes; the slice's16`notes.md` (`doctrine slice notes <ID>` scaffolds it on demand) carries the17durable prose. Honour the storage rule: live progress lives in the state tree,18never in authored files.1920If you don't know which slice owns the work, find it with `doctrine slice list`.21**No governing slice** (an RFC, spec, or review close)? The harvest still22happens — the legs route to their sinks per `harvest.md` §5; there is just no23`## Harvest` manifest to maintain.2425## The three legs2627- **produced** — the work delta. Be concise, but record:28 - what's done29 - any:30 - surprises encountered or adaptations required31 - potential rough edges, omissions, or refactorings for later32 - follow-up actions advisable33 - open questions relating to completed or upcoming work34 - durable facts, patterns, or gotchas that should become a memory35 - relevant commit hash(es), or: uncommitted work36 - whether `.doctrine` changes were committed promptly per repo doctrine, or37 are still pending and why38 - if committed, whether they went out with code or separately when that39 matters for the next agent40 - whether the verification gate (`doctrine check gate`) has run successfully41 since code was last modified, or: outstanding errors42- **learned** — reusable guidance and citable epistemic observations, routed to43 their sinks per `harvest.md`.44- **open** — the decisions, questions, assumptions, and constraints the unit45 carries forward. This is the leg a produced-only sweep silently drops: route46 it via **`/knowledge`** (→ DEC / QUE / ASM / CON).4748Each leg's sink is owned by `harvest.md`'s §2 table — cite it, don't restate it.4950## `## Harvest` maintenance5152At each pass, update the single-copy `## Harvest` section in the slice's53`notes.md` per `harvest.md` §3: restamp the `fresh-as-of` line (date · lifecycle54position · head commit), keep entries pointer-only (ids + one clause, never a55status), and drop settled or superseded entries — git holds the history, so the56section stays current rather than cumulative.