6aspec 2.0.0-dev.3 → 2.0.0-dev.30

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 (95) hide show
  1. package/.6aspec/rules/biz/code.md +122 -28
  2. package/.6aspec/rules/biz/code_implementation_sop.md +77 -0
  3. package/.6aspec/rules/brown/brown_archive_sop.md +17 -11
  4. package/.6aspec/rules/brown/brown_constitution.md +11 -0
  5. package/.6aspec/rules/brown/brown_continue_sop.md +10 -3
  6. package/.6aspec/rules/brown/brown_design_sop.md +285 -71
  7. package/.6aspec/rules/brown/brown_explore_sop.md +314 -0
  8. package/.6aspec/rules/brown/brown_ff_sop.md +31 -18
  9. package/.6aspec/rules/brown/brown_impact_sop.md +101 -45
  10. package/.6aspec/rules/brown/brown_implement_sop.md +127 -43
  11. package/.6aspec/rules/brown/brown_list_sop.md +12 -12
  12. package/.6aspec/rules/brown/brown_new_sop.md +63 -38
  13. package/.6aspec/rules/brown/brown_proposal_sop.md +286 -76
  14. package/.6aspec/rules/brown/brown_quick_sop.md +5 -5
  15. package/.6aspec/rules/brown/brown_review_sop.md +4 -4
  16. package/.6aspec/rules/brown/brown_rollback_sop.md +29 -19
  17. package/.6aspec/rules/brown/brown_specs_sop.md +412 -120
  18. package/.6aspec/rules/brown/brown_status_sop.md +13 -3
  19. package/.6aspec/rules/brown/brown_tasks_sop.md +212 -83
  20. package/.6aspec/rules/brown/brown_understand_sop.md +111 -40
  21. package/.6aspec/rules/brown/brown_update_sop.md +287 -0
  22. package/.6aspec/rules/brown/brown_verify_sop.md +138 -58
  23. package/.6aspec/rules/green/{6A_archive_sop.md → green_archive_sop.md} +3 -3
  24. package/.6aspec/rules/green/{6A_clarify_sop.md → green_clarify_sop.md} +1 -1
  25. package/.6aspec/rules/green/{6A_code_implementation_sop.md → green_code_implementation_sop.md} +18 -3
  26. package/.6aspec/rules/green/{6A_continue_sop.md → green_continue_sop.md} +3 -3
  27. package/.6aspec/rules/green/{6A_new_sop.md → green_new_sop.md} +90 -11
  28. package/.6aspec/rules/green/green_status_schema.md +4 -4
  29. package/.6aspec/rules/green/{6A_status_sop.md → green_status_sop.md} +3 -3
  30. package/.6aspec/rules/green/{6A_tasks_sop.md → green_tasks_sop.md} +1 -1
  31. package/.claude/commands/6aspec/brown/explore.md +11 -0
  32. package/.claude/commands/6aspec/brown/update.md +11 -0
  33. package/.claude/commands/6aspec/code.md +10 -0
  34. package/.claude/commands/6aspec/green/archive.md +1 -1
  35. package/.claude/commands/6aspec/green/clarify.md +2 -2
  36. package/.claude/commands/6aspec/green/continue.md +1 -1
  37. package/.claude/commands/6aspec/green/design.md +2 -2
  38. package/.claude/commands/6aspec/green/{execute-task.md → implement.md} +1 -1
  39. package/.claude/commands/6aspec/green/import-model-table.md +1 -1
  40. package/.claude/commands/6aspec/green/init.md +2 -2
  41. package/.claude/commands/6aspec/green/model.md +2 -2
  42. package/.claude/commands/6aspec/green/new.md +2 -2
  43. package/.claude/commands/6aspec/green/rollback.md +1 -1
  44. package/.claude/commands/6aspec/green/status.md +1 -1
  45. package/.claude/commands/6aspec/green/tasks.md +2 -2
  46. package/.claude/commands/6aspec/green/visual-logic.md +2 -2
  47. package/.claude/commands/opsx/apply.md +152 -0
  48. package/.claude/commands/opsx/archive.md +157 -0
  49. package/.claude/commands/opsx/bulk-archive.md +242 -0
  50. package/.claude/commands/opsx/continue.md +114 -0
  51. package/.claude/commands/opsx/explore.md +174 -0
  52. package/.claude/commands/opsx/ff.md +94 -0
  53. package/.claude/commands/opsx/new.md +69 -0
  54. package/.claude/commands/opsx/onboard.md +525 -0
  55. package/.claude/commands/opsx/sync.md +134 -0
  56. package/.claude/commands/opsx/verify.md +164 -0
  57. package/.claude/settings.local.json +21 -1
  58. package/.cursor/commands/6aspec/brown/explore.md +11 -0
  59. package/.cursor/commands/6aspec/brown/update.md +9 -0
  60. package/.cursor/commands/6aspec/code.md +8 -0
  61. package/.cursor/commands/6aspec/green/archive.md +1 -1
  62. package/.cursor/commands/6aspec/green/clarify.md +2 -2
  63. package/.cursor/commands/6aspec/green/continue.md +1 -1
  64. package/.cursor/commands/6aspec/green/design.md +2 -2
  65. package/.cursor/commands/6aspec/green/{execute-task.md → implement.md} +1 -1
  66. package/.cursor/commands/6aspec/green/import-model-table.md +1 -1
  67. package/.cursor/commands/6aspec/green/init.md +2 -2
  68. package/.cursor/commands/6aspec/green/model.md +2 -2
  69. package/.cursor/commands/6aspec/green/new.md +2 -2
  70. package/.cursor/commands/6aspec/green/rollback.md +1 -1
  71. package/.cursor/commands/6aspec/green/status.md +1 -1
  72. package/.cursor/commands/6aspec/green/tasks.md +2 -2
  73. package/.cursor/commands/6aspec/green/visual-logic.md +2 -2
  74. package/.cursor/commands/opsx-apply.md +152 -0
  75. package/.cursor/commands/opsx-archive.md +157 -0
  76. package/.cursor/commands/opsx-bulk-archive.md +242 -0
  77. package/.cursor/commands/opsx-continue.md +114 -0
  78. package/.cursor/commands/opsx-explore.md +174 -0
  79. package/.cursor/commands/opsx-ff.md +94 -0
  80. package/.cursor/commands/opsx-new.md +69 -0
  81. package/.cursor/commands/opsx-onboard.md +525 -0
  82. package/.cursor/commands/opsx-sync.md +134 -0
  83. package/.cursor/commands/opsx-verify.md +164 -0
  84. package/README.md +1 -1
  85. package/bin/6aspec +17 -1
  86. package/lib/cli.js +1 -1
  87. package/package.json +1 -1
  88. /package/.6aspec/rules/green/{6A_constitution.md → green_constitution.md} +0 -0
  89. /package/.6aspec/rules/green/{6A_design_sop.md → green_design_sop.md} +0 -0
  90. /package/.6aspec/rules/green/{6A_import_model_table_sop.md → green_import_model_table_sop.md} +0 -0
  91. /package/.6aspec/rules/green/{6A_init_event_list_sop.md → green_init_event_list_sop.md} +0 -0
  92. /package/.6aspec/rules/green/{6A_init_map_sop.md → green_init_map_sop.md} +0 -0
  93. /package/.6aspec/rules/green/{6A_model_sop.md → green_model_sop.md} +0 -0
  94. /package/.6aspec/rules/green/{6A_rollback_sop.md → green_rollback_sop.md} +0 -0
  95. /package/.6aspec/rules/green/{6A_visual_logic_sop.md → green_visual_logic_sop.md} +0 -0
