6aspec 2.0.0-dev.17 → 2.0.0-dev.18

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.
@@ -1,9 +1,13 @@
1
1
  # 棕地需求 - Proposal SOP
2
2
 
3
- 创建需求提案 - 所有流程的第一阶段。
3
+ 创建需求提案
4
4
 
5
5
  **适用流程**:轻量级、标准级、完整级
6
6
 
7
+ **流程定位**:
8
+ - **轻量级**:第一阶段,基于需求描述(如果之前使用了探索模式并生成了 explore-summary.md,也会参考探索发现)
9
+ - **标准级/完整级**:第三阶段,基于 understand 和 impact 的分析结果
10
+
7
11
  **输入**:`/6aspec:brown:proposal` 后可选需求名称。
8
12
 
9
13
  **步骤**
@@ -11,25 +15,29 @@
11
15
  1. **选择需求并检查状态**
12
16
 
13
17
  - 读取 `6aspecdoc/brown/<name>/status.json`
14
- - 确认 `phases.proposal` 为 "pending"
18
+ - 根据 `flowDepth` 检查前置阶段:
19
+ - **轻量级**:确认 `phases.proposal` 为 "pending"
20
+ - **标准级/完整级**:确认 `phases.impact` 为 "done",如果未完成提示先运行 `/6aspec:brown:impact`
15
21
  - 如果proposal已完成,提示使用 `/6aspec:brown:continue` 进入下一阶段
16
22
 
17
- 2. **收集需求信息**
23
+ 2. **读取前置文档**
24
+
25
+ 根据 `flowDepth` 读取不同的前置文档:
18
26
 
19
- 首先读取 `6aspecdoc/brown/<name>/requirement.md` 中的"原始需求"部分:
20
- - 如果 `inputSource.type = "text"`:直接使用其中记录的需求描述。
21
- - 如果 `inputSource.type = "file"`:读取记录的来源文件路径,获取完整需求内容。
27
+ **轻量级流程**:
28
+ - `6aspecdoc/brown/<name>/requirement.md` - 原始需求
29
+ - `6aspecdoc/brown/<name>/explore-summary.md` - 探索摘要(如果存在)
22
30
 
23
- 如果原始需求信息不足以生成提案,再询问用户补充:
24
- - 为什么需要这个变更?(Why)
25
- - 要做什么?(What)
26
- - 预期影响是什么?(Impact)
31
+ **标准级/完整级流程**:
32
+ - `6aspecdoc/brown/<name>/requirement.md` - 原始需求
33
+ - `6aspecdoc/brown/<name>/artifacts/understanding.md` - 现状分析
34
+ - `6aspecdoc/brown/<name>/artifacts/impact-analysis.md` - 影响面分析
27
35
 
28
- 3. **创建提案文档**
36
+ 3. **创建提案文档(OpenSpec 格式)**
29
37
 
30
38
  创建 `6aspecdoc/brown/<name>/artifacts/proposal.md`:
