@comfanion/workflow 4.38.1-dev.5 → 4.38.1-dev.7

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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comfanion/workflow",
3
- "version": "4.38.1-dev.5",
3
+ "version": "4.38.1-dev.7",
4
4
  "description": "Initialize OpenCode Workflow system for AI-assisted development with semantic code search",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "4.38.1-dev.5",
3
- "buildDate": "2026-01-27T10:42:36.948Z",
2
+ "version": "4.38.1-dev.7",
3
+ "buildDate": "2026-01-27T10:45:27.366Z",
4
4
  "files": [
5
5
  "config.yaml",
6
6
  "FLOW.yaml",
@@ -40,37 +40,37 @@ metadata:
40
40
  </phase>
41
41
 
42
42
  <phase name="2-init" title="Initialize Epic">
43
- <step n="1">Parse epic file → extract story list</step>
43
+ <step n="1">Parse epic file → "Story Tasks" section has all stories + tasks (no need to read story files yet)</step>
44
44
  <step n="2">Create epic state: docs/sprint-artifacts/sprint-N/.sprint-state/epic-XX-state.yaml</step>
45
45
  <step n="3">Create TODO list with IDs — stories, their tasks, and reviews:
46
46
  ```
47
47
  [ ] E{N}-S01: {story title}
48
- [ ] S01 T1: {task title}
49
- [ ] S01 T2: {task title}
50
- [ ] S01 Review: run tests, verify AC
48
+ [ ] E{N}-S01-T01: {task title}
49
+ [ ] E{N}-S01-T02: {task title}
50
+ [ ] E{N}-S01-Review: run tests, verify AC
51
51
  [ ] E{N}-S02: {story title}
52
- [ ] S02 T1: {task title}
53
- [ ] S02 T2: {task title}
54
- [ ] S02 Review: run tests, verify AC
52
+ [ ] E{N}-S02-T01: {task title}
53
+ [ ] E{N}-S02-T02: {task title}
54
+ [ ] E{N}-S02-Review: run tests, verify AC
55
55
  ...
56
- [ ] E{N} Integration tests
57
- [ ] E{N} Verify epic AC
56
+ [ ] E{N}-Integration: run epic integration tests
57
+ [ ] E{N}-AC: verify epic acceptance criteria
58
58
  ```
59
59
  </step>
60
60
  <example>
61
61
  ```
62
62
  [ ] E04-S01: Merge Domain Logic
63
- [ ] S01 T1: MergeResult value object
64
- [ ] S01 T2: Merge service — primary selection
65
- [ ] S01 T3: Unit tests
66
- [ ] S01 Review: run tests, verify AC
63
+ [ ] E04-S01-T01: MergeResult value object
64
+ [ ] E04-S01-T02: Merge service — primary selection
65
+ [ ] E04-S01-T03: Unit tests
66
+ [ ] E04-S01-Review: run tests, verify AC
67
67
  [ ] E04-S02: Auto Merge on Link
68
- [ ] S02 T1: Event handler for link
69
- [ ] S02 T2: Best-effort merge logic
70
- [ ] S02 T3: Integration tests
71
- [ ] S02 Review: run tests, verify AC
72
- [ ] E04 Integration tests
73
- [ ] E04 Verify epic AC
68
+ [ ] E04-S02-T01: Event handler for link
69
+ [ ] E04-S02-T02: Best-effort merge logic
70
+ [ ] E04-S02-T03: Integration tests
71
+ [ ] E04-S02-Review: run tests, verify AC
72
+ [ ] E04-Integration: run epic integration tests
73
+ [ ] E04-AC: verify epic acceptance criteria
74
74
  ```
75
75
  </example>
76
76
  <step n="4">Set state: status="in-progress", next_action="Execute [first-story.md]"</step>
@@ -48,41 +48,41 @@ metadata:
48
48
  ```
49
49
  [ ] E{N1}: {epic title}
50
50
  [ ] E{N1}-S01: {story title}
51
- [ ] S01 T1: {task title}
52
- [ ] S01 T2: {task title}
53
- [ ] S01 Review: run tests, verify AC
51
+ [ ] E{N1}-S01-T01: {task title}
52
+ [ ] E{N1}-S01-T02: {task title}
53
+ [ ] E{N1}-S01-Review: run tests, verify AC
54
54
  [ ] E{N1}-S02: {story title}
55
- [ ] S02 T1: {task title}
56
- [ ] S02 Review: run tests, verify AC
57
- [ ] E{N1} Review: integration tests
55
+ [ ] E{N1}-S02-T01: {task title}
56
+ [ ] E{N1}-S02-Review: run tests, verify AC
57
+ [ ] E{N1}-Integration: epic integration tests
58
58
  [ ] E{N2}: {epic title}
59
59
  [ ] E{N2}-S01: {story title}
60
- [ ] S01 T1: {task title}
61
- [ ] S01 Review: run tests, verify AC
62
- [ ] E{N2} Review: integration tests
63
- [ ] Sprint integration tests
60
+ [ ] E{N2}-S01-T01: {task title}
61
+ [ ] E{N2}-S01-Review: run tests, verify AC
62
+ [ ] E{N2}-Integration: epic integration tests
63
+ [ ] Sprint-Integration: run sprint integration tests
64
64
  ```
65
65
  </step>
66
66
  <example>
67
67
  ```
68
68
  [ ] E04: Identity Merge
69
69
  [ ] E04-S01: Merge Domain Logic
70
- [ ] S01 T1: MergeResult value object
71
- [ ] S01 T2: Merge service
72
- [ ] S01 T3: Unit tests
73
- [ ] S01 Review: run tests, verify AC
70
+ [ ] E04-S01-T01: MergeResult value object
71
+ [ ] E04-S01-T02: Merge service
72
+ [ ] E04-S01-T03: Unit tests
73
+ [ ] E04-S01-Review: run tests, verify AC
74
74
  [ ] E04-S02: Auto Merge on Link
75
- [ ] S02 T1: Event handler
76
- [ ] S02 T2: Integration tests
77
- [ ] S02 Review: run tests, verify AC
78
- [ ] E04 Review: integration tests
75
+ [ ] E04-S02-T01: Event handler
76
+ [ ] E04-S02-T02: Integration tests
77
+ [ ] E04-S02-Review: run tests, verify AC
78
+ [ ] E04-Integration: epic integration tests
79
79
  [ ] E06: Team Management
80
80
  [ ] E06-S01: Team CRUD
81
- [ ] S01 T1: Domain model
82
- [ ] S01 T2: Handler
83
- [ ] S01 Review: run tests, verify AC
84
- [ ] E06 Review: integration tests
85
- [ ] Sprint integration tests
81
+ [ ] E06-S01-T01: Domain model
82
+ [ ] E06-S01-T02: Handler
83
+ [ ] E06-S01-Review: run tests, verify AC
84
+ [ ] E06-Integration: epic integration tests
85
+ [ ] Sprint-Integration: run sprint integration tests
86
86
  ```
87
87
  </example>
88
88
  <step n="3">Set sprint status="in-progress" in sprint-status.yaml</step>
@@ -72,20 +72,20 @@ metadata:
72
72
  <critical>TODO MUST use task IDs from story file!</critical>
73
73
  <template>
74
74
  ```
75
- [ ] S{E}-{N} T1: {task title from story}
76
- [ ] S{E}-{N} T2: {task title}
77
- [ ] S{E}-{N} T3: {task title}
75
+ [ ] E{E}-S{N}-T01: {task title from story}
76
+ [ ] E{E}-S{N}-T02: {task title}
77
+ [ ] E{E}-S{N}-T03: {task title}
78
78
  ...
79
- [ ] S{E}-{N} Review: run all tests, verify AC
79
+ [ ] E{E}-S{N}-Review: run all tests, verify AC
80
80
  ```
81
81
  </template>
82
82
  <example>
83
83
  ```
84
- [ ] S04-01 T1: Domain Model — MergeResult value object
85
- [ ] S04-01 T2: Merge Service — primary selection logic
86
- [ ] S04-01 T3: External ID reassignment
87
- [ ] S04-01 T4: Unit tests for merge logic
88
- [ ] S04-01 Review: run all tests, verify AC
84
+ [ ] E04-S01-T01: Domain Model — MergeResult value object
85
+ [ ] E04-S01-T02: Merge Service — primary selection logic
86
+ [ ] E04-S01-T03: External ID reassignment
87
+ [ ] E04-S01-T04: Unit tests for merge logic
88
+ [ ] E04-S01-Review: run all tests, verify AC
89
89
  ```
90
90
  </example>
91
91
  </phase>
@@ -79,10 +79,10 @@ Epic is complete when:
79
79
 
80
80
  ## Stories
81
81
 
82
- | ID | Title | Size | Focus | Status |
83
- |----|-------|------|-------|--------|
84
- | S{{E}}-01 | {{title}} | S/M/L | → Unit: `{{unit}}` | ⬜ |
85
- | S{{E}}-02 | {{title}} | S/M/L | → Unit: `{{unit}}` | ⬜ |
82
+ | ID | Title | Size | File | Status |
83
+ |----|-------|------|------|--------|
84
+ | E{{E}}-S01 | {{title}} | S/M/L | `story-{{E}}-01-{{slug}}.md` | ⬜ |
85
+ | E{{E}}-S02 | {{title}} | S/M/L | `story-{{E}}-02-{{slug}}.md` | ⬜ |
86
86
 
87
87
  **Dependency Flow:**
88
88
  ```
@@ -91,8 +91,32 @@ S01 ──► S02 ──► S03
91
91
  └──► S04
92
92
  ```
93
93
 
94
- **Notes:**
95
- - {{implementation_note}}
94
+ ---
95
+
96
+ ## Story Tasks
97
+
98
+ <!-- This section is populated by /stories command.
99
+ Used by /dev-epic to build TODO without reading all story files. -->
100
+
101
+ ### E{{E}}-S01: {{story title}}
102
+ - E{{E}}-S01-T01: {{task title}}
103
+ - E{{E}}-S01-T02: {{task title}}
104
+
105
+ ### E{{E}}-S02: {{story title}}
106
+ - E{{E}}-S02-T01: {{task title}}
107
+ - E{{E}}-S02-T02: {{task title}}
108
+
109
+ <!-- Example:
110
+ ### E04-S01: Merge Domain Logic
111
+ - E04-S01-T01: MergeResult value object
112
+ - E04-S01-T02: Merge service — primary selection
113
+ - E04-S01-T03: Unit tests
114
+
115
+ ### E04-S02: Auto Merge on Link
116
+ - E04-S02-T01: Event handler for link
117
+ - E04-S02-T02: Best-effort merge logic
118
+ - E04-S02-T03: Integration tests
119
+ -->
96
120
 
97
121
  ---
98
122
 
@@ -233,6 +233,26 @@ T1 ──► T2 ──► T3
233
233
 
234
234
  Save to: `docs/sprint-artifacts/sprint-[N]/stories/story-[EPIC]-[NN]-[description].md`
235
235
 
236
+ ## MANDATORY: Update Epic File
237
+
238
+ After creating stories, update the parent epic's **Story Tasks** section.
239
+ This lets `/dev-epic` build TODO from epic file alone — no need to read all stories.
240
+
241
+ ```markdown
242
+ ## Story Tasks
243
+
244
+ ### E04-S01: Merge Domain Logic
245
+ - E04-S01-T01: MergeResult value object
246
+ - E04-S01-T02: Merge service — primary selection
247
+ - E04-S01-T03: Unit tests
248
+
249
+ ### E04-S02: Auto Merge on Link
250
+ - E04-S02-T01: Event handler for link
251
+ - E04-S02-T02: Best-effort merge logic
252
+ ```
253
+
254
+ **Format:** `E{NN}-S{NN}-T{NN}: {task title}` — one line per task.
255
+
236
256
  ## Related Skills
237
257
 
238
258
  - `acceptance-criteria` - For detailed AC