speccrew 0.7.65 → 0.7.66

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.
@@ -8,10 +8,99 @@
8
8
  <field name="current_iteration" required="false" type="string" desc="Current active iteration identifier"/>
9
9
  </block>
10
10
 
11
+ <!-- ========== Workflow Loading Announcement ========== -->
12
+ <sequence name="工作流加载播报">
13
+ <block type="event" id="LOAD-ANNOUNCE" action="log" desc="Workflow loading announcement">
14
+ <field name="message">🔄 正在加载系统设计工作流...
15
+
16
+ 阶段流程图:
17
+ Phase 0: Stage Gate &amp; Resume (阶段门控与恢复)
18
+ ├── Step 0.1: 验证上游阶段完成状态
19
+ ├── Step 0.2: 检查恢复状态
20
+ ├── Step 0.3: 检查调度进度恢复
21
+ └── Step 0.4: 同步恢复(如有需要)
22
+ Phase 0.5: IDE Directory Detection (IDE目录检测)
23
+ └── Step 0.5.1: 检测IDE目录和技能可用性
24
+ Phase 1: Preparation (准备阶段)
25
+ ├── Step 1.1: 加载Feature Registry
26
+ ├── Step 1.2: 验证文件存在性
27
+ ├── Step 1.4: 展示设计范围摘要
28
+ └── Step 1.5: 验证准备完成
29
+ Phase 2: Resource Verification (资源验证)
30
+ ├── Step 2.1: 验证技术知识库
31
+ └── Step 2.2: 准备调度参数
32
+ Phase 3: Framework Evaluation (框架评估) ⛔ HARD STOP
33
+ ├── Step 3.1: 派发Worker执行框架评估
34
+ ├── Step 3.2: 等待Worker完成
35
+ ├── Step 3.3: 验证输出
36
+ └── Step 3.5: 用户确认 ⛔
37
+ Phase 4: Design Overview (设计概览) ⛔ HARD STOP
38
+ ├── Step 4.1: 派发Worker生成DESIGN-OVERVIEW.md
39
+ ├── Step 4.2: 等待Worker完成
40
+ ├── Step 4.3: 验证输出
41
+ └── Step 4.5: 用户确认 ⛔
42
+ Phase 5: Platform Dispatch (平台调度)
43
+ ├── Step 5.1: 确定平台类型
44
+ ├── Step 5.2: 初始化调度进度
45
+ ├── Step 5.3-5.4: 批量派发Worker
46
+ ├── Step 5.5: 生成平台INDEX.md
47
+ └── Step 5.6: 错误处理
48
+ Phase 6: Joint Confirmation (联合确认) ⛔ HARD STOP
49
+ ├── Step 6.1: 展示设计文档摘要
50
+ ├── Step 6.2: 用户确认 ⛔
51
+ └── Step 6.3: 更新检查点</field>
52
+ </block>
53
+
54
+ <block type="rule" id="R-EXEC-PROTOCOL" level="mandatory" desc="Mandatory Execution Protocol">
55
+ <field name="text">Execute ALL blocks in document order sequentially without unnecessary pausing</field>
56
+ <field name="text">ONLY stop at explicit confirm blocks (HARD STOP checkpoints) — no other interruptions</field>
57
+ <field name="text">Action-to-tool mapping: run-skill → Skill tool | run-script → Terminal tool | dispatch-to-worker → Agent tool (create speccrew-task-worker) | read-file → Read tool | log → Output directly | confirm → Present and wait</field>
58
+ </block>
59
+
60
+ <block type="rule" id="R-CONTINUOUS" level="forbidden" desc="Continuous Execution Enforcement">
61
+ <field name="text">FORBIDDEN: Asking "Should I continue?" or "Should I proceed?" after completing a subtask</field>
62
+ <field name="text">FORBIDDEN: Suggesting "Let me split this into batches" or "Let's do this in parts"</field>
63
+ <field name="text">FORBIDDEN: Pausing to list what you plan to do next — just do it</field>
64
+ <field name="text">FORBIDDEN: Asking for confirmation before generating output files</field>
65
+ <field name="text">FORBIDDEN: Warning about "large number of files" — proceed with generation</field>
66
+ <field name="text">FORBIDDEN: Offering "Should I proceed with the remaining items?"</field>
67
+ </block>
68
+
69
+ <block type="rule" id="R-PAUSE-CASES" level="mandatory" desc="When to Pause (ONLY these cases)">
70
+ <field name="text">CHECKPOINT gates defined in workflow (user confirmation required by design)</field>
71
+ <field name="text">Ambiguous requirements that genuinely need clarification</field>
72
+ <field name="text">Unrecoverable errors that prevent further progress</field>
73
+ <field name="text">Security-sensitive operations (e.g., deleting existing files)</field>
74
+ </block>
75
+
76
+ <block type="rule" id="R-HARD-STOPS" level="mandatory" desc="Consolidated HARD STOP Checkpoints">
77
+ <field name="text">⛔ Phase 3.5: Framework evaluation confirmation — user MUST approve framework decisions before Phase 4</field>
78
+ <field name="text">⛔ Phase 4.5: Design overview confirmation — user MUST approve DESIGN-OVERVIEW.md before Phase 5 dispatch</field>
79
+ <field name="text">⛔ Phase 6.1: Joint design confirmation — user MUST approve all designs</field>
80
+ <field name="text">DO NOT proceed past these checkpoints without explicit user confirmation</field>
81
+ </block>
82
+
83
+ <block type="rule" id="R-ORCHESTRATOR" level="mandatory" desc="Orchestrator Execution Rules">
84
+ <field name="text">This Agent is an orchestrator ONLY — MUST NOT write design documents directly</field>
85
+ <field name="text">Wait for worker completion before verifying output — do not proceed until worker returns</field>
86
+ <field name="text">If worker dispatch fails, ABORT — do NOT fallback to inline execution</field>
87
+ <field name="text">Pass skill_path explicitly to worker — worker cannot find skills via glob on first run</field>
88
+ <field name="text">DO NOT create scripts for batch analysis — Workers handle this via their own skill</field>
89
+ </block>
90
+ </sequence>
91
+
11
92
  <!-- ========== Phase 0: Stage Gate & Resume ========== -->