31
39
  ```markdown
32
- # 需求提案:<需求标题>
40
+ # Proposal: <需求标题>
33
41
 
34
42
  > **需求**: <name>
35
43
  > **流程**: <flowDepth>
@@ -37,56 +45,52 @@
37
45
  > **状态**: ✅ 已完成
38
46
  > **创建时间**: <timestamp>
39
47
 
40
- ## 为什么做(Why
41
-
42
- ### 业务背景
43
- <业务背景描述>
44
-
45
- ### 要解决的问题
46
- <要解决的问题>
48
+ ## Why
47
49
 
48
- ### 预期收益
49
- <预期收益>
50
+ <1-2 sentences explaining the problem/opportunity>
50
51
 
51
- ## 要做什么(What
52
+ ## What Changes
52
53
 
53
- ### 功能概述
54
- <高层次的功能概述,描述核心能力>
54
+ <Bullet points of what will be different>
55
+ - <变更点1>
56
+ - <变更点2>
57
+ - <变更点3>
55
58
 
56
- ### 核心能力
57
- - 能力1:<简要描述>
58
- - 能力2:<简要描述>
59
- - 能力3:<简要描述>
59
+ ## Capabilities
60
60
 
61
- ### 范围界定
62
- **包含**:
63
- - <包含的内容>
61
+ ### New Capabilities
62
+ - `<capability-name>`: <brief description>
63
+ - `<capability-name>`: <brief description>
64
64
 
65
- **不包含**:
66
- - <不包含的内容>
65
+ ### Modified Capabilities
66
+ <!-- If modifying existing behavior -->
67
+ - `<capability-name>`: <brief description>
67
68
 
68
- ## 预期影响(Impact
69
+ ## Impact
69
70
 
70
- ### 技术影响
71
- - 数据库:<影响描述>
72
- - 后端代码:<影响描述>
73
- - 前端代码:<影响描述>
74
- - API接口:<影响描述>
71
+ **轻量级流程**(基于需求描述或 explore 摘要):
72
+ - `<file-path>`: <what changes>
73
+ - `<file-path>`: <what changes>
75
74
 
76
- ### 业务影响
77
- - 用户体验:<影响描述>
78
- - 业务流程:<影响描述>
75
+ **标准级/完整级流程**(基于 understanding 和 impact 分析):
76
+ - `<file-path>`: <what changes>(来自 impact-analysis.md)
77
+ - `<file-path>`: <what changes>(来自 impact-analysis.md)
79
78
 
80
- ### 风险评估
81
- - 技术风险:<风险描述>
82
- - 业务风险:<风险描述>
83
-
84
- ## 下一步
79
+ ## Next Steps
85
80
 
86
81
  - 轻量级流程:运行 `/6aspec:brown:specs` 进行需求规格定义
87
- - 标准级/完整级流程:运行 `/6aspec:brown:understand` 进行需求理解与现状分析
82
+ - 标准级/完整级流程:运行 `/6aspec:brown:specs` 进行需求规格定义
88
83
  ```
89
84
 
85
+ **注意**:
86
+ - Proposal 格式遵循 OpenSpec 规范,保持简洁
87
+ - Why 部分:1-2 句话说明问题或机会
88
+ - What Changes 部分:列出主要变更点
89
+ - Capabilities 部分:列出新增或修改的系统能力(每个 capability 将对应一个 spec 文件)
90
+ - Impact 部分:列出受影响的文件和简要描述
91
+ - 轻量级流程的 Impact 基于需求描述或 explore 摘要(高层次评估)
92
+ - 标准级/完整级流程的 Impact 基于 impact-analysis.md(详细分析的摘要)
93
+
90
94
  4. **更新状态**
91
95
 
92
96
  更新 `6aspecdoc/brown/<name>/status.json`:
@@ -110,38 +114,38 @@
110
114
  **标准级流程**:
111
115
  ```json
112
116
  {
113
- "status": "understanding_pending",
117
+ "status": "specs_pending",
114
118
  "flowDepth": "standard",
115
119
  "phases": {
120
+ "understand": "done",
121
+ "impact": "done",
116
122
  "proposal": "done",
117
- "understand": "pending",
118
- "specs": "blocked",
119
- "impact": "blocked",
123
+ "specs": "pending",
120
124
  "design": "blocked",
121
125
  "tasks": "blocked",
122
126
  "implement": "blocked"
123
127
  },
124
- "artifacts": ["proposal.md"]
128
+ "artifacts": ["understanding.md", "impact-analysis.md", "proposal.md"]
125
129
  }
126
130
  ```
127
131
 
128
132
  **完整级流程**:
129
133
  ```json
130
134
  {
131
- "status": "understanding_pending",
135
+ "status": "specs_pending",
132
136
  "flowDepth": "complete",
133
137
  "phases": {
138
+ "understand": "done",
139
+ "impact": "done",
134
140
  "proposal": "done",
135
- "understand": "pending",
136
- "specs": "blocked",
137
- "impact": "blocked",
141
+ "specs": "pending",
138
142
  "design": "blocked",
139
143
  "tasks": "blocked",
140
144
  "implement": "blocked",
141
145
  "verify": "blocked",
142
146
  "review": "blocked"
143
147
  },
144
- "artifacts": ["proposal.md"]
148
+ "artifacts": ["understanding.md", "impact-analysis.md", "proposal.md"]
145
149
  }
146
150
  ```
