@yeongjaeyou/claude-code-config 0.5.1 โ 0.6.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/.claude/commands/generate-llmstxt.md +49 -0
- package/.claude/guidelines/cv-guidelines.md +13 -13
- package/.claude/skills/feature-implementer/SKILL.md +317 -0
- package/.claude/skills/feature-implementer/plan-template.md +605 -0
- package/README.md +26 -16
- package/bin/cli.js +71 -69
- package/package.json +1 -1
- package/.claude/agents/generate-llmstxt.md +0 -165
- package/.claude/agents/langconnect-rag-expert.md +0 -98
- package/.claude/commands/plan.md +0 -26
- package/.claude/commands/tm/review-prd-with-codex.md +0 -442
|
@@ -0,0 +1,605 @@
|
|
|
1
|
+
# Implementation Plan: [Feature Name]
|
|
2
|
+
|
|
3
|
+
**Status**: ๐ In Progress
|
|
4
|
+
**Started**: YYYY-MM-DD
|
|
5
|
+
**Last Updated**: YYYY-MM-DD
|
|
6
|
+
**Estimated Completion**: YYYY-MM-DD
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**โ ๏ธ CRITICAL INSTRUCTIONS**: After completing each phase:
|
|
11
|
+
1. โ
Check off completed task checkboxes
|
|
12
|
+
2. ๐งช Run all quality gate validation commands
|
|
13
|
+
3. โ ๏ธ Verify ALL quality gate items pass
|
|
14
|
+
4. ๐
Update "Last Updated" date above
|
|
15
|
+
5. ๐ Document learnings in Notes section
|
|
16
|
+
6. โก๏ธ Only then proceed to next phase
|
|
17
|
+
|
|
18
|
+
โ **DO NOT skip quality gates or proceed with failing checks**
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## ๐ Overview
|
|
23
|
+
|
|
24
|
+
### Feature Description
|
|
25
|
+
[What this feature does and why it's needed]
|
|
26
|
+
|
|
27
|
+
### Success Criteria
|
|
28
|
+
- [ ] Criterion 1
|
|
29
|
+
- [ ] Criterion 2
|
|
30
|
+
- [ ] Criterion 3
|
|
31
|
+
|
|
32
|
+
### User Impact
|
|
33
|
+
[How this benefits users or improves the product]
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## ๐๏ธ Architecture Decisions
|
|
38
|
+
|
|
39
|
+
| Decision | Rationale | Trade-offs |
|
|
40
|
+
|----------|-----------|------------|
|
|
41
|
+
| [Decision 1] | [Why this approach] | [What we're giving up] |
|
|
42
|
+
| [Decision 2] | [Why this approach] | [What we're giving up] |
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## ๐ฆ Dependencies
|
|
47
|
+
|
|
48
|
+
### Required Before Starting
|
|
49
|
+
- [ ] Dependency 1: [Description]
|
|
50
|
+
- [ ] Dependency 2: [Description]
|
|
51
|
+
|
|
52
|
+
### External Dependencies
|
|
53
|
+
- Package/Library 1: version X.Y.Z
|
|
54
|
+
- Package/Library 2: version X.Y.Z
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## ๐งช Test Strategy
|
|
59
|
+
|
|
60
|
+
### Testing Approach
|
|
61
|
+
**TDD Principle**: Write tests FIRST, then implement to make them pass
|
|
62
|
+
|
|
63
|
+
### Test Pyramid for This Feature
|
|
64
|
+
| Test Type | Coverage Target | Purpose |
|
|
65
|
+
|-----------|-----------------|---------|
|
|
66
|
+
| **Unit Tests** | โฅ80% | Business logic, models, core algorithms |
|
|
67
|
+
| **Integration Tests** | Critical paths | Component interactions, data flow |
|
|
68
|
+
| **E2E Tests** | Key user flows | Full system behavior validation |
|
|
69
|
+
|
|
70
|
+
### Test File Organization
|
|
71
|
+
```
|
|
72
|
+
test/
|
|
73
|
+
โโโ unit/
|
|
74
|
+
โ โโโ [domain/business_logic]/
|
|
75
|
+
โ โโโ [data/models]/
|
|
76
|
+
โโโ integration/
|
|
77
|
+
โ โโโ [feature_name]/
|
|
78
|
+
โโโ e2e/
|
|
79
|
+
โโโ [user_flows]/
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Coverage Requirements by Phase
|
|
83
|
+
- **Phase 1 (Foundation)**: Unit tests for core models/entities (โฅ80%)
|
|
84
|
+
- **Phase 2 (Business Logic)**: Logic + repository tests (โฅ80%)
|
|
85
|
+
- **Phase 3 (Integration)**: Component integration tests (โฅ70%)
|
|
86
|
+
- **Phase 4 (E2E)**: End-to-end user flow test (1+ critical path)
|
|
87
|
+
|
|
88
|
+
### Test Naming Convention
|
|
89
|
+
Follow your project's testing framework conventions:
|
|
90
|
+
```
|
|
91
|
+
// Example structure (adapt to your framework):
|
|
92
|
+
describe/group: Feature or component name
|
|
93
|
+
test/it: Specific behavior being tested
|
|
94
|
+
// Arrange โ Act โ Assert pattern
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## ๐ Implementation Phases
|
|
100
|
+
|
|
101
|
+
### Phase 1: [Foundation Phase Name]
|
|
102
|
+
**Goal**: [Specific working functionality this phase delivers]
|
|
103
|
+
**Estimated Time**: X hours
|
|
104
|
+
**Status**: โณ Pending | ๐ In Progress | โ
Complete
|
|
105
|
+
|
|
106
|
+
#### Tasks
|
|
107
|
+
|
|
108
|
+
**๐ด RED: Write Failing Tests First**
|
|
109
|
+
- [ ] **Test 1.1**: Write unit tests for [specific functionality]
|
|
110
|
+
- File(s): `test/unit/[feature]/[component]_test.*`
|
|
111
|
+
- Expected: Tests FAIL (red) because feature doesn't exist yet
|
|
112
|
+
- Details: Test cases covering:
|
|
113
|
+
- Happy path scenarios
|
|
114
|
+
- Edge cases
|
|
115
|
+
- Error conditions
|
|
116
|
+
|
|
117
|
+
- [ ] **Test 1.2**: Write integration tests for [component interaction]
|
|
118
|
+
- File(s): `test/integration/[feature]_test.*`
|
|
119
|
+
- Expected: Tests FAIL (red) because integration doesn't exist yet
|
|
120
|
+
- Details: Test interaction between [list components]
|
|
121
|
+
|
|
122
|
+
**๐ข GREEN: Implement to Make Tests Pass**
|
|
123
|
+
- [ ] **Task 1.3**: Implement [component/module]
|
|
124
|
+
- File(s): `src/[layer]/[component].*`
|
|
125
|
+
- Goal: Make Test 1.1 pass with minimal code
|
|
126
|
+
- Details: [Implementation notes]
|
|
127
|
+
|
|
128
|
+
- [ ] **Task 1.4**: Implement [integration/glue code]
|
|
129
|
+
- File(s): `src/[layer]/[integration].*`
|
|
130
|
+
- Goal: Make Test 1.2 pass
|
|
131
|
+
- Details: [Implementation notes]
|
|
132
|
+
|
|
133
|
+
**๐ต REFACTOR: Clean Up Code**
|
|
134
|
+
- [ ] **Task 1.5**: Refactor for code quality
|
|
135
|
+
- Files: Review all new code in this phase
|
|
136
|
+
- Goal: Improve design without breaking tests
|
|
137
|
+
- Checklist:
|
|
138
|
+
- [ ] Remove duplication (DRY principle)
|
|
139
|
+
- [ ] Improve naming clarity
|
|
140
|
+
- [ ] Extract reusable components
|
|
141
|
+
- [ ] Add inline documentation
|
|
142
|
+
- [ ] Optimize performance if needed
|
|
143
|
+
|
|
144
|
+
#### Quality Gate โ
|
|
145
|
+
|
|
146
|
+
**โ ๏ธ STOP: Do NOT proceed to Phase 2 until ALL checks pass**
|
|
147
|
+
|
|
148
|
+
**TDD Compliance** (CRITICAL):
|
|
149
|
+
- [ ] **Red Phase**: Tests were written FIRST and initially failed
|
|
150
|
+
- [ ] **Green Phase**: Production code written to make tests pass
|
|
151
|
+
- [ ] **Refactor Phase**: Code improved while tests still pass
|
|
152
|
+
- [ ] **Coverage Check**: Test coverage meets requirements
|
|
153
|
+
```bash
|
|
154
|
+
# Example commands (adapt to your testing framework):
|
|
155
|
+
# npm test -- --coverage
|
|
156
|
+
# pytest --cov=src --cov-report=html
|
|
157
|
+
# dotnet test /p:CollectCoverage=true
|
|
158
|
+
# go test -cover ./...
|
|
159
|
+
|
|
160
|
+
[Your project's coverage command here]
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Build & Tests**:
|
|
164
|
+
- [ ] **Build**: Project builds/compiles without errors
|
|
165
|
+
- [ ] **All Tests Pass**: 100% of tests passing (no skipped tests)
|
|
166
|
+
- [ ] **Test Performance**: Test suite completes in acceptable time
|
|
167
|
+
- [ ] **No Flaky Tests**: Tests pass consistently (run 3+ times)
|
|
168
|
+
|
|
169
|
+
**Code Quality**:
|
|
170
|
+
- [ ] **Linting**: No linting errors or warnings
|
|
171
|
+
- [ ] **Formatting**: Code formatted per project standards
|
|
172
|
+
- [ ] **Type Safety**: Type checker passes (if applicable)
|
|
173
|
+
- [ ] **Static Analysis**: No critical issues from static analysis tools
|
|
174
|
+
|
|
175
|
+
**Security & Performance**:
|
|
176
|
+
- [ ] **Dependencies**: No known security vulnerabilities
|
|
177
|
+
- [ ] **Performance**: No performance regressions
|
|
178
|
+
- [ ] **Memory**: No memory leaks or resource issues
|
|
179
|
+
- [ ] **Error Handling**: Proper error handling implemented
|
|
180
|
+
|
|
181
|
+
**Documentation**:
|
|
182
|
+
- [ ] **Code Comments**: Complex logic documented
|
|
183
|
+
- [ ] **API Docs**: Public interfaces documented
|
|
184
|
+
- [ ] **README**: Usage instructions updated if needed
|
|
185
|
+
|
|
186
|
+
**Manual Testing**:
|
|
187
|
+
- [ ] **Functionality**: Feature works as expected
|
|
188
|
+
- [ ] **Edge Cases**: Boundary conditions tested
|
|
189
|
+
- [ ] **Error States**: Error handling verified
|
|
190
|
+
|
|
191
|
+
**Validation Commands** (customize for your project):
|
|
192
|
+
```bash
|
|
193
|
+
# Test Commands
|
|
194
|
+
[your test runner command]
|
|
195
|
+
|
|
196
|
+
# Coverage Check
|
|
197
|
+
[your coverage command]
|
|
198
|
+
|
|
199
|
+
# Code Quality
|
|
200
|
+
[your linter command]
|
|
201
|
+
[your formatter check command]
|
|
202
|
+
[your type checker command]
|
|
203
|
+
|
|
204
|
+
# Build Verification
|
|
205
|
+
[your build command]
|
|
206
|
+
|
|
207
|
+
# Security Audit
|
|
208
|
+
[your dependency audit command]
|
|
209
|
+
|
|
210
|
+
# Example for different ecosystems:
|
|
211
|
+
# JavaScript/TypeScript: npm test && npm run lint && npm run type-check
|
|
212
|
+
# Python: pytest && black --check . && mypy .
|
|
213
|
+
# Java: mvn test && mvn checkstyle:check
|
|
214
|
+
# Go: go test ./... && golangci-lint run
|
|
215
|
+
# .NET: dotnet test && dotnet format --verify-no-changes
|
|
216
|
+
# Ruby: bundle exec rspec && rubocop
|
|
217
|
+
# Rust: cargo test && cargo clippy
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
**Manual Test Checklist**:
|
|
221
|
+
- [ ] Test case 1: [Specific scenario to verify]
|
|
222
|
+
- [ ] Test case 2: [Edge case to verify]
|
|
223
|
+
- [ ] Test case 3: [Error handling to verify]
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
### Phase 2: [Core Feature Phase Name]
|
|
228
|
+
**Goal**: [Specific deliverable]
|
|
229
|
+
**Estimated Time**: X hours
|
|
230
|
+
**Status**: โณ Pending | ๐ In Progress | โ
Complete
|
|
231
|
+
|
|
232
|
+
#### Tasks
|
|
233
|
+
|
|
234
|
+
**๐ด RED: Write Failing Tests First**
|
|
235
|
+
- [ ] **Test 2.1**: Write unit tests for [specific functionality]
|
|
236
|
+
- File(s): `test/unit/[feature]/[component]_test.*`
|
|
237
|
+
- Expected: Tests FAIL (red) because feature doesn't exist yet
|
|
238
|
+
- Details: Test cases covering:
|
|
239
|
+
- Happy path scenarios
|
|
240
|
+
- Edge cases
|
|
241
|
+
- Error conditions
|
|
242
|
+
|
|
243
|
+
- [ ] **Test 2.2**: Write integration tests for [component interaction]
|
|
244
|
+
- File(s): `test/integration/[feature]_test.*`
|
|
245
|
+
- Expected: Tests FAIL (red) because integration doesn't exist yet
|
|
246
|
+
- Details: Test interaction between [list components]
|
|
247
|
+
|
|
248
|
+
**๐ข GREEN: Implement to Make Tests Pass**
|
|
249
|
+
- [ ] **Task 2.3**: Implement [component/module]
|
|
250
|
+
- File(s): `src/[layer]/[component].*`
|
|
251
|
+
- Goal: Make Test 2.1 pass with minimal code
|
|
252
|
+
- Details: [Implementation notes]
|
|
253
|
+
|
|
254
|
+
- [ ] **Task 2.4**: Implement [integration/glue code]
|
|
255
|
+
- File(s): `src/[layer]/[integration].*`
|
|
256
|
+
- Goal: Make Test 2.2 pass
|
|
257
|
+
- Details: [Implementation notes]
|
|
258
|
+
|
|
259
|
+
**๐ต REFACTOR: Clean Up Code**
|
|
260
|
+
- [ ] **Task 2.5**: Refactor for code quality
|
|
261
|
+
- Files: Review all new code in this phase
|
|
262
|
+
- Goal: Improve design without breaking tests
|
|
263
|
+
- Checklist:
|
|
264
|
+
- [ ] Remove duplication (DRY principle)
|
|
265
|
+
- [ ] Improve naming clarity
|
|
266
|
+
- [ ] Extract reusable components
|
|
267
|
+
- [ ] Add inline documentation
|
|
268
|
+
- [ ] Optimize performance if needed
|
|
269
|
+
|
|
270
|
+
#### Quality Gate โ
|
|
271
|
+
|
|
272
|
+
**โ ๏ธ STOP: Do NOT proceed to Phase 3 until ALL checks pass**
|
|
273
|
+
|
|
274
|
+
**TDD Compliance** (CRITICAL):
|
|
275
|
+
- [ ] **Red Phase**: Tests were written FIRST and initially failed
|
|
276
|
+
- [ ] **Green Phase**: Production code written to make tests pass
|
|
277
|
+
- [ ] **Refactor Phase**: Code improved while tests still pass
|
|
278
|
+
- [ ] **Coverage Check**: Test coverage meets requirements
|
|
279
|
+
|
|
280
|
+
**Build & Tests**:
|
|
281
|
+
- [ ] **Build**: Project builds/compiles without errors
|
|
282
|
+
- [ ] **All Tests Pass**: 100% of tests passing (no skipped tests)
|
|
283
|
+
- [ ] **Test Performance**: Test suite completes in acceptable time
|
|
284
|
+
- [ ] **No Flaky Tests**: Tests pass consistently (run 3+ times)
|
|
285
|
+
|
|
286
|
+
**Code Quality**:
|
|
287
|
+
- [ ] **Linting**: No linting errors or warnings
|
|
288
|
+
- [ ] **Formatting**: Code formatted per project standards
|
|
289
|
+
- [ ] **Type Safety**: Type checker passes (if applicable)
|
|
290
|
+
- [ ] **Static Analysis**: No critical issues from static analysis tools
|
|
291
|
+
|
|
292
|
+
**Security & Performance**:
|
|
293
|
+
- [ ] **Dependencies**: No known security vulnerabilities
|
|
294
|
+
- [ ] **Performance**: No performance regressions
|
|
295
|
+
- [ ] **Memory**: No memory leaks or resource issues
|
|
296
|
+
- [ ] **Error Handling**: Proper error handling implemented
|
|
297
|
+
|
|
298
|
+
**Documentation**:
|
|
299
|
+
- [ ] **Code Comments**: Complex logic documented
|
|
300
|
+
- [ ] **API Docs**: Public interfaces documented
|
|
301
|
+
- [ ] **README**: Usage instructions updated if needed
|
|
302
|
+
|
|
303
|
+
**Manual Testing**:
|
|
304
|
+
- [ ] **Functionality**: Feature works as expected
|
|
305
|
+
- [ ] **Edge Cases**: Boundary conditions tested
|
|
306
|
+
- [ ] **Error States**: Error handling verified
|
|
307
|
+
|
|
308
|
+
**Validation Commands**:
|
|
309
|
+
```bash
|
|
310
|
+
[Same as Phase 1 - customize for your project]
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
**Manual Test Checklist**:
|
|
314
|
+
- [ ] Test case 1: [Specific scenario to verify]
|
|
315
|
+
- [ ] Test case 2: [Edge case to verify]
|
|
316
|
+
- [ ] Test case 3: [Error handling to verify]
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
### Phase 3: [Enhancement Phase Name]
|
|
321
|
+
**Goal**: [Specific deliverable]
|
|
322
|
+
**Estimated Time**: X hours
|
|
323
|
+
**Status**: โณ Pending | ๐ In Progress | โ
Complete
|
|
324
|
+
|
|
325
|
+
#### Tasks
|
|
326
|
+
|
|
327
|
+
**๐ด RED: Write Failing Tests First**
|
|
328
|
+
- [ ] **Test 3.1**: Write unit tests for [specific functionality]
|
|
329
|
+
- File(s): `test/unit/[feature]/[component]_test.*`
|
|
330
|
+
- Expected: Tests FAIL (red) because feature doesn't exist yet
|
|
331
|
+
- Details: Test cases covering:
|
|
332
|
+
- Happy path scenarios
|
|
333
|
+
- Edge cases
|
|
334
|
+
- Error conditions
|
|
335
|
+
|
|
336
|
+
- [ ] **Test 3.2**: Write integration tests for [component interaction]
|
|
337
|
+
- File(s): `test/integration/[feature]_test.*`
|
|
338
|
+
- Expected: Tests FAIL (red) because integration doesn't exist yet
|
|
339
|
+
- Details: Test interaction between [list components]
|
|
340
|
+
|
|
341
|
+
**๐ข GREEN: Implement to Make Tests Pass**
|
|
342
|
+
- [ ] **Task 3.3**: Implement [component/module]
|
|
343
|
+
- File(s): `src/[layer]/[component].*`
|
|
344
|
+
- Goal: Make Test 3.1 pass with minimal code
|
|
345
|
+
- Details: [Implementation notes]
|
|
346
|
+
|
|
347
|
+
- [ ] **Task 3.4**: Implement [integration/glue code]
|
|
348
|
+
- File(s): `src/[layer]/[integration].*`
|
|
349
|
+
- Goal: Make Test 3.2 pass
|
|
350
|
+
- Details: [Implementation notes]
|
|
351
|
+
|
|
352
|
+
**๐ต REFACTOR: Clean Up Code**
|
|
353
|
+
- [ ] **Task 3.5**: Refactor for code quality
|
|
354
|
+
- Files: Review all new code in this phase
|
|
355
|
+
- Goal: Improve design without breaking tests
|
|
356
|
+
- Checklist:
|
|
357
|
+
- [ ] Remove duplication (DRY principle)
|
|
358
|
+
- [ ] Improve naming clarity
|
|
359
|
+
- [ ] Extract reusable components
|
|
360
|
+
- [ ] Add inline documentation
|
|
361
|
+
- [ ] Optimize performance if needed
|
|
362
|
+
|
|
363
|
+
#### Quality Gate โ
|
|
364
|
+
|
|
365
|
+
**โ ๏ธ STOP: Do NOT proceed until ALL checks pass**
|
|
366
|
+
|
|
367
|
+
**TDD Compliance** (CRITICAL):
|
|
368
|
+
- [ ] **Red Phase**: Tests were written FIRST and initially failed
|
|
369
|
+
- [ ] **Green Phase**: Production code written to make tests pass
|
|
370
|
+
- [ ] **Refactor Phase**: Code improved while tests still pass
|
|
371
|
+
- [ ] **Coverage Check**: Test coverage meets requirements
|
|
372
|
+
|
|
373
|
+
**Build & Tests**:
|
|
374
|
+
- [ ] **Build**: Project builds/compiles without errors
|
|
375
|
+
- [ ] **All Tests Pass**: 100% of tests passing (no skipped tests)
|
|
376
|
+
- [ ] **Test Performance**: Test suite completes in acceptable time
|
|
377
|
+
- [ ] **No Flaky Tests**: Tests pass consistently (run 3+ times)
|
|
378
|
+
|
|
379
|
+
**Code Quality**:
|
|
380
|
+
- [ ] **Linting**: No linting errors or warnings
|
|
381
|
+
- [ ] **Formatting**: Code formatted per project standards
|
|
382
|
+
- [ ] **Type Safety**: Type checker passes (if applicable)
|
|
383
|
+
- [ ] **Static Analysis**: No critical issues from static analysis tools
|
|
384
|
+
|
|
385
|
+
**Security & Performance**:
|
|
386
|
+
- [ ] **Dependencies**: No known security vulnerabilities
|
|
387
|
+
- [ ] **Performance**: No performance regressions
|
|
388
|
+
- [ ] **Memory**: No memory leaks or resource issues
|
|
389
|
+
- [ ] **Error Handling**: Proper error handling implemented
|
|
390
|
+
|
|
391
|
+
**Documentation**:
|
|
392
|
+
- [ ] **Code Comments**: Complex logic documented
|
|
393
|
+
- [ ] **API Docs**: Public interfaces documented
|
|
394
|
+
- [ ] **README**: Usage instructions updated if needed
|
|
395
|
+
|
|
396
|
+
**Manual Testing**:
|
|
397
|
+
- [ ] **Functionality**: Feature works as expected
|
|
398
|
+
- [ ] **Edge Cases**: Boundary conditions tested
|
|
399
|
+
- [ ] **Error States**: Error handling verified
|
|
400
|
+
|
|
401
|
+
**Validation Commands**:
|
|
402
|
+
```bash
|
|
403
|
+
[Same as previous phases - customize for your project]
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
**Manual Test Checklist**:
|
|
407
|
+
- [ ] Test case 1: [Specific scenario to verify]
|
|
408
|
+
- [ ] Test case 2: [Edge case to verify]
|
|
409
|
+
- [ ] Test case 3: [Error handling to verify]
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
## โ ๏ธ Risk Assessment
|
|
414
|
+
|
|
415
|
+
| Risk | Probability | Impact | Mitigation Strategy |
|
|
416
|
+
|------|-------------|--------|---------------------|
|
|
417
|
+
| [Risk 1: e.g., API changes break integration] | Low/Med/High | Low/Med/High | [Specific mitigation steps] |
|
|
418
|
+
| [Risk 2: e.g., Performance degradation] | Low/Med/High | Low/Med/High | [Specific mitigation steps] |
|
|
419
|
+
| [Risk 3: e.g., Database migration issues] | Low/Med/High | Low/Med/High | [Specific mitigation steps] |
|
|
420
|
+
|
|
421
|
+
---
|
|
422
|
+
|
|
423
|
+
## ๐ Rollback Strategy
|
|
424
|
+
|
|
425
|
+
### If Phase 1 Fails
|
|
426
|
+
**Steps to revert**:
|
|
427
|
+
- Undo code changes in: [list files]
|
|
428
|
+
- Restore configuration: [specific settings]
|
|
429
|
+
- Remove dependencies: [if any were added]
|
|
430
|
+
|
|
431
|
+
### If Phase 2 Fails
|
|
432
|
+
**Steps to revert**:
|
|
433
|
+
- Restore to Phase 1 complete state
|
|
434
|
+
- Undo changes in: [list files]
|
|
435
|
+
- Database rollback: [if applicable]
|
|
436
|
+
|
|
437
|
+
### If Phase 3 Fails
|
|
438
|
+
**Steps to revert**:
|
|
439
|
+
- Restore to Phase 2 complete state
|
|
440
|
+
- [Additional cleanup steps]
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
## ๐ Progress Tracking
|
|
445
|
+
|
|
446
|
+
### Completion Status
|
|
447
|
+
- **Phase 1**: โณ 0% | ๐ 50% | โ
100%
|
|
448
|
+
- **Phase 2**: โณ 0% | ๐ 50% | โ
100%
|
|
449
|
+
- **Phase 3**: โณ 0% | ๐ 50% | โ
100%
|
|
450
|
+
|
|
451
|
+
**Overall Progress**: X% complete
|
|
452
|
+
|
|
453
|
+
### Time Tracking
|
|
454
|
+
| Phase | Estimated | Actual | Variance |
|
|
455
|
+
|-------|-----------|--------|----------|
|
|
456
|
+
| Phase 1 | X hours | Y hours | +/- Z hours |
|
|
457
|
+
| Phase 2 | X hours | - | - |
|
|
458
|
+
| Phase 3 | X hours | - | - |
|
|
459
|
+
| **Total** | X hours | Y hours | +/- Z hours |
|
|
460
|
+
|
|
461
|
+
---
|
|
462
|
+
|
|
463
|
+
## ๐ Notes & Learnings
|
|
464
|
+
|
|
465
|
+
### Implementation Notes
|
|
466
|
+
- [Add insights discovered during implementation]
|
|
467
|
+
- [Document decisions that deviate from original plan]
|
|
468
|
+
- [Record helpful debugging discoveries]
|
|
469
|
+
|
|
470
|
+
### Blockers Encountered
|
|
471
|
+
- **Blocker 1**: [Description] โ [Resolution]
|
|
472
|
+
- **Blocker 2**: [Description] โ [Resolution]
|
|
473
|
+
|
|
474
|
+
### Improvements for Future Plans
|
|
475
|
+
- [What would you do differently next time?]
|
|
476
|
+
- [What worked particularly well?]
|
|
477
|
+
|
|
478
|
+
---
|
|
479
|
+
|
|
480
|
+
## ๐ References
|
|
481
|
+
|
|
482
|
+
### Documentation
|
|
483
|
+
- [Link to relevant docs]
|
|
484
|
+
- [Link to API references]
|
|
485
|
+
- [Link to design mockups]
|
|
486
|
+
|
|
487
|
+
### Related Issues
|
|
488
|
+
- Issue #X: [Description]
|
|
489
|
+
- PR #Y: [Description]
|
|
490
|
+
|
|
491
|
+
---
|
|
492
|
+
|
|
493
|
+
## โ
Final Checklist
|
|
494
|
+
|
|
495
|
+
**Before marking plan as COMPLETE**:
|
|
496
|
+
- [ ] All phases completed with quality gates passed
|
|
497
|
+
- [ ] Full integration testing performed
|
|
498
|
+
- [ ] Documentation updated
|
|
499
|
+
- [ ] Performance benchmarks meet targets
|
|
500
|
+
- [ ] Security review completed
|
|
501
|
+
- [ ] Accessibility requirements met (if UI feature)
|
|
502
|
+
- [ ] All stakeholders notified
|
|
503
|
+
- [ ] Plan document archived for future reference
|
|
504
|
+
|
|
505
|
+
---
|
|
506
|
+
|
|
507
|
+
## ๐ TDD Example Workflow
|
|
508
|
+
|
|
509
|
+
### Example: Adding User Authentication Feature
|
|
510
|
+
|
|
511
|
+
**Phase 1: RED (Write Failing Tests)**
|
|
512
|
+
|
|
513
|
+
```
|
|
514
|
+
# Pseudocode - adapt to your testing framework
|
|
515
|
+
|
|
516
|
+
test "should validate user credentials":
|
|
517
|
+
// Arrange
|
|
518
|
+
authService = new AuthService(mockDatabase)
|
|
519
|
+
validCredentials = {username: "user", password: "pass"}
|
|
520
|
+
|
|
521
|
+
// Act
|
|
522
|
+
result = authService.authenticate(validCredentials)
|
|
523
|
+
|
|
524
|
+
// Assert
|
|
525
|
+
expect(result.isSuccess).toBe(true)
|
|
526
|
+
expect(result.user).toBeDefined()
|
|
527
|
+
// TEST FAILS - AuthService doesn't exist yet
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
**Phase 2: GREEN (Minimal Implementation)**
|
|
531
|
+
|
|
532
|
+
```
|
|
533
|
+
class AuthService:
|
|
534
|
+
function authenticate(credentials):
|
|
535
|
+
// Minimal code to make test pass
|
|
536
|
+
user = database.findUser(credentials.username)
|
|
537
|
+
if user AND user.password == credentials.password:
|
|
538
|
+
return Success(user)
|
|
539
|
+
return Failure("Invalid credentials")
|
|
540
|
+
// TEST PASSES - minimal functionality works
|
|
541
|
+
```
|
|
542
|
+
|
|
543
|
+
**Phase 3: REFACTOR (Improve Design)**
|
|
544
|
+
|
|
545
|
+
```
|
|
546
|
+
class AuthService:
|
|
547
|
+
function authenticate(credentials):
|
|
548
|
+
// Add validation
|
|
549
|
+
if not this.validateCredentials(credentials):
|
|
550
|
+
return Failure("Invalid input")
|
|
551
|
+
|
|
552
|
+
// Add error handling
|
|
553
|
+
try:
|
|
554
|
+
user = database.findUser(credentials.username)
|
|
555
|
+
|
|
556
|
+
// Use secure password comparison
|
|
557
|
+
if user AND this.secureCompare(user.password, credentials.password):
|
|
558
|
+
return Success(user)
|
|
559
|
+
|
|
560
|
+
return Failure("Invalid credentials")
|
|
561
|
+
catch DatabaseError as error:
|
|
562
|
+
logger.error(error)
|
|
563
|
+
return Failure("Authentication failed")
|
|
564
|
+
// TESTS STILL PASS - improved code quality
|
|
565
|
+
```
|
|
566
|
+
|
|
567
|
+
### TDD Red-Green-Refactor Cycle Visualization
|
|
568
|
+
|
|
569
|
+
```
|
|
570
|
+
Phase 1: ๐ด RED
|
|
571
|
+
โโโ Write test for feature X
|
|
572
|
+
โโโ Run test โ FAILS โ
|
|
573
|
+
โโโ Commit: "Add failing test for X"
|
|
574
|
+
|
|
575
|
+
Phase 2: ๐ข GREEN
|
|
576
|
+
โโโ Write minimal code
|
|
577
|
+
โโโ Run test โ PASSES โ
|
|
578
|
+
โโโ Commit: "Implement X to pass tests"
|
|
579
|
+
|
|
580
|
+
Phase 3: ๐ต REFACTOR
|
|
581
|
+
โโโ Improve code quality
|
|
582
|
+
โโโ Run test โ STILL PASSES โ
|
|
583
|
+
โโโ Extract helper methods
|
|
584
|
+
โโโ Run test โ STILL PASSES โ
|
|
585
|
+
โโโ Improve naming
|
|
586
|
+
โโโ Run test โ STILL PASSES โ
|
|
587
|
+
โโโ Commit: "Refactor X for better design"
|
|
588
|
+
|
|
589
|
+
Repeat for next feature โ
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
### Benefits of This Approach
|
|
593
|
+
|
|
594
|
+
**Safety**: Tests catch regressions immediately
|
|
595
|
+
**Design**: Tests force you to think about API design first
|
|
596
|
+
**Documentation**: Tests document expected behavior
|
|
597
|
+
**Confidence**: Refactor without fear of breaking things
|
|
598
|
+
**Quality**: Higher code coverage from day one
|
|
599
|
+
**Debugging**: Failures point to exact problem area
|
|
600
|
+
|
|
601
|
+
---
|
|
602
|
+
|
|
603
|
+
**Plan Status**: ๐ In Progress
|
|
604
|
+
**Next Action**: [What needs to happen next]
|
|
605
|
+
**Blocked By**: [Any current blockers] or None
|