12
93
  <sequence name="Phase 0: Stage Gate &amp; Resume">
13
-
94
+ <block type="event" id="P0-ANNOUNCE" action="log" desc="Phase 0 announcement">
95
+ <field name="message">📍 Phase 0: Stage Gate &amp; Resume (阶段门控与恢复)
96
+ ├── Step 0.1: 验证上游阶段完成状态
97
+ ├── Step 0.2: 检查恢复状态
98
+ ├── Step 0.3: 检查调度进度恢复
99
+ └── Step 0.4: 同步恢复(如有需要)</field>
100
+ </block>
101
+
14
102
  <!-- Step 0.1: Verify Upstream Completion -->
103
+ <block type="event" id="P0-S1-LOG" action="log" desc="Step 0.1: 验证上游阶段完成状态"/>
15
104
  <block type="task" id="P0-B1" action="run-script" status="pending"
16
105
  desc="Read WORKFLOW-PROGRESS.json overview">
17
106
  <field name="command">node ${update_progress_script} read --file ${iterations_dir}/${current_iteration}/WORKFLOW-PROGRESS.json --overview</field>
@@ -34,6 +123,7 @@
34
123
  </block>
35
124
 
36
125
  <!-- Step 0.2: Check Resume State -->
126
+ <block type="event" id="P0-S2-LOG" action="log" desc="Step 0.2: 检查恢复状态"/>
37
127
  <block type="task" id="P0-B3" action="run-script" status="pending"
38
128
  desc="Read checkpoints for resume state">
39
129
  <field name="command">node ${update_progress_script} read --file ${iterations_dir}/${current_iteration}/03.system-design/.checkpoints.json --checkpoints</field>
@@ -41,6 +131,7 @@
41
131
  </block>
42
132
 
43
133
  <!-- Step 0.3: Check Dispatch Resume -->
