maestro-flow 0.5.40 → 0.5.41
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/.agents/skills/odyssey-debug/SKILL.md +109 -143
- package/.agents/skills/odyssey-improve/SKILL.md +127 -141
- package/.agents/skills/odyssey-planex/SKILL.md +140 -231
- package/.agents/skills/odyssey-review-test-fix/SKILL.md +136 -90
- package/.agents/skills/odyssey-ui/SKILL.md +123 -143
- package/.agy/skills/odyssey-debug/SKILL.md +109 -143
- package/.agy/skills/odyssey-improve/SKILL.md +127 -141
- package/.agy/skills/odyssey-planex/SKILL.md +140 -231
- package/.agy/skills/odyssey-review-test-fix/SKILL.md +136 -90
- package/.agy/skills/odyssey-ui/SKILL.md +123 -143
- package/.claude/commands/odyssey-debug.md +109 -143
- package/.claude/commands/odyssey-improve.md +127 -141
- package/.claude/commands/odyssey-planex.md +140 -231
- package/.claude/commands/odyssey-review-test-fix.md +136 -90
- package/.claude/commands/odyssey-ui.md +123 -143
- package/.codex/skills/odyssey-debug/SKILL.md +114 -169
- package/.codex/skills/odyssey-improve/SKILL.md +144 -188
- package/.codex/skills/odyssey-planex/SKILL.md +162 -242
- package/.codex/skills/odyssey-review-test-fix/SKILL.md +96 -90
- package/.codex/skills/odyssey-ui/SKILL.md +128 -173
- package/dashboard/dist-server/src/tools/spec-loader.js +27 -19
- package/dashboard/dist-server/src/tools/spec-loader.js.map +1 -1
- package/dashboard/dist-server/src/tools/spec-seeds.d.ts +8 -0
- package/dashboard/dist-server/src/tools/spec-seeds.js +114 -0
- package/dashboard/dist-server/src/tools/spec-seeds.js.map +1 -1
- package/dist/src/commands/spec.d.ts.map +1 -1
- package/dist/src/commands/spec.js +13 -3
- package/dist/src/commands/spec.js.map +1 -1
- package/dist/src/tools/spec-init.d.ts +4 -3
- package/dist/src/tools/spec-init.d.ts.map +1 -1
- package/dist/src/tools/spec-init.js +9 -5
- package/dist/src/tools/spec-init.js.map +1 -1
- package/dist/src/tools/spec-loader.d.ts.map +1 -1
- package/dist/src/tools/spec-loader.js +27 -19
- package/dist/src/tools/spec-loader.js.map +1 -1
- package/dist/src/tools/spec-seeds.d.ts +8 -0
- package/dist/src/tools/spec-seeds.d.ts.map +1 -1
- package/dist/src/tools/spec-seeds.js +114 -0
- package/dist/src/tools/spec-seeds.js.map +1 -1
- package/package.json +1 -1
- package/workflows/odyssey-base-codex.md +306 -0
|
@@ -17,19 +17,19 @@ allowed-tools:
|
|
|
17
17
|
<base>@~/.maestro/workflows/odyssey-base.md</base>
|
|
18
18
|
|
|
19
19
|
<purpose>
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
survey → 6-dimension audit → diagnose → fix → verify → generalize → discover → persist.
|
|
21
|
+
Exhaustive iteration until zero remaining actionable findings.
|
|
22
22
|
</purpose>
|
|
23
23
|
|
|
24
24
|
<boundary>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
**Zero-residual
|
|
25
|
+
**In scope:** Runtime quality improvement — performance/security/architecture/reliability/observability/maintainability audit → diagnose → fix → generalize.
|
|
26
|
+
**Out of scope:** UI visual → `/odyssey-ui` | New features → `/odyssey-planex` | Single bug → `/odyssey-debug` | Style review → `/odyssey-review-test-fix`
|
|
27
|
+
**Exploration freedom:** Free exploration within boundary — profiling, security scanning, architecture analysis, dependency audit.
|
|
28
|
+
**Zero-residual:** Every finding MUST have a concrete action (fix / issue / decision). "Report and shelve" is not allowed. "Pre-existing issue" is not a valid skip reason.
|
|
29
29
|
</boundary>
|
|
30
30
|
|
|
31
31
|
<context>
|
|
32
|
-
$ARGUMENTS
|
|
32
|
+
$ARGUMENTS
|
|
33
33
|
|
|
34
34
|
**Target resolution:**
|
|
35
35
|
| Input | Resolution |
|
|
@@ -39,17 +39,7 @@ $ARGUMENTS — target and optional flags.
|
|
|
39
39
|
| Feature area keyword | Resolve to related files |
|
|
40
40
|
| `--all` | Full project scan (use with caution) |
|
|
41
41
|
|
|
42
|
-
**Flags:**
|
|
43
|
-
| Flag | Effect | Default |
|
|
44
|
-
|------|--------|---------|
|
|
45
|
-
| `--dimensions <list>` | Comma-separated subset of 6 dimensions | all 6 |
|
|
46
|
-
| `--fix-threshold <severity>` | 修复到哪个 severity 为止(all = 全部修复)| all |
|
|
47
|
-
| `--skip-fix` | Audit + diagnose only, no code changes | false |
|
|
48
|
-
| `--skip-generalize` | Skip S_GENERALIZE and S_DISCOVER | false |
|
|
49
|
-
| `--auto` | CLI delegates without confirmation | false |
|
|
50
|
-
| `-y` | Auto-confirm all decisions (see appendix) | false |
|
|
51
|
-
| `-c` | Resume most recent session | — |
|
|
52
|
-
| `--heartbeat` | Enable /loop heartbeat protocol (see base) | false |
|
|
42
|
+
**Flags:** `--dimensions <list>` dimension subset | `--fix-threshold <severity>` fix cutoff (default: all) | `--skip-fix` audit+diagnose only | `--skip-generalize` skip S_GENERALIZE+S_DISCOVER | `--auto` no delegate confirmation | `-y` auto-confirm | `-c` resume | `--heartbeat` /loop heartbeat
|
|
53
43
|
|
|
54
44
|
**Dimensions (6):**
|
|
55
45
|
1. **performance** — hot paths, N+1 queries, memory allocation, cache efficiency, bundle size, lazy loading
|
|
@@ -59,13 +49,17 @@ $ARGUMENTS — target and optional flags.
|
|
|
59
49
|
5. **observability** — logging coverage, metric gaps, trace propagation, error reporting, health checks
|
|
60
50
|
6. **maintainability** — code complexity (cyclomatic), dead code, test coverage gaps, documentation debt
|
|
61
51
|
|
|
62
|
-
**Session**:
|
|
52
|
+
**Session**: `.workflow/scratch/{YYYYMMDD}-improve-odyssey-{slug}/`
|
|
53
|
+
**Output**: `session.json` | `evidence.ndjson` | `understanding.md`
|
|
63
54
|
|
|
64
|
-
**
|
|
55
|
+
**session.json — improve-specific fields:**
|
|
56
|
+
```json
|
|
57
|
+
{ "target": "", "dimensions": [], "baseline_metrics": {},
|
|
58
|
+
"audit_result": {}, "diagnoses": [], "confirmation": null,
|
|
59
|
+
"generalization_stats": null }
|
|
60
|
+
```
|
|
65
61
|
|
|
66
|
-
**
|
|
67
|
-
|
|
68
|
-
**evidence.ndjson phase-specific fields:**
|
|
62
|
+
**evidence.ndjson phases:** `survey|audit|diagnosis|fix|discovery|decision|self-iteration`
|
|
69
63
|
- `survey`: `category` (dependency|complexity|coverage|error_pattern), `detail`
|
|
70
64
|
- `audit`: `dimension`, `severity`, `measurement`
|
|
71
65
|
- `diagnosis`: `finding_ref`, `hypothesis`, `result` (confirmed|disproved|inconclusive), `root_cause`
|
|
@@ -75,92 +69,79 @@ $ARGUMENTS — target and optional flags.
|
|
|
75
69
|
- `self-iteration`: `stage`, `round`, `assessment`, `expansion`
|
|
76
70
|
|
|
77
71
|
**phase_goals[]:**
|
|
72
|
+
|
|
78
73
|
| ID | Goal | Phase | skip_when |
|
|
79
74
|
|----|------|-------|-----------|
|
|
80
75
|
| G1 | Survey completed | S_SURVEY | — |
|
|
81
76
|
| G2 | Audit completed | S_AUDIT | — |
|
|
82
77
|
| G3 | Diagnosis completed | S_DIAGNOSE | — |
|
|
83
|
-
| G4 | Zero remaining: all findings fixed and verified |
|
|
78
|
+
| G4 | Zero remaining: all findings fixed and verified | S_VERIFY | skip_fix |
|
|
84
79
|
| G5 | Pattern generalized | S_GENERALIZE | skip_generalize |
|
|
85
80
|
| G6 | Discoveries triaged | S_DISCOVER | skip_generalize |
|
|
86
81
|
| G7 | Learnings persisted | S_RECORD | — |
|
|
87
82
|
|
|
88
|
-
**understanding.md — 9 sections
|
|
83
|
+
**understanding.md — 9 sections:**
|
|
89
84
|
1. Target & Baseline ← S_INTAKE | 2. Current State Survey ← S_SURVEY | 3. Audit Findings ← S_AUDIT
|
|
90
85
|
4. Root Cause Diagnosis ← S_DIAGNOSE | 5. Fix & Verification ← S_FIX+S_VERIFY
|
|
91
86
|
6. Generalization ← S_GENERALIZE | 7. Discoveries ← S_DISCOVER
|
|
92
87
|
8. Improvement Metrics ← S_RECORD (before/after) | 9. Engineering Learnings ← S_RECORD
|
|
93
88
|
|
|
94
|
-
|
|
95
|
-
- ARCHITECTURE.md → 模块边界 | `maestro search "<target>" --json` → 先前优化(top 5)
|
|
96
|
-
- `maestro load --type spec --category coding` + `--category debug` → 编码规范 + 已知模式
|
|
97
|
-
- `maestro search --category coding` → knowhow | `grep_search(".workflow/scratch/*-improve-odyssey-*")` → 先前会话
|
|
98
|
-
|
|
99
|
-
### Knowledge Persistence(S_RECORD 中写入产出文件)
|
|
89
|
+
**Knowledge Persistence categories (§9):**
|
|
100
90
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
|
104
|
-
|
|
105
|
-
|
|
|
106
|
-
|
|
|
107
|
-
| 架构约束 | 违反描述 + 正确边界 + 检查方法 | `/spec-add arch "..."` |
|
|
108
|
-
| 可靠性 pattern | 故障模式 + 处理策略 + 验证手段 | `/spec-add coding "..."` |
|
|
91
|
+
| Category | Content | Follow-up |
|
|
92
|
+
|----------|---------|-----------|
|
|
93
|
+
| Performance pattern | Bottleneck type + fix approach + measurement method | `/spec-add coding` |
|
|
94
|
+
| Security rule | Vulnerability class + fix + prevention method | `/spec-add debug` |
|
|
95
|
+
| Architecture constraint | Violation description + correct boundary + check method | `/spec-add arch` |
|
|
96
|
+
| Reliability pattern | Failure mode + handling strategy + verification method | `/spec-add coding` |
|
|
109
97
|
</context>
|
|
110
98
|
|
|
111
|
-
|
|
99
|
+
<invariants>
|
|
100
|
+
All invariants (evidence append-only, session-as-state, phase goal tracking, auto-commit, zero-residual) defined in base.
|
|
101
|
+
</invariants>
|
|
102
|
+
|
|
103
|
+
<self_iteration>
|
|
104
|
+
Applies to: **S_SURVEY, S_AUDIT, S_DIAGNOSE, S_GENERALIZE**. Logic in base.
|
|
105
|
+
</self_iteration>
|
|
112
106
|
|
|
113
107
|
<state_machine>
|
|
114
108
|
|
|
115
109
|
<states>
|
|
116
|
-
S_INTAKE
|
|
117
|
-
S_SURVEY — Current state: dependency audit, complexity scan, coverage PERSIST: evidence.ndjson (survey) + understanding.md §2
|
|
118
|
-
S_AUDIT — 6-dimension parallel deep audit PERSIST: evidence.ndjson (audit) + understanding.md §3
|
|
119
|
-
S_DIAGNOSE — Root cause analysis for critical/high findings PERSIST: evidence.ndjson (diagnosis|decision) + understanding.md §4
|
|
120
|
-
S_FIX — Implement improvements (skip if --skip-fix) PERSIST: code changes + evidence.ndjson (fix)
|
|
121
|
-
S_VERIFY — Tests + measurement comparison (skip if --skip-fix) PERSIST: session.json.confirmation + understanding.md §5
|
|
122
|
-
S_GENERALIZE — Pattern extraction + 4-agent scan (skip if --skip-gen) PERSIST: session.json.patterns + understanding.md §6
|
|
123
|
-
S_DISCOVER — Classify hits, create issues (skip if --skip-gen) PERSIST: evidence.ndjson (discovery|decision) + understanding.md §7
|
|
124
|
-
S_RECORD — Persist metrics + learnings + final report PERSIST: understanding.md §8-9 + spec entries
|
|
110
|
+
S_INTAKE → S_SURVEY → S_AUDIT → S_DIAGNOSE → S_FIX → S_VERIFY → S_GENERALIZE → S_DISCOVER → S_RECORD → END
|
|
125
111
|
</states>
|
|
126
112
|
|
|
127
113
|
<transitions>
|
|
128
|
-
S_INTAKE:
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
→ S_INTAKE WHEN no target DO ask_question
|
|
114
|
+
S_INTAKE → S_INTAKE : -c + session found → A_RESUME
|
|
115
|
+
S_INTAKE → S_SURVEY : target resolved → A_INTAKE
|
|
116
|
+
S_INTAKE → S_INTAKE : no target → ask_question
|
|
132
117
|
|
|
133
|
-
S_SURVEY
|
|
118
|
+
S_SURVEY → S_AUDIT : complete
|
|
134
119
|
|
|
135
|
-
S_AUDIT:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
→ S_RECORD WHEN no findings OR skip_gen DO A_AUDIT
|
|
120
|
+
S_AUDIT → S_DIAGNOSE : critical/high findings exist
|
|
121
|
+
S_AUDIT → S_GENERALIZE : no critical/high, !skip_generalize
|
|
122
|
+
S_AUDIT → S_RECORD : no findings OR skip_generalize
|
|
139
123
|
|
|
140
|
-
S_DIAGNOSE:
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
→ S_RECORD WHEN hypotheses failed AND retries >= 3 DO mark INCONCLUSIVE
|
|
124
|
+
S_DIAGNOSE → S_FIX : root causes identified, !skip_fix
|
|
125
|
+
S_DIAGNOSE → S_GENERALIZE : root causes identified, skip_fix, !skip_generalize
|
|
126
|
+
S_DIAGNOSE → S_RECORD : root causes identified, skip_fix, skip_generalize
|
|
127
|
+
S_DIAGNOSE → S_DIAGNOSE : hypotheses failed, retries < 3 → A_ESCALATE_DIAGNOSIS
|
|
128
|
+
S_DIAGNOSE → S_RECORD : retries >= 3 → INCONCLUSIVE
|
|
146
129
|
|
|
147
|
-
S_FIX
|
|
130
|
+
S_FIX → S_VERIFY : fix implemented
|
|
148
131
|
|
|
149
|
-
S_VERIFY:
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
→ S_FIX WHEN needs_rework DO A_VERIFY
|
|
132
|
+
S_VERIFY → S_GENERALIZE : verified, !skip_generalize
|
|
133
|
+
S_VERIFY → S_RECORD : verified, skip_generalize
|
|
134
|
+
S_VERIFY → S_FIX : needs_rework
|
|
153
135
|
|
|
154
|
-
S_GENERALIZE:
|
|
155
|
-
|
|
156
|
-
→ S_RECORD WHEN no hits DO A_GENERALIZE
|
|
136
|
+
S_GENERALIZE → S_DISCOVER : hits found
|
|
137
|
+
S_GENERALIZE → S_RECORD : no hits
|
|
157
138
|
|
|
158
|
-
S_DISCOVER → S_DIAGNOSE : new critical issue
|
|
139
|
+
S_DISCOVER → S_DIAGNOSE : new critical issue → cross_phase_loops++
|
|
159
140
|
S_DISCOVER → S_FIX : same-pattern fix, !skip_fix → cross_phase_loops++
|
|
160
|
-
S_DISCOVER → S_RECORD :
|
|
161
|
-
S_DISCOVER → S_RECORD : loops >= max_loops → MUST log
|
|
141
|
+
S_DISCOVER → S_RECORD : remaining_actionable == 0
|
|
142
|
+
S_DISCOVER → S_RECORD : loops >= max_loops → MUST log per-item reasons
|
|
162
143
|
|
|
163
|
-
S_RECORD → END
|
|
144
|
+
S_RECORD → END : complete
|
|
164
145
|
</transitions>
|
|
165
146
|
|
|
166
147
|
<actions>
|
|
@@ -170,108 +151,111 @@ S_RECORD → END DO A_RECORD
|
|
|
170
151
|
2. Generate slug, create `SESSION_DIR`
|
|
171
152
|
3. Search: `maestro search "<keywords>"` + Glob prior sessions + ARCHITECTURE.md + spec load coding/debug
|
|
172
153
|
4. **Baseline capture**: Record current metrics (test pass rate, bundle size, dependency count, complexity hotspots) to `session.json.baseline_metrics`
|
|
173
|
-
5. Derive `phase_goals[]` from flags
|
|
174
|
-
6. Write `session.json` + `understanding.md` §1
|
|
175
|
-
7. Emit Goal Prompt (see Appendix)
|
|
154
|
+
5. Derive `phase_goals[]` from flags
|
|
155
|
+
6. Write `session.json` + `understanding.md` §1, emit Goal Prompt
|
|
176
156
|
|
|
177
|
-
|
|
157
|
+
Commit: `"odyssey-improve({slug}): INTAKE — parse target and capture baseline"`
|
|
178
158
|
|
|
179
159
|
### A_RESUME
|
|
180
|
-
|
|
160
|
+
Glob latest session → read `session.json` → display summary → jump to `current_state`.
|
|
181
161
|
|
|
182
162
|
### A_SURVEY
|
|
183
163
|
Current state survey — understand what exists before proposing changes.
|
|
184
164
|
|
|
185
165
|
1. Dependency audit (package.json/lock), complexity scan (size/nesting), test coverage map, error handling scan (empty catch, unhandled promise)
|
|
186
|
-
2. **CLI-assisted** (optional): `maestro delegate
|
|
187
|
-
3.
|
|
166
|
+
2. **CLI-assisted** (optional): `maestro delegate --role analyze --mode analysis` for dependency health, complexity hotspots, coverage gaps, error patterns. Execute `run_in_background: true`.
|
|
167
|
+
3. Evidence phase=survey. Update §2. Mark G1.
|
|
188
168
|
|
|
189
|
-
|
|
169
|
+
Commit: `"odyssey-improve({slug}): SURVEY — current state analysis"`
|
|
190
170
|
|
|
191
171
|
### A_AUDIT
|
|
192
|
-
Spawn 6 parallel Agents (one per dimension
|
|
172
|
+
Spawn 6 parallel Agents (one per dimension, or `--dimensions` subset).
|
|
193
173
|
Each returns: `[{title, severity, dimension, file, line, description, suggestion, measurement}]`
|
|
194
174
|
|
|
195
|
-
Merge → evidence
|
|
196
|
-
Update
|
|
175
|
+
Merge → evidence phase=audit. Write `session.json.audit_result`.
|
|
176
|
+
Update §3 (findings by dimension + severity matrix). Mark G2.
|
|
197
177
|
|
|
198
|
-
|
|
178
|
+
Commit: `"odyssey-improve({slug}): AUDIT — multi-dimension review"`
|
|
199
179
|
|
|
200
180
|
### A_DIAGNOSE
|
|
201
181
|
Root cause analysis for critical/high findings — don't fix symptoms.
|
|
202
182
|
|
|
203
|
-
1. Group by dimension, prioritize by severity. For each: hypothesis → trace code path + git history → evidence
|
|
204
|
-
2.
|
|
205
|
-
3.
|
|
206
|
-
4. Write `session.json.diagnoses[]`. Update
|
|
183
|
+
1. Group by dimension, prioritize by severity. For each: hypothesis → trace code path + git history → evidence phase=diagnosis
|
|
184
|
+
2. Ambiguity → evidence phase=decision; Normal: ask_question | `-y`: defer
|
|
185
|
+
3. CLI-assisted for complex findings: `maestro delegate --role analyze --mode analysis` (`run_in_background: true`)
|
|
186
|
+
4. Write `session.json.diagnoses[]`. Update §4. Mark G3.
|
|
207
187
|
|
|
208
|
-
|
|
188
|
+
Commit: `"odyssey-improve({slug}): DIAGNOSE — root cause analysis"`
|
|
209
189
|
|
|
210
190
|
### A_ESCALATE_DIAGNOSIS
|
|
211
|
-
|
|
191
|
+
`retries++`. < 3: `maestro delegate --role analyze`, new hypotheses, → S_DIAGNOSE. >= 3: Normal → ask_question | `-y` → INCONCLUSIVE → S_RECORD.
|
|
212
192
|
|
|
213
193
|
### A_FIX
|
|
214
|
-
|
|
194
|
+
1. Exhaustive fix: ALL diagnosed issues by severity tier (critical → high → medium → low within fix_threshold), one dimension at a time. After each tier, re-verify — new findings append to current tier.
|
|
195
|
+
2. For each fix: implement → evidence phase=fix
|
|
196
|
+
3. Normal: ask_question per-fix confirmation | `-y`: auto-proceed, record `deferred`
|
|
215
197
|
|
|
216
|
-
|
|
217
|
-
2. For each fix: implement → record evidence.ndjson (phase: "fix")
|
|
218
|
-
3. **Normal**: ask_question per-fix confirmation. **`-y`**: auto-proceed, record `deferred`.
|
|
219
|
-
|
|
220
|
-
📌 **Auto-commit**: `git add -A && git commit -m "odyssey-improve({slug}): FIX — 改进实现"`
|
|
198
|
+
Commit: `"odyssey-improve({slug}): FIX — improvements applied"`
|
|
221
199
|
|
|
222
200
|
### A_VERIFY
|
|
223
201
|
1. Run tests covering modified areas
|
|
224
202
|
2. Re-capture metrics, compare with `session.json.baseline_metrics`
|
|
225
|
-
3.
|
|
226
|
-
4. `needs_rework` → S_FIX. `verified` → mark G4
|
|
227
|
-
5. Write `session.json.confirmation`. Update
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
### A_GENERALIZE
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
203
|
+
3. CLI-assisted: `maestro delegate --role review --mode analysis` (`run_in_background: true`)
|
|
204
|
+
4. `needs_rework` → S_FIX. `verified` → mark G4, advance.
|
|
205
|
+
5. Write `session.json.confirmation`. Update §5 (before/after metrics table).
|
|
206
|
+
|
|
207
|
+
Commit: `"odyssey-improve({slug}): VERIFY — improvements verified"`
|
|
208
|
+
|
|
209
|
+
### A_GENERALIZE, A_DISCOVER, A_RECORD
|
|
210
|
+
Base shared_actions. Improve overrides:
|
|
211
|
+
- **A_GENERALIZE** pattern source: diagnoses + fixes
|
|
212
|
+
- **A_RECORD** §8: improvement metrics (before/after comparison from baseline_metrics vs current). §9: learnings per Knowledge Persistence table. Completion summary lists suggested `/spec-add` commands.
|
|
213
|
+
|
|
214
|
+
**Completion summary:**
|
|
215
|
+
```
|
|
216
|
+
--- IMPROVE ODYSSEY COMPLETE ---
|
|
217
|
+
Target: {target}
|
|
218
|
+
Dimensions: {dimensions}
|
|
219
|
+
Findings: {critical}C / {high}H / {medium}M / {low}L
|
|
220
|
+
Diagnosed: {count}
|
|
221
|
+
Fixed: {count} ({verified} verified)
|
|
222
|
+
Metrics: {improved} improved / {regressed} regressed
|
|
223
|
+
Patterns: {count} ({by_layer})
|
|
224
|
+
Scan hits: {total} ({cross_layer_confirmed} confirmed)
|
|
225
|
+
Issues: {N} created
|
|
226
|
+
Decisions: {N} resolved, {M} pending, {K} deferred
|
|
227
|
+
Learnings: {N} persisted
|
|
228
|
+
Self-iter: {N} rounds across {M} stages
|
|
229
|
+
Cross-loops: {N}
|
|
230
|
+
Goals: {done}/{total} ({skipped} skipped)
|
|
231
|
+
---
|
|
232
|
+
```
|
|
249
233
|
|
|
250
234
|
</actions>
|
|
251
235
|
|
|
252
236
|
<appendix>
|
|
253
237
|
|
|
254
|
-
###
|
|
255
|
-
**⚠️ 仅在 A_INTAKE 完成后显示一次,A_RECORD 完成时不重复。**
|
|
256
|
-
|
|
257
|
-
列出所有非 skipped 的 phase_goals,附加收敛规则:
|
|
258
|
-
- 穷尽迭代至所有 findings 已处理(fix/issue/decision)且 `phase_goals_all_done=true`
|
|
259
|
-
- 修复按 severity 逐轮迭代,每轮 re-verify
|
|
260
|
-
- Baseline 修复前采集,修复后对比确认改进
|
|
261
|
-
- pending decision 必须 ask_question,不允许"只报告不处理"
|
|
238
|
+
### `-y` improve-specific points
|
|
262
239
|
|
|
263
|
-
### `-y` Auto-Confirm Behavior
|
|
264
240
|
| Decision Point | Normal | `-y` |
|
|
265
241
|
|---------------|--------|------|
|
|
266
242
|
| A_FIX improvement confirmation | ask_question | auto-proceed, `deferred` |
|
|
267
243
|
| A_DIAGNOSE ambiguity | ask_question | best-effort, `deferred` |
|
|
268
244
|
| A_ESCALATE 3-strike | ask_question 3-way | auto INCONCLUSIVE |
|
|
269
|
-
| A_DISCOVER hit routing | ask_question | auto create issue
|
|
245
|
+
| A_DISCOVER hit routing | ask_question | auto create issue |
|
|
270
246
|
| A_DISCOVER ambiguous items | ask_question | all `deferred` |
|
|
271
|
-
| A_RECORD pending decisions | ask_question | skip, show deferred count |
|
|
272
|
-
| A_RECORD goal audit | ask_question | auto accept |
|
|
273
247
|
|
|
274
|
-
`deferred` items shown
|
|
248
|
+
`deferred` items shown in completion summary; recoverable via `-c`.
|
|
249
|
+
|
|
250
|
+
### Goal Prompt convergence rules
|
|
251
|
+
|
|
252
|
+
```
|
|
253
|
+
Exhaust iteration until all findings actioned (fix/issue/decision)
|
|
254
|
+
and phase_goals_all_done=true.
|
|
255
|
+
Fix by severity tiers, re-verify after each tier.
|
|
256
|
+
Baseline captured before fix, compared after to confirm improvement.
|
|
257
|
+
Pending decisions must ask_question — no silent resolve.
|
|
258
|
+
```
|
|
275
259
|
|
|
276
260
|
</appendix>
|
|
277
261
|
|
|
@@ -296,16 +280,18 @@ Skip if `--skip-fix`. Implement improvements for diagnosed root causes.
|
|
|
296
280
|
- [ ] understanding.md §8 (metrics) and §9 (learnings) completed
|
|
297
281
|
- [ ] phase_goals G1-G7 tracked and audited
|
|
298
282
|
- [ ] Session resumable via -c
|
|
283
|
+
- [ ] Completion summary
|
|
299
284
|
</success_criteria>
|
|
300
285
|
|
|
301
286
|
<next_step_routing>
|
|
302
|
-
| Condition | Next
|
|
303
|
-
|
|
287
|
+
| Condition | Next |
|
|
288
|
+
|-----------|------|
|
|
304
289
|
| Security findings need deep investigation | `/odyssey-debug "<finding>"` |
|
|
305
290
|
| UI-related findings | `/odyssey-ui "<component>"` |
|
|
306
291
|
| Issues created from discoveries | `/manage-issue list --source improve-odyssey` |
|
|
307
292
|
| Architecture pattern to document | `/spec-add arch "..."` |
|
|
308
293
|
| Performance pattern to persist | `/spec-add coding "..."` |
|
|
309
|
-
|
|
|
310
|
-
|
|
|
294
|
+
| Formal review of changes | `/odyssey-review-test-fix <changed-files>` |
|
|
295
|
+
| Pending decisions | Filter evidence phase=decision status=pending |
|
|
311
296
|
</next_step_routing>
|
|
297
|
+
</output>
|