@guanlin4924/devflow-pi 0.1.93 → 0.1.94

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.
Files changed (156) hide show
  1. package/README.md +6 -6
  2. package/package.json +1 -1
  3. package/plugins/devflow-core/extensions/devflow-core.ts +87 -33
  4. package/plugins/devflow-core/runtime/hooks/context_sync_gate.py +3 -3
  5. package/plugins/devflow-core/runtime/hooks/hook_common.py +65 -11
  6. package/plugins/devflow-core/runtime/hooks/start.py +13 -13
  7. package/plugins/devflow-core/skills/wireframe-proposal/SKILL.md +2 -2
  8. package/plugins/devflow-core/skills/wireframe-validate/SKILL.md +4 -4
  9. package/plugins/devflow-core/skills/workflow-orchestrator/SKILL.md +19 -19
  10. package/plugins/devflow-core/skills/workflow-orchestrator/agents/openai.yaml +2 -2
  11. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/acceptance_test_runner.py +5 -5
  12. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/advance_state.rb +9 -9
  13. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/api_test_matrix.py +2 -2
  14. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/architecture_assessment.rb +1 -1
  15. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/architecture_brief.rb +1 -1
  16. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/architecture_feasibility.rb +1 -1
  17. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/business_invalidation.rb +5 -5
  18. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/business_model_commit.rb +4 -4
  19. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/business_model_validate.py +1 -1
  20. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/business_source_resolver.rb +4 -4
  21. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/checker_adapter.rb +7 -7
  22. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/control_io.rb +51 -7
  23. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/cross_track_consistency_check.rb +1 -1
  24. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/execution_contract.rb +6 -6
  25. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/gate_runtime.rb +3 -3
  26. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/init_state.rb +5 -5
  27. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/init_workflow.rb +5 -5
  28. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/inspect_state.rb +13 -13
  29. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/machine_evidence.rb +3 -3
  30. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/manage_lessons.rb +7 -7
  31. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/parallel_recover.rb +2 -2
  32. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/parallel_run.rb +3 -3
  33. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/phase_ownership.rb +6 -6
  34. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/repair_control_plane.rb +1 -1
  35. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/requirement_coverage.rb +1 -1
  36. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/requirement_graph.rb +3 -3
  37. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/review_preflight.py +3 -3
  38. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/review_run.py +18 -18
  39. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/runtime_context_collector.rb +3 -3
  40. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/session_rollover.rb +4 -4
  41. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/static_runtime_context_collector.rb +2 -2
  42. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/sync_artifacts.rb +5 -5
  43. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/tdd_evidence.py +3 -3
  44. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/test_command_policy.py +2 -2
  45. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/test_task_binding_check.py +3 -3
  46. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/update_triage_route.rb +3 -3
  47. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/validate_state.rb +6 -6
  48. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/wireframe_commit.rb +5 -5
  49. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/wireframe_validate.py +1 -1
  50. package/plugins/devflow-core/skills/workflow-orchestrator/templates/acceptance-remediation.yaml +12 -12
  51. package/plugins/devflow-core/skills/workflow-orchestrator/templates/feature-development.yaml +205 -205
  52. package/plugins/devflow-core/skills/workflow-pipeline/SKILL.md +3 -3
  53. package/plugins/devflow-core/skills/workflow-pipeline/references/pipeline-flow.md +10 -10
  54. package/plugins/devflow-core/skills/workflow-project-context/SKILL.md +14 -14
  55. package/plugins/devflow-core/skills/workflow-project-context/assets/agents-md-template.md +7 -7
  56. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-backend-spec-template.md +4 -4
  57. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-frontend-spec-template.md +4 -4
  58. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-navigation-template.md +1 -1
  59. package/plugins/devflow-core/skills/workflow-project-context/assets/context-domain-index-template.md +4 -4
  60. package/plugins/devflow-core/skills/workflow-project-context/assets/context-spec-index-template.md +10 -10
  61. package/plugins/devflow-core/skills/workflow-project-context/assets/execution-contract-template.md +2 -2
  62. package/plugins/devflow-core/skills/workflow-project-context/assets/navigation-index-template.md +18 -18
  63. package/plugins/devflow-core/skills/workflow-project-context/assets/project-initialization-template.md +32 -32
  64. package/plugins/devflow-core/skills/workflow-project-context/assets/rules-index-template.md +30 -30
  65. package/plugins/devflow-core/skills/workflow-project-context/assets/state-template.md +7 -7
  66. package/plugins/devflow-core/skills/workflow-project-context/references/navigation-guide.md +37 -37
  67. package/plugins/devflow-core/skills/workflow-project-context/scripts/validate_initialization.py +16 -16
  68. package/plugins/devflow-design/skills/workflow-api-call-guide/SKILL.md +4 -4
  69. package/plugins/devflow-design/skills/workflow-api-contract/SKILL.md +8 -8
  70. package/plugins/devflow-design/skills/workflow-api-supplement/SKILL.md +5 -5
  71. package/plugins/devflow-design/skills/workflow-architecture-feasibility/SKILL.md +1 -1
  72. package/plugins/devflow-design/skills/workflow-backend-tech-spec/SKILL.md +39 -39
  73. package/plugins/devflow-design/skills/workflow-backend-tech-spec/assets/backend-spec-template.md +10 -10
  74. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/affected-module-exploration.md +2 -2
  75. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/code-explore-guide.md +1 -1
  76. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/project-rule-contract.md +20 -20
  77. package/plugins/devflow-design/skills/workflow-design-rule-pack/SKILL.md +8 -8
  78. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/index.md +3 -3
  79. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/accessibility.md +2 -2
  80. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/component-library.md +2 -2
  81. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/design-systems.md +1 -1
  82. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/responsive-grid.md +2 -2
  83. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/stack-guidelines.md +6 -6
  84. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/ux-patterns.md +2 -2
  85. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tokens/project-tokens.md +1 -1
  86. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/SKILL.md +12 -12
  87. package/plugins/devflow-design/skills/workflow-design-rule-pack/scripts/install.py +2 -2
  88. package/plugins/devflow-design/skills/workflow-feature-breakdown/SKILL.md +30 -30
  89. package/plugins/devflow-design/skills/workflow-feature-breakdown/assets/output-template.md +2 -2
  90. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/SKILL.md +41 -41
  91. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/assets/frontend-spec-template.md +15 -15
  92. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/affected-module-exploration.md +2 -2
  93. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/project-rule-contract.md +25 -25
  94. package/plugins/devflow-design/skills/workflow-integration-verify/SKILL.md +13 -13
  95. package/plugins/devflow-design/skills/workflow-ui-spec/SKILL.md +23 -23
  96. package/plugins/devflow-design/skills/workflow-ui-spec/assets/ui-spec-template.md +3 -3
  97. package/plugins/devflow-implementation/agents/implementation-worker.md +2 -2
  98. package/plugins/devflow-implementation/skills/workflow-bug-fix/SKILL.md +9 -9
  99. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/lesson-format.md +2 -2
  100. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/root-cause-ladder.md +1 -1
  101. package/plugins/devflow-implementation/skills/workflow-change-plan/SKILL.md +17 -17
  102. package/plugins/devflow-implementation/skills/workflow-change-plan/references/code-conventions.md +1 -1
  103. package/plugins/devflow-implementation/skills/workflow-change-plan/references/output-template.md +3 -3
  104. package/plugins/devflow-implementation/skills/workflow-change-plan/references/project-rule-contract.md +16 -16
  105. package/plugins/devflow-implementation/skills/workflow-execute-phase/SKILL.md +38 -38
  106. package/plugins/devflow-implementation/skills/workflow-execute-phase/references/execute-phase.md +1 -1
  107. package/plugins/devflow-intel/agents/project-scout.md +1 -1
  108. package/plugins/devflow-intel/extensions/devflow-intel.ts +20 -19
  109. package/plugins/devflow-intel/skills/code-index-query/SKILL.md +6 -6
  110. package/plugins/devflow-intel/skills/workflow-code-index/SKILL.md +12 -12
  111. package/plugins/devflow-intel/skills/workflow-code-index/references/discovery.md +2 -2
  112. package/plugins/devflow-intel/skills/workflow-code-index/references/query-guide.md +1 -1
  113. package/plugins/devflow-intel/skills/workflow-code-index/scripts/code_index.py +8 -8
  114. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/discovery.py +2 -2
  115. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/scanner.py +4 -1
  116. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/project_binding_check.py +4 -4
  117. package/plugins/devflow-intel/skills/workflow-context-sync/SKILL.md +14 -14
  118. package/plugins/devflow-intel/skills/workflow-context-sync/scripts/context_sync_cursor.py +2 -2
  119. package/plugins/devflow-intel/skills/workflow-update-navigation/SKILL.md +26 -26
  120. package/plugins/devflow-intel/skills/workflow-update-navigation/references/incremental-update-guide.md +2 -2
  121. package/plugins/devflow-quality/skills/code-review/SKILL.md +12 -12
  122. package/plugins/devflow-quality/skills/code-review/references/spec-checklist.md +1 -1
  123. package/plugins/devflow-quality/skills/workflow-acceptance-test-design/SKILL.md +8 -8
  124. package/plugins/devflow-quality/skills/workflow-gen-test-guide/SKILL.md +6 -6
  125. package/plugins/devflow-quality/skills/workflow-gen-test-guide/legacy/SKILL.md +14 -14
  126. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/SKILL.md +23 -23
  127. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/codebase-discovery.md +9 -9
  128. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/project-dsl-contract.md +1 -1
  129. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/compile_dsl.py +2 -2
  130. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/discover_codebases.py +2 -2
  131. package/plugins/devflow-quality/skills/workflow-release-closeout/SKILL.md +15 -15
  132. package/plugins/devflow-quality/skills/workflow-run-acceptance-tests/SKILL.md +5 -5
  133. package/plugins/devflow-requirements/skills/requirement-feasibility-review/SKILL.md +1 -1
  134. package/plugins/devflow-requirements/skills/workflow-demand-clarify/SKILL.md +10 -10
  135. package/plugins/devflow-requirements/skills/workflow-domain-modeling/SKILL.md +25 -25
  136. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/SKILL.md +49 -49
  137. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/assets/baseline-template.md +22 -22
  138. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/antipatterns.md +3 -3
  139. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/challenge-review-guide.md +3 -3
  140. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/project-context-guide.md +11 -11
  141. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/questioning.md +1 -1
  142. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/requirement-review-checklist.md +4 -4
  143. package/plugins/devflow-requirements/skills/workflow-requirement-triage/SKILL.md +16 -16
  144. package/plugins/devflow-requirements/skills/workflow-wayfinder/SKILL.md +6 -6
  145. package/src/cli.ts +15 -0
  146. package/src/constants.ts +1 -1
  147. package/src/initialization-store.ts +3 -2
  148. package/src/project-context.ts +36 -14
  149. package/src/project-documents.ts +61 -61
  150. package/src/project-initializer.ts +9 -8
  151. package/src/project-layout.ts +217 -0
  152. package/src/runtime.ts +3 -3
  153. package/templates/commands/start.md +4 -4
  154. package/templates/omp/AGENTS.md +1 -1
  155. package/templates/omp/hook-config.json +7 -7
  156. package/templates/omp/index-policy.json +8 -8
