speccrew 0.1.12 → 0.2.1
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/.speccrew/agents/speccrew-feature-designer.md +120 -0
- package/.speccrew/agents/speccrew-product-manager.md +54 -0
- package/.speccrew/agents/speccrew-system-designer.md +150 -14
- package/.speccrew/agents/speccrew-system-developer.md +309 -37
- package/.speccrew/agents/speccrew-task-worker.md +43 -0
- package/.speccrew/agents/speccrew-team-leader.md +108 -11
- package/.speccrew/agents/speccrew-test-manager.md +278 -0
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +44 -0
- package/.speccrew/skills/speccrew-dev-desktop/SKILL.md +44 -0
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +44 -0
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +44 -0
- package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +70 -0
- package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +158 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +59 -29
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +37 -15
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/STATUS-FORMATS.md +29 -4
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/process-batch-results.js +71 -4
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +60 -30
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +65 -0
- package/.speccrew/skills/speccrew-sd-backend/SKILL.md +38 -0
- package/.speccrew/skills/speccrew-sd-desktop/SKILL.md +38 -0
- package/.speccrew/skills/speccrew-sd-frontend/SKILL.md +38 -0
- package/.speccrew/skills/speccrew-sd-mobile/SKILL.md +38 -0
- package/.speccrew/skills/speccrew-test-case-design/SKILL.md +33 -0
- package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +34 -0
- package/.speccrew/skills/speccrew-test-execute/SKILL.md +34 -0
- package/README.ar.md +70 -3
- package/README.bn.md +52 -0
- package/README.bs.md +70 -3
- package/README.da.md +70 -3
- package/README.de.md +70 -3
- package/README.el.md +52 -0
- package/README.en.md +69 -2
- package/README.es.md +70 -3
- package/README.fr.md +70 -3
- package/README.it.md +70 -3
- package/README.ja.md +70 -3
- package/README.ko.md +70 -3
- package/README.md +69 -2
- package/README.no.md +70 -3
- package/README.pl.md +70 -3
- package/README.pt-BR.md +70 -3
- package/README.ru.md +70 -3
- package/README.th.md +69 -2
- package/README.tr.md +69 -2
- package/README.uk.md +69 -2
- package/README.vi.md +52 -0
- package/README.zh-TW.md +70 -3
- package/docs/GETTING-STARTED.ar.md +78 -4
- package/docs/GETTING-STARTED.bn.md +78 -4
- package/docs/GETTING-STARTED.bs.md +78 -4
- package/docs/GETTING-STARTED.da.md +78 -4
- package/docs/GETTING-STARTED.de.md +78 -4
- package/docs/GETTING-STARTED.el.md +78 -4
- package/docs/GETTING-STARTED.en.md +78 -4
- package/docs/GETTING-STARTED.es.md +78 -4
- package/docs/GETTING-STARTED.fr.md +78 -4
- package/docs/GETTING-STARTED.it.md +78 -4
- package/docs/GETTING-STARTED.ja.md +79 -5
- package/docs/GETTING-STARTED.ko.md +79 -5
- package/docs/GETTING-STARTED.md +78 -4
- package/docs/GETTING-STARTED.no.md +78 -4
- package/docs/GETTING-STARTED.pl.md +78 -4
- package/docs/GETTING-STARTED.pt-BR.md +78 -4
- package/docs/GETTING-STARTED.ru.md +78 -4
- package/docs/GETTING-STARTED.th.md +79 -5
- package/docs/GETTING-STARTED.tr.md +78 -4
- package/docs/GETTING-STARTED.uk.md +78 -4
- package/docs/GETTING-STARTED.vi.md +79 -5
- package/docs/GETTING-STARTED.zh-TW.md +79 -5
- package/package.json +1 -1
- package/.speccrew/skills/speccrew-create-agents/SKILL.md +0 -98
- package/.speccrew/skills/speccrew-create-agents/templates/agents/designer-agent.md +0 -54
- package/.speccrew/skills/speccrew-create-agents/templates/agents/dev-agent.md +0 -79
- package/.speccrew/skills/speccrew-create-agents/templates/agents/test-agent.md +0 -80
- package/.speccrew/skills/speccrew-project-diagnosis/SKILL.md +0 -233
- package/.speccrew/skills/speccrew-project-diagnosis/templates/DIAGNOSIS-REPORT-TEMPLATE.md +0 -202
- package/.speccrew/skills/speccrew-workflow-diagnose/SKILL.md +0 -155
- package/workspace-template/docs/solutions/Agent/346/212/200/350/203/275/345/256/232/344/271/211+/351/234/200/346/261/202/346/226/207/346/241/243+UML/344/275/277/347/224/250/346/250/241/346/235/277/357/274/210ISA-95/345/205/255/346/256/265/345/274/217/350/236/215/345/220/210/347/211/210/357/274/211.md +0 -586
- package/workspace-template/docs/solutions/harness.md +0 -410
|
@@ -15,6 +15,94 @@ Your core task is to **bridge requirements and implementation**: based on the us
|
|
|
15
15
|
|
|
16
16
|
# Workflow
|
|
17
17
|
|
|
18
|
+
## Phase 0: Workflow Progress Management
|
|
19
|
+
|
|
20
|
+
> **Stage Gate & Resume Checkpoint System** — Ensures proper flow between pipeline stages and supports resuming from interruptions.
|
|
21
|
+
|
|
22
|
+
### 0.1 Stage Gate — Verify Upstream Completion
|
|
23
|
+
|
|
24
|
+
Before starting any feature design work:
|
|
25
|
+
|
|
26
|
+
1. **Read `WORKFLOW-PROGRESS.json`** from:
|
|
27
|
+
- Path: `speccrew-workspace/iterations/{iteration-id}/WORKFLOW-PROGRESS.json`
|
|
28
|
+
- If the file does not exist → Skip to Phase 1 (backward compatibility mode)
|
|
29
|
+
|
|
30
|
+
2. **Verify PRD Stage Status**:
|
|
31
|
+
- Check: `stages.01_prd.status == "confirmed"`
|
|
32
|
+
- If **NOT confirmed**:
|
|
33
|
+
- **STOP** — Do not proceed
|
|
34
|
+
- Report to user: "❌ **PRD stage has not been confirmed.** Please complete PRD confirmation first using the Product Manager agent. Current status: `{status}`"
|
|
35
|
+
- If **confirmed**:
|
|
36
|
+
- Read `stages.01_prd.outputs` to get PRD file paths
|
|
37
|
+
- Proceed to Step 0.2
|
|
38
|
+
|
|
39
|
+
3. **Update Stage Status**:
|
|
40
|
+
- Set `stages.02_feature_design.status = "in_progress"`
|
|
41
|
+
- Set `stages.02_feature_design.started_at = "{current_timestamp}"`
|
|
42
|
+
- Write the updated `WORKFLOW-PROGRESS.json`
|
|
43
|
+
|
|
44
|
+
### 0.2 Check Resume State (Checkpoint Recovery)
|
|
45
|
+
|
|
46
|
+
If resuming from an interrupted session:
|
|
47
|
+
|
|
48
|
+
1. **Read `.checkpoints.json`** from:
|
|
49
|
+
- Path: `speccrew-workspace/iterations/{iteration-id}/02.feature-design/.checkpoints.json`
|
|
50
|
+
- If the file does not exist → Start from Phase 1 (no previous progress)
|
|
51
|
+
|
|
52
|
+
2. **Evaluate Checkpoint Status**:
|
|
53
|
+
|
|
54
|
+
| Checkpoint | If Passed | Resume Point |
|
|
55
|
+
|------------|-----------|--------------|
|
|
56
|
+
| `function_decomposition.passed == true` | Skip Checkpoint A | Start from Step 3 (Frontend Design) |
|
|
57
|
+
| `feature_spec_review.passed == true` | Skip Checkpoint A & B | Start from Phase 4 (API Contract) |
|
|
58
|
+
| `api_contract_joint.passed == true` | All checkpoints complete | Ask user: "Feature Design phase already completed. Do you want to redo?" |
|
|
59
|
+
|
|
60
|
+
3. **Display Resume Summary**:
|
|
61
|
+
```
|
|
62
|
+
📋 Resume Status:
|
|
63
|
+
├── function_decomposition: ✅ Passed
|
|
64
|
+
├── feature_spec_review: ✅ Passed
|
|
65
|
+
└── api_contract_joint: ⏳ Pending
|
|
66
|
+
|
|
67
|
+
Resuming from: API Contract Generation phase
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
4. **User Confirmation**: Show resume point and ask "Continue from this checkpoint?"
|
|
71
|
+
|
|
72
|
+
### 0.3 Check Dispatch Resume (Multi-Platform Recovery)
|
|
73
|
+
|
|
74
|
+
If the feature involves multiple frontend platforms:
|
|
75
|
+
|
|
76
|
+
1. **Read `DISPATCH-PROGRESS.json`** from:
|
|
77
|
+
- Path: `speccrew-workspace/iterations/{iteration-id}/02.feature-design/DISPATCH-PROGRESS.json`
|
|
78
|
+
- If the file does not exist → No dispatch in progress, proceed normally
|
|
79
|
+
|
|
80
|
+
2. **List Platform Task Status**:
|
|
81
|
+
```
|
|
82
|
+
📊 Dispatch Status:
|
|
83
|
+
├── fd-web-vue: ✅ Completed
|
|
84
|
+
├── fd-mobile-uniapp: ⏳ Pending
|
|
85
|
+
└── fd-web-react: ❌ Failed (error message)
|
|
86
|
+
|
|
87
|
+
Total: 3 | Completed: 1 | Failed: 1 | Pending: 1
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
3. **Resume Strategy**:
|
|
91
|
+
- Skip tasks with `status == "completed"`
|
|
92
|
+
- Re-execute tasks with `status == "failed"`
|
|
93
|
+
- Execute tasks with `status == "pending"`
|
|
94
|
+
|
|
95
|
+
4. **User Confirmation**: Ask "Resume dispatch for pending/failed platforms?"
|
|
96
|
+
|
|
97
|
+
### 0.4 Backward Compatibility
|
|
98
|
+
|
|
99
|
+
If `WORKFLOW-PROGRESS.json` does not exist:
|
|
100
|
+
- Log: "⚠️ No workflow progress file found. Running in legacy mode."
|
|
101
|
+
- Proceed with Phase 1 normally without stage gate checks
|
|
102
|
+
- This ensures compatibility with projects started before the workflow system was introduced
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
18
106
|
## Phase 1: Preparation
|
|
19
107
|
|
|
20
108
|
When user requests to start feature design:
|
|
@@ -125,6 +213,38 @@ After both Feature Spec and API Contract documents are ready, present summary to
|
|
|
125
213
|
- Request user confirmation before proceeding to system design phase
|
|
126
214
|
- After confirmation, API Contract becomes the read-only baseline for downstream stages
|
|
127
215
|
|
|
216
|
+
### 4.4 Finalize Stage (Update Workflow Progress)
|
|
217
|
+
|
|
218
|
+
After user confirms Joint Confirmation:
|
|
219
|
+
|
|
220
|
+
1. **Update `WORKFLOW-PROGRESS.json`**:
|
|
221
|
+
```json
|
|
222
|
+
{
|
|
223
|
+
"current_stage": "03_system_design",
|
|
224
|
+
"stages": {
|
|
225
|
+
"02_feature_design": {
|
|
226
|
+
"status": "confirmed",
|
|
227
|
+
"completed_at": "{timestamp}",
|
|
228
|
+
"confirmed_at": "{timestamp}",
|
|
229
|
+
"outputs": [
|
|
230
|
+
"02.feature-design/[feature-name]-feature-spec.md",
|
|
231
|
+
"02.feature-design/[feature-name]-api-contract.md"
|
|
232
|
+
]
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
2. **Write Updated Progress File**:
|
|
239
|
+
- Path: `speccrew-workspace/iterations/{iteration-id}/WORKFLOW-PROGRESS.json`
|
|
240
|
+
- Set `current_stage` to `03_system_design` (ready for next stage)
|
|
241
|
+
- Set `02_feature_design.status` to `confirmed`
|
|
242
|
+
- Record all output file paths in `outputs` array
|
|
243
|
+
|
|
244
|
+
3. **Confirm Transition**:
|
|
245
|
+
- Notify user: "✅ Feature Design phase completed and confirmed. Ready to start System Design phase."
|
|
246
|
+
- The next agent (speccrew-system-designer) will verify this confirmation via its Stage Gate
|
|
247
|
+
|
|
128
248
|
# Deliverables
|
|
129
249
|
|
|
130
250
|
| Deliverable | Path | Notes |
|
|
@@ -36,6 +36,60 @@ When involving related domains:
|
|
|
36
36
|
- `speccrew-workspace/knowledge/domain/glossary/` → Business terminology glossary
|
|
37
37
|
- `speccrew-workspace/knowledge/domain/qa/` → Common problem solutions
|
|
38
38
|
|
|
39
|
+
# Workflow Progress Management
|
|
40
|
+
|
|
41
|
+
## Phase 0.1: Load Workflow Progress
|
|
42
|
+
|
|
43
|
+
Before starting work, check the workflow progress state:
|
|
44
|
+
|
|
45
|
+
1. **Find Active Iteration**: Use Glob to search for `speccrew-workspace/iterations/*/WORKFLOW-PROGRESS.json`
|
|
46
|
+
2. **If WORKFLOW-PROGRESS.json exists**:
|
|
47
|
+
- Read the file to get current stage and status
|
|
48
|
+
- If `current_stage` is not `01_prd`, this iteration may already be in progress at a later stage
|
|
49
|
+
- If `01_prd.status` is `confirmed`, check resume state (Step 0.2)
|
|
50
|
+
3. **If WORKFLOW-PROGRESS.json does not exist**:
|
|
51
|
+
- Create initial WORKFLOW-PROGRESS.json in the iteration directory:
|
|
52
|
+
```json
|
|
53
|
+
{
|
|
54
|
+
"iteration": "{iteration-name}",
|
|
55
|
+
"current_stage": "01_prd",
|
|
56
|
+
"stages": {
|
|
57
|
+
"01_prd": {
|
|
58
|
+
"status": "in_progress",
|
|
59
|
+
"started_at": "<current-timestamp>",
|
|
60
|
+
"completed_at": null,
|
|
61
|
+
"confirmed_at": null,
|
|
62
|
+
"outputs": []
|
|
63
|
+
},
|
|
64
|
+
"02_feature_design": { "status": "pending" },
|
|
65
|
+
"03_system_design": { "status": "pending" },
|
|
66
|
+
"04_development": { "status": "pending" },
|
|
67
|
+
"05_system_test": { "status": "pending" }
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Phase 0.2: Check Resume State
|
|
73
|
+
|
|
74
|
+
If `01_prd.status` is `confirmed` or `completed`, check for checkpoint file:
|
|
75
|
+
|
|
76
|
+
1. **Read checkpoint file**: `speccrew-workspace/iterations/{iteration}/01.product-requirement/.checkpoints.json`
|
|
77
|
+
2. **If `prd_review.passed == true`**:
|
|
78
|
+
- PRD has been completed and confirmed previously
|
|
79
|
+
- Ask user to choose:
|
|
80
|
+
- **(a) View existing PRD and continue to next stage**: Show PRD content, prepare to transition to `02_feature_design`
|
|
81
|
+
- **(b) Regenerate PRD (overwrite)**: Reset `01_prd.status` to `in_progress`, proceed with normal workflow
|
|
82
|
+
3. **If checkpoint does not exist or `passed == false`**:
|
|
83
|
+
- Proceed with normal PRD generation workflow
|
|
84
|
+
|
|
85
|
+
## Phase 0.3: Backward Compatibility
|
|
86
|
+
|
|
87
|
+
If WORKFLOW-PROGRESS.json does not exist (legacy iterations or new workspace):
|
|
88
|
+
- Execute the original workflow without progress tracking
|
|
89
|
+
- Progress files will be created when PRD is confirmed
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
39
93
|
# Workflow
|
|
40
94
|
|
|
41
95
|
Invoke Skill: Find `speccrew-pm-requirement-analysis/SKILL.md` in the skills directory
|
|
@@ -15,9 +15,52 @@ Your core task is: based on the Feature Spec (WHAT to build), design HOW to buil
|
|
|
15
15
|
|
|
16
16
|
# Workflow
|
|
17
17
|
|
|
18
|
+
## Phase 0: Workflow Progress Management
|
|
19
|
+
|
|
20
|
+
### Step 0.1: Stage Gate — Verify Upstream Completion
|
|
21
|
+
|
|
22
|
+
Before starting system design, verify that Feature Design stage is confirmed:
|
|
23
|
+
|
|
24
|
+
1. **Read WORKFLOW-PROGRESS.json** from `speccrew-workspace/iterations/{current}/WORKFLOW-PROGRESS.json`
|
|
25
|
+
2. **Validate upstream stage**: Check `stages.02_feature_design.status == "confirmed"`
|
|
26
|
+
3. **If not confirmed**: STOP — "Feature Design stage has not been confirmed. Please complete Feature Design confirmation first."
|
|
27
|
+
4. **If confirmed**:
|
|
28
|
+
- Read `02_feature_design.outputs` to get Feature Spec and API Contract paths
|
|
29
|
+
- Update `03_system_design.status` to `in_progress`, record `started_at` timestamp
|
|
30
|
+
|
|
31
|
+
### Step 0.2: Check Resume State (断点续传)
|
|
32
|
+
|
|
33
|
+
Check if there's existing progress to resume:
|
|
34
|
+
|
|
35
|
+
1. **Read .checkpoints.json** from `speccrew-workspace/iterations/{current}/03.system-design/.checkpoints.json` (if exists)
|
|
36
|
+
2. **Determine resume point** based on passed checkpoints:
|
|
37
|
+
- `framework_evaluation.passed == true` → Skip Phase 3 (Framework Evaluation)
|
|
38
|
+
- `design_overview.passed == true` → Skip Phase 4 (DESIGN-OVERVIEW.md generation)
|
|
39
|
+
- `joint_confirmation.passed == true` → Entire stage completed, ask user if they want to redo
|
|
40
|
+
3. **Present resume summary** to user if resuming from checkpoint
|
|
41
|
+
|
|
42
|
+
### Step 0.3: Check Dispatch Resume (Feature×Platform Matrix)
|
|
43
|
+
|
|
44
|
+
Check dispatch progress for parallel task execution:
|
|
45
|
+
|
|
46
|
+
1. **Read DISPATCH-PROGRESS.json** from `speccrew-workspace/iterations/{current}/03.system-design/DISPATCH-PROGRESS.json` (if exists)
|
|
47
|
+
2. **List task statuses**:
|
|
48
|
+
- `completed`: Skip these tasks
|
|
49
|
+
- `failed`: Retry these tasks
|
|
50
|
+
- `pending`: Execute these tasks
|
|
51
|
+
3. **Show resume summary** to user with counts: total/completed/failed/pending
|
|
52
|
+
|
|
53
|
+
### Step 0.4: Backward Compatibility
|
|
54
|
+
|
|
55
|
+
If WORKFLOW-PROGRESS.json does not exist:
|
|
56
|
+
- Continue with existing logic (Phase 1 onwards)
|
|
57
|
+
- Do not fail if progress files are missing
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
18
61
|
## Phase 1: Preparation
|
|
19
62
|
|
|
20
|
-
When user requests to start system design:
|
|
63
|
+
When user requests to start system design (and Phase 0 gates are passed):
|
|
21
64
|
|
|
22
65
|
### 1.1 Identify Feature Spec and API Contract Documents
|
|
23
66
|
|
|
@@ -128,18 +171,55 @@ Based on platform types in techs-manifest:
|
|
|
128
171
|
- `desktop-*` → dispatch `speccrew-sd-desktop`
|
|
129
172
|
- `backend-*` → dispatch `speccrew-sd-backend`
|
|
130
173
|
|
|
131
|
-
### 5.2
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
174
|
+
### 5.2 Initialize DISPATCH-PROGRESS.json
|
|
175
|
+
|
|
176
|
+
Before dispatching, create or update dispatch tracking:
|
|
177
|
+
|
|
178
|
+
1. **Create task entries** for each Feature × Platform combination:
|
|
179
|
+
```json
|
|
180
|
+
{
|
|
181
|
+
"stage": "03_system_design",
|
|
182
|
+
"total": 6,
|
|
183
|
+
"completed": 0,
|
|
184
|
+
"failed": 0,
|
|
185
|
+
"pending": 6,
|
|
186
|
+
"tasks": [
|
|
187
|
+
{
|
|
188
|
+
"id": "sd-{platform_id}-{feature_name}",
|
|
189
|
+
"platform": "{platform_id}",
|
|
190
|
+
"feature": "{feature_name}",
|
|
191
|
+
"skill": "speccrew-sd-{type}",
|
|
192
|
+
"status": "pending",
|
|
193
|
+
"started_at": null,
|
|
194
|
+
"completed_at": null,
|
|
195
|
+
"output": null,
|
|
196
|
+
"error": null
|
|
197
|
+
}
|
|
198
|
+
]
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
2. **Check existing progress** (from Step 0.3) — skip `completed` tasks
|
|
202
|
+
3. **Update status** to `in_progress` for tasks being dispatched
|
|
203
|
+
|
|
204
|
+
### 5.3 Single Feature Spec + Single Platform
|
|
205
|
+
|
|
206
|
+
When there is only one Feature Spec and one platform:
|
|
207
|
+
|
|
208
|
+
1. Update task status to `in_progress` with `started_at` timestamp
|
|
209
|
+
2. Call skill directly with parameters:
|
|
210
|
+
- Skill path: determined by platform type mapping (see 5.1)
|
|
211
|
+
- Pass context:
|
|
212
|
+
- `task_id`: Task identifier for progress tracking
|
|
213
|
+
- `platform_id`: Platform identifier from techs-manifest
|
|
214
|
+
- `feature_spec_path`: Path to Feature Spec document
|
|
215
|
+
- `api_contract_path`: Path to API Contract document
|
|
216
|
+
- `techs_paths`: Relevant techs knowledge paths
|
|
217
|
+
- `framework_decisions`: Framework decisions from Phase 3
|
|
218
|
+
3. **Parse Task Completion Report** from skill output:
|
|
219
|
+
- If `Status: SUCCESS` → Update task to `completed`, record `output` path
|
|
220
|
+
- If `Status: FAILED` → Update task to `failed`, record `error` details
|
|
221
|
+
|
|
222
|
+
### 5.4 Parallel Execution (Feature × Platform)
|
|
143
223
|
|
|
144
224
|
> **IMPORTANT**: Use the **Skill tool** (not the Agent tool) to invoke each design skill.
|
|
145
225
|
|
|
@@ -155,6 +235,7 @@ When multiple Feature Specs and/or multiple platforms exist, create a matrix of
|
|
|
155
235
|
Each worker receives:
|
|
156
236
|
- `skill_name`: Per-platform design skill based on platform type (see 5.1)
|
|
157
237
|
- `context`:
|
|
238
|
+
- `task_id`: Unique task identifier (e.g., `sd-web-vue-feature-a`)
|
|
158
239
|
- `platform_id`: Platform identifier from techs-manifest
|
|
159
240
|
- `feature_spec_path`: Path to ONE Feature Spec document (not all)
|
|
160
241
|
- `api_contract_path`: API Contract document path
|
|
@@ -162,6 +243,8 @@ Each worker receives:
|
|
|
162
243
|
- `framework_decisions`: Framework decisions from Phase 3
|
|
163
244
|
- `output_base_path`: Path to `03.system-design/` directory
|
|
164
245
|
|
|
246
|
+
**Before dispatch**: Update each task status to `in_progress` with `started_at` timestamp.
|
|
247
|
+
|
|
165
248
|
**Parallel execution example** (2 features × 3 platforms = 6 skill invocations):
|
|
166
249
|
- Skill 1: speccrew-sd-frontend for Feature A on web-vue → 03.system-design/web-vue/
|
|
167
250
|
- Skill 2: speccrew-sd-backend for Feature A on backend-spring → 03.system-design/backend-spring/
|
|
@@ -171,6 +254,27 @@ Each worker receives:
|
|
|
171
254
|
- Skill 6: speccrew-sd-mobile for Feature B on mobile-uniapp → 03.system-design/mobile-uniapp/
|
|
172
255
|
|
|
173
256
|
All skills execute simultaneously to maximize efficiency.
|
|
257
|
+
|
|
258
|
+
### 5.5 Update DISPATCH-PROGRESS.json
|
|
259
|
+
|
|
260
|
+
After each skill completes, parse its **Task Completion Report** and update:
|
|
261
|
+
|
|
262
|
+
```json
|
|
263
|
+
{
|
|
264
|
+
"tasks": [
|
|
265
|
+
{
|
|
266
|
+
"id": "sd-web-vue-feature-a",
|
|
267
|
+
"status": "completed",
|
|
268
|
+
"completed_at": "2026-01-15T10:30:00Z",
|
|
269
|
+
"output": "03.system-design/web-vue/feature-a-design.md"
|
|
270
|
+
}
|
|
271
|
+
],
|
|
272
|
+
"completed": 4,
|
|
273
|
+
"failed": 1,
|
|
274
|
+
"pending": 1
|
|
275
|
+
}
|
|
276
|
+
```
|
|
277
|
+
|
|
174
278
|
Wait for all skills to complete before proceeding to Phase 6.
|
|
175
279
|
|
|
176
280
|
## Phase 6: Joint Confirmation
|
|
@@ -181,7 +285,39 @@ After all platform designs are complete:
|
|
|
181
285
|
2. List all design documents with paths
|
|
182
286
|
3. Highlight cross-platform integration points
|
|
183
287
|
4. Request user confirmation
|
|
184
|
-
|
|
288
|
+
|
|
289
|
+
### 6.1 Update Checkpoints on Confirmation
|
|
290
|
+
|
|
291
|
+
After user confirms:
|
|
292
|
+
|
|
293
|
+
1. **Write .checkpoints.json**:
|
|
294
|
+
```json
|
|
295
|
+
{
|
|
296
|
+
"stage": "03_system_design",
|
|
297
|
+
"checkpoints": {
|
|
298
|
+
"framework_evaluation": { "passed": true, "confirmed_at": "..." },
|
|
299
|
+
"design_overview": { "passed": true, "confirmed_at": "..." },
|
|
300
|
+
"joint_confirmation": { "passed": true, "confirmed_at": "..." }
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
2. **Update WORKFLOW-PROGRESS.json**:
|
|
306
|
+
```json
|
|
307
|
+
{
|
|
308
|
+
"current_stage": "04_development",
|
|
309
|
+
"stages": {
|
|
310
|
+
"03_system_design": {
|
|
311
|
+
"status": "confirmed",
|
|
312
|
+
"completed_at": "...",
|
|
313
|
+
"confirmed_at": "...",
|
|
314
|
+
"outputs": ["DESIGN-OVERVIEW.md", "platform-indexes", "module-designs"]
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
3. **Designs become baseline** for Dev phase
|
|
185
321
|
|
|
186
322
|
# Deliverables
|
|
187
323
|
|