claude-code-workflow 7.2.23 → 7.2.25

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.
Files changed (212) hide show
  1. package/.ccw/workflows/cli-tools-usage.md +123 -521
  2. package/.claude/skills/brainstorm/SKILL.md +408 -408
  3. package/.claude/skills/review-cycle/SKILL.md +132 -132
  4. package/.claude/skills/spec-generator/SKILL.md +1 -1
  5. package/.claude/skills/team-designer/phases/02-scaffold-generation.md +1 -1
  6. package/.claude/skills/team-lifecycle-v4/SKILL.md +1 -1
  7. package/.claude/skills/team-review/SKILL.md +1 -1
  8. package/.claude/skills/team-ultra-analyze/SKILL.md +1 -1
  9. package/.claude/skills/workflow-multi-cli-plan/SKILL.md +1 -1
  10. package/.claude/skills/workflow-plan/SKILL.md +1 -1
  11. package/.claude/skills/workflow-test-fix/SKILL.md +1 -1
  12. package/.codex/skills/analyze-with-file/SKILL.md +966 -966
  13. package/.codex/skills/issue-discover/SKILL.md +361 -361
  14. package/.codex/skills/review-cycle/SKILL.md +1 -1
  15. package/.codex/skills/roadmap-with-file/SKILL.md +901 -901
  16. package/.codex/skills/spec-generator/SKILL.md +425 -425
  17. package/.codex/skills/spec-setup/SKILL.md +669 -669
  18. package/.codex/skills/team-arch-opt/SKILL.md +242 -175
  19. package/.codex/skills/team-arch-opt/roles/analyzer/role.md +78 -78
  20. package/.codex/skills/team-arch-opt/roles/coordinator/commands/analyze.md +57 -57
  21. package/.codex/skills/team-arch-opt/roles/coordinator/commands/monitor.md +246 -204
  22. package/.codex/skills/team-arch-opt/roles/coordinator/role.md +196 -184
  23. package/.codex/skills/team-arch-opt/roles/designer/role.md +115 -115
  24. package/.codex/skills/team-arch-opt/roles/refactorer/role.md +102 -102
  25. package/.codex/skills/team-arch-opt/roles/reviewer/role.md +111 -111
  26. package/.codex/skills/team-arch-opt/roles/validator/role.md +115 -115
  27. package/.codex/skills/team-arch-opt/specs/pipelines.md +102 -102
  28. package/.codex/skills/team-brainstorm/SKILL.md +72 -4
  29. package/.codex/skills/team-brainstorm/roles/challenger/role.md +61 -61
  30. package/.codex/skills/team-brainstorm/roles/coordinator/commands/analyze.md +58 -58
  31. package/.codex/skills/team-brainstorm/roles/coordinator/commands/monitor.md +212 -171
  32. package/.codex/skills/team-brainstorm/roles/coordinator/role.md +172 -160
  33. package/.codex/skills/team-brainstorm/roles/evaluator/role.md +56 -56
  34. package/.codex/skills/team-brainstorm/roles/ideator/role.md +69 -69
  35. package/.codex/skills/team-brainstorm/roles/synthesizer/role.md +57 -57
  36. package/.codex/skills/team-brainstorm/specs/pipelines.md +72 -72
  37. package/.codex/skills/team-coordinate/SKILL.md +71 -3
  38. package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +45 -5
  39. package/.codex/skills/team-coordinate/roles/coordinator/role.md +402 -389
  40. package/.codex/skills/team-coordinate/specs/knowledge-transfer.md +111 -111
  41. package/.codex/skills/team-coordinate/specs/pipelines.md +97 -97
  42. package/.codex/skills/team-coordinate/specs/quality-gates.md +112 -112
  43. package/.codex/skills/team-designer/SKILL.md +153 -153
  44. package/.codex/skills/team-designer/phases/01-requirements-analysis.md +250 -250
  45. package/.codex/skills/team-designer/phases/02-scaffold-generation.md +228 -228
  46. package/.codex/skills/team-designer/phases/03-content-generation.md +330 -330
  47. package/.codex/skills/team-designer/phases/04-validation.md +320 -320
  48. package/.codex/skills/team-executor/SKILL.md +29 -2
  49. package/.codex/skills/team-executor/roles/executor/commands/monitor.md +23 -15
  50. package/.codex/skills/team-frontend/SKILL.md +77 -3
  51. package/.codex/skills/team-frontend/roles/analyst/role.md +92 -92
  52. package/.codex/skills/team-frontend/roles/architect/role.md +86 -86
  53. package/.codex/skills/team-frontend/roles/coordinator/commands/analyze.md +52 -52
  54. package/.codex/skills/team-frontend/roles/coordinator/commands/monitor.md +222 -188
  55. package/.codex/skills/team-frontend/roles/coordinator/role.md +189 -177
  56. package/.codex/skills/team-frontend/roles/developer/role.md +93 -93
  57. package/.codex/skills/team-frontend/roles/qa/role.md +79 -79
  58. package/.codex/skills/team-frontend/specs/pipelines.md +76 -76
  59. package/.codex/skills/team-frontend-debug/SKILL.md +66 -3
  60. package/.codex/skills/team-frontend-debug/roles/analyzer/role.md +208 -208
  61. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/analyze.md +174 -174
  62. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/dispatch.md +198 -198
  63. package/.codex/skills/team-frontend-debug/roles/coordinator/commands/monitor.md +177 -143
  64. package/.codex/skills/team-frontend-debug/roles/coordinator/role.md +164 -152
  65. package/.codex/skills/team-frontend-debug/roles/fixer/role.md +147 -147
  66. package/.codex/skills/team-frontend-debug/roles/reproducer/role.md +147 -147
  67. package/.codex/skills/team-frontend-debug/roles/tester/role.md +231 -231
  68. package/.codex/skills/team-frontend-debug/roles/verifier/role.md +172 -172
  69. package/.codex/skills/team-frontend-debug/specs/debug-tools.md +215 -215
  70. package/.codex/skills/team-frontend-debug/specs/pipelines.md +94 -94
  71. package/.codex/skills/team-issue/SKILL.md +83 -4
  72. package/.codex/skills/team-issue/roles/coordinator/commands/analyze.md +64 -64
  73. package/.codex/skills/team-issue/roles/coordinator/commands/dispatch.md +273 -273
  74. package/.codex/skills/team-issue/roles/coordinator/commands/monitor.md +235 -194
  75. package/.codex/skills/team-issue/roles/coordinator/role.md +206 -194
  76. package/.codex/skills/team-issue/roles/explorer/role.md +94 -94
  77. package/.codex/skills/team-issue/roles/implementer/role.md +87 -87
  78. package/.codex/skills/team-issue/roles/integrator/role.md +84 -84
  79. package/.codex/skills/team-issue/roles/planner/role.md +81 -81
  80. package/.codex/skills/team-issue/roles/reviewer/role.md +86 -86
  81. package/.codex/skills/team-issue/specs/pipelines.md +124 -124
  82. package/.codex/skills/team-lifecycle-v4/MIGRATION-PLAN.md +6 -6
  83. package/.codex/skills/team-lifecycle-v4/SKILL.md +305 -242
  84. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +1 -1
  85. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +66 -24
  86. package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +13 -1
  87. package/.codex/skills/team-lifecycle-v4/roles/supervisor/role.md +1 -1
  88. package/.codex/skills/team-lifecycle-v4/templates/architecture.md +254 -254
  89. package/.codex/skills/team-lifecycle-v4/templates/epics.md +196 -196
  90. package/.codex/skills/team-lifecycle-v4/templates/product-brief.md +133 -133
  91. package/.codex/skills/team-lifecycle-v4/templates/requirements.md +224 -224
  92. package/.codex/skills/team-perf-opt/SKILL.md +68 -3
  93. package/.codex/skills/team-perf-opt/roles/benchmarker/role.md +89 -89
  94. package/.codex/skills/team-perf-opt/roles/coordinator/commands/analyze.md +61 -61
  95. package/.codex/skills/team-perf-opt/roles/coordinator/commands/monitor.md +35 -1
  96. package/.codex/skills/team-perf-opt/roles/coordinator/role.md +179 -167
  97. package/.codex/skills/team-perf-opt/roles/optimizer/role.md +97 -97
  98. package/.codex/skills/team-perf-opt/roles/profiler/role.md +73 -73
  99. package/.codex/skills/team-perf-opt/roles/reviewer/role.md +75 -75
  100. package/.codex/skills/team-perf-opt/roles/strategist/role.md +94 -94
  101. package/.codex/skills/team-perf-opt/specs/pipelines.md +65 -65
  102. package/.codex/skills/team-planex/SKILL.md +65 -3
  103. package/.codex/skills/team-planex/roles/coordinator/commands/analyze.md +52 -52
  104. package/.codex/skills/team-planex/roles/coordinator/commands/monitor.md +210 -164
  105. package/.codex/skills/team-planex/roles/coordinator/role.md +171 -159
  106. package/.codex/skills/team-planex/roles/executor/role.md +91 -91
  107. package/.codex/skills/team-planex/roles/planner/role.md +112 -112
  108. package/.codex/skills/team-planex/specs/pipelines.md +93 -93
  109. package/.codex/skills/team-quality-assurance/SKILL.md +60 -3
  110. package/.codex/skills/team-quality-assurance/roles/analyst/role.md +80 -80
  111. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/analyze.md +72 -72
  112. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +108 -108
  113. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +243 -209
  114. package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +176 -164
  115. package/.codex/skills/team-quality-assurance/roles/executor/role.md +66 -66
  116. package/.codex/skills/team-quality-assurance/roles/generator/role.md +68 -68
  117. package/.codex/skills/team-quality-assurance/roles/scout/role.md +67 -67
  118. package/.codex/skills/team-quality-assurance/roles/strategist/role.md +71 -71
  119. package/.codex/skills/team-quality-assurance/specs/pipelines.md +115 -115
  120. package/.codex/skills/team-review/SKILL.md +58 -3
  121. package/.codex/skills/team-review/roles/coordinator/commands/analyze.md +71 -71
  122. package/.codex/skills/team-review/roles/coordinator/commands/dispatch.md +90 -90
  123. package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +225 -185
  124. package/.codex/skills/team-review/roles/coordinator/role.md +175 -163
  125. package/.codex/skills/team-review/roles/fixer/role.md +76 -76
  126. package/.codex/skills/team-review/roles/reviewer/role.md +68 -68
  127. package/.codex/skills/team-review/roles/scanner/role.md +71 -71
  128. package/.codex/skills/team-review/specs/pipelines.md +102 -102
  129. package/.codex/skills/team-roadmap-dev/SKILL.md +55 -3
  130. package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/analyze.md +61 -61
  131. package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/monitor.md +502 -468
  132. package/.codex/skills/team-roadmap-dev/roles/coordinator/role.md +335 -322
  133. package/.codex/skills/team-roadmap-dev/roles/executor/role.md +71 -71
  134. package/.codex/skills/team-roadmap-dev/roles/planner/role.md +76 -76
  135. package/.codex/skills/team-roadmap-dev/roles/verifier/role.md +74 -74
  136. package/.codex/skills/team-roadmap-dev/specs/pipelines.md +93 -93
  137. package/.codex/skills/team-tech-debt/SKILL.md +56 -3
  138. package/.codex/skills/team-tech-debt/roles/assessor/role.md +69 -69
  139. package/.codex/skills/team-tech-debt/roles/coordinator/commands/analyze.md +47 -47
  140. package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +272 -231
  141. package/.codex/skills/team-tech-debt/roles/coordinator/role.md +172 -160
  142. package/.codex/skills/team-tech-debt/roles/executor/role.md +76 -76
  143. package/.codex/skills/team-tech-debt/roles/planner/role.md +69 -69
  144. package/.codex/skills/team-tech-debt/roles/scanner/role.md +82 -82
  145. package/.codex/skills/team-tech-debt/roles/validator/role.md +75 -75
  146. package/.codex/skills/team-tech-debt/specs/pipelines.md +47 -47
  147. package/.codex/skills/team-testing/SKILL.md +72 -3
  148. package/.codex/skills/team-testing/roles/analyst/role.md +95 -95
  149. package/.codex/skills/team-testing/roles/coordinator/commands/analyze.md +70 -70
  150. package/.codex/skills/team-testing/roles/coordinator/commands/dispatch.md +106 -106
  151. package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +283 -242
  152. package/.codex/skills/team-testing/roles/coordinator/role.md +184 -172
  153. package/.codex/skills/team-testing/roles/executor/role.md +96 -96
  154. package/.codex/skills/team-testing/roles/generator/role.md +95 -95
  155. package/.codex/skills/team-testing/roles/strategist/role.md +83 -83
  156. package/.codex/skills/team-testing/specs/pipelines.md +101 -101
  157. package/.codex/skills/team-uidesign/SKILL.md +65 -3
  158. package/.codex/skills/team-uidesign/roles/coordinator/commands/analyze.md +59 -59
  159. package/.codex/skills/team-uidesign/roles/coordinator/commands/dispatch.md +156 -156
  160. package/.codex/skills/team-uidesign/roles/coordinator/commands/monitor.md +234 -194
  161. package/.codex/skills/team-uidesign/roles/coordinator/role.md +211 -199
  162. package/.codex/skills/team-uidesign/roles/designer/role.md +69 -69
  163. package/.codex/skills/team-uidesign/roles/implementer/role.md +72 -72
  164. package/.codex/skills/team-uidesign/roles/researcher/role.md +82 -82
  165. package/.codex/skills/team-uidesign/roles/reviewer/role.md +67 -67
  166. package/.codex/skills/team-uidesign/specs/pipelines.md +76 -76
  167. package/.codex/skills/team-ultra-analyze/SKILL.md +73 -3
  168. package/.codex/skills/team-ultra-analyze/roles/analyst/role.md +90 -90
  169. package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/analyze.md +73 -73
  170. package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/monitor.md +50 -9
  171. package/.codex/skills/team-ultra-analyze/roles/coordinator/role.md +255 -243
  172. package/.codex/skills/team-ultra-analyze/roles/discussant/role.md +104 -104
  173. package/.codex/skills/team-ultra-analyze/roles/explorer/role.md +74 -74
  174. package/.codex/skills/team-ultra-analyze/roles/synthesizer/role.md +78 -78
  175. package/.codex/skills/team-ultra-analyze/specs/pipelines.md +64 -64
  176. package/.codex/skills/team-ux-improve/SKILL.md +64 -3
  177. package/.codex/skills/team-ux-improve/roles/coordinator/commands/analyze.md +62 -62
  178. package/.codex/skills/team-ux-improve/roles/coordinator/commands/dispatch.md +233 -233
  179. package/.codex/skills/team-ux-improve/roles/coordinator/commands/monitor.md +195 -160
  180. package/.codex/skills/team-ux-improve/roles/coordinator/role.md +170 -158
  181. package/.codex/skills/team-ux-improve/roles/designer/role.md +122 -122
  182. package/.codex/skills/team-ux-improve/roles/diagnoser/role.md +93 -93
  183. package/.codex/skills/team-ux-improve/roles/explorer/role.md +77 -77
  184. package/.codex/skills/team-ux-improve/roles/implementer/role.md +102 -102
  185. package/.codex/skills/team-ux-improve/roles/scanner/role.md +93 -93
  186. package/.codex/skills/team-ux-improve/roles/tester/role.md +84 -84
  187. package/.codex/skills/team-ux-improve/specs/pipelines.md +54 -54
  188. package/.codex/skills/workflow-test-fix-cycle/SKILL.md +402 -402
  189. package/README.md +1 -0
  190. package/package.json +1 -1
  191. package/.claude/skills/team-iterdev/SKILL.md +0 -127
  192. package/.claude/skills/team-iterdev/roles/architect/role.md +0 -65
  193. package/.claude/skills/team-iterdev/roles/coordinator/commands/analyze.md +0 -62
  194. package/.claude/skills/team-iterdev/roles/coordinator/commands/dispatch.md +0 -234
  195. package/.claude/skills/team-iterdev/roles/coordinator/commands/monitor.md +0 -182
  196. package/.claude/skills/team-iterdev/roles/coordinator/role.md +0 -153
  197. package/.claude/skills/team-iterdev/roles/developer/role.md +0 -74
  198. package/.claude/skills/team-iterdev/roles/reviewer/role.md +0 -66
  199. package/.claude/skills/team-iterdev/roles/tester/role.md +0 -88
  200. package/.claude/skills/team-iterdev/specs/pipelines.md +0 -94
  201. package/.claude/skills/team-iterdev/specs/team-config.json +0 -172
  202. package/.codex/skills/team-iterdev/SKILL.md +0 -158
  203. package/.codex/skills/team-iterdev/roles/architect/role.md +0 -65
  204. package/.codex/skills/team-iterdev/roles/coordinator/commands/analyze.md +0 -62
  205. package/.codex/skills/team-iterdev/roles/coordinator/commands/dispatch.md +0 -187
  206. package/.codex/skills/team-iterdev/roles/coordinator/commands/monitor.md +0 -186
  207. package/.codex/skills/team-iterdev/roles/coordinator/role.md +0 -181
  208. package/.codex/skills/team-iterdev/roles/developer/role.md +0 -74
  209. package/.codex/skills/team-iterdev/roles/reviewer/role.md +0 -66
  210. package/.codex/skills/team-iterdev/roles/tester/role.md +0 -88
  211. package/.codex/skills/team-iterdev/specs/pipelines.md +0 -94
  212. package/.codex/skills/team-iterdev/specs/team-config.json +0 -172
