maestro-flow 0.4.5 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codex/skills/maestro-collab/SKILL.md +218 -117
- package/.codex/skills/maestro-execute/SKILL.md +13 -11
- package/.codex/skills/maestro-milestone-audit/SKILL.md +12 -10
- package/.codex/skills/maestro-ralph/SKILL.md +16 -4
- package/.codex/skills/maestro-ui-codify/SKILL.md +18 -16
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +20 -13
- package/.codex/skills/manage-issue-discover/SKILL.md +19 -17
- package/.codex/skills/quality-debug/SKILL.md +35 -31
- package/.codex/skills/quality-refactor/SKILL.md +20 -12
- package/.codex/skills/quality-review/SKILL.md +21 -17
- package/.codex/skills/team-coordinate/SKILL.md +462 -235
- package/.codex/skills/team-coordinate/specs/role-catalog.md +132 -0
- package/.codex/skills/team-lifecycle-v4/SKILL.md +445 -191
- package/.codex/skills/team-quality-assurance/SKILL.md +205 -161
- package/.codex/skills/team-review/SKILL.md +198 -159
- package/.codex/skills/team-tech-debt/SKILL.md +214 -144
- package/.codex/skills/team-testing/SKILL.md +210 -158
- package/package.json +1 -1
- package/.codex/skills/team-coordinate/roles/coordinator/commands/analyze-task.md +0 -247
- package/.codex/skills/team-coordinate/roles/coordinator/commands/dispatch.md +0 -126
- package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +0 -265
- package/.codex/skills/team-coordinate/roles/coordinator/role.md +0 -403
- package/.codex/skills/team-coordinate/specs/knowledge-transfer.md +0 -113
- package/.codex/skills/team-coordinate/specs/pipelines.md +0 -97
- package/.codex/skills/team-coordinate/specs/quality-gates.md +0 -112
- package/.codex/skills/team-coordinate/specs/role-spec-template.md +0 -192
- package/.codex/skills/team-executor/SKILL.md +0 -116
- package/.codex/skills/team-executor/roles/executor/commands/monitor.md +0 -213
- package/.codex/skills/team-executor/roles/executor/role.md +0 -173
- package/.codex/skills/team-executor/specs/session-schema.md +0 -230
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/analyze.md +0 -56
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +0 -61
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +0 -113
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +0 -189
- package/.codex/skills/team-lifecycle-v4/schemas/tasks-schema.md +0 -100
- package/.codex/skills/team-lifecycle-v4/specs/knowledge-transfer.md +0 -204
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/analyze.md +0 -72
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +0 -108
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +0 -163
- package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +0 -177
- package/.codex/skills/team-review/roles/coordinator/commands/analyze.md +0 -71
- package/.codex/skills/team-review/roles/coordinator/commands/dispatch.md +0 -90
- package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +0 -135
- package/.codex/skills/team-review/roles/coordinator/role.md +0 -176
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/analyze.md +0 -47
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/dispatch.md +0 -163
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +0 -133
- package/.codex/skills/team-tech-debt/roles/coordinator/role.md +0 -173
- package/.codex/skills/team-testing/roles/coordinator/commands/analyze.md +0 -70
- package/.codex/skills/team-testing/roles/coordinator/commands/dispatch.md +0 -106
- package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +0 -156
- package/.codex/skills/team-testing/roles/coordinator/role.md +0 -185
|
@@ -1,161 +1,205 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: team-quality-assurance
|
|
3
|
-
description: Team QA combining issue discovery and testing
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
|
22
|
-
+--
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
|
65
|
-
|
|
66
|
-
| `
|
|
67
|
-
| `
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
|
92
|
-
|
|
93
|
-
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
|
102
|
-
|
|
103
|
-
|
|
|
104
|
-
|
|
|
105
|
-
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
1
|
+
---
|
|
2
|
+
name: team-quality-assurance
|
|
3
|
+
description: Team QA combining issue discovery and testing
|
|
4
|
+
argument-hint: "[scope] [-y|--yes] [-c|--concurrency N] [--continue] [--mode discovery|testing|full]"
|
|
5
|
+
allowed-tools: spawn_agents_on_csv, Read, Write, Edit, Bash, Glob, Grep, request_user_input
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<purpose>
|
|
9
|
+
Wave-based QA pipeline via `spawn_agents_on_csv`. Progressive test coverage through scout → strategy → generate → execute → analyze cycle with GC loops for coverage convergence.
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
+-------------------------------------------------------------------+
|
|
13
|
+
| QA CSV WAVE WORKFLOW |
|
|
14
|
+
+-------------------------------------------------------------------+
|
|
15
|
+
| Phase 1: Mode Selection + CSV Generation |
|
|
16
|
+
| +-- Detect mode (discovery/testing/full) |
|
|
17
|
+
| +-- Build tasks.csv from pipeline definition |
|
|
18
|
+
| |
|
|
19
|
+
| Phase 2: Wave Execution Engine |
|
|
20
|
+
| +-- Sequential waves, parallel tasks within wave |
|
|
21
|
+
| +-- GC Loop: after QARUN wave, check coverage targets |
|
|
22
|
+
| | +-- Coverage < target → add QAGEN+QARUN waves (max 3) |
|
|
23
|
+
| +-- discoveries.ndjson shared across waves |
|
|
24
|
+
| |
|
|
25
|
+
| Phase 3: Results Aggregation |
|
|
26
|
+
+-------------------------------------------------------------------+
|
|
27
|
+
```
|
|
28
|
+
</purpose>
|
|
29
|
+
|
|
30
|
+
<context>
|
|
31
|
+
```bash
|
|
32
|
+
$team-quality-assurance "src/auth module"
|
|
33
|
+
$team-quality-assurance -y --mode testing "src/payments"
|
|
34
|
+
$team-quality-assurance --continue "20260518-qa-auth"
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**Flags**: `-y` (auto), `-c N` (concurrency, default 3), `--continue` (resume), `--mode discovery|testing|full`
|
|
38
|
+
|
|
39
|
+
### Role Registry (Fixed)
|
|
40
|
+
|
|
41
|
+
| Role | Path | Prefix |
|
|
42
|
+
|------|------|--------|
|
|
43
|
+
| scout | [roles/scout/role.md](roles/scout/role.md) | SCOUT-* |
|
|
44
|
+
| strategist | [roles/strategist/role.md](roles/strategist/role.md) | QASTRAT-* |
|
|
45
|
+
| generator | [roles/generator/role.md](roles/generator/role.md) | QAGEN-* |
|
|
46
|
+
| executor | [roles/executor/role.md](roles/executor/role.md) | QARUN-* |
|
|
47
|
+
| analyst | [roles/analyst/role.md](roles/analyst/role.md) | QAANA-* |
|
|
48
|
+
|
|
49
|
+
**Session**: `.workflow/.csv-wave/{YYYYMMDD}-qa-{slug}/`
|
|
50
|
+
**Output**: tasks.csv, results.csv, discoveries.ndjson, context.md
|
|
51
|
+
|
|
52
|
+
### Scan Perspectives (scout)
|
|
53
|
+
bug, security, test-coverage, code-quality, ux
|
|
54
|
+
</context>
|
|
55
|
+
|
|
56
|
+
<csv_schema>
|
|
57
|
+
|
|
58
|
+
### tasks.csv (Input columns)
|
|
59
|
+
|
|
60
|
+
```csv
|
|
61
|
+
id,title,description,role,test_layer,deps,context_from,wave
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
| Column | Description |
|
|
65
|
+
|--------|-------------|
|
|
66
|
+
| `id` | Task ID: `{PREFIX}-{NNN}` or `{PREFIX}-L{layer}-{NNN}` |
|
|
67
|
+
| `title` | Short task title |
|
|
68
|
+
| `description` | PURPOSE/TASK/EXPECTED/CONSTRAINTS |
|
|
69
|
+
| `role` | Fixed role name |
|
|
70
|
+
| `test_layer` | L1/L2/L3 or empty |
|
|
71
|
+
| `deps` | Semicolon-separated dependency IDs |
|
|
72
|
+
| `context_from` | Semicolon-separated context source IDs |
|
|
73
|
+
| `wave` | Wave number |
|
|
74
|
+
|
|
75
|
+
**Output columns** (via `output_schema` only):
|
|
76
|
+
|
|
77
|
+
| Column | Description |
|
|
78
|
+
|--------|-------------|
|
|
79
|
+
| `result_status` | completed / failed / blocked |
|
|
80
|
+
| `findings` | Key findings (max 500 chars) |
|
|
81
|
+
| `files_modified` | Semicolon-separated paths |
|
|
82
|
+
| `coverage_score` | Test coverage % (0-100, for QARUN tasks) |
|
|
83
|
+
| `error` | Error message |
|
|
84
|
+
|
|
85
|
+
**Column separation rule**: Input and Output MUST NOT share names.
|
|
86
|
+
|
|
87
|
+
### Pipeline Wave Assignments
|
|
88
|
+
|
|
89
|
+
#### discovery (5 waves, serial)
|
|
90
|
+
|
|
91
|
+
| Wave | Task | Role |
|
|
92
|
+
|------|------|------|
|
|
93
|
+
| 1 | SCOUT-001 | scout |
|
|
94
|
+
| 2 | QASTRAT-001 | strategist |
|
|
95
|
+
| 3 | QAGEN-001 | generator |
|
|
96
|
+
| 4 | QARUN-001 | executor |
|
|
97
|
+
| 5 | QAANA-001 | analyst |
|
|
98
|
+
|
|
99
|
+
#### testing (6+ waves, GC loops)
|
|
100
|
+
|
|
101
|
+
| Wave | Task | Role |
|
|
102
|
+
|------|------|------|
|
|
103
|
+
| 1 | QASTRAT-001 | strategist |
|
|
104
|
+
| 2 | QAGEN-L1-001 | generator |
|
|
105
|
+
| 3 | QARUN-L1-001 | executor |
|
|
106
|
+
| 4+ | GC: QAGEN-L2 + QARUN-L2 if coverage < target | generator, executor |
|
|
107
|
+
| N | QAANA-001 | analyst |
|
|
108
|
+
|
|
109
|
+
#### full (8+ waves, parallel + GC)
|
|
110
|
+
|
|
111
|
+
| Wave | Task | Role |
|
|
112
|
+
|------|------|------|
|
|
113
|
+
| 1 | SCOUT-001 | scout |
|
|
114
|
+
| 2 | QASTRAT-001 | strategist |
|
|
115
|
+
| 3 | QAGEN-L1-001; QAGEN-L2-001 | generator (parallel) |
|
|
116
|
+
| 4 | QARUN-L1-001; QARUN-L2-001 | executor (parallel) |
|
|
117
|
+
| 5+ | GC loops if coverage < target | generator, executor |
|
|
118
|
+
| N-1 | QAANA-001 | analyst |
|
|
119
|
+
| N | SCOUT-002 | scout (regression) |
|
|
120
|
+
|
|
121
|
+
**Coverage Targets**: L1≥80%, L2≥60%, L3≥40%. **Max GC Rounds**: 3 per layer.
|
|
122
|
+
</csv_schema>
|
|
123
|
+
|
|
124
|
+
<invariants>
|
|
125
|
+
1. **Wave Order Sacred**: Sequential wave execution
|
|
126
|
+
2. **CSV Source of Truth**: Master tasks.csv
|
|
127
|
+
3. **Column Separation Rule**: Input ≠ Output column names
|
|
128
|
+
4. **GC Loop Max 3**: Per-layer generator-executor rounds
|
|
129
|
+
5. **Coverage Targets**: L1≥80%, L2≥60%, L3≥40%
|
|
130
|
+
6. **Discovery Board Append-Only**
|
|
131
|
+
7. **Cleanup Temp Files**: Both wave-N.csv and wave-N-results.csv
|
|
132
|
+
8. **DO NOT STOP**: Continuous until complete
|
|
133
|
+
9. **Role Files Authoritative**: Agents read roles/{role}/role.md
|
|
134
|
+
</invariants>
|
|
135
|
+
|
|
136
|
+
<state_machine>
|
|
137
|
+
|
|
138
|
+
<states>
|
|
139
|
+
S_PARSE — Parse arguments, detect mode
|
|
140
|
+
S_CSV_GEN — Generate tasks.csv
|
|
141
|
+
S_WAVE_{N} — Execute wave N
|
|
142
|
+
S_GC_CHECK — Coverage check after QARUN wave
|
|
143
|
+
S_AGGREGATE — Generate report
|
|
144
|
+
</states>
|
|
145
|
+
|
|
146
|
+
<transitions>
|
|
147
|
+
S_PARSE → S_CSV_GEN
|
|
148
|
+
S_CSV_GEN → S_WAVE_1
|
|
149
|
+
S_WAVE_{N} → S_GC_CHECK WHEN: wave was QARUN
|
|
150
|
+
S_WAVE_{N} → S_WAVE_{N+1} WHEN: not GC-eligible
|
|
151
|
+
S_GC_CHECK → S_WAVE_{N+1} WHEN: coverage >= target (converged)
|
|
152
|
+
S_GC_CHECK → S_WAVE_{N+1} WHEN: coverage < target, gc_rounds < 3 (add QAGEN+QARUN rows)
|
|
153
|
+
S_GC_CHECK → S_WAVE_{N+1} WHEN: gc_rounds >= 3 (proceed with warning)
|
|
154
|
+
S_WAVE_{N} → S_AGGREGATE WHEN: last wave
|
|
155
|
+
</transitions>
|
|
156
|
+
|
|
157
|
+
<actions>
|
|
158
|
+
|
|
159
|
+
### GC Loop
|
|
160
|
+
|
|
161
|
+
After each QARUN wave:
|
|
162
|
+
1. Read `coverage_score` from results
|
|
163
|
+
2. coverage >= target → continue
|
|
164
|
+
3. coverage < target AND gc_rounds < 3 → add QAGEN+QARUN rows, increment wave, continue
|
|
165
|
+
4. gc_rounds >= 3 → proceed with warning
|
|
166
|
+
|
|
167
|
+
### Instruction Builder
|
|
168
|
+
|
|
169
|
+
```
|
|
170
|
+
You are a team-quality-assurance agent.
|
|
171
|
+
Role: read 'role' column. Task: read 'description' column.
|
|
172
|
+
|
|
173
|
+
## Role Definition
|
|
174
|
+
Read: {skillRoot}/roles/{role}/role.md
|
|
175
|
+
|
|
176
|
+
## Context
|
|
177
|
+
Session: {sessionFolder}
|
|
178
|
+
Discovery board: {sessionFolder}/discoveries.ndjson
|
|
179
|
+
Previous context: 'prev_context' column
|
|
180
|
+
|
|
181
|
+
## Output
|
|
182
|
+
result_status, findings, files_modified, coverage_score (QARUN only), error
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
</actions>
|
|
186
|
+
</state_machine>
|
|
187
|
+
|
|
188
|
+
<error_codes>
|
|
189
|
+
|
|
190
|
+
| Condition | Recovery |
|
|
191
|
+
|-----------|----------|
|
|
192
|
+
| Scout found 0 issues | Skip to analyst, report clean |
|
|
193
|
+
| Coverage never converges | After 3 GC rounds, proceed with warning |
|
|
194
|
+
| Generator produces 0 tests | Mark blocked, skip executor |
|
|
195
|
+
</error_codes>
|
|
196
|
+
|
|
197
|
+
<success_criteria>
|
|
198
|
+
- [ ] Mode selected and CSV generated
|
|
199
|
+
- [ ] Waves executed via spawn_agents_on_csv
|
|
200
|
+
- [ ] GC loops converge or hit max 3
|
|
201
|
+
- [ ] Coverage tracked per layer
|
|
202
|
+
- [ ] Column separation maintained
|
|
203
|
+
- [ ] Temp files cleaned
|
|
204
|
+
- [ ] results.csv and context.md generated
|
|
205
|
+
</success_criteria>
|