claude-cook 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +607 -0
  3. package/agents/gsd-codebase-mapper.md +738 -0
  4. package/agents/gsd-debugger.md +1203 -0
  5. package/agents/gsd-executor.md +784 -0
  6. package/agents/gsd-integration-checker.md +423 -0
  7. package/agents/gsd-phase-researcher.md +641 -0
  8. package/agents/gsd-plan-checker.md +745 -0
  9. package/agents/gsd-planner.md +1386 -0
  10. package/agents/gsd-pm.md +331 -0
  11. package/agents/gsd-project-researcher.md +865 -0
  12. package/agents/gsd-research-synthesizer.md +256 -0
  13. package/agents/gsd-roadmapper.md +605 -0
  14. package/agents/gsd-verifier.md +778 -0
  15. package/bin/install.js +1477 -0
  16. package/commands/gsd/add-phase.md +207 -0
  17. package/commands/gsd/add-todo.md +193 -0
  18. package/commands/gsd/audit-milestone.md +277 -0
  19. package/commands/gsd/check-todos.md +228 -0
  20. package/commands/gsd/complete-milestone.md +136 -0
  21. package/commands/gsd/debug.md +169 -0
  22. package/commands/gsd/discuss-phase.md +86 -0
  23. package/commands/gsd/execute-phase.md +339 -0
  24. package/commands/gsd/help.md +545 -0
  25. package/commands/gsd/insert-phase.md +227 -0
  26. package/commands/gsd/join-discord.md +18 -0
  27. package/commands/gsd/list-phase-assumptions.md +50 -0
  28. package/commands/gsd/map-codebase.md +71 -0
  29. package/commands/gsd/new-milestone.md +721 -0
  30. package/commands/gsd/new-project.md +1008 -0
  31. package/commands/gsd/pause-work.md +134 -0
  32. package/commands/gsd/plan-milestone-gaps.md +295 -0
  33. package/commands/gsd/plan-phase.md +525 -0
  34. package/commands/gsd/pm-check.md +115 -0
  35. package/commands/gsd/pm-replan.md +102 -0
  36. package/commands/gsd/pm-start.md +218 -0
  37. package/commands/gsd/pm-status.md +116 -0
  38. package/commands/gsd/pm-stop.md +72 -0
  39. package/commands/gsd/progress.md +415 -0
  40. package/commands/gsd/quick.md +309 -0
  41. package/commands/gsd/remove-phase.md +349 -0
  42. package/commands/gsd/research-phase.md +200 -0
  43. package/commands/gsd/resume-work.md +40 -0
  44. package/commands/gsd/set-profile.md +106 -0
  45. package/commands/gsd/settings.md +151 -0
  46. package/commands/gsd/update.md +172 -0
  47. package/commands/gsd/verify-work.md +219 -0
  48. package/get-shit-done/references/checkpoints.md +1078 -0
  49. package/get-shit-done/references/continuation-format.md +249 -0
  50. package/get-shit-done/references/git-integration.md +254 -0
  51. package/get-shit-done/references/model-profiles.md +73 -0
  52. package/get-shit-done/references/planning-config.md +189 -0
  53. package/get-shit-done/references/questioning.md +141 -0
  54. package/get-shit-done/references/tdd.md +263 -0
  55. package/get-shit-done/references/ui-brand.md +172 -0
  56. package/get-shit-done/references/verification-patterns.md +612 -0
  57. package/get-shit-done/references/vibe-kanban.md +142 -0
  58. package/get-shit-done/templates/DEBUG.md +159 -0
  59. package/get-shit-done/templates/UAT.md +247 -0
  60. package/get-shit-done/templates/codebase/architecture.md +255 -0
  61. package/get-shit-done/templates/codebase/concerns.md +310 -0
  62. package/get-shit-done/templates/codebase/conventions.md +307 -0
  63. package/get-shit-done/templates/codebase/integrations.md +280 -0
  64. package/get-shit-done/templates/codebase/stack.md +186 -0
  65. package/get-shit-done/templates/codebase/structure.md +285 -0
  66. package/get-shit-done/templates/codebase/testing.md +480 -0
  67. package/get-shit-done/templates/config.json +35 -0
  68. package/get-shit-done/templates/context.md +283 -0
  69. package/get-shit-done/templates/continue-here.md +78 -0
  70. package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
  71. package/get-shit-done/templates/discovery.md +146 -0
  72. package/get-shit-done/templates/milestone-archive.md +123 -0
  73. package/get-shit-done/templates/milestone.md +115 -0
  74. package/get-shit-done/templates/phase-prompt.md +567 -0
  75. package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
  76. package/get-shit-done/templates/pm-config.md +55 -0
  77. package/get-shit-done/templates/pm-log.md +27 -0
  78. package/get-shit-done/templates/project.md +184 -0
  79. package/get-shit-done/templates/requirements.md +231 -0
  80. package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
  81. package/get-shit-done/templates/research-project/FEATURES.md +147 -0
  82. package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
  83. package/get-shit-done/templates/research-project/STACK.md +120 -0
  84. package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
  85. package/get-shit-done/templates/research.md +529 -0
  86. package/get-shit-done/templates/roadmap.md +202 -0
  87. package/get-shit-done/templates/state.md +205 -0
  88. package/get-shit-done/templates/summary.md +246 -0
  89. package/get-shit-done/templates/ticket-map.md +28 -0
  90. package/get-shit-done/templates/user-setup.md +311 -0
  91. package/get-shit-done/templates/verification-report.md +322 -0
  92. package/get-shit-done/workflows/complete-milestone.md +903 -0
  93. package/get-shit-done/workflows/diagnose-issues.md +231 -0
  94. package/get-shit-done/workflows/discovery-phase.md +289 -0
  95. package/get-shit-done/workflows/discuss-phase.md +433 -0
  96. package/get-shit-done/workflows/execute-phase.md +671 -0
  97. package/get-shit-done/workflows/execute-plan.md +1844 -0
  98. package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
  99. package/get-shit-done/workflows/map-codebase.md +322 -0
  100. package/get-shit-done/workflows/pm-check.md +210 -0
  101. package/get-shit-done/workflows/pm-dispatch.md +104 -0
  102. package/get-shit-done/workflows/pm-replan.md +203 -0
  103. package/get-shit-done/workflows/pm-sync.md +130 -0
  104. package/get-shit-done/workflows/resume-project.md +307 -0
  105. package/get-shit-done/workflows/transition.md +556 -0
  106. package/get-shit-done/workflows/verify-phase.md +628 -0
  107. package/get-shit-done/workflows/verify-work.md +596 -0
  108. package/hooks/dist/gsd-check-update.js +61 -0
  109. package/hooks/dist/gsd-statusline.js +87 -0
  110. package/package.json +47 -0
  111. package/scripts/build-hooks.js +42 -0
  112. package/scripts/pm-loop.sh +155 -0
