get-shit-done-cc 1.0.0
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.
- package/LICENSE +21 -0
- package/README.md +192 -0
- package/bin/install.js +53 -0
- package/commands/gsd/add-phase.md +201 -0
- package/commands/gsd/complete-milestone.md +105 -0
- package/commands/gsd/discuss-milestone.md +45 -0
- package/commands/gsd/discuss-phase.md +47 -0
- package/commands/gsd/execute-plan.md +108 -0
- package/commands/gsd/help.md +252 -0
- package/commands/gsd/insert-phase.md +218 -0
- package/commands/gsd/list-phase-assumptions.md +49 -0
- package/commands/gsd/new-milestone.md +58 -0
- package/commands/gsd/new-project.md +177 -0
- package/commands/gsd/pause-work.md +123 -0
- package/commands/gsd/plan-phase.md +60 -0
- package/commands/gsd/progress.md +182 -0
- package/commands/gsd/resume-work.md +50 -0
- package/get-shit-done/references/checkpoints.md +594 -0
- package/get-shit-done/references/cli-automation.md +527 -0
- package/get-shit-done/references/git-integration.md +126 -0
- package/get-shit-done/references/plan-format.md +397 -0
- package/get-shit-done/references/principles.md +97 -0
- package/get-shit-done/references/questioning.md +138 -0
- package/get-shit-done/references/research-pitfalls.md +215 -0
- package/get-shit-done/references/scope-estimation.md +451 -0
- package/get-shit-done/templates/config.json +17 -0
- package/get-shit-done/templates/context.md +385 -0
- package/get-shit-done/templates/continue-here.md +78 -0
- package/get-shit-done/templates/issues.md +32 -0
- package/get-shit-done/templates/milestone-archive.md +123 -0
- package/get-shit-done/templates/milestone.md +115 -0
- package/get-shit-done/templates/phase-prompt.md +290 -0
- package/get-shit-done/templates/project.md +207 -0
- package/get-shit-done/templates/research-prompt.md +133 -0
- package/get-shit-done/templates/roadmap.md +196 -0
- package/get-shit-done/templates/state.md +226 -0
- package/get-shit-done/templates/summary.md +200 -0
- package/get-shit-done/workflows/complete-milestone.md +490 -0
- package/get-shit-done/workflows/create-milestone.md +379 -0
- package/get-shit-done/workflows/create-roadmap.md +443 -0
- package/get-shit-done/workflows/discuss-milestone.md +144 -0
- package/get-shit-done/workflows/discuss-phase.md +254 -0
- package/get-shit-done/workflows/execute-phase.md +1261 -0
- package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
- package/get-shit-done/workflows/plan-phase.md +783 -0
- package/get-shit-done/workflows/research-phase.md +293 -0
- package/get-shit-done/workflows/resume-project.md +248 -0
- package/get-shit-done/workflows/transition.md +488 -0
- package/package.json +30 -0
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
# Phase Context Template
|
|
2
|
+
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase}-CONTEXT.md` - phase context documentation gathered before planning.
|
|
4
|
+
|
|
5
|
+
**Purpose:** Capture comprehensive context through adaptive questioning to inform high-quality planning.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## File Template
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
# Phase [X]: [Name] - Context
|
|
13
|
+
|
|
14
|
+
**Gathered:** [date]
|
|
15
|
+
**Status:** [For planning / Planning complete]
|
|
16
|
+
|
|
17
|
+
<phase_objectives>
|
|
18
|
+
## What This Phase Accomplishes
|
|
19
|
+
|
|
20
|
+
[Clear, specific description of what this phase delivers]
|
|
21
|
+
|
|
22
|
+
**Primary goal:**
|
|
23
|
+
[Main objective - what ships at the end]
|
|
24
|
+
|
|
25
|
+
**Secondary goals:**
|
|
26
|
+
[Supporting objectives or nice-to-haves]
|
|
27
|
+
|
|
28
|
+
**Out of scope:**
|
|
29
|
+
[What this phase explicitly does NOT include - prevents scope creep]
|
|
30
|
+
</phase_objectives>
|
|
31
|
+
|
|
32
|
+
<constraints>
|
|
33
|
+
## Constraints
|
|
34
|
+
|
|
35
|
+
**Technical:**
|
|
36
|
+
[Library choices, platform requirements, compatibility needs, existing architecture patterns to follow]
|
|
37
|
+
|
|
38
|
+
**Timeline:**
|
|
39
|
+
[Deadlines, urgency, sequencing dependencies]
|
|
40
|
+
|
|
41
|
+
**Resources:**
|
|
42
|
+
[Budget limits, API rate limits, storage constraints, computational limits]
|
|
43
|
+
|
|
44
|
+
**Dependencies:**
|
|
45
|
+
[What must exist before this phase can start, external factors, waiting on other teams/services]
|
|
46
|
+
|
|
47
|
+
**Other:**
|
|
48
|
+
[Any other constraints affecting approach]
|
|
49
|
+
|
|
50
|
+
[If no constraints: "None - flexible approach"]
|
|
51
|
+
</constraints>
|
|
52
|
+
|
|
53
|
+
<risks>
|
|
54
|
+
## Risks and Mitigation
|
|
55
|
+
|
|
56
|
+
**Risk 1: [Risk description]**
|
|
57
|
+
- **Likelihood:** [High / Medium / Low]
|
|
58
|
+
- **Impact:** [High / Medium / Low]
|
|
59
|
+
- **Mitigation:** [How to prevent or handle this]
|
|
60
|
+
|
|
61
|
+
**Risk 2: [Risk description]**
|
|
62
|
+
- **Likelihood:** [High / Medium / Low]
|
|
63
|
+
- **Impact:** [High / Medium / Low]
|
|
64
|
+
- **Mitigation:** [How to prevent or handle this]
|
|
65
|
+
|
|
66
|
+
[Continue for identified risks]
|
|
67
|
+
|
|
68
|
+
[If no major risks: "No major risks identified - straightforward implementation expected"]
|
|
69
|
+
</risks>
|
|
70
|
+
|
|
71
|
+
<success_indicators>
|
|
72
|
+
## Success Indicators
|
|
73
|
+
|
|
74
|
+
**How we'll know this phase is complete:**
|
|
75
|
+
|
|
76
|
+
**Functional:**
|
|
77
|
+
- [ ] [Specific feature works correctly]
|
|
78
|
+
- [ ] [Tests pass for X functionality]
|
|
79
|
+
- [ ] [Integration with Y system verified]
|
|
80
|
+
|
|
81
|
+
**Quality:**
|
|
82
|
+
- [ ] [Performance meets X threshold]
|
|
83
|
+
- [ ] [No TypeScript errors]
|
|
84
|
+
- [ ] [Test coverage >= X%]
|
|
85
|
+
|
|
86
|
+
**Deployment:**
|
|
87
|
+
- [ ] [Changes deployed to staging/production]
|
|
88
|
+
- [ ] [Verification in live environment]
|
|
89
|
+
|
|
90
|
+
**Documentation:**
|
|
91
|
+
- [ ] [API documented]
|
|
92
|
+
- [ ] [README updated]
|
|
93
|
+
- [ ] [Migration guide if needed]
|
|
94
|
+
|
|
95
|
+
**User-facing:**
|
|
96
|
+
- [ ] [Visual verification complete]
|
|
97
|
+
- [ ] [User testing passed]
|
|
98
|
+
- [ ] [Acceptance criteria met]
|
|
99
|
+
</success_indicators>
|
|
100
|
+
|
|
101
|
+
<codebase_context>
|
|
102
|
+
## Codebase State and Patterns
|
|
103
|
+
|
|
104
|
+
**Current state:**
|
|
105
|
+
[Fresh project / Established codebase / Legacy system / Mid-refactor]
|
|
106
|
+
|
|
107
|
+
**Relevant files/systems:**
|
|
108
|
+
- `path/to/relevant.ts` - [What this does and why it matters for this phase]
|
|
109
|
+
- `path/to/another.ts` - [What this does and why it matters for this phase]
|
|
110
|
+
|
|
111
|
+
**Patterns to follow:**
|
|
112
|
+
[Existing conventions, architectural patterns, naming conventions, testing patterns]
|
|
113
|
+
|
|
114
|
+
**External dependencies:**
|
|
115
|
+
- [Library/service 1] - [How it's used, version constraints]
|
|
116
|
+
- [Library/service 2] - [How it's used, version constraints]
|
|
117
|
+
|
|
118
|
+
**Known issues to address:**
|
|
119
|
+
[From ISSUES.md or prior phases - issues this phase should fix]
|
|
120
|
+
|
|
121
|
+
**Prior decisions affecting this phase:**
|
|
122
|
+
[From STATE.md - decisions from previous phases that constrain approach]
|
|
123
|
+
</codebase_context>
|
|
124
|
+
|
|
125
|
+
<decisions_needed>
|
|
126
|
+
## Decisions That Will Affect Implementation
|
|
127
|
+
|
|
128
|
+
**Decision 1: [What needs deciding]**
|
|
129
|
+
- **Context:** [Why this matters]
|
|
130
|
+
- **Options:** [Brief list of approaches]
|
|
131
|
+
- **When to decide:** [During planning / During task X / Before starting]
|
|
132
|
+
|
|
133
|
+
**Decision 2: [What needs deciding]**
|
|
134
|
+
- **Context:** [Why this matters]
|
|
135
|
+
- **Options:** [Brief list of approaches]
|
|
136
|
+
- **When to decide:** [During planning / During task X / Before starting]
|
|
137
|
+
|
|
138
|
+
[If no decisions needed: "No open decisions - approach is clear from roadmap and context"]
|
|
139
|
+
</decisions_needed>
|
|
140
|
+
|
|
141
|
+
<notes>
|
|
142
|
+
## Additional Context
|
|
143
|
+
|
|
144
|
+
[Any other relevant information gathered during context discussion]
|
|
145
|
+
|
|
146
|
+
[Questions asked during intake:]
|
|
147
|
+
- Q: [Question asked]
|
|
148
|
+
- A: [Answer received]
|
|
149
|
+
|
|
150
|
+
[Clarifications:]
|
|
151
|
+
- [Important points clarified during discussion]
|
|
152
|
+
|
|
153
|
+
[References:]
|
|
154
|
+
- [Links to relevant docs, prior art, examples]
|
|
155
|
+
|
|
156
|
+
[If no additional notes: "No additional notes"]
|
|
157
|
+
</notes>
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
*Phase: XX-name*
|
|
162
|
+
*Context gathered: [date]*
|
|
163
|
+
*Ready for planning: [yes/no]*
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
<good_examples>
|
|
167
|
+
```markdown
|
|
168
|
+
# Phase 3: Authentication - Context
|
|
169
|
+
|
|
170
|
+
**Gathered:** 2025-01-20
|
|
171
|
+
**Status:** For planning
|
|
172
|
+
|
|
173
|
+
<phase_objectives>
|
|
174
|
+
## What This Phase Accomplishes
|
|
175
|
+
|
|
176
|
+
Implement JWT-based authentication with secure session management.
|
|
177
|
+
|
|
178
|
+
**Primary goal:**
|
|
179
|
+
Users can register, login, logout with JWT tokens stored in httpOnly cookies. Protected routes verify authentication.
|
|
180
|
+
|
|
181
|
+
**Secondary goals:**
|
|
182
|
+
- Password reset flow via email
|
|
183
|
+
- Remember me functionality
|
|
184
|
+
- Session expiry and refresh
|
|
185
|
+
|
|
186
|
+
**Out of scope:**
|
|
187
|
+
- OAuth providers (Google, GitHub) - deferred to Phase 4
|
|
188
|
+
- 2FA - deferred to Phase 5
|
|
189
|
+
- Role-based access control - deferred to Phase 6
|
|
190
|
+
</phase_objectives>
|
|
191
|
+
|
|
192
|
+
<constraints>
|
|
193
|
+
## Constraints
|
|
194
|
+
|
|
195
|
+
**Technical:**
|
|
196
|
+
- Must use jose library (NOT jsonwebtoken - ESM compatibility requirement from Phase 1)
|
|
197
|
+
- Must work in Edge runtime (Next.js middleware requirement)
|
|
198
|
+
- Passwords must use bcrypt with minimum 10 salt rounds
|
|
199
|
+
- Database already has User model from Phase 2 (extend, don't recreate)
|
|
200
|
+
|
|
201
|
+
**Timeline:**
|
|
202
|
+
- Target completion: End of week 3
|
|
203
|
+
- Blocking Phase 4 (user profiles) and Phase 5 (product catalog)
|
|
204
|
+
|
|
205
|
+
**Resources:**
|
|
206
|
+
- Email sending limited to 100/day on current SendGrid plan (affects password reset testing)
|
|
207
|
+
|
|
208
|
+
**Dependencies:**
|
|
209
|
+
- Phase 2 complete (database models)
|
|
210
|
+
- Phase 1 complete (Next.js setup)
|
|
211
|
+
- SendGrid API key obtained (checkpoint for email features)
|
|
212
|
+
|
|
213
|
+
**Other:**
|
|
214
|
+
None
|
|
215
|
+
</constraints>
|
|
216
|
+
|
|
217
|
+
<risks>
|
|
218
|
+
## Risks and Mitigation
|
|
219
|
+
|
|
220
|
+
**Risk 1: JWT token size causing cookie overflow**
|
|
221
|
+
- **Likelihood:** Low
|
|
222
|
+
- **Impact:** High (authentication breaks)
|
|
223
|
+
- **Mitigation:** Keep JWT payload minimal (user ID only), store other data in database session table. Test with realistic tokens early.
|
|
224
|
+
|
|
225
|
+
**Risk 2: Session timing causing UX issues**
|
|
226
|
+
- **Likelihood:** Medium
|
|
227
|
+
- **Impact:** Medium (user frustration)
|
|
228
|
+
- **Mitigation:** Implement refresh token rotation, clear error messages on expiry, test user flows thoroughly.
|
|
229
|
+
|
|
230
|
+
**Risk 3: Password reset token security**
|
|
231
|
+
- **Likelihood:** Low
|
|
232
|
+
- **Impact:** High (account takeover)
|
|
233
|
+
- **Mitigation:** Use crypto.randomBytes(32) for tokens, short expiry (1 hour), single-use tokens, rate limiting on reset endpoint.
|
|
234
|
+
</risks>
|
|
235
|
+
|
|
236
|
+
<success_indicators>
|
|
237
|
+
## Success Indicators
|
|
238
|
+
|
|
239
|
+
**How we'll know this phase is complete:**
|
|
240
|
+
|
|
241
|
+
**Functional:**
|
|
242
|
+
- [ ] User can register with email/password
|
|
243
|
+
- [ ] User can login and receive JWT cookie
|
|
244
|
+
- [ ] Protected routes redirect unauthenticated users
|
|
245
|
+
- [ ] User can logout (cookie cleared)
|
|
246
|
+
- [ ] Password reset flow works end-to-end
|
|
247
|
+
|
|
248
|
+
**Quality:**
|
|
249
|
+
- [ ] No passwords stored in plaintext
|
|
250
|
+
- [ ] JWT tokens validated correctly
|
|
251
|
+
- [ ] Tests pass for all auth endpoints
|
|
252
|
+
- [ ] No TypeScript errors
|
|
253
|
+
- [ ] Test coverage >= 80% for auth code
|
|
254
|
+
|
|
255
|
+
**Deployment:**
|
|
256
|
+
- [ ] Auth endpoints deployed to staging
|
|
257
|
+
- [ ] Verified in staging environment
|
|
258
|
+
- [ ] Production environment variables configured
|
|
259
|
+
|
|
260
|
+
**Documentation:**
|
|
261
|
+
- [ ] API endpoints documented
|
|
262
|
+
- [ ] Authentication flow diagram added to README
|
|
263
|
+
- [ ] Environment variables documented
|
|
264
|
+
|
|
265
|
+
**User-facing:**
|
|
266
|
+
- [ ] Login/logout flows tested manually
|
|
267
|
+
- [ ] Error messages clear and helpful
|
|
268
|
+
- [ ] Password reset tested with real email
|
|
269
|
+
</success_indicators>
|
|
270
|
+
|
|
271
|
+
<codebase_context>
|
|
272
|
+
## Codebase State and Patterns
|
|
273
|
+
|
|
274
|
+
**Current state:**
|
|
275
|
+
Established codebase - Phase 2 complete with database models, Phase 1 has Next.js structure.
|
|
276
|
+
|
|
277
|
+
**Relevant files/systems:**
|
|
278
|
+
- `prisma/schema.prisma` - User model exists, need to add Session model
|
|
279
|
+
- `src/app/api/*` - API route conventions established in Phase 2
|
|
280
|
+
- `src/middleware.ts` - Next.js middleware file (create for protected routes)
|
|
281
|
+
- `src/lib/db.ts` - Database connection helper from Phase 2
|
|
282
|
+
|
|
283
|
+
**Patterns to follow:**
|
|
284
|
+
- API routes return JSON with `{ success: boolean, data?: any, error?: string }`
|
|
285
|
+
- Use Zod for request validation (established in Phase 2)
|
|
286
|
+
- Database queries in try/catch with error logging
|
|
287
|
+
- Tests colocated: `route.test.ts` next to `route.ts`
|
|
288
|
+
|
|
289
|
+
**External dependencies:**
|
|
290
|
+
- jose@5.2.0 - JWT library (decision from Phase 1)
|
|
291
|
+
- bcrypt@5.1.1 - Password hashing
|
|
292
|
+
- @sendgrid/mail - Email sending (need to add)
|
|
293
|
+
- zod@3.22.4 - Validation (already installed)
|
|
294
|
+
|
|
295
|
+
**Known issues to address:**
|
|
296
|
+
- ISS-002 from Phase 2: Add rate limiting to API endpoints (include auth endpoints)
|
|
297
|
+
|
|
298
|
+
**Prior decisions affecting this phase:**
|
|
299
|
+
- Phase 1: Use jose for JWT (ESM-native, Edge-compatible)
|
|
300
|
+
- Phase 2: API response format established (all endpoints must follow)
|
|
301
|
+
- Phase 2: Zod validation pattern established (use for auth requests)
|
|
302
|
+
</codebase_context>
|
|
303
|
+
|
|
304
|
+
<decisions_needed>
|
|
305
|
+
## Decisions That Will Affect Implementation
|
|
306
|
+
|
|
307
|
+
**Decision 1: Token expiry timing**
|
|
308
|
+
- **Context:** Balance security (short expiry) vs UX (avoid frequent re-login)
|
|
309
|
+
- **Options:** 15min access + 7day refresh / 1hr access + 30day refresh / 4hr access + 90day refresh
|
|
310
|
+
- **When to decide:** During planning (affects implementation)
|
|
311
|
+
|
|
312
|
+
**Decision 2: Remember me implementation**
|
|
313
|
+
- **Context:** How to handle "remember me" checkbox on login
|
|
314
|
+
- **Options:** Longer refresh token / Separate persistent token / Browser local storage flag
|
|
315
|
+
- **When to decide:** During task breakdown (affects token strategy)
|
|
316
|
+
</decisions_needed>
|
|
317
|
+
|
|
318
|
+
<notes>
|
|
319
|
+
## Additional Context
|
|
320
|
+
|
|
321
|
+
[Questions asked during intake:]
|
|
322
|
+
- Q: Are there constraints I should know about?
|
|
323
|
+
- A: Technical limitations - must use jose library, work in Edge runtime
|
|
324
|
+
|
|
325
|
+
- Q: What could go wrong in this phase?
|
|
326
|
+
- A: Security concerns - authentication vulnerabilities are critical
|
|
327
|
+
|
|
328
|
+
- Q: Which files or systems should I examine for context?
|
|
329
|
+
- A: Check prisma/schema.prisma for User model, src/app/api/* for API patterns
|
|
330
|
+
|
|
331
|
+
[Clarifications:]
|
|
332
|
+
- User stressed security is paramount - better to be overly cautious
|
|
333
|
+
- Password reset is "nice to have" but not blocking for Phase 4
|
|
334
|
+
- OAuth can wait - just email/password for now
|
|
335
|
+
|
|
336
|
+
[References:]
|
|
337
|
+
- OWASP Auth Cheatsheet: https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html
|
|
338
|
+
- jose docs: https://github.com/panva/jose
|
|
339
|
+
</notes>
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
*Phase: 03-authentication*
|
|
344
|
+
*Context gathered: 2025-01-20*
|
|
345
|
+
*Ready for planning: yes*
|
|
346
|
+
```
|
|
347
|
+
</good_examples>
|
|
348
|
+
|
|
349
|
+
<guidelines>
|
|
350
|
+
**When to create:**
|
|
351
|
+
- Before planning a phase (via /gsd:discuss-phase command)
|
|
352
|
+
- When roadmap description is too brief for quality planning
|
|
353
|
+
- When phase involves complex decisions or risks
|
|
354
|
+
|
|
355
|
+
**Structure:**
|
|
356
|
+
- Use XML tags for section markers (matches GSD templates)
|
|
357
|
+
- Five core sections: objectives, constraints, risks, success_indicators, codebase_context
|
|
358
|
+
- Two supporting sections: decisions_needed, notes
|
|
359
|
+
- All sections required (use "None" if truly not applicable)
|
|
360
|
+
|
|
361
|
+
**Content quality:**
|
|
362
|
+
- Objectives: Specific and measurable (not "add auth" but "JWT auth with registration, login, logout, password reset")
|
|
363
|
+
- Constraints: Technical/timeline/resource specifics (not "be fast" but "must work in Edge runtime")
|
|
364
|
+
- Risks: Include likelihood, impact, mitigation (not just "might break")
|
|
365
|
+
- Success indicators: Checklist format, specific criteria
|
|
366
|
+
- Codebase context: Reference actual files and patterns
|
|
367
|
+
- Decisions needed: Note when decision should be made (planning vs execution)
|
|
368
|
+
|
|
369
|
+
**Out of scope:**
|
|
370
|
+
- Document what phase does NOT include (prevents scope creep)
|
|
371
|
+
- Reference deferred items from roadmap
|
|
372
|
+
- Note what's pushed to future phases
|
|
373
|
+
|
|
374
|
+
**Integration with planning:**
|
|
375
|
+
- CONTEXT.md loaded as @context reference in PLAN.md
|
|
376
|
+
- Decisions inform task breakdown
|
|
377
|
+
- Risks inform verification criteria
|
|
378
|
+
- Success indicators become plan success criteria
|
|
379
|
+
- Prior decisions become task action notes
|
|
380
|
+
|
|
381
|
+
**After creation:**
|
|
382
|
+
- File lives in phase directory: `.planning/phases/XX-name/{phase}-CONTEXT.md`
|
|
383
|
+
- Referenced during planning workflow
|
|
384
|
+
- Can be updated if context changes before planning
|
|
385
|
+
</guidelines>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# Continue-Here Template
|
|
2
|
+
|
|
3
|
+
Copy and fill this structure for `.planning/phases/XX-name/.continue-here.md`:
|
|
4
|
+
|
|
5
|
+
```yaml
|
|
6
|
+
---
|
|
7
|
+
phase: XX-name
|
|
8
|
+
task: 3
|
|
9
|
+
total_tasks: 7
|
|
10
|
+
status: in_progress
|
|
11
|
+
last_updated: 2025-01-15T14:30:00Z
|
|
12
|
+
---
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```markdown
|
|
16
|
+
<current_state>
|
|
17
|
+
[Where exactly are we? What's the immediate context?]
|
|
18
|
+
</current_state>
|
|
19
|
+
|
|
20
|
+
<completed_work>
|
|
21
|
+
[What got done this session - be specific]
|
|
22
|
+
|
|
23
|
+
- Task 1: [name] - Done
|
|
24
|
+
- Task 2: [name] - Done
|
|
25
|
+
- Task 3: [name] - In progress, [what's done on it]
|
|
26
|
+
</completed_work>
|
|
27
|
+
|
|
28
|
+
<remaining_work>
|
|
29
|
+
[What's left in this phase]
|
|
30
|
+
|
|
31
|
+
- Task 3: [name] - [what's left to do]
|
|
32
|
+
- Task 4: [name] - Not started
|
|
33
|
+
- Task 5: [name] - Not started
|
|
34
|
+
</remaining_work>
|
|
35
|
+
|
|
36
|
+
<decisions_made>
|
|
37
|
+
[Key decisions and why - so next session doesn't re-debate]
|
|
38
|
+
|
|
39
|
+
- Decided to use [X] because [reason]
|
|
40
|
+
- Chose [approach] over [alternative] because [reason]
|
|
41
|
+
</decisions_made>
|
|
42
|
+
|
|
43
|
+
<blockers>
|
|
44
|
+
[Anything stuck or waiting on external factors]
|
|
45
|
+
|
|
46
|
+
- [Blocker 1]: [status/workaround]
|
|
47
|
+
</blockers>
|
|
48
|
+
|
|
49
|
+
<context>
|
|
50
|
+
[Mental state, "vibe", anything that helps resume smoothly]
|
|
51
|
+
|
|
52
|
+
[What were you thinking about? What was the plan?
|
|
53
|
+
This is the "pick up exactly where you left off" context.]
|
|
54
|
+
</context>
|
|
55
|
+
|
|
56
|
+
<next_action>
|
|
57
|
+
[The very first thing to do when resuming]
|
|
58
|
+
|
|
59
|
+
Start with: [specific action]
|
|
60
|
+
</next_action>
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
<yaml_fields>
|
|
64
|
+
Required YAML frontmatter:
|
|
65
|
+
|
|
66
|
+
- `phase`: Directory name (e.g., `02-authentication`)
|
|
67
|
+
- `task`: Current task number
|
|
68
|
+
- `total_tasks`: How many tasks in phase
|
|
69
|
+
- `status`: `in_progress`, `blocked`, `almost_done`
|
|
70
|
+
- `last_updated`: ISO timestamp
|
|
71
|
+
</yaml_fields>
|
|
72
|
+
|
|
73
|
+
<guidelines>
|
|
74
|
+
- Be specific enough that a fresh Claude instance understands immediately
|
|
75
|
+
- Include WHY decisions were made, not just what
|
|
76
|
+
- The `<next_action>` should be actionable without reading anything else
|
|
77
|
+
- This file gets DELETED after resume - it's not permanent storage
|
|
78
|
+
</guidelines>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Project Issues Log
|
|
2
|
+
|
|
3
|
+
Enhancements discovered during execution. Not critical - address in future phases.
|
|
4
|
+
|
|
5
|
+
## Open Enhancements
|
|
6
|
+
|
|
7
|
+
### ISS-001: [Brief description]
|
|
8
|
+
|
|
9
|
+
- **Discovered:** Phase [X] Task [Z] (YYYY-MM-DD)
|
|
10
|
+
- **Type:** [Performance / Refactoring / UX / Testing / Documentation / Accessibility]
|
|
11
|
+
- **Description:** [What could be improved and why it would help]
|
|
12
|
+
- **Impact:** Low (works correctly, this would enhance)
|
|
13
|
+
- **Effort:** [Quick / Medium / Substantial]
|
|
14
|
+
- **Suggested phase:** [Phase number or "Future"]
|
|
15
|
+
|
|
16
|
+
## Closed Enhancements
|
|
17
|
+
|
|
18
|
+
[Moved here when addressed]
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Template Notes
|
|
23
|
+
|
|
24
|
+
**When to create:** First time Rule 5 (log enhancements) triggers during execution.
|
|
25
|
+
|
|
26
|
+
**Location:** `.planning/ISSUES.md`
|
|
27
|
+
|
|
28
|
+
**ISS numbering:** Auto-increment from highest existing number.
|
|
29
|
+
|
|
30
|
+
**Entry format:** Copy the ISS-001 block, update number and fields.
|
|
31
|
+
|
|
32
|
+
**Closing issues:** Move entire block to "Closed Enhancements" section, add resolution note.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Milestone Archive Template
|
|
2
|
+
|
|
3
|
+
This template is used by the complete-milestone workflow to create archive files in `.planning/milestones/`.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## File Template
|
|
8
|
+
|
|
9
|
+
# Milestone v{{VERSION}}: {{MILESTONE_NAME}}
|
|
10
|
+
|
|
11
|
+
**Status:** ✅ SHIPPED {{DATE}}
|
|
12
|
+
**Phases:** {{PHASE_START}}-{{PHASE_END}}
|
|
13
|
+
**Total Plans:** {{TOTAL_PLANS}}
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
{{MILESTONE_DESCRIPTION}}
|
|
18
|
+
|
|
19
|
+
## Phases
|
|
20
|
+
|
|
21
|
+
{{PHASES_SECTION}}
|
|
22
|
+
|
|
23
|
+
[For each phase in this milestone, include:]
|
|
24
|
+
|
|
25
|
+
### Phase {{PHASE_NUM}}: {{PHASE_NAME}}
|
|
26
|
+
|
|
27
|
+
**Goal**: {{PHASE_GOAL}}
|
|
28
|
+
**Depends on**: {{DEPENDS_ON}}
|
|
29
|
+
**Plans**: {{PLAN_COUNT}} plans
|
|
30
|
+
|
|
31
|
+
Plans:
|
|
32
|
+
|
|
33
|
+
- [x] {{PHASE}}-01: {{PLAN_DESCRIPTION}}
|
|
34
|
+
- [x] {{PHASE}}-02: {{PLAN_DESCRIPTION}}
|
|
35
|
+
[... all plans ...]
|
|
36
|
+
|
|
37
|
+
**Details:**
|
|
38
|
+
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
39
|
+
|
|
40
|
+
**For decimal phases, include (INSERTED) marker:**
|
|
41
|
+
|
|
42
|
+
### Phase 2.1: Critical Security Patch (INSERTED)
|
|
43
|
+
|
|
44
|
+
**Goal**: Fix authentication bypass vulnerability
|
|
45
|
+
**Depends on**: Phase 2
|
|
46
|
+
**Plans**: 1 plan
|
|
47
|
+
|
|
48
|
+
Plans:
|
|
49
|
+
|
|
50
|
+
- [x] 2.1-01: Patch auth vulnerability
|
|
51
|
+
|
|
52
|
+
**Details:**
|
|
53
|
+
{{PHASE_DETAILS_FROM_ROADMAP}}
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Milestone Summary
|
|
58
|
+
|
|
59
|
+
**Decimal Phases:**
|
|
60
|
+
|
|
61
|
+
- Phase 2.1: Critical Security Patch (inserted after Phase 2 for urgent fix)
|
|
62
|
+
- Phase 5.1: Performance Hotfix (inserted after Phase 5 for production issue)
|
|
63
|
+
|
|
64
|
+
**Key Decisions:**
|
|
65
|
+
{{DECISIONS_FROM_PROJECT_STATE}}
|
|
66
|
+
[Example:]
|
|
67
|
+
|
|
68
|
+
- Decision: Use ROADMAP.md split (Rationale: Constant context cost)
|
|
69
|
+
- Decision: Decimal phase numbering (Rationale: Clear insertion semantics)
|
|
70
|
+
|
|
71
|
+
**Issues Resolved:**
|
|
72
|
+
{{ISSUES_RESOLVED_DURING_MILESTONE}}
|
|
73
|
+
[Example:]
|
|
74
|
+
|
|
75
|
+
- Fixed context overflow at 100+ phases
|
|
76
|
+
- Resolved phase insertion confusion
|
|
77
|
+
|
|
78
|
+
**Issues Deferred:**
|
|
79
|
+
{{ISSUES_DEFERRED_TO_LATER}}
|
|
80
|
+
[Example:]
|
|
81
|
+
|
|
82
|
+
- PROJECT-STATE.md tiering (deferred until decisions > 300)
|
|
83
|
+
|
|
84
|
+
**Technical Debt Incurred:**
|
|
85
|
+
{{SHORTCUTS_NEEDING_FUTURE_WORK}}
|
|
86
|
+
[Example:]
|
|
87
|
+
|
|
88
|
+
- Some workflows still have hardcoded paths (fix in Phase 5)
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
_For current project status, see .planning/ROADMAP.md_
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Usage Guidelines
|
|
97
|
+
|
|
98
|
+
<guidelines>
|
|
99
|
+
**When to create milestone archives:**
|
|
100
|
+
- After completing all phases in a milestone (v1.0, v1.1, v2.0, etc.)
|
|
101
|
+
- Triggered by complete-milestone workflow
|
|
102
|
+
- Before planning next milestone work
|
|
103
|
+
|
|
104
|
+
**How to fill template:**
|
|
105
|
+
|
|
106
|
+
- Replace {{PLACEHOLDERS}} with actual values
|
|
107
|
+
- Extract phase details from ROADMAP.md
|
|
108
|
+
- Document decimal phases with (INSERTED) marker
|
|
109
|
+
- Include key decisions from PROJECT-STATE.md or SUMMARY files
|
|
110
|
+
- List issues resolved vs deferred
|
|
111
|
+
- Capture technical debt for future reference
|
|
112
|
+
|
|
113
|
+
**Archive location:**
|
|
114
|
+
|
|
115
|
+
- Save to `.planning/milestones/v{VERSION}-{NAME}.md`
|
|
116
|
+
- Example: `.planning/milestones/v1.0-mvp.md`
|
|
117
|
+
|
|
118
|
+
**After archiving:**
|
|
119
|
+
|
|
120
|
+
- Update ROADMAP.md to collapse completed milestone in `<details>` tag
|
|
121
|
+
- Update PROJECT.md to brownfield format with Current State section
|
|
122
|
+
- Continue phase numbering in next milestone (never restart at 01)
|
|
123
|
+
</guidelines>
|