@zeyue0329/xiaoma-cli 1.8.3 → 1.9.0
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/package.json +1 -1
- package/src/xmc/agents/sm.agent.yaml +4 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-01-init-and-validate.md +13 -5
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/SKILL.md +6 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/checklist.md +37 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-01-init-and-validate.md +152 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-02-run-requirements-pipeline.md +120 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-03-bridge-sprint-planning.md +119 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-04-run-story-pipeline.md +125 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-05-finalize.md +194 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/workflow.md +110 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/xiaoma-skill-manifest.yaml +3 -0
package/package.json
CHANGED
|
@@ -39,3 +39,7 @@ agent:
|
|
|
39
39
|
- trigger: ASP or fuzzy match on auto-story
|
|
40
40
|
exec: "skill:auto-story-pipeline"
|
|
41
41
|
description: "[ASP] Auto Story Pipeline: End-to-end automated story development — from story creation through dev, code review, and testing"
|
|
42
|
+
|
|
43
|
+
- trigger: AFP or fuzzy match on auto-full
|
|
44
|
+
exec: "skill:auto-full-pipeline"
|
|
45
|
+
description: "[AFP] Auto Full Pipeline: End-to-end automated requirements-to-delivery — from requirements analysis through PRD, epics, architecture, sprint planning, and story development"
|
package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-01-init-and-validate.md
CHANGED
|
@@ -18,12 +18,19 @@ nextStepFile: "./step-02-create-story.md"
|
|
|
18
18
|
|
|
19
19
|
Check that the following required artifacts exist:
|
|
20
20
|
|
|
21
|
-
1. **
|
|
22
|
-
- If missing: HALT — "No sprint-status.yaml found. Run `sprint-planning` (SP) first to initialize sprint tracking."
|
|
23
|
-
|
|
24
|
-
2. **Epics File** — `{planning_artifacts}/*epic*.md` must exist
|
|
21
|
+
1. **Epics File** — `{planning_artifacts}/*epic*.md` must exist
|
|
25
22
|
- If missing: HALT — "No epics file found. Run the planning workflow first to create epics."
|
|
26
23
|
|
|
24
|
+
2. **Sprint Status File** — `{sprint_status}` must exist
|
|
25
|
+
- If missing:
|
|
26
|
+
a. Output INFO — "sprint-status.yaml not found. Auto-generating via Sprint Planning..."
|
|
27
|
+
b. Verify epics file exists (checked in step 1 above) — if epics are present, proceed with auto-generation
|
|
28
|
+
c. Read and follow the sprint-planning workflow: `{project-root}/_xiaoma/xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md`
|
|
29
|
+
d. Execute the sprint-planning workflow fully — it will parse epics, detect story statuses, and generate `{sprint_status}`
|
|
30
|
+
e. After sprint-planning completes, verify `{sprint_status}` now exists
|
|
31
|
+
f. If `{sprint_status}` still does not exist after auto-generation attempt: HALT — "Failed to auto-generate sprint-status.yaml. Check that epics are correctly formatted and try running Sprint Planning (SP) manually: /xiaoma-sprint-planning"
|
|
32
|
+
g. Output INFO — "sprint-status.yaml auto-generated successfully. Continuing pipeline..."
|
|
33
|
+
|
|
27
34
|
3. **Planning Artifacts** — At least one of `{planning_artifacts}/*prd*.md` or `{planning_artifacts}/*architecture*.md` should exist
|
|
28
35
|
- If missing: Output warning but continue — "Planning documents not found. Story creation may have limited context."
|
|
29
36
|
|
|
@@ -163,6 +170,7 @@ Based on the starting step determined in section 5 above, proceed to the correct
|
|
|
163
170
|
|
|
164
171
|
## FAILURE MODES
|
|
165
172
|
|
|
166
|
-
- Proceeding without sprint-status.yaml
|
|
173
|
+
- Proceeding without sprint-status.yaml AND without auto-generating it
|
|
174
|
+
- Auto-generation of sprint-status.yaml fails silently without HALT
|
|
167
175
|
- Not initializing state variables
|
|
168
176
|
- Starting batch mode with no backlog stories
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: xiaoma-auto-full-pipeline
|
|
3
|
+
description: "Fully automated requirements-to-delivery pipeline: requirements analysis → PRD → validation → epics → architecture → sprint planning → story development → code review → testing → done. Use when the user says 'run full pipeline', 'auto full', 'end to end', or 'AFP'"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Follow the instructions in [workflow.md](workflow.md).
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Auto Full Pipeline Completion Checklist
|
|
2
|
+
|
|
3
|
+
Use this checklist to validate the full requirements-to-delivery pipeline completed successfully.
|
|
4
|
+
|
|
5
|
+
## Phase 1 — Requirements Analysis Validation
|
|
6
|
+
|
|
7
|
+
- [ ] **Requirements Analysis** — `requirements-analysis.md` exists and contains structured analysis
|
|
8
|
+
- [ ] **Architecture Analysis** — `current-architecture-analysis.md` exists with technology stack and patterns
|
|
9
|
+
- [ ] **PRD Created** — `prd.md` exists with problem statement, goals, features, and requirements
|
|
10
|
+
- [ ] **PRD Validated** — PRD passed validation (all critical blockers resolved)
|
|
11
|
+
- [ ] **Epics Created** — `epics.md` exists with epic/story breakdown and acceptance criteria
|
|
12
|
+
- [ ] **Architecture Designed** — `architecture.md` exists with technical design for new features
|
|
13
|
+
- [ ] **Requirements Pipeline Status** — `pipeline-status.json` shows status "complete"
|
|
14
|
+
|
|
15
|
+
## Phase 2 — Sprint Planning Validation
|
|
16
|
+
|
|
17
|
+
- [ ] **Sprint Status Generated** — `sprint-status.yaml` exists with valid YAML
|
|
18
|
+
- [ ] **All Epics Represented** — Every epic from `epics.md` appears in sprint status
|
|
19
|
+
- [ ] **All Stories Represented** — Every story from `epics.md` appears in sprint status
|
|
20
|
+
- [ ] **Retrospective Entries** — Each epic has a corresponding retrospective entry
|
|
21
|
+
|
|
22
|
+
## Phase 3 — Story Development Validation
|
|
23
|
+
|
|
24
|
+
- [ ] **All Stories Processed** — Every backlog story has been processed through the pipeline
|
|
25
|
+
- [ ] **Stories Completed** — All story statuses set to "done" in sprint-status.yaml
|
|
26
|
+
- [ ] **Epics Completed** — All epics with every story "done" marked as "done"
|
|
27
|
+
- [ ] **No Orphaned States** — No stories stuck in intermediate states (in-progress, review)
|
|
28
|
+
- [ ] **Fix Iterations Within Limits** — No story exceeded `{max_fix_iterations}` fix iterations
|
|
29
|
+
- [ ] **Tests Passing** — All unit, integration, and E2E tests pass
|
|
30
|
+
|
|
31
|
+
## Pipeline-Level Validation
|
|
32
|
+
|
|
33
|
+
- [ ] **All 5 Master Steps Executed** — Steps 1-5 completed successfully
|
|
34
|
+
- [ ] **No Unhandled HALT Conditions** — All halts properly reported with context
|
|
35
|
+
- [ ] **Unified Completion Report Generated** — Final summary output with all phase statuses
|
|
36
|
+
- [ ] **Machine-Readable Status** — `{implementation_artifacts}/full-pipeline-status.json` generated with accurate data
|
|
37
|
+
- [ ] **Artifact Consistency** — Sprint status entries match story files on disk
|
package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-01-init-and-validate.md
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-01-init-and-validate"
|
|
3
|
+
description: "Validate unified environment prerequisites, initialize master pipeline state variables, and prepare for end-to-end execution"
|
|
4
|
+
nextStepFile: "./step-02-run-requirements-pipeline.md"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 1 of 5: Initialize and Validate Environment
|
|
8
|
+
|
|
9
|
+
**Goal:** Verify all prerequisites for the full requirements-to-delivery pipeline are met, initialize master pipeline state variables, and confirm that both sub-pipelines are accessible.
|
|
10
|
+
|
|
11
|
+
**Role:** Master Pipeline Orchestrator
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Load Configuration
|
|
18
|
+
|
|
19
|
+
Read config from `{project-root}/_xiaoma/xmc/config.yaml` and resolve:
|
|
20
|
+
|
|
21
|
+
- `project_name`, `user_name`
|
|
22
|
+
- `communication_language`, `document_output_language`
|
|
23
|
+
- `user_skill_level`
|
|
24
|
+
- `planning_artifacts`, `implementation_artifacts`
|
|
25
|
+
- `max_fix_iterations` (default: 5 if not set)
|
|
26
|
+
- `date` as system-generated current datetime
|
|
27
|
+
|
|
28
|
+
**HALT if config not found:** "XiaoMa config not found at `{project-root}/_xiaoma/xmc/config.yaml`. Run `npx @zeyue0329/xiaoma-cli install` first."
|
|
29
|
+
|
|
30
|
+
### 2. Validate Prerequisites
|
|
31
|
+
|
|
32
|
+
Check that the following required artifacts and workflows exist:
|
|
33
|
+
|
|
34
|
+
1. **Requirements Document** — `{planning_artifacts}/req.md` must exist
|
|
35
|
+
- If missing: HALT — "No requirements document found at `{planning_artifacts}/req.md`. Create a requirements document before running the full pipeline."
|
|
36
|
+
|
|
37
|
+
2. **Auto Requirements Pipeline** — `{project-root}/_xiaoma/xmc/workflows/1-analysis/auto-requirements-pipeline/workflow.md` must be readable
|
|
38
|
+
- If missing: HALT — "Auto Requirements Pipeline workflow not found. Verify XiaoMa installation is complete."
|
|
39
|
+
|
|
40
|
+
3. **Sprint Planning Workflow** — `{project-root}/_xiaoma/xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md` must be readable
|
|
41
|
+
- If missing: HALT — "Sprint Planning workflow not found. Verify XiaoMa installation is complete."
|
|
42
|
+
|
|
43
|
+
4. **Auto Story Pipeline** — `{project-root}/_xiaoma/xmc/workflows/4-implementation/auto-story-pipeline/workflow.md` must be readable
|
|
44
|
+
- If missing: HALT — "Auto Story Pipeline workflow not found. Verify XiaoMa installation is complete."
|
|
45
|
+
|
|
46
|
+
5. **Source Directory** — `src/` directory should exist (warning only if missing)
|
|
47
|
+
- If missing: Output WARNING — "No `src/` directory found. Architecture analysis may be limited."
|
|
48
|
+
|
|
49
|
+
### 3. Check Existing Artifacts
|
|
50
|
+
|
|
51
|
+
Scan for pre-existing output artifacts from prior runs:
|
|
52
|
+
|
|
53
|
+
- `{planning_artifacts}/requirements-analysis.md`
|
|
54
|
+
- `{planning_artifacts}/current-architecture-analysis.md`
|
|
55
|
+
- `{planning_artifacts}/prd.md`
|
|
56
|
+
- `{planning_artifacts}/epics.md`
|
|
57
|
+
- `{planning_artifacts}/architecture.md`
|
|
58
|
+
- `{planning_artifacts}/pipeline-status.json`
|
|
59
|
+
- `{implementation_artifacts}/sprint-status.yaml`
|
|
60
|
+
|
|
61
|
+
If any exist, log INFO — "Pre-existing artifact found: {filename}. Will be overwritten during pipeline execution."
|
|
62
|
+
|
|
63
|
+
### 4. Detect Resume Mode
|
|
64
|
+
|
|
65
|
+
Check if a prior pipeline run left completed phases that can be skipped:
|
|
66
|
+
|
|
67
|
+
**Resume Conditions:**
|
|
68
|
+
|
|
69
|
+
1. **Phase 1 resumable** — ALL of these exist: `{planning_artifacts}/prd.md`, `{planning_artifacts}/epics.md`, `{planning_artifacts}/architecture.md`, AND `{planning_artifacts}/pipeline-status.json` contains `"status": "complete"`
|
|
70
|
+
2. **Phase 2 resumable** — Phase 1 resumable AND `{implementation_artifacts}/sprint-status.yaml` exists with valid YAML containing at least one story entry
|
|
71
|
+
|
|
72
|
+
**Resume Logic:**
|
|
73
|
+
|
|
74
|
+
- If Phase 1 AND Phase 2 are resumable:
|
|
75
|
+
- Set `{phase_1_status}` = "success (resumed)", `{phase_2_status}` = "success (resumed)"
|
|
76
|
+
- Set `{resume_from_step}` = 4 (skip to Step-04 Story Development)
|
|
77
|
+
- Output: "🔄 Resume mode detected — Phase 1 and Phase 2 artifacts found from prior run. Skipping to Phase 3 (Story Development)."
|
|
78
|
+
- If Phase 1 only is resumable:
|
|
79
|
+
- Set `{phase_1_status}` = "success (resumed)"
|
|
80
|
+
- Set `{resume_from_step}` = 3 (skip to Step-03 Sprint Planning Bridge)
|
|
81
|
+
- Output: "🔄 Resume mode detected — Phase 1 artifacts found from prior run. Skipping to Phase 2 (Sprint Planning Bridge)."
|
|
82
|
+
- Otherwise:
|
|
83
|
+
- Set `{resume_from_step}` = 2 (normal — start from Step-02)
|
|
84
|
+
- Output: "Starting fresh pipeline run."
|
|
85
|
+
|
|
86
|
+
### 5. Initialize Master Pipeline State Variables
|
|
87
|
+
|
|
88
|
+
- `{full_pipeline_status}` = "initializing" → "initialized"
|
|
89
|
+
- `{full_steps_completed}` = 1
|
|
90
|
+
- `{phase_1_status}` = value from resume detection, or "pending" for fresh run
|
|
91
|
+
- `{phase_2_status}` = value from resume detection, or "pending" for fresh run
|
|
92
|
+
- `{phase_3_status}` = "pending"
|
|
93
|
+
- Ensure `{planning_artifacts}/` directory exists
|
|
94
|
+
- Ensure `{implementation_artifacts}/` directory exists
|
|
95
|
+
|
|
96
|
+
### 6. Load Context
|
|
97
|
+
|
|
98
|
+
- Load `project_context` = `**/project-context.md` (if exists)
|
|
99
|
+
|
|
100
|
+
### 7. Output Environment Summary
|
|
101
|
+
|
|
102
|
+
**Output:**
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
═══════════════════════════════════════════════════
|
|
106
|
+
Auto Full Pipeline — INITIALIZED
|
|
107
|
+
═══════════════════════════════════════════════════
|
|
108
|
+
|
|
109
|
+
Project: {project_name}
|
|
110
|
+
User: {user_name}
|
|
111
|
+
Date: {date}
|
|
112
|
+
Language: {communication_language} / {document_output_language}
|
|
113
|
+
|
|
114
|
+
📋 Requirements: {req_file_path}
|
|
115
|
+
📂 Planning Artifacts: {planning_artifacts}/
|
|
116
|
+
📂 Implementation Artifacts: {implementation_artifacts}/
|
|
117
|
+
|
|
118
|
+
Mode: {resume_from_step == 2 ? "Fresh Run" : "Resume Mode (skipping to Step " + resume_from_step + ")"}
|
|
119
|
+
|
|
120
|
+
Pipeline Phases:
|
|
121
|
+
{resume_from_step <= 2 ? "⬜" : "⏭️"} Phase 1 — Requirements Analysis Pipeline (8 sub-steps)
|
|
122
|
+
{resume_from_step <= 3 ? "⬜" : "⏭️"} Phase 2 — Sprint Planning Bridge (5 inline steps)
|
|
123
|
+
⬜ Phase 3 — Story Development Pipeline (9 sub-steps, batch mode)
|
|
124
|
+
|
|
125
|
+
Finalization: Step 5 — Unified completion report
|
|
126
|
+
|
|
127
|
+
Master Step: 1/5
|
|
128
|
+
═══════════════════════════════════════════════════
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Auto-Proceed:** YES — Do NOT wait for user input. Proceed to the step indicated by `{resume_from_step}`:
|
|
132
|
+
- If `{resume_from_step}` == 2: Proceed to step-02 (normal flow)
|
|
133
|
+
- If `{resume_from_step}` == 3: Skip step-02, proceed directly to step-03
|
|
134
|
+
- If `{resume_from_step}` == 4: Skip step-02 and step-03, proceed directly to step-04
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## SUCCESS METRICS
|
|
139
|
+
|
|
140
|
+
- Config loaded and all variables resolved
|
|
141
|
+
- Requirements document exists and is readable
|
|
142
|
+
- All three sub-pipeline workflows accessible
|
|
143
|
+
- Master state variables initialized
|
|
144
|
+
- Resume mode correctly detected (if applicable)
|
|
145
|
+
- Environment summary output
|
|
146
|
+
|
|
147
|
+
## FAILURE MODES
|
|
148
|
+
|
|
149
|
+
- Missing req.md (cannot proceed without requirements)
|
|
150
|
+
- Missing XiaoMa config (installation incomplete)
|
|
151
|
+
- Missing sub-pipeline workflows (installation incomplete)
|
|
152
|
+
- Directory creation failures
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-02-run-requirements-pipeline"
|
|
3
|
+
description: "Execute the complete auto-requirements-pipeline to produce PRD, epics, and architecture design"
|
|
4
|
+
nextStepFile: "./step-03-bridge-sprint-planning.md"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 2 of 5: Execute Requirements Analysis Pipeline
|
|
8
|
+
|
|
9
|
+
**Goal:** Delegate to the auto-requirements-pipeline to execute the complete requirements analysis lifecycle — from req.md through analysis, PRD creation, validation, epic/story breakdown, and architecture design.
|
|
10
|
+
|
|
11
|
+
**Role:** Master Pipeline Orchestrator → delegates to auto-requirements-pipeline roles (Analyst Mary → Architect Winston → PM John → Architect Winston)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Announce Phase Entry
|
|
18
|
+
|
|
19
|
+
**Output:**
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
═══════════════════════════════════════════════════
|
|
23
|
+
Phase 1 of 3 — Requirements Analysis Pipeline
|
|
24
|
+
═══════════════════════════════════════════════════
|
|
25
|
+
|
|
26
|
+
Starting automated requirements analysis...
|
|
27
|
+
This phase will produce:
|
|
28
|
+
• Requirements Analysis
|
|
29
|
+
• Current Architecture Analysis
|
|
30
|
+
• PRD (Product Requirements Document)
|
|
31
|
+
• Validated PRD
|
|
32
|
+
• Epics and User Stories
|
|
33
|
+
• Architecture Design
|
|
34
|
+
|
|
35
|
+
Delegating to auto-requirements-pipeline...
|
|
36
|
+
───────────────────────────────────────────────────
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 2. Execute Auto Requirements Pipeline
|
|
40
|
+
|
|
41
|
+
Read fully and follow: `{project-root}/_xiaoma/xmc/workflows/1-analysis/auto-requirements-pipeline/workflow.md`
|
|
42
|
+
|
|
43
|
+
**Critical Full Pipeline Mode Instructions:**
|
|
44
|
+
|
|
45
|
+
- **FULLY AUTOMATED:** Do NOT pause for user input at any point
|
|
46
|
+
- Execute ALL 8 sub-steps of the requirements pipeline sequentially (step-01 through step-08)
|
|
47
|
+
- When any sub-step presents a menu or asks for user confirmation: auto-select the appropriate proceed/continue option
|
|
48
|
+
- When any sub-step delegates to another workflow (create-prd, validate-prd, create-epics, create-architecture): follow the pipeline mode instructions within those delegation steps
|
|
49
|
+
- **IMPORTANT:** The requirements pipeline's step-01 will also validate prerequisites — since we already validated in our step-01, these checks should pass. If they fail unexpectedly, propagate the HALT
|
|
50
|
+
- Continue through ALL 8 sub-steps until the requirements pipeline reaches its own step-08 (finalize) and completes
|
|
51
|
+
- **Do NOT stop after the requirements pipeline's finalize step outputs "Next Steps" guidance** — those next steps are handled by THIS full pipeline automatically
|
|
52
|
+
|
|
53
|
+
### 3. Verify Requirements Pipeline Output
|
|
54
|
+
|
|
55
|
+
After the requirements pipeline completes, verify ALL expected output artifacts exist:
|
|
56
|
+
|
|
57
|
+
1. **Requirements Analysis** — `{planning_artifacts}/requirements-analysis.md` — REQUIRED
|
|
58
|
+
2. **Architecture Analysis** — `{planning_artifacts}/current-architecture-analysis.md` — REQUIRED
|
|
59
|
+
3. **PRD** — `{planning_artifacts}/prd.md` — CRITICAL (must exist)
|
|
60
|
+
4. **Epics** — `{planning_artifacts}/epics.md` — CRITICAL (must exist)
|
|
61
|
+
5. **Architecture Design** — `{planning_artifacts}/architecture.md` — REQUIRED
|
|
62
|
+
6. **Pipeline Status** — `{planning_artifacts}/pipeline-status.json` — OPTIONAL (informational)
|
|
63
|
+
|
|
64
|
+
**Verification Logic:**
|
|
65
|
+
|
|
66
|
+
- If `prd.md` AND `epics.md` both exist: `{phase_1_status}` = "success"
|
|
67
|
+
- If either `prd.md` OR `epics.md` is missing: `{phase_1_status}` = "failed" → HALT — "Requirements pipeline failed to produce critical artifacts. Missing: {list missing}. Cannot proceed to development phase."
|
|
68
|
+
- If `requirements-analysis.md`, `current-architecture-analysis.md`, or `architecture.md` is missing: Output WARNING but continue — "Non-critical artifact missing: {filename}. Development may have reduced context."
|
|
69
|
+
|
|
70
|
+
### 4. Check Pipeline Status JSON (Optional)
|
|
71
|
+
|
|
72
|
+
If `{planning_artifacts}/pipeline-status.json` exists:
|
|
73
|
+
|
|
74
|
+
- Read and verify `status` == "complete"
|
|
75
|
+
- If status != "complete": Output WARNING — "Requirements pipeline reported status '{status}' instead of 'complete'. Proceeding with available artifacts."
|
|
76
|
+
|
|
77
|
+
### 5. Update Master Pipeline State
|
|
78
|
+
|
|
79
|
+
- `{full_pipeline_status}` = "requirements-phase-complete"
|
|
80
|
+
- `{full_steps_completed}` = 2
|
|
81
|
+
|
|
82
|
+
**Output:**
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
───────────────────────────────────────────────────
|
|
86
|
+
✅ Phase 1 Complete — Requirements Analysis
|
|
87
|
+
───────────────────────────────────────────────────
|
|
88
|
+
|
|
89
|
+
Artifacts produced:
|
|
90
|
+
✅/❌ requirements-analysis.md
|
|
91
|
+
✅/❌ current-architecture-analysis.md
|
|
92
|
+
✅/❌ prd.md
|
|
93
|
+
✅/❌ epics.md
|
|
94
|
+
✅/❌ architecture.md
|
|
95
|
+
|
|
96
|
+
Phase 1 Status: {phase_1_status}
|
|
97
|
+
Master Step: 2/5
|
|
98
|
+
|
|
99
|
+
Proceeding to Phase 2 — Sprint Planning Bridge...
|
|
100
|
+
───────────────────────────────────────────────────
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Auto-Proceed:** YES — Do NOT wait for user input. Immediately proceed to step-03.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## SUCCESS METRICS
|
|
108
|
+
|
|
109
|
+
- All 8 sub-steps of requirements pipeline executed
|
|
110
|
+
- PRD and Epics produced (critical)
|
|
111
|
+
- Requirements analysis, architecture analysis, and architecture design produced (important)
|
|
112
|
+
- Pipeline status JSON generated
|
|
113
|
+
- Phase 1 status set to "success"
|
|
114
|
+
|
|
115
|
+
## FAILURE MODES
|
|
116
|
+
|
|
117
|
+
- Requirements pipeline HALT propagated (any of its 8 sub-steps)
|
|
118
|
+
- PRD not generated (critical — cannot create stories without PRD)
|
|
119
|
+
- Epics not generated (critical — cannot create sprint status without epics)
|
|
120
|
+
- Validation loop exceeded max iterations in sub-pipeline
|
package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-03-bridge-sprint-planning.md
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-03-bridge-sprint-planning"
|
|
3
|
+
description: "Bridge phase: auto-run sprint planning to generate sprint-status.yaml from epics, connecting requirements analysis output to story development input"
|
|
4
|
+
nextStepFile: "./step-04-run-story-pipeline.md"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 3 of 5: Bridge — Sprint Planning
|
|
8
|
+
|
|
9
|
+
**Goal:** Generate `sprint-status.yaml` from the epics produced in Phase 1. This bridges the requirements analysis output to the story development pipeline input. Without this step, the story pipeline cannot determine which stories to process.
|
|
10
|
+
|
|
11
|
+
**Role:** SM (Bob) — Scrum Master generating sprint tracking
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Announce Phase Entry
|
|
18
|
+
|
|
19
|
+
**Output:**
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
═══════════════════════════════════════════════════
|
|
23
|
+
Phase 2 of 3 — Sprint Planning Bridge
|
|
24
|
+
═══════════════════════════════════════════════════
|
|
25
|
+
|
|
26
|
+
Generating sprint-status.yaml from epics...
|
|
27
|
+
This bridges requirements → development.
|
|
28
|
+
───────────────────────────────────────────────────
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 2. Verify Epics Input
|
|
32
|
+
|
|
33
|
+
Confirm `{planning_artifacts}/epics.md` exists and is readable (should always pass since Phase 1 verified this, but re-check for fresh context loading):
|
|
34
|
+
|
|
35
|
+
- If missing: HALT — "epics.md not found. Phase 1 may have failed. Cannot generate sprint status."
|
|
36
|
+
|
|
37
|
+
Also check for sharded epics format (safety net only — the auto-requirements-pipeline in Phase 1 produces a single `epics.md` file, not a sharded format):
|
|
38
|
+
|
|
39
|
+
- If `{planning_artifacts}/epics.md` not found, check for `{planning_artifacts}/epics/index.md`
|
|
40
|
+
- If sharded version found, proceed — the sprint planning workflow handles both formats
|
|
41
|
+
- If neither format found: HALT — "No epics found in any format. Phase 1 may have failed."
|
|
42
|
+
|
|
43
|
+
### 3. Execute Sprint Planning Workflow
|
|
44
|
+
|
|
45
|
+
Read fully and follow: `{project-root}/_xiaoma/xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md`
|
|
46
|
+
|
|
47
|
+
**Critical Full Pipeline Mode Instructions:**
|
|
48
|
+
|
|
49
|
+
- **FULLY AUTOMATED:** Do NOT pause for user input
|
|
50
|
+
- The sprint planning workflow is a **single-file workflow** (`workflow.md`) containing 5 inline `<step>` blocks (not separate step files):
|
|
51
|
+
1. Parse epic files and extract all work items
|
|
52
|
+
2. Build sprint status structure (epic-N, story keys, retrospective entries)
|
|
53
|
+
3. Apply intelligent status detection (check for existing story files)
|
|
54
|
+
4. Generate `{implementation_artifacts}/sprint-status.yaml`
|
|
55
|
+
5. Validate and report totals
|
|
56
|
+
- Execute ALL 5 inline steps sequentially within the single workflow file
|
|
57
|
+
- Since this is a fresh pipeline run, all stories should default to "backlog" status (no story files exist yet)
|
|
58
|
+
- When the workflow outputs "Next Steps" guidance at the end, **ignore it** — the next steps are handled by THIS full pipeline automatically
|
|
59
|
+
- **Complete ALL steps without stopping**
|
|
60
|
+
|
|
61
|
+
### 4. Verify Sprint Status Output
|
|
62
|
+
|
|
63
|
+
After sprint planning completes, verify:
|
|
64
|
+
|
|
65
|
+
1. **Sprint Status File** — `{implementation_artifacts}/sprint-status.yaml` must exist
|
|
66
|
+
- If missing: HALT — "Sprint planning failed to generate sprint-status.yaml. Check epics format and retry."
|
|
67
|
+
|
|
68
|
+
2. **Content Validation** — Read the generated file and verify:
|
|
69
|
+
- Contains `development_status:` section
|
|
70
|
+
- Contains at least one story entry (not just epic entries)
|
|
71
|
+
- Valid YAML syntax
|
|
72
|
+
|
|
73
|
+
3. **Count Stories** — Parse and count:
|
|
74
|
+
- Total epics
|
|
75
|
+
- Total stories
|
|
76
|
+
- Stories in "backlog" status (should be all stories for a fresh run)
|
|
77
|
+
|
|
78
|
+
### 5. Update Master Pipeline State
|
|
79
|
+
|
|
80
|
+
- `{phase_2_status}` = "success"
|
|
81
|
+
- `{full_pipeline_status}` = "bridge-complete"
|
|
82
|
+
- `{full_steps_completed}` = 3
|
|
83
|
+
|
|
84
|
+
**Output:**
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
───────────────────────────────────────────────────
|
|
88
|
+
✅ Phase 2 Complete — Sprint Planning Bridge
|
|
89
|
+
───────────────────────────────────────────────────
|
|
90
|
+
|
|
91
|
+
Sprint Status: {implementation_artifacts}/sprint-status.yaml
|
|
92
|
+
Total Epics: {epic_count}
|
|
93
|
+
Total Stories: {story_count}
|
|
94
|
+
Stories in Backlog: {backlog_count}
|
|
95
|
+
|
|
96
|
+
Phase 2 Status: {phase_2_status}
|
|
97
|
+
Master Step: 3/5
|
|
98
|
+
|
|
99
|
+
Proceeding to Phase 3 — Story Development Pipeline (batch mode)...
|
|
100
|
+
───────────────────────────────────────────────────
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Auto-Proceed:** YES — Do NOT wait for user input. Immediately proceed to step-04.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## SUCCESS METRICS
|
|
108
|
+
|
|
109
|
+
- sprint-status.yaml generated with valid YAML
|
|
110
|
+
- All epics and stories from epics.md represented
|
|
111
|
+
- Story counts tallied for pipeline tracking
|
|
112
|
+
- Phase 2 status set to "success"
|
|
113
|
+
|
|
114
|
+
## FAILURE MODES
|
|
115
|
+
|
|
116
|
+
- Epics file missing or unreadable
|
|
117
|
+
- Sprint planning workflow fails
|
|
118
|
+
- Generated sprint-status.yaml is malformed or empty
|
|
119
|
+
- No story entries found in sprint status
|
package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-04-run-story-pipeline.md
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-04-run-story-pipeline"
|
|
3
|
+
description: "Execute the complete auto-story-pipeline in batch mode to develop, review, test, and deliver all stories"
|
|
4
|
+
nextStepFile: "./step-05-finalize.md"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 4 of 5: Execute Story Development Pipeline
|
|
8
|
+
|
|
9
|
+
**Goal:** Delegate to the auto-story-pipeline in **batch mode** to execute the complete story development lifecycle for ALL stories — from story creation through validation, development, code review, testing, bug fixing, and final delivery.
|
|
10
|
+
|
|
11
|
+
**Role:** Master Pipeline Orchestrator → delegates to auto-story-pipeline roles (SM Bob → PM John → Dev Amelia → Reviewer → QA Quinn)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Announce Phase Entry
|
|
18
|
+
|
|
19
|
+
**Output:**
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
═══════════════════════════════════════════════════
|
|
23
|
+
Phase 3 of 3 — Story Development Pipeline
|
|
24
|
+
═══════════════════════════════════════════════════
|
|
25
|
+
|
|
26
|
+
Starting automated story development in BATCH mode...
|
|
27
|
+
Processing all {backlog_count} backlog stories sequentially.
|
|
28
|
+
|
|
29
|
+
For each story, the pipeline will:
|
|
30
|
+
1. Create story file from epics
|
|
31
|
+
2. Validate story (PM quality gate)
|
|
32
|
+
3. Develop implementation (TDD)
|
|
33
|
+
4. Adversarial code review
|
|
34
|
+
5. QA functional testing
|
|
35
|
+
6. Fix-and-retest loop (if needed)
|
|
36
|
+
7. Mark story as done
|
|
37
|
+
|
|
38
|
+
Delegating to auto-story-pipeline...
|
|
39
|
+
───────────────────────────────────────────────────
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### 2. Execute Auto Story Pipeline
|
|
43
|
+
|
|
44
|
+
Read fully and follow: `{project-root}/_xiaoma/xmc/workflows/4-implementation/auto-story-pipeline/workflow.md`
|
|
45
|
+
|
|
46
|
+
**Critical Full Pipeline Mode Instructions:**
|
|
47
|
+
|
|
48
|
+
- **FULLY AUTOMATED:** Do NOT pause for user input at any point
|
|
49
|
+
- **BATCH MODE:** When step-01 of the story pipeline asks for pipeline mode, select "batch" — process ALL backlog stories sequentially
|
|
50
|
+
- Execute ALL 9 sub-steps of the story pipeline (step-01 through step-09)
|
|
51
|
+
- The story pipeline will loop through its step-02 → step-09 cycle for each story:
|
|
52
|
+
- step-02: Create user story from epics and planning artifacts
|
|
53
|
+
- step-03: PM validation (quality gate, max 3 attempts)
|
|
54
|
+
- step-04: Development implementation (TDD)
|
|
55
|
+
- step-05: Adversarial code review (auto-fix HIGH/MEDIUM issues)
|
|
56
|
+
- step-06: QA functional testing (real data, no mocks)
|
|
57
|
+
- step-07: Fix-and-retest loop (max `{max_fix_iterations}` iterations)
|
|
58
|
+
- step-08: Complete story (mark done, update sprint status)
|
|
59
|
+
- step-09: Cycle check (find next story, loop back to step-02 or finalize)
|
|
60
|
+
- **IMPORTANT:** The story pipeline's step-01 will validate prerequisites including sprint-status.yaml — since we just generated it in step-03 of this pipeline, this check should pass
|
|
61
|
+
- **IMPORTANT:** The story pipeline's step-01 may attempt to auto-generate sprint-status.yaml if it can't find it — this is fine as a safety net, but should not be needed
|
|
62
|
+
- Continue through ALL stories until the story pipeline reaches finalization in step-09 and completes
|
|
63
|
+
- **Do NOT stop after individual story completions** — the batch mode cycle check (step-09) handles continuation automatically
|
|
64
|
+
- **If a story HALTS** (e.g., fix iteration exceeded): The story pipeline's escalation logic handles this. The escalation report will be generated. The full pipeline should note this as a partial completion
|
|
65
|
+
|
|
66
|
+
### 3. Verify Story Pipeline Output
|
|
67
|
+
|
|
68
|
+
After the story pipeline completes (either all stories done or a HALT condition):
|
|
69
|
+
|
|
70
|
+
1. **Re-read sprint-status.yaml** — Fresh read from disk to get final state
|
|
71
|
+
2. **Count final statuses:**
|
|
72
|
+
- Stories with status "done"
|
|
73
|
+
- Stories with status "backlog" (not yet processed — may indicate early termination)
|
|
74
|
+
- Stories with status "in-progress" or "review" (stuck — may indicate HALT)
|
|
75
|
+
3. **Determine Phase 3 result:**
|
|
76
|
+
- If ALL stories are "done": `{phase_3_status}` = "success"
|
|
77
|
+
- If SOME stories are "done" but others remain: `{phase_3_status}` = "partial" — Output WARNING with count of remaining stories
|
|
78
|
+
- If NO stories completed: `{phase_3_status}` = "failed" — Output ERROR
|
|
79
|
+
|
|
80
|
+
### 4. Update Master Pipeline State
|
|
81
|
+
|
|
82
|
+
- `{full_pipeline_status}` = "development-phase-complete"
|
|
83
|
+
- `{full_steps_completed}` = 4
|
|
84
|
+
|
|
85
|
+
**Output:**
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
───────────────────────────────────────────────────
|
|
89
|
+
✅/⚠️/❌ Phase 3 Complete — Story Development
|
|
90
|
+
───────────────────────────────────────────────────
|
|
91
|
+
|
|
92
|
+
Stories Completed: {done_count}/{total_story_count}
|
|
93
|
+
Stories Remaining: {remaining_count}
|
|
94
|
+
|
|
95
|
+
Sprint Status Breakdown:
|
|
96
|
+
✅ Done: {done_count}
|
|
97
|
+
⬜ Backlog: {backlog_count}
|
|
98
|
+
🔄 In Progress: {in_progress_count}
|
|
99
|
+
👀 Review: {review_count}
|
|
100
|
+
|
|
101
|
+
Phase 3 Status: {phase_3_status}
|
|
102
|
+
Master Step: 4/5
|
|
103
|
+
|
|
104
|
+
Proceeding to Finalization...
|
|
105
|
+
───────────────────────────────────────────────────
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
**Auto-Proceed:** YES — Do NOT wait for user input. Immediately proceed to step-05.
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## SUCCESS METRICS
|
|
113
|
+
|
|
114
|
+
- Story pipeline executed in batch mode
|
|
115
|
+
- All stories processed through create → validate → develop → review → test → complete
|
|
116
|
+
- All story statuses updated to "done" in sprint-status.yaml
|
|
117
|
+
- Epic statuses updated where all stories complete
|
|
118
|
+
|
|
119
|
+
## FAILURE MODES
|
|
120
|
+
|
|
121
|
+
- Story pipeline HALT propagated (escalation from fix loop)
|
|
122
|
+
- Individual story validation fails after 3 attempts
|
|
123
|
+
- Story creation fails (malformed epics)
|
|
124
|
+
- Story pipeline unable to find backlog stories
|
|
125
|
+
- Partial completion (some stories done, others stuck)
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-05-finalize"
|
|
3
|
+
description: "Generate unified completion report across both phases, validate all artifacts, and provide final summary"
|
|
4
|
+
nextStepFile: null
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 5 of 5: Finalize Full Pipeline
|
|
8
|
+
|
|
9
|
+
**Goal:** Validate all output artifacts from both phases, generate a unified completion report, and provide a comprehensive summary of the entire requirements-to-delivery pipeline execution.
|
|
10
|
+
|
|
11
|
+
**Role:** Master Pipeline Orchestrator
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Validate All Artifacts
|
|
18
|
+
|
|
19
|
+
Check that ALL expected output files exist from both phases:
|
|
20
|
+
|
|
21
|
+
**Phase 1 — Requirements Artifacts:**
|
|
22
|
+
|
|
23
|
+
1. `{planning_artifacts}/requirements-analysis.md`
|
|
24
|
+
2. `{planning_artifacts}/current-architecture-analysis.md`
|
|
25
|
+
3. `{planning_artifacts}/prd.md`
|
|
26
|
+
4. `{planning_artifacts}/epics.md`
|
|
27
|
+
5. `{planning_artifacts}/architecture.md`
|
|
28
|
+
6. `{planning_artifacts}/pipeline-status.json`
|
|
29
|
+
|
|
30
|
+
**Phase 2 — Sprint Planning Artifact:**
|
|
31
|
+
|
|
32
|
+
7. `{implementation_artifacts}/sprint-status.yaml`
|
|
33
|
+
|
|
34
|
+
**Phase 3 — Development Artifacts:**
|
|
35
|
+
|
|
36
|
+
8. Story files at `{implementation_artifacts}/*.md` (one per story)
|
|
37
|
+
|
|
38
|
+
For each missing artifact, log a warning. If PRD, Epics, or sprint-status.yaml are missing, this is a critical failure.
|
|
39
|
+
|
|
40
|
+
### 2. Run Completion Checklist
|
|
41
|
+
|
|
42
|
+
Load and evaluate: `{project-root}/_xiaoma/xmc/workflows/5-full-pipeline/auto-full-pipeline/checklist.md`
|
|
43
|
+
|
|
44
|
+
Mark each item as passed or failed based on artifact verification and phase status tracking.
|
|
45
|
+
|
|
46
|
+
### 3. Gather Final Statistics
|
|
47
|
+
|
|
48
|
+
**From sprint-status.yaml (fresh read from disk):**
|
|
49
|
+
|
|
50
|
+
- Total epics
|
|
51
|
+
- Total stories
|
|
52
|
+
- Stories by status (done, backlog, in-progress, review)
|
|
53
|
+
- Epics completed (all stories done)
|
|
54
|
+
|
|
55
|
+
**From pipeline tracking:**
|
|
56
|
+
|
|
57
|
+
- Phase 1 iterations: `{analysis_iteration}`, `{architecture_iteration}`, `{validation_iteration}`
|
|
58
|
+
- Phase 3 stories completed: `{stories_completed}`
|
|
59
|
+
- Phase 3 total fix iterations across all stories
|
|
60
|
+
|
|
61
|
+
### 4. Generate Unified Completion Report
|
|
62
|
+
|
|
63
|
+
Set `{full_steps_completed}` = 5 and `{full_pipeline_status}` = "complete" now, before printing, so the report reflects the final accurate values.
|
|
64
|
+
|
|
65
|
+
**Output:**
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
═══════════════════════════════════════════════════════════════
|
|
69
|
+
Auto Full Pipeline — COMPLETE
|
|
70
|
+
═══════════════════════════════════════════════════════════════
|
|
71
|
+
|
|
72
|
+
Project: {project_name}
|
|
73
|
+
Date: {date}
|
|
74
|
+
Master Steps Completed: {full_steps_completed}/5
|
|
75
|
+
|
|
76
|
+
Phase 1 — Requirements Analysis [{phase_1_status}]
|
|
77
|
+
├─ Requirements Analysis ✅/❌
|
|
78
|
+
├─ Architecture Analysis ✅/❌
|
|
79
|
+
├─ PRD ✅/❌
|
|
80
|
+
├─ PRD Validation ✅/❌
|
|
81
|
+
├─ Epics & Stories ✅/❌
|
|
82
|
+
└─ Architecture Design ✅/❌
|
|
83
|
+
|
|
84
|
+
Phase 2 — Sprint Planning Bridge [{phase_2_status}]
|
|
85
|
+
└─ sprint-status.yaml ✅/❌
|
|
86
|
+
|
|
87
|
+
Phase 3 — Story Development [{phase_3_status}]
|
|
88
|
+
├─ Stories Completed: {done_count}/{total_story_count}
|
|
89
|
+
├─ Epics Completed: {completed_epic_count}/{total_epic_count}
|
|
90
|
+
└─ Total Fix Iterations: {total_fix_iterations}
|
|
91
|
+
|
|
92
|
+
Pipeline Status: {full_pipeline_status}
|
|
93
|
+
═══════════════════════════════════════════════════════════════
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### 5. Generate Machine-Readable Status File
|
|
97
|
+
|
|
98
|
+
Write to: `{implementation_artifacts}/full-pipeline-status.json`
|
|
99
|
+
|
|
100
|
+
```json
|
|
101
|
+
{
|
|
102
|
+
"pipeline": "auto-full-pipeline",
|
|
103
|
+
"date": "{date}",
|
|
104
|
+
"project": "{project_name}",
|
|
105
|
+
"status": "{full_pipeline_status}",
|
|
106
|
+
"master_steps_completed": 5,
|
|
107
|
+
"phases": {
|
|
108
|
+
"requirements": {
|
|
109
|
+
"status": "{phase_1_status}",
|
|
110
|
+
"artifacts": {
|
|
111
|
+
"requirements_analysis": "{planning_artifacts}/requirements-analysis.md",
|
|
112
|
+
"architecture_analysis": "{planning_artifacts}/current-architecture-analysis.md",
|
|
113
|
+
"prd": "{planning_artifacts}/prd.md",
|
|
114
|
+
"epics": "{planning_artifacts}/epics.md",
|
|
115
|
+
"architecture": "{planning_artifacts}/architecture.md"
|
|
116
|
+
},
|
|
117
|
+
"iterations": {
|
|
118
|
+
"analysis": "{analysis_iteration}",
|
|
119
|
+
"architecture": "{architecture_iteration}",
|
|
120
|
+
"validation": "{validation_iteration}"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"sprint_planning": {
|
|
124
|
+
"status": "{phase_2_status}",
|
|
125
|
+
"artifact": "{implementation_artifacts}/sprint-status.yaml"
|
|
126
|
+
},
|
|
127
|
+
"development": {
|
|
128
|
+
"status": "{phase_3_status}",
|
|
129
|
+
"stories_completed": "{done_count}",
|
|
130
|
+
"stories_total": "{total_story_count}",
|
|
131
|
+
"epics_completed": "{completed_epic_count}",
|
|
132
|
+
"epics_total": "{total_epic_count}",
|
|
133
|
+
"total_fix_iterations": "{total_fix_iterations}"
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### 6. Provide Next Steps
|
|
140
|
+
|
|
141
|
+
**If all stories completed ({phase_3_status} == "success"):**
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
🎉 All stories developed and delivered!
|
|
145
|
+
|
|
146
|
+
🔜 Recommended Next Steps:
|
|
147
|
+
1. Review all implemented code and tests
|
|
148
|
+
2. Run epic-retrospective (ER) for completed epics
|
|
149
|
+
3. Consider deployment and release planning
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**If partial completion ({phase_3_status} == "partial"):**
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
⚠️ Pipeline completed with {remaining_count} stories remaining.
|
|
156
|
+
|
|
157
|
+
🔜 Recommended Next Steps:
|
|
158
|
+
1. Review escalation reports for blocked stories
|
|
159
|
+
2. Run /xiaoma-auto-story-pipeline to resume remaining stories
|
|
160
|
+
3. Use /xiaoma-correct-course (CC) if scope changes are needed
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**If development failed ({phase_3_status} == "failed"):**
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
❌ Story development phase failed.
|
|
167
|
+
|
|
168
|
+
🔜 Recommended Next Steps:
|
|
169
|
+
1. Check story pipeline logs for error details
|
|
170
|
+
2. Verify epics and architecture are well-formed
|
|
171
|
+
3. Run /xiaoma-auto-story-pipeline manually to diagnose
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### 7. Pipeline Complete
|
|
175
|
+
|
|
176
|
+
**Pipeline execution is COMPLETE. HALT.**
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## SUCCESS METRICS
|
|
181
|
+
|
|
182
|
+
- All 3 phases completed successfully
|
|
183
|
+
- All planning artifacts verified
|
|
184
|
+
- All stories developed and marked "done"
|
|
185
|
+
- Machine-readable full-pipeline-status.json generated
|
|
186
|
+
- Unified completion report generated
|
|
187
|
+
- Next steps provided
|
|
188
|
+
|
|
189
|
+
## FAILURE MODES
|
|
190
|
+
|
|
191
|
+
- Missing critical artifacts from any phase
|
|
192
|
+
- Partial story completion not properly reported
|
|
193
|
+
- Not providing next steps for partial/failed completions
|
|
194
|
+
- Not generating machine-readable status file
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: auto-full-pipeline
|
|
3
|
+
description: "Fully automated requirements-to-delivery pipeline: requirements analysis → PRD → epics → architecture → sprint planning → story creation → development → code review → testing → delivery. Use when the user says 'run full pipeline', 'auto full', 'end to end', or 'AFP'"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Auto Full Pipeline Workflow
|
|
7
|
+
|
|
8
|
+
**Goal:** Execute the complete automated software development lifecycle — from initial requirements document through requirements analysis, PRD creation, epic/story breakdown, architecture design, sprint planning, and iterative story development with code review and testing — as a single continuous pipeline.
|
|
9
|
+
|
|
10
|
+
**Your Role:** Master Pipeline Orchestrator. You coordinate two sub-pipelines and a bridge step, switching expert roles as each phase demands:
|
|
11
|
+
|
|
12
|
+
- **Phase 1 — Requirements Analysis** (delegates to auto-requirements-pipeline)
|
|
13
|
+
- Analyst (Mary) → Architect (Winston) → PM (John) → Architect (Winston)
|
|
14
|
+
- **Phase 2 — Bridge** (sprint planning)
|
|
15
|
+
- SM (Bob) — Generate sprint tracking from epics
|
|
16
|
+
- **Phase 3 — Story Development** (delegates to auto-story-pipeline)
|
|
17
|
+
- SM (Bob) → PM (John) → Dev (Amelia) → Reviewer → QA (Quinn)
|
|
18
|
+
|
|
19
|
+
- Communicate all responses in {communication_language} and generate all documents in {document_output_language}
|
|
20
|
+
- Execute ALL steps in exact order; do NOT skip steps
|
|
21
|
+
- Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution until the pipeline is COMPLETE or a HALT condition is triggered
|
|
22
|
+
- Each step file loads fresh to combat "lost in the middle" context degradation
|
|
23
|
+
|
|
24
|
+
## Context Management Strategy
|
|
25
|
+
|
|
26
|
+
This pipeline may execute 8 + 5 + 9×N steps (where N = number of stories). To maintain coherence across long sessions:
|
|
27
|
+
|
|
28
|
+
1. **Phase Boundary Summaries** — At the end of each Phase (Steps 02, 03, 04), output a concise state snapshot including all master pipeline variables, artifact paths produced, and story counts. This ensures critical state survives context compression.
|
|
29
|
+
2. **Story Batch Checkpoints** — During Phase 3 (Step-04), the story pipeline's step-09 (cycle check) should output a running tally after every completed story: `"[Checkpoint] Stories done: X/Y, current story: {key}, phase_3 elapsed stories: X"`. This provides recovery anchors if context is compressed mid-batch.
|
|
30
|
+
3. **Fresh File Reads Over Memory** — When resuming after context compression, always re-read `sprint-status.yaml` from disk rather than relying on in-memory state. The file on disk is the source of truth for story statuses.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## WORKFLOW ARCHITECTURE
|
|
35
|
+
|
|
36
|
+
This uses **step-file architecture** with delegation to existing sub-pipelines:
|
|
37
|
+
|
|
38
|
+
- Step-01: Initialize and validate — unified prerequisite check
|
|
39
|
+
- Step-02: Execute auto-requirements-pipeline — produces PRD, epics, architecture
|
|
40
|
+
- Step-03: Bridge — auto-run sprint-planning to generate sprint-status.yaml
|
|
41
|
+
- Step-04: Execute auto-story-pipeline — develop all stories in batch mode
|
|
42
|
+
- Step-05: Finalize — unified completion report across both phases
|
|
43
|
+
|
|
44
|
+
### State Variables
|
|
45
|
+
|
|
46
|
+
**Pipeline-Level:**
|
|
47
|
+
|
|
48
|
+
- `{full_pipeline_status}` — Current master phase: "initializing" → "requirements-phase" → "bridge-phase" → "development-phase" → "complete"
|
|
49
|
+
- `{full_steps_completed}` — Count of master pipeline steps executed (1–5)
|
|
50
|
+
- `{phase_1_status}` — Result of requirements pipeline: "success" | "success (resumed)" | "failed"
|
|
51
|
+
- `{phase_2_status}` — Result of sprint planning bridge: "success" | "success (resumed)" | "failed"
|
|
52
|
+
- `{phase_3_status}` — Result of story pipeline: "success" | "partial" | "failed"
|
|
53
|
+
- `{resume_from_step}` — Step to resume from: 2 (fresh), 3 (skip Phase 1), or 4 (skip Phase 1+2)
|
|
54
|
+
|
|
55
|
+
**Inherited from auto-requirements-pipeline (Phase 1):**
|
|
56
|
+
|
|
57
|
+
- `{req_file_path}` — Path to requirements document
|
|
58
|
+
- `{pipeline_status}` — Requirements pipeline phase tracking
|
|
59
|
+
- `{steps_completed}` — Requirements pipeline step counter
|
|
60
|
+
- `{validation_iteration}`, `{analysis_iteration}`, `{architecture_iteration}` — Retry counters
|
|
61
|
+
|
|
62
|
+
**Inherited from auto-story-pipeline (Phase 3):**
|
|
63
|
+
|
|
64
|
+
- `{pipeline_mode}` — Always "batch" in full pipeline
|
|
65
|
+
- `{current_story_key}`, `{current_story_path}` — Current story tracking
|
|
66
|
+
- `{fix_iteration}`, `{max_fix_iterations}` — Bug fix loop control
|
|
67
|
+
- `{stories_completed}` — Story completion counter
|
|
68
|
+
- `{backlog_count}`, `{ready_count}`, `{in_progress_count}`, `{review_count}`, `{done_count}` — Status counts
|
|
69
|
+
|
|
70
|
+
### Pipeline Flow
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
Step-01 (Init) → Step-02 (Requirements Pipeline) → Step-03 (Sprint Planning Bridge) → Step-04 (Story Pipeline) → Step-05 (Finalize)
|
|
74
|
+
├─ 8 sub-steps internally │ ├─ 9 sub-steps internally
|
|
75
|
+
└─ Produces: PRD, epics, │ └─ Produces: implemented stories,
|
|
76
|
+
architecture, pipeline-status │ passing tests, done statuses
|
|
77
|
+
└─ Produces: sprint-status.yaml
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## INITIALIZATION
|
|
83
|
+
|
|
84
|
+
### Configuration Loading
|
|
85
|
+
|
|
86
|
+
Load config from `{project-root}/_xiaoma/xmc/config.yaml` and resolve:
|
|
87
|
+
|
|
88
|
+
- `project_name`, `user_name`
|
|
89
|
+
- `communication_language`, `document_output_language`
|
|
90
|
+
- `user_skill_level`
|
|
91
|
+
- `planning_artifacts`, `implementation_artifacts`
|
|
92
|
+
- `date` as system-generated current datetime
|
|
93
|
+
|
|
94
|
+
### Paths
|
|
95
|
+
|
|
96
|
+
- `installed_path` = `{project-root}/_xiaoma/xmc/workflows/5-full-pipeline/auto-full-pipeline`
|
|
97
|
+
- `requirements_pipeline` = `{project-root}/_xiaoma/xmc/workflows/1-analysis/auto-requirements-pipeline/workflow.md`
|
|
98
|
+
- `sprint_planning_workflow` = `{project-root}/_xiaoma/xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md`
|
|
99
|
+
- `story_pipeline` = `{project-root}/_xiaoma/xmc/workflows/4-implementation/auto-story-pipeline/workflow.md`
|
|
100
|
+
- `validation` = `{installed_path}/checklist.md`
|
|
101
|
+
|
|
102
|
+
### Context
|
|
103
|
+
|
|
104
|
+
- `project_context` = `**/project-context.md` (load if exists)
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## EXECUTION
|
|
109
|
+
|
|
110
|
+
Read fully and follow: `{project-root}/_xiaoma/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-01-init-and-validate.md` to begin the pipeline.
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
canonicalId: xiaoma-auto-full-pipeline
|
|
2
|
+
type: workflow
|
|
3
|
+
description: "Fully automated requirements-to-delivery pipeline: analyze → PRD → epics → architecture → sprint plan → develop → review → test → done. Use when the user says 'run full pipeline', 'auto full', 'end to end', or 'AFP'"
|