get-shit-done-cc 1.3.10 → 1.3.12
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/commands/gsd/plan-phase.md +0 -1
- package/get-shit-done/references/checkpoints.md +139 -446
- package/get-shit-done/references/scope-estimation.md +53 -389
- package/get-shit-done/workflows/plan-phase.md +133 -707
- package/package.json +1 -1
- package/get-shit-done/references/cli-automation.md +0 -527
|
@@ -1,447 +1,111 @@
|
|
|
1
1
|
<scope_estimation>
|
|
2
|
-
Plans must maintain consistent quality from first task to last. This requires understanding
|
|
2
|
+
Plans must maintain consistent quality from first task to last. This requires understanding quality degradation and splitting aggressively.
|
|
3
3
|
|
|
4
|
-
<
|
|
4
|
+
<quality_insight>
|
|
5
|
+
Claude degrades when it *perceives* context pressure and enters "completion mode."
|
|
5
6
|
|
|
6
|
-
|
|
7
|
+
| Context Usage | Quality | Claude's State |
|
|
8
|
+
|---------------|---------|----------------|
|
|
9
|
+
| 0-30% | PEAK | Thorough, comprehensive |
|
|
10
|
+
| 30-50% | GOOD | Confident, solid work |
|
|
11
|
+
| 50-70% | DEGRADING | Efficiency mode begins |
|
|
12
|
+
| 70%+ | POOR | Rushed, minimal |
|
|
7
13
|
|
|
8
|
-
|
|
9
|
-
Context Usage │ Quality Level │ Claude's Mental State
|
|
10
|
-
─────────────────────────────────────────────────────────
|
|
11
|
-
0-30% │ ████████ PEAK │ "I can be thorough and comprehensive"
|
|
12
|
-
│ │ No anxiety, full detail, best work
|
|
13
|
-
|
|
14
|
-
30-50% │ ██████ GOOD │ "Still have room, maintaining quality"
|
|
15
|
-
│ │ Engaged, confident, solid work
|
|
16
|
-
|
|
17
|
-
50-70% │ ███ DEGRADING │ "Getting tight, need to be efficient"
|
|
18
|
-
│ │ Efficiency mode, compression begins
|
|
19
|
-
|
|
20
|
-
70%+ │ █ POOR │ "Running out, must finish quickly"
|
|
21
|
-
│ │ Self-lobotomization, rushed, minimal
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
**The 40-50% inflection point:**
|
|
14
|
+
**The 40-50% inflection point:** Claude sees context mounting and thinks "I'd better conserve now." Result: "I'll complete the remaining tasks more concisely" = quality crash.
|
|
25
15
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
**The fundamental rule:** Stop BEFORE quality degrades, not at context limit.
|
|
29
|
-
</quality_degradation_curve>
|
|
16
|
+
**The rule:** Stop BEFORE quality degrades, not at context limit.
|
|
17
|
+
</quality_insight>
|
|
30
18
|
|
|
31
19
|
<context_target>
|
|
32
|
-
|
|
33
20
|
**Plans should complete within ~50% of context usage.**
|
|
34
21
|
|
|
35
22
|
Why 50% not 80%?
|
|
36
|
-
- Huge safety buffer
|
|
37
23
|
- No context anxiety possible
|
|
38
|
-
- Quality maintained
|
|
24
|
+
- Quality maintained start to finish
|
|
39
25
|
- Room for unexpected complexity
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
**If you target 80%, you're planning for failure.** By the time you hit 80%, you've already spent 40% in degradation mode.
|
|
26
|
+
- If you target 80%, you've already spent 40% in degradation mode
|
|
43
27
|
</context_target>
|
|
44
28
|
|
|
45
29
|
<task_rule>
|
|
30
|
+
**Each plan: 2-3 tasks maximum. Stay under 50% context.**
|
|
46
31
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
**Simple tasks (CRUD, config, basic features):**
|
|
54
|
-
- 3 tasks is fine
|
|
55
|
-
- Each burns ~10-15% context
|
|
56
|
-
- Total: ~30-45% → Safe
|
|
57
|
-
|
|
58
|
-
**Complex tasks (auth, payments, architecture, integrations):**
|
|
59
|
-
- Stick to 2 tasks
|
|
60
|
-
- Each burns ~20-30% context
|
|
61
|
-
- Total: ~40-50% → At limit
|
|
62
|
-
|
|
63
|
-
**Very complex tasks (migrations, major refactors, novel patterns):**
|
|
64
|
-
- Consider 1-2 tasks only
|
|
65
|
-
- Each can burn 30-40% context
|
|
66
|
-
- Splitting to 1 task/plan is valid for high complexity
|
|
67
|
-
|
|
68
|
-
**Context estimation by task type:**
|
|
69
|
-
|
|
70
|
-
**Task 1 (0-15% context for simple, 0-30% for complex):**
|
|
71
|
-
- Fresh context
|
|
72
|
-
- Peak quality
|
|
73
|
-
- Comprehensive implementation
|
|
74
|
-
- Full testing
|
|
75
|
-
|
|
76
|
-
**Task 2 (15-35% context for simple, 30-50% for complex):**
|
|
77
|
-
- Still good quality
|
|
78
|
-
- Context pressure manageable
|
|
79
|
-
- Natural stopping point for complex work
|
|
80
|
-
|
|
81
|
-
**Task 3 (35-50% context for simple only):**
|
|
82
|
-
- Only include for simple tasks
|
|
83
|
-
- Skip for complex work
|
|
84
|
-
- Better to split complex work at 2 tasks
|
|
85
|
-
|
|
86
|
-
**Task 4+ (50%+ context):**
|
|
87
|
-
- NEVER do this
|
|
88
|
-
- Quality guaranteed to degrade
|
|
89
|
-
- Should have split earlier
|
|
32
|
+
| Task Complexity | Tasks/Plan | Context/Task | Total |
|
|
33
|
+
|-----------------|------------|--------------|-------|
|
|
34
|
+
| Simple (CRUD, config) | 3 | ~10-15% | ~30-45% |
|
|
35
|
+
| Complex (auth, payments) | 2 | ~20-30% | ~40-50% |
|
|
36
|
+
| Very complex (migrations, refactors) | 1-2 | ~30-40% | ~30-50% |
|
|
90
37
|
|
|
91
38
|
**When in doubt: Default to 2 tasks.** Better to have an extra plan than degraded quality.
|
|
92
|
-
|
|
93
|
-
**The principle:** Each plan completes within 50% context. Task count is flexible based on complexity.
|
|
94
39
|
</task_rule>
|
|
95
40
|
|
|
96
41
|
<split_signals>
|
|
97
42
|
|
|
98
43
|
<always_split>
|
|
99
|
-
|
|
100
|
-
**
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
-
|
|
104
|
-
|
|
105
|
-
**2. Multiple subsystems**
|
|
106
|
-
```
|
|
107
|
-
❌ Bad (1 plan):
|
|
108
|
-
- Database schema (3 files)
|
|
109
|
-
- API routes (5 files)
|
|
110
|
-
- UI components (8 files)
|
|
111
|
-
Total: 16 files, 1 plan → guaranteed degradation
|
|
112
|
-
|
|
113
|
-
✅ Good (3 plans):
|
|
114
|
-
- 01-01-PLAN.md: Database schema (3 files, 2 tasks)
|
|
115
|
-
- 01-02-PLAN.md: API routes (5 files, 3 tasks)
|
|
116
|
-
- 01-03-PLAN.md: UI components (8 files, 3 tasks)
|
|
117
|
-
Total: 16 files, 3 plans → consistent quality
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
**3. Any task with >5 file modifications**
|
|
121
|
-
- Large tasks burn context fast
|
|
122
|
-
- Split by file groups or logical units
|
|
123
|
-
- Better: 3 plans of 2 files each vs 1 plan of 6 files
|
|
124
|
-
|
|
125
|
-
**4. Checkpoint + implementation work**
|
|
126
|
-
- Checkpoints require user interaction (context preserved)
|
|
127
|
-
- Implementation after checkpoint should be separate plan
|
|
128
|
-
|
|
129
|
-
✅ Good split:
|
|
130
|
-
- 02-01-PLAN.md: Setup (checkpoint: decision on auth provider)
|
|
131
|
-
- 02-02-PLAN.md: Implement chosen auth solution
|
|
132
|
-
|
|
133
|
-
**5. Discovery + implementation**
|
|
134
|
-
- Discovery produces DISCOVERY.md (separate plan)
|
|
135
|
-
- Implementation consumes DISCOVERY.md (separate plan)
|
|
136
|
-
- Clear boundary, clean handoff
|
|
44
|
+
- **More than 3 tasks** - Even if tasks seem small
|
|
45
|
+
- **Multiple subsystems** - DB + API + UI = separate plans
|
|
46
|
+
- **Any task with >5 file modifications** - Split by file groups
|
|
47
|
+
- **Checkpoint + implementation work** - Checkpoints in one plan, implementation after in separate plan
|
|
48
|
+
- **Discovery + implementation** - DISCOVERY.md in one plan, implementation in another
|
|
137
49
|
</always_split>
|
|
138
50
|
|
|
139
51
|
<consider_splitting>
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
-
|
|
143
|
-
-
|
|
144
|
-
- Context from responses
|
|
145
|
-
- Adds up faster than expected
|
|
146
|
-
|
|
147
|
-
**2. Complex domains (auth, payments, data modeling)**
|
|
148
|
-
- These require careful thinking
|
|
149
|
-
- Burns more context per task than simple CRUD
|
|
150
|
-
- Split more aggressively
|
|
151
|
-
|
|
152
|
-
**3. Any uncertainty about approach**
|
|
153
|
-
- "Figure out X" phase separate from "implement X" phase
|
|
154
|
-
- Don't mix exploration and implementation
|
|
155
|
-
|
|
156
|
-
**4. Natural semantic boundaries**
|
|
157
|
-
- Setup → Core → Features
|
|
158
|
-
- Backend → Frontend
|
|
159
|
-
- Configuration → Implementation → Testing
|
|
52
|
+
- Estimated >5 files modified total
|
|
53
|
+
- Complex domains (auth, payments, data modeling)
|
|
54
|
+
- Any uncertainty about approach
|
|
55
|
+
- Natural semantic boundaries (Setup -> Core -> Features)
|
|
160
56
|
</consider_splitting>
|
|
161
57
|
</split_signals>
|
|
162
58
|
|
|
163
59
|
<splitting_strategies>
|
|
60
|
+
**By subsystem:** Auth → 01: DB models, 02: API routes, 03: Protected routes, 04: UI components
|
|
164
61
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
**Phase:** "Authentication System"
|
|
168
|
-
|
|
169
|
-
**Split:**
|
|
170
|
-
```
|
|
171
|
-
- 03-01-PLAN.md: Database models (User, Session tables + relations)
|
|
172
|
-
- 03-02-PLAN.md: Auth API (register, login, logout endpoints)
|
|
173
|
-
- 03-03-PLAN.md: Protected routes (middleware, JWT validation)
|
|
174
|
-
- 03-04-PLAN.md: UI components (login form, registration form)
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
Each plan: 2-3 tasks, single subsystem, clean commits.
|
|
178
|
-
</by_subsystem>
|
|
179
|
-
|
|
180
|
-
<by_dependency>
|
|
181
|
-
|
|
182
|
-
**Phase:** "Payment Integration"
|
|
183
|
-
|
|
184
|
-
**Split:**
|
|
185
|
-
```
|
|
186
|
-
- 04-01-PLAN.md: Stripe setup (webhook endpoints via API, env vars, test mode)
|
|
187
|
-
- 04-02-PLAN.md: Subscription logic (plans, checkout, customer portal)
|
|
188
|
-
- 04-03-PLAN.md: Frontend integration (pricing page, payment flow)
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
Later plans depend on earlier completion. Sequential execution, fresh context each time.
|
|
192
|
-
</by_dependency>
|
|
193
|
-
|
|
194
|
-
<by_complexity>
|
|
195
|
-
|
|
196
|
-
**Phase:** "Dashboard Buildout"
|
|
197
|
-
|
|
198
|
-
**Split:**
|
|
199
|
-
```
|
|
200
|
-
- 05-01-PLAN.md: Layout shell (simple: sidebar, header, routing)
|
|
201
|
-
- 05-02-PLAN.md: Data fetching (moderate: TanStack Query setup, API integration)
|
|
202
|
-
- 05-03-PLAN.md: Data visualization (complex: charts, tables, real-time updates)
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
Complex work gets its own plan with full context budget.
|
|
206
|
-
</by_complexity>
|
|
62
|
+
**By dependency:** Payments → 01: Stripe setup, 02: Subscription logic, 03: Frontend integration
|
|
207
63
|
|
|
208
|
-
|
|
64
|
+
**By complexity:** Dashboard → 01: Layout shell, 02: Data fetching, 03: Visualization
|
|
209
65
|
|
|
210
|
-
**
|
|
211
|
-
|
|
212
|
-
**Split:**
|
|
213
|
-
```
|
|
214
|
-
- 06-01-PLAN.md: Vercel setup (deploy via CLI, configure domains)
|
|
215
|
-
→ Ends with checkpoint:human-verify "check xyz.vercel.app loads"
|
|
216
|
-
|
|
217
|
-
- 06-02-PLAN.md: Environment config (secrets via CLI, env vars)
|
|
218
|
-
→ Autonomous (no checkpoints) → subagent execution
|
|
219
|
-
|
|
220
|
-
- 06-03-PLAN.md: CI/CD (GitHub Actions, preview deploys)
|
|
221
|
-
→ Ends with checkpoint:human-verify "check PR preview works"
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
Verification checkpoints create natural boundaries. Autonomous plans between checkpoints execute via subagent with fresh context.
|
|
225
|
-
</by_verification_points>
|
|
66
|
+
**By verification:** Deploy → 01: Vercel setup (checkpoint), 02: Env config (auto), 03: CI/CD (checkpoint)
|
|
226
67
|
</splitting_strategies>
|
|
227
68
|
|
|
228
|
-
<autonomous_vs_interactive>
|
|
229
|
-
|
|
230
|
-
**Critical optimization:** Plans without checkpoints don't need main context.
|
|
231
|
-
|
|
232
|
-
<autonomous_plans>
|
|
233
|
-
- Contains only `type="auto"` tasks
|
|
234
|
-
- No user interaction needed
|
|
235
|
-
- **Execute via subagent with fresh 200k context**
|
|
236
|
-
- Impossible to degrade (always starts at 0%)
|
|
237
|
-
- Creates SUMMARY, commits, reports back
|
|
238
|
-
- Can run in parallel (multiple subagents)
|
|
239
|
-
</autonomous_plans>
|
|
240
|
-
|
|
241
|
-
<interactive_plans>
|
|
242
|
-
- Contains `checkpoint:human-verify` or `checkpoint:decision` tasks
|
|
243
|
-
- Requires user interaction
|
|
244
|
-
- Must execute in main context
|
|
245
|
-
- Still target 50% context (2-3 tasks)
|
|
246
|
-
|
|
247
|
-
**Planning guidance:** If splitting a phase, try to:
|
|
248
|
-
- Group autonomous work together (→ subagent)
|
|
249
|
-
- Separate interactive work (→ main context)
|
|
250
|
-
- Maximize autonomous plans (more fresh contexts)
|
|
251
|
-
|
|
252
|
-
Example:
|
|
253
|
-
```
|
|
254
|
-
Phase: Feature X
|
|
255
|
-
- 07-01-PLAN.md: Backend (autonomous) → subagent
|
|
256
|
-
- 07-02-PLAN.md: Frontend (autonomous) → subagent
|
|
257
|
-
- 07-03-PLAN.md: Integration test (has checkpoint:human-verify) → main context
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
Two fresh contexts, one interactive verification. Perfect.
|
|
261
|
-
</interactive_plans>
|
|
262
|
-
</autonomous_vs_interactive>
|
|
263
|
-
|
|
264
69
|
<anti_patterns>
|
|
265
|
-
|
|
266
|
-
<antipattern_comprehensive>
|
|
267
|
-
|
|
70
|
+
**Bad - Comprehensive plan:**
|
|
268
71
|
```
|
|
269
72
|
Plan: "Complete Authentication System"
|
|
270
|
-
Tasks:
|
|
271
|
-
1
|
|
272
|
-
2. Migration files
|
|
273
|
-
3. Auth API endpoints
|
|
274
|
-
4. JWT utilities
|
|
275
|
-
5. Protected route middleware
|
|
276
|
-
6. Password hashing
|
|
277
|
-
7. Login form component
|
|
278
|
-
8. Registration form component
|
|
279
|
-
|
|
280
|
-
Result: 8 tasks, 80%+ context, degradation at task 4-5
|
|
73
|
+
Tasks: 8 (models, migrations, API, JWT, middleware, hashing, login form, register form)
|
|
74
|
+
Result: Task 1-3 good, Task 4-5 degrading, Task 6-8 rushed
|
|
281
75
|
```
|
|
282
76
|
|
|
283
|
-
**
|
|
284
|
-
- Task 1-3: Good quality
|
|
285
|
-
- Task 4-5: "I'll do these concisely" = degradation begins
|
|
286
|
-
- Task 6-8: Rushed, minimal, poor quality
|
|
287
|
-
</antipattern_comprehensive>
|
|
288
|
-
|
|
289
|
-
<pattern_atomic>
|
|
290
|
-
|
|
77
|
+
**Good - Atomic plans:**
|
|
291
78
|
```
|
|
292
|
-
Split into 4 plans:
|
|
293
|
-
|
|
294
79
|
Plan 1: "Auth Database Models" (2 tasks)
|
|
295
|
-
- Database schema (User, Session)
|
|
296
|
-
- Migration files
|
|
297
|
-
|
|
298
80
|
Plan 2: "Auth API Core" (3 tasks)
|
|
299
|
-
- Register endpoint
|
|
300
|
-
- Login endpoint
|
|
301
|
-
- JWT utilities
|
|
302
|
-
|
|
303
81
|
Plan 3: "Auth API Protection" (2 tasks)
|
|
304
|
-
- Protected route middleware
|
|
305
|
-
- Logout endpoint
|
|
306
|
-
|
|
307
82
|
Plan 4: "Auth UI Components" (2 tasks)
|
|
308
|
-
-
|
|
309
|
-
- Registration form
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
**Why this succeeds:**
|
|
313
|
-
- Each plan: 2-3 tasks, 30-40% context
|
|
314
|
-
- All tasks: Peak quality throughout
|
|
315
|
-
- Git history: 4 focused commits
|
|
316
|
-
- Easy to verify each piece
|
|
317
|
-
- Rollback is surgical
|
|
318
|
-
</pattern_atomic>
|
|
319
|
-
|
|
320
|
-
<antipattern_efficiency_trap>
|
|
321
|
-
|
|
322
|
-
```
|
|
323
|
-
Thinking: "These tasks are small, let's do 6 to be efficient"
|
|
324
|
-
|
|
325
|
-
Result: Task 1-2 are good, task 3-4 begin degrading, task 5-6 are rushed
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
**Why this fails:** You're optimizing for fewer plans, not quality. The "efficiency" is false - poor quality requires more rework.
|
|
329
|
-
</antipattern_efficiency_trap>
|
|
330
|
-
|
|
331
|
-
<pattern_quality_first>
|
|
332
|
-
|
|
333
|
-
```
|
|
334
|
-
Thinking: "These tasks are small, but let's do 2-3 to guarantee quality"
|
|
335
|
-
|
|
336
|
-
Result: All tasks peak quality, clean commits, no rework needed
|
|
83
|
+
Each: 30-40% context, peak quality, focused commits
|
|
337
84
|
```
|
|
338
|
-
|
|
339
|
-
**Why this succeeds:** You optimize for quality, which is true efficiency. No rework = faster overall.
|
|
340
|
-
</pattern_quality_first>
|
|
341
85
|
</anti_patterns>
|
|
342
86
|
|
|
343
87
|
<estimating_context>
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
<two_task_plan>
|
|
361
|
-
- 2 simple tasks: ~30% total ✅ Plenty of room
|
|
362
|
-
- 2 medium tasks: ~50% total ✅ At target
|
|
363
|
-
- 2 complex tasks: ~80% total ❌ Too tight, split
|
|
364
|
-
</two_task_plan>
|
|
365
|
-
|
|
366
|
-
<three_task_plan>
|
|
367
|
-
- 3 simple tasks: ~45% total ✅ Good
|
|
368
|
-
- 3 medium tasks: ~75% total ⚠️ Pushing it
|
|
369
|
-
- 3 complex tasks: 120% total ❌ Impossible, split
|
|
370
|
-
|
|
371
|
-
**Conservative principle:** When in doubt, split. Better to have an extra plan than degraded quality.
|
|
372
|
-
</three_task_plan>
|
|
88
|
+
| Files Modified | Context Impact |
|
|
89
|
+
|----------------|----------------|
|
|
90
|
+
| 0-3 files | ~10-15% (small) |
|
|
91
|
+
| 4-6 files | ~20-30% (medium) |
|
|
92
|
+
| 7+ files | ~40%+ (large - split) |
|
|
93
|
+
|
|
94
|
+
| Complexity | Context/Task |
|
|
95
|
+
|------------|--------------|
|
|
96
|
+
| Simple CRUD | ~15% |
|
|
97
|
+
| Business logic | ~25% |
|
|
98
|
+
| Complex algorithms | ~40% |
|
|
99
|
+
| Domain modeling | ~35% |
|
|
100
|
+
|
|
101
|
+
**2 tasks:** Simple ~30%, Medium ~50%, Complex ~80% (split)
|
|
102
|
+
**3 tasks:** Simple ~45%, Medium ~75% (risky), Complex 120% (impossible)
|
|
373
103
|
</estimating_context>
|
|
374
104
|
|
|
375
|
-
<atomic_commits>
|
|
376
|
-
|
|
377
|
-
**What we're optimizing for:** Beautiful git history where each commit is:
|
|
378
|
-
- Focused (2-3 related changes)
|
|
379
|
-
- Complete (fully implemented, tested)
|
|
380
|
-
- Documented (clear commit message)
|
|
381
|
-
- Reviewable (small enough to understand)
|
|
382
|
-
- Revertable (surgical rollback possible)
|
|
383
|
-
|
|
384
|
-
**Bad git history (large plans):**
|
|
385
|
-
```
|
|
386
|
-
feat(auth): Complete authentication system
|
|
387
|
-
- Added 16 files
|
|
388
|
-
- Modified 8 files
|
|
389
|
-
- 1200 lines changed
|
|
390
|
-
- Contains: models, API, UI, middleware, utilities
|
|
391
|
-
```
|
|
392
|
-
|
|
393
|
-
Impossible to review, hard to understand, can't revert without losing everything.
|
|
394
|
-
|
|
395
|
-
**Good git history (atomic plans):**
|
|
396
|
-
```
|
|
397
|
-
feat(auth-01): Add User and Session database models
|
|
398
|
-
- Added schema files
|
|
399
|
-
- Added migration
|
|
400
|
-
- 45 lines changed
|
|
401
|
-
|
|
402
|
-
feat(auth-02): Implement register and login API endpoints
|
|
403
|
-
- Added /api/auth/register
|
|
404
|
-
- Added /api/auth/login
|
|
405
|
-
- Added JWT utilities
|
|
406
|
-
- 120 lines changed
|
|
407
|
-
|
|
408
|
-
feat(auth-03): Add protected route middleware
|
|
409
|
-
- Added middleware/auth.ts
|
|
410
|
-
- Added tests
|
|
411
|
-
- 60 lines changed
|
|
412
|
-
|
|
413
|
-
feat(auth-04): Build login and registration forms
|
|
414
|
-
- Added LoginForm component
|
|
415
|
-
- Added RegisterForm component
|
|
416
|
-
- 90 lines changed
|
|
417
|
-
```
|
|
418
|
-
|
|
419
|
-
Each commit tells a story. Each is reviewable. Each is revertable. This is craftsmanship.
|
|
420
|
-
</atomic_commits>
|
|
421
|
-
|
|
422
|
-
<quality_assurance>
|
|
423
|
-
|
|
424
|
-
**The guarantee:** When you follow the 2-3 task rule with 50% context target:
|
|
425
|
-
|
|
426
|
-
1. **Consistency:** First task has same quality as last task
|
|
427
|
-
2. **Thoroughness:** No "I'll complete X concisely" degradation
|
|
428
|
-
3. **Documentation:** Full context budget for comments/tests
|
|
429
|
-
4. **Error handling:** Space for proper validation and edge cases
|
|
430
|
-
5. **Testing:** Room for comprehensive test coverage
|
|
431
|
-
|
|
432
|
-
**The cost:** More plans to manage.
|
|
433
|
-
|
|
434
|
-
**The benefit:** Consistent excellence. No rework. Clean history. Maintainable code.
|
|
435
|
-
|
|
436
|
-
**The trade-off is worth it.**
|
|
437
|
-
</quality_assurance>
|
|
438
|
-
|
|
439
105
|
<summary>
|
|
440
|
-
|
|
441
106
|
**2-3 tasks, 50% context target:**
|
|
442
107
|
- All tasks: Peak quality
|
|
443
108
|
- Git: Atomic, surgical commits
|
|
444
|
-
- Quality: Consistent excellence
|
|
445
109
|
- Autonomous plans: Subagent execution (fresh context)
|
|
446
110
|
|
|
447
111
|
**The principle:** Aggressive atomicity. More plans, smaller scope, consistent quality.
|