claude-code-workflow 7.2.23 → 7.2.24
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/.codex/skills/team-arch-opt/SKILL.md +242 -175
- package/.codex/skills/team-arch-opt/roles/analyzer/role.md +78 -78
- package/.codex/skills/team-arch-opt/roles/coordinator/commands/analyze.md +57 -57
- package/.codex/skills/team-arch-opt/roles/coordinator/commands/monitor.md +246 -204
- package/.codex/skills/team-arch-opt/roles/coordinator/role.md +196 -184
- package/.codex/skills/team-arch-opt/roles/designer/role.md +115 -115
- package/.codex/skills/team-arch-opt/roles/refactorer/role.md +102 -102
- package/.codex/skills/team-arch-opt/roles/reviewer/role.md +111 -111
- package/.codex/skills/team-arch-opt/roles/validator/role.md +115 -115
- package/.codex/skills/team-arch-opt/specs/pipelines.md +102 -102
- package/.codex/skills/team-brainstorm/SKILL.md +72 -4
- package/.codex/skills/team-brainstorm/roles/challenger/role.md +61 -61
- package/.codex/skills/team-brainstorm/roles/coordinator/commands/analyze.md +58 -58
- package/.codex/skills/team-brainstorm/roles/coordinator/commands/monitor.md +212 -171
- package/.codex/skills/team-brainstorm/roles/coordinator/role.md +172 -160
- package/.codex/skills/team-brainstorm/roles/evaluator/role.md +56 -56
- package/.codex/skills/team-brainstorm/roles/ideator/role.md +69 -69
- package/.codex/skills/team-brainstorm/roles/synthesizer/role.md +57 -57
- package/.codex/skills/team-brainstorm/specs/pipelines.md +72 -72
- package/.codex/skills/team-coordinate/SKILL.md +71 -3
- package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +45 -5
- package/.codex/skills/team-coordinate/roles/coordinator/role.md +402 -389
- package/.codex/skills/team-coordinate/specs/knowledge-transfer.md +111 -111
- package/.codex/skills/team-coordinate/specs/pipelines.md +97 -97
- package/.codex/skills/team-coordinate/specs/quality-gates.md +112 -112
- package/.codex/skills/team-designer/SKILL.md +153 -153
- package/.codex/skills/team-designer/phases/01-requirements-analysis.md +250 -250
- package/.codex/skills/team-designer/phases/02-scaffold-generation.md +228 -228
- package/.codex/skills/team-designer/phases/03-content-generation.md +330 -330
- package/.codex/skills/team-designer/phases/04-validation.md +320 -320
- package/.codex/skills/team-executor/SKILL.md +29 -2
- package/.codex/skills/team-executor/roles/executor/commands/monitor.md +23 -15
- package/.codex/skills/team-frontend/SKILL.md +77 -3
- package/.codex/skills/team-frontend/roles/analyst/role.md +92 -92
- package/.codex/skills/team-frontend/roles/architect/role.md +86 -86
- package/.codex/skills/team-frontend/roles/coordinator/commands/analyze.md +52 -52
- package/.codex/skills/team-frontend/roles/coordinator/commands/monitor.md +222 -188
- package/.codex/skills/team-frontend/roles/coordinator/role.md +189 -177
- package/.codex/skills/team-frontend/roles/developer/role.md +93 -93
- package/.codex/skills/team-frontend/roles/qa/role.md +79 -79
- package/.codex/skills/team-frontend/specs/pipelines.md +76 -76
- package/.codex/skills/team-frontend-debug/SKILL.md +66 -3
- package/.codex/skills/team-frontend-debug/roles/analyzer/role.md +208 -208
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/analyze.md +174 -174
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/dispatch.md +198 -198
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/monitor.md +177 -143
- package/.codex/skills/team-frontend-debug/roles/coordinator/role.md +164 -152
- package/.codex/skills/team-frontend-debug/roles/fixer/role.md +147 -147
- package/.codex/skills/team-frontend-debug/roles/reproducer/role.md +147 -147
- package/.codex/skills/team-frontend-debug/roles/tester/role.md +231 -231
- package/.codex/skills/team-frontend-debug/roles/verifier/role.md +172 -172
- package/.codex/skills/team-frontend-debug/specs/debug-tools.md +215 -215
- package/.codex/skills/team-frontend-debug/specs/pipelines.md +94 -94
- package/.codex/skills/team-issue/SKILL.md +83 -4
- package/.codex/skills/team-issue/roles/coordinator/commands/analyze.md +64 -64
- package/.codex/skills/team-issue/roles/coordinator/commands/dispatch.md +273 -273
- package/.codex/skills/team-issue/roles/coordinator/commands/monitor.md +235 -194
- package/.codex/skills/team-issue/roles/coordinator/role.md +206 -194
- package/.codex/skills/team-issue/roles/explorer/role.md +94 -94
- package/.codex/skills/team-issue/roles/implementer/role.md +87 -87
- package/.codex/skills/team-issue/roles/integrator/role.md +84 -84
- package/.codex/skills/team-issue/roles/planner/role.md +81 -81
- package/.codex/skills/team-issue/roles/reviewer/role.md +86 -86
- package/.codex/skills/team-issue/specs/pipelines.md +124 -124
- package/.codex/skills/team-iterdev/SKILL.md +64 -3
- package/.codex/skills/team-iterdev/roles/architect/role.md +65 -65
- package/.codex/skills/team-iterdev/roles/coordinator/commands/analyze.md +62 -62
- package/.codex/skills/team-iterdev/roles/coordinator/commands/monitor.md +227 -186
- package/.codex/skills/team-iterdev/roles/coordinator/role.md +193 -181
- package/.codex/skills/team-iterdev/roles/developer/role.md +74 -74
- package/.codex/skills/team-iterdev/roles/reviewer/role.md +66 -66
- package/.codex/skills/team-iterdev/roles/tester/role.md +88 -88
- package/.codex/skills/team-iterdev/specs/pipelines.md +94 -94
- package/.codex/skills/team-lifecycle-v4/MIGRATION-PLAN.md +6 -6
- package/.codex/skills/team-lifecycle-v4/SKILL.md +305 -242
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +1 -1
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +66 -24
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +13 -1
- package/.codex/skills/team-lifecycle-v4/roles/supervisor/role.md +1 -1
- package/.codex/skills/team-lifecycle-v4/templates/architecture.md +254 -254
- package/.codex/skills/team-lifecycle-v4/templates/epics.md +196 -196
- package/.codex/skills/team-lifecycle-v4/templates/product-brief.md +133 -133
- package/.codex/skills/team-lifecycle-v4/templates/requirements.md +224 -224
- package/.codex/skills/team-perf-opt/SKILL.md +68 -3
- package/.codex/skills/team-perf-opt/roles/benchmarker/role.md +89 -89
- package/.codex/skills/team-perf-opt/roles/coordinator/commands/analyze.md +61 -61
- package/.codex/skills/team-perf-opt/roles/coordinator/commands/monitor.md +35 -1
- package/.codex/skills/team-perf-opt/roles/coordinator/role.md +179 -167
- package/.codex/skills/team-perf-opt/roles/optimizer/role.md +97 -97
- package/.codex/skills/team-perf-opt/roles/profiler/role.md +73 -73
- package/.codex/skills/team-perf-opt/roles/reviewer/role.md +75 -75
- package/.codex/skills/team-perf-opt/roles/strategist/role.md +94 -94
- package/.codex/skills/team-perf-opt/specs/pipelines.md +65 -65
- package/.codex/skills/team-planex/SKILL.md +65 -3
- package/.codex/skills/team-planex/roles/coordinator/commands/analyze.md +52 -52
- package/.codex/skills/team-planex/roles/coordinator/commands/monitor.md +210 -164
- package/.codex/skills/team-planex/roles/coordinator/role.md +171 -159
- package/.codex/skills/team-planex/roles/executor/role.md +91 -91
- package/.codex/skills/team-planex/roles/planner/role.md +112 -112
- package/.codex/skills/team-planex/specs/pipelines.md +93 -93
- package/.codex/skills/team-quality-assurance/SKILL.md +60 -3
- package/.codex/skills/team-quality-assurance/roles/analyst/role.md +80 -80
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/analyze.md +72 -72
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +108 -108
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +243 -209
- package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +176 -164
- package/.codex/skills/team-quality-assurance/roles/executor/role.md +66 -66
- package/.codex/skills/team-quality-assurance/roles/generator/role.md +68 -68
- package/.codex/skills/team-quality-assurance/roles/scout/role.md +67 -67
- package/.codex/skills/team-quality-assurance/roles/strategist/role.md +71 -71
- package/.codex/skills/team-quality-assurance/specs/pipelines.md +115 -115
- package/.codex/skills/team-review/SKILL.md +58 -3
- package/.codex/skills/team-review/roles/coordinator/commands/analyze.md +71 -71
- package/.codex/skills/team-review/roles/coordinator/commands/dispatch.md +90 -90
- package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +225 -185
- package/.codex/skills/team-review/roles/coordinator/role.md +175 -163
- package/.codex/skills/team-review/roles/fixer/role.md +76 -76
- package/.codex/skills/team-review/roles/reviewer/role.md +68 -68
- package/.codex/skills/team-review/roles/scanner/role.md +71 -71
- package/.codex/skills/team-review/specs/pipelines.md +102 -102
- package/.codex/skills/team-roadmap-dev/SKILL.md +55 -3
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/analyze.md +61 -61
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/monitor.md +502 -468
- package/.codex/skills/team-roadmap-dev/roles/coordinator/role.md +335 -322
- package/.codex/skills/team-roadmap-dev/roles/executor/role.md +71 -71
- package/.codex/skills/team-roadmap-dev/roles/planner/role.md +76 -76
- package/.codex/skills/team-roadmap-dev/roles/verifier/role.md +74 -74
- package/.codex/skills/team-roadmap-dev/specs/pipelines.md +93 -93
- package/.codex/skills/team-tech-debt/SKILL.md +56 -3
- package/.codex/skills/team-tech-debt/roles/assessor/role.md +69 -69
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/analyze.md +47 -47
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +272 -231
- package/.codex/skills/team-tech-debt/roles/coordinator/role.md +172 -160
- package/.codex/skills/team-tech-debt/roles/executor/role.md +76 -76
- package/.codex/skills/team-tech-debt/roles/planner/role.md +69 -69
- package/.codex/skills/team-tech-debt/roles/scanner/role.md +82 -82
- package/.codex/skills/team-tech-debt/roles/validator/role.md +75 -75
- package/.codex/skills/team-tech-debt/specs/pipelines.md +47 -47
- package/.codex/skills/team-testing/SKILL.md +72 -3
- package/.codex/skills/team-testing/roles/analyst/role.md +95 -95
- package/.codex/skills/team-testing/roles/coordinator/commands/analyze.md +70 -70
- package/.codex/skills/team-testing/roles/coordinator/commands/dispatch.md +106 -106
- package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +283 -242
- package/.codex/skills/team-testing/roles/coordinator/role.md +184 -172
- package/.codex/skills/team-testing/roles/executor/role.md +96 -96
- package/.codex/skills/team-testing/roles/generator/role.md +95 -95
- package/.codex/skills/team-testing/roles/strategist/role.md +83 -83
- package/.codex/skills/team-testing/specs/pipelines.md +101 -101
- package/.codex/skills/team-uidesign/SKILL.md +65 -3
- package/.codex/skills/team-uidesign/roles/coordinator/commands/analyze.md +59 -59
- package/.codex/skills/team-uidesign/roles/coordinator/commands/dispatch.md +156 -156
- package/.codex/skills/team-uidesign/roles/coordinator/commands/monitor.md +234 -194
- package/.codex/skills/team-uidesign/roles/coordinator/role.md +211 -199
- package/.codex/skills/team-uidesign/roles/designer/role.md +69 -69
- package/.codex/skills/team-uidesign/roles/implementer/role.md +72 -72
- package/.codex/skills/team-uidesign/roles/researcher/role.md +82 -82
- package/.codex/skills/team-uidesign/roles/reviewer/role.md +67 -67
- package/.codex/skills/team-uidesign/specs/pipelines.md +76 -76
- package/.codex/skills/team-ultra-analyze/SKILL.md +73 -3
- package/.codex/skills/team-ultra-analyze/roles/analyst/role.md +90 -90
- package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/analyze.md +73 -73
- package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/monitor.md +50 -9
- package/.codex/skills/team-ultra-analyze/roles/coordinator/role.md +255 -243
- package/.codex/skills/team-ultra-analyze/roles/discussant/role.md +104 -104
- package/.codex/skills/team-ultra-analyze/roles/explorer/role.md +74 -74
- package/.codex/skills/team-ultra-analyze/roles/synthesizer/role.md +78 -78
- package/.codex/skills/team-ultra-analyze/specs/pipelines.md +64 -64
- package/.codex/skills/team-ux-improve/SKILL.md +64 -3
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/analyze.md +62 -62
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/dispatch.md +233 -233
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/monitor.md +195 -160
- package/.codex/skills/team-ux-improve/roles/coordinator/role.md +170 -158
- package/.codex/skills/team-ux-improve/roles/designer/role.md +122 -122
- package/.codex/skills/team-ux-improve/roles/diagnoser/role.md +93 -93
- package/.codex/skills/team-ux-improve/roles/explorer/role.md +77 -77
- package/.codex/skills/team-ux-improve/roles/implementer/role.md +102 -102
- package/.codex/skills/team-ux-improve/roles/scanner/role.md +93 -93
- package/.codex/skills/team-ux-improve/roles/tester/role.md +84 -84
- package/.codex/skills/team-ux-improve/specs/pipelines.md +54 -54
- package/README.md +1 -0
- package/package.json +1 -1
|
@@ -1,231 +1,272 @@
|
|
|
1
|
-
# Monitor Pipeline
|
|
2
|
-
|
|
3
|
-
Synchronous pipeline coordination using spawn_agent + wait_agent.
|
|
4
|
-
|
|
5
|
-
## Constants
|
|
6
|
-
|
|
7
|
-
- WORKER_AGENT: team_worker
|
|
8
|
-
- ONE_STEP_PER_INVOCATION: false (synchronous wait loop)
|
|
9
|
-
- FAST_ADVANCE_AWARE: true
|
|
10
|
-
- MAX_GC_ROUNDS: 3
|
|
11
|
-
|
|
12
|
-
## Handler Router
|
|
13
|
-
|
|
14
|
-
| Source | Handler |
|
|
15
|
-
|--------|---------|
|
|
16
|
-
| "capability_gap" | handleAdapt |
|
|
17
|
-
| "check" or "status" | handleCheck |
|
|
18
|
-
| "resume" or "continue" | handleResume |
|
|
19
|
-
| All tasks completed | handleComplete |
|
|
20
|
-
| Default | handleSpawnNext |
|
|
21
|
-
|
|
22
|
-
## handleCheck
|
|
23
|
-
|
|
24
|
-
Read-only status report from tasks.json, then STOP.
|
|
25
|
-
|
|
26
|
-
1. Read tasks.json
|
|
27
|
-
2. Count tasks by status (pending, in_progress, completed, failed)
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
Pipeline Status (<mode>):
|
|
31
|
-
[DONE] TDSCAN-001 (scanner) -> scan complete
|
|
32
|
-
[DONE] TDEVAL-001 (assessor) -> assessment ready
|
|
33
|
-
[RUN] TDPLAN-001 (planner) -> planning...
|
|
34
|
-
[WAIT] TDFIX-001 (executor) -> blocked by TDPLAN-001
|
|
35
|
-
[WAIT] TDVAL-001 (validator) -> blocked by TDFIX-001
|
|
36
|
-
|
|
37
|
-
GC Rounds: 0/3
|
|
38
|
-
Session: <session-id>
|
|
39
|
-
Commands: 'resume' to advance | 'check' to refresh
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Output status -- do NOT advance pipeline.
|
|
43
|
-
|
|
44
|
-
## handleResume
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
1
|
+
# Monitor Pipeline
|
|
2
|
+
|
|
3
|
+
Synchronous pipeline coordination using spawn_agent + wait_agent.
|
|
4
|
+
|
|
5
|
+
## Constants
|
|
6
|
+
|
|
7
|
+
- WORKER_AGENT: team_worker
|
|
8
|
+
- ONE_STEP_PER_INVOCATION: false (synchronous wait loop)
|
|
9
|
+
- FAST_ADVANCE_AWARE: true
|
|
10
|
+
- MAX_GC_ROUNDS: 3
|
|
11
|
+
|
|
12
|
+
## Handler Router
|
|
13
|
+
|
|
14
|
+
| Source | Handler |
|
|
15
|
+
|--------|---------|
|
|
16
|
+
| "capability_gap" | handleAdapt |
|
|
17
|
+
| "check" or "status" | handleCheck |
|
|
18
|
+
| "resume" or "continue" | handleResume |
|
|
19
|
+
| All tasks completed | handleComplete |
|
|
20
|
+
| Default | handleSpawnNext |
|
|
21
|
+
|
|
22
|
+
## handleCheck
|
|
23
|
+
|
|
24
|
+
Read-only status report from tasks.json, then STOP.
|
|
25
|
+
|
|
26
|
+
1. Read tasks.json
|
|
27
|
+
2. Count tasks by status (pending, in_progress, completed, failed)
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Pipeline Status (<mode>):
|
|
31
|
+
[DONE] TDSCAN-001 (scanner) -> scan complete
|
|
32
|
+
[DONE] TDEVAL-001 (assessor) -> assessment ready
|
|
33
|
+
[RUN] TDPLAN-001 (planner) -> planning...
|
|
34
|
+
[WAIT] TDFIX-001 (executor) -> blocked by TDPLAN-001
|
|
35
|
+
[WAIT] TDVAL-001 (validator) -> blocked by TDFIX-001
|
|
36
|
+
|
|
37
|
+
GC Rounds: 0/3
|
|
38
|
+
Session: <session-id>
|
|
39
|
+
Commands: 'resume' to advance | 'check' to refresh
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Output status -- do NOT advance pipeline.
|
|
43
|
+
|
|
44
|
+
## handleResume
|
|
45
|
+
|
|
46
|
+
**Agent Health Check** (v4):
|
|
47
|
+
```
|
|
48
|
+
// Verify actual running agents match session state
|
|
49
|
+
const runningAgents = list_agents({})
|
|
50
|
+
// For each active_agent in tasks.json:
|
|
51
|
+
// - If agent NOT in runningAgents -> agent crashed
|
|
52
|
+
// - Reset that task to pending, remove from active_agents
|
|
53
|
+
// This prevents stale agent references from blocking the pipeline
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
1. Read tasks.json, check active_agents
|
|
57
|
+
2. Tasks stuck in "in_progress" -> reset to "pending"
|
|
58
|
+
3. Tasks with completed deps but still "pending" -> include in spawn list
|
|
59
|
+
4. -> handleSpawnNext
|
|
60
|
+
|
|
61
|
+
## handleSpawnNext
|
|
62
|
+
|
|
63
|
+
Find ready tasks, spawn workers, wait for completion, process results.
|
|
64
|
+
|
|
65
|
+
1. Read tasks.json
|
|
66
|
+
2. Collect: completedTasks, inProgressTasks, readyTasks (pending + all deps completed)
|
|
67
|
+
3. No ready + work in progress -> report waiting, STOP
|
|
68
|
+
4. No ready + nothing in progress -> handleComplete
|
|
69
|
+
5. Has ready -> for each:
|
|
70
|
+
a. Check inner loop role with active worker -> skip (worker picks up)
|
|
71
|
+
b. Update task status in tasks.json -> in_progress
|
|
72
|
+
c. team_msg log -> task_unblocked
|
|
73
|
+
|
|
74
|
+
### Spawn Workers
|
|
75
|
+
|
|
76
|
+
For each ready task:
|
|
77
|
+
|
|
78
|
+
```javascript
|
|
79
|
+
// 1) Update status in tasks.json
|
|
80
|
+
state.tasks[taskId].status = 'in_progress'
|
|
81
|
+
|
|
82
|
+
// 2) Spawn worker
|
|
83
|
+
const agentId = spawn_agent({
|
|
84
|
+
agent_type: "team_worker",
|
|
85
|
+
task_name: taskId, // e.g., "TDSCAN-001" — enables named targeting
|
|
86
|
+
items: [
|
|
87
|
+
{ type: "text", text: `## Role Assignment
|
|
88
|
+
role: ${task.role}
|
|
89
|
+
role_spec: ${skillRoot}/roles/${task.role}/role.md
|
|
90
|
+
session: ${sessionFolder}
|
|
91
|
+
session_id: ${sessionId}
|
|
92
|
+
team_name: tech-debt
|
|
93
|
+
requirement: ${task.description}
|
|
94
|
+
inner_loop: ${task.role === 'executor'}` },
|
|
95
|
+
|
|
96
|
+
{ type: "text", text: `Read role_spec file (${skillRoot}/roles/${task.role}/role.md) to load Phase 2-4 domain instructions.
|
|
97
|
+
Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).` },
|
|
98
|
+
|
|
99
|
+
{ type: "text", text: `## Task Context
|
|
100
|
+
task_id: ${taskId}
|
|
101
|
+
title: ${task.title}
|
|
102
|
+
description: ${task.description}` },
|
|
103
|
+
|
|
104
|
+
{ type: "text", text: `## Upstream Context\n${prevContext}` }
|
|
105
|
+
]
|
|
106
|
+
})
|
|
107
|
+
|
|
108
|
+
// 3) Track agent
|
|
109
|
+
state.active_agents[taskId] = { agentId, role: task.role, started_at: now }
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Stage-to-role mapping:
|
|
113
|
+
| Task Prefix | Role |
|
|
114
|
+
|-------------|------|
|
|
115
|
+
| TDSCAN | scanner |
|
|
116
|
+
| TDEVAL | assessor |
|
|
117
|
+
| TDPLAN | planner |
|
|
118
|
+
| TDFIX | executor |
|
|
119
|
+
| TDVAL | validator |
|
|
120
|
+
|
|
121
|
+
### Wait and Process Results
|
|
122
|
+
|
|
123
|
+
After spawning all ready tasks:
|
|
124
|
+
|
|
125
|
+
```javascript
|
|
126
|
+
// 4) Batch wait — use task_name for stable targeting (v4)
|
|
127
|
+
const taskNames = Object.keys(state.active_agents)
|
|
128
|
+
const waitResult = wait_agent({ targets: taskNames, timeout_ms: 900000 })
|
|
129
|
+
if (waitResult.timed_out) {
|
|
130
|
+
for (const taskId of taskNames) {
|
|
131
|
+
state.tasks[taskId].status = 'timed_out'
|
|
132
|
+
close_agent({ target: taskId })
|
|
133
|
+
delete state.active_agents[taskId]
|
|
134
|
+
}
|
|
135
|
+
} else {
|
|
136
|
+
// 5) Collect results
|
|
137
|
+
for (const [taskId, agent] of Object.entries(state.active_agents)) {
|
|
138
|
+
state.tasks[taskId].status = 'completed'
|
|
139
|
+
close_agent({ target: taskId }) // Use task_name, not agentId
|
|
140
|
+
delete state.active_agents[taskId]
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Checkpoint Processing
|
|
146
|
+
|
|
147
|
+
After task completion, check for checkpoints:
|
|
148
|
+
|
|
149
|
+
- **TDPLAN-001 completes** -> Plan Approval Gate:
|
|
150
|
+
```javascript
|
|
151
|
+
request_user_input({
|
|
152
|
+
questions: [{
|
|
153
|
+
question: "Remediation plan generated. Review and decide:",
|
|
154
|
+
header: "Plan Review",
|
|
155
|
+
multiSelect: false,
|
|
156
|
+
options: [
|
|
157
|
+
{ label: "Approve", description: "Proceed with fix execution" },
|
|
158
|
+
{ label: "Revise", description: "Re-run planner with feedback" },
|
|
159
|
+
{ label: "Abort", description: "Stop pipeline" }
|
|
160
|
+
]
|
|
161
|
+
}]
|
|
162
|
+
})
|
|
163
|
+
```
|
|
164
|
+
- Approve -> Worktree Creation -> continue handleSpawnNext loop
|
|
165
|
+
- Revise -> Add TDPLAN-revised task to tasks.json -> continue
|
|
166
|
+
- Abort -> Log shutdown -> handleComplete
|
|
167
|
+
|
|
168
|
+
- **Worktree Creation** (before TDFIX):
|
|
169
|
+
```
|
|
170
|
+
Bash("git worktree add .worktrees/TD-<slug>-<date> -b tech-debt/TD-<slug>-<date>")
|
|
171
|
+
```
|
|
172
|
+
Update .msg/meta.json with worktree info.
|
|
173
|
+
|
|
174
|
+
- **TDVAL-* completes** -> GC Loop Check:
|
|
175
|
+
Read validation results from .msg/meta.json
|
|
176
|
+
|
|
177
|
+
| Condition | Action |
|
|
178
|
+
|-----------|--------|
|
|
179
|
+
| No regressions | -> continue (pipeline complete) |
|
|
180
|
+
| Regressions AND gc_rounds < 3 | Add fix-verify tasks to tasks.json, increment gc_rounds |
|
|
181
|
+
| Regressions AND gc_rounds >= 3 | Accept current state -> handleComplete |
|
|
182
|
+
|
|
183
|
+
Fix-Verify Task Creation (add to tasks.json):
|
|
184
|
+
```json
|
|
185
|
+
{
|
|
186
|
+
"TDFIX-fix-<round>": {
|
|
187
|
+
"title": "Fix regressions (Fix-Verify #<round>)",
|
|
188
|
+
"description": "PURPOSE: Fix regressions | Session: <session>",
|
|
189
|
+
"role": "executor",
|
|
190
|
+
"prefix": "TDFIX",
|
|
191
|
+
"deps": [],
|
|
192
|
+
"status": "pending",
|
|
193
|
+
"findings": null,
|
|
194
|
+
"error": null
|
|
195
|
+
},
|
|
196
|
+
"TDVAL-recheck-<round>": {
|
|
197
|
+
"title": "Recheck after fix (Fix-Verify #<round>)",
|
|
198
|
+
"description": "Re-validate after fix",
|
|
199
|
+
"role": "validator",
|
|
200
|
+
"prefix": "TDVAL",
|
|
201
|
+
"deps": ["TDFIX-fix-<round>"],
|
|
202
|
+
"status": "pending",
|
|
203
|
+
"findings": null,
|
|
204
|
+
"error": null
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
**Cross-Agent Supplementary Context** (v4):
|
|
210
|
+
|
|
211
|
+
When spawning workers in a later pipeline phase, send upstream results as supplementary context to already-running workers:
|
|
212
|
+
|
|
213
|
+
```
|
|
214
|
+
// Example: Send scan results to running assessor
|
|
215
|
+
send_message({
|
|
216
|
+
target: "<running-agent-task-name>",
|
|
217
|
+
items: [{ type: "text", text: `## Supplementary Context\n${upstreamFindings}` }]
|
|
218
|
+
})
|
|
219
|
+
// Note: send_message queues info without interrupting the agent's current work
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
Use `send_message` (not `assign_task`) for supplementary info that enriches but doesn't redirect the agent's current task.
|
|
223
|
+
|
|
224
|
+
### Persist and Loop
|
|
225
|
+
|
|
226
|
+
After processing all results:
|
|
227
|
+
1. Write updated tasks.json
|
|
228
|
+
2. Check if more tasks are now ready (deps newly resolved)
|
|
229
|
+
3. If yes -> loop back to step 1 of handleSpawnNext
|
|
230
|
+
4. If no more ready and all done -> handleComplete
|
|
231
|
+
5. If no more ready but some still blocked -> report status, STOP
|
|
232
|
+
|
|
233
|
+
## handleComplete
|
|
234
|
+
|
|
235
|
+
**Cleanup Verification** (v4):
|
|
236
|
+
```
|
|
237
|
+
// Verify all agents are properly closed
|
|
238
|
+
const remaining = list_agents({})
|
|
239
|
+
// If any team agents still running -> close_agent each
|
|
240
|
+
// Ensures clean session shutdown
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Pipeline done. Generate report and completion action.
|
|
244
|
+
|
|
245
|
+
1. Verify all tasks (including fix-verify tasks) have status "completed"
|
|
246
|
+
2. If any not completed -> handleSpawnNext
|
|
247
|
+
3. If all completed:
|
|
248
|
+
- Read final state from .msg/meta.json
|
|
249
|
+
- If worktree exists and validation passed: commit, push, gh pr create, cleanup worktree
|
|
250
|
+
- Compile summary: total tasks, completed, gc_rounds, debt_score_before, debt_score_after
|
|
251
|
+
- Transition to coordinator Phase 5
|
|
252
|
+
4. Execute completion action per tasks.json completion_action:
|
|
253
|
+
- interactive -> request_user_input (Archive/Keep/Export)
|
|
254
|
+
- auto_archive -> Archive & Clean (rm -rf session folder)
|
|
255
|
+
- auto_keep -> Keep Active (status=paused)
|
|
256
|
+
|
|
257
|
+
## handleAdapt
|
|
258
|
+
|
|
259
|
+
Capability gap reported mid-pipeline.
|
|
260
|
+
|
|
261
|
+
1. Parse gap description
|
|
262
|
+
2. Check if existing role covers it -> redirect
|
|
263
|
+
3. Role count < 5 -> generate dynamic role spec in <session>/role-specs/
|
|
264
|
+
4. Add new task to tasks.json, spawn worker via spawn_agent + wait_agent
|
|
265
|
+
5. Role count >= 5 -> merge or pause
|
|
266
|
+
|
|
267
|
+
## Fast-Advance Reconciliation
|
|
268
|
+
|
|
269
|
+
On every coordinator wake:
|
|
270
|
+
1. Read team_msg entries with type="fast_advance"
|
|
271
|
+
2. Sync active_agents with spawned successors
|
|
272
|
+
3. No duplicate spawns
|