@chenmk/superflow 0.1.0

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 (198) hide show
  1. package/INSTALL.en.md +106 -0
  2. package/INSTALL.md +664 -0
  3. package/LICENSE +21 -0
  4. package/README.md +142 -0
  5. package/README.zh-CN.md +117 -0
  6. package/assets/context-templates/business-rules.md +98 -0
  7. package/assets/context-templates/decisions.md +153 -0
  8. package/assets/context-templates/external-systems.md +166 -0
  9. package/assets/context-templates/incidents.md +89 -0
  10. package/assets/manifest.json +53 -0
  11. package/assets/prompts/superflow-archive.md +9 -0
  12. package/assets/prompts/superflow-clarify.md +10 -0
  13. package/assets/prompts/superflow-design.md +10 -0
  14. package/assets/prompts/superflow-docs.md +10 -0
  15. package/assets/prompts/superflow-implement.md +10 -0
  16. package/assets/prompts/superflow-pipeline.md +13 -0
  17. package/assets/prompts/superflow-verify.md +10 -0
  18. package/assets/rules/superflow-phase-guard.md +50 -0
  19. package/assets/scripts/claude-auto-backup-hook.sh +313 -0
  20. package/assets/scripts/codex-auto-backup-hook.sh +361 -0
  21. package/assets/scripts/install-sql-pre-commit.sh +44 -0
  22. package/assets/scripts/superflow-contract-hooks.sh +744 -0
  23. package/assets/scripts/superflow-delivery-check.sh +315 -0
  24. package/assets/scripts/superflow-dependency-update-hook.sh +161 -0
  25. package/assets/scripts/superflow-enforce-hook.sh +70 -0
  26. package/assets/scripts/superflow-hook-guard.sh +132 -0
  27. package/assets/scripts/superflow-integration-evidence-hook.sh +80 -0
  28. package/assets/scripts/superflow-sql-sync-hook.py +950 -0
  29. package/assets/scripts/superflow-test-report-lint.py +433 -0
  30. package/assets/scripts/superflow-verify-integration.sh +90 -0
  31. package/assets/scripts/sync-settings-json.py +52 -0
  32. package/assets/skills/api-doc-changelog/SKILL.md +193 -0
  33. package/assets/skills/openspec-apply-change/SKILL.md +156 -0
  34. package/assets/skills/openspec-archive-change/SKILL.md +114 -0
  35. package/assets/skills/openspec-explore/SKILL.md +288 -0
  36. package/assets/skills/openspec-propose/SKILL.md +110 -0
  37. package/assets/skills/superflow-archive/SKILL.md +61 -0
  38. package/assets/skills/superflow-clarify/SKILL.md +146 -0
  39. package/assets/skills/superflow-clarify/agents/openai.yaml +4 -0
  40. package/assets/skills/superflow-design/SKILL.md +83 -0
  41. package/assets/skills/superflow-design/agents/openai.yaml +4 -0
  42. package/assets/skills/superflow-docs/SKILL.md +316 -0
  43. package/assets/skills/superflow-docs/agents/openai.yaml +4 -0
  44. package/assets/skills/superflow-hotfix/SKILL.md +48 -0
  45. package/assets/skills/superflow-implement/SKILL.md +461 -0
  46. package/assets/skills/superflow-implement/agents/openai.yaml +4 -0
  47. package/assets/skills/superflow-pipeline/SKILL.md +844 -0
  48. package/assets/skills/superflow-pipeline/agents/openai.yaml +4 -0
  49. package/assets/skills/superflow-pipeline/references/api-design-template.md +431 -0
  50. package/assets/skills/superflow-pipeline/references/architecture-design-template.md +119 -0
  51. package/assets/skills/superflow-pipeline/references/batch-prompt-template.md +536 -0
  52. package/assets/skills/superflow-pipeline/references/batch-split-guide.md +140 -0
  53. package/assets/skills/superflow-pipeline/references/decision-point.md +30 -0
  54. package/assets/skills/superflow-pipeline/references/dirty-worktree.md +35 -0
  55. package/assets/skills/superflow-pipeline/references/document-templates.md +123 -0
  56. package/assets/skills/superflow-pipeline/references/feature-gated-workflow.md +124 -0
  57. package/assets/skills/superflow-pipeline/references/implementation-prompt-template.md +1056 -0
  58. package/assets/skills/superflow-pipeline/references/mock-strategy-guide.md +86 -0
  59. package/assets/skills/superflow-pipeline/references/openspec-format.md +57 -0
  60. package/assets/skills/superflow-pipeline/references/orchestration.md +639 -0
  61. package/assets/skills/superflow-pipeline/references/p0-baseline-template.md +174 -0
  62. package/assets/skills/superflow-pipeline/references/project-config.md +40 -0
  63. package/assets/skills/superflow-pipeline/references/prompt-usage-template.md +152 -0
  64. package/assets/skills/superflow-pipeline/references/quality-gate.md +299 -0
  65. package/assets/skills/superflow-pipeline/references/quality-standards.md +190 -0
  66. package/assets/skills/superflow-pipeline/references/reviewer-checklist.md +154 -0
  67. package/assets/skills/superflow-pipeline/references/sql-risk-review-checklist.md +323 -0
  68. package/assets/skills/superflow-pipeline/references/subagent-progress.md +90 -0
  69. package/assets/skills/superflow-pipeline/references/superpower-technical-design-template.md +125 -0
  70. package/assets/skills/superflow-pipeline/references/test-execution-template.md +220 -0
  71. package/assets/skills/superflow-pipeline/references/test-guide.md +30 -0
  72. package/assets/skills/superflow-pipeline/references/traceability-matrix.md +106 -0
  73. package/assets/skills/superflow-pipeline/references/validation-integrity.md +134 -0
  74. package/assets/skills/superflow-pipeline/scripts/superflow-archive.sh +178 -0
  75. package/assets/skills/superflow-pipeline/scripts/superflow-env.sh +118 -0
  76. package/assets/skills/superflow-pipeline/scripts/superflow-guard.sh +428 -0
  77. package/assets/skills/superflow-pipeline/scripts/superflow-handoff.sh +296 -0
  78. package/assets/skills/superflow-pipeline/scripts/superflow-state.sh +574 -0
  79. package/assets/skills/superflow-pipeline/scripts/superflow-status.sh +172 -0
  80. package/assets/skills/superflow-pipeline/scripts/superflow-yaml-validate.sh +138 -0
  81. package/assets/skills/superflow-table-impact-analysis/SKILL.md +77 -0
  82. package/assets/skills/superflow-tweak/SKILL.md +46 -0
  83. package/assets/skills/superflow-verify/SKILL.md +112 -0
  84. package/assets/skills-en/api-doc-changelog/SKILL.md +193 -0
  85. package/assets/skills-en/openspec-apply-change/SKILL.md +156 -0
  86. package/assets/skills-en/openspec-archive-change/SKILL.md +114 -0
  87. package/assets/skills-en/openspec-explore/SKILL.md +288 -0
  88. package/assets/skills-en/openspec-propose/SKILL.md +110 -0
  89. package/assets/skills-en/superflow-archive/SKILL.md +61 -0
  90. package/assets/skills-en/superflow-clarify/SKILL.md +146 -0
  91. package/assets/skills-en/superflow-clarify/agents/openai.yaml +4 -0
  92. package/assets/skills-en/superflow-design/SKILL.md +83 -0
  93. package/assets/skills-en/superflow-design/agents/openai.yaml +4 -0
  94. package/assets/skills-en/superflow-docs/SKILL.md +316 -0
  95. package/assets/skills-en/superflow-docs/agents/openai.yaml +4 -0
  96. package/assets/skills-en/superflow-hotfix/SKILL.md +48 -0
  97. package/assets/skills-en/superflow-implement/SKILL.md +461 -0
  98. package/assets/skills-en/superflow-implement/agents/openai.yaml +4 -0
  99. package/assets/skills-en/superflow-pipeline/SKILL.md +844 -0
  100. package/assets/skills-en/superflow-pipeline/agents/openai.yaml +4 -0
  101. package/assets/skills-en/superflow-pipeline/references/api-design-template.md +431 -0
  102. package/assets/skills-en/superflow-pipeline/references/architecture-design-template.md +119 -0
  103. package/assets/skills-en/superflow-pipeline/references/batch-prompt-template.md +536 -0
  104. package/assets/skills-en/superflow-pipeline/references/batch-split-guide.md +140 -0
  105. package/assets/skills-en/superflow-pipeline/references/decision-point.md +30 -0
  106. package/assets/skills-en/superflow-pipeline/references/dirty-worktree.md +35 -0
  107. package/assets/skills-en/superflow-pipeline/references/document-templates.md +123 -0
  108. package/assets/skills-en/superflow-pipeline/references/feature-gated-workflow.md +124 -0
  109. package/assets/skills-en/superflow-pipeline/references/implementation-prompt-template.md +1056 -0
  110. package/assets/skills-en/superflow-pipeline/references/mock-strategy-guide.md +86 -0
  111. package/assets/skills-en/superflow-pipeline/references/openspec-format.md +57 -0
  112. package/assets/skills-en/superflow-pipeline/references/orchestration.md +639 -0
  113. package/assets/skills-en/superflow-pipeline/references/p0-baseline-template.md +174 -0
  114. package/assets/skills-en/superflow-pipeline/references/project-config.md +40 -0
  115. package/assets/skills-en/superflow-pipeline/references/prompt-usage-template.md +152 -0
  116. package/assets/skills-en/superflow-pipeline/references/quality-gate.md +299 -0
  117. package/assets/skills-en/superflow-pipeline/references/quality-standards.md +190 -0
  118. package/assets/skills-en/superflow-pipeline/references/reviewer-checklist.md +154 -0
  119. package/assets/skills-en/superflow-pipeline/references/sql-risk-review-checklist.md +323 -0
  120. package/assets/skills-en/superflow-pipeline/references/subagent-progress.md +90 -0
  121. package/assets/skills-en/superflow-pipeline/references/superpower-technical-design-template.md +125 -0
  122. package/assets/skills-en/superflow-pipeline/references/test-execution-template.md +220 -0
  123. package/assets/skills-en/superflow-pipeline/references/test-guide.md +30 -0
  124. package/assets/skills-en/superflow-pipeline/references/traceability-matrix.md +106 -0
  125. package/assets/skills-en/superflow-pipeline/references/validation-integrity.md +134 -0
  126. package/assets/skills-en/superflow-pipeline/scripts/superflow-archive.sh +178 -0
  127. package/assets/skills-en/superflow-pipeline/scripts/superflow-env.sh +118 -0
  128. package/assets/skills-en/superflow-pipeline/scripts/superflow-guard.sh +428 -0
  129. package/assets/skills-en/superflow-pipeline/scripts/superflow-handoff.sh +296 -0
  130. package/assets/skills-en/superflow-pipeline/scripts/superflow-state.sh +574 -0
  131. package/assets/skills-en/superflow-pipeline/scripts/superflow-status.sh +172 -0
  132. package/assets/skills-en/superflow-pipeline/scripts/superflow-yaml-validate.sh +138 -0
  133. package/assets/skills-en/superflow-table-impact-analysis/SKILL.md +77 -0
  134. package/assets/skills-en/superflow-tweak/SKILL.md +46 -0
  135. package/assets/skills-en/superflow-verify/SKILL.md +112 -0
  136. package/dist/cli/index.js +186 -0
  137. package/dist/cli/index.js.map +1 -0
  138. package/dist/commands/archive.js +6 -0
  139. package/dist/commands/archive.js.map +1 -0
  140. package/dist/commands/clarify.js +6 -0
  141. package/dist/commands/clarify.js.map +1 -0
  142. package/dist/commands/design.js +6 -0
  143. package/dist/commands/design.js.map +1 -0
  144. package/dist/commands/docs.js +6 -0
  145. package/dist/commands/docs.js.map +1 -0
  146. package/dist/commands/doctor.js +473 -0
  147. package/dist/commands/doctor.js.map +1 -0
  148. package/dist/commands/implement.js +6 -0
  149. package/dist/commands/implement.js.map +1 -0
  150. package/dist/commands/init.js +471 -0
  151. package/dist/commands/init.js.map +1 -0
  152. package/dist/commands/pipeline.js +6 -0
  153. package/dist/commands/pipeline.js.map +1 -0
  154. package/dist/commands/scan.js +59 -0
  155. package/dist/commands/scan.js.map +1 -0
  156. package/dist/commands/status.js +173 -0
  157. package/dist/commands/status.js.map +1 -0
  158. package/dist/commands/uninstall.js +213 -0
  159. package/dist/commands/uninstall.js.map +1 -0
  160. package/dist/commands/update.js +187 -0
  161. package/dist/commands/update.js.map +1 -0
  162. package/dist/commands/verify.js +6 -0
  163. package/dist/commands/verify.js.map +1 -0
  164. package/dist/core/assets.js +27 -0
  165. package/dist/core/assets.js.map +1 -0
  166. package/dist/core/context.js +100 -0
  167. package/dist/core/context.js.map +1 -0
  168. package/dist/core/dependencies.js +146 -0
  169. package/dist/core/dependencies.js.map +1 -0
  170. package/dist/core/detect.js +71 -0
  171. package/dist/core/detect.js.map +1 -0
  172. package/dist/core/i18n.js +103 -0
  173. package/dist/core/i18n.js.map +1 -0
  174. package/dist/core/integrity.js +46 -0
  175. package/dist/core/integrity.js.map +1 -0
  176. package/dist/core/manifest.js +18 -0
  177. package/dist/core/manifest.js.map +1 -0
  178. package/dist/core/prompts.js +20 -0
  179. package/dist/core/prompts.js.map +1 -0
  180. package/dist/core/registry.js +134 -0
  181. package/dist/core/registry.js.map +1 -0
  182. package/dist/core/rules.js +17 -0
  183. package/dist/core/rules.js.map +1 -0
  184. package/dist/core/scripts.js +40 -0
  185. package/dist/core/scripts.js.map +1 -0
  186. package/dist/core/skill-check.js +31 -0
  187. package/dist/core/skill-check.js.map +1 -0
  188. package/dist/core/skills.js +56 -0
  189. package/dist/core/skills.js.map +1 -0
  190. package/dist/core/state.js +43 -0
  191. package/dist/core/state.js.map +1 -0
  192. package/dist/types.js +2 -0
  193. package/dist/types.js.map +1 -0
  194. package/dist/utils/path.js +11 -0
  195. package/dist/utils/path.js.map +1 -0
  196. package/dist/utils/shell.js +29 -0
  197. package/dist/utils/shell.js.map +1 -0
  198. package/package.json +60 -0