@@ -10,10 +10,10 @@ description: "Use after workflow-execute-phase to bind frozen API/page TC accept
10
10
  ## Hard Rules
11
11
 
12
12
  - MUST NOT hardcode `platform-backend` or `platform-frontend`.
13
- - MUST derive code roots from `.planning/navigation` and `.context/spec`.
14
- - MUST use `.planning/code-index/` for fine-grained entrypoint, route, component, API, call, import, and data-flow evidence when present.
13
+ - MUST derive code roots from `.devflow/planning/navigation` and `.devflow/context/spec`.
14
+ - MUST use `.devflow/planning/code-index/` for fine-grained entrypoint, route, component, API, call, import, and data-flow evidence when present.
15
15
  - MUST only generate `api-mainflow` and `ui-mainflow` cases.
16
- - MUST read the frozen `.planning/requirements/{feature}/tests.json` before selecting case scope. Only frozen positive `TC-*` with `test_type: api` or `page` may produce mainflow cases. Core-generated API TC carrying `execution.expect.error_code` is a negative/exception case and is excluded here; it is executed by `run-acceptance-tests`.
16
+ - MUST read the frozen `.devflow/planning/requirements/{feature}/tests.json` before selecting case scope. Only frozen positive `TC-*` with `test_type: api` or `page` may produce mainflow cases. Core-generated API TC carrying `execution.expect.error_code` is a negative/exception case and is excluded here; it is executed by `run-acceptance-tests`.
17
17
  - MUST NOT read `SUMMARY.md`, delivery self-reports, or diffs to decide what to test. Current code is allowed only to bind an already frozen TC to an entrypoint, selector, request, or runner adapter.
