speccrew 0.6.69 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.speccrew/agents/speccrew-task-worker.md +1 -1
- package/.speccrew/agents/speccrew-team-leader.md +336 -189
- package/.speccrew/skills/speccrew-agentflow-manager/SKILL.md +161 -0
- package/.speccrew/skills/speccrew-agentflow-manager/workflow.agentflow.xml +347 -0
- package/.speccrew/skills/speccrew-deploy-build/SKILL.md +3 -56
- package/.speccrew/skills/speccrew-deploy-build/workflow.agentflow.xml +125 -0
- package/.speccrew/skills/speccrew-deploy-migrate/SKILL.md +3 -64
- package/.speccrew/skills/speccrew-deploy-migrate/workflow.agentflow.xml +135 -0
- package/.speccrew/skills/speccrew-deploy-smoke-test/SKILL.md +4 -156
- package/.speccrew/skills/speccrew-deploy-smoke-test/workflow.agentflow.xml +178 -0
- package/.speccrew/skills/speccrew-deploy-startup/SKILL.md +3 -135
- package/.speccrew/skills/speccrew-deploy-startup/workflow.agentflow.xml +223 -0
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-backend/workflow.agentflow.xml +254 -0
- package/.speccrew/skills/speccrew-dev-desktop-electron/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-desktop-electron/workflow.agentflow.xml +259 -0
- package/.speccrew/skills/speccrew-dev-desktop-tauri/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-desktop-tauri/workflow.agentflow.xml +245 -0
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-frontend/workflow.agentflow.xml +262 -0
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-mobile/workflow.agentflow.xml +244 -0
- package/.speccrew/skills/speccrew-dev-review-backend/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-review-backend/workflow.agentflow.xml +251 -0
- package/.speccrew/skills/speccrew-dev-review-desktop/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-review-desktop/workflow.agentflow.xml +214 -0
- package/.speccrew/skills/speccrew-dev-review-frontend/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-review-frontend/workflow.agentflow.xml +213 -0
- package/.speccrew/skills/speccrew-dev-review-mobile/SKILL.md +10 -2
- package/.speccrew/skills/speccrew-dev-review-mobile/workflow.agentflow.xml +214 -0
- package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-fd-api-contract/workflow.agentflow.xml +222 -0
- package/.speccrew/skills/speccrew-fd-feature-analyze/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-fd-feature-analyze/workflow.agentflow.xml +223 -0
- package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-fd-feature-design/workflow.agentflow.xml +322 -0
- package/.speccrew/skills/speccrew-get-timestamp/SKILL.md +3 -39
- package/.speccrew/skills/speccrew-get-timestamp/workflow.agentflow.xml +43 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +57 -508
- package/.speccrew/skills/{speccrew-knowledge-bizs-api-analyze-xml/SKILL.md → speccrew-knowledge-bizs-api-analyze/workflow.agentflow.xml} +1 -154
- package/.speccrew/skills/speccrew-knowledge-bizs-api-graph/SKILL.md +73 -283
- package/.speccrew/skills/{speccrew-knowledge-bizs-api-graph-xml/SKILL.md → speccrew-knowledge-bizs-api-graph/workflow.agentflow.xml} +0 -298
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +931 -801
- package/.speccrew/skills/{speccrew-knowledge-bizs-dispatch-xml/SKILL.md → speccrew-knowledge-bizs-dispatch/workflow.agentflow.xml} +42 -272
- package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries/SKILL.md +263 -71
- package/.speccrew/skills/{speccrew-knowledge-bizs-identify-entries-xml/SKILL.md → speccrew-knowledge-bizs-identify-entries/workflow.agentflow.xml} +8 -184
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/SKILL.md +200 -181
- package/.speccrew/skills/{speccrew-knowledge-bizs-init-features-xml/SKILL.md → speccrew-knowledge-bizs-init-features/workflow.agentflow.xml} +7 -134
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/SKILL.md +5 -89
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/workflow.agentflow.xml +129 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +454 -326
- package/.speccrew/skills/{speccrew-knowledge-bizs-ui-analyze-xml/SKILL.md → speccrew-knowledge-bizs-ui-analyze/workflow.agentflow.xml} +8 -128
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph/SKILL.md +302 -247
- package/.speccrew/skills/{speccrew-knowledge-bizs-ui-graph-xml/SKILL.md → speccrew-knowledge-bizs-ui-graph/workflow.agentflow.xml} +7 -199
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/SKILL.md +267 -156
- package/.speccrew/skills/{speccrew-knowledge-bizs-ui-style-extract-xml/SKILL.md → speccrew-knowledge-bizs-ui-style-extract/workflow.agentflow.xml} +7 -151
- package/.speccrew/skills/speccrew-knowledge-graph-query/SKILL.md +3 -122
- package/.speccrew/skills/speccrew-knowledge-graph-query/workflow.agentflow.xml +106 -0
- package/.speccrew/skills/speccrew-knowledge-graph-write/SKILL.md +3 -80
- package/.speccrew/skills/speccrew-knowledge-graph-write/workflow.agentflow.xml +152 -0
- package/.speccrew/skills/speccrew-knowledge-module-summarize/SKILL.md +371 -265
- package/.speccrew/skills/{speccrew-knowledge-module-summarize-xml/SKILL.md → speccrew-knowledge-module-summarize/workflow.agentflow.xml} +7 -197
- package/.speccrew/skills/speccrew-knowledge-system-summarize/SKILL.md +45 -333
- package/.speccrew/skills/{speccrew-knowledge-system-summarize-xml/SKILL.md → speccrew-knowledge-system-summarize/workflow.agentflow.xml} +0 -177
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/SKILL.md +174 -727
- package/.speccrew/skills/{speccrew-knowledge-techs-dispatch-xml/SKILL.md → speccrew-knowledge-techs-dispatch/workflow.agentflow.xml} +10 -351
- package/.speccrew/skills/speccrew-knowledge-techs-generate/SKILL.md +20 -150
- package/.speccrew/skills/{speccrew-knowledge-techs-generate-xml/SKILL.md → speccrew-knowledge-techs-generate/workflow.agentflow.xml} +0 -169
- package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/SKILL.md +75 -587
- package/.speccrew/skills/{speccrew-knowledge-techs-generate-conventions-xml/SKILL.md → speccrew-knowledge-techs-generate-conventions/workflow.agentflow.xml} +0 -153
- package/.speccrew/skills/speccrew-knowledge-techs-generate-quality/SKILL.md +463 -297
- package/.speccrew/skills/{speccrew-knowledge-techs-generate-quality-xml/SKILL.md → speccrew-knowledge-techs-generate-quality/workflow.agentflow.xml} +0 -164
- package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/SKILL.md +57 -292
- package/.speccrew/skills/{speccrew-knowledge-techs-generate-ui-style-xml/SKILL.md → speccrew-knowledge-techs-generate-ui-style/workflow.agentflow.xml} +2 -193
- package/.speccrew/skills/speccrew-knowledge-techs-index/SKILL.md +49 -335
- package/.speccrew/skills/{speccrew-knowledge-techs-index-xml/SKILL.md → speccrew-knowledge-techs-index/workflow.agentflow.xml} +0 -167
- package/.speccrew/skills/speccrew-knowledge-techs-init/SKILL.md +28 -109
- package/.speccrew/skills/{speccrew-knowledge-techs-init-xml/SKILL.md → speccrew-knowledge-techs-init/workflow.agentflow.xml} +0 -189
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/SKILL.md +3 -487
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/workflow.agentflow.xml +278 -0
- package/.speccrew/skills/speccrew-pm-knowledge-detector/SKILL.md +3 -71
- package/.speccrew/skills/speccrew-pm-knowledge-detector/workflow.agentflow.xml +108 -0
- package/.speccrew/skills/speccrew-pm-module-initializer/SKILL.md +3 -107
- package/.speccrew/skills/speccrew-pm-module-initializer/workflow.agentflow.xml +139 -0
- package/.speccrew/skills/speccrew-pm-module-matcher/SKILL.md +3 -115
- package/.speccrew/skills/speccrew-pm-module-matcher/workflow.agentflow.xml +146 -0
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +3 -343
- package/.speccrew/skills/speccrew-pm-requirement-analysis/workflow.agentflow.xml +174 -0
- package/.speccrew/skills/speccrew-pm-requirement-assess/SKILL.md +3 -91
- package/.speccrew/skills/speccrew-pm-requirement-assess/workflow.agentflow.xml +173 -0
- package/.speccrew/skills/speccrew-pm-requirement-clarify/SKILL.md +3 -224
- package/.speccrew/skills/speccrew-pm-requirement-clarify/workflow.agentflow.xml +159 -0
- package/.speccrew/skills/speccrew-pm-requirement-model/SKILL.md +3 -275
- package/.speccrew/skills/speccrew-pm-requirement-model/workflow.agentflow.xml +210 -0
- package/.speccrew/skills/speccrew-pm-requirement-simple/SKILL.md +3 -76
- package/.speccrew/skills/speccrew-pm-requirement-simple/workflow.agentflow.xml +120 -0
- package/.speccrew/skills/speccrew-pm-sub-prd-generate/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-pm-sub-prd-generate/workflow.agentflow.xml +218 -0
- package/.speccrew/skills/speccrew-sd-backend/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-sd-backend/workflow.agentflow.xml +264 -0
- package/.speccrew/skills/speccrew-sd-desktop/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-sd-desktop/workflow.agentflow.xml +288 -0
- package/.speccrew/skills/speccrew-sd-framework-evaluate/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-sd-framework-evaluate/workflow.agentflow.xml +235 -0
- package/.speccrew/skills/speccrew-sd-frontend/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-sd-frontend/workflow.agentflow.xml +299 -0
- package/.speccrew/skills/speccrew-sd-mobile/SKILL.md +7 -1
- package/.speccrew/skills/speccrew-sd-mobile/workflow.agentflow.xml +301 -0
- package/.speccrew/skills/speccrew-test-case-design/SKILL.md +165 -284
- package/.speccrew/skills/speccrew-test-case-design/workflow.agentflow.xml +210 -0
- package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +204 -324
- package/.speccrew/skills/speccrew-test-code-gen/workflow.agentflow.xml +265 -0
- package/.speccrew/skills/speccrew-test-reporter/SKILL.md +205 -184
- package/.speccrew/skills/speccrew-test-reporter/workflow.agentflow.xml +284 -0
- package/.speccrew/skills/speccrew-test-runner/SKILL.md +242 -241
- package/.speccrew/skills/speccrew-test-runner/workflow.agentflow.xml +314 -0
- package/bin/cli.js +8 -1
- package/lib/commands/init.js +11 -3
- package/lib/commands/update.js +11 -3
- package/lib/commands/validate.js +565 -0
- package/lib/utils.js +43 -0
- package/package.json +1 -1
- package/workspace-template/docs/rules/{xml-workflow-spec.md → agentflow-spec.md} +5 -5
- package/workspace-template/scripts/validate-agentflow.js +637 -0
- package/.speccrew/agents/speccrew-team-leader-xml.md +0 -480
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/STATUS-FORMATS.md +0 -99
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/batch-orchestrator.js +0 -176
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-next-batch.js +0 -150
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-pending-features.js +0 -106
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/mark-stale.js +0 -249
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/merge-features.js +0 -300
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/process-batch-results.js +0 -915
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/update-feature-status.js +0 -226
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/examples/features.json +0 -34
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/generate-inventory.js +0 -1087
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/test-inventory.js +0 -26
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/STATUS-FORMATS.md +0 -550
|
@@ -1,53 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
name: speccrew-knowledge-bizs-ui-graph-xml
|
|
3
|
-
description: Constructs knowledge graph data (nodes, edges, relationships) from UI analysis results using XML workflow blocks. Generates graph JSON files and completion markers for the bizs knowledge pipeline.
|
|
4
|
-
tools: Read, Write, Glob, Grep, Bash
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# UI Knowledge Graph Constructor (XML Workflow)
|
|
8
|
-
|
|
9
|
-
> **CRITICAL CONSTRAINT**: DO NOT create temporary scripts, batch files, or workaround code files (`.py`, `.bat`, `.sh`, `.ps1`, etc.) under any circumstances.
|
|
10
|
-
|
|
11
|
-
Construct knowledge graph data (nodes, edges, relationships) from UI feature analysis results and write completion marker files for the bizs knowledge pipeline.
|
|
12
|
-
|
|
13
|
-
## Language Adaptation
|
|
14
|
-
|
|
15
|
-
This skill automatically adapts to the user's input language. All documentation and output will be generated in the same language as the user's query.
|
|
16
|
-
|
|
17
|
-
## Trigger Scenarios
|
|
18
|
-
|
|
19
|
-
- "Construct graph data for UI feature {fileName}"
|
|
20
|
-
- "Generate graph nodes and edges from UI analysis"
|
|
21
|
-
- "Write completion markers for feature {fileName}"
|
|
22
|
-
|
|
23
|
-
## Input Variables
|
|
24
|
-
|
|
25
|
-
| Variable | Type | Description | Example |
|
|
26
|
-
|----------|------|-------------|---------|
|
|
27
|
-
| `{{feature}}` | object | Complete feature object from features.json | - |
|
|
28
|
-
| `{{fileName}}` | string | Feature file name | `"index"`, `"UserForm"` |
|
|
29
|
-
| `{{sourcePath}}` | string | Relative path to source file | `"frontend-web/src/views/system/user/index.vue"` |
|
|
30
|
-
| `{{documentPath}}` | string | Path to generated documentation | `"speccrew-workspace/knowledges/bizs/..."` |
|
|
31
|
-
| `{{module}}` | string | Business module name | `"system"`, `"trade"`, `"_root"` |
|
|
32
|
-
| `{{platform_type}}` | string | Platform type | `"web"`, `"mobile"` |
|
|
33
|
-
| `{{platform_subtype}}` | string | Platform subtype | `"vue"`, `"react"` |
|
|
34
|
-
| `{{completed_dir}}` | string | Marker files output directory | `"speccrew-workspace/knowledges/base/sync-state/knowledge-bizs/completed"` |
|
|
35
|
-
| `{{sourceFile}}` | string | Source features JSON file name | `"features-web-vue.json"` |
|
|
36
|
-
| `{{status}}` | string | Analysis status from UI analysis | `"success"`, `"partial"`, `"failed"` |
|
|
37
|
-
| `{{analysisNotes}}` | string | Analysis notes from UI analysis | `"Successfully analyzed..."` |
|
|
38
|
-
|
|
39
|
-
## Output
|
|
40
|
-
|
|
41
|
-
**Generated Files (MANDATORY):**
|
|
42
|
-
1. `{{completed_dir}}/{module}-{subpath}-{fileName}.graph.json` - Graph data with nodes and edges
|
|
43
|
-
2. `{{completed_dir}}/{module}-{subpath}-{fileName}.graph-done.json` - Graph completion marker
|
|
44
|
-
|
|
45
|
-
## Workflow
|
|
46
|
-
|
|
47
|
-
> **REQUIRED**: Before executing this workflow, read the XML workflow specification: `speccrew-workspace/docs/rules/xml-workflow-spec.md`
|
|
48
|
-
|
|
49
|
-
```xml
|
|
50
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
51
2
|
<workflow id="ui-knowledge-graph-construction" version="1.0" status="pending" desc="Construct graph data from UI analysis results">
|
|
52
3
|
|
|
53
4
|
<!-- ============================================================
|
|
@@ -70,13 +21,13 @@ This skill automatically adapts to the user's input language. All documentation
|
|
|
70
21
|
<!-- ============================================================
|
|
71
22
|
Global Continuous Execution Rules
|
|
72
23
|
============================================================ -->
|
|
73
|
-
<block type="rule" id="GLOBAL-R1" level="forbidden" desc="Continuous execution constraints
|
|
24
|
+
<block type="rule" id="GLOBAL-R1" level="forbidden" desc="Continuous execution constraints 鈥?NEVER violate">
|
|
74
25
|
<field name="text">DO NOT ask user "Should I continue?" or "How would you like to proceed?" during execution</field>
|
|
75
|
-
<field name="text">DO NOT offer options like "Full execution / Partial / Stop"
|
|
76
|
-
<field name="text">DO NOT suggest "Due to context window limits, let me pause"
|
|
77
|
-
<field name="text">DO NOT estimate workload and suggest breaking it into phases
|
|
78
|
-
<field name="text">DO NOT warn about "large number of files" or "this may take a while"
|
|
79
|
-
<field name="text">Context window management: if approaching limit, save progress to checkpoint file and resume
|
|
26
|
+
<field name="text">DO NOT offer options like "Full execution / Partial / Stop" 鈥?always execute ALL tasks to completion</field>
|
|
27
|
+
<field name="text">DO NOT suggest "Due to context window limits, let me pause" 鈥?complete current task, use checkpoint for resumption</field>
|
|
28
|
+
<field name="text">DO NOT estimate workload and suggest breaking it into phases 鈥?execute ALL items in sequence</field>
|
|
29
|
+
<field name="text">DO NOT warn about "large number of files" or "this may take a while" 鈥?proceed with generation</field>
|
|
30
|
+
<field name="text">Context window management: if approaching limit, save progress to checkpoint file and resume 鈥?do NOT ask user for guidance</field>
|
|
80
31
|
</block>
|
|
81
32
|
|
|
82
33
|
<!-- ============================================================
|
|
@@ -302,146 +253,3 @@ This skill automatically adapts to the user's input language. All documentation
|
|
|
302
253
|
</block>
|
|
303
254
|
|
|
304
255
|
</workflow>
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
## Node Structure Reference
|
|
308
|
-
|
|
309
|
-
```json
|
|
310
|
-
{
|
|
311
|
-
"id": "page-{module}-{feature-name}",
|
|
312
|
-
"type": "page",
|
|
313
|
-
"name": "<display name>",
|
|
314
|
-
"module": "{{module}}",
|
|
315
|
-
"sourcePath": "{{sourcePath}}",
|
|
316
|
-
"documentPath": "{{documentPath}}",
|
|
317
|
-
"description": "...",
|
|
318
|
-
"tags": [...],
|
|
319
|
-
"keywords": [...],
|
|
320
|
-
"context": {
|
|
321
|
-
"route": "...",
|
|
322
|
-
"components": [...],
|
|
323
|
-
"platform": "{{platform_type}}-{{platform_subtype}}"
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
## Edge Structure Reference
|
|
329
|
-
|
|
330
|
-
```json
|
|
331
|
-
{
|
|
332
|
-
"source": "page-{module}-{name}",
|
|
333
|
-
"target": "api-{module}-{api-name}",
|
|
334
|
-
"type": "calls",
|
|
335
|
-
"metadata": {
|
|
336
|
-
"trigger": "onClick|onMounted|onSubmit|...",
|
|
337
|
-
"method": "getUserList",
|
|
338
|
-
"context": "Page initialization - load user list"
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
```
|
|
342
|
-
|
|
343
|
-
## Node ID Naming Convention
|
|
344
|
-
|
|
345
|
-
```
|
|
346
|
-
{type}-{module}-{name}
|
|
347
|
-
|
|
348
|
-
Examples:
|
|
349
|
-
page-system-user-list
|
|
350
|
-
page-system-user-detail
|
|
351
|
-
component-system-user-form
|
|
352
|
-
component-shared-delete-confirm
|
|
353
|
-
```
|
|
354
|
-
|
|
355
|
-
## Marker File Naming Convention
|
|
356
|
-
|
|
357
|
-
```
|
|
358
|
-
{completed_dir}/{module}-{subpath}-{fileName}.graph.json
|
|
359
|
-
```
|
|
360
|
-
|
|
361
|
-
**Naming Rule Explanation:**
|
|
362
|
-
|
|
363
|
-
The marker filename MUST follow the composite naming pattern `{module}-{subpath}-{fileName}` to prevent conflicts between same-named source files.
|
|
364
|
-
|
|
365
|
-
**How to Extract Each Component from `{{sourcePath}}`:**
|
|
366
|
-
|
|
367
|
-
1. **module**: Use `{{module}}` input variable directly (e.g., `system`, `trade`, `bpm`)
|
|
368
|
-
|
|
369
|
-
2. **subpath**: Extract the middle path between the platform source root and the file name:
|
|
370
|
-
- Remove the top-level directory prefix (e.g., `yudao-ui/yudao-ui-admin-vue3/src/views/`)
|
|
371
|
-
- Remove the file name at the end
|
|
372
|
-
- Replace path separators (`/`) with hyphens (`-`)
|
|
373
|
-
- If the file is at the module root directory, subpath will be empty → omit from filename
|
|
374
|
-
|
|
375
|
-
3. **fileName**: Use `{{fileName}}` input variable (file name WITHOUT extension)
|
|
376
|
-
|
|
377
|
-
**Examples:**
|
|
378
|
-
|
|
379
|
-
| sourcePath | module | subpath | fileName | Marker Filename |
|
|
380
|
-
|------------|--------|---------|----------|-----------------|
|
|
381
|
-
| `yudao-ui/.../system/notify/message/index.vue` | `system` | `notify-message` | `index` | `system-notify-message-index.graph.json` |
|
|
382
|
-
| `yudao-ui/.../system/user/index.vue` | `system` | `user` | `index` | `system-user-index.graph.json` |
|
|
383
|
-
| `yudao-ui/.../bpm/process-instance/index.vue` | `bpm` | `process-instance` | `index` | `bpm-process-instance-index.graph.json` |
|
|
384
|
-
|
|
385
|
-
**Special Case - Empty subpath:**
|
|
386
|
-
- If the file is directly in the module root directory: `{module}-{fileName}.graph.json`
|
|
387
|
-
- Example: `yudao-ui/.../system/index.vue` → `system-index.graph.json`
|
|
388
|
-
|
|
389
|
-
## Edge Types Reference
|
|
390
|
-
|
|
391
|
-
| Edge Type | Direction | When to Create |
|
|
392
|
-
|-----------|-----------|----------------|
|
|
393
|
-
| `calls` | page → api | Page calls an API endpoint |
|
|
394
|
-
| `navigates-to` | page → page | Page navigates to another page |
|
|
395
|
-
| `uses` | page → component | Page uses a shared/local component |
|
|
396
|
-
|
|
397
|
-
## API Coverage Verification Checklist
|
|
398
|
-
|
|
399
|
-
- [ ] List ALL imported API functions from the source file
|
|
400
|
-
- [ ] For each imported API, verify there is a corresponding `calls` edge
|
|
401
|
-
- [ ] Check event handlers for API calls
|
|
402
|
-
- [ ] Check lifecycle hooks for initialization API calls
|
|
403
|
-
- [ ] Check status toggles, action buttons for special operation APIs
|
|
404
|
-
- [ ] Verify no imported API is left unmapped
|
|
405
|
-
|
|
406
|
-
## Pre-write Verification Checklist
|
|
407
|
-
|
|
408
|
-
### Graph JSON Verification:
|
|
409
|
-
- [ ] Filename follows `{module}-{subpath}-{fileName}.graph.json` pattern
|
|
410
|
-
- [ ] JSON is valid (no trailing commas, all strings quoted)
|
|
411
|
-
- [ ] Root-level `module` field is present
|
|
412
|
-
- [ ] `nodes` and `edges` are arrays
|
|
413
|
-
- [ ] ALL imported API functions are represented as `calls` edges
|
|
414
|
-
|
|
415
|
-
### Completion Marker Verification:
|
|
416
|
-
- [ ] Filename follows `{module}-{subpath}-{fileName}.graph-done.json` pattern
|
|
417
|
-
- [ ] JSON is valid
|
|
418
|
-
- [ ] `fileName` does NOT contain file extension
|
|
419
|
-
- [ ] `sourceFile` matches `features-{platform}.json` pattern
|
|
420
|
-
- [ ] `module` field is present and non-empty
|
|
421
|
-
- [ ] `documentPath` is `"N/A"` when no document exists (not empty string)
|
|
422
|
-
- [ ] `nodeCount` and `edgeCount` match actual graph data
|
|
423
|
-
|
|
424
|
-
## Constraints
|
|
425
|
-
|
|
426
|
-
1. **100% API coverage** - ALL imported API functions MUST be represented as `calls` edges
|
|
427
|
-
2. **Valid JSON format** - Both `.graph.json` and `.graph-done.json` MUST be valid JSON
|
|
428
|
-
3. **Root-level module field** - `.graph.json` MUST include `module` at root level
|
|
429
|
-
4. **Correct filename pattern** - Use `{module}-{subpath}-{fileName}` composite naming
|
|
430
|
-
5. **No file extension in fileName** - The `fileName` field in `.graph-done.json` MUST NOT include extension
|
|
431
|
-
6. **documentPath as N/A** - Use `"N/A"` when no document exists, never empty string
|
|
432
|
-
|
|
433
|
-
## Task Completion Report
|
|
434
|
-
|
|
435
|
-
When the task is complete, report the following:
|
|
436
|
-
|
|
437
|
-
**Status:** `success` | `partial` | `failed`
|
|
438
|
-
|
|
439
|
-
**Summary:**
|
|
440
|
-
- Feature: `{{fileName}}`
|
|
441
|
-
- Module: `{{module}}`
|
|
442
|
-
- Nodes constructed: `{{nodeCount}}`
|
|
443
|
-
- Edges constructed: `{{edgeCount}}`
|
|
444
|
-
|
|
445
|
-
**Files Generated:**
|
|
446
|
-
- `{{completed_dir}}/{marker-filename}.graph.json`
|
|
447
|
-
- `{{completed_dir}}/{marker-filename}.graph-done.json`
|