@comfanion/workflow 4.0.0 → 4.1.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.
package/package.json
CHANGED
package/src/build-info.json
CHANGED
package/src/opencode/config.yaml
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
# PROJECT CONFIGURATION
|
|
7
7
|
# =============================================================================
|
|
8
8
|
project_name: "ai-wf"
|
|
9
|
-
version: "4.
|
|
9
|
+
version: "4.1.1"
|
|
10
10
|
|
|
11
11
|
# =============================================================================
|
|
12
12
|
# USER CONFIGURATION
|
|
@@ -18,44 +18,57 @@ Use this skill when you need to:
|
|
|
18
18
|
- Define epic-level acceptance criteria
|
|
19
19
|
- Track PRD coverage
|
|
20
20
|
|
|
21
|
-
## MANDATORY:
|
|
21
|
+
## MANDATORY: Read Before Writing Epic
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
**⚠️ STOP! Before writing ANY epic, execute these steps:**
|
|
24
24
|
|
|
25
|
-
### 1
|
|
26
|
-
```
|
|
27
|
-
Search and read in order:
|
|
28
|
-
1. CLAUDE.md (root) - Project patterns, conventions, tech stack
|
|
29
|
-
2. docs/architecture.md - System architecture, module boundaries
|
|
30
|
-
3. docs/architecture/[module]/ - Module-specific documentation
|
|
31
|
-
```
|
|
25
|
+
### Step 1: Find and Read Project Standards
|
|
32
26
|
|
|
33
|
-
|
|
27
|
+
```bash
|
|
28
|
+
# Execute these Glob searches:
|
|
29
|
+
Glob "**/AGENTS.md" OR "**/CLAUDE.md" # → Read the file found
|
|
30
|
+
Glob "**/docs/architecture.md" # → Read system architecture
|
|
31
|
+
Glob "**/coding-standards/**/*.md" # → Read ALL coding standards
|
|
34
32
|
```
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
|
|
34
|
+
**You MUST read these files before writing epic!**
|
|
35
|
+
|
|
36
|
+
### Step 2: Find and Read Module Documentation
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# For the module this epic covers (e.g., "catalog"):
|
|
40
|
+
Glob "**/docs/**/catalog/**/*.md" # → Read ALL module docs
|
|
41
|
+
Glob "**/catalog-data-model*.md" # → Read data model
|
|
42
|
+
Glob "**/catalog-architecture*.md" # → Read module architecture
|
|
41
43
|
```
|
|
42
44
|
|
|
43
|
-
### 3
|
|
45
|
+
### Step 3: Find and Read PRD
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
Glob "**/prd.md" # → Read PRD for FR-XXX references
|
|
49
|
+
Glob "**/requirements/*.md" # → Read detailed requirements if exist
|
|
44
50
|
```
|
|
45
|
-
|
|
46
|
-
|
|
51
|
+
|
|
52
|
+
### Step 4: Find Existing Code Patterns (for technical notes)
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Find existing code to reference in Technical Notes:
|
|
56
|
+
Glob "**/src/services/[module]/modules/*/domain/**/*.go" # → Domain patterns
|
|
57
|
+
Glob "**/src/services/[module]/modules/*/application/**/*.go" # → Use case patterns
|
|
47
58
|
```
|
|
48
59
|
|
|
49
60
|
### Pre-Epic Checklist
|
|
50
61
|
|
|
51
|
-
Before writing epic, confirm you
|
|
52
|
-
- [ ] CLAUDE.md
|
|
53
|
-
- [ ]
|
|
54
|
-
- [ ]
|
|
55
|
-
- [ ]
|
|
62
|
+
Before writing epic, confirm you executed:
|
|
63
|
+
- [ ] **Glob + Read** AGENTS.md/CLAUDE.md
|
|
64
|
+
- [ ] **Glob + Read** docs/architecture.md
|
|
65
|
+
- [ ] **Glob + Read** coding-standards/*.md (ALL files)
|
|
66
|
+
- [ ] **Glob + Read** module documentation (architecture, data-model)
|
|
67
|
+
- [ ] **Glob + Read** PRD for requirements
|
|
68
|
+
- [ ] **Glob** existing code patterns (for Technical Notes section)
|
|
56
69
|
|
|
57
|
-
|
|
58
|
-
**Epic
|
|
70
|
+
**⛔ DO NOT WRITE EPIC WITHOUT COMPLETING ALL STEPS ABOVE!**
|
|
71
|
+
**Epic without proper architecture references = REJECTED.**
|
|
59
72
|
|
|
60
73
|
---
|
|
61
74
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: story-writing
|
|
3
|
-
description: How to write
|
|
3
|
+
description: How to write stories as execution plans with self-contained tasks
|
|
4
4
|
license: MIT
|
|
5
5
|
compatibility: opencode
|
|
6
6
|
metadata:
|
|
@@ -18,42 +18,57 @@ Use this skill when you need to:
|
|
|
18
18
|
- Define technical implementation tasks
|
|
19
19
|
- Specify test scenarios
|
|
20
20
|
|
|
21
|
-
## MANDATORY:
|
|
21
|
+
## MANDATORY: Read Before Writing Tasks
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
**⚠️ STOP! Before writing ANY task, execute these steps:**
|
|
24
24
|
|
|
25
|
-
### 1
|
|
26
|
-
```
|
|
27
|
-
Search and read in order:
|
|
28
|
-
1. CLAUDE.md (root) - Project patterns, code style, conventions
|
|
29
|
-
2. docs/coding-standards/ - Detailed coding standards
|
|
30
|
-
3. docs/coding-standards/testing-standards.md - Test patterns
|
|
31
|
-
```
|
|
25
|
+
### Step 1: Find and Read Coding Standards
|
|
32
26
|
|
|
33
|
-
|
|
27
|
+
```bash
|
|
28
|
+
# Execute these Glob searches:
|
|
29
|
+
Glob "**/AGENTS.md" OR "**/CLAUDE.md" # → Read the file found
|
|
30
|
+
Glob "**/coding-standards/**/*.md" # → Read ALL files found
|
|
31
|
+
Glob "**/testing-standards*.md" # → Read if exists
|
|
34
32
|
```
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
|
|
34
|
+
**You MUST read these files before writing tasks!**
|
|
35
|
+
|
|
36
|
+
### Step 2: Find and Read Module Architecture
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# For the module this story covers (e.g., "catalog"):
|
|
40
|
+
Glob "**/docs/**/catalog/**/*.md" # → Read architecture docs
|
|
41
|
+
Glob "**/catalog-data-model*.md" # → Read data model
|
|
39
42
|
```
|
|
40
43
|
|
|
41
|
-
### 3
|
|
44
|
+
### Step 3: Find and Read Existing Code Patterns
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
# Find existing code to use as patterns:
|
|
48
|
+
Glob "**/src/services/[module]/modules/*/domain/entity/*.go" # → Example entities
|
|
49
|
+
Glob "**/src/services/[module]/modules/*/domain/valueobject/*.go" # → Example VOs
|
|
50
|
+
Glob "**/src/services/[module]/modules/*/application/usecase/*" # → Example use cases
|
|
42
51
|
```
|
|
43
|
-
|
|
44
|
-
2
|
|
52
|
+
|
|
53
|
+
**Pick 1-2 existing files as patterns for Documentation links in tasks.**
|
|
54
|
+
|
|
55
|
+
### Step 4: Read Parent Epic
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
Glob "**/epic-[NN]*.md" # → Find and read the epic
|
|
45
59
|
```
|
|
46
60
|
|
|
47
61
|
### Pre-Story Checklist
|
|
48
62
|
|
|
49
|
-
Before writing
|
|
50
|
-
- [ ] CLAUDE.md
|
|
51
|
-
- [ ]
|
|
52
|
-
- [ ]
|
|
53
|
-
- [ ]
|
|
63
|
+
Before writing tasks, confirm you executed:
|
|
64
|
+
- [ ] **Glob + Read** AGENTS.md/CLAUDE.md
|
|
65
|
+
- [ ] **Glob + Read** coding-standards/*.md (ALL files)
|
|
66
|
+
- [ ] **Glob + Read** module architecture and data-model
|
|
67
|
+
- [ ] **Glob + Read** existing code patterns (at least 2 files)
|
|
68
|
+
- [ ] **Read** parent epic
|
|
54
69
|
|
|
55
|
-
|
|
56
|
-
**Tasks
|
|
70
|
+
**⛔ DO NOT WRITE TASKS WITHOUT COMPLETING ALL STEPS ABOVE!**
|
|
71
|
+
**Tasks without proper Documentation links = REJECTED.**
|
|
57
72
|
|
|
58
73
|
### Task File Paths
|
|
59
74
|
|
|
@@ -85,7 +100,9 @@ Use template at: `@.opencode/templates/story-template.md`
|
|
|
85
100
|
|
|
86
101
|
## Story Structure
|
|
87
102
|
|
|
88
|
-
|
|
103
|
+
**Philosophy:** Story = execution plan. Tasks are the main content, not ceremony.
|
|
104
|
+
|
|
105
|
+
### Header (Minimal)
|
|
89
106
|
|
|
90
107
|
```markdown
|
|
91
108
|
# Story N.M: [Title]
|
|
@@ -93,31 +110,44 @@ Use template at: `@.opencode/templates/story-template.md`
|
|
|
93
110
|
**Story ID:** [MODULE]-S[EPIC]-[NN]
|
|
94
111
|
**Epic:** [MODULE]-E[EPIC] - [Epic Title]
|
|
95
112
|
**Status:** draft | ready-for-dev | in-progress | review | done
|
|
96
|
-
**Priority:** P0 | P1 | P2
|
|
97
113
|
**Size:** XS | S | M | L | XL
|
|
98
114
|
```
|
|
99
115
|
|
|
100
|
-
|
|
116
|
+
### Goal (1-2 sentences)
|
|
117
|
+
|
|
118
|
+
```markdown
|
|
119
|
+
## Goal
|
|
120
|
+
|
|
121
|
+
Implement CRUD use cases for merchant products with validation and event publishing.
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**NOT** the verbose "As a... I want... So that..." format. Just state what the story achieves.
|
|
101
125
|
|
|
102
|
-
###
|
|
126
|
+
### Acceptance Criteria (Brief List)
|
|
103
127
|
|
|
104
128
|
```markdown
|
|
105
|
-
##
|
|
129
|
+
## Acceptance Criteria
|
|
106
130
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
131
|
+
- [ ] Products can be created with EAN validation
|
|
132
|
+
- [ ] Products can be retrieved by ID
|
|
133
|
+
- [ ] Products can be updated with optimistic locking
|
|
134
|
+
- [ ] Products can be listed with filters and pagination
|
|
135
|
+
- [ ] All operations publish domain events
|
|
110
136
|
```
|
|
111
137
|
|
|
112
|
-
|
|
138
|
+
**NOT** detailed Given/When/Then for each. Just a checklist of what "done" looks like.
|
|
139
|
+
|
|
140
|
+
### Tasks (MAIN CONTENT - 80% of file)
|
|
141
|
+
|
|
142
|
+
Self-contained tasks with documentation links. See Task Structure below.
|
|
143
|
+
|
|
144
|
+
### Sections (Simplified)
|
|
113
145
|
|
|
114
|
-
1. **
|
|
115
|
-
2. **
|
|
116
|
-
3. **
|
|
117
|
-
4. **
|
|
118
|
-
5. **
|
|
119
|
-
6. **Test Scenarios** - Unit and integration tests
|
|
120
|
-
7. **Notes** - Additional context
|
|
146
|
+
1. **Header** - Minimal metadata
|
|
147
|
+
2. **Goal** - 1-2 sentences
|
|
148
|
+
3. **Acceptance Criteria** - Brief checklist
|
|
149
|
+
4. **Tasks** - MAIN CONTENT (80% of file)
|
|
150
|
+
5. **Notes** - Optional additional context
|
|
121
151
|
|
|
122
152
|
## Naming Conventions
|
|
123
153
|
|
|
@@ -143,52 +173,6 @@ Examples:
|
|
|
143
173
|
- INVENTORY-S10-01
|
|
144
174
|
```
|
|
145
175
|
|
|
146
|
-
## Acceptance Criteria (MANDATORY)
|
|
147
|
-
|
|
148
|
-
Use skill: `acceptance-criteria`
|
|
149
|
-
|
|
150
|
-
### Format: Given/When/Then
|
|
151
|
-
|
|
152
|
-
```markdown
|
|
153
|
-
## Acceptance Criteria
|
|
154
|
-
|
|
155
|
-
### AC1: Create product with valid data
|
|
156
|
-
|
|
157
|
-
**Given** authenticated merchant with "product:create" permission
|
|
158
|
-
**When** POST /api/v1/products with:
|
|
159
|
-
- name: "Test Product"
|
|
160
|
-
- price: 100.00
|
|
161
|
-
- currency: "UAH"
|
|
162
|
-
**Then** 201 Created returned
|
|
163
|
-
**And** response contains product with generated UUID
|
|
164
|
-
**And** product status is "pending"
|
|
165
|
-
**And** "product.created" event published to Kafka
|
|
166
|
-
|
|
167
|
-
### AC2: Reject invalid product data
|
|
168
|
-
|
|
169
|
-
**Given** authenticated merchant
|
|
170
|
-
**When** POST /api/v1/products with missing required field "name"
|
|
171
|
-
**Then** 400 Bad Request returned
|
|
172
|
-
**And** error response contains:
|
|
173
|
-
- field: "name"
|
|
174
|
-
- message: "name is required"
|
|
175
|
-
**And** no product is created in database
|
|
176
|
-
|
|
177
|
-
### AC3: Unauthorized access rejected
|
|
178
|
-
|
|
179
|
-
**Given** user without "product:create" permission
|
|
180
|
-
**When** POST /api/v1/products
|
|
181
|
-
**Then** 403 Forbidden returned
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### AC Coverage
|
|
185
|
-
|
|
186
|
-
Each story should have:
|
|
187
|
-
- **Happy path** - At least 1 success scenario
|
|
188
|
-
- **Validation errors** - Invalid input handling
|
|
189
|
-
- **Authorization** - Permission checks
|
|
190
|
-
- **Edge cases** - Boundary conditions
|
|
191
|
-
|
|
192
176
|
## Self-Contained Tasks (NO ESTIMATES)
|
|
193
177
|
|
|
194
178
|
### Task Philosophy
|
|
@@ -550,13 +534,11 @@ Add to each story:
|
|
|
550
534
|
|
|
551
535
|
Before completing story:
|
|
552
536
|
- [ ] Story ID is unique
|
|
553
|
-
- [ ]
|
|
554
|
-
- [ ]
|
|
555
|
-
- [ ]
|
|
556
|
-
- [ ]
|
|
557
|
-
- [ ] **TODO placeholders defined for future work**
|
|
537
|
+
- [ ] Goal is clear (1-2 sentences)
|
|
538
|
+
- [ ] Acceptance criteria as checklist (what "done" looks like)
|
|
539
|
+
- [ ] Tasks are self-contained with documentation links
|
|
540
|
+
- [ ] Each task has: Goal, Documentation, Input, Output, Steps, AC
|
|
558
541
|
- [ ] Definition of Done is complete
|
|
559
|
-
- [ ] Estimate is reasonable
|
|
560
542
|
- [ ] Links to epic are correct
|
|
561
543
|
|
|
562
544
|
## Output
|
|
@@ -8,55 +8,39 @@ workflowType: 'story'
|
|
|
8
8
|
|
|
9
9
|
**Story ID:** {{module}}-S{{epic_number}}-{{story_number}}
|
|
10
10
|
**Epic:** {{module}}-E{{epic_number}} - {{epic_title}}
|
|
11
|
-
**Status:** draft | ready-for-dev | in-progress | review | done
|
|
12
|
-
**Priority:** P0 | P1 | P2
|
|
11
|
+
**Status:** draft | ready-for-dev | in-progress | review | done
|
|
13
12
|
**Size:** XS | S | M | L | XL
|
|
14
|
-
**Created:** {{date}}
|
|
15
|
-
**Last Updated:** {{date}}
|
|
16
13
|
|
|
17
14
|
---
|
|
18
15
|
|
|
19
|
-
##
|
|
16
|
+
## Prerequisites (PM reads before writing tasks)
|
|
20
17
|
|
|
21
|
-
|
|
22
|
-
**I want** {{capability}},
|
|
23
|
-
**So that** {{benefit}}.
|
|
18
|
+
<!-- ⚠️ MANDATORY: Read these docs before writing tasks! -->
|
|
24
19
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
20
|
+
- [ ] `AGENTS.md` / `CLAUDE.md` - coding patterns, naming, error handling
|
|
21
|
+
- [ ] `docs/coding-standards/` - detailed coding standards
|
|
22
|
+
- [ ] `docs/architecture/{{module}}/` - module architecture, data model
|
|
23
|
+
- [ ] Existing code in `src/services/{{module}}/` - patterns to follow
|
|
28
24
|
|
|
29
|
-
|
|
25
|
+
---
|
|
30
26
|
|
|
31
|
-
|
|
32
|
-
**When** {{action}}
|
|
33
|
-
**Then** {{expected_result}}
|
|
34
|
-
**And** {{additional_check}}
|
|
27
|
+
## Goal
|
|
35
28
|
|
|
36
|
-
|
|
29
|
+
{{Short description - 1-2 sentences. What this story achieves. Same as in epic's stories table.}}
|
|
37
30
|
|
|
38
|
-
|
|
39
|
-
**When** {{action}}
|
|
40
|
-
**Then** {{expected_result}}
|
|
31
|
+
---
|
|
41
32
|
|
|
42
|
-
|
|
33
|
+
## Acceptance Criteria
|
|
43
34
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
35
|
+
- [ ] {{criterion_1}}
|
|
36
|
+
- [ ] {{criterion_2}}
|
|
37
|
+
- [ ] {{criterion_3}}
|
|
38
|
+
- [ ] All tests pass
|
|
39
|
+
- [ ] No linting errors
|
|
47
40
|
|
|
48
41
|
---
|
|
49
42
|
|
|
50
|
-
##
|
|
51
|
-
|
|
52
|
-
<!--
|
|
53
|
-
Each task MUST be self-contained:
|
|
54
|
-
- Agent can execute WITHOUT asking questions
|
|
55
|
-
- All documentation links provided
|
|
56
|
-
- Clear input/output/acceptance criteria
|
|
57
|
-
-->
|
|
58
|
-
|
|
59
|
-
### Tasks Summary
|
|
43
|
+
## Tasks
|
|
60
44
|
|
|
61
45
|
| ID | Task | Deps | Status |
|
|
62
46
|
|----|------|------|--------|
|
|
@@ -156,230 +140,38 @@ Each task MUST be self-contained:
|
|
|
156
140
|
|
|
157
141
|
---
|
|
158
142
|
|
|
159
|
-
##
|
|
160
|
-
|
|
161
|
-
<!--
|
|
162
|
-
When implementing, leave TODO comments for:
|
|
163
|
-
- Next tasks in this story
|
|
164
|
-
- Future stories/epics
|
|
165
|
-
- Technical debt
|
|
166
|
-
- Planned improvements
|
|
167
|
-
|
|
168
|
-
Format: TODO({TYPE}:{ID}): {description}
|
|
169
|
-
-->
|
|
170
|
-
|
|
171
|
-
### TODOs to Create During Implementation
|
|
172
|
-
|
|
173
|
-
| Location | TODO | Type | Reference |
|
|
174
|
-
|----------|------|------|-----------|
|
|
175
|
-
| `src/domain/{{entity}}` | Add validation for X | TASK | T3 |
|
|
176
|
-
| `src/application/{{usecase}}` | Add caching | STORY | S{{epic}}-04 |
|
|
177
|
-
| `src/infrastructure/repo/` | Add batch operations | EPIC | E{{next_epic}} |
|
|
178
|
-
| `src/api/` | Add rate limiting | BACKLOG | - |
|
|
179
|
-
|
|
180
|
-
### TODO Format Reference (IDE-compatible)
|
|
181
|
-
|
|
182
|
-
```go
|
|
183
|
-
// TODO(TASK:T3): Implement validation logic here
|
|
184
|
-
// Called from: T2 implementation
|
|
185
|
-
// Blocked until: T3 starts
|
|
186
|
-
|
|
187
|
-
// TODO(STORY:{{module}}-S05-04): Add pagination support
|
|
188
|
-
// This story implements basic list, pagination in next story
|
|
189
|
-
// See: docs/sprint-artifacts/sprint-1/stories/story-05-04.md
|
|
143
|
+
## Notes
|
|
190
144
|
|
|
191
|
-
|
|
192
|
-
// Current sync implementation, async in Epic 6
|
|
193
|
-
// See: docs/sprint-artifacts/backlog/epic-06.md
|
|
194
|
-
|
|
195
|
-
// TODO(SPRINT:SP3): Performance optimization needed
|
|
196
|
-
// Current O(n²), optimize in Sprint 3
|
|
197
|
-
|
|
198
|
-
// TODO(BACKLOG): Consider adding retry logic
|
|
199
|
-
// Not planned yet, but would improve reliability
|
|
200
|
-
|
|
201
|
-
// TODO(TECH_DEBT): Refactor this duplication
|
|
202
|
-
// Copy-pasted from X, extract common logic
|
|
203
|
-
|
|
204
|
-
// FIXME(BUG:GH-123): Fix null pointer exception
|
|
205
|
-
// Occurs when input is empty
|
|
206
|
-
// Ticket: https://github.com/org/repo/issues/123
|
|
207
|
-
|
|
208
|
-
// HACK: Temporary workaround for API limitation
|
|
209
|
-
// Remove when: STORY:{{module}}-S05-08 implemented
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
**GoLand/IntelliJ Setup:**
|
|
213
|
-
```
|
|
214
|
-
Settings → Editor → TODO → Add Pattern:
|
|
215
|
-
\bTODO\(.*\):.*
|
|
216
|
-
\bFIXME\(.*\):.*
|
|
217
|
-
\bHACK:.*
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
### Related Future Work
|
|
221
|
-
|
|
222
|
-
| ID | Type | Description | Blocks This? |
|
|
223
|
-
|----|------|-------------|--------------|
|
|
224
|
-
| T3 | Task | Validation logic | No |
|
|
225
|
-
| S{{epic}}-04 | Story | Pagination | No |
|
|
226
|
-
| E{{next_epic}} | Epic | Event-driven | No |
|
|
145
|
+
<!-- Optional: additional context, learnings, blockers -->
|
|
227
146
|
|
|
228
147
|
---
|
|
229
148
|
|
|
230
|
-
##
|
|
231
|
-
|
|
232
|
-
<!-- Context for the developer implementing this story -->
|
|
233
|
-
|
|
234
|
-
### Coding Standards Applied (MANDATORY)
|
|
235
|
-
|
|
236
|
-
**Standards documents used for this story:**
|
|
237
|
-
- [ ] `CLAUDE.md` - Project patterns, file structure, conventions
|
|
238
|
-
- [ ] `docs/coding-standards/` - Detailed coding standards
|
|
239
|
-
- [ ] Naming conventions
|
|
240
|
-
- [ ] Error handling patterns
|
|
241
|
-
- [ ] Testing patterns
|
|
242
|
-
- [ ] `docs/architecture/{{module}}/architecture.md` - Module-specific patterns
|
|
243
|
-
|
|
244
|
-
**Key patterns from CLAUDE.md:**
|
|
245
|
-
- File naming: `{{file_naming_pattern}}`
|
|
246
|
-
- Package structure: `{{package_structure}}`
|
|
247
|
-
- Error handling: `{{error_handling_pattern}}`
|
|
248
|
-
- Test file naming: `{{test_naming_pattern}}`
|
|
249
|
-
|
|
250
|
-
### Architecture Requirements
|
|
251
|
-
- Follow hexagonal architecture patterns
|
|
252
|
-
- Domain layer must not import infrastructure
|
|
253
|
-
- Use value objects for domain concepts
|
|
254
|
-
|
|
255
|
-
### Technical Specifications
|
|
256
|
-
- {{technical_specs}}
|
|
257
|
-
|
|
258
|
-
### Dependencies
|
|
259
|
-
- Depends on: {{dependencies}}
|
|
260
|
-
- Blocked by: {{blockers}}
|
|
261
|
-
|
|
262
|
-
### Previous Learnings
|
|
263
|
-
- {{learnings_from_similar_work}}
|
|
264
|
-
|
|
265
|
-
### Reference Files
|
|
266
|
-
- `src/path/to/related/file` - [why relevant]
|
|
267
|
-
- `docs/architecture.md#section` - [architecture guidance]
|
|
268
|
-
- `CLAUDE.md#section` - [coding patterns]
|
|
269
|
-
|
|
270
|
-
### Patterns to Follow
|
|
271
|
-
- **MANDATORY:** Follow patterns from `CLAUDE.md`
|
|
272
|
-
- **MANDATORY:** Follow `docs/coding-standards/`
|
|
273
|
-
- Match existing code style in module
|
|
274
|
-
|
|
275
|
-
### API/Interface
|
|
276
|
-
```
|
|
277
|
-
// Expected interface or function signature
|
|
278
|
-
// (language-specific syntax)
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
---
|
|
282
|
-
|
|
283
|
-
## Test Scenarios
|
|
284
|
-
|
|
285
|
-
### Unit Tests
|
|
286
|
-
1. {{test_scenario_1}}
|
|
287
|
-
2. {{test_scenario_2}}
|
|
288
|
-
3. {{edge_case_1}}
|
|
289
|
-
|
|
290
|
-
### Integration Tests
|
|
291
|
-
1. {{integration_scenario_1}}
|
|
292
|
-
2. {{integration_scenario_2}}
|
|
293
|
-
|
|
294
|
-
---
|
|
295
|
-
|
|
296
|
-
## Dev Agent Record
|
|
297
|
-
|
|
298
|
-
<!-- Automatically updated by Dev agent during implementation -->
|
|
299
|
-
|
|
300
|
-
### Implementation Plan
|
|
301
|
-
<!-- Dev agent documents approach here -->
|
|
302
|
-
|
|
303
|
-
### Debug Log
|
|
304
|
-
<!-- Dev agent logs debugging notes here -->
|
|
305
|
-
|
|
306
|
-
### Completion Notes
|
|
307
|
-
<!-- Dev agent summarizes what was implemented -->
|
|
308
|
-
|
|
309
|
-
---
|
|
310
|
-
|
|
311
|
-
## File List
|
|
312
|
-
|
|
313
|
-
<!-- Dev agent updates with all changed files -->
|
|
314
|
-
|
|
315
|
-
### Created Files
|
|
316
|
-
-
|
|
317
|
-
|
|
318
|
-
### Modified Files
|
|
319
|
-
-
|
|
149
|
+
## Definition of Done
|
|
320
150
|
|
|
321
|
-
|
|
322
|
-
-
|
|
151
|
+
- [ ] All acceptance criteria met
|
|
152
|
+
- [ ] All tasks completed
|
|
153
|
+
- [ ] Tests passing (>80% coverage)
|
|
154
|
+
- [ ] Code follows AGENTS.md patterns
|
|
155
|
+
- [ ] No linting errors
|
|
156
|
+
- [ ] PR merged to epic branch
|
|
323
157
|
|
|
324
158
|
---
|
|
325
159
|
|
|
326
160
|
## Changelog
|
|
327
161
|
|
|
328
|
-
<!-- UPDATE AT END OF SESSION -->
|
|
329
|
-
|
|
330
162
|
| Version | Date | Author | Changes |
|
|
331
163
|
|---------|------|--------|---------|
|
|
332
|
-
| 0.1 | {{date}} | @
|
|
164
|
+
| 0.1 | {{date}} | @pm | Story created |
|
|
333
165
|
|
|
334
166
|
<!--
|
|
335
167
|
Changelog Guidelines:
|
|
336
168
|
- Update at END of work session
|
|
337
169
|
- Dev: summarize what was implemented
|
|
338
170
|
- Version: 0.x=draft, 1.0=ready-for-dev, 1.x=in-progress, 2.0=done
|
|
339
|
-
|
|
340
|
-
Example session entries:
|
|
341
|
-
| 2.0 | 2024-01-25 | @dev | Complete: T1-T7 done; All tests pass; Ready for review |
|
|
342
|
-
| 1.1 | 2024-01-23 | @dev | Progress: T1-T4 complete; T5 blocked by API issue |
|
|
343
|
-
| 1.0 | 2024-01-20 | @sm | Ready for dev: 7 tasks defined; AC reviewed |
|
|
344
171
|
-->
|
|
345
172
|
|
|
346
173
|
---
|
|
347
174
|
|
|
348
|
-
## Definition of Done
|
|
349
|
-
|
|
350
|
-
- [ ] All acceptance criteria implemented and verified
|
|
351
|
-
- [ ] All tasks/subtasks marked complete [x]
|
|
352
|
-
- [ ] Unit tests written and passing (>80% coverage)
|
|
353
|
-
- [ ] Integration tests written and passing
|
|
354
|
-
- [ ] Code follows CLAUDE.md patterns
|
|
355
|
-
- [ ] Code reviewed and approved
|
|
356
|
-
- [ ] No linting errors
|
|
357
|
-
- [ ] No failing tests (full suite)
|
|
358
|
-
- [ ] File List complete
|
|
359
|
-
- [ ] Change Log updated
|
|
360
|
-
- [ ] PR merged to epic branch
|
|
361
|
-
|
|
362
|
-
---
|
|
363
|
-
|
|
364
|
-
## Senior Developer Review (AI)
|
|
365
|
-
|
|
366
|
-
<!-- Added after code-review workflow runs -->
|
|
367
|
-
|
|
368
|
-
### Review Date
|
|
369
|
-
<!-- Date of review -->
|
|
370
|
-
|
|
371
|
-
### Review Outcome
|
|
372
|
-
<!-- Approve | Changes Requested | Blocked -->
|
|
373
|
-
|
|
374
|
-
### Action Items
|
|
375
|
-
- [ ] {{action_item_1}}
|
|
376
|
-
- [ ] {{action_item_2}}
|
|
377
|
-
|
|
378
|
-
### Review Follow-ups (AI)
|
|
379
|
-
<!-- Tasks added based on review findings -->
|
|
380
|
-
|
|
381
|
-
---
|
|
382
|
-
|
|
383
175
|
## Jira Metadata
|
|
384
176
|
|
|
385
177
|
```yaml
|