spets 0.1.10 → 0.1.11
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.
|
@@ -0,0 +1,435 @@
|
|
|
1
|
+
# Implementation: {{title}}
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
<!-- 2-3 sentences: What was built, how it works, what problem it solves -->
|
|
6
|
+
|
|
7
|
+
## Task Execution
|
|
8
|
+
|
|
9
|
+
<!-- Track each task from the plan with TDD cycle -->
|
|
10
|
+
|
|
11
|
+
### Task 1: [Task Name from Plan]
|
|
12
|
+
|
|
13
|
+
**Status:** ✅ Complete | ⏳ In Progress | ⏸️ Blocked
|
|
14
|
+
|
|
15
|
+
**TDD Cycle (if applicable):**
|
|
16
|
+
- [x] RED: Test written and fails for correct reason
|
|
17
|
+
- [x] GREEN: Implementation passes test
|
|
18
|
+
- [x] REFACTOR: Code cleaned up (if needed)
|
|
19
|
+
|
|
20
|
+
**Implementation:**
|
|
21
|
+
- File: `src/path/to/file.ts` (Created / Modified)
|
|
22
|
+
- Changes: [What was added/modified]
|
|
23
|
+
- Code reference: [Function/class/interface name or line numbers]
|
|
24
|
+
- Pattern followed: `src/reference/file.ts:123` - [What pattern]
|
|
25
|
+
|
|
26
|
+
**Verification Evidence:**
|
|
27
|
+
```bash
|
|
28
|
+
# Test verification
|
|
29
|
+
$ npm test src/path/to/test.ts
|
|
30
|
+
✓ Test suite passes (X tests)
|
|
31
|
+
|
|
32
|
+
# Lint verification
|
|
33
|
+
$ npm run lint src/path/to/file.ts
|
|
34
|
+
✓ No linting errors
|
|
35
|
+
|
|
36
|
+
# Type check
|
|
37
|
+
$ npm run typecheck
|
|
38
|
+
✓ No type errors
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
**Verification Checklist:**
|
|
42
|
+
- [x] Test fails with expected error (RED)
|
|
43
|
+
- [x] Implementation makes test pass (GREEN)
|
|
44
|
+
- [x] All verification commands from plan pass
|
|
45
|
+
- [x] Code follows existing patterns
|
|
46
|
+
- [x] No linting/type errors
|
|
47
|
+
- [x] Manual checks complete (if specified)
|
|
48
|
+
|
|
49
|
+
**Commit:** `feat: [commit message from plan]` - [commit hash or "committed"]
|
|
50
|
+
|
|
51
|
+
**Notes:** [Any important details or decisions made during this task]
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### Task 2: [Task Name from Plan]
|
|
56
|
+
|
|
57
|
+
**Status:** ✅ Complete | ⏳ In Progress | ⏸️ Blocked
|
|
58
|
+
|
|
59
|
+
**TDD Cycle (if applicable):**
|
|
60
|
+
- [x] RED: Test written and fails for correct reason
|
|
61
|
+
- [x] GREEN: Implementation passes test
|
|
62
|
+
- [x] REFACTOR: Code cleaned up (if needed)
|
|
63
|
+
|
|
64
|
+
**Implementation:**
|
|
65
|
+
- File: `src/path/to/file.ts` (Created / Modified)
|
|
66
|
+
- Changes: [What was added/modified]
|
|
67
|
+
- Code reference: [Function/class/interface name or line numbers]
|
|
68
|
+
- Pattern followed: `src/reference/file.ts:123` - [What pattern]
|
|
69
|
+
|
|
70
|
+
**Verification Evidence:**
|
|
71
|
+
```bash
|
|
72
|
+
# Commands run with actual output
|
|
73
|
+
$ [command from plan]
|
|
74
|
+
[actual output showing success]
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Verification Checklist:**
|
|
78
|
+
- [x] [Verification criterion 1 from plan]
|
|
79
|
+
- [x] [Verification criterion 2 from plan]
|
|
80
|
+
- [x] [Verification criterion 3 from plan]
|
|
81
|
+
- [x] Tests passing
|
|
82
|
+
- [x] No regressions
|
|
83
|
+
|
|
84
|
+
**Commit:** `[commit message]` - [commit hash]
|
|
85
|
+
|
|
86
|
+
**Notes:** [Any important details or decisions made during this task]
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
<!-- Add a section for each task from the plan -->
|
|
91
|
+
|
|
92
|
+
## Changes Made
|
|
93
|
+
|
|
94
|
+
### New Files Created
|
|
95
|
+
|
|
96
|
+
| File | Purpose | Lines of Code | Related Task |
|
|
97
|
+
|------|---------|--------------|--------------|
|
|
98
|
+
| `src/path/to/new-file.ts` | [What it does] | ~XX | Task #1 |
|
|
99
|
+
| `src/path/to/new-test.spec.ts` | [Test file for...] | ~XX | Task #2 |
|
|
100
|
+
|
|
101
|
+
### Modified Files
|
|
102
|
+
|
|
103
|
+
| File | What Changed | Lines Changed | Related Task |
|
|
104
|
+
|------|--------------|---------------|--------------|
|
|
105
|
+
| `src/path/to/file.ts` | [Description of changes] | +XX -YY | Task #3 |
|
|
106
|
+
| `src/path/to/other.ts` | [Description of changes] | +XX -YY | Task #4 |
|
|
107
|
+
|
|
108
|
+
### Files Summary
|
|
109
|
+
|
|
110
|
+
- **Total new files:** X
|
|
111
|
+
- **Total modified files:** Y
|
|
112
|
+
- **Total lines added:** ~XXX
|
|
113
|
+
- **Total lines removed:** ~YYY
|
|
114
|
+
|
|
115
|
+
## Key Decisions
|
|
116
|
+
|
|
117
|
+
<!-- Document important decisions made during implementation -->
|
|
118
|
+
|
|
119
|
+
### Decision 1: [Decision Name]
|
|
120
|
+
|
|
121
|
+
**Context:** [Why this decision was needed]
|
|
122
|
+
|
|
123
|
+
**Chosen Approach:** [What was decided]
|
|
124
|
+
|
|
125
|
+
**Rationale:** [Why this approach]
|
|
126
|
+
|
|
127
|
+
**Alternatives Considered:** [Other options and why not chosen]
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
### Decision 2: [Decision Name]
|
|
132
|
+
|
|
133
|
+
**Context:** [Why this decision was needed]
|
|
134
|
+
|
|
135
|
+
**Chosen Approach:** [What was decided]
|
|
136
|
+
|
|
137
|
+
**Rationale:** [Why this approach]
|
|
138
|
+
|
|
139
|
+
**Alternatives Considered:** [Other options and why not chosen]
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Deviations from Plan
|
|
144
|
+
|
|
145
|
+
<!-- ONLY include if there were deviations. Otherwise, write "None - plan was followed exactly." -->
|
|
146
|
+
|
|
147
|
+
### Deviation 1: [What deviated]
|
|
148
|
+
|
|
149
|
+
**Original Plan:** [What the plan specified]
|
|
150
|
+
|
|
151
|
+
**What Was Done Instead:** [Actual implementation]
|
|
152
|
+
|
|
153
|
+
**Justification:** [Why deviation was necessary]
|
|
154
|
+
|
|
155
|
+
**Impact:** [How this affects the feature]
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
**OR if no deviations:**
|
|
160
|
+
|
|
161
|
+
None - the plan was followed exactly as specified.
|
|
162
|
+
|
|
163
|
+
## Testing
|
|
164
|
+
|
|
165
|
+
### Test Suite Results
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
# Full test suite
|
|
169
|
+
$ npm test
|
|
170
|
+
✓ XX tests passing
|
|
171
|
+
✗ 0 tests failing
|
|
172
|
+
Test Suites: X passed, X total
|
|
173
|
+
Tests: XX passed, XX total
|
|
174
|
+
Time: X.XXs
|
|
175
|
+
|
|
176
|
+
# Coverage report
|
|
177
|
+
$ npm test -- --coverage
|
|
178
|
+
Coverage: XX%
|
|
179
|
+
Statements: XX% (XX/XX)
|
|
180
|
+
Branches: XX% (XX/XX)
|
|
181
|
+
Functions: XX% (XX/XX)
|
|
182
|
+
Lines: XX% (XX/XX)
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Unit Tests
|
|
186
|
+
|
|
187
|
+
| Test File | Tests Added | Test Cases | Status |
|
|
188
|
+
|-----------|-------------|------------|--------|
|
|
189
|
+
| `src/**/*.test.ts` | X tests | Happy path, edge cases, errors | ✅ All pass |
|
|
190
|
+
| `src/**/*.spec.ts` | X tests | [Specific scenarios] | ✅ All pass |
|
|
191
|
+
|
|
192
|
+
**TDD Evidence for Each Test:**
|
|
193
|
+
```bash
|
|
194
|
+
# Test 1: [Test name]
|
|
195
|
+
# RED phase - test fails as expected
|
|
196
|
+
$ npm test src/path/test.ts
|
|
197
|
+
✗ [Test name] - function not defined (expected failure)
|
|
198
|
+
|
|
199
|
+
# GREEN phase - test passes after implementation
|
|
200
|
+
$ npm test src/path/test.ts
|
|
201
|
+
✓ [Test name] - passes
|
|
202
|
+
|
|
203
|
+
# Verify no regressions
|
|
204
|
+
$ npm test
|
|
205
|
+
✓ All tests pass
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
**Test Coverage Checklist:**
|
|
209
|
+
- [x] Happy path tested with specific scenarios
|
|
210
|
+
- [x] Edge cases tested: [list specific edge cases]
|
|
211
|
+
- [x] Error cases tested: [list specific error cases]
|
|
212
|
+
- [x] All new code covered (≥XX% coverage)
|
|
213
|
+
- [x] No flaky tests (ran 3+ times, consistent results)
|
|
214
|
+
|
|
215
|
+
### Integration Tests
|
|
216
|
+
|
|
217
|
+
| Test | Command | Status | Evidence |
|
|
218
|
+
|------|---------|--------|----------|
|
|
219
|
+
| [Test name] | `npm test -- integration` | ✅ Pass | [Output snippet] |
|
|
220
|
+
| [Test name] | `npm test -- e2e` | ✅ Pass | [Output snippet] |
|
|
221
|
+
|
|
222
|
+
**Integration Test Evidence:**
|
|
223
|
+
```bash
|
|
224
|
+
$ npm test -- integration
|
|
225
|
+
✓ Integration test 1: [scenario]
|
|
226
|
+
✓ Integration test 2: [scenario]
|
|
227
|
+
All integration tests pass
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### Manual Testing Checklist
|
|
231
|
+
|
|
232
|
+
<!-- From the plan's acceptance criteria -->
|
|
233
|
+
|
|
234
|
+
**Setup:**
|
|
235
|
+
- [x] Environment: Development / Staging
|
|
236
|
+
- [x] Command: `npm run dev` or [specific command]
|
|
237
|
+
|
|
238
|
+
**Test Scenarios:**
|
|
239
|
+
- [x] [Manual check 1 from plan] - Result: [Expected outcome achieved]
|
|
240
|
+
- [x] [Manual check 2 from plan] - Result: [Expected outcome achieved]
|
|
241
|
+
- [x] [Manual check 3 from plan] - Result: [Expected outcome achieved]
|
|
242
|
+
- [x] No console errors or warnings
|
|
243
|
+
- [x] No network errors in browser dev tools
|
|
244
|
+
- [x] Works in [relevant environment/browser]
|
|
245
|
+
|
|
246
|
+
### Evidence
|
|
247
|
+
|
|
248
|
+
<!-- Screenshots, logs, or other proof of testing -->
|
|
249
|
+
|
|
250
|
+
**Test Output:**
|
|
251
|
+
```bash
|
|
252
|
+
[Paste complete test output showing all tests passing]
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
**Manual Test Screenshot/Log:**
|
|
256
|
+
```
|
|
257
|
+
[Paste evidence of manual testing - browser console clean, feature working]
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
**Performance/Load Test (if applicable):**
|
|
261
|
+
```
|
|
262
|
+
[Paste performance metrics if relevant]
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
## Acceptance Criteria Verification
|
|
266
|
+
|
|
267
|
+
<!-- Go through EVERY criterion from the plan with evidence -->
|
|
268
|
+
|
|
269
|
+
### Implementation Complete
|
|
270
|
+
- [x] All tasks completed as specified (Tasks 1-X all marked complete)
|
|
271
|
+
- [x] All files created/modified as planned (see "Files Modified" table)
|
|
272
|
+
- [x] All verification commands pass (evidence in each task section)
|
|
273
|
+
- [x] Code committed with proper messages (all commits listed)
|
|
274
|
+
|
|
275
|
+
### Tests Passing (with Evidence)
|
|
276
|
+
```bash
|
|
277
|
+
# Full test suite
|
|
278
|
+
$ npm test
|
|
279
|
+
✓ All tests pass (XX passing, 0 failing)
|
|
280
|
+
|
|
281
|
+
# Integration tests
|
|
282
|
+
$ npm test -- integration
|
|
283
|
+
✓ All integration tests pass
|
|
284
|
+
|
|
285
|
+
# Coverage
|
|
286
|
+
$ npm test -- --coverage
|
|
287
|
+
✓ Coverage ≥XX% for new code
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
- [x] All unit tests passing (evidence above)
|
|
291
|
+
- [x] All integration tests passing (evidence above)
|
|
292
|
+
- [x] Test coverage ≥[X%] for new code (evidence above)
|
|
293
|
+
- [x] No flaky tests (ran multiple times, consistent)
|
|
294
|
+
|
|
295
|
+
### Code Quality (with Evidence)
|
|
296
|
+
```bash
|
|
297
|
+
# Lint check
|
|
298
|
+
$ npm run lint
|
|
299
|
+
✓ No linting errors
|
|
300
|
+
|
|
301
|
+
# Type check
|
|
302
|
+
$ npm run typecheck
|
|
303
|
+
✓ No type errors
|
|
304
|
+
|
|
305
|
+
# Build check
|
|
306
|
+
$ npm run build
|
|
307
|
+
✓ Build successful
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
- [x] No linting errors (evidence above)
|
|
311
|
+
- [x] No type errors (evidence above)
|
|
312
|
+
- [x] Build succeeds (evidence above)
|
|
313
|
+
- [x] Code follows existing patterns (references checked)
|
|
314
|
+
- [x] No commented-out code
|
|
315
|
+
- [x] No debug console.logs
|
|
316
|
+
|
|
317
|
+
### Functionality
|
|
318
|
+
- [x] Manual verification checklist complete (see Manual Testing section)
|
|
319
|
+
- [x] Happy path works as expected
|
|
320
|
+
- [x] Edge cases handled appropriately (list: [cases])
|
|
321
|
+
- [x] Error cases show proper error messages (list: [cases])
|
|
322
|
+
- [x] No console errors or warnings
|
|
323
|
+
|
|
324
|
+
### Non-Regression
|
|
325
|
+
- [x] Existing tests still pass (full suite run, all pass)
|
|
326
|
+
- [x] No breaking changes to public APIs
|
|
327
|
+
- [x] Existing features unaffected (spot-checked: [features])
|
|
328
|
+
|
|
329
|
+
**Status:** ✅ All criteria met | ⚠️ [X criteria pending] - [Details]
|
|
330
|
+
|
|
331
|
+
**Pending Items (if any):**
|
|
332
|
+
- [ ] [Item 1] - Reason: [Why pending] - Plan: [How to resolve]
|
|
333
|
+
|
|
334
|
+
## Quality Assurance
|
|
335
|
+
|
|
336
|
+
### Code Quality
|
|
337
|
+
|
|
338
|
+
- [x] Follows existing code style and conventions
|
|
339
|
+
- [x] No unnecessary complexity
|
|
340
|
+
- [x] Clear and consistent naming
|
|
341
|
+
- [x] No commented-out code
|
|
342
|
+
- [x] No debug statements
|
|
343
|
+
- [x] Imports organized
|
|
344
|
+
|
|
345
|
+
### Pattern Consistency
|
|
346
|
+
|
|
347
|
+
- [x] Uses same testing library as existing code
|
|
348
|
+
- [x] Follows same file structure
|
|
349
|
+
- [x] Matches existing error handling
|
|
350
|
+
- [x] Consistent with existing patterns
|
|
351
|
+
- [x] No new patterns introduced unnecessarily
|
|
352
|
+
|
|
353
|
+
### Build & Lint
|
|
354
|
+
|
|
355
|
+
```bash
|
|
356
|
+
# Build command
|
|
357
|
+
npm run build
|
|
358
|
+
✓ Build successful
|
|
359
|
+
|
|
360
|
+
# Lint command
|
|
361
|
+
npm run lint
|
|
362
|
+
✓ No linting errors
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
## Performance Impact
|
|
366
|
+
|
|
367
|
+
<!-- If applicable, describe any performance considerations -->
|
|
368
|
+
|
|
369
|
+
- No significant performance impact / [Description of impact]
|
|
370
|
+
- Performance testing: [Results if applicable]
|
|
371
|
+
|
|
372
|
+
## Breaking Changes
|
|
373
|
+
|
|
374
|
+
<!-- IMPORTANT: Document any breaking changes -->
|
|
375
|
+
|
|
376
|
+
None / [List breaking changes and migration instructions]
|
|
377
|
+
|
|
378
|
+
## Known Issues / Limitations
|
|
379
|
+
|
|
380
|
+
<!-- Any known issues or limitations -->
|
|
381
|
+
|
|
382
|
+
None / [List any known issues that are acceptable]
|
|
383
|
+
|
|
384
|
+
## Next Steps
|
|
385
|
+
|
|
386
|
+
<!-- Future work, follow-ups, or improvements -->
|
|
387
|
+
|
|
388
|
+
### Immediate Follow-ups
|
|
389
|
+
|
|
390
|
+
- [ ] [Follow-up task 1]
|
|
391
|
+
- [ ] [Follow-up task 2]
|
|
392
|
+
|
|
393
|
+
### Future Enhancements
|
|
394
|
+
|
|
395
|
+
- [Enhancement 1]
|
|
396
|
+
- [Enhancement 2]
|
|
397
|
+
|
|
398
|
+
## Documentation Updates
|
|
399
|
+
|
|
400
|
+
<!-- Any documentation that was updated or needs updating -->
|
|
401
|
+
|
|
402
|
+
- [x] Code comments added where needed
|
|
403
|
+
- [x] / [ ] README updated
|
|
404
|
+
- [x] / [ ] API documentation updated
|
|
405
|
+
- [x] / [ ] User guide updated
|
|
406
|
+
- N/A / [Other documentation]
|
|
407
|
+
|
|
408
|
+
## Deployment Notes
|
|
409
|
+
|
|
410
|
+
<!-- Any special considerations for deployment -->
|
|
411
|
+
|
|
412
|
+
- Environment variables needed: [List or "None"]
|
|
413
|
+
- Database migrations: [Yes/No - details if yes]
|
|
414
|
+
- Configuration changes: [List or "None"]
|
|
415
|
+
- Dependencies added: [List new dependencies]
|
|
416
|
+
|
|
417
|
+
## Summary for Review
|
|
418
|
+
|
|
419
|
+
<!-- Concise summary for code reviewer -->
|
|
420
|
+
|
|
421
|
+
**What:** [One sentence describing the change]
|
|
422
|
+
|
|
423
|
+
**Why:** [One sentence on why it was needed]
|
|
424
|
+
|
|
425
|
+
**How:** [One sentence on approach taken]
|
|
426
|
+
|
|
427
|
+
**Testing:** [One sentence on how it was verified]
|
|
428
|
+
|
|
429
|
+
**Risk Level:** Low / Medium / High
|
|
430
|
+
|
|
431
|
+
---
|
|
432
|
+
|
|
433
|
+
**Implementation completed:** [Date]
|
|
434
|
+
|
|
435
|
+
**Ready for:** Code Review / Merge / Deployment
|