@@ -0,0 +1,117 @@
1
+ # Planner Subagent Prompt Template
2
+
3
+ Template for spawning gsd-planner agent. The agent contains all planning expertise - this template provides planning context only.
4
+
5
+ ---
6
+
7
+ ## Template
8
+
9
+ ```markdown
10
+ <planning_context>
11
+
12
+ **Phase:** {phase_number}
13
+ **Mode:** {standard | gap_closure}
14
+
15
+ **Project State:**
16
+ @.planning/STATE.md
17
+
18
+ **Roadmap:**
19
+ @.planning/ROADMAP.md
20
+
21
+ **Requirements (if exists):**
22
+ @.planning/REQUIREMENTS.md
23
+
24
+ **Phase Context (if exists):**
25
+ @.planning/phases/{phase_dir}/{phase}-CONTEXT.md
26
+
27
+ **Research (if exists):**
28
+ @.planning/phases/{phase_dir}/{phase}-RESEARCH.md
29
+
30
+ **Gap Closure (if --gaps mode):**
31
+ @.planning/phases/{phase_dir}/{phase}-VERIFICATION.md
32
+ @.planning/phases/{phase_dir}/{phase}-UAT.md
33
+
34
+ </planning_context>
35
+
36
+ <downstream_consumer>
37
+ Output consumed by /gsd:execute-phase
38
+ Plans must be executable prompts with:
39
+ - Frontmatter (wave, depends_on, files_modified, autonomous)
40
+ - Tasks in XML format
41
+ - Verification criteria
42
+ - must_haves for goal-backward verification
43
+ </downstream_consumer>
44
+
45
+ <quality_gate>
46
+ Before returning PLANNING COMPLETE:
47
+ - [ ] PLAN.md files created in phase directory
48
+ - [ ] Each plan has valid frontmatter
49
+ - [ ] Tasks are specific and actionable
50
+ - [ ] Dependencies correctly identified
51
+ - [ ] Waves assigned for parallel execution
52
+ - [ ] must_haves derived from phase goal
53
+ </quality_gate>
54
+ ```
55
+
56
+ ---
57
+
58
+ ## Placeholders
59
+
60
+ | Placeholder | Source | Example |
61
+ |-------------|--------|---------|
62
+ | `{phase_number}` | From roadmap/arguments | `5` or `2.1` |
63
+ | `{phase_dir}` | Phase directory name | `05-user-profiles` |
64
+ | `{phase}` | Phase prefix | `05` |
65
+ | `{standard \| gap_closure}` | Mode flag | `standard` |
66
+
67
+ ---
68
+
69
+ ## Usage
70
+
71
+ **From /gsd:plan-phase (standard mode):**
72
+ ```python
73
+ Task(
74
+ prompt=filled_template,
75
+ subagent_type="gsd-planner",
76
+ description="Plan Phase {phase}"
77
+ )
78
+ ```
79
+
80
+ **From /gsd:plan-phase --gaps (gap closure mode):**
81
+ ```python
82
+ Task(
83
+ prompt=filled_template, # with mode: gap_closure
84
+ subagent_type="gsd-planner",
85
+ description="Plan gaps for Phase {phase}"
86
+ )
87
+ ```
88
+
89
+ ---
90
+
91
+ ## Continuation
92
+
93
+ For checkpoints, spawn fresh agent with:
94
+
95
+ ```markdown
96
+ <objective>
97
+ Continue planning for Phase {phase_number}: {phase_name}
98
+ </objective>
99
+
100
+ <prior_state>
101
+ Phase directory: @.planning/phases/{phase_dir}/
102
+ Existing plans: @.planning/phases/{phase_dir}/*-PLAN.md
103
+ </prior_state>
104
+
105
+ <checkpoint_response>
106
+ **Type:** {checkpoint_type}
107
+ **Response:** {user_response}
108
+ </checkpoint_response>
109
+
110
+ <mode>
111
+ Continue: {standard | gap_closure}
112
+ </mode>
113
+ ```
114
+
115
+ ---
116
+
117
+ **Note:** Planning methodology, task breakdown, dependency analysis, wave assignment, TDD detection, and goal-backward derivation are baked into the gsd-planner agent. This template only passes context.
@@ -0,0 +1,55 @@
1
+ # PM Configuration Reference
2
+
3
+ The `pm` section in `.planning/config.json` controls Product Manager behavior.
4
+
5
+ ## Fields
6
+
7
+ ```json
8
+ {
9
+ "pm": {
10
+ "mode": "autonomous",
11
+ "poll_interval_seconds": 60,
12
+ "project_id": null,
13
+ "repos": [],
14
+ "default_executor": "CLAUDE_CODE",
15
+ "auto_replan_on_failure": true,
16
+ "auto_dispatch_next_wave": true,
17
+ "max_replan_attempts": 3
18
+ }
19
+ }
20
+ ```
21
+
22
+ ### mode
23
+ - `"autonomous"` — PM loop runs via pm-loop.sh, auto-reacts to ticket changes
24
+ - `"manual"` — User triggers /pm:check manually
25
+
26
+ ### poll_interval_seconds
27
+ How often pm-loop.sh invokes /pm:check. Default: 60.
28
+
29
+ ### project_id
30
+ Vibe Kanban project UUID. Auto-detected on first /pm:start via list_projects().
31
+
32
+ ### repos
33
+ Array of `{repo_id, base_branch}` for dispatch. Auto-detected on first /pm:start via list_repos().
34
+
35
+ Example:
36
+ ```json
37
+ "repos": [
38
+ {"repo_id": "abc-123", "base_branch": "main"}
39
+ ]
40
+ ```
41
+
42
+ ### default_executor
43
+ Which external agent to dispatch. Options:
44
+ `CLAUDE_CODE`, `AMP`, `GEMINI`, `CODEX`, `OPENCODE`, `CURSOR_AGENT`, `QWEN_CODE`, `COPILOT`, `DROID`
45
+
46
+ ### auto_replan_on_failure
47
+ - `true` — PM auto-spawns planner on ticket failure, creates fix tickets, dispatches
48
+ - `false` — PM logs failure and waits for user `/pm:replan`
49
+
50
+ ### auto_dispatch_next_wave
51
+ - `true` — When all wave N tickets are done, auto-dispatch wave N+1
52
+ - `false` — Log wave completion and wait for user
53
+
54
+ ### max_replan_attempts
55
+ Max consecutive replans before escalating to human. Prevents infinite replan loops.
@@ -0,0 +1,27 @@
1
+ # PM Decision Log — Phase {PHASE}: {PHASE_NAME}
2
+
3
+ Started: {TIMESTAMP}
4
+ Mode: {autonomous|manual}
5
+ Poll interval: {INTERVAL}s
6
+
7
+ ---
8
+
9
+ <!-- Each cycle appends an entry below. Format:
10
+
11
+ ## [{TIMESTAMP}] {EVENT_TYPE}
12
+
13
+ - Summary of what happened
14
+ - Actions taken
15
+ - Next expected event
16
+
17
+ EVENT_TYPE values:
18
+ - INIT — PM loop started
19
+ - POLL — Regular poll cycle
20
+ - DISPATCH — Workers launched
21
+ - WAVE_COMPLETE — All wave N tickets done
22
+ - REPLAN — Plan modified due to failure/feedback
23
+ - FAILURE — Ticket failed, diagnosis started
24
+ - STUCK — Ticket detected as stuck
25
+ - PHASE_COMPLETE — All tickets done
26
+ - STOP — PM loop stopped
27
+ -->
@@ -0,0 +1,184 @@
1
+ # PROJECT.md Template
2
+
3
+ Template for `.planning/PROJECT.md` — the living project context document.
4
+
5
+ <template>
6
+
7
+ ```markdown
8
+ # [Project Name]
9
+
10
+ ## What This Is
11
+
12
+ [Current accurate description — 2-3 sentences. What does this product do and who is it for?
13
+ Use the user's language and framing. Update whenever reality drifts from this description.]
14
+
15
+ ## Core Value
16
+
17
+ [The ONE thing that matters most. If everything else fails, this must work.
18
+ One sentence that drives prioritization when tradeoffs arise.]
19
+
20
+ ## Requirements
21
+
22
+ ### Validated
23
+
24
+ <!-- Shipped and confirmed valuable. -->
25
+
26
+ (None yet — ship to validate)
27
+
28
+ ### Active
29
+
30
+ <!-- Current scope. Building toward these. -->
31
+
32
+ - [ ] [Requirement 1]
33
+ - [ ] [Requirement 2]
34
+ - [ ] [Requirement 3]
35
+
36
+ ### Out of Scope
37
+
38
+ <!-- Explicit boundaries. Includes reasoning to prevent re-adding. -->
39
+
40
+ - [Exclusion 1] — [why]
41
+ - [Exclusion 2] — [why]
42
+
43
+ ## Context
44
+
45
+ [Background information that informs implementation:
46
+ - Technical environment or ecosystem
47
+ - Relevant prior work or experience
48
+ - User research or feedback themes
49
+ - Known issues to address]
50
+
51
+ ## Constraints
52
+
53
+ - **[Type]**: [What] — [Why]
54
+ - **[Type]**: [What] — [Why]
55
+
56
+ Common types: Tech stack, Timeline, Budget, Dependencies, Compatibility, Performance, Security
57
+
58
+ ## Key Decisions
59
+
60
+ <!-- Decisions that constrain future work. Add throughout project lifecycle. -->
61
+
62
+ | Decision | Rationale | Outcome |
63
+ |----------|-----------|---------|
64
+ | [Choice] | [Why] | [✓ Good / ⚠️ Revisit / — Pending] |
65
+
66
+ ---
67
+ *Last updated: [date] after [trigger]*
68
+ ```
69
+
70
+ </template>
71
+
72
+ <guidelines>
73
+
74
+ **What This Is:**
75
+ - Current accurate description of the product
76
+ - 2-3 sentences capturing what it does and who it's for
77
+ - Use the user's words and framing
78
+ - Update when the product evolves beyond this description
79
+
80
+ **Core Value:**
81
+ - The single most important thing
82
+ - Everything else can fail; this cannot
83
+ - Drives prioritization when tradeoffs arise
84
+ - Rarely changes; if it does, it's a significant pivot
85
+
86
+ **Requirements — Validated:**
87
+ - Requirements that shipped and proved valuable
88
+ - Format: `- ✓ [Requirement] — [version/phase]`
89
+ - These are locked — changing them requires explicit discussion
90
+
91
+ **Requirements — Active:**
92
+ - Current scope being built toward
93
+ - These are hypotheses until shipped and validated
94
+ - Move to Validated when shipped, Out of Scope if invalidated
95
+
96
+ **Requirements — Out of Scope:**
97
+ - Explicit boundaries on what we're not building
98
+ - Always include reasoning (prevents re-adding later)
99
+ - Includes: considered and rejected, deferred to future, explicitly excluded
100
+
101
+ **Context:**
102
+ - Background that informs implementation decisions
103
+ - Technical environment, prior work, user feedback
104
+ - Known issues or technical debt to address
105
+ - Update as new context emerges
106
+
107
+ **Constraints:**
108
+ - Hard limits on implementation choices
109
+ - Tech stack, timeline, budget, compatibility, dependencies
110
+ - Include the "why" — constraints without rationale get questioned
111
+
112
+ **Key Decisions:**
113
+ - Significant choices that affect future work
114
+ - Add decisions as they're made throughout the project
115
+ - Track outcome when known:
116
+ - ✓ Good — decision proved correct
117
+ - ⚠️ Revisit — decision may need reconsideration
118
+ - — Pending — too early to evaluate
119
+
120
+ **Last Updated:**
121
+ - Always note when and why the document was updated
122
+ - Format: `after Phase 2` or `after v1.0 milestone`
123
+ - Triggers review of whether content is still accurate
124
+
125
+ </guidelines>
126
+
127
+ <evolution>
128
+
129
+ PROJECT.md evolves throughout the project lifecycle.
130
+
131
+ **After each phase transition:**
132
+ 1. Requirements invalidated? → Move to Out of Scope with reason
133
+ 2. Requirements validated? → Move to Validated with phase reference
134
+ 3. New requirements emerged? → Add to Active
135
+ 4. Decisions to log? → Add to Key Decisions
136
+ 5. "What This Is" still accurate? → Update if drifted
137
+
138
+ **After each milestone:**
139
+ 1. Full review of all sections
140
+ 2. Core Value check — still the right priority?
141
+ 3. Audit Out of Scope — reasons still valid?
142
+ 4. Update Context with current state (users, feedback, metrics)
143
+
144
+ </evolution>
145
+
146
+ <brownfield>
147
+
148
+ For existing codebases:
149
+
150
+ 1. **Map codebase first** via `/gsd:map-codebase`
151
+
152
+ 2. **Infer Validated requirements** from existing code:
153
+ - What does the codebase actually do?
154
+ - What patterns are established?
155
+ - What's clearly working and relied upon?
156
+
157
+ 3. **Gather Active requirements** from user:
158
+ - Present inferred current state
159
+ - Ask what they want to build next
160
+
161
+ 4. **Initialize:**
162
+ - Validated = inferred from existing code
163
+ - Active = user's goals for this work
164
+ - Out of Scope = boundaries user specifies
165
+ - Context = includes current codebase state
166
+
167
+ </brownfield>
168
+
169
+ <state_reference>
170
+
171
+ STATE.md references PROJECT.md:
172
+
173
+ ```markdown
174
+ ## Project Reference
175
+
176
+ See: .planning/PROJECT.md (updated [date])
177
+
178
+ **Core value:** [One-liner from Core Value section]
179
+ **Current focus:** [Current phase name]
180
+ ```
181
+
182
+ This ensures Claude reads current PROJECT.md context.
183
+
184
+ </state_reference>
@@ -0,0 +1,231 @@
1
+ # Requirements Template
2
+
3
+ Template for `.planning/REQUIREMENTS.md` — checkable requirements that define "done."
4
+
5
+ <template>
6
+
7
+ ```markdown
8
+ # Requirements: [Project Name]
9
+
10
+ **Defined:** [date]
11
+ **Core Value:** [from PROJECT.md]
12
+
13
+ ## v1 Requirements
14
+
15
+ Requirements for initial release. Each maps to roadmap phases.
16
+
17
+ ### Authentication
18
+
19
+ - [ ] **AUTH-01**: User can sign up with email and password
20
+ - [ ] **AUTH-02**: User receives email verification after signup
21
+ - [ ] **AUTH-03**: User can reset password via email link
22
+ - [ ] **AUTH-04**: User session persists across browser refresh
23
+
24
+ ### [Category 2]
25
+
26
+ - [ ] **[CAT]-01**: [Requirement description]
27
+ - [ ] **[CAT]-02**: [Requirement description]
28
+ - [ ] **[CAT]-03**: [Requirement description]
29
+
30
+ ### [Category 3]
31
+
32
+ - [ ] **[CAT]-01**: [Requirement description]
33
+ - [ ] **[CAT]-02**: [Requirement description]
34
+
35
+ ## v2 Requirements
36
+
37
+ Deferred to future release. Tracked but not in current roadmap.
38
+
39
+ ### [Category]
40
+
41
+ - **[CAT]-01**: [Requirement description]
42
+ - **[CAT]-02**: [Requirement description]
43
+
44
+ ## Out of Scope
45
+
46
+ Explicitly excluded. Documented to prevent scope creep.
47
+
48
+ | Feature | Reason |
49
+ |---------|--------|
50
+ | [Feature] | [Why excluded] |
51
+ | [Feature] | [Why excluded] |
52
+
53
+ ## Traceability
54
+
55
+ Which phases cover which requirements. Updated during roadmap creation.
56
+
57
+ | Requirement | Phase | Status |
58
+ |-------------|-------|--------|
59
+ | AUTH-01 | Phase 1 | Pending |
60
+ | AUTH-02 | Phase 1 | Pending |
61
+ | AUTH-03 | Phase 1 | Pending |
62
+ | AUTH-04 | Phase 1 | Pending |
63
+ | [REQ-ID] | Phase [N] | Pending |
64
+
65
+ **Coverage:**
66
+ - v1 requirements: [X] total
67
+ - Mapped to phases: [Y]
68
+ - Unmapped: [Z] ⚠️
69
+
70
+ ---
71
+ *Requirements defined: [date]*
72
+ *Last updated: [date] after [trigger]*
73
+ ```
74
+
75
+ </template>
76
+
77
+ <guidelines>
78
+
79
+ **Requirement Format:**
80
+ - ID: `[CATEGORY]-[NUMBER]` (AUTH-01, CONTENT-02, SOCIAL-03)
81
+ - Description: User-centric, testable, atomic
82
+ - Checkbox: Only for v1 requirements (v2 are not yet actionable)
83
+
84
+ **Categories:**
85
+ - Derive from research FEATURES.md categories
86
+ - Keep consistent with domain conventions
87
+ - Typical: Authentication, Content, Social, Notifications, Moderation, Payments, Admin
88
+
89
+ **v1 vs v2:**
90
+ - v1: Committed scope, will be in roadmap phases
91
+ - v2: Acknowledged but deferred, not in current roadmap
92
+ - Moving v2 → v1 requires roadmap update
93
+
94
+ **Out of Scope:**
95
+ - Explicit exclusions with reasoning
96
+ - Prevents "why didn't you include X?" later
97
+ - Anti-features from research belong here with warnings
98
+
99
+ **Traceability:**
100
+ - Empty initially, populated during roadmap creation
101
+ - Each requirement maps to exactly one phase
102
+ - Unmapped requirements = roadmap gap
103
+
104
+ **Status Values:**
105
+ - Pending: Not started
106
+ - In Progress: Phase is active
107
+ - Complete: Requirement verified
108
+ - Blocked: Waiting on external factor
109
+
110
+ </guidelines>
111
+
112
+ <evolution>
113
+
114
+ **After each phase completes:**
115
+ 1. Mark covered requirements as Complete
116
+ 2. Update traceability status
117
+ 3. Note any requirements that changed scope
118
+
119
+ **After roadmap updates:**
120
+ 1. Verify all v1 requirements still mapped
121
+ 2. Add new requirements if scope expanded
122
+ 3. Move requirements to v2/out of scope if descoped
123
+
124
+ **Requirement completion criteria:**
125
+ - Requirement is "Complete" when:
126
+ - Feature is implemented
127
+ - Feature is verified (tests pass, manual check done)
128
+ - Feature is committed
129
+
130
+ </evolution>
131
+
132
+ <example>
133
+
134
+ ```markdown
135
+ # Requirements: CommunityApp
136
+
137
+ **Defined:** 2025-01-14
138
+ **Core Value:** Users can share and discuss content with people who share their interests
139
+
140
+ ## v1 Requirements
141
+
142
+ ### Authentication
143
+
144
+ - [ ] **AUTH-01**: User can sign up with email and password
145
+ - [ ] **AUTH-02**: User receives email verification after signup
146
+ - [ ] **AUTH-03**: User can reset password via email link
147
+ - [ ] **AUTH-04**: User session persists across browser refresh
148
+
149
+ ### Profiles
150
+
151
+ - [ ] **PROF-01**: User can create profile with display name
152
+ - [ ] **PROF-02**: User can upload avatar image
153
+ - [ ] **PROF-03**: User can write bio (max 500 chars)
154
+ - [ ] **PROF-04**: User can view other users' profiles
155
+
156
+ ### Content
157
+
158
+ - [ ] **CONT-01**: User can create text post
159
+ - [ ] **CONT-02**: User can upload image with post
160
+ - [ ] **CONT-03**: User can edit own posts
161
+ - [ ] **CONT-04**: User can delete own posts
162
+ - [ ] **CONT-05**: User can view feed of posts
163
+
164
+ ### Social
165
+
166
+ - [ ] **SOCL-01**: User can follow other users
167
+ - [ ] **SOCL-02**: User can unfollow users
168
+ - [ ] **SOCL-03**: User can like posts
169
+ - [ ] **SOCL-04**: User can comment on posts
170
+ - [ ] **SOCL-05**: User can view activity feed (followed users' posts)
171
+
172
+ ## v2 Requirements
173
+
174
+ ### Notifications
175
+
176
+ - **NOTF-01**: User receives in-app notifications
177
+ - **NOTF-02**: User receives email for new followers
178
+ - **NOTF-03**: User receives email for comments on own posts
179
+ - **NOTF-04**: User can configure notification preferences
180
+
181
+ ### Moderation
182
+
183
+ - **MODR-01**: User can report content
184
+ - **MODR-02**: User can block other users
185
+ - **MODR-03**: Admin can view reported content
186
+ - **MODR-04**: Admin can remove content
187
+ - **MODR-05**: Admin can ban users
188
+
189
+ ## Out of Scope
190
+
191
+ | Feature | Reason |
192
+ |---------|--------|
193
+ | Real-time chat | High complexity, not core to community value |
194
+ | Video posts | Storage/bandwidth costs, defer to v2+ |
195
+ | OAuth login | Email/password sufficient for v1 |
196
+ | Mobile app | Web-first, mobile later |
197
+
198
+ ## Traceability
199
+
200
+ | Requirement | Phase | Status |
201
+ |-------------|-------|--------|
202
+ | AUTH-01 | Phase 1 | Pending |
203
+ | AUTH-02 | Phase 1 | Pending |
204
+ | AUTH-03 | Phase 1 | Pending |
205
+ | AUTH-04 | Phase 1 | Pending |
206
+ | PROF-01 | Phase 2 | Pending |
207
+ | PROF-02 | Phase 2 | Pending |
208
+ | PROF-03 | Phase 2 | Pending |
209
+ | PROF-04 | Phase 2 | Pending |
210
+ | CONT-01 | Phase 3 | Pending |
211
+ | CONT-02 | Phase 3 | Pending |
212
+ | CONT-03 | Phase 3 | Pending |
213
+ | CONT-04 | Phase 3 | Pending |
214
+ | CONT-05 | Phase 3 | Pending |
215
+ | SOCL-01 | Phase 4 | Pending |
216
+ | SOCL-02 | Phase 4 | Pending |
217
+ | SOCL-03 | Phase 4 | Pending |
218
+ | SOCL-04 | Phase 4 | Pending |
219
+ | SOCL-05 | Phase 4 | Pending |
220
+
221
+ **Coverage:**
222
+ - v1 requirements: 18 total
223
+ - Mapped to phases: 18
224
+ - Unmapped: 0 ✓
225
+
226
+ ---
227
+ *Requirements defined: 2025-01-14*
228
+ *Last updated: 2025-01-14 after initial definition*
229
+ ```
230
+
231
+ </example>