134
+ <block type="event" id="P0-S3-LOG" action="log" desc="Step 0.3: 检查调度进度恢复"/>
44
135
  <block type="task" id="P0-B4" action="run-script" status="pending"
45
136
  desc="Read dispatch progress summary">
46
137
  <field name="command">node ${update_progress_script} read --file ${iterations_dir}/${current_iteration}/03.system-design/DISPATCH-PROGRESS.json --summary</field>
@@ -59,6 +150,12 @@
59
150
 
60
151
  <!-- ========== Phase 0.5: IDE Directory Detection ========== -->
61
152
  <sequence name="Phase 0.5: IDE Directory Detection">
153
+ <block type="event" id="P05-ANNOUNCE" action="log" desc="Phase 0.5 announcement">
154
+ <field name="message">📍 Phase 0.5: IDE Directory Detection (IDE目录检测)
155
+ └── Step 0.5.1: 检测IDE目录和技能可用性</field>
156
+ </block>
157
+
158
+ <block type="event" id="P05-S1-LOG" action="log" desc="Step 0.5.1: 检测IDE目录和技能"/>
62
159
  <block type="task" id="P05-B1" action="read-file" status="pending"
63
160
  desc="Detect IDE directory and skills">
64
161
  <field name="path">${workspace_path}/.qoder/skills</field>
@@ -88,6 +185,14 @@
88
185
 
89
186
  <!-- ========== Phase 1: Preparation ========== -->
90
187
  <sequence name="Phase 1: Preparation">
188
+ <block type="event" id="P1-ANNOUNCE" action="log" desc="Phase 1 announcement">
189
+ <field name="message">📍 Phase 1: Preparation (准备阶段)
190
+ ├── Step 1.1: 加载Feature Registry
191
+ ├── Step 1.2: 验证文件存在性
192
+ ├── Step 1.4: 展示设计范围摘要
193
+ └── Step 1.5: 验证准备完成</field>
194
+ </block>
195
+
91
196
  <block type="rule" id="P1-R1" level="forbidden" desc="Phase 1 Mandatory Constraints">
92
197
  <field name="text">DO NOT use Glob to explore file system</field>
93
198
  <field name="text">DO NOT parse filenames to discover Features</field>
@@ -95,6 +200,7 @@
95
200
  </block>
96
201
 
97
202
  <!-- Step 1.1: Load Feature Registry -->
203
+ <block type="event" id="P1-S1-LOG" action="log" desc="Step 1.1: 加载Feature Registry"/>
98
204
  <block type="task" id="P1-B1" action="read-file" status="pending"
99
205
  desc="Load Feature Registry from .prd-feature-list.json">
100
206
  <field name="path">${iterations_dir}/${current_iteration}/01.product-requirement/.prd-feature-list.json</field>
@@ -102,6 +208,7 @@
102
208
  </block>
103
209
 
104
210
  <!-- Step 1.2: Verify File Existence -->
211
+ <block type="event" id="P1-S2-LOG" action="log" desc="Step 1.2: 验证文件存在性"/>
105
212
  <block type="gateway" id="P1-G1" mode="exclusive" desc="Verify Feature Spec and API Contract files exist">
106
213
  <branch test="${feature_registry.files} all_exist" name="All Files Exist">
107
214
  <block type="event" id="P1-E1" action="log" desc="Report files verified"/>
@@ -115,12 +222,14 @@
115
222
  </block>
116
223
 
117
224
  <!-- Step 1.4: Present Design Scope -->
225
+ <block type="event" id="P1-S4-LOG" action="log" desc="Step 1.4: 展示设计范围摘要"/>
118
226
  <block type="event" id="P1-E4" action="log" desc="Display Design Scope Summary">
119
227
  <field name="template">design-scope-summary</field>
120
228
  <field name="data" value="${feature_registry}"/>
121
229
  </block>
122
230
 
123
231
  <!-- Step 1.5: Preparation Validation -->
232
+ <block type="event" id="P1-S5-LOG" action="log" desc="Step 1.5: 验证准备完成"/>
124
233
  <block type="checkpoint" id="P1-CP1" name="preparation_validated" desc="Preparation validation gate">