@@ -1,160 +1,195 @@
1
- # Monitor Pipeline
2
-
3
- Event-driven pipeline coordination. Beat model: coordinator wake -> process -> spawn -> STOP.
4
-
5
- ## Constants
6
-
7
- - SPAWN_MODE: background
8
- - ONE_STEP_PER_INVOCATION: true
9
- - FAST_ADVANCE_AWARE: true
10
- - WORKER_AGENT: team_worker
11
- - MAX_TEST_ITERATIONS: 5
12
-
13
- ## Handler Router
14
-
15
- | Source | Handler |
16
- |--------|---------|
17
- | Message contains [scanner], [diagnoser], [designer], [implementer], [tester] | handleCallback |
18
- | "capability_gap" | handleAdapt |
19
- | "check" or "status" | handleCheck |
20
- | "resume" or "continue" | handleResume |
21
- | All tasks completed | handleComplete |
22
- | Default | handleSpawnNext |
23
-
24
- ## handleCallback
25
-
26
- Worker completed. Process and advance.
27
-
28
- 1. Parse message to identify role and task ID:
29
-
30
- | Message Pattern | Role |
31
- |----------------|------|
32
- | `[scanner]` or `SCAN-*` | scanner |
33
- | `[diagnoser]` or `DIAG-*` | diagnoser |
34
- | `[designer]` or `DESIGN-*` | designer |
35
- | `[implementer]` or `IMPL-*` | implementer |
36
- | `[tester]` or `TEST-*` | tester |
37
-
38
- 2. Check if progress update (inner loop) or final completion
39
- 3. Progress update -> update session state, STOP
40
- 4. Completion -> mark task done:
41
- ```
42
- // Read tasks.json, find task by id, update status
43
- tasks = JSON.parse(Read("<session>/tasks.json"))
44
- task = tasks.find(t => t.id === "<task-id>")
45
- task.status = "completed"
46
- Write("<session>/tasks.json", JSON.stringify(tasks, null, 2))
47
- ```
48
- 5. Remove from active_workers, record completion in session
49
-
50
- 6. Check for checkpoints:
51
- - **TEST-001 completes** -> Validation Gate:
52
- Read test results from `.msg/meta.json`
53
-
54
- | Condition | Action |
55
- |-----------|--------|
56
- | pass_rate >= 95% | -> handleSpawnNext (pipeline likely complete) |
57
- | pass_rate < 95% AND iterations < max | Log warning, still -> handleSpawnNext |
58
- | pass_rate < 95% AND iterations >= max | Accept current state -> handleComplete |
59
-
60
- 7. -> handleSpawnNext
61
-
62
- ## handleCheck
63
-
64
- Read-only status report, then STOP.
65
-
66
- ```
67
- Pipeline Status (standard):
68
- [DONE] SCAN-001 (scanner) -> artifacts/scan-report.md
69
- [DONE] DIAG-001 (diagnoser) -> artifacts/diagnosis.md
70
- [RUN] DESIGN-001 (designer) -> designing solutions...
71
- [WAIT] IMPL-001 (implementer) -> blocked by DESIGN-001
72
- [WAIT] TEST-001 (tester) -> blocked by IMPL-001
73
-
74
- Session: <session-id>
75
- Commands: 'resume' to advance | 'check' to refresh
76
- ```
77
-
78
- Output status -- do NOT advance pipeline.
79
-
80
- ## handleResume
81
-
82
- 1. Audit task list for inconsistencies:
83
- - Tasks stuck in "in_progress" -> reset to "pending"
84
- - Tasks with completed blockers but still "pending" -> include in spawn list
85
- 2. -> handleSpawnNext
86
-
87
- ## handleSpawnNext
88
-
89
- Find ready tasks, spawn workers, STOP.
90
-
91
- 1. Read tasks from `<session>/tasks.json`
92
- 2. Collect: completedSubjects, inProgressSubjects, readySubjects (pending + all blockedBy completed)
93
- 3. No ready + work in progress -> report waiting, STOP
94
- 4. No ready + nothing in progress -> handleComplete
95
- 5. Has ready -> for each:
96
- a. Check inner loop role with active worker -> skip (worker picks up)
97
- b. Update task status to "in_progress" in tasks.json
98
- c. team_msg log -> task_unblocked
99
- d. Spawn team_worker:
100
-
101
- ```
102
- spawn_agent({
103
- agent_type: "team_worker",
104
- items: [{
105
- description: "Spawn <role> worker for <task-id>",
106
- team_name: "ux-improve",
107
- name: "<role>",
108
- prompt: `## Role Assignment
109
- role: <role>
110
- role_spec: ~ or <project>/.codex/skills/team-ux-improve/roles/<role>/role.md
111
- session: <session-folder>
112
- session_id: <session-id>
113
- team_name: ux-improve
114
- requirement: <task-description>
115
- inner_loop: <true|false>
116
-
117
- Read role_spec file to load Phase 2-4 domain instructions.
118
- Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
119
- }]
120
- })
121
- ```
122
-
123
- Stage-to-role mapping:
124
- | Task Prefix | Role |
125
- |-------------|------|
126
- | SCAN | scanner |
127
- | DIAG | diagnoser |
128
- | DESIGN | designer |
129
- | IMPL | implementer |
130
- | TEST | tester |
131
-
132
- Inner loop roles: implementer (inner_loop: true)
133
- Single-task roles: scanner, diagnoser, designer, tester (inner_loop: false)
134
-
135
- 5. Add to active_workers, update session, output summary, STOP
136
-
137
- ## handleComplete
138
-
139
- Pipeline done. Generate report and completion action.
140
-
141
- 1. Verify all tasks (including any fix-verify iterations) have status "completed"
142
- 2. If any tasks not completed -> handleSpawnNext
143
- 3. If all completed -> transition to coordinator Phase 5
144
-
145
- ## handleAdapt
146
-
147
- Capability gap reported mid-pipeline.
148
-
149
- 1. Parse gap description
150
- 2. Check if existing role covers it -> redirect
151
- 3. Role count < 5 -> generate dynamic role spec
152
- 4. Create new task, spawn worker
153
- 5. Role count >= 5 -> merge or pause
154
-
155
- ## Fast-Advance Reconciliation
156
-
157
- On every coordinator wake:
158
- 1. Read team_msg entries with type="fast_advance"
159
- 2. Sync active_workers with spawned successors
160
- 3. No duplicate spawns
1
+ # Monitor Pipeline
2
+
3
+ Event-driven pipeline coordination. Beat model: coordinator wake -> process -> spawn -> STOP.
4
+
5
+ ## Constants
6
+
7
+ - SPAWN_MODE: background
8
+ - ONE_STEP_PER_INVOCATION: true
9
+ - FAST_ADVANCE_AWARE: true
10
+ - WORKER_AGENT: team_worker
11
+ - MAX_TEST_ITERATIONS: 5
12
+
13
+ ## Handler Router
14
+
15
+ | Source | Handler |
16
+ |--------|---------|
17
+ | Message contains [scanner], [diagnoser], [designer], [implementer], [tester] | handleCallback |
18
+ | "capability_gap" | handleAdapt |
19
+ | "check" or "status" | handleCheck |
20
+ | "resume" or "continue" | handleResume |
21
+ | All tasks completed | handleComplete |
22
+ | Default | handleSpawnNext |
23
+
24
+ ## handleCallback
25
+
26
+ Worker completed. Process and advance.
27
+
28
+ 1. Parse message to identify role and task ID:
29
+
30
+ | Message Pattern | Role |
31
+ |----------------|------|
32
+ | `[scanner]` or `SCAN-*` | scanner |
33
+ | `[diagnoser]` or `DIAG-*` | diagnoser |
34
+ | `[designer]` or `DESIGN-*` | designer |
35
+ | `[implementer]` or `IMPL-*` | implementer |
36
+ | `[tester]` or `TEST-*` | tester |
37
+
38
+ 2. Check if progress update (inner loop) or final completion
39
+ 3. Progress update -> update session state, STOP
40
+ 4. Completion -> mark task done:
41
+ ```
42
+ // Read tasks.json, find task by id, update status
43
+ tasks = JSON.parse(Read("<session>/tasks.json"))
44
+ task = tasks.find(t => t.id === "<task-id>")
45
+ task.status = "completed"
46
+ Write("<session>/tasks.json", JSON.stringify(tasks, null, 2))
47
+ ```
48
+ 5. Remove from active_workers, record completion in session
49
+
50
+ 6. Check for checkpoints:
51
+ - **TEST-001 completes** -> Validation Gate:
52
+ Read test results from `.msg/meta.json`
53
+
54
+ | Condition | Action |
55
+ |-----------|--------|
56
+ | pass_rate >= 95% | -> handleSpawnNext (pipeline likely complete) |
57
+ | pass_rate < 95% AND iterations < max | Log warning, still -> handleSpawnNext |
58
+ | pass_rate < 95% AND iterations >= max | Accept current state -> handleComplete |
59
+
60
+ 7. -> handleSpawnNext
61
+
62
+ ## handleCheck
63
+
64
+ Read-only status report, then STOP.
65
+
66
+ ```
67
+ Pipeline Status (standard):
68
+ [DONE] SCAN-001 (scanner) -> artifacts/scan-report.md
69
+ [DONE] DIAG-001 (diagnoser) -> artifacts/diagnosis.md
70
+ [RUN] DESIGN-001 (designer) -> designing solutions...
71
+ [WAIT] IMPL-001 (implementer) -> blocked by DESIGN-001
72
+ [WAIT] TEST-001 (tester) -> blocked by IMPL-001
73
+
74
+ Session: <session-id>
75
+ Commands: 'resume' to advance | 'check' to refresh
76
+ ```
77
+
78
+ Output status -- do NOT advance pipeline.
79
+
80
+ ## handleResume
81
+
82
+ **Agent Health Check** (v4):
83
+ ```
84
+ // Verify actual running agents match session state
85
+ const runningAgents = list_agents({})
86
+ // For each active_agent in tasks.json:
87
+ // - If agent NOT in runningAgents -> agent crashed
88
+ // - Reset that task to pending, remove from active_agents
89
+ // This prevents stale agent references from blocking the pipeline
90
+ ```
91
+
92
+ 1. Audit task list for inconsistencies:
93
+ - Tasks stuck in "in_progress" -> reset to "pending"
94
+ - Tasks with completed blockers but still "pending" -> include in spawn list
95
+ 2. -> handleSpawnNext
96
+
97
+ ## handleSpawnNext
98
+
99
+ Find ready tasks, spawn workers, STOP.
100
+
101
+ 1. Read tasks from `<session>/tasks.json`
102
+ 2. Collect: completedSubjects, inProgressSubjects, readySubjects (pending + all blockedBy completed)
103
+ 3. No ready + work in progress -> report waiting, STOP
104
+ 4. No ready + nothing in progress -> handleComplete
105
+ 5. Has ready -> for each:
106
+ a. Check inner loop role with active worker -> skip (worker picks up)
107
+ b. Update task status to "in_progress" in tasks.json
108
+ c. team_msg log -> task_unblocked
109
+ d. Spawn team_worker:
110
+
111
+ ```
112
+ spawn_agent({
113
+ agent_type: "team_worker",
114
+ task_name: taskId, // e.g., "SCAN-001" — enables named targeting
115
+ items: [{
116
+ description: "Spawn <role> worker for <task-id>",
117
+ team_name: "ux-improve",
118
+ name: "<role>",
119
+ prompt: `## Role Assignment
120
+ role: <role>
121
+ role_spec: ~ or <project>/.codex/skills/team-ux-improve/roles/<role>/role.md
122
+ session: <session-folder>
123
+ session_id: <session-id>
124
+ team_name: ux-improve
125
+ requirement: <task-description>
126
+ inner_loop: <true|false>
127
+
128
+ Read role_spec file to load Phase 2-4 domain instructions.
129
+ Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
130
+ }]
131
+ })
132
+ ```
133
+
134
+ Stage-to-role mapping:
135
+ | Task Prefix | Role |
136
+ |-------------|------|
137
+ | SCAN | scanner |
138
+ | DIAG | diagnoser |
139
+ | DESIGN | designer |
140
+ | IMPL | implementer |
141
+ | TEST | tester |
142
+
143
+ Inner loop roles: implementer (inner_loop: true)
144
+ Single-task roles: scanner, diagnoser, designer, tester (inner_loop: false)
145
+
146
+ 5. Add to active_workers, update session, output summary, STOP
147
+ 6. Use `wait_agent({ targets: [<spawned-task-names>], timeout_ms: 900000 })` to wait for callbacks. If `result.timed_out`, mark tasks as `timed_out` and close agents. Use `close_agent({ target: taskId })` with task_name for cleanup.
148
+
149
+ **Cross-Agent Supplementary Context** (v4):
150
+
151
+ When spawning workers in a later pipeline phase, send upstream results as supplementary context to already-running workers:
152
+
153
+ ```
154
+ // Example: Send scan results to running diagnoser
155
+ send_message({
156
+ target: "<running-agent-task-name>",
157
+ items: [{ type: "text", text: `## Supplementary Context\n${upstreamFindings}` }]
158
+ })
159
+ // Note: send_message queues info without interrupting the agent's current work
160
+ ```
161
+
162
+ Use `send_message` (not `assign_task`) for supplementary info that enriches but doesn't redirect the agent's current task.
163
+
164
+ ## handleComplete
165
+
166
+ **Cleanup Verification** (v4):
167
+ ```
168
+ // Verify all agents are properly closed
169
+ const remaining = list_agents({})
170
+ // If any team agents still running -> close_agent each
171
+ // Ensures clean session shutdown
172
+ ```
173
+
174
+ Pipeline done. Generate report and completion action.
175
+
176
+ 1. Verify all tasks (including any fix-verify iterations) have status "completed"
177
+ 2. If any tasks not completed -> handleSpawnNext
178
+ 3. If all completed -> transition to coordinator Phase 5
179
+
180
+ ## handleAdapt
181
+
182
+ Capability gap reported mid-pipeline.
183
+
184
+ 1. Parse gap description
185
+ 2. Check if existing role covers it -> redirect
186
+ 3. Role count < 5 -> generate dynamic role spec
187
+ 4. Create new task, spawn worker
188
+ 5. Role count >= 5 -> merge or pause
189
+
190
+ ## Fast-Advance Reconciliation
191
+
192
+ On every coordinator wake:
193
+ 1. Read team_msg entries with type="fast_advance"
194
+ 2. Sync active_workers with spawned successors
195
+ 3. No duplicate spawns