maestro-flow 0.5.3 → 0.5.31

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 (259) hide show
  1. package/.agents/skills/learn-follow/SKILL.md +114 -114
  2. package/.agents/skills/learn-investigate/SKILL.md +138 -139
  3. package/.agents/skills/learn-second-opinion/SKILL.md +105 -109
  4. package/.agents/skills/maestro/SKILL.md +2 -10
  5. package/.agents/skills/maestro-amend/SKILL.md +152 -152
  6. package/.agents/skills/maestro-analyze/SKILL.md +201 -252
  7. package/.agents/skills/maestro-blueprint/SKILL.md +175 -190
  8. package/.agents/skills/maestro-brainstorm/SKILL.md +196 -200
  9. package/.agents/skills/maestro-collab/SKILL.md +159 -159
  10. package/.agents/skills/maestro-companion/SKILL.md +517 -517
  11. package/.agents/skills/maestro-composer/SKILL.md +173 -164
  12. package/.agents/skills/maestro-execute/SKILL.md +169 -170
  13. package/.agents/skills/maestro-fork/SKILL.md +97 -96
  14. package/.agents/skills/maestro-grill/SKILL.md +161 -162
  15. package/.agents/skills/maestro-guard/SKILL.md +93 -92
  16. package/.agents/skills/maestro-impeccable/SKILL.md +296 -253
  17. package/.agents/skills/maestro-init/SKILL.md +117 -118
  18. package/.agents/skills/maestro-merge/SKILL.md +73 -66
  19. package/.agents/skills/maestro-milestone-audit/SKILL.md +4 -10
  20. package/.agents/skills/maestro-milestone-complete/SKILL.md +6 -7
  21. package/.agents/skills/maestro-milestone-release/SKILL.md +122 -131
  22. package/.agents/skills/maestro-next/SKILL.md +241 -245
  23. package/.agents/skills/maestro-overlay/SKILL.md +176 -166
  24. package/.agents/skills/maestro-plan/SKILL.md +211 -197
  25. package/.agents/skills/maestro-player/SKILL.md +167 -167
  26. package/.agents/skills/maestro-quick/SKILL.md +69 -63
  27. package/.agents/skills/maestro-ralph/SKILL.md +2 -36
  28. package/.agents/skills/maestro-ralph-beta/SKILL.md +861 -872
  29. package/.agents/skills/maestro-ralph-execute/SKILL.md +234 -234
  30. package/.agents/skills/maestro-roadmap/SKILL.md +159 -172
  31. package/.agents/skills/maestro-swarm-workflow/SKILL.md +229 -250
  32. package/.agents/skills/maestro-tools-execute/SKILL.md +108 -103
  33. package/.agents/skills/maestro-tools-register/SKILL.md +148 -143
  34. package/.agents/skills/maestro-ui-codify/SKILL.md +103 -86
  35. package/.agents/skills/maestro-universal-workflow/SKILL.md +534 -547
  36. package/.agents/skills/maestro-update/SKILL.md +109 -106
  37. package/.agents/skills/manage-codebase-rebuild/SKILL.md +73 -71
  38. package/.agents/skills/manage-harvest/SKILL.md +83 -81
  39. package/.agents/skills/manage-issue/SKILL.md +59 -60
  40. package/.agents/skills/manage-issue-discover/SKILL.md +70 -68
  41. package/.agents/skills/manage-kg-extractors/SKILL.md +130 -0
  42. package/.agents/skills/manage-knowhow/SKILL.md +70 -66
  43. package/.agents/skills/manage-knowhow-capture/SKILL.md +79 -69
  44. package/.agents/skills/manage-knowledge-audit/SKILL.md +91 -74
  45. package/.agents/skills/manage-status/SKILL.md +52 -42
  46. package/.agents/skills/manage-wiki/SKILL.md +69 -58
  47. package/.agents/skills/odyssey-debug/SKILL.md +445 -459
  48. package/.agents/skills/odyssey-improve/SKILL.md +477 -491
  49. package/.agents/skills/odyssey-planex/SKILL.md +576 -587
  50. package/.agents/skills/odyssey-review-test-fix/SKILL.md +400 -413
  51. package/.agents/skills/odyssey-ui/SKILL.md +431 -448
  52. package/.agents/skills/quality-auto-test/SKILL.md +140 -123
  53. package/.agents/skills/quality-debug/SKILL.md +145 -106
  54. package/.agents/skills/quality-refactor/SKILL.md +91 -53
  55. package/.agents/skills/quality-retrospective/SKILL.md +109 -63
  56. package/.agents/skills/quality-review/SKILL.md +141 -114
  57. package/.agents/skills/quality-sync/SKILL.md +74 -38
  58. package/.agents/skills/quality-test/SKILL.md +133 -103
  59. package/.agents/skills/security-audit/SKILL.md +217 -166
  60. package/.agents/skills/spec-add/SKILL.md +66 -59
  61. package/.agents/skills/spec-load/SKILL.md +68 -68
  62. package/.agents/skills/spec-remove/SKILL.md +42 -42
  63. package/.agents/skills/spec-setup/SKILL.md +38 -41
  64. package/.agy/skills/learn-follow/SKILL.md +114 -114
  65. package/.agy/skills/learn-investigate/SKILL.md +138 -139
  66. package/.agy/skills/learn-second-opinion/SKILL.md +105 -109
  67. package/.agy/skills/maestro/SKILL.md +2 -10
  68. package/.agy/skills/maestro-amend/SKILL.md +152 -152
  69. package/.agy/skills/maestro-analyze/SKILL.md +201 -252
  70. package/.agy/skills/maestro-blueprint/SKILL.md +175 -190
  71. package/.agy/skills/maestro-brainstorm/SKILL.md +196 -200
  72. package/.agy/skills/maestro-collab/SKILL.md +159 -159
  73. package/.agy/skills/maestro-companion/SKILL.md +517 -517
  74. package/.agy/skills/maestro-composer/SKILL.md +173 -164
  75. package/.agy/skills/maestro-execute/SKILL.md +169 -170
  76. package/.agy/skills/maestro-fork/SKILL.md +97 -96
  77. package/.agy/skills/maestro-grill/SKILL.md +161 -162
  78. package/.agy/skills/maestro-guard/SKILL.md +93 -92
  79. package/.agy/skills/maestro-impeccable/SKILL.md +296 -253
  80. package/.agy/skills/maestro-init/SKILL.md +117 -118
  81. package/.agy/skills/maestro-merge/SKILL.md +73 -66
  82. package/.agy/skills/maestro-milestone-audit/SKILL.md +4 -10
  83. package/.agy/skills/maestro-milestone-complete/SKILL.md +6 -7
  84. package/.agy/skills/maestro-milestone-release/SKILL.md +122 -131
  85. package/.agy/skills/maestro-next/SKILL.md +241 -245
  86. package/.agy/skills/maestro-overlay/SKILL.md +176 -166
  87. package/.agy/skills/maestro-plan/SKILL.md +211 -197
  88. package/.agy/skills/maestro-player/SKILL.md +167 -167
  89. package/.agy/skills/maestro-quick/SKILL.md +69 -63
  90. package/.agy/skills/maestro-ralph/SKILL.md +2 -36
  91. package/.agy/skills/maestro-ralph-beta/SKILL.md +861 -872
  92. package/.agy/skills/maestro-ralph-execute/SKILL.md +234 -234
  93. package/.agy/skills/maestro-roadmap/SKILL.md +159 -172
  94. package/.agy/skills/maestro-swarm-workflow/SKILL.md +229 -250
  95. package/.agy/skills/maestro-tools-execute/SKILL.md +108 -103
  96. package/.agy/skills/maestro-tools-register/SKILL.md +148 -143
  97. package/.agy/skills/maestro-ui-codify/SKILL.md +103 -86
  98. package/.agy/skills/maestro-universal-workflow/SKILL.md +534 -547
  99. package/.agy/skills/maestro-update/SKILL.md +109 -106
  100. package/.agy/skills/manage-codebase-rebuild/SKILL.md +73 -71
  101. package/.agy/skills/manage-harvest/SKILL.md +83 -81
  102. package/.agy/skills/manage-issue/SKILL.md +59 -60
  103. package/.agy/skills/manage-issue-discover/SKILL.md +70 -68
  104. package/.agy/skills/manage-kg-extractors/SKILL.md +130 -0
  105. package/.agy/skills/manage-knowhow/SKILL.md +70 -66
  106. package/.agy/skills/manage-knowhow-capture/SKILL.md +79 -69
  107. package/.agy/skills/manage-knowledge-audit/SKILL.md +91 -74
  108. package/.agy/skills/manage-status/SKILL.md +52 -42
  109. package/.agy/skills/manage-wiki/SKILL.md +69 -58
  110. package/.agy/skills/odyssey-debug/SKILL.md +445 -459
  111. package/.agy/skills/odyssey-improve/SKILL.md +477 -491
  112. package/.agy/skills/odyssey-planex/SKILL.md +576 -587
  113. package/.agy/skills/odyssey-review-test-fix/SKILL.md +400 -413
  114. package/.agy/skills/odyssey-ui/SKILL.md +431 -448
  115. package/.agy/skills/quality-auto-test/SKILL.md +140 -123
  116. package/.agy/skills/quality-debug/SKILL.md +145 -106
  117. package/.agy/skills/quality-refactor/SKILL.md +91 -53
  118. package/.agy/skills/quality-retrospective/SKILL.md +109 -63
  119. package/.agy/skills/quality-review/SKILL.md +141 -114
  120. package/.agy/skills/quality-sync/SKILL.md +74 -38
  121. package/.agy/skills/quality-test/SKILL.md +133 -103
  122. package/.agy/skills/security-audit/SKILL.md +217 -166
  123. package/.agy/skills/spec-add/SKILL.md +66 -59
  124. package/.agy/skills/spec-load/SKILL.md +68 -68
  125. package/.agy/skills/spec-remove/SKILL.md +42 -42
  126. package/.agy/skills/spec-setup/SKILL.md +38 -41
  127. package/.claude/commands/learn-follow.md +127 -127
  128. package/.claude/commands/learn-investigate.md +151 -152
  129. package/.claude/commands/learn-second-opinion.md +118 -122
  130. package/.claude/commands/maestro-amend.md +164 -164
  131. package/.claude/commands/maestro-analyze.md +215 -266
  132. package/.claude/commands/maestro-blueprint.md +189 -204
  133. package/.claude/commands/maestro-brainstorm.md +209 -213
  134. package/.claude/commands/maestro-collab.md +172 -172
  135. package/.claude/commands/maestro-companion.md +531 -531
  136. package/.claude/commands/maestro-composer.md +188 -179
  137. package/.claude/commands/maestro-execute.md +183 -184
  138. package/.claude/commands/maestro-fork.md +111 -110
  139. package/.claude/commands/maestro-grill.md +175 -176
  140. package/.claude/commands/maestro-guard.md +103 -102
  141. package/.claude/commands/maestro-impeccable.md +311 -268
  142. package/.claude/commands/maestro-init.md +130 -131
  143. package/.claude/commands/maestro-merge.md +87 -80
  144. package/.claude/commands/maestro-milestone-audit.md +4 -10
  145. package/.claude/commands/maestro-milestone-complete.md +6 -7
  146. package/.claude/commands/maestro-milestone-release.md +136 -145
  147. package/.claude/commands/maestro-next.md +253 -257
  148. package/.claude/commands/maestro-overlay.md +188 -178
  149. package/.claude/commands/maestro-plan.md +225 -211
  150. package/.claude/commands/maestro-player.md +182 -182
  151. package/.claude/commands/maestro-quick.md +83 -77
  152. package/.claude/commands/maestro-ralph-beta.md +875 -886
  153. package/.claude/commands/maestro-ralph-execute.md +247 -247
  154. package/.claude/commands/maestro-ralph.md +2 -36
  155. package/.claude/commands/maestro-roadmap.md +173 -186
  156. package/.claude/commands/maestro-swarm-workflow.md +243 -264
  157. package/.claude/commands/maestro-tools-execute.md +122 -117
  158. package/.claude/commands/maestro-tools-register.md +162 -157
  159. package/.claude/commands/maestro-ui-codify.md +117 -100
  160. package/.claude/commands/maestro-universal-workflow.md +548 -561
  161. package/.claude/commands/maestro-update.md +122 -119
  162. package/.claude/commands/maestro.md +2 -10
  163. package/.claude/commands/manage-codebase-rebuild.md +87 -85
  164. package/.claude/commands/manage-harvest.md +97 -95
  165. package/.claude/commands/manage-issue-discover.md +83 -81
  166. package/.claude/commands/manage-issue.md +72 -73
  167. package/.claude/commands/manage-kg-extractors.md +128 -0
  168. package/.claude/commands/manage-knowhow-capture.md +92 -82
  169. package/.claude/commands/manage-knowhow.md +83 -79
  170. package/.claude/commands/manage-knowledge-audit.md +105 -88
  171. package/.claude/commands/manage-status.md +62 -52
  172. package/.claude/commands/manage-wiki.md +82 -71
  173. package/.claude/commands/odyssey-debug.md +459 -473
  174. package/.claude/commands/odyssey-improve.md +491 -505
  175. package/.claude/commands/odyssey-planex.md +590 -601
  176. package/.claude/commands/odyssey-review-test-fix.md +414 -427
  177. package/.claude/commands/odyssey-ui.md +445 -462
  178. package/.claude/commands/quality-auto-test.md +153 -136
  179. package/.claude/commands/quality-debug.md +159 -120
  180. package/.claude/commands/quality-refactor.md +105 -67
  181. package/.claude/commands/quality-retrospective.md +123 -77
  182. package/.claude/commands/quality-review.md +155 -128
  183. package/.claude/commands/quality-sync.md +88 -52
  184. package/.claude/commands/quality-test.md +147 -117
  185. package/.claude/commands/security-audit.md +230 -179
  186. package/.claude/commands/spec-add.md +77 -70
  187. package/.claude/commands/spec-load.md +78 -78
  188. package/.claude/commands/spec-remove.md +55 -55
  189. package/.claude/commands/spec-setup.md +49 -52
  190. package/dist/src/cli.js +1 -1
  191. package/dist/src/cli.js.map +1 -1
  192. package/dist/src/commands/kg.d.ts.map +1 -1
  193. package/dist/src/commands/kg.js +11 -5
  194. package/dist/src/commands/kg.js.map +1 -1
  195. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts +2 -0
  196. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts.map +1 -1
  197. package/dist/src/graph/kg/extraction/code/code-extractor.js +32 -3
  198. package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -1
  199. package/dist/src/graph/kg/extraction/code/plugin-engine.d.ts +35 -0
  200. package/dist/src/graph/kg/extraction/code/plugin-engine.d.ts.map +1 -0
  201. package/dist/src/graph/kg/extraction/code/plugin-engine.js +573 -0
  202. package/dist/src/graph/kg/extraction/code/plugin-engine.js.map +1 -0
  203. package/dist/src/graph/kg/extraction/code/plugin-types.d.ts +95 -0
  204. package/dist/src/graph/kg/extraction/code/plugin-types.d.ts.map +1 -0
  205. package/dist/src/graph/kg/extraction/code/plugin-types.js +5 -0
  206. package/dist/src/graph/kg/extraction/code/plugin-types.js.map +1 -0
  207. package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -1
  208. package/dist/src/graph/kg/extraction/orchestrator.js +17 -5
  209. package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -1
  210. package/dist/src/graph/kg/schema.sql +16 -11
  211. package/dist/src/graph/kg/surface/cli.d.ts.map +1 -1
  212. package/dist/src/graph/kg/surface/cli.js +153 -56
  213. package/dist/src/graph/kg/surface/cli.js.map +1 -1
  214. package/dist/src/hooks/workspace.d.ts +4 -2
  215. package/dist/src/hooks/workspace.d.ts.map +1 -1
  216. package/dist/src/hooks/workspace.js +6 -2
  217. package/dist/src/hooks/workspace.js.map +1 -1
  218. package/package.json +91 -91
  219. package/workflows/analyze.md +25 -49
  220. package/workflows/auto-test.md +699 -699
  221. package/workflows/blueprint.md +403 -431
  222. package/workflows/brainstorm.md +54 -195
  223. package/workflows/business-test.md +570 -570
  224. package/workflows/claude-instructions.md +23 -51
  225. package/workflows/codex-instructions.md +27 -77
  226. package/workflows/coding-philosophy.md +69 -69
  227. package/workflows/command-authoring.md +823 -823
  228. package/workflows/debug.md +43 -98
  229. package/workflows/delegate-usage.md +39 -241
  230. package/workflows/execute.md +4 -53
  231. package/workflows/grill.md +12 -56
  232. package/workflows/harvest.md +22 -68
  233. package/workflows/init.md +148 -148
  234. package/workflows/instruction-authoring-guide.md +97 -0
  235. package/workflows/issue-execute.md +110 -110
  236. package/workflows/issue-gaps-analyze.codex.md +260 -260
  237. package/workflows/issue-gaps-analyze.md +216 -216
  238. package/workflows/issue-plan.md +110 -110
  239. package/workflows/issue.md +338 -346
  240. package/workflows/knowhow.md +0 -32
  241. package/workflows/learn.md +277 -277
  242. package/workflows/maestro-chain-execute.md +20 -20
  243. package/workflows/refactor.md +22 -44
  244. package/workflows/retrospective.md +16 -65
  245. package/workflows/review.md +446 -486
  246. package/workflows/roadmap.md +35 -132
  247. package/workflows/skill-authoring.md +265 -265
  248. package/workflows/spec-generate.md +470 -470
  249. package/workflows/specs-remove.md +104 -104
  250. package/workflows/sync.md +11 -41
  251. package/workflows/test-gen.md +226 -226
  252. package/workflows/test.md +385 -475
  253. package/workflows/ui-design.md +391 -391
  254. package/workflows/ui-style.md +199 -199
  255. package/workflows/wiki-connect.md +151 -151
  256. package/workflows/wiki-digest.md +178 -178
  257. package/workflows/wiki-manage.md +109 -109
  258. package/workflows/cli-tools-usage.md +0 -252
  259. package/workflows/delegate-protocol.codex.md +0 -65