@@ -1,54 +1,170 @@
1
1
  # 棕地需求 - Design SOP
2
2
 
3
- Phase 3: 技术方案设计
3
+ 技术方案设计(Design)- 适用于所有流程级别
4
+
5
+ > **阶段定位**:Design 的目标是输出”可评审的技术蓝图”,聚焦模块划分、服务边界、数据模型、接口/入口规范、集成方案与迁移/兼容策略。
6
+ > - ✅ 写:架构与模块边界、关键决策(可含 ADR)、数据语义与演进策略、接口/入口规范(含幂等/并发/异常语义)、集成点与失败边界、迁移/兼容/灰度/回滚策略、风险与验证方式。
7
+ > - ❌ 不写:具体代码实现说明(类/方法/注解/代码片段/伪代码)、前端逐字段交互表、API 具体出入参字段清单(放 Tasks)、存量表改动的全量 DDL(放 Tasks)。
8
+ > - ✅ 例外:**若新增数据库表**,Design 必须给出 DDL(用于评审关键约束与整体形态)。
4
9
 
5
10
  **输入**:`/6aspec:brown:design` 后可选需求名称。
6
11
 
7
- **步骤**
12
+ ---
13
+
14
+ ## 步骤
8
15
 
9
16
  1. **选择需求并检查状态**