125
234
  <field name="conditions">feature_registry_exists, files_verified, scope_presented</field>
126
235
  </block>
@@ -128,6 +237,12 @@
128
237
 
129
238
  <!-- ========== Phase 2: Resource Verification ========== -->
130
239
  <sequence name="Phase 2: Resource Verification">
240
+ <block type="event" id="P2-ANNOUNCE" action="log" desc="Phase 2 announcement">
241
+ <field name="message">📍 Phase 2: Resource Verification (资源验证)
242
+ ├── Step 2.1: 验证技术知识库
243
+ └── Step 2.2: 准备调度参数</field>
244
+ </block>
245
+
131
246
  <block type="rule" id="P2-R1" level="forbidden" desc="Phase 2 Mandatory Constraints">
132
247
  <field name="text">DO NOT read Feature Spec files — Skills will read them when dispatched</field>
133
248
  <field name="text">DO NOT read API Contract files — Skills will read them when dispatched</field>
@@ -136,6 +251,7 @@
136
251
  </block>
137
252
 
138
253
  <!-- Step 2.1: Verify Techs Knowledge Base -->
254
+ <block type="event" id="P2-S1-LOG" action="log" desc="Step 2.1: 验证技术知识库"/>
139
255
  <block type="task" id="P2-B1" action="read-file" status="pending"
140
256
  desc="Check techs-manifest.json exists">
141
257
  <field name="path">${workspace_path}/knowledges/techs/techs-manifest.json</field>
@@ -155,6 +271,7 @@
155
271
  </block>
156
272
 
157
273
  <!-- Step 2.2: Prepare Dispatch Parameters -->
274
+ <block type="event" id="P2-S2-LOG" action="log" desc="Step 2.2: 准备调度参数"/>
158
275
  <block type="event" id="P2-E4" action="log" desc="Build dispatch parameter template">
159
276
  <field name="template">build-dispatch-params</field>
160
277
  <field name="output" var="dispatch_params"/>
@@ -163,6 +280,14 @@
163
280
 
164
281
  <!-- ========== Phase 3: Framework Evaluation (HARD STOP) ========== -->
165
282
  <sequence name="Phase 3: Framework Evaluation">
283
+ <block type="event" id="P3-ANNOUNCE" action="log" desc="Phase 3 announcement">
284
+ <field name="message">📍 Phase 3: Framework Evaluation (框架评估) ⛔ HARD STOP
285
+ ├── Step 3.1: 派发Worker执行框架评估
286
+ ├── Step 3.2: 等待Worker完成
287
+ ├── Step 3.3: 验证输出
288
+ └── Step 3.5: 用户确认 ⛔</field>
289
+ </block>
290
+
166
291
  <block type="rule" id="P3-R0" level="forbidden" desc="Phase 3 Worker Dispatch Enforcement">
167
292
  <field name="text">FORBIDDEN: Do NOT inline-call or directly invoke speccrew-sd-framework-evaluate skill</field>
168
293
  <field name="text">FORBIDDEN: Do NOT create scripts or read feature files yourself for framework evaluation</field>
@@ -178,6 +303,7 @@
178
303
  </block>
179
304
 
180
305
  <!-- Step 3.1: Dispatch Worker Agent for Framework Evaluation -->
306
+ <block type="event" id="P3-S1-LOG" action="log" desc="Step 3.1: 派发Worker执行框架评估"/>
181
307
  <block type="task" id="P3-B1" action="dispatch-to-worker" status="pending"
182
308
  desc="Dispatch single worker agent for framework evaluation. Use /speccrew-task-worker agent, NOT Skill tool">
183
309
  <field name="agent">speccrew-task-worker</field>
@@ -196,12 +322,14 @@
196
322
  </block>
197
323
 
198
324
  <!-- Step 3.2: Wait for Worker Completion -->
325
+ <block type="event" id="P3-S2-LOG" action="log" desc="Step 3.2: 等待框架评估Worker完成"/>
199
326
  <block type="gateway" id="P3-GW1" mode="wait" desc="Wait for framework evaluation worker to complete">
200
327
  <field name="wait_for">P3-B1</field>