@@ -0,0 +1,30 @@
1
+ # SDD Decision Point
2
+
3
+ Use this when an SDD phase needs a human decision before continuing.
4
+
5
+ ## Required Format
6
+
7
+ Write a short decision block in the relevant SDD document or reply:
8
+
9
+ ```md
10
+ ## Decision Point
11
+
12
+ - phase: docs|implement|verify|archive
13
+ - decision_needed: <one concrete decision>
14
+ - options:
15
+ - A: <option and consequence>
16
+ - B: <option and consequence>
17
+ - recommended: <A|B>
18
+ - blocked_until: user confirms the decision
19
+ - state_command: `superflow-state.sh set <change-dir> build_pause plan-ready`
20
+ ```
21
+
22
+ ## Rules
23
+
24
+ - Ask for a decision only when the next action changes scope, API/DB contract,
25
+ implementation strategy, verification boundary, or archive closeout.
26
+ - Do not ask open-ended questions when a recommended option can be stated.
27
+ - Record the decision in `design.md`, `sdd-quality-gate.md`, `test-report.md`,
28
+ or the implementation prompt, depending on the phase.
29
+ - After confirmation, update `.sdd/state.yaml` with the selected field and
30
+ rerun the current phase guard.
@@ -0,0 +1,35 @@
1
+ # SDD Dirty Worktree Policy
2
+
3
+ Use this before implementation, verification, archive, or any worktree split.
4
+
5
+ ## Check
6
+
7
+ ```bash
8
+ git status --short
9
+ git diff --stat
10
+ ```
11
+
12
+ ## Rules
13
+
14
+ - Treat uncommitted files as owned by the user unless the current task created
15
+ them in this session.
16
+ - Do not revert, overwrite, or clean unrelated files.
17
+ - If SDD docs are dirty, regenerate `.sdd/handoff/sdd-context.*` before
18
+ creating implementation prompts or coding.
19
+ - If runtime files are dirty before docs are complete, stop and run the docs
20
+ guard. Runtime edits during `phase: docs` are blocked unless the user
21
+ explicitly switches to hotfix/tweak and the hard gates allow it.
22
+ - For parallel worktrees, each worker may update only its task-local docs and
23
+ allowed runtime files. Root aggregate SDD docs are reserved for Leader
24
+ closeout.
25
+
26
+ ## Handoff Note
27
+
28
+ When continuing from another session, record:
29
+
30
+ ```md
31
+ - dirty_worktree_checked: yes
32
+ - unrelated_changes_left_untouched: yes|none
33
+ - sdd_docs_changed_since_handoff: yes|no
34
+ - regenerated_handoff: yes|no
35
+ ```
@@ -0,0 +1,123 @@
1
+ # 文档格式模板
2
+
3
+ ## Proposal 格式
4
+
5
+ ```markdown
6
+ # Proposal: <功能名称>
7
+
8
+ ## Motivation
9
+ 为什么需要这个功能
10
+
11
+ ## Proposed Solution
12
+ 提议的解决方案
13
+
14
+ ## Alternatives Considered
15
+ 考虑的替代方案
16
+ ```
17
+
18
+ ## Spec 格式
19
+
20
+ ```markdown
21
+ # Spec: <功能名称>
22
+
23
+ ## ADDED Requirements
24
+ ### Requirement: <需求描述>
25
+ #### Scenario: <场景名称>
26
+ - **WHEN** <前置条件>
27
+ - **THEN** <预期结果>
28
+ - **AND** <附加条件>
29
+ ```
30
+
31
+ ## Design 格式
32
+
33
+ ```markdown
34
+ # Design: <功能名称>
35
+
36
+ ## Overview
37
+ 设计概述
38
+
39
+ ## Source Code Analysis
40
+ 源码分析(引用具体文件、类、方法、行号)
41
+
42
+ ## Change Matrix
43
+ | Requirement | 修改文件 | 修改方法 | 变更类型 |
44
+ |---|---|---|---|
45
+
46
+ ## Detailed Design
47
+ 详细设计
48
+
49
+ ## API Design(如有)
50
+ 接口设计
51
+
52
+ ## Migration Plan
53
+ 迁移计划(如有)
54
+
55
+ ## Risk Assessment
56
+ 风险评估(并发、性能、兼容性)
57
+ ```
58
+
59
+ ## Tasks 格式
60
+
61
+ ```markdown
62
+ # Tasks: <功能名称>
63
+
64
+ ## 需求级汇总 SQL 文件
65
+ - 路径:`openspec/changes/{change-id}/sql/{汇总SQL文件名}`(如 `sql/{version}.sql`)
66
+ - 所有新增表、改表、索引、默认值、初始化数据脚本统一追加到该文件
67
+ - 禁止各任务各自新建独立 SQL 文件
68
+ - 不需要 SQL 的任务也需写明"本任务不新增 SQL,但开始前仍需核查依赖表结构是否已满足设计"
69
+
70
+ ## 1. Requirement A 实现
71
+ - [ ] 1.1 修改 `FilePath.java`,在 `methodName()` 中增加 X 逻辑
72
+ - 源码锚点:`FilePath.java:line-start-line-end`
73
+ - 验收标准:调用 Y 接口后,Z 状态变为 W
74
+ - 依赖的汇总 SQL:`openspec/changes/{change-id}/sql/{文件名}` 第 XX-XX 行(或"本任务不新增 SQL,但开始前仍需核查依赖表结构")
75
+ - blocked by: 无
76
+ - [ ] 1.2 修改 `FilePath2.java`,调整 `methodName2()` 返回值
77
+ - 源码锚点:`FilePath2.java:line-start-line-end`
78
+ - 验收标准:单元测试通过
79
+ - 依赖的汇总 SQL:`openspec/changes/{change-id}/sql/{文件名}` 第 XX-XX 行
80
+ - blocked by: 1.1
81
+ ```
82
+
83
+ ## Tests 格式
84
+
85
+ ```markdown
86
+ # Tests: <功能名称>
87
+
88
+ ## 0. 应用运行配置
89
+ - **配置文件**: `src/main/resources/application.yml`
90
+ - **端口号**: {port}
91
+ - **上下文路径**: {context-path}
92
+ - **基础 URL**: `http://localhost:{port}{context-path}`
93
+ - **启动命令**: `mvn spring-boot:run -Dspring-boot.run.profiles={profile}`
94
+
95
+ ## 0.1 数据库结构核查(每个批次必须执行)
96
+ - **核查目标**: 确认开发环境数据库表结构与设计文档一致
97
+ - **汇总 SQL 文件**: `openspec/changes/{change-id}/sql/{文件名}`
98
+ - **执行步骤**:
99
+ 1. 连接开发环境数据库
100
+ 2. 对本需求涉及的每张表执行 `SHOW CREATE TABLE {表名}`,对照 design.md / database-contract.md 确认字段、类型、默认值、索引
101
+ 3. 对需要初始化数据的表执行 `SELECT COUNT(*) FROM {表名} WHERE {条件}`,确认初始化数据已存在
102
+ 4. 如果发现缺失,从汇总 SQL 文件中取对应脚本执行
103
+ 5. 执行后再次查询确认
104
+ - **断言标准**:
105
+ - 所有设计要求的表、字段、索引、默认值在实际数据库中存在
106
+ - 所有初始化数据已插入
107
+ - **自动化**: [自动化]
108
+
109
+ ## N. Requirement N 测试
110
+
111
+ ### Scenario: <场景描述>
112
+ - **前置条件**: 数据库状态 / 缓存状态 / 环境配置
113
+ - **接口 URL**: `http://localhost:{port}{context-path}{接口路径}`
114
+ - **请求参数**: JSON / Query / Path / Form
115
+ - **执行步骤**: 1. 启动应用 2. 调用接口 3. 验证结果
116
+ - **断言标准**:
117
+ - 接口返回值:`code == 0`,`message == "xxx"`
118
+ - 数据库状态:`SELECT ... FROM ... WHERE ...` 期望值为 N
119
+ - 日志输出:日志中包含 `"xxx"`
120
+ - 缓存状态:`CacheManager.get()` 返回期望值
121
+ - **自动化**: [自动化] / [需手工]
122
+ - **关联**: spec.md Requirement N → Scenario X
123
+ ```
@@ -0,0 +1,124 @@
1
+ # 功能点串行门禁工作流
2
+
3
+ 复杂 PRD、飞书文档、原型图或口头大需求必须使用本工作流。目标是把需求理解
4
+ 外部化、逐功能点确认,防止上下文丢失、图片归属错误、过度设计字段和缺接口。
5
+
6
+ ## 1. 硬门禁
7
+
8
+ - 必须按产品文档顺序一次只处理一个功能点。
9
+ - 当前功能点未由编程人员明确确认前,不得进入下一个功能点的澄清、接口草案、
10
+ `api.md`、`spec.md`、`design.md`、`tasks.md`、`tests.md` 或 prompt。
11
+ - 当前功能点未冻结前,不得生成全局 P0-Pn 实现 prompt。
12
+ - 不得把多个功能点的问题混在同一轮澄清里。
13
+ - 不得依赖对话上下文记忆保存未落盘信息。
14
+ - 页面、原型和产品文档都没有的字段,不得进入 API 必填项;若后端需要,必须
15
+ 标记为后端默认、后端推导或待确认。
16
+ - 后续联调发现的问题必须作为 CR/Px 追加任务新增 prompt,不得污染已执行 prompt。
17
+
18
+ ## 2. 每个功能点的固定步骤
19
+
20
+ 1. 读取当前功能点的文字需求、相邻图片和相关附件。
21
+ 2. 输出 AI 理解,包含业务目标、用户动作、页面入口、按钮动作和列表列。
22
+ 3. 标注当前功能点对应的 PRD 段落、图片、附件或口头来源。
23
+ 4. 输出页面字段契约:页面字段、是否可见、控件类型、下拉来源、API 入参、
24
+ API 出参、DTO/VO、DB 字段、默认/推导策略。
25
+ 5. 输出差距分析:
26
+ - 页面有、后端无:缺接口或缺字段。
27
+ - 后端有、页面无:疑似过度设计或隐藏必填。
28
+ - 文档有、页面无:待确认是否废弃。
29
+ - 页面有、文档无:原型隐含需求,必须补 spec。
30
+ 6. 只针对当前功能点提出澄清问题。
31
+ 7. 等待编程人员明确确认或修正理解范围。
32
+ 8. 输出当前功能点粗接口草案,只列路径、动作、核心入参、核心出参。
33
+ 9. 等待编程人员确认粗接口草案。
34
+ 10. 输出正式 `api.md` 章节,精确到字段名、类型、必填、默认值、枚举、错误码、
35
+ 示例请求响应和 curl。
36
+ 11. 基于已确认的 `api.md` 生成当前功能点的 `spec.md`、`design.md`、`tasks.md`、
37
+ `tests.md` 和实现 prompt。
38
+ 12. 在 `feature-gates.md` 标记当前功能点 `已冻结` 后,才允许进入下一个功能点。
39
+
40
+ ## 3. 必备落盘文件
41
+
42
+ 复杂需求必须在 change 目录下维护以下文件。没有这些文件时不得生成实现 prompt。
43
+
44
+ ### `source-ingestion.md`
45
+
46
+ 记录原始资料摄取:
47
+
48
+ | 顺序 | 资料 | 来源 | 已读取范围 | 图片/附件 | 结果 |
49
+ |---|---|---|---|---|---|
50
+ | 1 | PRD | 飞书/本地文件 | 第 1 节 | 图 1/2 | 已读取 |
51
+
52
+ ### `feature-gates.md`
53
+
54
+ 记录功能点串行确认状态:
55
+
56
+ | 顺序 | 功能点 | 来源段落 | 来源图片 | 理解确认 | 接口草案确认 | SDD 已生成 | 状态 |
57
+ |---|---|---|---|---|---|---|---|
58
+ | 1 | 主数据新增/编辑 | PRD 2.1 | 图 1/2 | 已确认 | 已确认 | 已生成 | 已冻结 |
59
+ | 2 | 业务开通/创建流程 | PRD 2.2 | 图 3 | 待确认 | 未开始 | 未生成 | 阻塞 |
60
+
61
+ 状态只能使用:`未开始`、`理解待确认`、`接口草案待确认`、`SDD生成中`、
62
+ `已冻结`、`阻塞`。
63
+
64
+ ### `feature-inventory.md`
65
+
66
+ 记录需求库存:
67
+
68
+ | 功能点 | 来源文字 | 来源图片 | 页面/入口 | 用户动作 | 后端接口 | 数据表 | spec | task |
69
+ |---|---|---|---|---|---|---|---|---|
70
+
71
+ ### `ui-contract.md`
72
+
73
+ 记录原型字段契约:
74
+
75
+ | 功能点 | 页面字段 | 是否可见 | 控件类型 | API 入参 | API 出参 | DTO/VO | DB 字段 | 策略 |
76
+ |---|---|---|---|---|---|---|---|---|
77
+
78
+ 策略填写:前端提交、后端默认、后端推导、废弃、待确认。
79
+
80
+ ### `gap-analysis.md`
81
+
82
+ 记录页面、文档、源码差距:
83
+
84
+ | 功能点 | 类型 | 差距 | 风险 | 处理方式 | 状态 |
85
+ |---|---|---|---|---|---|
86
+ | 业务开通/创建流程 | 后端有页面无 | paymentMethod 必填 | 接口 500 | 后端默认 | 已确认 |
87
+
88
+ ### `spec-freeze-review.md`
89
+
90
+ 每个功能点进入编码前必须有冻结卡:
91
+
92
+ ```markdown
93
+ ## 功能点:____
94
+
95
+ - 来源:____
96
+ - 图片:____
97
+ - 页面字段:____
98
+ - 新增接口:____
99
+ - 修改接口:____
100
+ - 后端默认字段:____
101
+ - 后端推导字段:____
102
+ - 明确不做:____
103
+ - 待确认:无 / ____
104
+ - 冻结结论:已冻结,可生成 prompt / 不通过
105
+ ```
106
+
107
+ ## 4. API 先行规则
108
+
109
+ - 涉及前后端联调时,正式 `api.md` 必须在编码 prompt 之前冻结。
110
+ - `design.md` 必须引用已冻结的 `api.md` 设计业务逻辑,不得另起字段口径。
111
+ - `tasks.md`、`tests.md` 和 prompt 只能使用已冻结 `api.md` 中的接口和字段。
112
+ - 若实现时发现 `api.md` 不可行,必须停止,更新冻结卡并让编程人员确认后再继续。
113
+
114
+ ## 5. 质量门失败处理
115
+
116
+ 任一门禁失败时:
117
+
118
+ 1. 停止后续功能点处理。
119
+ 2. 输出失败项和证据。
120
+ 3. 让编程人员确认修正方案。
121
+ 4. 修正当前功能点文档。
122
+ 5. 重新执行当前功能点门禁。
123
+
124
+ 不得为了推进速度而跳过失败门禁。