maestro-flow 0.4.21 → 0.4.23
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/maestro-analyze/SKILL.md +78 -34
- package/.agents/skills/maestro-blueprint/SKILL.md +57 -24
- package/.agents/skills/maestro-brainstorm/SKILL.md +69 -34
- package/.agents/skills/maestro-execute/SKILL.md +45 -15
- package/.agents/skills/maestro-grill/SKILL.md +63 -38
- package/.agents/skills/maestro-init/SKILL.md +59 -17
- package/.agents/skills/maestro-milestone-audit/SKILL.md +48 -5
- package/.agents/skills/maestro-milestone-complete/SKILL.md +48 -6
- package/.agents/skills/maestro-milestone-release/SKILL.md +42 -11
- package/.agents/skills/maestro-plan/SKILL.md +19 -13
- package/.agents/skills/maestro-roadmap/SKILL.md +59 -29
- package/.agents/skills/maestro-verify/SKILL.md +46 -11
- package/.agents/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.agents/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/.agents/skills/team-adversarial-swarm/scripts/aco.py +15 -15
- package/.agents/skills/team-adversarial-swarm/scripts/pheromone.py +2 -2
- package/.agents/skills/team-adversarial-swarm/scripts/scoring.py +1 -1
- package/.agents/skills/team-swarm/scripts/aco.py +15 -15
- package/.agents/skills/team-swarm/scripts/pheromone.py +2 -2
- package/.agents/skills/team-swarm/scripts/scoring.py +1 -1
- package/.agy/skills/maestro-analyze/SKILL.md +78 -34
- package/.agy/skills/maestro-blueprint/SKILL.md +57 -24
- package/.agy/skills/maestro-brainstorm/SKILL.md +69 -34
- package/.agy/skills/maestro-execute/SKILL.md +45 -15
- package/.agy/skills/maestro-grill/SKILL.md +63 -38
- package/.agy/skills/maestro-init/SKILL.md +59 -17
- package/.agy/skills/maestro-milestone-audit/SKILL.md +48 -5
- package/.agy/skills/maestro-milestone-complete/SKILL.md +48 -6
- package/.agy/skills/maestro-milestone-release/SKILL.md +42 -11
- package/.agy/skills/maestro-plan/SKILL.md +19 -13
- package/.agy/skills/maestro-roadmap/SKILL.md +59 -29
- package/.agy/skills/maestro-verify/SKILL.md +46 -11
- package/.agy/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.agy/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/.agy/skills/team-adversarial-swarm/scripts/aco.py +15 -15
- package/.agy/skills/team-adversarial-swarm/scripts/pheromone.py +2 -2
- package/.agy/skills/team-adversarial-swarm/scripts/scoring.py +1 -1
- package/.agy/skills/team-swarm/scripts/aco.py +15 -15
- package/.agy/skills/team-swarm/scripts/pheromone.py +2 -2
- package/.agy/skills/team-swarm/scripts/scoring.py +1 -1
- package/.claude/commands/maestro-analyze.md +78 -34
- package/.claude/commands/maestro-blueprint.md +57 -24
- package/.claude/commands/maestro-brainstorm.md +69 -34
- package/.claude/commands/maestro-execute.md +45 -15
- package/.claude/commands/maestro-grill.md +63 -38
- package/.claude/commands/maestro-init.md +59 -17
- package/.claude/commands/maestro-milestone-audit.md +48 -5
- package/.claude/commands/maestro-milestone-complete.md +48 -6
- package/.claude/commands/maestro-milestone-release.md +42 -11
- package/.claude/commands/maestro-plan.md +19 -13
- package/.claude/commands/maestro-roadmap.md +59 -29
- package/.claude/commands/maestro-verify.md +46 -11
- package/.claude/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/.claude/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/.claude/skills/team-adversarial-swarm/scripts/aco.py +15 -15
- package/.claude/skills/team-adversarial-swarm/scripts/pheromone.py +2 -2
- package/.claude/skills/team-adversarial-swarm/scripts/scoring.py +1 -1
- package/.claude/skills/team-swarm/scripts/aco.py +15 -15
- package/.claude/skills/team-swarm/scripts/pheromone.py +2 -2
- package/.claude/skills/team-swarm/scripts/scoring.py +1 -1
- package/package.json +1 -1
- package/workflows/command-authoring.md +823 -0
- package/workflows/interview-mechanics.md +7 -0
|
@@ -13,28 +13,56 @@ allowed-tools:
|
|
|
13
13
|
---
|
|
14
14
|
<purpose>
|
|
15
15
|
Initialize a new project through auto state detection and unified flow. Invoked when starting a fresh project or onboarding an existing codebase into workflow management. Produces the `.workflow/` directory structure with project.md, state.json, config.json, and specs. Does NOT create roadmap — use maestro-roadmap (light mode, default) or maestro-roadmap --mode full (spec package) as the next step.
|
|
16
|
+
|
|
17
|
+
Pipeline position: entry point (no upstream). Downstream: `maestro-roadmap` or `maestro-brainstorm`.
|
|
16
18
|
</purpose>
|
|
17
19
|
|
|
18
20
|
<required_reading>
|
|
19
21
|
@~/.maestro/workflows/init.md
|
|
20
|
-
@~/.maestro/templates/project.md
|
|
21
|
-
@~/.maestro/templates/state.json
|
|
22
|
-
@~/.maestro/templates/config.json
|
|
23
22
|
</required_reading>
|
|
24
23
|
|
|
24
|
+
<deferred_reading>
|
|
25
|
+
- [project.md](~/.maestro/templates/project.md) — read when generating project description
|
|
26
|
+
- [state.json](~/.maestro/templates/state.json) — read when creating initial state
|
|
27
|
+
- [config.json](~/.maestro/templates/config.json) — read when creating workflow configuration
|
|
28
|
+
</deferred_reading>
|
|
29
|
+
|
|
25
30
|
<context>
|
|
31
|
+
$ARGUMENTS — none for interactive mode, or `-y` with `@file` reference for auto mode.
|
|
32
|
+
|
|
26
33
|
**Flags:**
|
|
27
|
-
|
|
28
|
-
|
|
34
|
+
|
|
35
|
+
| Flag | Effect | Default |
|
|
36
|
+
|------|--------|---------|
|
|
37
|
+
| `-y` / `--yes` | Automatic mode. After config questions, runs research without further interaction. Expects idea document via @ reference. | `false` |
|
|
38
|
+
| `--from <source>` | Load upstream context package (brainstorm:ID, @file, or path). Consumes context-package.json to pre-fill project vision, goals, constraints, and terminology. Skips interactive questioning. Alias: `--from-brainstorm` | — |
|
|
29
39
|
|
|
30
40
|
**Load project state if exists:**
|
|
31
41
|
Check for `.workflow/state.json` -- loads context if project already initialized.
|
|
32
42
|
</context>
|
|
33
43
|
|
|
44
|
+
<interview_protocol>
|
|
45
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
46
|
+
|
|
47
|
+
**Interaction mode**: convergent menu-driven
|
|
48
|
+
**Decision tree** (strict order): project type (greenfield / existing codebase onboarding) → tech stack detection and confirmation → directory structure preferences → initial configuration (specs categories, wiki bootstrap)
|
|
49
|
+
**Scope guard**: only init decisions; do not prejudge roadmap structure or plan scope
|
|
50
|
+
**Writeback target**: project.md (project description) + config.json (settings) + state.json (initial state)
|
|
51
|
+
**Additional skip conditions**: --from source (upstream context pre-fills decisions)
|
|
52
|
+
**Exit condition**: all configuration questions settled → proceed to workflow execution
|
|
53
|
+
</interview_protocol>
|
|
54
|
+
|
|
34
55
|
<execution>
|
|
56
|
+
### Pre-flight
|
|
57
|
+
|
|
58
|
+
1. Check if `.workflow/` already exists — if so, load state and warn (E002 for greenfield conflicts)
|
|
59
|
+
2. Validate `--from` source is accessible if provided
|
|
60
|
+
|
|
35
61
|
Follow '~/.maestro/workflows/init.md' completely.
|
|
62
|
+
</execution>
|
|
36
63
|
|
|
37
|
-
|
|
64
|
+
<completion>
|
|
65
|
+
### Standalone report
|
|
38
66
|
|
|
39
67
|
```
|
|
40
68
|
=== WORKFLOW INITIALIZED ===
|
|
@@ -46,17 +74,31 @@ Created:
|
|
|
46
74
|
.workflow/state.json
|
|
47
75
|
.workflow/config.json
|
|
48
76
|
.workflow/specs/
|
|
77
|
+
```
|
|
49
78
|
|
|
50
|
-
|
|
51
|
-
/maestro-roadmap <requirement> -- Direct interactive roadmap (light, default)
|
|
52
|
-
/maestro-roadmap --mode full <idea> -- Full spec package + roadmap (heavy)
|
|
79
|
+
### Ralph-invoked completion
|
|
53
80
|
|
|
54
|
-
|
|
55
|
-
/manage-status -- View project dashboard
|
|
56
|
-
/maestro-brainstorm <topic> -- Explore ideas first
|
|
57
|
-
/maestro-quick <task> -- Quick ad-hoc task
|
|
81
|
+
End the step by calling the CLI (no text block output):
|
|
58
82
|
```
|
|
59
|
-
|
|
83
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Status verdicts:
|
|
87
|
+
- **DONE** — Normal completion
|
|
88
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
89
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
90
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
91
|
+
|
|
92
|
+
### Next-step routing
|
|
93
|
+
|
|
94
|
+
| Condition | Suggestion |
|
|
95
|
+
|-----------|-----------|
|
|
96
|
+
| Roadmap needed (default light) | `/maestro-roadmap <requirement>` |
|
|
97
|
+
| Full spec package + roadmap | `/maestro-roadmap --mode full <idea>` |
|
|
98
|
+
| Explore ideas first | `/maestro-brainstorm <topic>` |
|
|
99
|
+
| View project dashboard | `/manage-status` |
|
|
100
|
+
| Quick ad-hoc task | `/maestro-quick <task>` |
|
|
101
|
+
</completion>
|
|
60
102
|
|
|
61
103
|
<error_codes>
|
|
62
104
|
| Code | Severity | Condition | Recovery |
|
|
@@ -68,11 +110,11 @@ Other commands:
|
|
|
68
110
|
</error_codes>
|
|
69
111
|
|
|
70
112
|
<success_criteria>
|
|
71
|
-
- [ ] Deep questioning completed (threads followed, not rushed) — or extracted from document/brainstorm
|
|
72
113
|
- [ ] `.workflow/project.md` created with Core Value, Requirements (Validated/Active/Out of Scope), Key Decisions
|
|
73
114
|
- [ ] `.workflow/state.json` created with artifacts[] array, initialized to idle state
|
|
74
115
|
- [ ] `.workflow/config.json` created with workflow / execution / git / gates / codebase / guard / collab / specInjection / dashboard segments
|
|
75
116
|
- [ ] `.workflow/specs/` initialized with convention files
|
|
76
|
-
- [ ]
|
|
77
|
-
- [ ]
|
|
117
|
+
- [ ] All interview decisions written to project.md / config.json before proceeding
|
|
118
|
+
- [ ] Research completed (if enabled) — parallel agents spawned with results merged
|
|
119
|
+
- [ ] Next-step routing displayed in completion report
|
|
78
120
|
</success_criteria>
|
|
@@ -21,6 +21,8 @@ Audit milestone completion using the artifact registry. Checks:
|
|
|
21
21
|
|
|
22
22
|
Data source: `state.json.artifacts[]` filtered by current milestone.
|
|
23
23
|
Produces audit report at `.workflow/milestones/{milestone}/audit-report.md`.
|
|
24
|
+
|
|
25
|
+
Pipeline position: downstream of maestro-verify (all phases verified), upstream of maestro-milestone-complete.
|
|
24
26
|
</purpose>
|
|
25
27
|
|
|
26
28
|
<required_reading>
|
|
@@ -38,19 +40,60 @@ Milestone: $ARGUMENTS (optional -- defaults to current_milestone from state.json
|
|
|
38
40
|
- Plan scratch dirs — for task status verification
|
|
39
41
|
|
|
40
42
|
**Adhoc milestone support (D-008):** When the target milestone has `type == "adhoc"` (or `type` field is missing, defaulting to `"standard"`), the audit skips roadmap.md parsing and phase coverage checks. It only validates artifact chain completeness (PLN→EXC exists) and runs integration checks.
|
|
43
|
+
|
|
44
|
+
### Pre-load
|
|
45
|
+
|
|
46
|
+
1. **Codebase docs**: IF `.workflow/codebase/doc-index.json` exists → Read ARCHITECTURE.md for integration checks
|
|
47
|
+
2. **Specs**: `maestro spec load --category review` — load review standards for audit
|
|
48
|
+
3. All optional — proceed without if unavailable
|
|
49
|
+
|
|
50
|
+
### Role Knowledge
|
|
51
|
+
|
|
52
|
+
1. Browse: `maestro wiki list --category review`
|
|
53
|
+
2. Select entries relevant to milestone integration audit
|
|
54
|
+
3. Load: `maestro wiki load <id1> [id2...]`
|
|
41
55
|
</context>
|
|
42
56
|
|
|
43
57
|
<execution>
|
|
44
58
|
Follow '~/.maestro/workflows/milestone-audit.md' completely.
|
|
45
59
|
|
|
46
60
|
Audit checklist steps (phase coverage, ad-hoc completeness, execution completeness, cross-artifact integration) are defined in workflow `milestone-audit.md`.
|
|
47
|
-
|
|
48
|
-
**Next-step routing on completion:**
|
|
49
|
-
- Verdict PASS → `/maestro-milestone-complete {milestone}`
|
|
50
|
-
- Verdict FAIL, integration gaps → `/maestro-plan --gaps`
|
|
51
|
-
- Verdict FAIL, incomplete execution → `/maestro-execute`
|
|
52
61
|
</execution>
|
|
53
62
|
|
|
63
|
+
<completion>
|
|
64
|
+
### Standalone report
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
=== MILESTONE AUDIT READY ===
|
|
68
|
+
Milestone: {milestone}
|
|
69
|
+
Verdict: {PASS|FAIL}
|
|
70
|
+
Phases audited: {N}
|
|
71
|
+
Integration gaps: {N}
|
|
72
|
+
Report: .workflow/milestones/{milestone}/audit-report.md
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Ralph-invoked completion
|
|
76
|
+
|
|
77
|
+
End the step by calling the CLI (no text block output):
|
|
78
|
+
```
|
|
79
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence .workflow/milestones/{milestone}/audit-report.md]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Status verdicts:
|
|
83
|
+
- **DONE** — Audit passed, no gaps found
|
|
84
|
+
- **DONE_WITH_CONCERNS** — Audit passed with minor caveats; pass `--concerns`
|
|
85
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
86
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
87
|
+
|
|
88
|
+
### Next-step routing
|
|
89
|
+
|
|
90
|
+
| Condition | Suggestion |
|
|
91
|
+
|-----------|-----------|
|
|
92
|
+
| Verdict PASS | `/maestro-milestone-complete {milestone}` |
|
|
93
|
+
| Verdict FAIL, integration gaps | `/maestro-plan --gaps` |
|
|
94
|
+
| Verdict FAIL, incomplete execution | `/maestro-execute` |
|
|
95
|
+
</completion>
|
|
96
|
+
|
|
54
97
|
<error_codes>
|
|
55
98
|
| Code | Severity | Condition | Recovery |
|
|
56
99
|
|------|----------|-----------|----------|
|
|
@@ -13,13 +13,23 @@ allowed-tools:
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<purpose>
|
|
16
|
-
Mark a milestone as complete after its audit has passed.
|
|
16
|
+
Mark a milestone as complete after its audit has passed. Performs 6-step archival:
|
|
17
|
+
validation → directory archival → artifact history → knowhow extraction → state advancement → cleanup.
|
|
18
|
+
|
|
19
|
+
Produces `milestones/{M}/artifacts/` archive and `specs/learnings.md` knowhow entries.
|
|
20
|
+
Supports two milestone types: standard (advances to next milestone) and adhoc (self-contained, sets idle).
|
|
21
|
+
|
|
22
|
+
Pipeline position: downstream of `maestro-milestone-audit` (requires PASS verdict). Upstream of `maestro-milestone-release` (cut a release) or next milestone planning (`maestro-analyze` / `maestro-plan`).
|
|
17
23
|
</purpose>
|
|
18
24
|
|
|
19
25
|
<required_reading>
|
|
20
26
|
@~/.maestro/workflows/milestone-complete.md
|
|
21
27
|
</required_reading>
|
|
22
28
|
|
|
29
|
+
<deferred_reading>
|
|
30
|
+
- [state.json](~/.maestro/templates/state.json) — read when updating milestone_history and advancing state
|
|
31
|
+
</deferred_reading>
|
|
32
|
+
|
|
23
33
|
<context>
|
|
24
34
|
Milestone: $ARGUMENTS (optional -- defaults to current_milestone from state.json).
|
|
25
35
|
|
|
@@ -50,20 +60,52 @@ After knowhow extraction (step 4), scan `learnings.md` for promotion candidates:
|
|
|
50
60
|
|
|
51
61
|
If user confirms promotion, invoke `Skill({ skill: "spec-add", args: "<category> <content>" })` with promoted content, preserving original date and source traceability.
|
|
52
62
|
|
|
53
|
-
**Next-step routing on completion:**
|
|
54
|
-
- Cut a release → `/maestro-milestone-release`
|
|
55
|
-
- Next milestone → `/maestro-analyze` or `/maestro-plan 1` (standard milestones only)
|
|
56
|
-
- View state → `/manage-status`
|
|
57
|
-
|
|
58
63
|
**Adhoc milestone (D-008):** When completing an adhoc milestone, skip roadmap snapshot and do not advance to next milestone. Set `current_milestone = null`, `status = "idle"`. Adhoc milestones are self-contained — no successor in roadmap chain.
|
|
59
64
|
</execution>
|
|
60
65
|
|
|
66
|
+
<completion>
|
|
67
|
+
### Standalone report
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
=== MILESTONE COMPLETE ===
|
|
71
|
+
Milestone: {milestone_id}
|
|
72
|
+
Status: ARCHIVED
|
|
73
|
+
Artifacts archived: {count}
|
|
74
|
+
Knowhow extracted: {count} entries
|
|
75
|
+
Next milestone: {next_id | "none (adhoc)"}
|
|
76
|
+
==============================
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Ralph-invoked completion
|
|
80
|
+
|
|
81
|
+
End the step by calling the CLI (no text block output):
|
|
82
|
+
```
|
|
83
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Status verdicts:
|
|
87
|
+
- **DONE** — Normal completion
|
|
88
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
89
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
90
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
91
|
+
|
|
92
|
+
### Next-step routing
|
|
93
|
+
|
|
94
|
+
| Condition | Suggestion |
|
|
95
|
+
|-----------|-----------|
|
|
96
|
+
| Cut a release | `/maestro-milestone-release` |
|
|
97
|
+
| Next milestone (standard) | `/maestro-analyze` or `/maestro-plan 1` |
|
|
98
|
+
| View state | `/manage-status` |
|
|
99
|
+
</completion>
|
|
100
|
+
|
|
61
101
|
<error_codes>
|
|
62
102
|
| Code | Severity | Condition | Recovery |
|
|
63
103
|
|------|----------|-----------|----------|
|
|
64
104
|
| E001 | error | Milestone identifier required | Check arguments |
|
|
65
105
|
| E002 | error | Audit not passed | Run maestro-milestone-audit first |
|
|
66
106
|
| E003 | error | Incomplete artifacts remain | Complete remaining work first |
|
|
107
|
+
| W001 | warning | Knowhow extraction produced 0 entries | Review milestone work for missed learnings |
|
|
108
|
+
| W002 | warning | Wiki-connect found unlinked knowledge islands | Run `/manage-wiki --fix` manually |
|
|
67
109
|
</error_codes>
|
|
68
110
|
|
|
69
111
|
<success_criteria>
|
|
@@ -15,6 +15,8 @@ allowed-tools:
|
|
|
15
15
|
|
|
16
16
|
<purpose>
|
|
17
17
|
Package a completed milestone into a releasable version. Bumps the project version (e.g. `package.json`, `pyproject.toml`, or language-specific manifest), generates or appends a changelog entry from phase/milestone summaries and git log, creates an annotated git tag, and optionally pushes to the remote. Runs after `/maestro-milestone-complete` has archived the milestone; serves as the final delivery step in the SDLC loop.
|
|
18
|
+
|
|
19
|
+
Pipeline position: downstream of `/maestro-milestone-complete` (consumes archived milestone + audit verdict). Terminal command — no downstream consumer.
|
|
18
20
|
</purpose>
|
|
19
21
|
|
|
20
22
|
<required_reading>
|
|
@@ -25,11 +27,14 @@ Package a completed milestone into a releasable version. Bumps the project versi
|
|
|
25
27
|
$ARGUMENTS -- optional explicit version string and flags.
|
|
26
28
|
|
|
27
29
|
**Flags:**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
|
|
31
|
+
| Flag | Effect | Default |
|
|
32
|
+
|------|--------|---------|
|
|
33
|
+
| `<version>` | Explicit version (e.g. `1.2.0`). If omitted, version is derived from `--bump` or prompted | — |
|
|
34
|
+
| `--bump patch\|minor\|major` | Semver bump relative to the current version | `minor` |
|
|
35
|
+
| `--dry-run` | Compute the next version, changelog diff, and tag name without writing files or creating tags | `false` |
|
|
36
|
+
| `--no-tag` | Skip git tag creation (version bump + changelog only) | `false` |
|
|
37
|
+
| `--no-push` | Skip `git push --follow-tags` after tagging | `false` |
|
|
33
38
|
|
|
34
39
|
**State files:**
|
|
35
40
|
- `.workflow/state.json` -- current_milestone, previous release version
|
|
@@ -43,6 +48,13 @@ $ARGUMENTS -- optional explicit version string and flags.
|
|
|
43
48
|
- Working tree must be clean (no uncommitted changes) unless `--dry-run`
|
|
44
49
|
</context>
|
|
45
50
|
|
|
51
|
+
<interview_protocol>
|
|
52
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
53
|
+
|
|
54
|
+
**Decision points**: version bump type (major / minor / patch / custom), changelog review and confirmation
|
|
55
|
+
**Scope guard**: only release decisions; do not prejudge next milestone scope
|
|
56
|
+
</interview_protocol>
|
|
57
|
+
|
|
46
58
|
<execution>
|
|
47
59
|
Follow '~/.maestro/workflows/milestone-release.md' completely.
|
|
48
60
|
|
|
@@ -55,7 +67,12 @@ Follow '~/.maestro/workflows/milestone-release.md' completely.
|
|
|
55
67
|
6. Create annotated git tag `v{version}` with release notes body (unless `--no-tag`)
|
|
56
68
|
7. Push commit + tag to remote (unless `--no-push`)
|
|
57
69
|
|
|
58
|
-
|
|
70
|
+
For `--dry-run`, print the computed version, changelog diff, and tag name without side effects.
|
|
71
|
+
</execution>
|
|
72
|
+
|
|
73
|
+
<completion>
|
|
74
|
+
### Standalone report
|
|
75
|
+
|
|
59
76
|
```
|
|
60
77
|
=== RELEASE COMPLETE ===
|
|
61
78
|
Version: v{previous} → v{new}
|
|
@@ -63,14 +80,28 @@ Milestone: {milestone_name}
|
|
|
63
80
|
Tag: v{new} {pushed|local-only}
|
|
64
81
|
Changelog: {N} entries written to CHANGELOG.md
|
|
65
82
|
Manifest: {file_path} updated
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Ralph-invoked completion
|
|
66
86
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
87
|
+
End the step by calling the CLI (no text block output):
|
|
88
|
+
```
|
|
89
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
70
90
|
```
|
|
71
91
|
|
|
72
|
-
|
|
73
|
-
|
|
92
|
+
Status verdicts:
|
|
93
|
+
- **DONE** — Normal completion
|
|
94
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
95
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
96
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
97
|
+
|
|
98
|
+
### Next-step routing
|
|
99
|
+
|
|
100
|
+
| Condition | Suggestion |
|
|
101
|
+
|-----------|-----------|
|
|
102
|
+
| Release successful, starting next milestone | `/maestro-plan {next_phase}` |
|
|
103
|
+
| Want to view project dashboard | `/manage-status` |
|
|
104
|
+
</completion>
|
|
74
105
|
|
|
75
106
|
<error_codes>
|
|
76
107
|
| Code | Severity | Condition | Recovery |
|
|
@@ -120,7 +120,13 @@ For each created TASK-{NNN}.json that has issue_id:
|
|
|
120
120
|
|
|
121
121
|
This ensures issue → TASK traceability. The `task_refs[]` and `task_plan_dir` fields on the issue allow the dashboard to resolve and display associated TASK details.
|
|
122
122
|
|
|
123
|
-
|
|
123
|
+
### Mode: Revise / Check
|
|
124
|
+
|
|
125
|
+
Follow workflow plan.md § "Revise Mode" and § "Check Mode" respectively. These modes bypass the standard P1-P5 create pipeline.
|
|
126
|
+
</execution>
|
|
127
|
+
|
|
128
|
+
<completion>
|
|
129
|
+
### Standalone report
|
|
124
130
|
|
|
125
131
|
```
|
|
126
132
|
=== PLAN READY ===
|
|
@@ -131,20 +137,16 @@ Collision: {collision_status}
|
|
|
131
137
|
|
|
132
138
|
Plan: scratch/{YYYYMMDD}-plan-P{N}-{slug}/plan.json
|
|
133
139
|
Tasks: scratch/{YYYYMMDD}-plan-P{N}-{slug}/.task/TASK-*.json
|
|
134
|
-
|
|
135
|
-
Next steps:
|
|
136
|
-
/maestro-execute -- Execute the plan
|
|
137
|
-
/maestro-execute --dir {dir} -- Execute specific plan
|
|
138
|
-
/maestro-plan {phase} -- Re-plan with modifications
|
|
139
140
|
```
|
|
140
141
|
|
|
141
|
-
|
|
142
|
-
|
|
142
|
+
### Ralph-invoked completion
|
|
143
|
+
|
|
144
|
+
End the step by calling the CLI (no text block output):
|
|
143
145
|
```
|
|
144
|
-
maestro ralph complete <idx> --status
|
|
146
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence scratch/{YYYYMMDD}-plan-P{N}-{slug}/plan.json]
|
|
145
147
|
```
|
|
146
148
|
|
|
147
|
-
|
|
149
|
+
Status verdicts:
|
|
148
150
|
- **DONE** — Plan created/revised and confirmed → next step picks up automatically
|
|
149
151
|
- **DONE_WITH_CONCERNS** — Plan produced but with explicit caveats; pass `--concerns "..."`
|
|
150
152
|
- **NEEDS_RETRY** — Plan failed (tooling error, transient issue); ralph will retry
|
|
@@ -152,10 +154,14 @@ STATUS verdicts (CLI-enforced enum):
|
|
|
152
154
|
|
|
153
155
|
> Ambiguous requirements are NOT a completion status — resolve them in-place via `AskUserQuestion` during planning (≤3 rounds), then proceed to DONE. `NEEDS_CONTEXT` has been removed; context shortage is handled by the harness's automatic compaction.
|
|
154
156
|
|
|
155
|
-
###
|
|
157
|
+
### Next-step routing
|
|
156
158
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
+
| Condition | Suggestion |
|
|
160
|
+
|-----------|-----------|
|
|
161
|
+
| Plan confirmed for execution | `/maestro-execute` |
|
|
162
|
+
| Plan confirmed, specific directory | `/maestro-execute --dir {dir}` |
|
|
163
|
+
| Re-plan with modifications | `/maestro-plan {phase}` |
|
|
164
|
+
</completion>
|
|
159
165
|
|
|
160
166
|
<error_codes>
|
|
161
167
|
| Code | Severity | Condition | Recovery |
|
|
@@ -36,13 +36,16 @@ For formal specification documents (Product Brief, PRD, Architecture, Epics), us
|
|
|
36
36
|
$ARGUMENTS -- requirement text, @file reference, or upstream context source.
|
|
37
37
|
|
|
38
38
|
**Flags:**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
39
|
+
|
|
40
|
+
| Flag | Effect | Default |
|
|
41
|
+
|------|--------|---------|
|
|
42
|
+
| `-y` / `--yes` | Auto mode — skip interactive questions, use recommended defaults | false |
|
|
43
|
+
| `-c` / `--continue` | Resume from last checkpoint | false |
|
|
44
|
+
| `-m progressive\|direct\|auto` | Decomposition strategy | auto |
|
|
45
|
+
| `--from <source>` | Load upstream context package (brainstorm:ID, blueprint:BLP-xxx, analyze:ANL-xxx, @file, or path). Consumes context-package.json | — |
|
|
46
|
+
| `--from-brainstorm SESSION-ID` | Backward compat alias for `--from brainstorm:ID` | — |
|
|
47
|
+
| `--revise [instructions]` | Revise existing roadmap. If instructions provided, apply directly. If omitted, ask user. Preserves completed phase progress. | — |
|
|
48
|
+
| `--review` | Roadmap health assessment (read-only) | — |
|
|
46
49
|
|
|
47
50
|
**Input types:**
|
|
48
51
|
- Direct text: `"Implement user authentication system with OAuth and 2FA"`
|
|
@@ -61,24 +64,22 @@ maestro-roadmap → .workflow/roadmap.md (Milestone > Phase hierarchy)
|
|
|
61
64
|
maestro-analyze {phase} → maestro-plan → maestro-execute → maestro-verify
|
|
62
65
|
```
|
|
63
66
|
|
|
64
|
-
### Pre-load
|
|
65
|
-
|
|
66
|
-
|
|
67
|
+
### Pre-load
|
|
68
|
+
|
|
69
|
+
1. **Specs**: `maestro spec load --category arch` — load architecture constraints for phase decomposition
|
|
70
|
+
2. **Wiki search**: `maestro wiki search "{requirement keywords}" --json` → prior knowledge
|
|
71
|
+
3. All optional — proceed without if unavailable
|
|
67
72
|
</context>
|
|
68
73
|
|
|
69
74
|
<interview_protocol>
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
Decision points: scope (MVP / complete / phased) → strategy (progressive / direct / auto) → milestone boundaries → phase dependencies and order.
|
|
79
|
-
|
|
80
|
-
Exit: on consensus or explicit user signal to proceed, finalize the `Roadmap Decisions` section (rows already populated incrementally). Schema:
|
|
81
|
-
`| # | Decision | Choice | Source (user / code / default) |`
|
|
75
|
+
Follows @~/.maestro/workflows/interview-mechanics.md standard.
|
|
76
|
+
|
|
77
|
+
**Interaction mode**: convergent menu-driven
|
|
78
|
+
**Decision tree** (strict order): mode (create / revise / review) → requirement scope (MVP / complete / phased) → decomposition strategy (progressive / direct / auto) → milestone boundaries → phase dependencies and order
|
|
79
|
+
**Scope guard**: only roadmap shape; do not pre-resolve intra-phase task breakdown (belongs to plan)
|
|
80
|
+
**Writeback target**: .workflow/roadmap.md "Roadmap Decisions" section (create if absent)
|
|
81
|
+
**Additional skip conditions**: --revise, --review (skip to respective mode)
|
|
82
|
+
**Exit condition**: on consensus or explicit user signal → finalize Roadmap Decisions section
|
|
82
83
|
</interview_protocol>
|
|
83
84
|
|
|
84
85
|
<execution>
|
|
@@ -91,16 +92,45 @@ Sub-modes:
|
|
|
91
92
|
- **Revise** (`--revise`): Follow workflow roadmap.md "Mode: Revise" section
|
|
92
93
|
- **Review** (`--review`): Follow workflow roadmap.md "Mode: Review" section
|
|
93
94
|
|
|
94
|
-
|
|
95
|
+
</execution>
|
|
96
|
+
|
|
97
|
+
<completion>
|
|
98
|
+
### Standalone report
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
=== ROADMAP READY ===
|
|
102
|
+
Milestones: {count}
|
|
103
|
+
Phases: {total_phases}
|
|
104
|
+
Strategy: {progressive|direct|auto}
|
|
105
|
+
Output: .workflow/roadmap.md
|
|
106
|
+
--- COMPLETION STATUS ---
|
|
107
|
+
Status: {DONE|DONE_WITH_CONCERNS}
|
|
108
|
+
Concerns: {if any}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Ralph-invoked completion
|
|
112
|
+
|
|
113
|
+
End the step by calling the CLI (no text block output):
|
|
114
|
+
```
|
|
115
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Status verdicts:
|
|
119
|
+
- **DONE** — Normal completion
|
|
120
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
121
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
122
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
123
|
+
|
|
124
|
+
### Next-step routing
|
|
95
125
|
|
|
96
126
|
| Condition | Suggestion |
|
|
97
127
|
|-----------|-----------|
|
|
98
|
-
| Roadmap approved, need analysis |
|
|
99
|
-
| Simple project, ready to plan |
|
|
100
|
-
| Need UI design first |
|
|
101
|
-
| View project dashboard |
|
|
102
|
-
| Need formal spec documents |
|
|
103
|
-
</
|
|
128
|
+
| Roadmap approved, need analysis | `/maestro-analyze 1` |
|
|
129
|
+
| Simple project, ready to plan | `/maestro-plan 1` |
|
|
130
|
+
| Need UI design first | `/maestro-impeccable build` |
|
|
131
|
+
| View project dashboard | `/manage-status` |
|
|
132
|
+
| Need formal spec documents | `/maestro-blueprint` |
|
|
133
|
+
</completion>
|
|
104
134
|
|
|
105
135
|
<error_codes>
|
|
106
136
|
| Code | Severity | Condition | Recovery |
|
|
@@ -37,7 +37,22 @@ Registers VRF artifact in state.json on completion.
|
|
|
37
37
|
<context>
|
|
38
38
|
$ARGUMENTS — phase number or no args for milestone-wide, with optional flags.
|
|
39
39
|
|
|
40
|
-
Flags
|
|
40
|
+
### Flags
|
|
41
|
+
|
|
42
|
+
| Flag | Effect | Default |
|
|
43
|
+
|------|--------|---------|
|
|
44
|
+
| `--skip-tests` | Skip Nyquist test coverage validation (V2), only run Goal-Backward verification | false |
|
|
45
|
+
| `--skip-antipattern` | Skip anti-pattern scan step | false |
|
|
46
|
+
| `--dir <path>` | Verify a single plan directory instead of milestone-wide | — (milestone mode) |
|
|
47
|
+
|
|
48
|
+
**Scope routing:**
|
|
49
|
+
| Input | Scope | Resolution |
|
|
50
|
+
|-------|-------|------------|
|
|
51
|
+
| `--dir scratch/{dir}` | single plan | Verify one plan, write verification.json into plan dir |
|
|
52
|
+
| numeric arg | phase | Verify all execute artifacts for that phase |
|
|
53
|
+
| no args | milestone | Aggregate all execute artifacts for current milestone |
|
|
54
|
+
|
|
55
|
+
Output paths and VRF artifact registration schema are defined in workflow `verify.md`.
|
|
41
56
|
|
|
42
57
|
### Pre-load context (before verification)
|
|
43
58
|
|
|
@@ -63,28 +78,48 @@ Follow '~/.maestro/workflows/verify.md' completely.
|
|
|
63
78
|
|
|
64
79
|
On confirm → `Skill("spec-add", "<category> <content>")`.
|
|
65
80
|
|
|
66
|
-
|
|
67
|
-
- All checks pass, no gaps → /quality-review
|
|
68
|
-
- Gaps found (must-have failures or anti-pattern blockers) → /maestro-plan --gaps
|
|
69
|
-
- Low test coverage (Nyquist gaps) → /quality-auto-test
|
|
81
|
+
</execution>
|
|
70
82
|
|
|
71
|
-
|
|
72
|
-
|
|
83
|
+
<completion>
|
|
84
|
+
### Standalone report
|
|
73
85
|
|
|
74
|
-
**Completion status:**
|
|
75
86
|
```
|
|
76
|
-
|
|
87
|
+
=== VERIFY COMPLETE ===
|
|
77
88
|
STATUS: DONE|DONE_WITH_CONCERNS|NEEDS_RETRY
|
|
78
89
|
CONCERNS: {description if applicable}
|
|
79
90
|
NEXT: /quality-review
|
|
80
|
-
|
|
91
|
+
=== END VERIFY ===
|
|
81
92
|
```
|
|
82
93
|
|
|
83
94
|
Status mapping:
|
|
84
95
|
- **DONE** — All checks pass, no gaps → NEXT: /quality-review
|
|
85
96
|
- **DONE_WITH_CONCERNS** — Gaps found (must-have failures or anti-pattern blockers) → NEXT: /maestro-execute (after /maestro-plan --gaps)
|
|
86
97
|
- **NEEDS_RETRY** — Verification could not complete (missing artifacts, corrupt data)
|
|
87
|
-
|
|
98
|
+
|
|
99
|
+
### Ralph-invoked completion
|
|
100
|
+
|
|
101
|
+
End the step by calling the CLI (no text block output):
|
|
102
|
+
```
|
|
103
|
+
maestro ralph complete <idx> --status {STATUS} [--evidence {path}]
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Status verdicts:
|
|
107
|
+
- **DONE** — Normal completion
|
|
108
|
+
- **DONE_WITH_CONCERNS** — Completed with caveats; pass `--concerns`
|
|
109
|
+
- **NEEDS_RETRY** — Tooling error / transient issue; ralph will retry
|
|
110
|
+
- **BLOCKED** — External hard blocker; pass `--reason`
|
|
111
|
+
|
|
112
|
+
### Next-step routing
|
|
113
|
+
|
|
114
|
+
| Condition | Suggestion |
|
|
115
|
+
|-----------|-----------|
|
|
116
|
+
| All checks pass, no gaps | `/quality-review` |
|
|
117
|
+
| Gaps found (must-have failures or anti-pattern blockers) | `/maestro-plan --gaps` |
|
|
118
|
+
| Low test coverage (Nyquist gaps) | `/quality-auto-test` |
|
|
119
|
+
|
|
120
|
+
**Gap-fix closure loop:**
|
|
121
|
+
Gaps found → maestro-plan --gaps → maestro-execute → maestro-verify (re-run)
|
|
122
|
+
</completion>
|
|
88
123
|
|
|
89
124
|
<error_codes>
|
|
90
125
|
| Code | Severity | Condition | Recovery |
|
|
Binary file
|