Files
Ken Yasue 33b33c4bab Restructure milestone plan into phase files; /execute-milestones now requires a phase file
- /plan-milestones groups milestones into phases and generates one file per phase (phase1-milestones.md, phase2-milestones.md, ...) plus roadmap.md; milestone numbering stays global across phases
- /execute-milestones takes a required phase file argument (phase1-milestones.md | full path | phase1 | 1) and executes only that file's milestones one by one; with no argument it lists available phase files and stops; closes the phase in the roadmap when done
- milestone-planning skill/template rewritten around the Phase > Milestone > Feature hierarchy; milestone-execution skill scoped to one phase file per run
- /add-feature, CLAUDE.md, README, and docs/milestones/README.md updated to phase-file references

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 12:18:25 +02:00

2.9 KiB
Raw Blame History

Phase File Template

Use this structure for each docs/milestones/phase[N]-milestones.md. A phase file contains one or more milestones; milestone numbers are global across all phase files.

# Phase [N]: [Name]

**Status**: Not started | In progress | Completed
**Goal**: [One sentence: what this phase delivers as a release]
**Execute**: `/execute-milestones phase[N]-milestones.md`
**Milestones**: [NN][NN]

---

## Milestone [NN]: [Name]

**Status**: Not started | In progress | Completed
**Goal**: [One sentence: what the user can do after this milestone that they could not before]

### Scope

#### In Scope
- [Theme or capability included in this milestone]

#### Out of Scope
- [Explicitly excluded item] → [where it lives instead: milestone NN / icebox]

### Dependencies

- [What must exist before this milestone can start: previous milestone, external system, decision]

### Features

> One `/add-feature` run per feature. Check off each feature when its run completes.

- [ ] [Feature 1 name]
- [ ] [Feature 2 name]

#### Feature: [Feature 1 name]

- **Description**: [What it does and the user value, 13 sentences]
- **Related requirements**: [PRD user story / requirement IDs or headings]
- **Affected screens**: [screen ids from ui-blueprint.json, or "n/a"]
- **Acceptance criteria**:
  - [Criterion 1]
  - [Criterion 2]
  - [Criterion 3]
- **Command**: `/add-feature [Feature 1 name]`

#### Feature: [Feature 2 name]

- **Description**: ...
- **Related requirements**: ...
- **Affected screens**: ...
- **Acceptance criteria**:
  - ...
- **Command**: `/add-feature [Feature 2 name]`

### Definition of Done

- [ ] All features above are checked off
- [ ] `npm test`, `npm run lint`, `npm run typecheck` pass
- [ ] Persistent documents in `docs/` are reconciled with all features
- [ ] [Milestone-specific criterion, e.g. "demo flow X→Y→Z works end-to-end"]

### Completion Notes

_Filled in when the milestone completes: completion date, deviations from plan, lessons learned._

---

## Milestone [NN+1]: [Name]

[Same structure as above]

Roadmap Template

Use this structure for docs/milestones/roadmap.md.

# Development Roadmap

**Current phase**: [N — name] (`phase[N]-milestones.md`)
**Current milestone**: [NN — name]

## Phases and Milestones

| Phase | File | Milestone | Name | Goal | Features | Status |
|-------|------|-----------|------|------|----------|--------|
| 1 | `phase1-milestones.md` | 01 | [name] | [one-line goal] | [count] | Not started / In progress / Completed |
| 1 | `phase1-milestones.md` | 02 | [name] | [one-line goal] | [count] | Not started |
| 2 | `phase2-milestones.md` | 03 | [name] | [one-line goal] | [count] | Not started |

## Ordering Rationale

[Why this sequence: MVP definition, dependency chains, priority decisions made with the user]

## Later / Icebox

Consciously deferred — revisit when re-planning:

- [Deferred item] — [why deferred]