18
18
  - MUST run `scripts/compile_dsl.py` before final output.
19
19
  - MUST run `scripts/validate_case_payloads.py` before reporting success.
@@ -32,14 +32,14 @@ The workflow step id is `generate-mainflow-cases`, order `86`, and it depends on
32
32
 
33
33
  Always create or update:
34
34
 
35
- - `.planning/generated-cases/{feature}/source-map.md`
36
- - `.planning/generated-cases/{feature}/mainflow-analysis.md`
37
- - `.planning/generated-cases/{feature}/case-descriptions.json`
38
- - `.planning/generated-cases/{feature}/case-import-payloads.json`
39
- - `.planning/generated-cases/{feature}/validation-report.md`
40
- - `.planning/phases/{phase}/MAINFLOW-CASES.md`
35
+ - `.devflow/planning/generated-cases/{feature}/source-map.md`
36
+ - `.devflow/planning/generated-cases/{feature}/mainflow-analysis.md`
37
+ - `.devflow/planning/generated-cases/{feature}/case-descriptions.json`
38
+ - `.devflow/planning/generated-cases/{feature}/case-import-payloads.json`
39
+ - `.devflow/planning/generated-cases/{feature}/validation-report.md`
40
+ - `.devflow/planning/phases/{phase}/MAINFLOW-CASES.md`
41
41
 
42
- The discovery script also writes support artifact `.planning/generated-cases/{feature}/codebase-discovery.json`.
42
+ The discovery script also writes support artifact `.devflow/planning/generated-cases/{feature}/codebase-discovery.json`.
43
43
 
44
44
  ## Resource Loading
45
45
 
@@ -53,29 +53,29 @@ Read these references before generating cases:
53
53
 
54
54
  ## Process
55
55
 
56
- 1. Read `.planning/STATE.md` and resolve `{feature}` and `{phase}`.
56
+ 1. Read `.devflow/planning/STATE.md` and resolve `{feature}` and `{phase}`.
57
57
  2. Run codebase discovery:
58
58
 
59
59
  ```text
60
- devflow_mainflow(action="discover", args=["--output", ".planning/generated-cases/{feature}/codebase-discovery.json"])
60
+ devflow_mainflow(action="discover", args=["--output", ".devflow/planning/generated-cases/{feature}/codebase-discovery.json"])
61
61
  ```
62
62
 
63
63
  Stop if it exits non-zero.
64
64
 
65
65
  3. Read the frozen TC suite first. Record the source `TC-*` for every selected mainflow case; a missing or stale source TC is a blocker. Then read planning inputs when present:
