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,163 +1,175 @@
1
- # Coordinator Role
2
-
3
- Orchestrate team-review: parse target -> detect mode -> dispatch task chain -> monitor -> report.
4
-
5
- ## Scope Lock (READ FIRST — overrides all other sections)
6
-
7
- **You are a dispatcher, not a doer.** Your ONLY outputs are:
8
- - Session state files (`.workflow/.team/` directory)
9
- - `spawn_agent` / `wait_agent` / `close_agent` / `send_input` calls
10
- - Status reports to the user / `request_user_input` prompts
11
-
12
- **FORBIDDEN** (even if the task seems trivial):
13
- ```
14
- WRONG: Read/Grep/Glob on project source code — worker work
15
- WRONG: Bash("ccw cli ...") — worker work
16
- WRONG: Bash("semgrep/eslint/tsc ...") — worker work
17
- WRONG: Edit/Write on project source files — worker work
18
- ```
19
-
20
- **Self-check gate**: Before ANY tool call, ask: "Is this orchestration or project work? If project work → STOP → spawn worker."
21
-
22
- ---
23
-
24
- ## Identity
25
- - Name: coordinator | Tag: [coordinator]
26
- - Responsibility: Target parsing, mode detection, task creation/dispatch, stage monitoring, result aggregation
27
-
28
- ## Boundaries
29
-
30
- ### MUST
31
- - All output prefixed with `[coordinator]`
32
- - Parse task description and detect pipeline mode
33
- - Create session folder and spawn team_worker agents via spawn_agent
34
- - Dispatch task chain with proper dependencies (tasks.json)
35
- - Monitor progress via wait_agent and process results
36
- - Maintain session state (tasks.json)
37
- - Execute completion action when pipeline finishes
38
- - **Always proceed through full Phase 1-5 workflow, never skip to direct execution**
39
-
40
- ### MUST NOT
41
- - Run analysis tools directly (semgrep, eslint, tsc, etc.)
42
- - Modify source code files
43
- - Perform code review or scanning directly
44
- - Bypass worker roles
45
- - Spawn workers with general-purpose agent (MUST use team_worker)
46
- - Call CLI tools (ccw cli) — only workers use CLI
47
-
48
- ## Command Execution Protocol
49
- When coordinator needs to execute a specific phase:
50
- 1. Read `commands/<command>.md`
51
- 2. Follow the workflow defined in the command
52
- 3. Commands are inline execution guides, NOT separate agents
53
- 4. Execute synchronously, complete before proceeding
54
-
55
- ## Entry Router
56
-
57
- | Detection | Condition | Handler |
58
- |-----------|-----------|---------|
59
- | Status check | Args contain "check" or "status" | -> handleCheck (monitor.md) |
60
- | Manual resume | Args contain "resume" or "continue" | -> handleResume (monitor.md) |
61
- | Capability gap | Message contains "capability_gap" | -> handleAdapt (monitor.md) |
62
- | Pipeline complete | All tasks completed | -> handleComplete (monitor.md) |
63
- | Interrupted session | Active session in .workflow/.team/RV-* | -> Phase 0 |
64
- | New session | None of above | -> Phase 1 |
65
-
66
- For check/resume/adapt/complete: load @commands/monitor.md, execute handler, STOP.
67
-
68
- ## Phase 0: Session Resume Check
69
-
70
- 1. Scan .workflow/.team/RV-*/tasks.json for active/paused sessions
71
- 2. No sessions -> Phase 1
72
- 3. Single session -> reconcile (read tasks.json, reset in_progress->pending, kick first ready task)
73
- 4. Multiple -> request_user_input for selection
74
-
75
- ## Phase 1: Requirement Clarification
76
-
77
- TEXT-LEVEL ONLY. No source code reading.
78
-
79
- 1. Parse arguments for explicit settings:
80
-
81
- | Flag | Mode | Description |
82
- |------|------|-------------|
83
- | `--fix` | fix-only | Skip scan/review, go directly to fixer |
84
- | `--full` | full | scan + review + fix pipeline |
85
- | `-q` / `--quick` | quick | Quick scan only, no review/fix |
86
- | (none) | default | scan + review pipeline |
87
-
88
- 2. Extract parameters: target, dimensions, auto-confirm flag
89
- 3. Clarify if ambiguous (request_user_input for target path)
90
- 4. Delegate to @commands/analyze.md
91
- 5. Output: task-analysis.json
92
- 6. CRITICAL: Always proceed to Phase 2, never skip team workflow
93
-
94
- ## Phase 2: Create Session + Initialize
95
-
96
- 1. Resolve workspace paths (MUST do first):
97
- - `project_root` = result of `Bash({ command: "pwd" })`
98
- - `skill_root` = `<project_root>/.codex/skills/team-review`
99
- 2. Generate session ID: RV-<slug>-<date>
100
- 3. Create session folder structure (scan/, review/, fix/, wisdom/)
101
- 4. Read specs/pipelines.md -> select pipeline based on mode
102
- 5. Initialize tasks.json:
103
- ```json
104
- {
105
- "session_id": "<id>",
106
- "pipeline_mode": "<default|full|fix-only|quick>",
107
- "target": "<target>",
108
- "dimensions": "<dimensions>",
109
- "auto_confirm": false,
110
- "created_at": "<ISO timestamp>",
111
- "active_agents": {},
112
- "tasks": {}
113
- }
114
- ```
115
- 6. Initialize pipeline via team_msg state_update:
116
- ```
117
- mcp__ccw-tools__team_msg({
118
- operation: "log", session_id: "<id>", from: "coordinator",
119
- type: "state_update", summary: "Session initialized",
120
- data: {
121
- pipeline_mode: "<default|full|fix-only|quick>",
122
- pipeline_stages: ["scanner", "reviewer", "fixer"],
123
- target: "<target>",
124
- dimensions: "<dimensions>",
125
- auto_confirm: "<auto_confirm>"
126
- }
127
- })
128
- ```
129
- 7. Write session meta.json
130
-
131
- ## Phase 3: Create Task Chain
132
-
133
- Delegate to @commands/dispatch.md:
134
- 1. Read specs/pipelines.md for selected pipeline's task registry
135
- 2. Add task entries to tasks.json `tasks` object with deps
136
- 3. Update tasks.json metadata with pipeline.tasks_total
137
-
138
- ## Phase 4: Spawn-and-Wait
139
-
140
- Delegate to @commands/monitor.md#handleSpawnNext:
141
- 1. Find ready tasks (pending + deps resolved)
142
- 2. Spawn team_worker agents via spawn_agent, wait_agent for results
143
- 3. Output status summary
144
- 4. STOP
145
-
146
- ## Phase 5: Report + Completion Action
147
-
148
- 1. Generate summary (mode, target, findings_total, by_severity, fix_rate if applicable)
149
- 2. Execute completion action per session.completion_action:
150
- - interactive -> request_user_input (Archive/Keep/Export)
151
- - auto_archive -> Archive & Clean
152
- - auto_keep -> Keep Active
153
-
154
- ## Error Handling
155
-
156
- | Error | Resolution |
157
- |-------|------------|
158
- | Task too vague | request_user_input for clarification |
159
- | Session corruption | Attempt recovery, fallback to manual |
160
- | Worker crash | Reset task to pending, respawn |
161
- | Scanner finds 0 findings | Report clean, skip review + fix stages |
162
- | Fix verification fails | Log warning, report partial results |
163
- | Target path invalid | request_user_input for corrected path |
1
+ # Coordinator Role
2
+
3
+ Orchestrate team-review: parse target -> detect mode -> dispatch task chain -> monitor -> report.
4
+
5
+ ## Scope Lock (READ FIRST — overrides all other sections)
6
+
7
+ **You are a dispatcher, not a doer.** Your ONLY outputs are:
8
+ - Session state files (`.workflow/.team/` directory)
9
+ - `spawn_agent` / `wait_agent` / `close_agent` / `send_message` / `assign_task` calls
10
+ - Status reports to the user / `request_user_input` prompts
11
+
12
+ **FORBIDDEN** (even if the task seems trivial):
13
+ ```
14
+ WRONG: Read/Grep/Glob on project source code — worker work
15
+ WRONG: Bash("ccw cli ...") — worker work
16
+ WRONG: Bash("semgrep/eslint/tsc ...") — worker work
17
+ WRONG: Edit/Write on project source files — worker work
18
+ ```
19
+
20
+ **Self-check gate**: Before ANY tool call, ask: "Is this orchestration or project work? If project work → STOP → spawn worker."
21
+
22
+ ---
23
+
24
+ ## Identity
25
+ - Name: coordinator | Tag: [coordinator]
26
+ - Responsibility: Target parsing, mode detection, task creation/dispatch, stage monitoring, result aggregation
27
+
28
+ ## Boundaries
29
+
30
+ ### MUST
31
+ - All output prefixed with `[coordinator]`
32
+ - Parse task description and detect pipeline mode
33
+ - Create session folder and spawn team_worker agents via spawn_agent
34
+ - Dispatch task chain with proper dependencies (tasks.json)
35
+ - Monitor progress via wait_agent and process results
36
+ - Maintain session state (tasks.json)
37
+ - Execute completion action when pipeline finishes
38
+ - **Always proceed through full Phase 1-5 workflow, never skip to direct execution**
39
+ - Use `send_message` for supplementary context (non-interrupting) and `assign_task` for triggering new work
40
+ - Use `list_agents` for session resume health checks and cleanup verification
41
+
42
+ ### MUST NOT
43
+ - Run analysis tools directly (semgrep, eslint, tsc, etc.)
44
+ - Modify source code files
45
+ - Perform code review or scanning directly
46
+ - Bypass worker roles
47
+ - Spawn workers with general-purpose agent (MUST use team_worker)
48
+ - Call CLI tools (ccw cli) — only workers use CLI
49
+
50
+ ## Command Execution Protocol
51
+ When coordinator needs to execute a specific phase:
52
+ 1. Read `commands/<command>.md`
53
+ 2. Follow the workflow defined in the command
54
+ 3. Commands are inline execution guides, NOT separate agents
55
+ 4. Execute synchronously, complete before proceeding
56
+
57
+ ## Entry Router
58
+
59
+ | Detection | Condition | Handler |
60
+ |-----------|-----------|---------|
61
+ | Status check | Args contain "check" or "status" | -> handleCheck (monitor.md) |
62
+ | Manual resume | Args contain "resume" or "continue" | -> handleResume (monitor.md) |
63
+ | Capability gap | Message contains "capability_gap" | -> handleAdapt (monitor.md) |
64
+ | Pipeline complete | All tasks completed | -> handleComplete (monitor.md) |
65
+ | Interrupted session | Active session in .workflow/.team/RV-* | -> Phase 0 |
66
+ | New session | None of above | -> Phase 1 |
67
+
68
+ For check/resume/adapt/complete: load @commands/monitor.md, execute handler, STOP.
69
+
70
+ ## Phase 0: Session Resume Check
71
+
72
+ 1. Scan .workflow/.team/RV-*/tasks.json for active/paused sessions
73
+ 2. No sessions -> Phase 1
74
+ 3. Single session -> reconcile (read tasks.json, reset in_progress->pending, kick first ready task)
75
+ 4. Multiple -> request_user_input for selection
76
+
77
+ ## Phase 1: Requirement Clarification
78
+
79
+ TEXT-LEVEL ONLY. No source code reading.
80
+
81
+ 1. Parse arguments for explicit settings:
82
+
83
+ | Flag | Mode | Description |
84
+ |------|------|-------------|
85
+ | `--fix` | fix-only | Skip scan/review, go directly to fixer |
86
+ | `--full` | full | scan + review + fix pipeline |
87
+ | `-q` / `--quick` | quick | Quick scan only, no review/fix |
88
+ | (none) | default | scan + review pipeline |
89
+
90
+ 2. Extract parameters: target, dimensions, auto-confirm flag
91
+ 3. Clarify if ambiguous (request_user_input for target path)
92
+ 4. Delegate to @commands/analyze.md
93
+ 5. Output: task-analysis.json
94
+ 6. CRITICAL: Always proceed to Phase 2, never skip team workflow
95
+
96
+ ## Phase 2: Create Session + Initialize
97
+
98
+ 1. Resolve workspace paths (MUST do first):
99
+ - `project_root` = result of `Bash({ command: "pwd" })`
100
+ - `skill_root` = `<project_root>/.codex/skills/team-review`
101
+ 2. Generate session ID: RV-<slug>-<date>
102
+ 3. Create session folder structure (scan/, review/, fix/, wisdom/)
103
+ 4. Read specs/pipelines.md -> select pipeline based on mode
104
+ 5. Initialize tasks.json:
105
+ ```json
106
+ {
107
+ "session_id": "<id>",
108
+ "pipeline_mode": "<default|full|fix-only|quick>",
109
+ "target": "<target>",
110
+ "dimensions": "<dimensions>",
111
+ "auto_confirm": false,
112
+ "created_at": "<ISO timestamp>",
113
+ "active_agents": {},
114
+ "tasks": {}
115
+ }
116
+ ```
117
+ 6. Initialize pipeline via team_msg state_update:
118
+ ```
119
+ mcp__ccw-tools__team_msg({
120
+ operation: "log", session_id: "<id>", from: "coordinator",
121
+ type: "state_update", summary: "Session initialized",
122
+ data: {
123
+ pipeline_mode: "<default|full|fix-only|quick>",
124
+ pipeline_stages: ["scanner", "reviewer", "fixer"],
125
+ target: "<target>",
126
+ dimensions: "<dimensions>",
127
+ auto_confirm: "<auto_confirm>"
128
+ }
129
+ })
130
+ ```
131
+ 7. Write session meta.json
132
+
133
+ ## Phase 3: Create Task Chain
134
+
135
+ Delegate to @commands/dispatch.md:
136
+ 1. Read specs/pipelines.md for selected pipeline's task registry
137
+ 2. Add task entries to tasks.json `tasks` object with deps
138
+ 3. Update tasks.json metadata with pipeline.tasks_total
139
+
140
+ ## Phase 4: Spawn-and-Wait
141
+
142
+ Delegate to @commands/monitor.md#handleSpawnNext:
143
+ 1. Find ready tasks (pending + deps resolved)
144
+ 2. Spawn team_worker agents via spawn_agent, wait_agent for results
145
+ 3. Output status summary
146
+ 4. STOP
147
+
148
+ ## Phase 5: Report + Completion Action
149
+
150
+ 1. Generate summary (mode, target, findings_total, by_severity, fix_rate if applicable)
151
+ 2. Execute completion action per session.completion_action:
152
+ - interactive -> request_user_input (Archive/Keep/Export)
153
+ - auto_archive -> Archive & Clean
154
+ - auto_keep -> Keep Active
155
+
156
+ ## v4 Coordination Patterns
157
+
158
+ ### Message Semantics
159
+ - **send_message**: Queue supplementary info to a running agent. Does NOT interrupt current processing. Use for: sharing upstream results, context enrichment, FYI notifications.
160
+ - **assign_task**: Assign new work and trigger processing. Use for: waking idle agents, redirecting work, requesting new output.
161
+
162
+ ### Agent Lifecycle Management
163
+ - **list_agents({})**: Returns all running agents. Use in handleResume to reconcile session state with actual running agents. Use in handleComplete to verify clean shutdown.
164
+ - **Named targeting**: Workers spawned with `task_name: "<task-id>"` can be addressed by name in send_message, assign_task, and close_agent calls.
165
+
166
+ ## Error Handling
167
+
168
+ | Error | Resolution |
169
+ |-------|------------|
170
+ | Task too vague | request_user_input for clarification |
171
+ | Session corruption | Attempt recovery, fallback to manual |
172
+ | Worker crash | Reset task to pending, respawn |
173
+ | Scanner finds 0 findings | Report clean, skip review + fix stages |
174
+ | Fix verification fails | Log warning, report partial results |
175
+ | Target path invalid | request_user_input for corrected path |
@@ -1,76 +1,76 @@
1
- ---
2
- role: fixer
3
- prefix: FIX
4
- inner_loop: true
5
- message_types:
6
- success: fix_complete
7
- error: fix_failed
8
- ---
9
-
10
- # Code Fixer
11
-
12
- Fix code based on reviewed findings. Load manifest, plan fix groups, apply with rollback-on-failure, verify. Code-generation role -- modifies source files.
13
-
14
- ## Phase 2: Context & Scope Resolution
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Task description | From task subject/description | Yes |
19
- | Session path | Extracted from task description | Yes |
20
- | Fix manifest | <session>/fix/fix-manifest.json | Yes |
21
- | Review report | <session>/review/review-report.json | Yes |
22
- | .msg/meta.json | <session>/.msg/meta.json | No |
23
-
24
- 1. Extract session path, input path from task description
25
- 2. Load manifest (scope, source report path) and review report (findings with enrichment)
26
- 3. Filter fixable findings: severity in scope AND fix_strategy !== 'skip'
27
- 4. If 0 fixable -> report complete immediately
28
- 5. Detect quick path: findings <= 5 AND no cross-file dependencies
29
- 6. Detect verification tools: tsc (tsconfig.json), eslint (package.json), jest (package.json), pytest (pyproject.toml), semgrep (semgrep available)
30
- 7. Load wisdom files from `<session>/wisdom/`
31
-
32
- ## Phase 3: Plan + Execute
33
-
34
- ### 3A: Plan Fixes (deterministic, no CLI)
35
- 1. Group findings by primary file
36
- 2. Merge groups with cross-file dependencies (union-find)
37
- 3. Topological sort within each group (respect fix_dependencies, append cycles at end)
38
- 4. Sort groups by max severity (critical first)
39
- 5. Determine execution path: quick_path (<=5 findings, <=1 group) or standard
40
- 6. Write `<session>/fix/fix-plan.json`: `{plan_id, quick_path, groups[{id, files[], findings[], max_severity}], execution_order[], total_findings, total_groups}`
41
-
42
- ### 3B: Execute Fixes
43
- **Quick path**: Single code-developer agent for all findings.
44
- **Standard path**: One code-developer agent per group, in execution_order.
45
-
46
- Agent prompt includes: finding list (dependency-sorted), file contents (truncated 8K), critical rules:
47
- 1. Apply each fix using Edit tool in order
48
- 2. After each fix, run related tests
49
- 3. Tests PASS -> finding is "fixed"
50
- 4. Tests FAIL -> `git checkout -- {file}` -> mark "failed" -> continue
51
- 5. No retry on failure. Rollback and move on
52
- 6. If finding depends on previously failed finding -> mark "skipped"
53
-
54
- Agent returns JSON: `{results:[{id, status: fixed|failed|skipped, file, error?}]}`
55
- Fallback: check git diff per file if no structured output.
56
-
57
- Write `<session>/fix/execution-results.json`: `{fixed[], failed[], skipped[]}`
58
-
59
- ## Phase 4: Post-Fix Verification
60
-
61
- 1. Run available verification tools on modified files:
62
-
63
- | Tool | Command | Pass Criteria |
64
- |------|---------|---------------|
65
- | tsc | `npx tsc --noEmit` | 0 errors |
66
- | eslint | `npx eslint <files>` | 0 errors |
67
- | jest | `npx jest --passWithNoTests` | Tests pass |
68
- | pytest | `pytest --tb=short` | Tests pass |
69
- | semgrep | `semgrep --config auto <files> --json` | 0 results |
70
-
71
- 2. If verification fails critically -> rollback last batch
72
- 3. Write `<session>/fix/verify-results.json`
73
- 4. Generate `<session>/fix/fix-summary.json`: `{fix_id, fix_date, scope, total, fixed, failed, skipped, fix_rate, verification}`
74
- 5. Generate `<session>/fix/fix-summary.md` (human-readable)
75
- 6. Update `<session>/.msg/meta.json` with fix results
76
- 7. Contribute discoveries to `<session>/wisdom/` files
1
+ ---
2
+ role: fixer
3
+ prefix: FIX
4
+ inner_loop: true
5
+ message_types:
6
+ success: fix_complete
7
+ error: fix_failed
8
+ ---
9
+
10
+ # Code Fixer
11
+
12
+ Fix code based on reviewed findings. Load manifest, plan fix groups, apply with rollback-on-failure, verify. Code-generation role -- modifies source files.
13
+
14
+ ## Phase 2: Context & Scope Resolution
15
+
16
+ | Input | Source | Required |
17
+ |-------|--------|----------|
18
+ | Task description | From task subject/description | Yes |
19
+ | Session path | Extracted from task description | Yes |
20
+ | Fix manifest | <session>/fix/fix-manifest.json | Yes |
21
+ | Review report | <session>/review/review-report.json | Yes |
22
+ | .msg/meta.json | <session>/.msg/meta.json | No |
23
+
24
+ 1. Extract session path, input path from task description
25
+ 2. Load manifest (scope, source report path) and review report (findings with enrichment)
26
+ 3. Filter fixable findings: severity in scope AND fix_strategy !== 'skip'
27
+ 4. If 0 fixable -> report complete immediately
28
+ 5. Detect quick path: findings <= 5 AND no cross-file dependencies
29
+ 6. Detect verification tools: tsc (tsconfig.json), eslint (package.json), jest (package.json), pytest (pyproject.toml), semgrep (semgrep available)
30
+ 7. Load wisdom files from `<session>/wisdom/`
31
+
32
+ ## Phase 3: Plan + Execute
33
+
34
+ ### 3A: Plan Fixes (deterministic, no CLI)
35
+ 1. Group findings by primary file
36
+ 2. Merge groups with cross-file dependencies (union-find)
37
+ 3. Topological sort within each group (respect fix_dependencies, append cycles at end)
38
+ 4. Sort groups by max severity (critical first)
39
+ 5. Determine execution path: quick_path (<=5 findings, <=1 group) or standard
40
+ 6. Write `<session>/fix/fix-plan.json`: `{plan_id, quick_path, groups[{id, files[], findings[], max_severity}], execution_order[], total_findings, total_groups}`
41
+
42
+ ### 3B: Execute Fixes
43
+ **Quick path**: Single code-developer agent for all findings.
44
+ **Standard path**: One code-developer agent per group, in execution_order.
45
+
46
+ Agent prompt includes: finding list (dependency-sorted), file contents (truncated 8K), critical rules:
47
+ 1. Apply each fix using Edit tool in order
48
+ 2. After each fix, run related tests
49
+ 3. Tests PASS -> finding is "fixed"
50
+ 4. Tests FAIL -> `git checkout -- {file}` -> mark "failed" -> continue
51
+ 5. No retry on failure. Rollback and move on
52
+ 6. If finding depends on previously failed finding -> mark "skipped"
53
+
54
+ Agent returns JSON: `{results:[{id, status: fixed|failed|skipped, file, error?}]}`
55
+ Fallback: check git diff per file if no structured output.
56
+
57
+ Write `<session>/fix/execution-results.json`: `{fixed[], failed[], skipped[]}`
58
+
59
+ ## Phase 4: Post-Fix Verification
60
+
61
+ 1. Run available verification tools on modified files:
62
+
63
+ | Tool | Command | Pass Criteria |
64
+ |------|---------|---------------|
65
+ | tsc | `npx tsc --noEmit` | 0 errors |
66
+ | eslint | `npx eslint <files>` | 0 errors |
67
+ | jest | `npx jest --passWithNoTests` | Tests pass |
68
+ | pytest | `pytest --tb=short` | Tests pass |
69
+ | semgrep | `semgrep --config auto <files> --json` | 0 results |
70
+
71
+ 2. If verification fails critically -> rollback last batch
72
+ 3. Write `<session>/fix/verify-results.json`
73
+ 4. Generate `<session>/fix/fix-summary.json`: `{fix_id, fix_date, scope, total, fixed, failed, skipped, fix_rate, verification}`
74
+ 5. Generate `<session>/fix/fix-summary.md` (human-readable)
75
+ 6. Update `<session>/.msg/meta.json` with fix results
76
+ 7. Contribute discoveries to `<session>/wisdom/` files
@@ -1,68 +1,68 @@
1
- ---
2
- role: reviewer
3
- prefix: REV
4
- inner_loop: false
5
- message_types:
6
- success: review_complete
7
- error: error
8
- ---
9
-
10
- # Finding Reviewer
11
-
12
- Deep analysis on scan findings: triage, root cause / impact / optimization enrichment via CLI fan-out, cross-correlation, and structured review report generation. Read-only -- never modifies source code.
13
-
14
- ## Phase 2: Context & Triage
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Task description | From task subject/description | Yes |
19
- | Session path | Extracted from task description | Yes |
20
- | Scan results | <session>/scan/scan-results.json | Yes |
21
- | .msg/meta.json | <session>/.msg/meta.json | No |
22
-
23
- 1. Extract session path, input path, dimensions from task description
24
- 2. Load review specs: Run `ccw spec load --category review` for review standards, checklists, and approval gates
25
- 3. Load scan results. If missing or empty -> report clean, complete immediately
26
- 3. Load wisdom files from `<session>/wisdom/`
27
- 4. Triage findings into two buckets:
28
-
29
- | Bucket | Criteria | Action |
30
- |--------|----------|--------|
31
- | deep_analysis | severity in [critical, high, medium], max 15, sorted critical-first | Enrich with root cause, impact, optimization |
32
- | pass_through | remaining (low, info, or overflow) | Include in report without enrichment |
33
-
34
- If deep_analysis empty -> skip Phase 3, go to Phase 4.
35
-
36
- ## Phase 3: Deep Analysis (CLI Fan-out)
37
-
38
- Split deep_analysis into two domain groups, run parallel CLI agents:
39
-
40
- | Group | Dimensions | Focus |
41
- |-------|-----------|-------|
42
- | A | Security + Correctness | Root cause tracing, fix dependencies, blast radius |
43
- | B | Performance + Maintainability | Optimization approaches, refactor tradeoffs |
44
-
45
- If either group empty -> skip that agent.
46
-
47
- Build prompt per group requesting 6 enrichment fields per finding:
48
- - `root_cause`: `{description, related_findings[], is_symptom}`
49
- - `impact`: `{scope: low/medium/high, affected_files[], blast_radius}`
50
- - `optimization`: `{approach, alternative, tradeoff}`
51
- - `fix_strategy`: minimal / refactor / skip
52
- - `fix_complexity`: low / medium / high
53
- - `fix_dependencies`: finding IDs that must be fixed first
54
-
55
- Execute via `ccw cli --tool gemini --mode analysis --rule analysis-diagnose-bug-root-cause` (fallback: qwen -> codex). Parse JSON array responses, merge with originals (CLI-enriched replace originals, unenriched get defaults). Write `<session>/review/enriched-findings.json`.
56
-
57
- ## Phase 4: Report Generation
58
-
59
- 1. Combine enriched + pass_through findings
60
- 2. Cross-correlate:
61
- - **Critical files**: file appears in >=2 dimensions -> list with finding_count, severities
62
- - **Root cause groups**: cluster findings sharing related_findings -> identify primary
63
- - **Optimization suggestions**: from root cause groups + standalone enriched findings
64
- 3. Compute metrics: by_dimension, by_severity, dimension_severity_matrix, fixable_count, auto_fixable_count
65
- 4. Write `<session>/review/review-report.json`: `{review_id, review_date, findings[], critical_files[], optimization_suggestions[], root_cause_groups[], summary}`
66
- 5. Write `<session>/review/review-report.md`: Executive summary, metrics matrix (dimension x severity), critical/high findings table, critical files list, optimization suggestions, recommended fix scope
67
- 6. Update `<session>/.msg/meta.json` with review summary
68
- 7. Contribute discoveries to `<session>/wisdom/` files
1
+ ---
2
+ role: reviewer
3
+ prefix: REV
4
+ inner_loop: false
5
+ message_types:
6
+ success: review_complete
7
+ error: error
8
+ ---
9
+
10
+ # Finding Reviewer
11
+
12
+ Deep analysis on scan findings: triage, root cause / impact / optimization enrichment via CLI fan-out, cross-correlation, and structured review report generation. Read-only -- never modifies source code.
13
+
14
+ ## Phase 2: Context & Triage
15
+
16
+ | Input | Source | Required |
17
+ |-------|--------|----------|
18
+ | Task description | From task subject/description | Yes |
19
+ | Session path | Extracted from task description | Yes |
20
+ | Scan results | <session>/scan/scan-results.json | Yes |
21
+ | .msg/meta.json | <session>/.msg/meta.json | No |
22
+
23
+ 1. Extract session path, input path, dimensions from task description
24
+ 2. Load review specs: Run `ccw spec load --category review` for review standards, checklists, and approval gates
25
+ 3. Load scan results. If missing or empty -> report clean, complete immediately
26
+ 3. Load wisdom files from `<session>/wisdom/`
27
+ 4. Triage findings into two buckets:
28
+
29
+ | Bucket | Criteria | Action |
30
+ |--------|----------|--------|
31
+ | deep_analysis | severity in [critical, high, medium], max 15, sorted critical-first | Enrich with root cause, impact, optimization |
32
+ | pass_through | remaining (low, info, or overflow) | Include in report without enrichment |
33
+
34
+ If deep_analysis empty -> skip Phase 3, go to Phase 4.
35
+
36
+ ## Phase 3: Deep Analysis (CLI Fan-out)
37
+
38
+ Split deep_analysis into two domain groups, run parallel CLI agents:
39
+
40
+ | Group | Dimensions | Focus |
41
+ |-------|-----------|-------|
42
+ | A | Security + Correctness | Root cause tracing, fix dependencies, blast radius |
43
+ | B | Performance + Maintainability | Optimization approaches, refactor tradeoffs |
44
+
45
+ If either group empty -> skip that agent.
46
+
47
+ Build prompt per group requesting 6 enrichment fields per finding:
48
+ - `root_cause`: `{description, related_findings[], is_symptom}`
49
+ - `impact`: `{scope: low/medium/high, affected_files[], blast_radius}`
50
+ - `optimization`: `{approach, alternative, tradeoff}`
51
+ - `fix_strategy`: minimal / refactor / skip
52
+ - `fix_complexity`: low / medium / high
53
+ - `fix_dependencies`: finding IDs that must be fixed first
54
+
55
+ Execute via `ccw cli --tool gemini --mode analysis --rule analysis-diagnose-bug-root-cause` (fallback: qwen -> codex). Parse JSON array responses, merge with originals (CLI-enriched replace originals, unenriched get defaults). Write `<session>/review/enriched-findings.json`.
56
+
57
+ ## Phase 4: Report Generation
58
+
59
+ 1. Combine enriched + pass_through findings
60
+ 2. Cross-correlate:
61
+ - **Critical files**: file appears in >=2 dimensions -> list with finding_count, severities
62
+ - **Root cause groups**: cluster findings sharing related_findings -> identify primary
63
+ - **Optimization suggestions**: from root cause groups + standalone enriched findings
64
+ 3. Compute metrics: by_dimension, by_severity, dimension_severity_matrix, fixable_count, auto_fixable_count
65
+ 4. Write `<session>/review/review-report.json`: `{review_id, review_date, findings[], critical_files[], optimization_suggestions[], root_cause_groups[], summary}`
66
+ 5. Write `<session>/review/review-report.md`: Executive summary, metrics matrix (dimension x severity), critical/high findings table, critical files list, optimization suggestions, recommended fix scope
67
+ 6. Update `<session>/.msg/meta.json` with review summary
68
+ 7. Contribute discoveries to `<session>/wisdom/` files