10
17
 
11
18
  - 读取 `6aspecdoc/brown/<name>/status.json`
12
- - 确认 `phases.impact` 为 "done"
13
- - 如果未完成 Phase 2,提示先运行 `/6aspec:brown:impact`
19
+ - 检查前置阶段:
20
+ - 所有流程级别:确认 `phases.specs` "done";如未完成,提示先运行 `/6aspec:brown:specs`
14
21
 
15
22
  2. **读取前置文档**
16
23
 
17
- - `6aspecdoc/brown/<name>/requirement.md`
18
- - `6aspecdoc/brown/<name>/artifacts/01-understanding.md`
19
- - `6aspecdoc/brown/<name>/artifacts/01.5-specs.md`(标准级/完整级)
20
- - `6aspecdoc/brown/<name>/artifacts/02-impact-analysis.md`
24
+ 根据 `flowDepth` 读取不同的前置文档:
25
+
26
+ **轻量级流程**:
27
+ - `6aspecdoc/brown/<name>/artifacts/proposal.md`
28
+ - `6aspecdoc/brown/<name>/artifacts/specs.md`
29
+ - `6aspecdoc/brown/<name>/explore-summary.md` - 探索摘要(如果存在)
30
+
31
+ **标准级/完整级流程**:
32
+ - `6aspecdoc/brown/<name>/artifacts/proposal.md`
33
+ - `6aspecdoc/brown/<name>/artifacts/specs.md`
34
+ - `6aspecdoc/brown/<name>/artifacts/understanding.md`
35
+ - `6aspecdoc/brown/<name>/artifacts/impact-analysis.md`
36
+
37
+ 3. **按需探索代码库(可选)**
38
+
39
+ **触发条件**:
40
+ - 需要了解现有架构模式、技术选型、模块边界与集成点
41
+ - 需要了解现有的事件/定时/回调处理方式(幂等、重试、补偿)
42
+ - 需要确认数据落库策略、迁移方式(但不在此阶段写实现)
43
+ - 用户明确要求探索(例如:"先了解一下现有架构")
44
+ - 信息不足,需要参考现有代码才能做出可评审的方案决策
45
+
46
+ **探索方式**:
47
+
48
+ a. **简单搜索**(使用 Grep/Glob 工具):
49
+ - 搜索现有服务/模块边界:pattern = `class.*Service|interface.*Service`,type = `java`
50
+ - 搜索 Controller/接口入口:pattern = `class.*Controller`,type = `java`
51
+ - 搜索事件/消息相关:pattern = `Event|Message|Consumer|Producer`(按项目实际关键字调整)
52
+ - 搜索定时任务:pattern = `@Scheduled|cron`(按项目实际关键字调整)
53
+ - 搜索外部回调/集成:pattern = `callback|webhook|client`(按项目实际关键字调整)
54
+
55
+ b. **复杂探索**(使用 Task 工具调用 Explore agent):
56
+ - 当需要跨多个文件理解现有架构模式、集成链路、事件流与一致性策略时
57
+
58
+ **探索结果处理**:
59
+ - 探索发现直接用于技术方案设计
60
+ - 不生成独立文档
61
+ - 在 `design.md` 中可以标注 "参考现有实现:<文件路径>"(仅用于佐证方案合理性)
62
+
63
+ **注意**:
64
+ - 探索是可选的,不是强制的
65
+ - 探索应聚焦架构模式、边界与关键决策,不展开实现细节
66
+
67
+ 4. **模块划分(Module Decomposition)**
68
+
69
+ - 列出本次变更涉及的模块/子系统(现有/新增)
70
+ - 明确每个模块的职责边界(1-3 条即可)
71
+ - 明确模块之间的依赖关系(调用/事件订阅/数据依赖)
72
+
73
+ 5. **服务边界(Service Boundaries)**
74
+
75
+ - 明确服务(或领域/应用层边界)以及所有权:
76
+ - 谁拥有数据(source of truth)
77
+ - 谁负责状态流转
78
+ - 谁发布事件、谁消费事件
79
+ - 明确失败边界与业务表现(例如:失败是否允许重试、是否需要补偿或人工介入)
80
+
81
+ 6. **接口/入口规范(Entrypoints Design)**
82
+
83
+ 将 Specs 中的触发类型映射为对应的技术入口,按入口类型分表格输出。**只设计本需求实际存在的入口类型,未涉及的直接省略,不要为了完整性补齐。**
84
+
85
+ **Specs 触发类型 → 技术入口映射**:
86
+
87
+ | Specs 触发类型 | Design 技术入口 |
88
+ |---|---|
89
+ | 用户操作 | REST API(Command API) |
90
+ | 外部系统触发 | REST API(Command API,对外暴露) |
91
+ | 事件订阅 | Event Subscribers |
92
+ | 定时任务 | Scheduled Tasks |
93
+
94
+ > 注意:后台任务(@Async 线程池异步执行)不是独立触发类型,而是某个入口内部的执行机制。若某个 API 或事件处理中存在后台任务,在对应入口的"执行逻辑"列中说明,并在下方单独列出后台任务表格。
95
+
96
+ #### REST API(Command API)
97
+ 对应 Specs 触发类型:用户操作 / 外部系统触发
98
+
99
+ | 名称 | URL | Method | 执行逻辑(步骤级) | 幂等设计 | 并发控制 | 边界与异常 | 性能考虑 |
100
+ |---|---|---|---|---|---|---|---|
101
+ | <接口名称> | /xxx/xxx | POST | 1. 权限校验<br>2. 状态校验<br>3. 状态流转<br>4. 发布领域事件 | <幂等方案> | <并发控制方案> | <异常场景> | <性能要求> |
102
+
103
+ *注意:URL 不使用路径变量;入参/出参 JSON 结构放 Tasks 阶段落地。*
104
+
105
+ #### 事件订阅(Event Subscribers)
106
+ 对应 Specs 触发类型:事件订阅
107
+
108
+ | 订阅者名称 | 订阅事件(中+英) | 执行逻辑(步骤级) | 幂等设计 | 并发控制 | 边界与异常 | 性能考虑 | 补偿/重试 |
109
+ |---|---|---|---|---|---|---|---|
110
+ | <订阅者名称> | <事件中文名>(EventName) | 1. ...<br>2. ... | <幂等方案> | <并发控制> | <异常场景> | <性能要求> | <重试策略> |
111
+
112
+ #### 定时任务(Scheduled Tasks)
113
+ 对应 Specs 触发类型:定时任务
21
114
 