66
- - `.planning/requirements/baseline.md`
67
- - `.planning/features/{feature}/功能点梳理.md`
68
- - `.planning/features/{feature}/UI-SPEC.md`
69
- - `.planning/features/{feature}/前端技术方案.md`
70
- - `.planning/features/{feature}/后端技术方案.md`
71
- - `.planning/features/{feature}/变更清单.md`
72
- - `.planning/features/{feature}/PROGRESS.md`
66
+ - `.devflow/planning/requirements/baseline.md`
67
+ - `.devflow/planning/features/{feature}/功能点梳理.md`
68
+ - `.devflow/planning/features/{feature}/UI-SPEC.md`
69
+ - `.devflow/planning/features/{feature}/前端技术方案.md`
70
+ - `.devflow/planning/features/{feature}/后端技术方案.md`
71
+ - `.devflow/planning/features/{feature}/变更清单.md`
72
+ - `.devflow/planning/features/{feature}/PROGRESS.md`
73
73
 
74
74
  4. Read discovery output, then read each discovered codebase's navigation and spec files. Select scan targets by codebase type:
75
75
  - Backend: router/controller, service/usecase, schema/dto/request/response, model/entity, API entry.
76
76
  - Frontend: router, pages/views, api/client, types/contracts, stores/hooks/components related to the feature.
77
77
 
78
- 5. If `.planning/code-index/` exists, query symbols and relations for candidate entrypoints and mainflow paths:
78
+ 5. If `.devflow/planning/code-index/` exists, query symbols and relations for candidate entrypoints and mainflow paths:
79
79
  - Backend/API: `routes_to`, `calls`, `reads`, `writes`, `config_uses`, `tested_by`.
80
80
  - Frontend/UI: route/page/component symbols, `routes_to`, `imports`, `calls` into API clients, store/hook relations.
81
81
  Read `evidence_path:evidence_line` before using an edge in case selection.
@@ -86,7 +86,7 @@ Read these references before generating cases:
86
86
  10. Compile descriptions into strict DSL:
87
87
 
88
88
  ```text
89
- devflow_mainflow(action="compile", args=[".planning/generated-cases/{feature}/case-descriptions.json", "--output", ".planning/generated-cases/{feature}/case-import-payloads.json"])
89
+ devflow_mainflow(action="compile", args=[".devflow/planning/generated-cases/{feature}/case-descriptions.json", "--output", ".devflow/planning/generated-cases/{feature}/case-import-payloads.json"])
90
90
  ```
91
91
 
92
92
  Stop if it exits non-zero. The compiler owns all target key selection, strategy decisions, and assertion formatting.
@@ -94,12 +94,12 @@ Read these references before generating cases:
94
94
  11. Validate compiled payloads:
95
95
 
96
96
  ```text
97
- devflow_mainflow(action="validate", args=[".planning/generated-cases/{feature}/case-import-payloads.json", "--discovery", ".planning/generated-cases/{feature}/codebase-discovery.json", "--output", ".planning/generated-cases/{feature}/validation-report.md"])
97
+ devflow_mainflow(action="validate", args=[".devflow/planning/generated-cases/{feature}/case-import-payloads.json", "--discovery", ".devflow/planning/generated-cases/{feature}/codebase-discovery.json", "--output", ".devflow/planning/generated-cases/{feature}/validation-report.md"])
98
98
  ```
99
99
 
100
100
  Stop if it exits non-zero.
101
101
 
102
- 11. Write `.planning/phases/{phase}/MAINFLOW-CASES.md` summarizing:
102
+ 11. Write `.devflow/planning/phases/{phase}/MAINFLOW-CASES.md` summarizing:
103
103
  - Generated case count by tag.
104
104
  - Import payload path.
105
105
  - Validation status.
@@ -1,16 +1,16 @@
1
1
  # Codebase Discovery
2
2
 
3
- Use discovery before reading feature source files. The goal is to make the skill portable across projects that have valid `.planning` and `.context/spec` initialization artifacts.
3
+ Use discovery before reading feature source files. The goal is to make the skill portable across projects that have valid `.devflow/planning` and `.devflow/context/spec` initialization artifacts.
4
4
 
5
5
  ## Required Sources
6
6
 
7
7
  Read and cross-check:
8
8
 
9
- - `.planning/STATE.md`
10
- - `.planning/navigation/INDEX.md`
11
- - `.context/spec/index.md`
12
- - `.planning/navigation/{CODEBASE}.md`
13
- - `.context/spec/{domain}/{CODEBASE}.md`
9
+ - `.devflow/planning/STATE.md`
10
+ - `.devflow/planning/navigation/INDEX.md`
11
+ - `.devflow/context/spec/index.md`
12
+ - `.devflow/planning/navigation/{CODEBASE}.md`
13
+ - `.devflow/context/spec/{domain}/{CODEBASE}.md`
14
14
 
15
15
  Do not infer code roots from common directory names. Treat the navigation/spec registry as the source of truth.
16
16
 
@@ -19,13 +19,13 @@ Do not infer code roots from common directory names. Treat the navigation/spec r
19
19
  Run:
20
20
 
21
21
  ```text
22
- devflow_mainflow(action="discover", args=["--output", ".planning/generated-cases/{feature}/codebase-discovery.json"])
22
+ devflow_mainflow(action="discover", args=["--output", ".devflow/planning/generated-cases/{feature}/codebase-discovery.json"])
23
23
  ```
24
24
 
25
25
  The script must fail if:
26
26
 
27
- - `.planning/navigation/INDEX.md` is missing.
28
- - `.context/spec/index.md` is missing.
27
+ - `.devflow/planning/navigation/INDEX.md` is missing.
28
+ - `.devflow/context/spec/index.md` is missing.
29
29
  - A registered codebase lacks a root path, navigation path, or spec path.
