speccrew 0.6.46 → 0.6.48
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/skills/speccrew-knowledge-bizs-api-graph-xml/SKILL.md +7 -7
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch-xml/SKILL.md +40 -183
- package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries-xml/SKILL.md +6 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze-xml/SKILL.md +13 -13
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph-xml/SKILL.md +5 -5
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract-xml/SKILL.md +9 -3
- package/.speccrew/skills/speccrew-knowledge-module-summarize-xml/SKILL.md +7 -7
- package/.speccrew/skills/speccrew-knowledge-system-summarize-xml/SKILL.md +8 -8
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch-xml/SKILL.md +32 -110
- package/.speccrew/skills/speccrew-knowledge-techs-generate-quality-xml/SKILL.md +11 -11
- package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style-xml/SKILL.md +9 -9
- package/.speccrew/skills/speccrew-knowledge-techs-generate-xml/SKILL.md +4 -4
- package/.speccrew/skills/speccrew-knowledge-techs-index-xml/SKILL.md +2 -2
- package/package.json +1 -1
- package/workspace-template/docs/rules/xml-workflow-spec.md +13 -5
|
@@ -102,7 +102,7 @@ This skill automatically adapts to the user's input language. All documentation
|
|
|
102
102
|
</block>
|
|
103
103
|
|
|
104
104
|
<block type="event" id="E1" action="log" level="info" desc="Log Step 1 completion">
|
|
105
|
-
Step 1 Status: COMPLETED - Read ${sourcePath}, found ${apiImports.count} APIs, ${componentUsage.count} components, ${navigationPatterns.count} navigations
|
|
105
|
+
<field name="message">Step 1 Status: COMPLETED - Read ${sourcePath}, found ${apiImports.count} APIs, ${componentUsage.count} components, ${navigationPatterns.count} navigations</field>
|
|
106
106
|
</block>
|
|
107
107
|
|
|
108
108
|
<block type="checkpoint" id="CP1" name="step-1-read-source" desc="Source file read complete">
|
|
@@ -143,7 +143,7 @@ Step 1 Status: COMPLETED - Read ${sourcePath}, found ${apiImports.count} APIs, $
|
|
|
143
143
|
</block>
|
|
144
144
|
|
|
145
145
|
<block type="event" id="E2" action="log" level="info" desc="Log Step 2 completion">
|
|
146
|
-
Step 2 Status: COMPLETED - Constructed ${nodeCount} nodes
|
|
146
|
+
<field name="message">Step 2 Status: COMPLETED - Constructed ${nodeCount} nodes</field>
|
|
147
147
|
</block>
|
|
148
148
|
|
|
149
149
|
<block type="checkpoint" id="CP2" name="step-2-construct-nodes" desc="Graph nodes constructed">
|
|
@@ -193,7 +193,7 @@ Step 2 Status: COMPLETED - Constructed ${nodeCount} nodes
|
|
|
193
193
|
</block>
|
|
194
194
|
|
|
195
195
|
<block type="event" id="E3" action="log" level="info" desc="Log Step 3 completion">
|
|
196
|
-
Step 3 Status: COMPLETED - Constructed ${edgeCount} edges (${apiEdges.count} API calls, ${navEdges.count} navigations, ${useEdges.count} component uses)
|
|
196
|
+
<field name="message">Step 3 Status: COMPLETED - Constructed ${edgeCount} edges (${apiEdges.count} API calls, ${navEdges.count} navigations, ${useEdges.count} component uses)</field>
|
|
197
197
|
</block>
|
|
198
198
|
|
|
199
199
|
<block type="checkpoint" id="CP3" name="step-3-construct-edges" desc="Graph edges constructed">
|
|
@@ -232,7 +232,7 @@ Step 3 Status: COMPLETED - Constructed ${edgeCount} edges (${apiEdges.count} API
|
|
|
232
232
|
</block>
|
|
233
233
|
|
|
234
234
|
<block type="event" id="E4" action="log" level="info" desc="Log Step 4 completion">
|
|
235
|
-
Step 4 Status: COMPLETED - Graph JSON written to ${completed_dir}/${markerFilename}.graph.json
|
|
235
|
+
<field name="message">Step 4 Status: COMPLETED - Graph JSON written to ${completed_dir}/${markerFilename}.graph.json</field>
|
|
236
236
|
</block>
|
|
237
237
|
|
|
238
238
|
<block type="checkpoint" id="CP4" name="step-4-write-graph-json" desc="Graph JSON written">
|
|
@@ -265,7 +265,7 @@ Step 4 Status: COMPLETED - Graph JSON written to ${completed_dir}/${markerFilena
|
|
|
265
265
|
</block>
|
|
266
266
|
|
|
267
267
|
<block type="event" id="E5" action="log" level="info" desc="Log Step 5 completion">
|
|
268
|
-
Step 5 Status: COMPLETED - Graph completion marker written to ${completed_dir}/${markerFilename}.graph-done.json
|
|
268
|
+
<field name="message">Step 5 Status: COMPLETED - Graph completion marker written to ${completed_dir}/${markerFilename}.graph-done.json</field>
|
|
269
269
|
</block>
|
|
270
270
|
|
|
271
271
|
<block type="checkpoint" id="CP5" name="step-5-write-marker" desc="Completion marker written">
|
|
@@ -115,7 +115,9 @@ Extract and aggregate **UI design patterns** from bizs pipeline analyzed feature
|
|
|
115
115
|
============================================================ -->
|
|
116
116
|
<block type="gateway" id="G1" mode="exclusive" desc="Check platform type for UI pattern extraction">
|
|
117
117
|
<branch test="${platform_type} NOT IN ['web', 'mobile', 'desktop']" name="Backend platform">
|
|
118
|
-
<block type="event" id="E1" action="log" level="info" desc="Log skip reason">
|
|
118
|
+
<block type="event" id="E1" action="log" level="info" desc="Log skip reason">
|
|
119
|
+
<field name="message">Skipping skill: backend platforms do not have UI patterns</field>
|
|
120
|
+
</block>
|
|
119
121
|
<block type="task" id="B1" action="analyze" desc="Return skip status">
|
|
120
122
|
<field name="status" value="skipped"/>
|
|
121
123
|
<field name="reason" value="Backend platform does not have UI patterns"/>
|
|
@@ -210,7 +212,9 @@ Extract and aggregate **UI design patterns** from bizs pipeline analyzed feature
|
|
|
210
212
|
============================================================ -->
|
|
211
213
|
<block type="gateway" id="G3" mode="exclusive" desc="Check if patterns were identified">
|
|
212
214
|
<branch test="${identified_patterns.length} == 0" name="No patterns">
|
|
213
|
-
<block type="event" id="E2" action="log" level="warn" desc="Log no patterns">
|
|
215
|
+
<block type="event" id="E2" action="log" level="warn" desc="Log no patterns">
|
|
216
|
+
<field name="message">No patterns identified from feature documents</field>
|
|
217
|
+
</block>
|
|
214
218
|
<block type="task" id="B8" action="analyze" desc="Return empty result">
|
|
215
219
|
<field name="status" value="completed"/>
|
|
216
220
|
<field name="platform_id" value="${platform_id}"/>
|
|
@@ -299,7 +303,9 @@ Extract and aggregate **UI design patterns** from bizs pipeline analyzed feature
|
|
|
299
303
|
|
|
300
304
|
</branch>
|
|
301
305
|
<branch test="${completed_features.length} == 0" name="No completed features">
|
|
302
|
-
<block type="event" id="E3" action="log" level="warn" desc="Log no features">
|
|
306
|
+
<block type="event" id="E3" action="log" level="warn" desc="Log no features">
|
|
307
|
+
<field name="message">No completed features found - returning empty result</field>
|
|
308
|
+
</block>
|
|
303
309
|
<block type="task" id="B15" action="analyze" desc="Return empty summary">
|
|
304
310
|
<field name="status" value="completed"/>
|
|
305
311
|
<field name="platform_id" value="${platform_id}"/>
|
|
@@ -108,7 +108,7 @@ flowchart TD
|
|
|
108
108
|
<block type="gateway" id="G1" mode="exclusive" desc="Check if features exist">
|
|
109
109
|
<branch test="${feature_files.length} == 0" name="No features">
|
|
110
110
|
<block type="event" id="E1a" action="log" level="warning" desc="No features warning">
|
|
111
|
-
No feature documents found for module ${module_name}
|
|
111
|
+
<field name="message">No feature documents found for module ${module_name}</field>
|
|
112
112
|
</block>
|
|
113
113
|
<block type="task" id="B1e" action="write-file" desc="Generate minimal overview">
|
|
114
114
|
<field name="path" value="${module_path}/${module_name}-overview.md"/>
|
|
@@ -116,12 +116,12 @@ No feature documents found for module ${module_name}
|
|
|
116
116
|
</block>
|
|
117
117
|
<field name="status" value="partial"/>
|
|
118
118
|
<block type="event" id="E1b" action="signal" desc="Signal complete">
|
|
119
|
-
workflow_complete
|
|
119
|
+
<field name="message">workflow_complete</field>
|
|
120
120
|
</block>
|
|
121
121
|
</branch>
|
|
122
122
|
<branch test="${feature_files.length} > 0" name="Features found">
|
|
123
123
|
<block type="event" id="E1c" action="log" level="info" desc="Features found">
|
|
124
|
-
Found ${feature_files.length} feature documents
|
|
124
|
+
<field name="message">Found ${feature_files.length} feature documents</field>
|
|
125
125
|
</block>
|
|
126
126
|
</branch>
|
|
127
127
|
</block>
|
|
@@ -308,13 +308,13 @@ Found ${feature_files.length} feature documents
|
|
|
308
308
|
</try>
|
|
309
309
|
<catch error-type="write_error">
|
|
310
310
|
<block type="event" id="EH1-E1" action="log" level="error" desc="Write error">
|
|
311
|
-
Failed to write overview document: ${write_error.message}
|
|
311
|
+
<field name="message">Failed to write overview document: ${write_error.message}</field>
|
|
312
312
|
</block>
|
|
313
313
|
<field name="status" value="failed"/>
|
|
314
314
|
</catch>
|
|
315
315
|
<finally>
|
|
316
316
|
<block type="event" id="EH1-E2" action="log" level="info" desc="Write completed">
|
|
317
|
-
Document write operation completed
|
|
317
|
+
<field name="message">Document write operation completed</field>
|
|
318
318
|
</block>
|
|
319
319
|
</finally>
|
|
320
320
|
</block>
|
|
@@ -351,14 +351,14 @@ Document write operation completed
|
|
|
351
351
|
|
|
352
352
|
<!-- Event: Log completion -->
|
|
353
353
|
<block type="event" id="E6" action="log" level="info" desc="Log completion">
|
|
354
|
-
Module summarization completed:
|
|
354
|
+
<field name="message">Module summarization completed:
|
|
355
355
|
- Module: ${module_name}
|
|
356
356
|
- Features Processed: ${feature_files.length}
|
|
357
357
|
- Entities Extracted: ${unique_entities.length}
|
|
358
358
|
- Dependencies Identified: ${dependencies.length}
|
|
359
359
|
- Business Rules Summarized: ${business_rules.length}
|
|
360
360
|
- Output: ${module_name}-overview.md (complete)
|
|
361
|
-
- Status: success
|
|
361
|
+
- Status: success</field>
|
|
362
362
|
</block>
|
|
363
363
|
</sequence>
|
|
364
364
|
|
|
@@ -97,7 +97,7 @@ flowchart TD
|
|
|
97
97
|
|
|
98
98
|
<!-- Prerequisites Verification -->
|
|
99
99
|
<block type="event" id="E1" action="log" level="info" desc="Log workflow start">
|
|
100
|
-
Starting system summarization workflow
|
|
100
|
+
<field name="message">Starting system summarization workflow</field>
|
|
101
101
|
</block>
|
|
102
102
|
|
|
103
103
|
<!-- Step 0: Read System Overview Template -->
|
|
@@ -123,7 +123,7 @@ Starting system summarization workflow
|
|
|
123
123
|
<block type="gateway" id="G1" mode="exclusive" desc="Check if modules discovered">
|
|
124
124
|
<branch test="${module_files.length} == 0" name="No modules">
|
|
125
125
|
<block type="event" id="E2" action="log" level="warning" desc="Log no modules found">
|
|
126
|
-
No module overview files found in ${modules_path}
|
|
126
|
+
<field name="message">No module overview files found in ${modules_path}</field>
|
|
127
127
|
</block>
|
|
128
128
|
<block type="task" id="B2" action="run-script" desc="Generate skeleton document">
|
|
129
129
|
<field name="script" value="generate-skeleton.js"/>
|
|
@@ -144,7 +144,7 @@ No module overview files found in ${modules_path}
|
|
|
144
144
|
</branch>
|
|
145
145
|
<branch test="${module_files.length} > 0" name="Modules found">
|
|
146
146
|
<block type="event" id="E4" action="log" level="info" desc="Log modules discovered">
|
|
147
|
-
Discovered ${module_files.length} module overview files
|
|
147
|
+
<field name="message">Discovered ${module_files.length} module overview files</field>
|
|
148
148
|
</block>
|
|
149
149
|
</branch>
|
|
150
150
|
</block>
|
|
@@ -355,7 +355,7 @@ Discovered ${module_files.length} module overview files
|
|
|
355
355
|
<field name="output" var="timestamp"/>
|
|
356
356
|
</block>
|
|
357
357
|
<block type="event" id="E5" action="log" level="warning" desc="Log fallback">
|
|
358
|
-
Using system fallback timestamp
|
|
358
|
+
<field name="message">Using system fallback timestamp</field>
|
|
359
359
|
</block>
|
|
360
360
|
</branch>
|
|
361
361
|
</block>
|
|
@@ -464,7 +464,7 @@ Using system fallback timestamp
|
|
|
464
464
|
</try>
|
|
465
465
|
<catch error-type="write_error">
|
|
466
466
|
<block type="event" id="E6" action="log" level="error" desc="Log write error">
|
|
467
|
-
Failed to write system overview: ${write_error.message}
|
|
467
|
+
<field name="message">Failed to write system overview: ${write_error.message}</field>
|
|
468
468
|
</block>
|
|
469
469
|
<block type="output" id="O-err" desc="Error output">
|
|
470
470
|
<field name="status" value="failed"/>
|
|
@@ -472,7 +472,7 @@ Failed to write system overview: ${write_error.message}
|
|
|
472
472
|
</catch>
|
|
473
473
|
<finally>
|
|
474
474
|
<block type="event" id="E7" action="log" level="info" desc="Log write complete">
|
|
475
|
-
Document write operation completed
|
|
475
|
+
<field name="message">Document write operation completed</field>
|
|
476
476
|
</block>
|
|
477
477
|
</finally>
|
|
478
478
|
</block>
|
|
@@ -513,14 +513,14 @@ Document write operation completed
|
|
|
513
513
|
|
|
514
514
|
<!-- Event: Log completion -->
|
|
515
515
|
<block type="event" id="E8" action="log" level="info" desc="Log completion summary">
|
|
516
|
-
System summarization completed:
|
|
516
|
+
<field name="message">System summarization completed:
|
|
517
517
|
- Modules Processed: ${module_count}
|
|
518
518
|
- Entities Aggregated: ${metrics.entity_count}
|
|
519
519
|
- APIs Counted: ${metrics.api_count}
|
|
520
520
|
- Dependencies Mapped: ${all_dependencies.length}
|
|
521
521
|
- Business Flows Identified: ${flow_count}
|
|
522
522
|
- Output: system-overview.md (complete)
|
|
523
|
-
- Status: success
|
|
523
|
+
- Status: success</field>
|
|
524
524
|
</block>
|
|
525
525
|
|
|
526
526
|
<!-- Output Block: Define workflow outputs -->
|
|
@@ -191,10 +191,10 @@ Read `speccrew-workspace/docs/configs/platform-mapping.json` for standardized pl
|
|
|
191
191
|
|
|
192
192
|
<!-- Step 2: Prepare Task Plan for techs-init -->
|
|
193
193
|
<block type="event" id="S1-E1" action="log" level="info" desc="Prepare techs-init task plan">
|
|
194
|
-
Stage 1: Preparing task plan for speccrew-knowledge-techs-init-xml
|
|
194
|
+
<field name="message">Stage 1: Preparing task plan for speccrew-knowledge-techs-init-xml
|
|
195
195
|
- Source path: ${source_path}
|
|
196
196
|
- Output path: ${sync_state_techs_dir}
|
|
197
|
-
- Language: ${language}
|
|
197
|
+
- Language: ${language}</field>
|
|
198
198
|
</block>
|
|
199
199
|
|
|
200
200
|
<!-- Step 3: Prepare task specification -->
|
|
@@ -210,9 +210,9 @@ Stage 1: Preparing task plan for speccrew-knowledge-techs-init-xml
|
|
|
210
210
|
|
|
211
211
|
<!-- Step 4: Monitor completion -->
|
|
212
212
|
<block type="event" id="S1-E2" action="log" level="info" desc="Stage 1 task prepared">
|
|
213
|
-
Stage 1 task plan prepared. Waiting for calling Agent to dispatch.
|
|
213
|
+
<field name="message">Stage 1 task plan prepared. Waiting for calling Agent to dispatch.
|
|
214
214
|
Task: speccrew-knowledge-techs-init-xml
|
|
215
|
-
Output: ${sync_state_techs_dir}/techs-manifest.json
|
|
215
|
+
Output: ${sync_state_techs_dir}/techs-manifest.json</field>
|
|
216
216
|
</block>
|
|
217
217
|
|
|
218
218
|
<!-- Step 5: Read manifest after completion -->
|
|
@@ -233,7 +233,7 @@ Output: ${sync_state_techs_dir}/techs-manifest.json
|
|
|
233
233
|
</block>
|
|
234
234
|
|
|
235
235
|
<block type="event" id="S1-E3" action="log" level="info" desc="Report detected platforms">
|
|
236
|
-
Stage 1 complete. Detected ${techs_manifest.platforms.length} platforms: ${techs_manifest.platforms.map(p => p.platform_id).join(', ')}
|
|
236
|
+
<field name="message">Stage 1 complete. Detected ${techs_manifest.platforms.length} platforms: ${techs_manifest.platforms.map(p => p.platform_id).join(', ')}</field>
|
|
237
237
|
</block>
|
|
238
238
|
</sequence>
|
|
239
239
|
|
|
@@ -284,7 +284,7 @@ if (platform) {
|
|
|
284
284
|
|
|
285
285
|
<!-- Step 2: Prepare Conventions Worker Task Plans (ALL Platforms) -->
|
|
286
286
|
<block type="event" id="S2-E1" action="log" level="info" desc="Prepare conventions worker tasks">
|
|
287
|
-
Preparing conventions worker task plans for ${techs_manifest.platforms.length} platforms
|
|
287
|
+
<field name="message">Preparing conventions worker task plans for ${techs_manifest.platforms.length} platforms...</field>
|
|
288
288
|
</block>
|
|
289
289
|
|
|
290
290
|
<block type="loop" id="S2-L2" over="${techs_manifest.platforms}" as="platform" desc="Prepare conventions worker task for each platform">
|
|
@@ -307,7 +307,7 @@ Preparing conventions worker task plans for ${techs_manifest.platforms.length} p
|
|
|
307
307
|
|
|
308
308
|
<!-- Step 3: Prepare UI-Style Worker Task Plans (Frontend Platforms ONLY) -->
|
|
309
309
|
<block type="event" id="S2-E2" action="log" level="info" desc="Prepare UI-style worker tasks">
|
|
310
|
-
Preparing UI-style worker task plans for frontend platforms
|
|
310
|
+
<field name="message">Preparing UI-style worker task plans for frontend platforms...</field>
|
|
311
311
|
</block>
|
|
312
312
|
|
|
313
313
|
<block type="loop" id="S2-L3" over="${techs_manifest.platforms}" as="platform" desc="Prepare UI-style worker task for frontend platforms">
|
|
@@ -331,7 +331,7 @@ Preparing UI-style worker task plans for frontend platforms...
|
|
|
331
331
|
|
|
332
332
|
<!-- Step 4: Dispatch ALL Workers in PARALLEL -->
|
|
333
333
|
<block type="event" id="S2-E3" action="log" level="info" desc="Dispatch all workers">
|
|
334
|
-
Dispatching ALL workers in PARALLEL. The calling Agent should dispatch all prepared tasks simultaneously
|
|
334
|
+
<field name="message">Dispatching ALL workers in PARALLEL. The calling Agent should dispatch all prepared tasks simultaneously.</field>
|
|
335
335
|
</block>
|
|
336
336
|
|
|
337
337
|
<!-- Step 5: Monitor Completion Markers -->
|
|
@@ -410,7 +410,7 @@ Dispatching ALL workers in PARALLEL. The calling Agent should dispatch all prepa
|
|
|
410
410
|
</block>
|
|
411
411
|
|
|
412
412
|
<block type="event" id="S2-E4" action="log" level="info" desc="Stage 2 complete">
|
|
413
|
-
Stage 2 complete. All platform workers finished
|
|
413
|
+
<field name="message">Stage 2 complete. All platform workers finished.</field>
|
|
414
414
|
</block>
|
|
415
415
|
</sequence>
|
|
416
416
|
|
|
@@ -427,7 +427,7 @@ Stage 2 complete. All platform workers finished.
|
|
|
427
427
|
|
|
428
428
|
<!-- Step A: Scan Completion Markers -->
|
|
429
429
|
<block type="event" id="S2_5-E1" action="log" level="info" desc="Step A: Scan completion markers">
|
|
430
|
-
Stage 2.5 Step A: Scanning completion markers
|
|
430
|
+
<field name="message">Stage 2.5 Step A: Scanning completion markers...</field>
|
|
431
431
|
</block>
|
|
432
432
|
|
|
433
433
|
<block type="loop" id="S2_5-L1" over="${techs_manifest.platforms}" as="platform" desc="Scan markers for each platform">
|
|
@@ -453,7 +453,7 @@ console.log(JSON.stringify(markers));
|
|
|
453
453
|
|
|
454
454
|
<!-- Step B: Verify Output Integrity -->
|
|
455
455
|
<block type="event" id="S2_5-E2" action="log" level="info" desc="Step B: Verify output integrity">
|
|
456
|
-
Stage 2.5 Step B: Verifying output integrity
|
|
456
|
+
<field name="message">Stage 2.5 Step B: Verifying output integrity...</field>
|
|
457
457
|
</block>
|
|
458
458
|
|
|
459
459
|
<block type="loop" id="S2_5-L2" over="${techs_manifest.platforms}" as="platform" desc="Verify documents for each platform">
|
|
@@ -497,7 +497,7 @@ console.log(JSON.stringify(results));
|
|
|
497
497
|
|
|
498
498
|
<!-- Step C: Update Progress Status -->
|
|
499
499
|
<block type="event" id="S2_5-E3" action="log" level="info" desc="Step C: Update progress status">
|
|
500
|
-
Stage 2.5 Step C: Updating progress status
|
|
500
|
+
<field name="message">Stage 2.5 Step C: Updating progress status...</field>
|
|
501
501
|
</block>
|
|
502
502
|
|
|
503
503
|
<block type="task" id="S2_5-B3" action="run-script" status="pending" desc="Generate stage2-status.json">
|
|
@@ -531,7 +531,7 @@ console.log('stage2-status.json written');
|
|
|
531
531
|
</block>
|
|
532
532
|
|
|
533
533
|
<block type="event" id="S2_5-E4" action="log" level="info" desc="Stage 2.5 complete">
|
|
534
|
-
Stage 2.5 complete. Verification results written to stage2-status.json
|
|
534
|
+
<field name="message">Stage 2.5 complete. Verification results written to stage2-status.json.</field>
|
|
535
535
|
</block>
|
|
536
536
|
</sequence>
|
|
537
537
|
|
|
@@ -554,10 +554,10 @@ Stage 2.5 complete. Verification results written to stage2-status.json.
|
|
|
554
554
|
|
|
555
555
|
<!-- Step 2: Prepare Task Plan for techs-index -->
|
|
556
556
|
<block type="event" id="S3-E1" action="log" level="info" desc="Prepare techs-index task plan">
|
|
557
|
-
Stage 3: Preparing task plan for speccrew-knowledge-techs-index-xml
|
|
557
|
+
<field name="message">Stage 3: Preparing task plan for speccrew-knowledge-techs-index-xml
|
|
558
558
|
- Manifest: ${sync_state_techs_dir}/techs-manifest.json
|
|
559
559
|
- Output: ${workspace_path}/knowledges/techs/
|
|
560
|
-
- Language: ${language}
|
|
560
|
+
- Language: ${language}</field>
|
|
561
561
|
</block>
|
|
562
562
|
|
|
563
563
|
<!-- Step 3: Prepare task specification -->
|
|
@@ -574,9 +574,9 @@ Stage 3: Preparing task plan for speccrew-knowledge-techs-index-xml
|
|
|
574
574
|
|
|
575
575
|
<!-- Step 4: Monitor completion -->
|
|
576
576
|
<block type="event" id="S3-E2" action="log" level="info" desc="Stage 3 task prepared">
|
|
577
|
-
Stage 3 task plan prepared. Waiting for calling Agent to dispatch.
|
|
577
|
+
<field name="message">Stage 3 task plan prepared. Waiting for calling Agent to dispatch.
|
|
578
578
|
Task: speccrew-knowledge-techs-index-xml
|
|
579
|
-
Output: ${workspace_path}/knowledges/techs/INDEX.md
|
|
579
|
+
Output: ${workspace_path}/knowledges/techs/INDEX.md</field>
|
|
580
580
|
</block>
|
|
581
581
|
|
|
582
582
|
<!-- Step 5: Generate stage3-status.json -->
|
|
@@ -605,7 +605,7 @@ console.log('stage3-status.json written');
|
|
|
605
605
|
</block>
|
|
606
606
|
|
|
607
607
|
<block type="event" id="S3-E3" action="log" level="info" desc="Stage 3 complete">
|
|
608
|
-
Stage 3 complete. Root INDEX.md generated
|
|
608
|
+
<field name="message">Stage 3 complete. Root INDEX.md generated.</field>
|
|
609
609
|
</block>
|
|
610
610
|
</sequence>
|
|
611
611
|
|
|
@@ -624,11 +624,13 @@ Stage 3 complete. Root INDEX.md generated.
|
|
|
624
624
|
|
|
625
625
|
---
|
|
626
626
|
|
|
627
|
-
##
|
|
627
|
+
## Appendix: Reference
|
|
628
|
+
|
|
629
|
+
### Worker Completion Marker Format
|
|
628
630
|
|
|
629
631
|
Each Worker MUST create a completion marker file after generating documents.
|
|
630
632
|
|
|
631
|
-
|
|
633
|
+
#### Conventions Worker Done File
|
|
632
634
|
|
|
633
635
|
**File**: `{completed_dir}/{platform_id}.done-conventions.json`
|
|
634
636
|
|
|
@@ -648,7 +650,7 @@ Each Worker MUST create a completion marker file after generating documents.
|
|
|
648
650
|
}
|
|
649
651
|
```
|
|
650
652
|
|
|
651
|
-
|
|
653
|
+
#### UI-Style Worker Done File
|
|
652
654
|
|
|
653
655
|
**File**: `{completed_dir}/{platform_id}.done-ui-style.json`
|
|
654
656
|
|
|
@@ -673,7 +675,7 @@ Each Worker MUST create a completion marker file after generating documents.
|
|
|
673
675
|
|
|
674
676
|
If a Worker encounters a fatal error, it should still attempt to create the done file with `status: "failed"` and include error details in an `"error"` field.
|
|
675
677
|
|
|
676
|
-
|
|
678
|
+
#### Quality Worker Done File
|
|
677
679
|
|
|
678
680
|
**File**: `{completed_dir}/{platform_id}.quality-done.json`
|
|
679
681
|
|
|
@@ -691,7 +693,7 @@ If a Worker encounters a fatal error, it should still attempt to create the done
|
|
|
691
693
|
|
|
692
694
|
---
|
|
693
695
|
|
|
694
|
-
|
|
696
|
+
### Platform Status Tracking Fields
|
|
695
697
|
|
|
696
698
|
Each platform entry in techs-manifest.json includes status tracking fields for monitoring the analysis pipeline progress:
|
|
697
699
|
|
|
@@ -735,7 +737,7 @@ pending → processing → completed
|
|
|
735
737
|
|
|
736
738
|
---
|
|
737
739
|
|
|
738
|
-
|
|
740
|
+
### Output per Platform
|
|
739
741
|
|
|
740
742
|
```
|
|
741
743
|
speccrew-workspace/knowledges/techs/{platform_id}/
|
|
@@ -773,9 +775,9 @@ speccrew-workspace/knowledges/techs/{platform_id}/
|
|
|
773
775
|
|
|
774
776
|
---
|
|
775
777
|
|
|
776
|
-
|
|
778
|
+
### Error Handling
|
|
777
779
|
|
|
778
|
-
|
|
780
|
+
#### Error Handling Strategy
|
|
779
781
|
|
|
780
782
|
```
|
|
781
783
|
ON Worker Failure:
|
|
@@ -788,7 +790,7 @@ ON Worker Failure:
|
|
|
788
790
|
- IF some platforms succeeded → CONTINUE to Stage 3 with successful platforms only
|
|
789
791
|
```
|
|
790
792
|
|
|
791
|
-
|
|
793
|
+
#### Stage-Level Failure Handling
|
|
792
794
|
|
|
793
795
|
| Stage | Failure Handling |
|
|
794
796
|
|-------|-----------------|
|
|
@@ -797,7 +799,7 @@ ON Worker Failure:
|
|
|
797
799
|
| Stage 2.5 | Continue pipeline, report warnings |
|
|
798
800
|
| Stage 3 | Abort if Stage 2 had critical failures |
|
|
799
801
|
|
|
800
|
-
|
|
802
|
+
#### Worker Failure Details
|
|
801
803
|
|
|
802
804
|
**When a Worker Agent fails:**
|
|
803
805
|
- **No automatic retry**: Worker failures are recorded as-is
|
|
@@ -807,7 +809,7 @@ ON Worker Failure:
|
|
|
807
809
|
|
|
808
810
|
---
|
|
809
811
|
|
|
810
|
-
|
|
812
|
+
### Checklist
|
|
811
813
|
|
|
812
814
|
- [ ] Stage 1: Platform manifest generated with techs-manifest.json
|
|
813
815
|
- [ ] Stage 2: All platforms processed in parallel
|
|
@@ -815,89 +817,9 @@ ON Worker Failure:
|
|
|
815
817
|
- [ ] Stage 3: Root INDEX.md generated with Agent mapping
|
|
816
818
|
- [ ] Stage 3: `stage3-status.json` generated with index info
|
|
817
819
|
|
|
818
|
-
|
|
820
|
+
#### Document Completeness Verification
|
|
819
821
|
- [ ] Each platform directory contains required documents: INDEX.md, tech-stack.md, architecture.md, conventions-design.md, conventions-dev.md, conventions-unit-test.md, conventions-system-test.md, conventions-build.md
|
|
820
822
|
- [ ] `conventions-data.md` exists only for appropriate platforms (backend required, others optional)
|
|
821
823
|
- [ ] All documents include file reference blocks (pure Markdown format for VS Code preview compatibility)
|
|
822
824
|
- [ ] All documents include AI-TAG and AI-CONTEXT comments
|
|
823
825
|
- [ ] techs/INDEX.md links only to existing documents
|
|
824
|
-
|
|
825
|
-
---
|
|
826
|
-
|
|
827
|
-
## Task Completion Report Format
|
|
828
|
-
|
|
829
|
-
Upon completing all stages, output the following structured report:
|
|
830
|
-
|
|
831
|
-
```json
|
|
832
|
-
{
|
|
833
|
-
"status": "success | partial | failed",
|
|
834
|
-
"skill": "speccrew-knowledge-techs-dispatch-xml",
|
|
835
|
-
"stages_completed": ["stage_1", "stage_2", "stage_2_5", "stage_3"],
|
|
836
|
-
"stages_failed": [],
|
|
837
|
-
"output_summary": {
|
|
838
|
-
"platforms_processed": ["frontend", "backend"],
|
|
839
|
-
"docs_generated_per_platform": {"frontend": 5, "backend": 4},
|
|
840
|
-
"root_index_generated": true,
|
|
841
|
-
"cross_platform_check_passed": true
|
|
842
|
-
},
|
|
843
|
-
"output_files": [
|
|
844
|
-
"knowledges/techs/{platform}/README.md",
|
|
845
|
-
"knowledges/techs/{platform}/conventions.md",
|
|
846
|
-
"knowledges/techs/README.md"
|
|
847
|
-
],
|
|
848
|
-
"errors": [],
|
|
849
|
-
"next_steps": ["Review generated tech documentation"]
|
|
850
|
-
}
|
|
851
|
-
```
|
|
852
|
-
|
|
853
|
-
---
|
|
854
|
-
|
|
855
|
-
## Return Value Structure
|
|
856
|
-
|
|
857
|
-
After all 3 stages complete, return a summary object to the caller:
|
|
858
|
-
|
|
859
|
-
```json
|
|
860
|
-
{
|
|
861
|
-
"status": "completed",
|
|
862
|
-
"pipeline": "techs",
|
|
863
|
-
"stages": {
|
|
864
|
-
"stage1": { "status": "completed", "platforms": 3 },
|
|
865
|
-
"stage2": { "status": "completed", "completed": 3, "failed": 0 },
|
|
866
|
-
"stage3": { "status": "completed" }
|
|
867
|
-
},
|
|
868
|
-
"output": {
|
|
869
|
-
"index": "speccrew-workspace/knowledges/techs/INDEX.md",
|
|
870
|
-
"manifest": "speccrew-workspace/knowledges/base/sync-state/knowledge-techs/techs-manifest.json"
|
|
871
|
-
}
|
|
872
|
-
}
|
|
873
|
-
```
|
|
874
|
-
|
|
875
|
-
---
|
|
876
|
-
|
|
877
|
-
## CONTINUOUS EXECUTION RULES
|
|
878
|
-
|
|
879
|
-
This skill MUST execute all stages continuously without unnecessary interruptions.
|
|
880
|
-
|
|
881
|
-
### FORBIDDEN Interruptions
|
|
882
|
-
|
|
883
|
-
1. DO NOT ask user "Should I continue?" after completing a stage
|
|
884
|
-
2. DO NOT suggest "Let me split this into batches" or "Let's do this in parts"
|
|
885
|
-
3. DO NOT pause to list what you plan to do next — just do it
|
|
886
|
-
4. DO NOT ask for confirmation before generating output files
|
|
887
|
-
5. DO NOT warn about "large number of files" — proceed with generation
|
|
888
|
-
6. DO NOT offer "Should I proceed with the remaining items?"
|
|
889
|
-
7. DO NOT present options like "Full execution / Sample execution / Pause"
|
|
890
|
-
|
|
891
|
-
### When to Pause (ONLY these cases)
|
|
892
|
-
|
|
893
|
-
1. Explicit `<event action="confirm">` blocks in the workflow (e.g., platform confirmation if needed)
|
|
894
|
-
2. Ambiguous requirements that genuinely need clarification
|
|
895
|
-
3. Unrecoverable errors that prevent further progress (failure rate > 50%)
|
|
896
|
-
4. Security-sensitive operations (e.g., deleting existing files)
|
|
897
|
-
|
|
898
|
-
### Batch Execution Behavior
|
|
899
|
-
|
|
900
|
-
- When multiple platforms need processing, process ALL of them without asking
|
|
901
|
-
- Use marker files (.done.json) to track progress, enabling resumption if interrupted by context limits
|
|
902
|
-
- If context window is approaching limit, save progress to checkpoint and inform user how to resume
|
|
903
|
-
- NEVER voluntarily stop mid-batch to ask if user wants to continue
|
|
@@ -177,7 +177,7 @@ Worker Agent (speccrew-task-worker)
|
|
|
177
177
|
</block>
|
|
178
178
|
|
|
179
179
|
<block type="event" id="E2" action="log" level="info" desc="Completeness check result">
|
|
180
|
-
Completeness check: ${completeness_result.documents_found}/${completeness_result.documents_expected} documents, ${completeness_result.sections_passed}/${completeness_result.sections_checked} sections
|
|
180
|
+
<field name="message">Completeness check: ${completeness_result.documents_found}/${completeness_result.documents_expected} documents, ${completeness_result.sections_passed}/${completeness_result.sections_checked} sections</field>
|
|
181
181
|
</block>
|
|
182
182
|
|
|
183
183
|
<block type="checkpoint" id="CP2" name="completeness_checked" desc="Completeness check complete">
|
|
@@ -227,7 +227,7 @@ Completeness check: ${completeness_result.documents_found}/${completeness_result
|
|
|
227
227
|
</block>
|
|
228
228
|
|
|
229
229
|
<block type="event" id="E3" action="log" level="info" desc="Cross-validation result">
|
|
230
|
-
Cross-validation: ${cross_validation_result.version_checks.passed}/${cross_validation_result.version_checks.total} version checks, ${cross_validation_result.reference_checks.passed}/${cross_validation_result.reference_checks.total} reference checks
|
|
230
|
+
<field name="message">Cross-validation: ${cross_validation_result.version_checks.passed}/${cross_validation_result.version_checks.total} version checks, ${cross_validation_result.reference_checks.passed}/${cross_validation_result.reference_checks.total} reference checks</field>
|
|
231
231
|
</block>
|
|
232
232
|
|
|
233
233
|
<block type="checkpoint" id="CP3" name="cross_validation_complete" desc="Cross-validation complete">
|
|
@@ -277,7 +277,7 @@ Cross-validation: ${cross_validation_result.version_checks.passed}/${cross_valid
|
|
|
277
277
|
</block>
|
|
278
278
|
|
|
279
279
|
<block type="event" id="E4" action="log" level="info" desc="Consistency check result">
|
|
280
|
-
Consistency: ${consistency_result.status} - ${consistency_result.issues.length} issues found
|
|
280
|
+
<field name="message">Consistency: ${consistency_result.status} - ${consistency_result.issues.length} issues found</field>
|
|
281
281
|
</block>
|
|
282
282
|
|
|
283
283
|
<block type="checkpoint" id="CP4" name="consistency_checked" desc="Consistency check complete">
|
|
@@ -330,7 +330,7 @@ Consistency: ${consistency_result.status} - ${consistency_result.issues.length}
|
|
|
330
330
|
</block>
|
|
331
331
|
|
|
332
332
|
<block type="event" id="E5" action="log" level="info" desc="Source traceability result">
|
|
333
|
-
Source Traceability: ${traceability_result.documents_with_cite_block}/${traceability_result.documents_total} documents with cite blocks, ${traceability_result.absolute_paths_found} absolute paths, ${traceability_result.file_protocol_found} file:// protocols
|
|
333
|
+
<field name="message">Source Traceability: ${traceability_result.documents_with_cite_block}/${traceability_result.documents_total} documents with cite blocks, ${traceability_result.absolute_paths_found} absolute paths, ${traceability_result.file_protocol_found} file:// protocols</field>
|
|
334
334
|
</block>
|
|
335
335
|
|
|
336
336
|
<block type="checkpoint" id="CP5" name="traceability_checked" desc="Source traceability check complete">
|
|
@@ -376,7 +376,7 @@ Source Traceability: ${traceability_result.documents_with_cite_block}/${traceabi
|
|
|
376
376
|
</block>
|
|
377
377
|
|
|
378
378
|
<block type="event" id="E6" action="log" level="info" desc="Mermaid compatibility result">
|
|
379
|
-
Mermaid Compatibility: ${mermaid_result.diagrams_passed}/${mermaid_result.diagrams_checked} diagrams passed, ${mermaid_result.issues.length} issues found
|
|
379
|
+
<field name="message">Mermaid Compatibility: ${mermaid_result.diagrams_passed}/${mermaid_result.diagrams_checked} diagrams passed, ${mermaid_result.issues.length} issues found</field>
|
|
380
380
|
</block>
|
|
381
381
|
|
|
382
382
|
<block type="checkpoint" id="CP6" name="mermaid_checked" desc="Mermaid compatibility check complete">
|
|
@@ -474,7 +474,7 @@ Mermaid Compatibility: ${mermaid_result.diagrams_passed}/${mermaid_result.diagra
|
|
|
474
474
|
</block>
|
|
475
475
|
|
|
476
476
|
<block type="event" id="E8" action="log" level="info" desc="Quality check complete">
|
|
477
|
-
Quality check complete for {platform_id}
|
|
477
|
+
<field name="message">Quality check complete for {platform_id}
|
|
478
478
|
- Total Checks: ${quality_report.summary.total_checks}
|
|
479
479
|
- Passed: ${quality_report.summary.passed}
|
|
480
480
|
- Warnings: ${quality_report.summary.warnings}
|
|
@@ -486,7 +486,7 @@ Quality check complete for {platform_id}
|
|
|
486
486
|
- Cross-Validation: ${quality_report.cross_validation.status}
|
|
487
487
|
- Consistency: ${quality_report.consistency.status}
|
|
488
488
|
- Source Traceability: ${quality_report.source_traceability.status}
|
|
489
|
-
- Mermaid Compatibility: ${quality_report.mermaid_compatibility.status}
|
|
489
|
+
- Mermaid Compatibility: ${quality_report.mermaid_compatibility.status}</field>
|
|
490
490
|
</block>
|
|
491
491
|
|
|
492
492
|
<!-- ============================================================
|
|
@@ -515,7 +515,7 @@ Quality check complete for {platform_id}
|
|
|
515
515
|
</try>
|
|
516
516
|
<catch on="platform_dir_not_found">
|
|
517
517
|
<block type="event" id="EH1-E1" action="log" level="error" desc="Platform directory not found">
|
|
518
|
-
Platform directory not found: {platform_dir}
|
|
518
|
+
<field name="message">Platform directory not found: {platform_dir}</field>
|
|
519
519
|
</block>
|
|
520
520
|
<block type="output" id="EH1-O1">
|
|
521
521
|
<field name="status" value="failed"/>
|
|
@@ -524,20 +524,20 @@ Platform directory not found: {platform_dir}
|
|
|
524
524
|
</catch>
|
|
525
525
|
<catch on="required_document_missing">
|
|
526
526
|
<block type="event" id="EH1-E2" action="log" level="warn" desc="Required document missing">
|
|
527
|
-
Required document missing: {missing_document}
|
|
527
|
+
<field name="message">Required document missing: {missing_document}</field>
|
|
528
528
|
</block>
|
|
529
529
|
<field name="continue" value="true"/>
|
|
530
530
|
<field name="record_in" value="completeness.documents_missing"/>
|
|
531
531
|
</catch>
|
|
532
532
|
<catch on="analysis_report_missing">
|
|
533
533
|
<block type="event" id="EH1-E3" action="log" level="warn" desc="Analysis report missing">
|
|
534
|
-
Analysis report missing, skipping cross-validation with source
|
|
534
|
+
<field name="message">Analysis report missing, skipping cross-validation with source</field>
|
|
535
535
|
</block>
|
|
536
536
|
<field name="continue" value="true"/>
|
|
537
537
|
</catch>
|
|
538
538
|
<catch on="mermaid_parsing_error">
|
|
539
539
|
<block type="event" id="EH1-E4" action="log" level="warn" desc="Mermaid parsing error">
|
|
540
|
-
Mermaid parsing error in {diagram_location}
|
|
540
|
+
<field name="message">Mermaid parsing error in {diagram_location}</field>
|
|
541
541
|
</block>
|
|
542
542
|
<field name="continue" value="true"/>
|
|
543
543
|
<field name="record_in" value="mermaid_compatibility.issues"/>
|