22
- 3. **设计数据库变更方案**
115
+ | 任务名称 | Trigger(Cron/间隔) | 执行逻辑(步骤级) | 幂等设计 | 并发控制 | 边界与异常 | 性能考虑 | 补偿/重试 |
116
+ |---|---|---|---|---|---|---|---|
117
+ | <任务名称> | <Cron 表达式> | 1. ...<br>2. ... | <幂等方案> | <并发控制> | <异常场景> | <性能要求> | <重试策略> |
23
118
 
24
- - 字段名、类型、约束
25
- - 默认值和历史数据处理
26
- - 索引建议
27
- - 数据迁移脚本(如需要)
119
+ #### 后台任务(Async Background Job)
120
+ 适用于:某个入口内部将耗时/可重试逻辑投递到线程池异步执行(如 @Async)
28
121
 
29
- 4. **设计代码实现方案**
122
+ | 任务名称 | 投递来源/时机 | 任务载荷(仅 ID) | 执行逻辑(步骤级) | 幂等设计 | 并发控制 | 边界与异常 | 性能考虑 | 补偿/重试 |
123
+ |---|---|---|---|---|---|---|---|---|
124
+ | <任务名称> | <哪个入口/何时投递> | <entityId 等> | 1. ...<br>2. ... | <幂等方案> | <并发控制> | <异常场景> | <性能要求> | <重试策略> |
30
125
 
31
- - 实体类字段添加(含注解)
32
- - 业务逻辑实现(含关键代码示例)
33
- - 校验逻辑(必填、值域、约束)
34
- - 错误提示(使用多语言资源)
126
+ **一致性要求**:
127
+ - 明确各入口的关键一致性要求(强一致/最终一致)与边界(原则级)
35
128
 