30
30
  - A registered root path does not exist.
31
31
  - A registered navigation/spec file does not exist.
@@ -25,7 +25,7 @@ Legacy normalization input is an object with metadata and cases:
25
25
  },
26
26
  "source_evidence": [
27
27
  {
28
- "path": ".planning/features/Feature/后端技术方案.md",
28
+ "path": ".devflow/planning/features/Feature/后端技术方案.md",
29
29
  "line": 120,
30
30
  "reason": "API contract source"
31
31
  }
@@ -559,13 +559,13 @@ def compile_all(payload: dict[str, Any], frozen_mainflow_tc_ids: set[str] | None
559
559
 
560
560
  def frozen_mainflow_tc_ids_from_cwd(cwd: Path) -> set[str] | None:
561
561
  """Return the frozen API/page suite for new workflows, else preserve legacy compilation."""
562
- state_path = cwd / ".planning" / "STATE.md"
562
+ state_path = cwd / ".devflow/planning" / "STATE.md"
563
563
  if not state_path.is_file():
564
564
  return None
565
565
  match = re.search(r"^current_feature:\s*['\"]?([^'\"\n]+)", state_path.read_text(encoding="utf-8"), re.MULTILINE)
566
566
  if not match:
567
567
  return None
568
- suite_path = cwd / ".planning" / "requirements" / match.group(1).strip() / "tests.json"
568
+ suite_path = cwd / ".devflow/planning" / "requirements" / match.group(1).strip() / "tests.json"
569
569
  if not suite_path.is_file():
570
570
  return None
571
571
  suite = json.loads(suite_path.read_text(encoding="utf-8"))
@@ -10,8 +10,8 @@ from datetime import datetime, timezone
10
10
  from pathlib import Path
11
11
 
12
12
 
13
- NAV_INDEX = Path(".planning/navigation/INDEX.md")
14
- SPEC_INDEX = Path(".context/spec/index.md")
13
+ NAV_INDEX = Path(".devflow/planning/navigation/INDEX.md")
14
+ SPEC_INDEX = Path(".devflow/context/spec/index.md")
15
15
 
16
16
 
17
17
  def clean_cell(value: str) -> str:
@@ -11,13 +11,13 @@ description: "在冻结需求验收测试全部通过后,执行 Devflow 自有
11
11
 
12
12
  ## 必须读取
13
13
 
14
- - `.planning/requirements/{feature}/tests.json`
15
- - `.planning/test-runs/{feature}/acceptance-results.json`
16
- - `.planning/features/{feature}/变更清单.md`
17
- - `.planning/code-index/AUDIT.md`
18
- - `.planning/PROJECT.md`
19
- - `.planning/STATE.md`
20
- - `.planning/navigation/INDEX.md`
14
+ - `.devflow/planning/requirements/{feature}/tests.json`
15
+ - `.devflow/planning/test-runs/{feature}/acceptance-results.json`
16
+ - `.devflow/planning/features/{feature}/变更清单.md`
17
+ - `.devflow/planning/code-index/AUDIT.md`
18
+ - `.devflow/planning/PROJECT.md`
19
+ - `.devflow/planning/STATE.md`
20
+ - `.devflow/planning/navigation/INDEX.md`
21
21
 
22
22
  ## 归档前置条件(全部满足)
23
23
 
@@ -32,17 +32,17 @@ description: "在冻结需求验收测试全部通过后,执行 Devflow 自有
32
32
  ## 收口动作
33
33
 
34
34
  1. 读取 Core-owned `acceptance-results.json`,计算通过/失败/阻塞数量。
35
- 2. 更新 `.planning/navigation/INDEX.md`,记录本次 code-index revision 和验收结果 fingerprint。
36
- 3. 在 `.planning/milestones/` 写入本版本的 ROADMAP、需求覆盖、测试结果、变更清单和已接受风险摘要。
37
- 4. 更新 `.planning/PROJECT.md` 的当前版本与下一步目标。
38
- 5. 通过 Core 状态工具更新 `.planning/STATE.md`,将当前 feature 标记为完成。
35
+ 2. 更新 `.devflow/planning/navigation/INDEX.md`,记录本次 code-index revision 和验收结果 fingerprint。
36
+ 3. 在 `.devflow/planning/milestones/` 写入本版本的 ROADMAP、需求覆盖、测试结果、变更清单和已接受风险摘要。
37
+ 4. 更新 `.devflow/planning/PROJECT.md` 的当前版本与下一步目标。
38
+ 5. 通过 Core 状态工具更新 `.devflow/planning/STATE.md`,将当前 feature 标记为完成。
39
39
  6. 归档写入完成后才允许创建 git tag;是否提交或推送由用户明确决定。
40
40
 
41
41
  ## 输出
42
42
 
43
- - `.planning/milestones/{version}-CLOSEOUT.md`
44
- - 更新后的 `.planning/PROJECT.md`
45
- - 更新后的 `.planning/STATE.md`
46
- - 更新后的 `.planning/navigation/INDEX.md`
43
+ - `.devflow/planning/milestones/{version}-CLOSEOUT.md`
44
+ - 更新后的 `.devflow/planning/PROJECT.md`
45
+ - 更新后的 `.devflow/planning/STATE.md`
46
+ - 更新后的 `.devflow/planning/navigation/INDEX.md`
47
47
 
48
48
  归档文件是结果摘要,不是通过依据;唯一的验收真相是 Core-owned `acceptance-results.json` 和 code-index 审计结果。
@@ -11,7 +11,7 @@ description: "Execute the frozen TC acceptance suite after code review. Use the
11
11
 
12
12
  测试意图只能读取:
13
13
 
14
- - `.planning/requirements/{feature}/tests.json` 中已冻结且未 stale 的 `TC-*`;
14
+ - `.devflow/planning/requirements/{feature}/tests.json` 中已冻结且未 stale 的 `TC-*`;
15
15
  - 图谱中被 TC 引用的已确认 REQ / BR / BC / AC、契约与架构风险;
16
16
  - 初始化发现的测试工具链能力。
17
17
 
@@ -19,7 +19,7 @@ description: "Execute the frozen TC acceptance suite after code review. Use the
19
19
 
20
20
  禁止读取或使用以下内容来扩大、缩小或补造验收范围:
21
21
 
22
- - `.planning/phases/{phase}/SUMMARY.md`;
22
+ - `.devflow/planning/phases/{phase}/SUMMARY.md`;
23
23
  - agent 的交付自述、代码 diff 或“已完成”结论;
24
24
  - 未冻结的临时需求列表。
25
25
 
@@ -29,7 +29,7 @@ description: "Execute the frozen TC acceptance suite after code review. Use the
29
29
  2. 读取冻结 TC 与其 oracle、前置数据、身份和自动化模式。
30
30
  对 `api_refs`、`workload_refs` 和 `risk_refs` 指向的专项用例,保留其契约、性能/迁移或韧性义务;没有适配器或环境时必须写为 blocked,不能用普通主流程替代。
31
31
  3. 读取代码审查报告、代码索引和实际源码,仅为每个 TC 绑定运行适配器;不得改变 TC 的断言、范围或预期。
32
- 4. 写入 `.planning/features/{feature}/acceptance-test-bindings.json`:
32
+ 4. 写入 `.devflow/planning/features/{feature}/acceptance-test-bindings.json`:
33
33
  - 固定 `test_suite.graph_revision` 与 `fingerprint`;
34
34
  - 每个 TC 恰好一条绑定;
35
35
  - `mode` 必须与冻结 TC 的 `automation_mode` 一致;
@@ -44,7 +44,7 @@ description: "Execute the frozen TC acceptance suite after code review. Use the
44
44
 
45
45
  ## 输出
46
46
 
47
- - `.planning/features/{feature}/acceptance-test-bindings.json`
48
- - `.planning/test-runs/{feature}/acceptance-results.json`
47
+ - `.devflow/planning/features/{feature}/acceptance-test-bindings.json`
48
+ - `.devflow/planning/test-runs/{feature}/acceptance-results.json`
49
49
 
50
50
  `acceptance-results.json` 是 Core-owned 的执行事实;Markdown 结论不能替代它。
@@ -15,7 +15,7 @@ In the main delivery chain, run this skill after `workflow-wayfinder` and `workf
15
15
 
16
16
  Read the raw requirement, meeting decisions, relevant existing requirement artifacts, and only the project/context sources needed to verify claims. Treat a later confirmed meeting decision as higher priority than an earlier conflicting PRD statement.
17
17
 
18
- If the project has `.planning/requirements/{feature}/`, create or update:
18
+ If the project has `.devflow/planning/requirements/{feature}/`, create or update:
19
19
 
20
20
  - `可实现性审查.md`
21
21
  - `可实现性审查.meta.json`
@@ -13,7 +13,7 @@ user-invocable: true
13
13
  pattern: inversion+generator
14
14
  inputs:
15
15
  - 用户的一句话需求/场景描述/业务反馈
16
- output: .planning/requirements/{功能名}/需求澄清记录.md
16
+ output: .devflow/planning/requirements/{功能名}/需求澄清记录.md
17
17
  phase-gate:
18
18
  step1: 场景共建:强制反讲确认业务故事
19
19
  step2: 决策驱动:L1-L4 分层决策树问答
@@ -37,7 +37,7 @@ allowed-tools:
37
37
 
38
38
  ## Phase 0 — Wayfinder Ticket 检查
39
39
 
40
- 开始前读取 `.planning/requirements/{功能名}/wayfinder/WF-*.md`:
40
+ 开始前读取 `.devflow/planning/requirements/{功能名}/wayfinder/WF-*.md`:
41
41
 
42
42
  - 仅在当前 Wayfinder Grilling ticket 明确要求一轮 L1-L4 访谈时继续。
43
43
  - 若不存在对应 ticket,先执行或回到 `workflow-wayfinder`;不要从分诊直接进入澄清。
@@ -69,8 +69,8 @@ allowed-tools:
69
69
 
70
70
  Always create or update:
71
71
 
72
- - `.planning/requirements/{功能名}/需求澄清记录.md` — 包含场景清单、决策日志、分级任务单
73
- - `.planning/requirements/{功能名}/需求澄清记录.meta.json` — 结构化元数据
72
+ - `.devflow/planning/requirements/{功能名}/需求澄清记录.md` — 包含场景清单、决策日志、分级任务单
73
+ - `.devflow/planning/requirements/{功能名}/需求澄清记录.meta.json` — 结构化元数据
74
74
 
75
75
  ### 输出契约(下游消费约定)
76
76
 
@@ -81,8 +81,8 @@ Always create or update:
81
81
  3. **分级任务单** → 核心确定区的 FP 直接进入 baseline;假设验证区的 BR 标记为待确认
82
82
 
83
83
  本技能不输出的内容(留给下游负责):
84
- - `.planning/requirements/baseline.md` — 由 workflow-requirement-baseline 生成
85
- - `.planning/features/{功能名}/功能点梳理.md` — 由 workflow-feature-breakdown 生成
84
+ - `.devflow/planning/requirements/baseline.md` — 由 workflow-requirement-baseline 生成
85
+ - `.devflow/planning/features/{功能名}/功能点梳理.md` — 由 workflow-feature-breakdown 生成
86
86
  - 任何技术方案 — 由 workflow-frontend/backend-tech-spec 生成
87
87
 
88
88
  ## 第一阶段:场景共建
@@ -203,7 +203,7 @@ Always create or update:
203
203
  - 单个答案会改变大部分后续问题。
204
204
  - 预计要拆多个 active slice 才能写出可靠 baseline。
205
205
 
206
- 切换时写入 `需求澄清记录.md` 的"转探索原因",并创建或更新 `.planning/requirements/{功能名}/决策地图.md`。后续由 `workflow-wayfinder` 维护 Destination / Frontier / Fog / Out of Scope 和 Research / Prototype / Grilling / Task ticket。
206
+ 切换时写入 `需求澄清记录.md` 的"转探索原因",并创建或更新 `.devflow/planning/requirements/{功能名}/决策地图.md`。后续由 `workflow-wayfinder` 维护 Destination / Frontier / Fog / Out of Scope 和 Research / Prototype / Grilling / Task ticket。
207
207
 
208
208
  ## 第二阶段.5 — 领域词汇维护(调用 workflow-domain-modeling 纪律)
209
209
 
@@ -225,7 +225,7 @@ Always create or update:
225
225
 
226
226
  ### 写入规则
227
227
 
228
- 写入 `.planning/CONTEXT.md`:
228
+ 写入 `.devflow/planning/CONTEXT.md`:
229
229
 
230
230
  ```markdown
231
231
  ## 词汇表
@@ -236,8 +236,8 @@ Always create or update:
236
236
  | 订单快照 | 订单状态变更时的全字段副本 | 当前订单主表最新值 |
237
237
  ```
238
238
 
239
- 如果 `.planning/CONTEXT.md` 不存在,创建它。
240
- 来源、决策层级、对应需求和术语变更历史写入 `.planning/requirements/{功能名}/领域模型记录.md`,不要写入 CONTEXT.md。
239
+ 如果 `.devflow/planning/CONTEXT.md` 不存在,创建它。
240
+ 来源、决策层级、对应需求和术语变更历史写入 `.devflow/planning/requirements/{功能名}/领域模型记录.md`,不要写入 CONTEXT.md。
241
241
 
242
242
  ### 术语冲突处理
243
243
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: workflow-domain-modeling
3
- description: "Use as the mandatory domain-modeling step after workflow-wayfinder and before requirement-feasibility-review; also use during later clarification or planning when domain terms, business concepts, status names, ownership, or decision records may be ambiguous. Challenges the glossary, stress-tests relationships, updates .planning/CONTEXT.md, and creates ADR notes only for hard-to-reverse surprising trade-offs."
3
+ description: "Use as the mandatory domain-modeling step after workflow-wayfinder and before requirement-feasibility-review; also use during later clarification or planning when domain terms, business concepts, status names, ownership, or decision records may be ambiguous. Challenges the glossary, stress-tests relationships, updates .devflow/planning/CONTEXT.md, and creates ADR notes only for hard-to-reverse surprising trade-offs."
4
4
  ---
5
5
 
6
6
  # Workflow: Domain Modeling(领域模型主动维护)
@@ -11,25 +11,25 @@ description: "Use as the mandatory domain-modeling step after workflow-wayfinder
11
11
 
12
12
  Always update when changes are found:
13
13
 
14
- - `.planning/CONTEXT.md`
15
- - `.planning/requirements/{功能名}/领域模型记录.md`
16
- - `.planning/requirements/{功能名}/领域模型记录.meta.json`
14
+ - `.devflow/planning/CONTEXT.md`
15
+ - `.devflow/planning/requirements/{功能名}/领域模型记录.md`
16
+ - `.devflow/planning/requirements/{功能名}/领域模型记录.meta.json`
17
17
 
18
18
  Only create ADR when the ADR gate passes:
19
19
 
20
- - `.planning/adr/{编号}-{slug}.md`
20
+ - `.devflow/planning/adr/{编号}-{slug}.md`
21
21
 
22
22
  ## Phase 1 — Load Existing Language
23
23
 
24
24
  Read, if present:
25
25
 
26
- 1. `.planning/CONTEXT.md`
27
- 2. `.planning/requirements/{功能名}/决策地图.md`
28
- 3. `.planning/requirements/{功能名}/wayfinder/WF-*.md` 中已解决 ticket
29
- 4. `.planning/requirements/baseline.md`
30
- 5. `.planning/features/**/需求梳理.md`
31
- 6. `.planning/features/**/需求澄清记录.md`
32
- 7. `.planning/*/CONTEXT.md`
26
+ 1. `.devflow/planning/CONTEXT.md`
27
+ 2. `.devflow/planning/requirements/{功能名}/决策地图.md`
28
+ 3. `.devflow/planning/requirements/{功能名}/wayfinder/WF-*.md` 中已解决 ticket
29
+ 4. `.devflow/planning/requirements/baseline.md`
30
+ 5. `.devflow/planning/features/**/需求梳理.md`
31
+ 6. `.devflow/planning/features/**/需求澄清记录.md`
32
+ 7. `.devflow/planning/*/CONTEXT.md`
33
33
  8. Relevant source names from navigation: model names, table names, enum/status constants, route names, page titles
34
34
 
35
35
  Do not load broad source bodies unless a term conflict depends on exact code behavior.
@@ -38,7 +38,7 @@ Do not load broad source bodies unless a term conflict depends on exact code beh
38
38
 
39
39
  For each important term in the current conversation or artifact:
40
40
 
41
- 1. **Existing definition check**: does `.planning/CONTEXT.md` already define it?
41
+ 1. **Existing definition check**: does `.devflow/planning/CONTEXT.md` already define it?
42
42
  2. **Collision check**: is the same word used for multiple concepts?
43
43
  3. **Synonym check**: are multiple words used for the same concept?
44
44
  4. **Code-language check**: do routes, models, fields, enum constants, and UI labels use different names?
@@ -65,7 +65,7 @@ For each core relationship, invent at least two edge cases to test whether the d
65
65
 
66
66
  If an edge case changes the meaning of a term, update the glossary or create a pending question. Do not turn edge cases into new scope automatically.
67
67
 
68
- ## Phase 4 — Update `.planning/CONTEXT.md`
68
+ ## Phase 4 — Update `.devflow/planning/CONTEXT.md`
69
69
 
70
70
  Use this section shape:
71
71
 
@@ -81,7 +81,7 @@ Rules:
81
81
  - Definition must be domain-facing, not implementation-facing.
82
82
  - Add `反例/不包括` whenever a term could be confused with a neighbor concept.
83
83
  - Preserve existing terms unless the user confirmed a replacement.
84
- - Keep `.planning/CONTEXT.md` pure glossary. Do not store implementation details, FP/BR/BC IDs, source paths, requirement traceability, decision levels, or change history in it.
84
+ - Keep `.devflow/planning/CONTEXT.md` pure glossary. Do not store implementation details, FP/BR/BC IDs, source paths, requirement traceability, decision levels, or change history in it.
85
85
  - If a definition changes, record the old definition, new definition, reason, source, decision level, related requirement, and edge cases in `领域模型记录.md`.
86
86
 
87
87
  Use `领域模型记录.md` for traceability:
@@ -106,7 +106,7 @@ Create an ADR only when all three conditions are true:
106
106
  2. **Surprising**: a future developer could reasonably choose a different direction without this record.
107
107
  3. **Real trade-off**: at least two credible options exist and each has a cost.
108
108
 
109
- If any condition is false, record the decision in `领域模型记录.md` or `.planning/CONTEXT.md`, not ADR.
109
+ If any condition is false, record the decision in `领域模型记录.md` or `.devflow/planning/CONTEXT.md`, not ADR.
110
110
 
111
111
  ADR template:
112
112
 
@@ -153,15 +153,15 @@ Submit bounded candidates through `devflow_requirement_graph`: use `term` for sh
153
153
  When this run adds or changes domain language, replace `<feature>` and run:
154
154
 
155
155
  ```bash
156
- test -s .planning/CONTEXT.md
157
- test -s .planning/requirements/<feature>/领域模型记录.md
158
- python3 -m json.tool .planning/requirements/<feature>/领域模型记录.meta.json >/dev/null
159
- grep -q '"feature_name"' .planning/requirements/<feature>/领域模型记录.meta.json
160
- grep -q '"terms_added"' .planning/requirements/<feature>/领域模型记录.meta.json
161
- grep -q '"terms_changed"' .planning/requirements/<feature>/领域模型记录.meta.json
162
- grep -q '## 词汇表' .planning/CONTEXT.md
163
- grep -q '## 术语变更记录' .planning/requirements/<feature>/领域模型记录.md
164
- grep -q '## 边缘案例压测' .planning/requirements/<feature>/领域模型记录.md
156
+ test -s .devflow/planning/CONTEXT.md
157
+ test -s .devflow/planning/requirements/<feature>/领域模型记录.md
158
+ python3 -m json.tool .devflow/planning/requirements/<feature>/领域模型记录.meta.json >/dev/null
159
+ grep -q '"feature_name"' .devflow/planning/requirements/<feature>/领域模型记录.meta.json
160
+ grep -q '"terms_added"' .devflow/planning/requirements/<feature>/领域模型记录.meta.json
161
+ grep -q '"terms_changed"' .devflow/planning/requirements/<feature>/领域模型记录.meta.json
162
+ grep -q '## 词汇表' .devflow/planning/CONTEXT.md
163
+ grep -q '## 术语变更记录' .devflow/planning/requirements/<feature>/领域模型记录.md
164
+ grep -q '## 边缘案例压测' .devflow/planning/requirements/<feature>/领域模型记录.md
165
165
  ```
166
166
 
167
167
  Pass only when every command exits with code 0, the metadata is valid JSON with the required counters, and each changed term has both a domain-facing glossary definition and a traceability record. If no language changed, record that no-change conclusion in the feature's domain-model record; do not create an ADR. If a check fails, repair the glossary, record, or metadata before continuing to baseline or technical planning.