speccrew 0.1.11 → 0.2.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/.speccrew/agents/speccrew-feature-designer.md +120 -0
- package/.speccrew/agents/speccrew-product-manager.md +54 -0
- package/.speccrew/agents/speccrew-system-designer.md +163 -25
- package/.speccrew/agents/speccrew-system-developer.md +357 -52
- 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 +285 -9
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +47 -1
- package/.speccrew/skills/speccrew-dev-desktop/SKILL.md +51 -6
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +49 -3
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +50 -5
- 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-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,76 @@ Your core task is: coordinate three-phase testing workflow (test case design →
|
|
|
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
|
+
**Read `WORKFLOW-PROGRESS.json`** from workspace root:
|
|
23
|
+
```
|
|
24
|
+
speccrew-workspace/WORKFLOW-PROGRESS.json
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Validation Rules:**
|
|
28
|
+
- Verify `stages.04_development.status == "confirmed"`
|
|
29
|
+
- If not confirmed → **STOP** with message: "Development stage has not been confirmed. Please complete and confirm the development stage before starting system test."
|
|
30
|
+
|
|
31
|
+
**Update Current Stage:**
|
|
32
|
+
- Set `stages.05_system_test.status` to `"in_progress"`
|
|
33
|
+
- Record `stages.05_system_test.started_at` with current timestamp
|
|
34
|
+
- Write updated `WORKFLOW-PROGRESS.json`
|
|
35
|
+
|
|
36
|
+
### Step 0.2: Check Resume State (断点续传)
|
|
37
|
+
|
|
38
|
+
**Read Checkpoint File** (if exists):
|
|
39
|
+
```
|
|
40
|
+
speccrew-workspace/iterations/{number}-{type}-{name}/05.system-test/.checkpoints.json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Resume Decision Matrix:**
|
|
44
|
+
|
|
45
|
+
| Checkpoint State | Action |
|
|
46
|
+
|-----------------|--------|
|
|
47
|
+
| `test_case_coverage.passed == true` | Skip Phase 3 (test-case-design), proceed to Phase 4 (test-code-gen) |
|
|
48
|
+
| `test_code_review.passed == true` | Skip Phase 3+4, proceed to Phase 5 (test-execution) |
|
|
49
|
+
| `test_execution_report.passed == true` | Stage complete — ask user if they want to redo |
|
|
50
|
+
| File does not exist | Proceed normally from Phase 1 |
|
|
51
|
+
|
|
52
|
+
**User Confirmation for Resume:**
|
|
53
|
+
- Display detected resume point to user
|
|
54
|
+
- Ask: "Resume from [phase]? Or restart from beginning?"
|
|
55
|
+
- Proceed based on user choice
|
|
56
|
+
|
|
57
|
+
### Step 0.3: Check Dispatch Resume (多平台断点续传)
|
|
58
|
+
|
|
59
|
+
**Read Dispatch Progress** (if exists):
|
|
60
|
+
```
|
|
61
|
+
speccrew-workspace/iterations/{number}-{type}-{name}/05.system-test/DISPATCH-PROGRESS.json
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Parse Task Status by Phase:**
|
|
65
|
+
- Group tasks by `phase` field (test_case_design, test_code_gen, test_execution)
|
|
66
|
+
- For each phase, identify:
|
|
67
|
+
- `completed` tasks — skip
|
|
68
|
+
- `failed` tasks — retry
|
|
69
|
+
- `pending` tasks — execute
|
|
70
|
+
|
|
71
|
+
**Display Progress Summary:**
|
|
72
|
+
```
|
|
73
|
+
Dispatch Resume Status:
|
|
74
|
+
├── test_case_design: {completed}/{total} completed, {failed} failed, {pending} pending
|
|
75
|
+
├── test_code_gen: {completed}/{total} completed, {failed} failed, {pending} pending
|
|
76
|
+
└── test_execution: {completed}/{total} completed, {failed} failed, {pending} pending
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Step 0.4: Backward Compatibility
|
|
80
|
+
|
|
81
|
+
If `WORKFLOW-PROGRESS.json` does not exist:
|
|
82
|
+
- Proceed with existing workflow (Phase 1 onwards)
|
|
83
|
+
- Skip all progress tracking steps
|
|
84
|
+
- Maintain full compatibility with legacy projects
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
18
88
|
## Phase 1: Preparation
|
|
19
89
|
|
|
20
90
|
When user requests to start testing:
|
|
@@ -93,7 +163,7 @@ Design test cases based on loaded knowledge:
|
|
|
93
163
|
|
|
94
164
|
After reading `DESIGN-OVERVIEW.md`:
|
|
95
165
|
- **Single Platform**: Invoke Skill directly
|
|
96
|
-
- **Multiple Platforms**:
|
|
166
|
+
- **Multiple Platforms**: Use **Skill tool** to invoke per-platform skills in parallel
|
|
97
167
|
|
|
98
168
|
### 3.2 Single Platform Execution
|
|
99
169
|
|
|
@@ -107,7 +177,40 @@ Invoke Skill directly with parameters:
|
|
|
107
177
|
|
|
108
178
|
### 3.3 Multi-Platform Parallel Execution
|
|
109
179
|
|
|
110
|
-
|
|
180
|
+
> **IMPORTANT**: Use the **Skill tool** (not the Agent tool) to invoke each test skill.
|
|
181
|
+
|
|
182
|
+
> **DISPATCH-PROGRESS Strategy**: Append mode — each test phase appends its tasks to the existing DISPATCH-PROGRESS.json with a distinct `phase` field. Previous phase records are preserved for full traceability.
|
|
183
|
+
|
|
184
|
+
**Initialize Dispatch Progress File:**
|
|
185
|
+
|
|
186
|
+
Before dispatching, create or update `DISPATCH-PROGRESS.json`:
|
|
187
|
+
```json
|
|
188
|
+
{
|
|
189
|
+
"stage": "05_system_test",
|
|
190
|
+
"phase": "test_case_design",
|
|
191
|
+
"total": {platform_count},
|
|
192
|
+
"completed": 0,
|
|
193
|
+
"failed": 0,
|
|
194
|
+
"pending": {platform_count},
|
|
195
|
+
"tasks": [
|
|
196
|
+
{
|
|
197
|
+
"id": "test-case-{platform_id}",
|
|
198
|
+
"platform": "{platform_id}",
|
|
199
|
+
"phase": "test_case_design",
|
|
200
|
+
"skill": "speccrew-test-case-design",
|
|
201
|
+
"status": "pending",
|
|
202
|
+
"started_at": null,
|
|
203
|
+
"completed_at": null,
|
|
204
|
+
"output": null,
|
|
205
|
+
"error": null
|
|
206
|
+
}
|
|
207
|
+
]
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
**Dispatch Workers:**
|
|
212
|
+
|
|
213
|
+
Use the **Skill tool** to invoke `speccrew-test-case-design` for each platform in parallel:
|
|
111
214
|
- Each worker receives:
|
|
112
215
|
- `skill_name`: `speccrew-test-case-design`
|
|
113
216
|
- `context`:
|
|
@@ -116,11 +219,19 @@ Invoke `speccrew-task-worker` agents in parallel:
|
|
|
116
219
|
- `api_contract_path`: Path to the API contract document (if exists)
|
|
117
220
|
- `platform_id`: Platform identifier
|
|
118
221
|
- `output_path`: Path for the platform-specific test cases document
|
|
222
|
+
- `task_id`: `test-case-{platform_id}` (for progress tracking)
|
|
119
223
|
- Parallel execution pattern:
|
|
120
224
|
- Worker 1: Master Feature Spec + Platform 1 Design → Platform 1 Test Cases
|
|
121
225
|
- Worker 2: Master Feature Spec + Platform 2 Design → Platform 2 Test Cases
|
|
122
226
|
- Worker N: Master Feature Spec + Platform N Design → Platform N Test Cases
|
|
123
227
|
|
|
228
|
+
**Update Progress on Completion:**
|
|
229
|
+
|
|
230
|
+
For each completed worker, parse Task Completion Report and update `DISPATCH-PROGRESS.json`:
|
|
231
|
+
- On SUCCESS: Set `status` to `"completed"`, record `completed_at`, set `output`
|
|
232
|
+
- On FAILED: Set `status` to `"failed"`, record `error`, set `recovery_hint` if available
|
|
233
|
+
- Recalculate `completed`, `failed`, `pending` counts
|
|
234
|
+
|
|
124
235
|
### 3.4 Checkpoint A: Test Case Review
|
|
125
236
|
|
|
126
237
|
After test case design completes for all platforms:
|
|
@@ -139,6 +250,22 @@ After test case design completes for all platforms:
|
|
|
139
250
|
- Wait for user to confirm test case coverage is adequate
|
|
140
251
|
- Only proceed to code generation phase after user confirmation
|
|
141
252
|
|
|
253
|
+
**Write Checkpoint File:**
|
|
254
|
+
|
|
255
|
+
Create or update `.checkpoints.json`:
|
|
256
|
+
```json
|
|
257
|
+
{
|
|
258
|
+
"stage": "05_system_test",
|
|
259
|
+
"checkpoints": {
|
|
260
|
+
"test_case_coverage": {
|
|
261
|
+
"passed": true,
|
|
262
|
+
"confirmed_at": "{ISO8601_timestamp}",
|
|
263
|
+
"description": "Test case coverage review (Checkpoint A)"
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
```
|
|
268
|
+
|
|
142
269
|
**Output Path:**
|
|
143
270
|
- `speccrew-workspace/iterations/{number}-{type}-{name}/05.system-test/cases/{platform_id}/[feature]-test-cases.md`
|
|
144
271
|
|
|
@@ -163,14 +290,51 @@ Invoke Skill directly:
|
|
|
163
290
|
|
|
164
291
|
### 4.3 Multi-Platform Parallel Execution
|
|
165
292
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
293
|
+
> **DISPATCH-PROGRESS Strategy**: Append mode — each test phase appends its tasks to the existing DISPATCH-PROGRESS.json with a distinct `phase` field. Previous phase records are preserved for full traceability.
|
|
294
|
+
|
|
295
|
+
**Initialize Dispatch Progress File:**
|
|
296
|
+
|
|
297
|
+
Update `DISPATCH-PROGRESS.json` with new phase:
|
|
298
|
+
```json
|
|
299
|
+
{
|
|
300
|
+
"stage": "05_system_test",
|
|
301
|
+
"phase": "test_code_gen",
|
|
302
|
+
"total": {platform_count},
|
|
303
|
+
"completed": 0,
|
|
304
|
+
"failed": 0,
|
|
305
|
+
"pending": {platform_count},
|
|
306
|
+
"tasks": [
|
|
307
|
+
{
|
|
308
|
+
"id": "test-code-{platform_id}",
|
|
309
|
+
"platform": "{platform_id}",
|
|
310
|
+
"phase": "test_code_gen",
|
|
311
|
+
"skill": "speccrew-test-code-gen",
|
|
312
|
+
"status": "pending",
|
|
313
|
+
"started_at": null,
|
|
314
|
+
"completed_at": null,
|
|
315
|
+
"output": null,
|
|
316
|
+
"error": null
|
|
317
|
+
}
|
|
318
|
+
]
|
|
319
|
+
}
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
**Dispatch Workers:**
|
|
323
|
+
|
|
324
|
+
Use the **Skill tool** to invoke `speccrew-test-code-gen` for each platform in parallel:
|
|
169
325
|
- `context`:
|
|
170
326
|
- `test_cases_path`: Path to the platform-specific test cases document
|
|
171
327
|
- `system_design_path`: Path to the platform system design document
|
|
172
328
|
- `platform_id`: Platform identifier
|
|
173
329
|
- `output_dir`: Directory for generated test code and plan
|
|
330
|
+
- `task_id`: `test-code-{platform_id}` (for progress tracking)
|
|
331
|
+
|
|
332
|
+
**Update Progress on Completion:**
|
|
333
|
+
|
|
334
|
+
For each completed worker, parse Task Completion Report and update `DISPATCH-PROGRESS.json`:
|
|
335
|
+
- On SUCCESS: Set `status` to `"completed"`, record `completed_at`, set `output`
|
|
336
|
+
- On FAILED: Set `status` to `"failed"`, record `error`
|
|
337
|
+
- Recalculate `completed`, `failed`, `pending` counts
|
|
174
338
|
|
|
175
339
|
### 4.4 Checkpoint B: Code Review
|
|
176
340
|
|
|
@@ -190,6 +354,27 @@ After test code generation completes for all platforms:
|
|
|
190
354
|
- Wait for user to confirm test code is acceptable
|
|
191
355
|
- Only proceed to execution phase after user confirmation
|
|
192
356
|
|
|
357
|
+
**Update Checkpoint File:**
|
|
358
|
+
|
|
359
|
+
Update `.checkpoints.json`:
|
|
360
|
+
```json
|
|
361
|
+
{
|
|
362
|
+
"stage": "05_system_test",
|
|
363
|
+
"checkpoints": {
|
|
364
|
+
"test_case_coverage": {
|
|
365
|
+
"passed": true,
|
|
366
|
+
"confirmed_at": "{timestamp}",
|
|
367
|
+
"description": "Test case coverage review (Checkpoint A)"
|
|
368
|
+
},
|
|
369
|
+
"test_code_review": {
|
|
370
|
+
"passed": true,
|
|
371
|
+
"confirmed_at": "{ISO8601_timestamp}",
|
|
372
|
+
"description": "Test code generation review (Checkpoint B)"
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
```
|
|
377
|
+
|
|
193
378
|
**Output:**
|
|
194
379
|
- Test code: Written to project source test directories
|
|
195
380
|
- Test code plan: `speccrew-workspace/iterations/{number}-{type}-{name}/05.system-test/code/{platform_id}/[feature]-test-code-plan.md`
|
|
@@ -214,13 +399,50 @@ Invoke Skill directly:
|
|
|
214
399
|
|
|
215
400
|
### 5.3 Multi-Platform Parallel Execution
|
|
216
401
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
402
|
+
> **DISPATCH-PROGRESS Strategy**: Append mode — each test phase appends its tasks to the existing DISPATCH-PROGRESS.json with a distinct `phase` field. Previous phase records are preserved for full traceability.
|
|
403
|
+
|
|
404
|
+
**Initialize Dispatch Progress File:**
|
|
405
|
+
|
|
406
|
+
Update `DISPATCH-PROGRESS.json` with new phase:
|
|
407
|
+
```json
|
|
408
|
+
{
|
|
409
|
+
"stage": "05_system_test",
|
|
410
|
+
"phase": "test_execution",
|
|
411
|
+
"total": {platform_count},
|
|
412
|
+
"completed": 0,
|
|
413
|
+
"failed": 0,
|
|
414
|
+
"pending": {platform_count},
|
|
415
|
+
"tasks": [
|
|
416
|
+
{
|
|
417
|
+
"id": "test-exec-{platform_id}",
|
|
418
|
+
"platform": "{platform_id}",
|
|
419
|
+
"phase": "test_execution",
|
|
420
|
+
"skill": "speccrew-test-execute",
|
|
421
|
+
"status": "pending",
|
|
422
|
+
"started_at": null,
|
|
423
|
+
"completed_at": null,
|
|
424
|
+
"output": null,
|
|
425
|
+
"error": null
|
|
426
|
+
}
|
|
427
|
+
]
|
|
428
|
+
}
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
**Dispatch Workers:**
|
|
432
|
+
|
|
433
|
+
Use the **Skill tool** to invoke `speccrew-test-execute` for each platform in parallel:
|
|
220
434
|
- `context`:
|
|
221
435
|
- `test_code_path`: Path to the platform test code directory
|
|
222
436
|
- `platform_id`: Platform identifier
|
|
223
437
|
- `output_dir`: Directory for reports
|
|
438
|
+
- `task_id`: `test-exec-{platform_id}` (for progress tracking)
|
|
439
|
+
|
|
440
|
+
**Update Progress on Completion:**
|
|
441
|
+
|
|
442
|
+
For each completed worker, parse Task Completion Report and update `DISPATCH-PROGRESS.json`:
|
|
443
|
+
- On SUCCESS: Set `status` to `"completed"`, record `completed_at`, set `output`
|
|
444
|
+
- On FAILED: Set `status` to `"failed"`, record `error`
|
|
445
|
+
- Recalculate `completed`, `failed`, `pending` counts
|
|
224
446
|
|
|
225
447
|
### 5.4 Deviation Detection
|
|
226
448
|
|
|
@@ -279,6 +501,60 @@ Provide clear recommendation:
|
|
|
279
501
|
- Confirm to proceed to delivery phase, or
|
|
280
502
|
- Return to development phase for bug fixes
|
|
281
503
|
|
|
504
|
+
### 6.5 Finalize Progress Files
|
|
505
|
+
|
|
506
|
+
**Update Checkpoint File:**
|
|
507
|
+
|
|
508
|
+
Update `.checkpoints.json`:
|
|
509
|
+
```json
|
|
510
|
+
{
|
|
511
|
+
"stage": "05_system_test",
|
|
512
|
+
"checkpoints": {
|
|
513
|
+
"test_case_coverage": {
|
|
514
|
+
"passed": true,
|
|
515
|
+
"confirmed_at": "{timestamp}",
|
|
516
|
+
"description": "Test case coverage review (Checkpoint A)"
|
|
517
|
+
},
|
|
518
|
+
"test_code_review": {
|
|
519
|
+
"passed": true,
|
|
520
|
+
"confirmed_at": "{timestamp}",
|
|
521
|
+
"description": "Test code generation review (Checkpoint B)"
|
|
522
|
+
},
|
|
523
|
+
"test_execution_report": {
|
|
524
|
+
"passed": true,
|
|
525
|
+
"confirmed_at": "{ISO8601_timestamp}",
|
|
526
|
+
"description": "Test execution final report"
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
**Update Workflow Progress:**
|
|
533
|
+
|
|
534
|
+
Update `WORKFLOW-PROGRESS.json`:
|
|
535
|
+
```json
|
|
536
|
+
{
|
|
537
|
+
"iteration": "{iteration_name}",
|
|
538
|
+
"current_stage": "05_system_test",
|
|
539
|
+
"stages": {
|
|
540
|
+
"05_system_test": {
|
|
541
|
+
"status": "confirmed",
|
|
542
|
+
"started_at": "{timestamp}",
|
|
543
|
+
"completed_at": "{timestamp}",
|
|
544
|
+
"confirmed_at": "{ISO8601_timestamp}",
|
|
545
|
+
"outputs": [
|
|
546
|
+
"05.system-test/cases/",
|
|
547
|
+
"05.system-test/code/",
|
|
548
|
+
"05.system-test/reports/",
|
|
549
|
+
"05.system-test/bugs/"
|
|
550
|
+
]
|
|
551
|
+
}
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
> **Note**: `current_stage` does not advance — 05_system_test is the final stage of the pipeline.
|
|
557
|
+
|
|
282
558
|
# Deliverables
|
|
283
559
|
|
|
284
560
|
| Deliverable | Path | Notes |
|
|
@@ -299,7 +575,7 @@ Provide clear recommendation:
|
|
|
299
575
|
**Must do:**
|
|
300
576
|
- Execute three phases in strict order: test case design → code generation → test execution
|
|
301
577
|
- Each phase must have a Checkpoint with user confirmation before proceeding
|
|
302
|
-
- Multi-platform scenarios must
|
|
578
|
+
- Multi-platform scenarios must use the **Skill tool** to invoke per-platform skills in parallel
|
|
303
579
|
- Test cases must be traceable to Feature Spec requirements
|
|
304
580
|
- Bug reports must reference specific test case IDs
|
|
305
581
|
- Use platform_id from design overview as directory names
|
|
@@ -26,9 +26,11 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
Input: `design_doc_path` — Path to a single module design document (passed by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
33
|
+
1. **Module Design Document**: The `design_doc_path` provided (single module's design)
|
|
32
34
|
2. **Platform INDEX**: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/INDEX.md`
|
|
33
35
|
3. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/[feature-name]-api-contract.md`
|
|
34
36
|
4. **Techs Knowledge** (from agent context):
|
|
@@ -191,6 +193,50 @@ Task Record: speccrew-workspace/iterations/{number}-{type}-{name}/04.development
|
|
|
191
193
|
Ready for testing phase.
|
|
192
194
|
```
|
|
193
195
|
|
|
196
|
+
## Task Completion Report
|
|
197
|
+
|
|
198
|
+
At the end of Step 8 (or if the skill fails at any point), output a structured Task Completion Report:
|
|
199
|
+
|
|
200
|
+
### Success Report
|
|
201
|
+
|
|
202
|
+
```
|
|
203
|
+
## Task Completion Report
|
|
204
|
+
- **Status**: SUCCESS
|
|
205
|
+
- **Task ID**: {task_id from dispatch context}
|
|
206
|
+
- **Platform**: {platform_id}
|
|
207
|
+
- **Module**: {module_name}
|
|
208
|
+
- **Output Files**:
|
|
209
|
+
- {file_path_1}
|
|
210
|
+
- {file_path_2}
|
|
211
|
+
- ...
|
|
212
|
+
- **Summary**: Backend module {module_name} implemented with {X} tasks completed
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### Failure Report
|
|
216
|
+
|
|
217
|
+
If the skill fails at any step:
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
## Task Completion Report
|
|
221
|
+
- **Status**: FAILED
|
|
222
|
+
- **Task ID**: {task_id from dispatch context}
|
|
223
|
+
- **Platform**: {platform_id}
|
|
224
|
+
- **Module**: {module_name}
|
|
225
|
+
- **Output Files**: {list of partially generated files, or "None"}
|
|
226
|
+
- **Summary**: {one-line description of what was attempted}
|
|
227
|
+
- **Error**: {detailed error description}
|
|
228
|
+
- **Error Category**: {DEPENDENCY_MISSING | BUILD_FAILURE | VALIDATION_ERROR | RUNTIME_ERROR | BLOCKED}
|
|
229
|
+
- **Partial Outputs**: {list of files that were generated before failure, or "None"}
|
|
230
|
+
- **Recovery Hint**: {suggestion for how to resolve and retry}
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**Error Category Definitions**:
|
|
234
|
+
- `DEPENDENCY_MISSING`: Required runtime/dependency not available
|
|
235
|
+
- `BUILD_FAILURE`: Compilation error, maven/gradle build failure
|
|
236
|
+
- `VALIDATION_ERROR`: Checkstyle, test failure, or validation error
|
|
237
|
+
- `RUNTIME_ERROR`: Service startup failure, runtime exception
|
|
238
|
+
- `BLOCKED`: Blocked by external dependency or unresolved design issue
|
|
239
|
+
|
|
194
240
|
# Key Rules
|
|
195
241
|
|
|
196
242
|
| Rule | Description |
|
|
@@ -26,12 +26,13 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
**Input**: Single module design document path `design_doc_path` (provided by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
32
|
-
2. **
|
|
33
|
-
3. **
|
|
34
|
-
4. **Techs Knowledge** (paths from agent context):
|
|
33
|
+
1. **Module design document**: `design_doc_path` (single module design document)
|
|
34
|
+
2. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/[feature-name]-api-contract.md`
|
|
35
|
+
3. **Techs Knowledge** (paths from agent context):
|
|
35
36
|
- `speccrew-workspace/knowledges/techs/{platform_id}/tech-stack.md`
|
|
36
37
|
- `speccrew-workspace/knowledges/techs/{platform_id}/architecture.md`
|
|
37
38
|
- `speccrew-workspace/knowledges/techs/{platform_id}/conventions-design.md`
|
|
@@ -245,6 +246,50 @@ Technical Debt Items: {count}
|
|
|
245
246
|
Task Record: speccrew-workspace/iterations/{number}-{type}-{name}/04.development/{platform_id}/[feature-name]-task.md
|
|
246
247
|
```
|
|
247
248
|
|
|
249
|
+
## Task Completion Report
|
|
250
|
+
|
|
251
|
+
At the end of Step 8 (or if the skill fails at any point), output a structured Task Completion Report:
|
|
252
|
+
|
|
253
|
+
### Success Report
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
## Task Completion Report
|
|
257
|
+
- **Status**: SUCCESS
|
|
258
|
+
- **Task ID**: {task_id from dispatch context}
|
|
259
|
+
- **Platform**: {platform_id}
|
|
260
|
+
- **Module**: {module_name}
|
|
261
|
+
- **Output Files**:
|
|
262
|
+
- {file_path_1}
|
|
263
|
+
- {file_path_2}
|
|
264
|
+
- ...
|
|
265
|
+
- **Summary**: Desktop module {module_name} implemented with {X} tasks completed
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### Failure Report
|
|
269
|
+
|
|
270
|
+
If the skill fails at any step:
|
|
271
|
+
|
|
272
|
+
```
|
|
273
|
+
## Task Completion Report
|
|
274
|
+
- **Status**: FAILED
|
|
275
|
+
- **Task ID**: {task_id from dispatch context}
|
|
276
|
+
- **Platform**: {platform_id}
|
|
277
|
+
- **Module**: {module_name}
|
|
278
|
+
- **Output Files**: {list of partially generated files, or "None"}
|
|
279
|
+
- **Summary**: {one-line description of what was attempted}
|
|
280
|
+
- **Error**: {detailed error description}
|
|
281
|
+
- **Error Category**: {DEPENDENCY_MISSING | BUILD_FAILURE | VALIDATION_ERROR | RUNTIME_ERROR | BLOCKED}
|
|
282
|
+
- **Partial Outputs**: {list of files that were generated before failure, or "None"}
|
|
283
|
+
- **Recovery Hint**: {suggestion for how to resolve and retry}
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
**Error Category Definitions**:
|
|
287
|
+
- `DEPENDENCY_MISSING`: Required Node.js/npm or Rust dependency not available
|
|
288
|
+
- `BUILD_FAILURE`: Electron/Tauri build error, native compilation failure
|
|
289
|
+
- `VALIDATION_ERROR`: ESLint, TypeScript type check, Rust clippy, or test failure
|
|
290
|
+
- `RUNTIME_ERROR`: App crash on launch, runtime exception, IPC communication failure
|
|
291
|
+
- `BLOCKED`: Blocked by external dependency, native module issue, or unresolved design issue
|
|
292
|
+
|
|
248
293
|
**Ask user to confirm:**
|
|
249
294
|
1. Are all IPC channels working correctly?
|
|
250
295
|
2. Is context isolation properly configured?
|
|
@@ -267,11 +312,11 @@ Task Record: speccrew-workspace/iterations/{number}-{type}-{name}/04.development
|
|
|
267
312
|
|
|
268
313
|
# Checklist
|
|
269
314
|
|
|
270
|
-
- [ ]
|
|
315
|
+
- [ ] Design document loaded before implementation (single module design_doc_path)
|
|
271
316
|
- [ ] Existing code structure analyzed via Glob/Grep
|
|
272
317
|
- [ ] Task record created with complete checklist
|
|
273
318
|
- [ ] Checkpoint A passed: task extraction confirmed with user
|
|
274
|
-
- [ ]
|
|
319
|
+
- [ ] All modules in the design document covered in task list
|
|
275
320
|
- [ ] All IPC channels from design implemented
|
|
276
321
|
- [ ] Context isolation enabled for all windows
|
|
277
322
|
- [ ] Preload scripts expose only necessary APIs
|
|
@@ -26,10 +26,12 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
Input: `design_doc_path` — Path to a single module design document (passed by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
33
|
1. **Platform INDEX**: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/INDEX.md`
|
|
32
|
-
2. **Module
|
|
34
|
+
2. **Module Design Document**: The `design_doc_path` provided (single module's design)
|
|
33
35
|
3. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/*-api-contract.md`
|
|
34
36
|
4. **Task record template**: `speccrew-dev-frontend/templates/TASK-RECORD-TEMPLATE.md`
|
|
35
37
|
|
|
@@ -49,9 +51,9 @@ Read platform-specific techs knowledge:
|
|
|
49
51
|
|
|
50
52
|
From design documents, extract ALL implementation items into a task checklist.
|
|
51
53
|
|
|
52
|
-
### 3.1 Parse Module
|
|
54
|
+
### 3.1 Parse Module Design
|
|
53
55
|
|
|
54
|
-
|
|
56
|
+
From the module design document, identify:
|
|
55
57
|
|
|
56
58
|
| Item Type | Markers | Example |
|
|
57
59
|
|-----------|---------|---------|
|
|
@@ -210,6 +212,50 @@ Tech Debt: {count}
|
|
|
210
212
|
Task Record: speccrew-workspace/iterations/{number}-{type}-{name}/04.development/{platform_id}/{feature-name}-tasks.md
|
|
211
213
|
```
|
|
212
214
|
|
|
215
|
+
## Task Completion Report
|
|
216
|
+
|
|
217
|
+
At the end of Step 6 (or if the skill fails at any point), output a structured Task Completion Report:
|
|
218
|
+
|
|
219
|
+
### Success Report
|
|
220
|
+
|
|
221
|
+
```
|
|
222
|
+
## Task Completion Report
|
|
223
|
+
- **Status**: SUCCESS
|
|
224
|
+
- **Task ID**: {task_id from dispatch context}
|
|
225
|
+
- **Platform**: {platform_id}
|
|
226
|
+
- **Module**: {module_name}
|
|
227
|
+
- **Output Files**:
|
|
228
|
+
- {file_path_1}
|
|
229
|
+
- {file_path_2}
|
|
230
|
+
- ...
|
|
231
|
+
- **Summary**: Frontend module {module_name} implemented with {X} tasks completed
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Failure Report
|
|
235
|
+
|
|
236
|
+
If the skill fails at any step:
|
|
237
|
+
|
|
238
|
+
```
|
|
239
|
+
## Task Completion Report
|
|
240
|
+
- **Status**: FAILED
|
|
241
|
+
- **Task ID**: {task_id from dispatch context}
|
|
242
|
+
- **Platform**: {platform_id}
|
|
243
|
+
- **Module**: {module_name}
|
|
244
|
+
- **Output Files**: {list of partially generated files, or "None"}
|
|
245
|
+
- **Summary**: {one-line description of what was attempted}
|
|
246
|
+
- **Error**: {detailed error description}
|
|
247
|
+
- **Error Category**: {DEPENDENCY_MISSING | BUILD_FAILURE | VALIDATION_ERROR | RUNTIME_ERROR | BLOCKED}
|
|
248
|
+
- **Partial Outputs**: {list of files that were generated before failure, or "None"}
|
|
249
|
+
- **Recovery Hint**: {suggestion for how to resolve and retry}
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
**Error Category Definitions**:
|
|
253
|
+
- `DEPENDENCY_MISSING`: Required Node.js/npm dependency not available
|
|
254
|
+
- `BUILD_FAILURE`: Vite/Webpack build error, compilation failure
|
|
255
|
+
- `VALIDATION_ERROR`: ESLint, TypeScript type check, or test failure
|
|
256
|
+
- `RUNTIME_ERROR`: Runtime exception in browser/dev server
|
|
257
|
+
- `BLOCKED`: Blocked by external dependency or unresolved design issue
|
|
258
|
+
|
|
213
259
|
# Key Rules
|
|
214
260
|
|
|
215
261
|
| Rule | Description |
|
|
@@ -26,12 +26,13 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
**Input**: Single module design document path `design_doc_path` (provided by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
32
|
-
2. **
|
|
33
|
-
3. **
|
|
34
|
-
4. **Task record template**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
33
|
+
1. **Module design document**: `design_doc_path` (single module design document)
|
|
34
|
+
2. **API Contract**: `speccrew-workspace/iterations/{iteration}/02.feature-design/{feature-name}-api-contract.md`
|
|
35
|
+
3. **Task record template**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
35
36
|
|
|
36
37
|
## Step 2: Read Techs Knowledge
|
|
37
38
|
|
|
@@ -199,6 +200,50 @@ Mobile Development Complete:
|
|
|
199
200
|
Ready for QA Agent acceptance testing.
|
|
200
201
|
```
|
|
201
202
|
|
|
203
|
+
## Task Completion Report
|
|
204
|
+
|
|
205
|
+
At the end of Step 8 (or if the skill fails at any point), output a structured Task Completion Report:
|
|
206
|
+
|
|
207
|
+
### Success Report
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
## Task Completion Report
|
|
211
|
+
- **Status**: SUCCESS
|
|
212
|
+
- **Task ID**: {task_id from dispatch context}
|
|
213
|
+
- **Platform**: {platform_id}
|
|
214
|
+
- **Module**: {module_name}
|
|
215
|
+
- **Output Files**:
|
|
216
|
+
- {file_path_1}
|
|
217
|
+
- {file_path_2}
|
|
218
|
+
- ...
|
|
219
|
+
- **Summary**: Mobile module {module_name} implemented with {X} tasks completed
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### Failure Report
|
|
223
|
+
|
|
224
|
+
If the skill fails at any step:
|
|
225
|
+
|
|
226
|
+
```
|
|
227
|
+
## Task Completion Report
|
|
228
|
+
- **Status**: FAILED
|
|
229
|
+
- **Task ID**: {task_id from dispatch context}
|
|
230
|
+
- **Platform**: {platform_id}
|
|
231
|
+
- **Module**: {module_name}
|
|
232
|
+
- **Output Files**: {list of partially generated files, or "None"}
|
|
233
|
+
- **Summary**: {one-line description of what was attempted}
|
|
234
|
+
- **Error**: {detailed error description}
|
|
235
|
+
- **Error Category**: {DEPENDENCY_MISSING | BUILD_FAILURE | VALIDATION_ERROR | RUNTIME_ERROR | BLOCKED}
|
|
236
|
+
- **Partial Outputs**: {list of files that were generated before failure, or "None"}
|
|
237
|
+
- **Recovery Hint**: {suggestion for how to resolve and retry}
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
**Error Category Definitions**:
|
|
241
|
+
- `DEPENDENCY_MISSING`: Required Flutter/Dart or npm dependency not available
|
|
242
|
+
- `BUILD_FAILURE`: Flutter build error, Gradle/Xcode compilation failure
|
|
243
|
+
- `VALIDATION_ERROR`: Static analysis error (`flutter analyze`), test failure
|
|
244
|
+
- `RUNTIME_ERROR`: App crash on simulator/emulator, runtime exception
|
|
245
|
+
- `BLOCKED`: Blocked by external dependency, native module issue, or unresolved design issue
|
|
246
|
+
|
|
202
247
|
# Key Rules
|
|
203
248
|
|
|
204
249
|
| Rule | Description |
|
|
@@ -213,7 +258,7 @@ Ready for QA Agent acceptance testing.
|
|
|
213
258
|
|
|
214
259
|
# Checklist
|
|
215
260
|
|
|
216
|
-
- [ ] Design
|
|
261
|
+
- [ ] Design document loaded (single module design_doc_path)
|
|
217
262
|
- [ ] Techs knowledge loaded (conventions-dev, architecture, tech-stack)
|
|
218
263
|
- [ ] Task record file created
|
|
219
264
|
- [ ] All design tasks extracted to checklist
|