36
- 5. **设计前端 UI 方案**
129
+ 7. **集成方案(Integration)**
37
130
 
38
- - 各页面字段状态(可编辑/只读/隐藏)
39
- - 交互逻辑(下拉选择、提示信息)
40
- - 错误提示
41
- - 多语言支持
131
+ - 列出所有集成点(外部系统/内部系统/第三方回调/消息系统等)
132
+ - 明确集成方式与责任边界:
133
+ - 同步调用 / 异步事件 / 回调驱动
134
+ - 认证与鉴权(策略级)
135
+ - 超时/失败/重试的业务语义(不写具体参数)
136
+ - 明确可观测性要求:必须能追踪一次处理的触发来源与处理结果(用于排障与验收)
42
137
 
43
- 6. **设计测试方案**
138
+ > 注意:API/回调的**具体出入参字段清单**放在 Tasks 阶段落地;Design 只描述“接口/事件的语义与契约要点”。
44
139
 
45
- - 单元测试(函数级别)
46
- - 集成测试(流程级别)
47
- - 数据一致性验证(SQL 验证)
140
+ 8. **数据模型与数据库方案(Data Model & DB Plan)**
48
141
 
49
- 7. **架构决策记录(P0 需求必须)**
142
+ - 对齐 Specs 的 Key Entities:说明关键业务对象如何落库(表级)
143
+ - 列出受影响的表清单(新增/修改/废弃)与改动原因(业务语义)
144
+ - 明确关键数据约束(唯一性、关联关系、审计字段、幂等关联键等)
50
145
 
51
- 如果是 P0 级需求,创建 ADR:
146
+ **DDL 要求**:
147
+ - **新增表**:必须在 Design 中给出 DDL(CREATE TABLE),用于评审整体形态与关键约束
148
+ - **修改存量表**:Design 只写“字段语义/约束/迁移策略”;具体 ALTER、索引、脚本与校验 SQL 放 Tasks
149
+
150
+ 9. **迁移 / 兼容(Migration / Compatibility)**
151
+
152
+ - 存量数据处理策略:回填/补齐/默认语义/是否允许历史数据为空
153
+ - 兼容性策略:
154
+ - 行为兼容(旧流程是否变化)
155
+ - 数据兼容(新字段对旧逻辑的影响)
156
+ - 集成兼容(外部系统/调用方是否受影响)
157
+ - 发布策略:是否需要灰度/开关(原则级)
158
+ - 回滚策略:回滚对业务与数据的影响(原则级)
159
+
160
+ 10. **风险与验证方式(Risk & Validation)**
161
+
162
+ - 风险清单:列出 3-7 个最关键风险(集成失败、回调乱序/重复、定时重复触发、数据回填错误等)
163
+ - 验证方式:将 Specs 的验收标准(AC)与 Scenarios(GWT)映射为验证矩阵(单元/集成/回归/对账/人工验证),但不在此阶段编写具体用例代码
164
+
165
+ 11. **架构决策记录(涉及关键决策时创建)**
166
+
167
+ 若涉及重要架构决策(技术选型、集成方案、关键一致性策略等),创建 ADR:
52
168
 
53
169
  创建 `6aspecdoc/brown/<name>/artifacts/ADR-<name>.md`:
54
170
  ```markdown
@@ -82,74 +198,172 @@ Phase 3: 技术方案设计
82
198
  <如何验证这个决策是正确的>
83
199
  ```
84
200
 
85
- 8. **技术债务识别**
86
-
87
- 识别实现过程中可能引入的技术债务:
201
+ 12. **技术债务识别(标准级/完整级推荐)**
88
202
 
89
203
  | 债务ID | 描述 | 类型 | 影响 | 偿还成本 | 优先级 |
90
204
  |--------|------|------|------|----------|--------|
