speccrew 0.6.46 → 0.6.47

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.
@@ -99,7 +99,6 @@ Stage 4: System Summary
99
99
  ## XML Workflow Definition
100
100
 
101
101
  <workflow id="bizs-dispatch-main" status="pending" version="1.0" desc="bizs knowledge base generation 5-stage pipeline">
102
- > **REQUIRED**: Before executing this workflow, read the XML workflow specification: `docs/rules/xml-workflow-spec.md`
103
102
 
104
103
  <!-- ============================================================
105
104
  Input Parameters Definition
@@ -824,41 +823,11 @@ Failure rate exceeds 50%, terminating entire pipeline
824
823
 
825
824
  ---
826
825
 
827
- ## Input/Output Specification (Supplementary)
828
-
829
- ### Input Parameters
830
-
831
- | Variable | Description | Default |
832
- |----------|-------------|---------|
833
- | `source_path` | Source code path (can be a subdirectory; auto-detects platform root by traversing upward) | project root |
834
- | `language` | User's language code (e.g., "zh", "en") | **REQUIRED** |
835
- | `sync_mode` | `"full"` or `"incremental"` | `"full"` |
836
- | `base_commit` | (incremental only) Git base commit hash | — |
837
- | `head_commit` | (incremental only) Git HEAD commit hash | `HEAD` |
838
- | `changed_files` | (incremental only) Pre-computed changed file list | — |
839
- | `max_concurrent_workers` | Maximum parallel Worker Agents | `5` |
840
- | `workspace_path` | **(required)** Absolute path to speccrew-workspace directory | — |
841
- | `sync_state_bizs_dir` | **(required)** Absolute path to `knowledges/base/sync-state/knowledge-bizs/` | — |
842
- | `ide_skills_dir` | **(required)** Absolute path to IDE skills directory (e.g., `.qoder/skills`, `.cursor/skills`) | — |
843
- | `configs_dir` | **(required)** Absolute path to `docs/configs/` directory | — |
844
- | `graph_root` | Graph data output root path (absolute path preferred) | `{workspace_path}/knowledges/bizs/graph` |
845
- | `completed_dir` | **(required)** Marker file output directory for Worker results (absolute path required) | — |
846
-
847
- > **MANDATORY**: All path parameters MUST be absolute paths provided by the caller. DO NOT use ListDir to search for script locations. DO NOT construct paths by guessing or relative path resolution.
848
-
849
- ### Output Files
850
-
851
- - Entry directories: `{sync_state_bizs_dir}/entry-dirs-{platform}.json`
852
- - Feature inventory: `{sync_state_bizs_dir}/features-{platform}.json`
853
- - Feature docs: `{workspace_path}/knowledges/bizs/{platform}/{module}/features/*.md`
854
- - Module overviews: `{workspace_path}/knowledges/bizs/{platform}/{module}/*-overview.md`
855
- - UI style patterns: `{workspace_path}/knowledges/techs/{platform_id}/ui-style-patterns/` (page-types/, components/, layouts/)
856
- - System overview: `{workspace_path}/knowledges/bizs/system-overview.md`
857
- - Graph data: `{workspace_path}/knowledges/bizs/graph/`
826
+ ## Appendix: Reference
858
827
 
859
- ---
828
+ ### Skill Routing Table (Stage 2)
860
829
 
861
- ## Skill Routing Table (Stage 2)
830
+ > **Note**: Detailed routing logic is defined in XML Stage 2 gateway (S2-G1).
862
831
 
863
832
  | platformType | skill_name | Description |
864
833
  |--------------|------------|-------------|
@@ -867,11 +836,9 @@ Failure rate exceeds 50%, terminating entire pipeline
867
836
  | `desktop` | `speccrew-knowledge-bizs-ui-analyze-xml` | Desktop apps (Electron/WPF) |
868
837
  | `backend` | `speccrew-knowledge-bizs-api-analyze-xml` | Backend APIs (Java/Python/Node.js) |
869
838
 
870
- > **CRITICAL**: Use this routing table to select the correct skill for each feature.
871
-
872
839
  ---
873
840
 
874
- ## Platform Types
841
+ ### Platform Types
875
842
 
876
843
  | Platform Type | Platform Subtype | Description |
877
844
  |---------------|------------------|-------------|
@@ -882,9 +849,9 @@ Failure rate exceeds 50%, terminating entire pipeline
882
849
 
883
850
  ---
884
851
 
885
- ## Worker Completion Marker Format
852
+ ### Worker Completion Marker Format
886
853
 
887
- ### Marker File Naming Convention
854
+ #### Marker File Naming Convention
888
855
 
889
856
  **Pattern**: `{module}-{subpath}-{fileName}.{type}.json`