201
328
  <field name="timeout">600</field>
202
329
  </block>
203
330
 
204
331
  <!-- Step 3.3: Validate Worker Output -->
332
+ <block type="event" id="P3-S3-LOG" action="log" desc="Step 3.3: 验证框架评估输出"/>
205
333
  <block type="task" id="P3-B2" action="read-file" status="pending"
206
334
  desc="Verify framework-evaluation.md was generated">
207
335
  <field name="path">${iterations_dir}/${current_iteration}/03.system-design/framework-evaluation.md</field>
@@ -222,6 +350,7 @@
222
350
  </block>
223
351
 
224
352
  <!-- Step 3.5: User Confirmation (HARD STOP) -->
353
+ <block type="event" id="P3-S5-LOG" action="log" desc="Step 3.5: ⛔ 用户确认框架评估结果"/>
225
354
  <block type="event" id="P3-E4" action="confirm" desc="Request user confirmation for framework decisions">
226
355
  <field name="prompt">🛑 FRAMEWORK EVALUATION — AWAITING CONFIRMATION. Do you approve these framework decisions? (确认/修改/取消)</field>
227
356
  <field name="template">framework-evaluation-summary</field>
@@ -247,6 +376,14 @@
247
376
 
248
377
  <!-- ========== Phase 4: Generate DESIGN-OVERVIEW.md (WORKER-DISPATCH) ========== -->
249
378
  <sequence name="Phase 4: Generate DESIGN-OVERVIEW.md (WORKER-DISPATCH)">
379
+ <block type="event" id="P4-ANNOUNCE" action="log" desc="Phase 4 announcement">
380
+ <field name="message">📍 Phase 4: Design Overview (设计概览) ⛔ HARD STOP
381
+ ├── Step 4.1: 派发Worker生成DESIGN-OVERVIEW.md
382
+ ├── Step 4.2: 等待Worker完成
383
+ ├── Step 4.3: 验证输出
384
+ └── Step 4.5: 用户确认 ⛔</field>
385
+ </block>
386
+
250
387
  <block type="rule" id="P4-R0" level="forbidden" desc="Phase 4 Worker Dispatch Enforcement">
251
388
  <field name="text">FORBIDDEN: Do NOT inline-generate DESIGN-OVERVIEW.md yourself</field>
252
389
  <field name="text">MANDATORY: DESIGN-OVERVIEW.md generation MUST be delegated to worker agent via block P4-B1</field>
@@ -254,6 +391,7 @@
254
391
  <field name="text">If worker dispatch fails, ABORT — do NOT fallback to inline generation</field>
255
392
  </block>
256
393
 
394
+ <block type="event" id="P4-S1-LOG" action="log" desc="Step 4.1: 派发Worker生成DESIGN-OVERVIEW.md"/>
257
395
  <block type="task" id="P4-B1" action="dispatch-to-worker" status="pending"
258
396
  desc="Dispatch single worker agent for design overview generation. Use Agent tool, NOT Skill tool.">
259
397
  <field name="agent">speccrew-task-worker</field>
@@ -270,11 +408,13 @@
270
408
  <field name="note">Worker receives ALL context above and generates DESIGN-OVERVIEW.md. Orchestrator MUST NOT read feature files or generate this document itself.</field>
271
409
  </block>
272
410
 
411
+ <block type="event" id="P4-S2-LOG" action="log" desc="Step 4.2: 等待设计概览Worker完成"/>
273
412
  <block type="gateway" id="P4-GW1" mode="wait" desc="Wait for design overview worker to complete">
274
413
  <field name="wait_for">P4-B1</field>
275
414
  <field name="timeout">300</field>
276
415
  </block>
277
416
 
417
+ <block type="event" id="P4-S3-LOG" action="log" desc="Step 4.3: 验证DESIGN-OVERVIEW.md输出"/>
278
418
  <block type="task" id="P4-B2" action="read-file" status="pending"
279
419
  desc="Verify DESIGN-OVERVIEW.md was generated by worker">
280
420
  <field name="path">${iterations_dir}/${current_iteration}/03.system-design/DESIGN-OVERVIEW.md</field>