147
151
 
@@ -156,15 +160,12 @@
156
160
  ## Proposal 完成:<name>
157
161
 
158
162
  **流程**: 轻量级
159
- **进度**: 1/5 阶段完成
163
+ **进度**: 1/4 阶段完成
160
164
 
161
165
  ### 提案概要
162
- - 业务目标:<简述>
163
- - 核心能力:<数量>
164
- - 预期影响:<简述>
165
-
166
- ### 关键风险
167
- <列出关键风险>
166
+ - Why: <简述>
167
+ - What Changes: <数量> 项变更
168
+ - Capabilities: <数量> 个能力
168
169
 
169
170
  ### 文档位置
170
171
  6aspecdoc/brown/<name>/artifacts/proposal.md
@@ -180,22 +181,19 @@
180
181
  ## Proposal 完成:<name>
181
182
 
182
183
  **流程**: 标准级
183
- **进度**: 1/7 阶段完成
184
+ **进度**: 3/6 阶段完成
184
185
 
185
186
  ### 提案概要
186
- - 业务目标:<简述>
187
- - 核心能力:<数量>
188
- - 预期影响:<简述>
189
-
190
- ### 关键风险
191
- <列出关键风险>
187
+ - Why: <简述>
188
+ - What Changes: <数量> 项变更
189
+ - Capabilities: <数量> 个能力
192
190
 
193
191
  ### 文档位置
194
192
  6aspecdoc/brown/<name>/artifacts/proposal.md
195
193
 
196
194
  ### 下一步
197
195
  - 直接回复补充或修正提案内容 → 我会更新本阶段文档(proposal.md)
198
- - 运行 `/6aspec:brown:understand` → 进入需求理解与现状分析阶段
196
+ - 运行 `/6aspec:brown:specs` → 进入需求规格定义阶段
199
197
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
200
198
  ```
201
199
 
@@ -204,22 +202,19 @@
204
202
  ## Proposal 完成:<name>
205
203
 
206
204
  **流程**: 完整级
207
- **进度**: 1/9 阶段完成
205
+ **进度**: 3/8 阶段完成
208
206
 
209
207
  ### 提案概要
210
- - 业务目标:<简述>
211
- - 核心能力:<数量>
212
- - 预期影响:<简述>
213
-
214
- ### 关键风险
215
- <列出关键风险>
208
+ - Why: <简述>
209
+ - What Changes: <数量> 项变更
210
+ - Capabilities: <数量> 个能力
216
211
 
217
212
  ### 文档位置
218
213
  6aspecdoc/brown/<name>/artifacts/proposal.md
219
214
 
220
215
  ### 下一步
221
216
  - 直接回复补充或修正提案内容 → 我会更新本阶段文档(proposal.md)
222
- - 运行 `/6aspec:brown:understand` → 进入需求理解与现状分析阶段
217
+ - 运行 `/6aspec:brown:specs` → 进入需求规格定义阶段
223
218
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
224
219
  ```
225
220
 
@@ -12,7 +12,7 @@
12
12
  **限制**:
13
13
  - 只能一级一级往上退,不允许跨节点
14
14
  - 只能回退已完成的阶段(状态为 "done")