890
857
 
@@ -903,7 +870,7 @@ Failure rate exceeds 50%, terminating entire pipeline
903
870
  | `user/admin/UserController.java` | `user-admin-UserController.done.json` |
904
871
  | `order/api/v2/OrderService.java` | `order-api-v2-OrderService.done.json` |
905
872
 
906
- ### .done.json Required Fields
873
+ #### .done.json Required Fields
907
874
 
908
875
  ```json
909
876
  {
@@ -921,9 +888,9 @@ Failure rate exceeds 50%, terminating entire pipeline
921
888
 
922
889
  ---
923
890
 
924
- ## Batch Processing Details
891
+ ### Batch Processing Details
925
892
 
926
- ### get-batch Script Output Format
893
+ #### get-batch Script Output Format
927
894
 
928
895
  ```json
929
896
  {
@@ -944,7 +911,7 @@ Failure rate exceeds 50%, terminating entire pipeline
944
911
  }
945
912
  ```
946
913
 
947
- ### process-results Script Behavior
914
+ #### process-results Script Behavior
948
915
 
949
916
  - Scans `.done.json` files → updates feature status to `completed` in features-*.json
950
917
  - Scans `.graph-done.json` files → confirms graph data generation complete
@@ -953,128 +920,14 @@ Failure rate exceeds 50%, terminating entire pipeline
953
920
 
954
921
  ---
955
922
 
956
- ## Stateless Design (Context Recovery)
957
-
958
- Dispatch adopts a fully stateless file-driven design. If context compression or interruption occurs during execution:
959
-
960
- - No need to memorize any batch state or Worker output
961
- - Re-execute loop: `get-batch` will automatically recover from file state, skipping completed and in-progress features
962
- - `process-results` will process all uncleaned marker files
963
- - The entire flow is safely re-entrant
964
-
965
- ---
966
-
967
- ## Large-Scale Scenario Guidance
968
-
969
- When modules contain **more than 20 Features**:
970
-
971
- - **Single Agent Limit**: A single Worker Agent can reliably process ~20 features per session due to context window constraints. Beyond this, context degradation may cause incomplete document generation.
972
- - **Multi-Worker Strategy**: For modules with >20 features, the calling Agent should dispatch multiple Worker Agents in parallel, each handling a non-overlapping subset of features.
973
- - **Resume Support**: The `get-next-batch` script naturally supports resume across sessions — it skips features that already have `.done` files.
974
- - **Validation After Completion**: After all features are marked `analyzed=true`, run `process-batch-results` with `--validateDocs --syncStatePath` to verify document completeness.
975
-
976
- ---
977
-
978
- ## Error Handling Strategy
923
+ ### Stateless Design
979
924
 
980
- | Stage | Failure Scenario | Handling | Retry |
981
- |-------|-----------------|----------|-------|
982
- | Stage 0 | Platform detection fails | Abort pipeline, report error | No retry |
983
- | Stage 1a | Entry directory recognition fails | Abort pipeline, report platform details | No retry |
984
- | Stage 1b | Script execution fails | Abort pipeline, report error | No retry |
985
- | Stage 1c | Feature merge fails | Abort pipeline, do not proceed to Stage 2 until resolved | No retry |
986
- | Stage 2 | Single Worker fails | Mark feature as `failed`, continue other Workers | No auto-retry |
987
- | Stage 2 | Failure rate > 50% | Abort pipeline, report all failures | — |
988
- | Stage 3 | Single Worker fails | Skip that module, continue others | Retry once |
989
- | Stage 3.5 | Pattern extraction fails | Continue pipeline, report warning | — |
990
- | Stage 4 | Worker fails | Abort, preserve all generated content | Retry once |
991
-
992
- **Failed Feature Handling**: Features marked as `failed` via `update-feature-status` script retain their error details in `features-{platform}.json` for manual inspection or re-run.
925
+ Dispatch adopts a fully stateless file-driven design. Re-execute loop to recover: `get-batch` auto-recovers from file state; `process-results` handles uncleaned markers. The entire flow is safely re-entrant.
993
926
 
994
927
  ---
995
928
 
996
- ## Task Completion Report Format
997
-
998
- Upon completing all stages, output the following structured report:
999
-
1000
- ```json
1001
- {
1002
- "status": "success | partial | failed",
1003
- "skill": "speccrew-knowledge-bizs-dispatch-xml",
1004
- "stages_completed": ["stage_0", "stage_1a", "stage_1b", "stage_1c", "stage_2", "stage_3", "stage_3.5", "stage_4"],
1005
- "stages_failed": [],
1006
- "output_summary": {
1007
- "platforms_processed": ["web-vue", "backend-system"],
1008
- "features_analyzed": 32,
1009
- "modules_summarized": 8,
1010
- "ui_patterns_extracted": 15,
1011
- "system_overview_generated": true
1012
- },
1013
- "output_files": [
1014
- "knowledges/bizs/{platform}/{module}/features/*.md",
1015
- "knowledges/bizs/{platform}/{module}/*-overview.md",
1016
- "knowledges/techs/{platform_id}/ui-style-patterns/",
1017
- "knowledges/bizs/system-overview.md",
1018
- "knowledges/bizs/graph/"
1019
- ],
1020
- "errors": [],
1021
- "next_steps": ["Initialize techs knowledge base"]
1022
- }
1023
- ```
1024
-
1025
- ---
1026
-
1027
- ## Return Value Structure
1028
-
1029
- After all 5 stages complete, return a summary object to the caller:
1030
-
1031
- ```json
1032
- {
1033
- "status": "completed",
1034
- "pipeline": "bizs",
1035
- "stages": {
1036
- "stage0": { "status": "completed", "platforms": 2 },
1037
- "stage1a": { "status": "completed", "platforms": 2, "modules": 12 },
1038
- "stage1b": { "status": "completed", "platforms": 2, "features": 32 },
1039
- "stage1c": { "status": "completed", "mode": "full" },
1040
- "stage2": { "status": "completed", "analyzed": 32, "failed": 0, "graphWritten": 32 },
1041
- "stage3": { "status": "completed", "modules": 8, "failed": 0 },
1042
- "stage3_5": { "status": "completed", "platforms": 2, "patterns": 15 },
1043
- "stage4": { "status": "completed" }
1044
- },
1045
- "output": {
1046
- "system_overview": "{workspace_path}/knowledges/bizs/system-overview.md",
1047
- "graph_root": "{workspace_path}/knowledges/bizs/graph/"
1048
- }
1049
- }
1050
- ```
1051
-
1052
- ---
1053
-
1054
- ## CONTINUOUS EXECUTION RULES
1055
-
1056
- This skill MUST execute all stages continuously without unnecessary interruptions.
1057
-
1058
- ### FORBIDDEN Interruptions
1059
-
1060
- 1. DO NOT ask user "Should I continue?" after completing a stage
1061
- 2. DO NOT suggest "Let me split this into batches" or "Let's do this in parts"
1062
- 3. DO NOT pause to list what you plan to do next — just do it
1063
- 4. DO NOT ask for confirmation before generating output files
1064
- 5. DO NOT warn about "large number of files" — proceed with generation
1065
- 6. DO NOT offer "Should I proceed with the remaining items?"
1066
- 7. DO NOT present options like "Full execution / Sample execution / Pause"
1067
-
1068
- ### When to Pause (ONLY these cases)
929
+ ### Large-Scale Scenario Guidance
1069
930
 
1070
- 1. Explicit `<event action="confirm">` blocks in the workflow (e.g., Stage 0 platform confirmation)
1071
- 2. Ambiguous requirements that genuinely need clarification
1072
- 3. Unrecoverable errors that prevent further progress (failure rate > 50%)
1073
- 4. Security-sensitive operations (e.g., deleting existing files)
931
+ For modules with >20 features: dispatch multiple Worker Agents in parallel (each handles a subset). Use `get-next-batch` for resume support across sessions. Run `process-batch-results --validateDocs` after completion to verify.
1074
932
 
1075
- ### Batch Execution Behavior
1076
933
 
1077
- - When multiple features need processing, process ALL of them sequentially without asking
1078
- - Use marker files (.done.json) to track progress, enabling resumption if interrupted by context limits
1079
- - If context window is approaching limit, save progress to checkpoint and inform user how to resume
1080
- - NEVER voluntarily stop mid-batch to ask if user wants to continue
@@ -624,11 +624,13 @@ Stage 3 complete. Root INDEX.md generated.
624
624
 
625
625
  ---
626
626
 
627
- ## Worker Completion Marker Format
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
- ### Conventions Worker Done File
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
- ### UI-Style Worker Done File
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
- ### Quality Worker Done File
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
- ## Platform Status Tracking Fields
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
- ## Output per Platform
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
- ## Error Handling
778
+ ### Error Handling
777
779
 
778
- ### Error Handling Strategy
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
- ### Stage-Level Failure Handling
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
- ### Worker Failure Details
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
- ## Checklist
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
- ### Document Completeness Verification
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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "speccrew",
3
- "version": "0.6.46",
3
+ "version": "0.6.47",
4
4
  "description": "Spec-Driven Development toolkit for AI-powered IDEs",
5
5
  "author": "charlesmu99",
6
6
  "repository": {