@@ -287,6 +427,7 @@
287
427
  </block>
288
428
 
289
429
  <!-- Phase 4.5: HARD STOP — User must confirm DESIGN-OVERVIEW.md -->
430
+ <block type="event" id="P4-S5-LOG" action="log" desc="Step 4.5: ⛔ 用户确认DESIGN-OVERVIEW.md"/>
290
431
  <block type="rule" id="P4-HS1" level="mandatory" desc="HARD STOP — DESIGN-OVERVIEW.md confirmation required">
291
432
  <field name="text">⚠️ HARD STOP — WAIT FOR USER CONFIRMATION</field>
292
433
  <field name="text">Present DESIGN-OVERVIEW.md summary to user (feature count, platform count, matrix entries, key sections)</field>
@@ -298,6 +439,15 @@
298
439
 
299
440
  <!-- ========== Phase 5: Dispatch Per-Platform Skills ========== -->
300
441
  <sequence name="Phase 5: Dispatch Per-Platform Skills">
442
+ <block type="event" id="P5-ANNOUNCE" action="log" desc="Phase 5 announcement">
443
+ <field name="message">📍 Phase 5: Platform Dispatch (平台调度)
444
+ ├── Step 5.1: 确定平台类型
445
+ ├── Step 5.2: 初始化调度进度
446
+ ├── Step 5.3-5.4: 批量派发Worker (每批次最多6个并行)
447
+ ├── Step 5.5: 生成平台INDEX.md (Worker派发)
448
+ └── Step 5.6: 错误处理</field>
449
+ </block>
450
+
301
451
  <block type="rule" id="P5-R1" level="mandatory" desc="Worker Enforcement Rules">
302
452
  <field name="text">This Agent is an orchestrator ONLY — MUST NOT write design documents directly</field>
303
453
  <field name="text">When Features ≥ 2 OR Platforms ≥ 2: MUST dispatch speccrew-task-worker agents via Agent tool</field>
@@ -306,18 +456,21 @@
306
456
  </block>
307
457
 
308
458
  <!-- Step 5.1: Determine Platform Types -->
459
+ <block type="event" id="P5-S1-LOG" action="log" desc="Step 5.1: 确定平台类型映射"/>
309
460
  <block type="event" id="P5-E1" action="log" desc="Map platform types to skills">
310
461
  <field name="template">platform-skill-mapping</field>
311
462
  <field name="output" var="platform_skill_map"/>
312
463
  </block>
313
464
 
314
465
  <!-- Step 5.2: Initialize DISPATCH-PROGRESS.json -->
466
+ <block type="event" id="P5-S2-LOG" action="log" desc="Step 5.2: 初始化调度进度"/>
315
467
  <block type="task" id="P5-B1" action="run-script" status="pending"
316
468
  desc="Initialize dispatch progress with task list">
317
469
  <field name="command">node ${update_progress_script} init --file ${iterations_dir}/${current_iteration}/03.system-design/DISPATCH-PROGRESS.json --stage 03_system_design --tasks-file ${iterations_dir}/${current_iteration}/03.system-design/.tasks-temp.json</field>
318
470
  </block>
319
471
 
320
472
  <!-- Step 5.3/5.4: Dispatch Decision -->
473
+ <block type="event" id="P5-S3-LOG" action="log" desc="Step 5.3: 确定调度模式(单平台直接/多平台Worker派发)"/>
321
474
  <block type="gateway" id="P5-G1" mode="exclusive" desc="Determine dispatch mode">
322
475
  <branch test="${feature_count} == 1 AND ${platform_count} == 1" name="Single Feature Single Platform">
323
476
  <!-- Direct skill invocation allowed -->
@@ -353,6 +506,7 @@
353
506
  </block>
354
507
 
355
508
  <!-- Compute batch plan from dispatch_tasks_matrix -->
509
+ <block type="event" id="P5-S4-LOG" action="log" desc="Step 5.4: 计算批量调度计划"/>
356
510
  <block type="task" id="P5-B4-BATCH" action="compute-batches" status="pending"
357
511
  desc="Calculate batch plan from Feature×Platform matrix">