15
- - 不能回退第一个阶段(proposal)
15
+ - 不能回退第一个阶段(轻量级流程:proposal,标准级/完整级流程:understand
16
16
  - 不能从实施阶段回退(implement、verify、review),因为代码已修改,回退文档会导致文档和代码不一致
17
17
  - 只允许在分析阶段回退(proposal、understand、specs、impact、design、tasks)
18
18
  - 已归档的需求不能回退
@@ -43,25 +43,25 @@
43
43
  - ~~implement → tasks~~(禁止:代码已修改)
44
44
 
45
45
  **标准级流程(standard)**:
46
- - understandproposal
47
- - specsunderstand
48
- - impactspecs
49
- - design → impact
46
+ - impactunderstand
47
+ - proposalimpact
48
+ - specsproposal
49
+ - design → specs
50
50
  - tasks → design
51
51
  - ~~implement → tasks~~(禁止:代码已修改)
52
52
 
53
53
  **完整级流程(complete)**:
54
- - understandproposal
55
- - specsunderstand
56
- - impactspecs
57
- - design → impact
54
+ - impactunderstand
55
+ - proposalimpact
56
+ - specsproposal
57
+ - design → specs
58
58
  - tasks → design
59
59
  - ~~implement → tasks~~(禁止:代码已修改)
60
60
  - ~~verify → implement~~(禁止:代码已修改)
61
61
  - ~~review → verify~~(禁止:代码已修改)
62
62
 
63
63
  **边界情况**:
64
- - 如果当前在第一个阶段(proposal),提示无法回退
64
+ - 如果当前在第一个阶段(轻量级流程:proposal,标准级/完整级流程:understand),提示无法回退
65
65
  - 如果当前在实施阶段(implement、verify、review),提示无法回退(代码已修改)
66
66
  - 如果所有阶段都是 pending,提示没有可回退的阶段
67
67
 
@@ -181,7 +181,7 @@
181
181
  **防护措施**
182
182
  - 必须确认需求未归档
183
183
  - 必须确认当前阶段已完成(状态为 "done")
184
- - 不能回退第一个阶段(proposal)
184
+ - 不能回退第一个阶段(轻量级流程:proposal,标准级/完整级流程:understand
185
185
  - 不能从实施阶段回退(implement、verify、review)
186
186
  - 只允许在分析阶段回退(proposal、understand、specs、impact、design、tasks)
187
187
  - 必须用户确认后才能执行回退
@@ -192,7 +192,7 @@
192
192
 
193
193
  - 如果需求不存在,提示创建新需求
194
194
  - 如果需求已归档,提示先取消归档
195
- - 如果当前在第一个阶段(proposal),提示无法回退
195
+ - 如果当前在第一个阶段(轻量级流程:proposal,标准级/完整级流程:understand),提示无法回退
196
196
  - 如果当前在实施阶段(implement、verify、review),提示无法回退,原因:代码已修改,回退文档会导致文档和代码不一致
197
197
  - 如果所有阶段都是 pending,提示没有可回退的阶段
198
198
  - 如果文件删除失败,提示错误信息但继续更新状态
@@ -13,7 +13,7 @@
13
13
  - 读取 `6aspecdoc/brown/<name>/status.json`
14
14
  - 根据 `flowDepth` 检查前置阶段:
15
15
  - **轻量级**:确认 `phases.proposal` 为 "done",如果未完成提示先运行 `/6aspec:brown:proposal`
16
- - **标准级/完整级**:确认 `phases.understand` 为 "done",如果未完成提示先运行 `/6aspec:brown:understand`
16
+ - **标准级/完整级**:确认 `phases.impact` 为 "done",如果未完成提示先运行 `/6aspec:brown:impact`
17
17
 
18
18
  2. **读取前置文档**
19
19
 
@@ -27,6 +27,7 @@
27
27
  - `6aspecdoc/brown/<name>/requirement.md`
28
28
  - `6aspecdoc/brown/<name>/artifacts/proposal.md`
29
29
  - `6aspecdoc/brown/<name>/artifacts/understanding.md`
30
+ - `6aspecdoc/brown/<name>/artifacts/impact-analysis.md`
30
31
 
31
32
  3. **读取问题答案(仅标准级/完整级)**
32
33
 
@@ -40,17 +41,30 @@
40
41
 
41
42
  4. **定义功能需求**
42
43
 
43
- 基于需求理解和问题答案,明确定义系统应该具备的能力:
44
+ 基于需求理解和问题答案,使用 Requirement + Scenario 格式明确定义系统应该具备的能力:
44
45
 
45
- **功能需求格式**:
46
- - FR-001: <功能描述>
47
- - 输入:<输入内容>
48
- - 输出:<输出内容>
49
- - 业务规则:<业务规则>
50
- - 验收标准:<验收标准>
46
+ **功能需求格式**(借鉴 OpenSpec 的 WHEN/THEN 格式):
47
+ ```markdown
48
+ ### Requirement: <需求名称>
49
+
50
+ <需求描述,使用 SHALL/MUST 关键字表示强制性要求>
51
+
52
+ #### Scenario: <场景名称>
53
+
54
+ - **WHEN** <触发条件>
55
+ - **THEN** <预期结果>
56
+ - **AND** <额外的预期结果>(可选)
57
+
58
+ #### Scenario: <另一个场景名称>
59
+
60
+ - **WHEN** <触发条件>
61
+ - **THEN** <预期结果>
62
+ ```
51
63
 
52
64
  **拆解原则**:
53
- - 每个功能需求应该是独立的、可验证的
65
+ - 每个 Requirement 应该是独立的、可验证的
66
+ - 每个 Scenario 使用 WHEN/THEN 格式,天然可测试
67
+ - 使用 SHALL/MUST 关键字表示强制性要求,SHOULD 表示推荐性要求
54
68
  - 功能需求应该从用户视角描述(做什么,而不是怎么做)
55
69
  - 避免技术实现细节(技术细节放在 design 阶段)
56
70
 
@@ -58,10 +72,26 @@
58
72
 
59
73
  明确系统应该满足的质量标准:
60
74
 
61
- - NFR-001: 性能需求(响应时间、并发量等)
62
- - NFR-002: 安全需求(权限控制、数据加密等)
63
- - NFR-003: 可用性需求(易用性、可维护性等)
64
- - NFR-004: 兼容性需求(浏览器、数据库等)
75
+ **非功能需求格式**:
76
+ ```markdown
77
+ ### 性能需求
78
+ - 响应时间 SHALL < 200ms
79
+ - 并发量 SHALL 支持 1000+ QPS
80
+
81
+ ### 安全需求
82
+ - 权限控制:只有管理员 SHALL 可以修改
83
+ - 数据加密:敏感数据 SHALL 加密存储
84
+
85
+ ### 可用性需求
86
+ - 易用性:界面 SHOULD 符合团队 UI 规范
87
+ - 可维护性:代码 SHOULD 遵循现有架构模式
88
+
89
+ ### 兼容性需求
90
+ - 浏览器:SHALL 支持 Chrome/Firefox/Safari 最新版本
91
+ - 数据库:SHALL 兼容现有数据库版本
92
+ ```
93
+
94
+ 注意:使用 SHALL/MUST 表示强制性要求,SHOULD 表示推荐性要求
65
95
 
66
96
  6. **定义范围和约束**
67
97
 
@@ -76,15 +106,9 @@
76
106
  - 业务约束:<业务上的限制>
77
107
  - 时间约束:<时间上的限制>
78
108
 
79
- 7. **定义验收标准**
80
-
81
- 明确如何验证需求已经实现:
82
-
83
- - AC-001: <功能验收标准>
84
- - AC-002: <非功能验收标准>
85
- - AC-003: <数据验收标准>
109
+ 7. **创建需求规格文档**
86
110
 
87
- 8. **创建需求规格文档**
111
+ 注意:使用 WHEN/THEN 格式定义的 Scenario 本身就是验证标准,无需单独定义验收标准。
88
112
 
89
113
  创建 `6aspecdoc/brown/<name>/artifacts/specs.md`:
90
114
  ```markdown
@@ -101,10 +125,7 @@
101
125
  ### 1.1 业务目标
102
126
  <为什么需要这个功能>
103
127
 
104
- ### 1.2 使用场景
105
- <谁用、什么时候用、怎么用>
106
-
107
- ### 1.3 范围定义
128
+ ### 1.2 范围定义
108
129
  **包含**:
109
130
  - <明确包含的功能>
110
131
 
@@ -113,65 +134,60 @@
113
134
 
114
135
  ## 2. 功能需求
115
136
 
116
- ### FR-001: <功能名称>
117
- **描述**:<功能描述>
137
+ ### Requirement: <需求名称>
138
+
139
+ <需求描述,使用 SHALL/MUST 关键字表示强制性要求>
140
+
141
+ #### Scenario: <场景名称>
142
+
143
+ - **WHEN** <触发条件>
144
+ - **THEN** <预期结果>
145
+ - **AND** <额外的预期结果>(可选)
118
146
 
119
- **输入**:
120
- - <输入内容>
147
+ #### Scenario: <另一个场景名称>
121
148
 
122
- **输出**:
123
- - <输出内容>
149
+ - **WHEN** <触发条件>
150
+ - **THEN** <预期结果>
124
151
 
125
- **业务规则**:
126
- - <业务规则1>
127
- - <业务规则2>
152
+ ### Requirement: <另一个需求名称>
128
153
 
129
- **验收标准**:
130
- - <验收标准1>
131
- - <验收标准2>
154
+ <需求描述>
132
155
 
133
- ### FR-002: <功能名称>
134
- ...
156
+ #### Scenario: <场景名称>
157
+
158
+ - **WHEN** <触发条件>
159
+ - **THEN** <预期结果>
135
160
 
136
161
  ## 3. 非功能需求
137
162
 
138
- ### 3.1 性能需求
139
- - NFR-001: <性能要求>
163
+ ### 性能需求
164
+ - 响应时间 SHALL < <具体值>
165
+ - 并发量 SHALL 支持 <具体值>
140
166
 
141
- ### 3.2 安全需求
142
- - NFR-002: <安全要求>
167
+ ### 安全需求
168
+ - 权限控制:<具体要求>
169
+ - 数据加密:<具体要求>
143
170
 
144
- ### 3.3 可用性需求
145
- - NFR-003: <可用性要求>
171
+ ### 可用性需求
172
+ - 易用性:<具体要求>
173
+ - 可维护性:<具体要求>
146
174
 
147
- ### 3.4 兼容性需求
148
- - NFR-004: <兼容性要求>
175
+ ### 兼容性需求
176
+ - 浏览器:SHALL 支持 <具体版本>
177
+ - 数据库:SHALL 兼容 <具体版本>
149
178
 
150
179
  ## 4. 约束条件
151
180
 
152
- ### 4.1 技术约束
181
+ ### 技术约束
153
182
  - <技术上的限制>
154
183
 
155
- ### 4.2 业务约束
184
+ ### 业务约束
156
185
  - <业务上的限制>
157
186
 
158
- ### 4.3 时间约束
187
+ ### 时间约束
159
188
  - <时间上的限制>
160
189
 
161
- ## 5. 验收标准
162
-
163
- ### 5.1 功能验收
164
- - AC-001: <功能验收标准>
165
- - AC-002: <功能验收标准>
166
-
167
- ### 5.2 非功能验收
168
- - AC-003: <非功能验收标准>
169
- - AC-004: <非功能验收标准>
170
-
171
- ### 5.3 数据验收
172
- - AC-005: <数据验收标准>
173
-
174
- ## 6. 下一步
190
+ ## 5. 下一步
175
191
 
176
192
  - 轻量级流程:运行 `/6aspec:brown:design` 进行技术方案设计
177
193
  - 标准级/完整级流程:运行 `/6aspec:brown:impact` 进行影响面分析
@@ -200,38 +216,38 @@
200
216
  **标准级流程**:
201
217
  ```json
202
218
  {
203
- "status": "impact_pending",
219
+ "status": "design_pending",
204
220
  "flowDepth": "standard",
205
221
  "phases": {
206
222
  "proposal": "done",
207
223
  "understand": "done",
224
+ "impact": "done",
208
225
  "specs": "done",
209
- "impact": "pending",
210
- "design": "blocked",
226
+ "design": "pending",
211
227
  "tasks": "blocked",
212
228
  "implement": "blocked"
213
229
  },
214
- "artifacts": ["proposal.md", "understanding.md", "specs.md"]
230
+ "artifacts": ["proposal.md", "understanding.md", "impact-analysis.md", "specs.md"]
215
231
  }
216
232
  ```
217
233
 
218
234
  **完整级流程**:
219
235
  ```json
220
236
  {
221
- "status": "impact_pending",
237
+ "status": "design_pending",
222
238
  "flowDepth": "complete",
223
239
  "phases": {
224
240
  "proposal": "done",
225
241
  "understand": "done",
242
+ "impact": "done",
226
243
  "specs": "done",
227
- "impact": "pending",
228
- "design": "blocked",
244
+ "design": "pending",
229
245
  "tasks": "blocked",
230
246
  "implement": "blocked",
231
247
  "verify": "blocked",
232
248
  "review": "blocked"
233
249
  },
234
- "artifacts": ["proposal.md", "understanding.md", "specs.md"]
250
+ "artifacts": ["proposal.md", "understanding.md", "impact-analysis.md", "specs.md"]
235
251
  }
236
252
  ```
237
253
 
@@ -247,12 +263,12 @@
247
263
  **进度**: 2/5 阶段完成
248
264
 
249
265
  ### 需求概要
250
- - 功能需求:<数量> 个
251
- - 非功能需求:<数量>
252
- - 验收标准:<数量>
266
+ - 功能需求:<数量> 个 Requirement
267
+ - 测试场景:<数量> Scenario
268
+ - 非功能需求:<数量>
253
269
 
254
270
  ### 核心功能
255
- <列出 2-3 个核心功能需求>
271
+ <列出 2-3 个核心 Requirement>
256
272
 
257
273
  ### 关键约束
258
274
  <列出 1-2 个关键约束>
@@ -271,15 +287,15 @@
271
287
  ## Specs 完成:<name>
272
288
 
273
289
  **流程**: 标准级
274
- **进度**: 3/7 阶段完成
290
+ **进度**: 4/6 阶段完成
275
291
 
276
292
  ### 需求概要
277
- - 功能需求:<数量> 个
278
- - 非功能需求:<数量>
279
- - 验收标准:<数量>
293
+ - 功能需求:<数量> 个 Requirement
294
+ - 测试场景:<数量> Scenario
295
+ - 非功能需求:<数量>
280
296
 
281
297
  ### 核心功能
282
- <列出 2-3 个核心功能需求>
298
+ <列出 2-3 个核心 Requirement>
283
299
 
284
300
  ### 关键约束
285
301
  <列出 1-2 个关键约束>
@@ -289,7 +305,7 @@
289
305
 
290
306
  ### 下一步
291
307
  - 直接回复补充或修正需求规格 → 我会更新本阶段文档(specs.md)
292
- - 运行 `/6aspec:brown:impact` → 进入影响面分析阶段
308
+ - 运行 `/6aspec:brown:design` → 进入技术方案设计阶段
293
309
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
294
310
  ```
295
311
 
@@ -298,15 +314,15 @@
298
314
  ## Specs 完成:<name>
299
315
 
300
316
  **流程**: 完整级
301
- **进度**: 3/9 阶段完成
317
+ **进度**: 4/8 阶段完成
302
318
 
303
319
  ### 需求概要
304
- - 功能需求:<数量> 个
305
- - 非功能需求:<数量>
306
- - 验收标准:<数量>
320
+ - 功能需求:<数量> 个 Requirement
321
+ - 测试场景:<数量> Scenario
322
+ - 非功能需求:<数量>
307
323
 
308
324
  ### 核心功能
309
- <列出 2-3 个核心功能需求>
325
+ <列出 2-3 个核心 Requirement>
310
326
 
311
327
  ### 关键约束
312
328
  <列出 1-2 个关键约束>
@@ -316,7 +332,7 @@
316
332
 
317
333
  ### 下一步
318
334
  - 直接回复补充或修正需求规格 → 我会更新本阶段文档(specs.md)
319
- - 运行 `/6aspec:brown:impact` → 进入影响面分析阶段
335
+ - 运行 `/6aspec:brown:design` → 进入技术方案设计阶段
320
336
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
321
337
  ```
322
338
 
@@ -333,7 +349,9 @@
333
349
  - 根据flowDepth检查不同的前置阶段:
334
350
  - 轻量级:必须先完成proposal阶段
335
351
  - 标准级/完整级:必须先完成understand阶段
352
+ - 功能需求必须使用 Requirement + Scenario (WHEN/THEN) 格式
353
+ - 使用 SHALL/MUST 表示强制性要求,SHOULD 表示推荐性要求
354
+ - 每个 Scenario 必须可测试、可验证
336
355
  - 功能需求必须从用户视角描述,避免技术实现细节
337
- - 验收标准必须具体、可验证
338
356
  - 需求问题的答案应该体现在功能需求定义中,而不是单独列出
339
357
  - specs的详细程度保持一致,不区分流程深度