91
- | DEBT-001 | 临时的硬编码逻辑 | 代码质量 | | 2人日 | P1 |
205
+ | DEBT-001 | ... | ... | ... | ... | P1 |
206
+
207
+ 13. **创建技术方案文档**
208
+
209
+ 创建 `6aspecdoc/brown/<name>/artifacts/design.md`
210
+
211
+ 建议结构(可按需裁剪):
212
+ - 背景与目标 / 非目标
213
+ - 模块划分
214
+ - 服务边界
215
+ - 接口/入口规范(REST API / 事件订阅 / 定时任务 / 后台任务)
216
+ - 集成方案
217
+ - 数据模型与数据库方案(新增表附 DDL)
218
+ - 迁移 / 兼容 / 灰度 / 回滚
219
+ - 风险与验证矩阵
220
+ - ADR 列表(如有)
221
+ - 技术债务(如有)
222
+
223
+ 14. **更新状态**
224
+
225
+ 更新 `6aspecdoc/brown/<name>/status.json`:
226
+
227
+ **轻量级流程**:
228
+ ```json
229
+ {
230
+ "status": "tasks_pending",
231
+ "flowDepth": "lightweight",
232
+ "phases": {
233
+ "proposal": "done",
234
+ "specs": "done",
235
+ "design": "done",
236
+ "tasks": "pending",
237
+ "implement": "blocked"
238
+ },
239
+ "artifacts": ["proposal.md", "specs.md", "design.md"]
240
+ }
241
+ ```
242
+
243
+ **标准级流程**:
244
+ ```json
245
+ {
246
+ "status": "tasks_pending",
247
+ "flowDepth": "standard",
248
+ "phases": {
249
+ "understand": "done",
250
+ "impact": "done",
251
+ "proposal": "done",
252
+ "specs": "done",
253
+ "design": "done",
254
+ "tasks": "pending",
255
+ "implement": "blocked"
256
+ },
257
+ "artifacts": ["understanding.md", "impact-analysis.md", "proposal.md", "specs.md", "design.md"]
258
+ }
259
+ ```
92
260
 
93
- 9. **创建技术方案文档**
261
+ **完整级流程**:
262
+ ```json
263
+ {
264
+ "status": "tasks_pending",
265
+ "flowDepth": "complete",
266
+ "phases": {
267
+ "understand": "done",
268
+ "impact": "done",
269
+ "proposal": "done",
270
+ "specs": "done",
271
+ "design": "done",
272
+ "tasks": "pending",
273
+ "implement": "blocked",
274
+ "verify": "blocked",
275
+ "review": "blocked"
276
+ },
277
+ "artifacts": ["understanding.md", "impact-analysis.md", "proposal.md", "specs.md", "design.md"]
278
+ }
279
+ ```
94
280
 
95
- 创建 `6aspecdoc/brown/<name>/artifacts/03-technical-design.md`
281
+ 同时更新 `6aspecdoc/brown/<name>/requirement.md`:
282
+ - 更新"状态"字段为 `📋 Tasks 待开始`
283
+ - 更新"最后修改"时间戳为 `<timestamp>`
284
+ - 更新"当前阶段"为 `Design - 技术方案设计(已完成)`
285
+ - 更新"下一步操作"为 `运行 /6aspec:brown:tasks 继续下一阶段`
286
+ - 在"进度概览"中标记 Design 阶段为已完成 `[x]`
96
287
 
97
- 10. **更新状态**
288
+ ---
98
289
 
99
- 更新 `6aspecdoc/brown/<name>/status.json`:
100
- ```json
101
- {
102
- "status": "tasks_pending",
103
- "phases": {
104
- "understand": "done",
105
- "impact": "done",
106
- "design": "done",
107
- "tasks": "pending",
108
- ...
109
- }
110
- }
111
- ```
290
+ ## 输出
112
291
 
113
- **输出**
292
+ 根据 `flowDepth` 显示不同的输出信息(示例):
114
293
 