358
512
  <field name="items" value="${dispatch_tasks_matrix}"/>
@@ -429,6 +583,7 @@
429
583
  <!-- Use when orchestrator needs to batch-update multiple task statuses at once -->
430
584
 
431
585
  <!-- Phase 5.5: Generate Platform INDEX.md (WORKER-DISPATCH) -->
586
+ <block type="event" id="P5-S5-LOG" action="log" desc="Step 5.5: 派发Worker生成各平台INDEX.md"/>
432
587
  <block type="rule" id="P5-IDX-R1" level="mandatory" desc="INDEX.md Generation via Worker Dispatch">
433
588
  <field name="text">
434
589
  After ALL Feature×Platform workers complete, dispatch ONE worker per platform to generate INDEX.md.
@@ -460,6 +615,7 @@
460
615
  <block type="gateway" id="P5-IDX-GW1" mode="wait" desc="Wait for all INDEX.md workers to complete"/>
461
616
 
462
617
  <!-- Step 5.5: Read final dispatch progress -->
618
+ <block type="event" id="P5-S6-LOG" action="log" desc="Step 5.6: 读取最终调度进度并检查错误"/>
463
619
  <block type="task" id="P5-B5" action="run-script" status="pending"
464
620
  desc="Read final dispatch progress summary">
465
621
  <field name="command">node "${update_progress_script}" read --file "${iterations_dir}/${current_iteration}/03.system-design/DISPATCH-PROGRESS.json" --summary</field>
@@ -482,13 +638,22 @@
482
638
 
483
639
  <!-- ========== Phase 6: Joint Confirmation (HARD STOP) ========== -->
484
640
  <sequence name="Phase 6: Joint Confirmation">
641
+ <block type="event" id="P6-ANNOUNCE" action="log" desc="Phase 6 announcement">
642
+ <field name="message">📍 Phase 6: Joint Confirmation (联合确认) ⛔ HARD STOP
643
+ ├── Step 6.1: 展示设计文档摘要
644
+ ├── Step 6.2: 用户确认 ⛔
645
+ └── Step 6.3: 更新检查点</field>
646
+ </block>
647
+
485
648
  <!-- Step 6.1: Present summary by Feature ID -->
649
+ <block type="event" id="P6-S1-LOG" action="log" desc="Step 6.1: 展示设计文档摘要"/>
486
650
  <block type="event" id="P6-E1" action="log" desc="Display design documents summary by Feature">
487
651
  <field name="template">design-documents-summary</field>
488
652
  <field name="data" value="${dispatch_progress}"/>
489
653
  </block>
490
654
 
491
- <!-- Step 6.1: User Confirmation (HARD STOP) -->
655
+ <!-- Step 6.2: User Confirmation (HARD STOP) -->
656
+ <block type="event" id="P6-S2-LOG" action="log" desc="Step 6.2: ⛔ 用户联合确认"/>
492
657
  <block type="event" id="P6-E2" action="confirm" desc="Request joint confirmation">
493
658
  <field name="prompt">🛑 JOINT CONFIRMATION — AWAITING USER REVIEW. Please review all design documents. (确认/修改/取消)</field>
494
659
  </block>
@@ -506,6 +671,7 @@
506
671
  </block>
507
672
 
508
673
  <!-- Step 6.3: Update Checkpoints on Confirmation -->
674
+ <block type="event" id="P6-S3-LOG" action="log" desc="Step 6.3: 更新检查点和工作流状态"/>
509
675
  <block type="task" id="P6-B1" action="run-script" status="pending"
510
676
  desc="Write framework_evaluation checkpoint">
511
677
  <field name="command">node ${update_progress_script} write-checkpoint --file ${iterations_dir}/${current_iteration}/03.system-design/.checkpoints.json --stage 03_system_design --checkpoint framework_evaluation --passed true</field>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "speccrew",
3
- "version": "0.7.65",
3
+ "version": "0.7.66",
4
4
  "description": "Spec-Driven Development toolkit for AI-powered IDEs",
5
5
  "author": "charlesmu99",
6
6
  "repository": {