Command: iteration (move to iteration)
Use for: add to iteration:, iteration:
Prerequisites: Read ../bootstrap.md and ../rules.md first. Read ../id-prefixes.md when appending to ITERATION.md.
Triggers
add to iteration: [reference to section] or iteration: [reference to section]
→ Find the referenced section in IMPROVEMENTS.md, TODO.md, USER_GOALS.md, BUGS.md, DEFERRED.md, or TECH_DEBT.md (under workspace work/)
→ Remove that section from the source file
→ Add it to the bottom of work/ITERATION.md using the iteration template format
→ Include source information (which file it came from)
add to iteration: [new text block] (without referencing an existing section)
→ Add the new text block directly to the bottom of work/ITERATION.md using the iteration template format (assign the next **Id:** ITER-N, per ../id-prefixes.md)
→ Mark source as "Manual Entry"
Workflow
- Migrate and bootstrap
work/files as needed (../bootstrap.md) - Read the source file (when moving an existing section) and
../id-prefixes.md— backfill missing ids in that source file, then readITERATION.mdand backfill missing ids there (id-prefixes.md, Backfill). For manual-only adds, only backfillITERATION.md. - Read the iteration template —
../templates/iteration-template.md - Identify the referenced section in the source file (if the user supplied only new text with no queue reference, omit steps 5–6 and use that text in step 7 with Source: Manual Entry)
- Extract the entire section including the title and all content
- Remove the section from the source file (preserve file structure)
- Format the entry according to the iteration template:
- Assign
**Id:** ITER-N— compute the nextITER-NinITERATION.mdafter backfill asmax(**Last id:** counter, in-file max **Id:** ITER-*) + 1(../id-prefixes.md). - Use the original title
- Set "Date Added" to today's date
- Set "Source" to the source file name (e.g., "IMPROVEMENTS.md")
- If the extracted section contained
**Id:** PREFIX-N, set**Source id:** PREFIX-Non the new iteration entry; otherwise omit Source id: (or for manual entry without a prior id, omit). - Include the original description/content in "Description"
- Preserve any additional context in "Context"
- If the source section has a
**Why:**field, copy its text verbatim into the iteration entry's**Why:**field - If the source section lacks
**Why:**, set**Why:** [Not yet documented] - For manual iteration entries (no source section), use user-provided rationale when clear; otherwise set
**Why:** [Not yet documented]
- Assign
- Append to the bottom of ITERATION.md (before the final
---separator if present) - Update the persistent counter in
ITERATION.md— raise**Last id:** ITER-Nto the newly assigned id. Removing the section from the source file (step 6) does not change that source file's**Last id:**— the counter is monotonic. - Commit — Stage only the changed
work/file(s) and commit with messagexp_work: move PREFIX-N to iteration as ITER-N(e.g.xp_work: move IMP-5 to iteration as ITER-2). Do not usegit add .; only stage specificwork/files that were modified. - Confirm completion by saying "Moved to iteration" or "Added to iteration"
See ../format-guidelines.md for template paths.