294
+ **轻量级流程**:
115
295
  ```
116
- ## Phase 3 完成:技术方案设计
296
+ ## Design 完成:<name>
117
297
 
118
- **需求**: <name>
119
- **进度**: 4/5 阶段完成(标准级)或 4/6 阶段完成(完整级)
298
+ **流程**: 轻量级
299
+ **进度**: 3/5 阶段完成
120
300
 
121
301
  ### 方案概要
122
- - 数据库变更:<数量> 个表
123
- - 代码变更:<数量> 个类
124
- - 前端变更:<数量> 个页面
125
- - 测试用例:<数量>
302
+ - 模块划分:<数量> 个模块(新增/调整:<数量>)
303
+ - 服务边界:<数量> 个关键边界/所有权确认
304
+ - 接口/入口:<数量> 个(REST API / 事件订阅 / 定时任务 / 后台任务,按需)
305
+ - 集成点:<数量> 个(外部/内部)
306
+ - 迁移/兼容:<是否需要 + 简述>
126
307
 
127
308
  ### 关键设计决策
128
- <列出 2-3 个关键决策>
309
+ <列出 2-3 个关键决策(含是否创建 ADR)>
310
+
311
+ ### 文档位置
312
+ - 6aspecdoc/brown/<name>/artifacts/design.md
313
+ - 6aspecdoc/brown/<name>/artifacts/ADR-<name>.md (如涉及)
129
314
 
130
- ### 技术债务
131
- <列出识别的技术债务>
315
+ ### 下一步
316
+ - 直接回复修正设计方案或补充细节 → 我会更新本阶段文档(design.md)
317
+ - 运行 `/6aspec:brown:tasks` → 进入任务拆解阶段
318
+ - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
319
+ ```
320
+
321
+ **标准级/完整级流程**:
322
+ ```
323
+ ## Design 完成:<name>
324
+
325
+ **流程**: <标准级/完整级>
326
+ **进度**: <按流程深度计算>
327
+
328
+ ### 方案概要
329
+ - 模块划分:<...>
330
+ - 服务边界:<...>
331
+ - 接口/入口:<...>
332
+ - 集成点:<...>
333
+ - 数据模型:<新增表/改表概览;新增表 DDL:<有/无>>
334
+ - 迁移/兼容:<策略摘要>
335
+
336
+ ### 风险与验证
337
+ - 关键风险:<数量>
338
+ - 验证矩阵:已覆盖 Specs 的 AC / Scenarios
132
339
 
133
340
  ### 文档位置
134
- - 6aspecdoc/brown/<name>/artifacts/03-technical-design.md
135
- - 6aspecdoc/brown/<name>/artifacts/ADR-<name>.md (P0)
341
+ - 6aspecdoc/brown/<name>/artifacts/design.md
342
+ - 6aspecdoc/brown/<name>/artifacts/ADR-<name>.md (如涉及)
136
343
 
137
344
  ### 下一步
138
- - 直接回复修正设计方案或补充细节 → 我会更新本阶段文档(03-technical-design.md)
345
+ - 直接回复修正设计方案或补充细节 → 我会更新本阶段文档(design.md)
139
346
  - 运行 `/6aspec:brown:tasks` → 进入任务拆解阶段
140
347
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
141
348
  ```
142
349
 
143
- **用户补充信息时的处理**
350
+ ---
144
351
 
145
- 当用户修正设计方案、补充技术细节、或对设计决策提出异议时(未使用阶段命令):
146
- 1. 将用户的修正/补充整合到 `03-technical-design.md` 的对应章节
352
+ ## 用户补充信息时的处理
353
+
354
+ 当用户修正设计方案、补充决策信息、或对设计决策提出异议时(未使用阶段命令):
355
+ 1. 将用户的修正/补充整合到 `design.md` 的对应章节
147
356
  2. 展示变更摘要
148
357
  3. 再次提示:可以继续补充,或通过命令进入下一阶段
149
358
  4. **禁止**:不得自动进入下一阶段
150
359
 
151
- **防护措施**
152
- - 必须先完成 Phase 2
153
- - P0 需求必须创建 ADR
154
- - 代码示例必须完整可用
155
- - 技术债务必须明确标注
360
+ ---
361
+
362
+ ## 防护措施
363
+
364
+ - 所有流程级别:必须先完成 specs 阶段(`phases.specs == done`)
365
+ - Design 文档必须覆盖:模块划分、服务边界、接口/入口规范、集成方案、数据模型、迁移/兼容、风险与验证
366
+ - **禁止**:把 Design 写成实现说明(代码片段、注解、方法级实现、伪代码、前端逐字段交互、API 出入参字段清单等)
367
+ - **新增表**:必须提供 DDL;**改表**:不得在 Design 展开全量 DDL(放 Tasks)
368
+ - 涉及关键架构决策时必须创建 ADR(技术选型、集成方案、一致性策略等)
369
+ - 标准级/完整级:技术债务应明确标注(如有)