@@ -1,216 +1,216 @@
1
- # Workflow: Issue Gaps Analysis
2
-
3
- > **CLI variants**: see `issue-gaps-analyze.codex.md` for codex-specific notes (CSV-wave variant using `spawn_agents_on_csv`).
4
-
5
- Root cause analysis for issues using CLI exploration and codebase context gathering.
6
- Supports single issue (ISS-ID) or batch (all open/registered) with classification and parallel analysis.
7
- Produces analysis records in issues.jsonl and context.md for downstream `plan --gaps`.
8
-
9
- **Invoked by**: `maestro-analyze --gaps [ISS-ID]`
10
-
11
- ## Input
12
-
13
- - `ISS-ID` (optional): Specific issue to analyze. If omitted, analyze all open/registered issues.
14
- - `TOOL`: CLI tool for exploration (default: gemini)
15
- - `DEPTH`: `standard` or `deep` (default: standard)
16
-
17
- ## Pipeline
18
-
19
- ```
20
- Load Issues → Classify & Group → Parallel Analysis (per group) → Write issue.analysis → Output context.md
21
- ```
22
-
23
- ---
24
-
25
- ### Step 1: Load Issues
26
-
27
- ```
28
- If ISS-ID provided:
29
- Load single issue from .workflow/issues/issues.jsonl
30
- → fatal if file missing or ID not found (E_ISSUE_NOT_FOUND)
31
- → skip Step 2 (classification), go directly to Step 3
32
-
33
- If no ISS-ID:
34
- Load all issues where status == "open" || status == "registered"
35
- → fatal if none found (E_NO_ISSUES)
36
-
37
- Validate: at least 1 issue loaded.
38
- ```
39
-
40
- ---
41
-
42
- ### Step 2: Classify & Group (batch mode only)
43
-
44
- ```
45
- Group loaded issues by overlap in affected area:
46
-
47
- Classification dimensions:
48
- - location: file path prefix (e.g. src/auth/, src/api/)
49
- - component: affected_components field overlap
50
- - category: issue.category or severity level
51
-
52
- Grouping rules:
53
- 1. Same location prefix (first 2 path segments) → same group
54
- 2. Shared affected_components → same group
55
- 3. Remaining ungrouped → individual groups (1 issue each)
56
-
57
- Output: GROUPS[] where each group = { group_id, label, issues[], shared_context_keywords[] }
58
-
59
- Display group breakdown to user (skip if AUTO_YES).
60
- ```
61
-
62
- ---
63
-
64
- ### Step 3: Gather Codebase Context (per group)
65
-
66
- ```
67
- For each group:
68
- Merge keywords from all issues in group: title, description, location, affected_components.
69
- Deduplicate keywords.
70
-
71
- Standard depth: grep keywords in source files → top 20 paths, read 10 lines around
72
- top 5 matches.
73
- Deep depth: standard grep + semantic Agent search (error handling, data flow, deps),
74
- merge results.
75
-
76
- Build GROUP_CONTEXT: related files, key snippets (max 50 lines), dependency chain.
77
- Shared context benefits co-located issues — avoids redundant exploration.
78
- ```
79
-
80
- ---
81
-
82
- ### Step 4: Run Analysis (per group, parallel across groups)
83
-
84
- ```
85
- Launch analysis for each group in parallel using Agent tool:
86
-
87
- Agent({
88
- subagent_type: "general-purpose",
89
- prompt: "Root cause analysis for issues in group [{group.label}]:
90
- {for each issue in group}
91
- ISS-{id}: {title} — {description}, severity: {severity}, location: {location}
92
- {end}
93
- CODEBASE CONTEXT: {GROUP_CONTEXT}
94
- TASK: For EACH issue — identify root cause (file:line) → assess impact → list related files → rate confidence → suggest fix direction. Note cross-issue relationships within this group.
95
- EXPECTED: JSON array [{ iss_id, root_cause, impact, related_files[], confidence, suggested_approach, cross_refs[] }]
96
- CONSTRAINTS: Evidence-only, no speculation. Use Read/Grep to verify before concluding."
97
- })
98
-
99
- Alternatively, attempt CLI delegate first per group:
100
-
101
- maestro delegate "<same prompt>" --role analyze --mode analysis
102
-
103
- If delegate fails (timeout, unavailable, parse error):
104
- Fall back to Agent tool with same prompt.
105
- Record fallback in analysis metadata: { tool: "agent-fallback", reason: "<error>" }
106
-
107
- Validate response per issue: all required fields present.
108
- Parse failure → save raw output to issue feedback for review.
109
- ```
110
-
111
- ---
112
-
113
- ### Step 5: Build Analysis Record (per issue)
114
-
115
- ```
116
- For each issue from Step 4 results:
117
-
118
- Construct IssueAnalysis:
119
- {
120
- root_cause,
121
- affected_files: related_files,
122
- impact_scope: impact,
123
- fix_direction: suggested_approach,
124
- confidence,
125
- cross_refs: [ISS-IDs of related issues in same group],
126
- analyzed_at: NOW_ISO,
127
- tool: TOOL or "agent-fallback",
128
- depth: DEPTH
129
- }
130
- ```
131
-
132
- ---
133
-
134
- ### Step 6: Update Issues in JSONL
135
-
136
- ```
137
- Read-modify-write issues.jsonl (single pass for all analyzed issues):
138
- For each issue:
139
- Set issue.analysis = ANALYSIS, updated_at = NOW_ISO
140
- Append issue.history: { action: "analyzed", at: NOW_ISO, by: "maestro-analyze --gaps" }
141
- Status unchanged (analysis is metadata enrichment).
142
- Verify: re-read file, confirm analysis field present for all updated issues.
143
- ```
144
-
145
- ---
146
-
147
- ### Step 7: Output context.md
148
-
149
- ```
150
- Aggregate all analyzed issues into context.md, organized by group:
151
-
152
- # Context: Issue Gaps Analysis
153
-
154
- **Date**: {date}
155
- **Issues analyzed**: {count}
156
- **Groups**: {group_count}
157
-
158
- ## Group: {group.label}
159
-
160
- ### ISS-{id}: {title}
161
- - **Root cause**: {root_cause}
162
- - **Affected files**: {affected_files}
163
- - **Impact scope**: {impact_scope}
164
- - **Fix direction**: {fix_direction}
165
- - **Confidence**: {confidence}
166
- - **Cross-refs**: {related ISS-IDs}
167
-
168
- (repeat per issue, per group)
169
-
170
- ## Cross-Group Dependencies
171
- {issues that span multiple groups or share root causes}
172
-
173
- ## Constraints
174
-
175
- ### Locked
176
- {constraints derived from root cause evidence}
177
-
178
- ### Free
179
- {implementation choices left to planner}
180
-
181
- Write context.md to session output directory.
182
- ```
183
-
184
- ---
185
-
186
- ### Step 8: Display Summary and Next Steps
187
-
188
- ```
189
- Display: group breakdown, per-issue root cause, confidence, cross-refs.
190
-
191
- Next steps:
192
- - maestro-plan --gaps (plan fix tasks linked to analyzed issues)
193
- - maestro-analyze --gaps {ISS-ID} (re-analyze specific issue with deeper context)
194
- - manage-issue list (review all issues)
195
- ```
196
-
197
- ---
198
-
199
- ## Output
200
-
201
- - **Updated**: `.workflow/issues/issues.jsonl` -- issue records enriched with `analysis` field
202
- - **Created**: `context.md` -- aggregated root causes grouped for downstream `plan --gaps`
203
- - **Analysis fields**: root_cause, affected_files, impact_scope, fix_direction, confidence, cross_refs, analyzed_at, tool, depth
204
-
205
- ## Quality Criteria
206
-
207
- - Issues classified by location/component overlap before analysis
208
- - Groups analyzed in parallel (Agent or delegate per group)
209
- - CLI delegate attempted first; Agent fallback on failure
210
- - Analysis grounded in actual codebase evidence (file:line references)
211
- - Cross-issue relationships captured within groups (cross_refs)
212
- - JSON result validated before writing to JSONL
213
- - Issue status unchanged (analysis is non-destructive enrichment)
214
- - Single-pass read-modify-write preserves JSONL integrity
215
- - context.md organized by group with cross-group dependencies
216
- - Next-step routing guides to plan --gaps
1
+ # Workflow: Issue Gaps Analysis
2
+
3
+ > **CLI variants**: see `issue-gaps-analyze.codex.md` for codex-specific notes (CSV-wave variant using `spawn_agents_on_csv`).
4
+
5
+ Root cause analysis for issues using CLI exploration and codebase context gathering.
6
+ Supports single issue (ISS-ID) or batch (all open/registered) with classification and parallel analysis.
7
+ Produces analysis records in issues.jsonl and context.md for downstream `plan --gaps`.
8
+
9
+ **Invoked by**: `maestro-analyze --gaps [ISS-ID]`
10
+
11
+ ## Input
12
+
13
+ - `ISS-ID` (optional): Specific issue to analyze. If omitted, analyze all open/registered issues.
14
+ - `TOOL`: CLI tool for exploration (default: gemini)
15
+ - `DEPTH`: `standard` or `deep` (default: standard)
16
+
17
+ ## Pipeline
18
+
19
+ ```
20
+ Load Issues → Classify & Group → Parallel Analysis (per group) → Write issue.analysis → Output context.md
21
+ ```
22
+
23
+ ---
24
+
25
+ ### Step 1: Load Issues
26
+
27
+ ```
28
+ If ISS-ID provided:
29
+ Load single issue from .workflow/issues/issues.jsonl
30
+ → fatal if file missing or ID not found (E_ISSUE_NOT_FOUND)
31
+ → skip Step 2 (classification), go directly to Step 3
32
+
33
+ If no ISS-ID:
34
+ Load all issues where status == "open" || status == "registered"
35
+ → fatal if none found (E_NO_ISSUES)
36
+
37
+ Validate: at least 1 issue loaded.
38
+ ```
39
+
40
+ ---
41
+
42
+ ### Step 2: Classify & Group (batch mode only)
43
+
44
+ ```
45
+ Group loaded issues by overlap in affected area:
46
+
47
+ Classification dimensions:
48
+ - location: file path prefix (e.g. src/auth/, src/api/)
49
+ - component: affected_components field overlap
50
+ - category: issue.category or severity level
51
+
52
+ Grouping rules:
53
+ 1. Same location prefix (first 2 path segments) → same group
54
+ 2. Shared affected_components → same group
55
+ 3. Remaining ungrouped → individual groups (1 issue each)
56
+
57
+ Output: GROUPS[] where each group = { group_id, label, issues[], shared_context_keywords[] }
58
+
59
+ Display group breakdown to user (skip if AUTO_YES).
60
+ ```
61
+
62
+ ---
63
+
64
+ ### Step 3: Gather Codebase Context (per group)
65
+
66
+ ```
67
+ For each group:
68
+ Merge keywords from all issues in group: title, description, location, affected_components.
69
+ Deduplicate keywords.
70
+
71
+ Standard depth: grep keywords in source files → top 20 paths, read 10 lines around
72
+ top 5 matches.
73
+ Deep depth: standard grep + semantic Agent search (error handling, data flow, deps),
74
+ merge results.
75
+
76
+ Build GROUP_CONTEXT: related files, key snippets (max 50 lines), dependency chain.
77
+ Shared context benefits co-located issues — avoids redundant exploration.
78
+ ```
79
+
80
+ ---
81
+
82
+ ### Step 4: Run Analysis (per group, parallel across groups)
83
+
84
+ ```
85
+ Launch analysis for each group in parallel using Agent tool:
86
+
87
+ Agent({
88
+ subagent_type: "general-purpose",
89
+ prompt: "Root cause analysis for issues in group [{group.label}]:
90
+ {for each issue in group}
91
+ ISS-{id}: {title} — {description}, severity: {severity}, location: {location}
92
+ {end}
93
+ CODEBASE CONTEXT: {GROUP_CONTEXT}
94
+ TASK: For EACH issue — identify root cause (file:line) → assess impact → list related files → rate confidence → suggest fix direction. Note cross-issue relationships within this group.
95
+ EXPECTED: JSON array [{ iss_id, root_cause, impact, related_files[], confidence, suggested_approach, cross_refs[] }]
96
+ CONSTRAINTS: Evidence-only, no speculation. Use Read/Grep to verify before concluding."
97
+ })
98
+
99
+ Alternatively, attempt CLI delegate first per group:
100
+
101
+ maestro delegate "<same prompt>" --role analyze --mode analysis
102
+
103
+ If delegate fails (timeout, unavailable, parse error):
104
+ Fall back to Agent tool with same prompt.
105
+ Record fallback in analysis metadata: { tool: "agent-fallback", reason: "<error>" }
106
+
107
+ Validate response per issue: all required fields present.
108
+ Parse failure → save raw output to issue feedback for review.
109
+ ```
110
+
111
+ ---
112
+
113
+ ### Step 5: Build Analysis Record (per issue)
114
+
115
+ ```
116
+ For each issue from Step 4 results:
117
+
118
+ Construct IssueAnalysis:
119
+ {
120
+ root_cause,
121
+ affected_files: related_files,
122
+ impact_scope: impact,
123
+ fix_direction: suggested_approach,
124
+ confidence,
125
+ cross_refs: [ISS-IDs of related issues in same group],
126
+ analyzed_at: NOW_ISO,
127
+ tool: TOOL or "agent-fallback",
128
+ depth: DEPTH
129
+ }
130
+ ```
131
+
132
+ ---
133
+
134
+ ### Step 6: Update Issues in JSONL
135
+
136
+ ```
137
+ Read-modify-write issues.jsonl (single pass for all analyzed issues):
138
+ For each issue:
139
+ Set issue.analysis = ANALYSIS, updated_at = NOW_ISO
140
+ Append issue.history: { action: "analyzed", at: NOW_ISO, by: "maestro-analyze --gaps" }
141
+ Status unchanged (analysis is metadata enrichment).
142
+ Verify: re-read file, confirm analysis field present for all updated issues.
143
+ ```
144
+
145
+ ---
146
+
147
+ ### Step 7: Output context.md
148
+
149
+ ```
150
+ Aggregate all analyzed issues into context.md, organized by group:
151
+
152
+ # Context: Issue Gaps Analysis
153
+
154
+ **Date**: {date}
155
+ **Issues analyzed**: {count}
156
+ **Groups**: {group_count}
157
+
158
+ ## Group: {group.label}
159
+
160
+ ### ISS-{id}: {title}
161
+ - **Root cause**: {root_cause}
162
+ - **Affected files**: {affected_files}
163
+ - **Impact scope**: {impact_scope}
164
+ - **Fix direction**: {fix_direction}
165
+ - **Confidence**: {confidence}
166
+ - **Cross-refs**: {related ISS-IDs}
167
+
168
+ (repeat per issue, per group)
169
+
170
+ ## Cross-Group Dependencies
171
+ {issues that span multiple groups or share root causes}
172
+
173
+ ## Constraints
174
+
175
+ ### Locked
176
+ {constraints derived from root cause evidence}
177
+
178
+ ### Free
179
+ {implementation choices left to planner}
180
+
181
+ Write context.md to session output directory.
182
+ ```
183
+
184
+ ---
185
+
186
+ ### Step 8: Display Summary and Next Steps
187
+
188
+ ```
189
+ Display: group breakdown, per-issue root cause, confidence, cross-refs.
190
+
191
+ Next steps:
192
+ - maestro-plan --gaps (plan fix tasks linked to analyzed issues)
193
+ - maestro-analyze --gaps {ISS-ID} (re-analyze specific issue with deeper context)
194
+ - manage-issue list (review all issues)
195
+ ```
196
+
197
+ ---
198
+
199
+ ## Output
200
+
201
+ - **Updated**: `.workflow/issues/issues.jsonl` -- issue records enriched with `analysis` field
202
+ - **Created**: `context.md` -- aggregated root causes grouped for downstream `plan --gaps`
203
+ - **Analysis fields**: root_cause, affected_files, impact_scope, fix_direction, confidence, cross_refs, analyzed_at, tool, depth
204
+
205
+ ## Quality Criteria
206
+
207
+ - Issues classified by location/component overlap before analysis
208
+ - Groups analyzed in parallel (Agent or delegate per group)
209
+ - CLI delegate attempted first; Agent fallback on failure
210
+ - Analysis grounded in actual codebase evidence (file:line references)
211
+ - Cross-issue relationships captured within groups (cross_refs)
212
+ - JSON result validated before writing to JSONL
213
+ - Issue status unchanged (analysis is non-destructive enrichment)
214
+ - Single-pass read-modify-write preserves JSONL integrity
215
+ - context.md organized by group with cross-group dependencies
216
+ - Next-step routing guides to plan --gaps
@@ -1,110 +1,110 @@
1
- # Workflow: Issue Planning
2
-
3
- > **DEPRECATED**: This workflow was used by the deleted `manage-issue-plan` command.
4
- > Use `maestro-plan --gaps` instead, which generates TASK files linked to issues via `task_refs`.
5
-
6
- Solution planning for a specific issue with codebase-aware step generation and prompt template construction.
7
-
8
- ## Input
9
-
10
- - `$ARGUMENTS`: `<ISS-ID> [--tool gemini|qwen] [--from-analysis]`
11
- - Operates on `.workflow/issues/`
12
-
13
- ---
14
-
15
- ### Step 1: Parse Arguments
16
-
17
- ```
18
- Extract ISS-ID (required, pattern ISS-\d{8}-\d{3}).
19
- Flags: --tool gemini|qwen (default: gemini), --from-analysis (default: auto-detect)
20
- ```
21
-
22
- ---
23
-
24
- ### Step 2: Load Issue and Validate
25
-
26
- ```
27
- Load ISS-ID from .workflow/issues/issues.jsonl → fatal if file missing or ID not found.
28
- Status check: open/registered → proceed; other → warn but continue (non-destructive).
29
- If solution already exists → confirm overwrite with user (abort if declined).
30
- ```
31
-
32
- ---
33
-
34
- ### Step 3: Load Analysis Context
35
-
36
- ```
37
- If ISSUE.analysis exists → build ANALYSIS_CONTEXT from root_cause, impact,
38
- related_files, confidence, suggested_approach.
39
- If null and --from-analysis explicit → warn (suggest running analyze first).
40
- Otherwise ANALYSIS_CONTEXT = "" (proceed without).
41
- ```
42
-
43
- ---
44
-
45
- ### Step 4: Generate Solution via CLI
46
-
47
- ```
48
- Delegate planning prompt with issue details + ANALYSIS_CONTEXT:
49
-
50
- maestro delegate "Generate step-by-step solution for {ISS-ID}: {ISSUE.title}
51
- ISSUE: title, description, severity, location, fix_direction
52
- {ANALYSIS_CONTEXT}
53
- TASK: Break into atomic steps with action types (create|modify|delete|test)
54
- EXPECTED: JSON { steps: [{ title, description, files[], action }], context, promptTemplate }
55
- CONSTRAINTS: Concrete, file-specific steps
56
- " --to {TOOL} --mode analysis
57
-
58
- Validate response: steps[] non-empty, each with title/description/files/action.
59
- Parse failure → save raw output to issue feedback for review.
60
- ```
61
-
62
- ---
63
-
64
- ### Step 5: Build Solution Record
65
-
66
- ```
67
- Construct IssueSolution:
68
- { steps, context, promptTemplate, planned_at: NOW_ISO, planned_by: TOOL }
69
- ```
70
-
71
- ---
72
-
73
- ### Step 6: Update Issue in JSONL
74
-
75
- ```
76
- Read-modify-write issues.jsonl:
77
- Set issue.solution = SOLUTION, updated_at = NOW_ISO
78
- Append issue_history: actor "planning-agent", note "{N} steps generated"
79
- Status unchanged (planning is metadata enrichment).
80
- Verify: re-read file, confirm solution field present.
81
- ```
82
-
83
- ---
84
-
85
- ### Step 7: Display Solution Steps Table and Next Steps
86
-
87
- ```
88
- Display: approach summary, steps table (# | action | title | files), prompt template.
89
-
90
- Next steps:
91
- - manage-issue-execute {ISS-ID} (execute | --dry-run | --executor codex)
92
- - manage-issue status {ISS-ID}
93
- ```
94
-
95
- ---
96
-
97
- ## Output
98
-
99
- - **Updated**: `.workflow/issues/issues.jsonl` -- issue record enriched with `solution` field
100
- - **Solution fields**: steps[], context, promptTemplate, planned_at, planned_by
101
-
102
- ## Quality Criteria
103
-
104
- - Solution steps are concrete with specific file targets and action types
105
- - Analysis context included when available for better accuracy
106
- - Prompt template is self-contained and executable by an agent
107
- - JSON result validated before writing to JSONL
108
- - Issue status unchanged (planning is non-destructive enrichment)
109
- - Read-modify-write pattern preserves other issues in JSONL
110
- - Next-step routing guides user to execution
1
+ # Workflow: Issue Planning
2
+
3
+ > **DEPRECATED**: This workflow was used by the deleted `manage-issue-plan` command.
4
+ > Use `maestro-plan --gaps` instead, which generates TASK files linked to issues via `task_refs`.
5
+
6
+ Solution planning for a specific issue with codebase-aware step generation and prompt template construction.
7
+
8
+ ## Input
9
+
10
+ - `$ARGUMENTS`: `<ISS-ID> [--tool gemini|qwen] [--from-analysis]`
11
+ - Operates on `.workflow/issues/`
12
+
13
+ ---
14
+
15
+ ### Step 1: Parse Arguments
16
+
17
+ ```
18
+ Extract ISS-ID (required, pattern ISS-\d{8}-\d{3}).
19
+ Flags: --tool gemini|qwen (default: gemini), --from-analysis (default: auto-detect)
20
+ ```
21
+
22
+ ---
23
+
24
+ ### Step 2: Load Issue and Validate
25
+
26
+ ```
27
+ Load ISS-ID from .workflow/issues/issues.jsonl → fatal if file missing or ID not found.
28
+ Status check: open/registered → proceed; other → warn but continue (non-destructive).
29
+ If solution already exists → confirm overwrite with user (abort if declined).
30
+ ```
31
+
32
+ ---
33
+
34
+ ### Step 3: Load Analysis Context
35
+
36
+ ```
37
+ If ISSUE.analysis exists → build ANALYSIS_CONTEXT from root_cause, impact,
38
+ related_files, confidence, suggested_approach.
39
+ If null and --from-analysis explicit → warn (suggest running analyze first).
40
+ Otherwise ANALYSIS_CONTEXT = "" (proceed without).
41
+ ```
42
+
43
+ ---
44
+
45
+ ### Step 4: Generate Solution via CLI
46
+
47
+ ```
48
+ Delegate planning prompt with issue details + ANALYSIS_CONTEXT:
49
+
50
+ maestro delegate "Generate step-by-step solution for {ISS-ID}: {ISSUE.title}
51
+ ISSUE: title, description, severity, location, fix_direction
52
+ {ANALYSIS_CONTEXT}
53
+ TASK: Break into atomic steps with action types (create|modify|delete|test)
54
+ EXPECTED: JSON { steps: [{ title, description, files[], action }], context, promptTemplate }
55
+ CONSTRAINTS: Concrete, file-specific steps
56
+ " --to {TOOL} --mode analysis
57
+
58
+ Validate response: steps[] non-empty, each with title/description/files/action.
59
+ Parse failure → save raw output to issue feedback for review.
60
+ ```
61
+
62
+ ---
63
+
64
+ ### Step 5: Build Solution Record
65
+
66
+ ```
67
+ Construct IssueSolution:
68
+ { steps, context, promptTemplate, planned_at: NOW_ISO, planned_by: TOOL }
69
+ ```
70
+
71
+ ---
72
+
73
+ ### Step 6: Update Issue in JSONL
74
+
75
+ ```
76
+ Read-modify-write issues.jsonl:
77
+ Set issue.solution = SOLUTION, updated_at = NOW_ISO
78
+ Append issue_history: actor "planning-agent", note "{N} steps generated"
79
+ Status unchanged (planning is metadata enrichment).
80
+ Verify: re-read file, confirm solution field present.
81
+ ```
82
+
83
+ ---
84
+
85
+ ### Step 7: Display Solution Steps Table and Next Steps
86
+
87
+ ```
88
+ Display: approach summary, steps table (# | action | title | files), prompt template.
89
+
90
+ Next steps:
91
+ - manage-issue-execute {ISS-ID} (execute | --dry-run | --executor codex)
92
+ - manage-issue status {ISS-ID}
93
+ ```
94
+
95
+ ---
96
+
97
+ ## Output
98
+
99
+ - **Updated**: `.workflow/issues/issues.jsonl` -- issue record enriched with `solution` field
100
+ - **Solution fields**: steps[], context, promptTemplate, planned_at, planned_by
101
+
102
+ ## Quality Criteria
103
+
104
+ - Solution steps are concrete with specific file targets and action types
105
+ - Analysis context included when available for better accuracy
106
+ - Prompt template is self-contained and executable by an agent
107
+ - JSON result validated before writing to JSONL
108
+ - Issue status unchanged (planning is non-destructive enrichment)
109
+ - Read-modify-write pattern preserves other issues in JSONL
110
+ - Next-step routing guides user to execution