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,6 +1,10 @@
1
1
  # 棕地需求 - Understand SOP
2
2
 
3
- Phase 1: 需求理解与现状分析
3
+ 需求理解与现状分析
4
+
5
+ **适用流程**:标准级、完整级
6
+
7
+ **流程定位**:标准级/完整级的第一阶段,基于需求描述分析现有系统
4
8
 
5
9
  **输入**:`/6aspec:brown:understand` 后可选需求名称。如果省略,从上下文推断或提示选择。
6
10
 
@@ -17,15 +21,19 @@ Phase 1: 需求理解与现状分析
17
21
  2. **检查状态**
18
22
 
19
23
  读取 `6aspecdoc/brown/<name>/status.json`:
20
- - 如果 `phases.understand` 不是 "pending",提示已完成或跳过
21
- - 确认需求级别(P0/P1/P2)
22
- - P2 需求提示使用 `/6aspec:brown:quick`
24
+ - 确认流程深度为 "standard" "complete"
25
+ - 如果是 "lightweight",提示轻量级流程不需要understand阶段,应该直接运行 `/6aspec:brown:proposal`
26
+ - 确认 `phases.understand` 为 "pending"
27
+ - 如果understand已完成,提示使用 `/6aspec:brown:continue` 进入下一阶段
28
+ - 如果是简单需求,提示考虑使用 `/6aspec:brown:quick` 快速通道
23
29
 
24
30
  3. **读取需求描述**
25
31
 
26
- 读取 `6aspecdoc/brown/<name>/status.json` 中的 `inputSource` 字段判断输入类型:
27
- - `type = "text"`:读取 `requirement.md` 中的"原始需求"部分获取需求描述。
28
- - `type = "file"`:读取 `requirement.md` 中记录的来源文件路径,然后读取该文件获取完整需求内容。
32
+ 读取 `6aspecdoc/brown/<name>/artifacts/original-requirement.md` 获取原始需求内容:
33
+ - 如果 `inputSource.type = "text"`:文档中包含用户输入的原始需求描述
34
+ - 如果 `inputSource.type = "file"`:文档中包含来源文件路径的引用
35
+
36
+ **注意**:Understand 阶段不依赖 proposal,直接基于原始需求分析现有系统
29
37
 
30
38
  4. **分析现有系统**
31
39
 
@@ -66,39 +74,37 @@ Phase 1: 需求理解与现状分析
66
74
 
67
75
  5. **生成待明确问题清单**
68
76
 
69
- 基于分析结果,生成问题清单:
77
+ 基于现状分析和需求描述,生成需要用户明确的问题清单:
78
+
79
+ **问题类型**:
70
80
  - 字段设计问题(名称、类型、必填、默认值、值域)
71
81
  - 业务规则问题(是否可修改、是否继承、是否同步)
72
82
  - 权限和统计问题(权限控制、统计报表)
83
+ - 集成和兼容问题(与其他模块的集成、数据迁移)
84
+
85
+ 这些问题将在本阶段提出,并引导用户回答,为 specs 阶段的需求定义提供依据。
73
86
 
74
87
  6. **创建分析文档**
75
88
 
76
- 创建 `6aspecdoc/brown/<name>/artifacts/01-understanding.md`:
89
+ 创建 `6aspecdoc/brown/<name>/artifacts/understanding.md`:
77
90
  ```markdown
78
- # Phase 1: 需求理解与现状分析
91
+ # 需求理解与现状分析
79
92
 
80
93
  > **需求**: <name>
81
- > **阶段**: Phase 1 - 需求理解
94
+ > **流程**: <flowDepth>
95
+ > **阶段**: Understand
82
96
  > **状态**: ✅ 已完成
83
97
  > **完成时间**: <timestamp>
84
98
 
85
- ## 1. 需求概述
99
+ ## 1. 现有系统分析
86
100
 
87
- ### 业务目标
88
- <为什么需要这个功能>
89
-
90
- ### 使用场景
91
- <谁用、什么时候用、怎么用>
92
-
93
- ## 2. 现有系统分析
94
-
95
- ### 2.1 相关实体类
101
+ ### 1.1 相关实体类
96
102
  <列出相关实体类及其职责>
97
103
 
98
- ### 2.2 相关服务类
104
+ ### 1.2 相关服务类
99
105
  <列出相关服务类及其职责>
100
106
 
101
- ### 2.3 数据库表关系图
107
+ ### 1.3 数据库表关系图
102
108
  ```mermaid
103
109
  erDiagram
104
110
  TableA ||--o{ TableB : "关系"
@@ -112,7 +118,7 @@ Phase 1: 需求理解与现状分析
112
118
  }
113
119
  ```
114
120
 
115
- ### 2.4 核心业务流程图
121
+ ### 1.4 核心业务流程图
116
122
  ```mermaid
117
123
  flowchart TB
118
124
  Start[开始] --> Process[处理步骤]
@@ -121,10 +127,10 @@ Phase 1: 需求理解与现状分析
121
127
  Decision -->|否| End2[结束路径2]
122
128
  ```
123
129
 
124
- ### 2.5 隐性假设和约束
130
+ ### 1.5 隐性假设和约束
125
131
  <列出识别的隐性假设和约束>
126
132
 
127
- ## 3. 待明确问题清单
133
+ ## 2. 待明确问题清单
128
134
 
129
135
  ### 字段设计
130
136
  1. 字段名称:[待确认]
@@ -142,7 +148,7 @@ Phase 1: 需求理解与现状分析
142
148
  9. 是否需要权限控制:[待确认]
143
149
  10. 是否需要统计报表:[待确认]
144
150
 
145
- ## 4. 下一步
151
+ ## 3. 下一步
146
152
 
147
153
  请回答上述待明确问题,然后运行 `/6aspec:brown:specs` 定义需求规格。
148
154
  ```
@@ -150,29 +156,92 @@ Phase 1: 需求理解与现状分析
150
156
  7. **更新状态**
151
157
 
152
158
  更新 `6aspecdoc/brown/<name>/status.json`:
159
+
160
+ **标准级流程**:
161
+ ```json
162
+ {
163
+ "status": "impact_pending",
164
+ "flowDepth": "standard",
165
+ "phases": {
166
+ "proposal": "done",
167
+ "understand": "done",
168
+ "impact": "pending",
169
+ "specs": "blocked",
170
+ "design": "blocked",
171
+ "tasks": "blocked",
172
+ "implement": "blocked"
173
+ },
174
+ "artifacts": ["proposal.md", "understanding.md"]
175
+ }
176
+ ```
177
+
178
+ **完整级流程**:
153
179
  ```json
154
180
  {
155
- "status": "specs_pending",
181
+ "status": "impact_pending",
182
+ "flowDepth": "complete",
156
183
  "phases": {
184
+ "proposal": "done",
157
185
  "understand": "done",
158
- "specs": "pending",
159
- "impact": "blocked",
160
- ...
186
+ "impact": "pending",
187
+ "specs": "blocked",
188
+ "design": "blocked",
189
+ "tasks": "blocked",
190
+ "implement": "blocked",
191
+ "verify": "blocked",
192
+ "review": "blocked"
161
193
  },
162
- "artifacts": ["01-understanding.md"]
194
+ "artifacts": ["proposal.md", "understanding.md"]
163
195
  }
164
196
  ```
165
197
 
198
+ 同时更新 `6aspecdoc/brown/<name>/requirement.md`:
199
+ - 更新"状态"字段为 `📋 Impact 待开始`
200
+ - 更新"最后修改"时间戳为 `<timestamp>`
201
+ - 更新"当前阶段"为 `Understand - 需求理解与现状分析(已完成)`
202
+ - 更新"下一步操作"为 `运行 /6aspec:brown:impact 继续下一阶段`
203
+ - 在"进度概览"中标记 Understand 阶段为已完成 `[x]`
204
+
166
205
  8. **停止并等待用户指令**
167
206
 
168
207
  **输出**
169
208
 
170
- 完成后,显示:
209
+ 根据 `flowDepth` 显示不同的输出信息:
210
+
211
+ **标准级流程**:
212
+ ```
213
+ ## Understand 完成:<name>
214
+
215
+ **流程**: 标准级
216
+ **进度**: 2/6 阶段完成
217
+
218
+ ### 分析结果
219
+ - 相关实体类:<数量>
220
+ - 相关服务类:<数量>
221
+ - 数据库表:<数量>
222
+ - 待明确问题:<数量>
223
+
224
+ ### 关键发现
225
+ <列出 2-3 个关键发现>
226
+
227
+ ### 待明确问题(重要)
228
+ <列出最重要的 3-5 个问题>
229
+
230
+ ### 文档位置
231
+ 6aspecdoc/brown/<name>/artifacts/understanding.md
232
+
233
+ ### 下一步
234
+ - 直接回答上述待明确问题 → 我会更新本阶段文档(understanding.md)中的问题答案
235
+ - 运行 `/6aspec:brown:impact` → 进入影响面分析阶段
236
+ - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
237
+ ```
238
+
239
+ **完整级流程**:
171
240
  ```
172
- ## Phase 1 完成:需求理解与现状分析
241
+ ## Understand 完成:<name>
173
242
 
174
- **需求**: <name>
175
- **进度**: 1/7 阶段完成
243
+ **流程**: 完整级
244
+ **进度**: 2/8 阶段完成
176
245
 
177
246
  ### 分析结果
178
247
  - 相关实体类:<数量>
@@ -187,24 +256,26 @@ Phase 1: 需求理解与现状分析
187
256
  <列出最重要的 3-5 个问题>
188
257
 
189
258
  ### 文档位置
190
- 6aspecdoc/brown/<name>/artifacts/01-understanding.md
259
+ 6aspecdoc/brown/<name>/artifacts/understanding.md
191
260
 
192
261
  ### 下一步
193
- - 直接回答上述待明确问题 → 我会更新本阶段文档(01-understanding.md
194
- - 运行 `/6aspec:brown:specs` → 进入需求规格定义阶段
262
+ - 直接回答上述待明确问题 → 我会更新本阶段文档(understanding.md)中的问题答案
263
+ - 运行 `/6aspec:brown:impact` → 进入影响面分析阶段
195
264
  - 运行 `/6aspec:brown:continue` → 自动进入下一阶段
196
265
  ```
197
266
 
198
267
  **用户补充信息时的处理**
199
268
 
200
269
  当用户回答待明确问题或补充需求信息时(未使用阶段命令):
201
- 1. 将用户的回答整合到 `01-understanding.md` 中对应的问题项(将"[待确认]"替换为实际答案)
270
+ 1. 将用户的回答整合到 `understanding.md` 中对应的问题项(将"[待确认]"替换为实际答案)
202
271
  2. 如果回答引发新的发现或问题,同步更新文档的相关章节
203
272
  3. 展示变更摘要(更新了哪些问题的答案、新增了哪些发现)
204
273
  4. 再次提示:可以继续补充,或通过命令进入下一阶段
205
274
  5. **禁止**:不得自动进入下一阶段
206
275
 
207
276
  **防护措施**
277
+ - 只适用于标准级和完整级流程
278
+ - 必须先完成proposal阶段
208
279
  - 必须先读取需求描述再开始分析
209
280
  - 如果找不到相关代码,询问用户提供更多关键词
210
281
  - 如果分析不充分,不要强行生成文档,而是询问用户
@@ -0,0 +1,287 @@
1
+ # 棕地需求 - Update SOP
2
+
3
+ 非破坏性地更新指定阶段的文档,支持简单模式和智能模式。
4
+
5
+ **输入**:
6
+ - `/6aspec:brown:update <requirement-name> <phase>` - 简单更新(默认)
7
+ - `/6aspec:brown:update <requirement-name> <phase> --smart` - 智能更新
8
+ - `/6aspec:brown:update <requirement-name> --history` - 查看更新历史
9
+
10
+ **适用场景**:
11
+ - ✅ 补充遗漏的信息
12
+ - ✅ 修正错别字、格式问题
13
+ - ✅ 澄清模糊的描述
14
+ - ✅ 添加新的考虑因素(不推翻原有决策)
15
+ - ✅ 调整优先级、时间估算等非核心内容
16
+ - ✅ 修正小的技术细节
17
+
18
+ **不适用场景(建议使用 rollback)**:
19
+ - ❌ 推翻核心决策(如技术方案选型)
20
+ - ❌ 发现前面阶段的分析有重大错误
21
+ - ❌ 需求发生根本性变化
22
+ - ❌ 影响范围太大,难以准确识别
23
+ - ❌ 需要重新思考整个方案
24
+
25
+ **支持的阶段**:
26
+ - `understand` - 现状分析(相对稳定,不常需要update)
27
+ - `impact` - 影响面分析(相对稳定,不常需要update)
28
+ - `proposal` - 需求提案(常见update场景)
29
+ - `specs` - 需求规格(常见update场景)
30
+ - `design` - 技术设计(常见update场景)
31
+ - `tasks` - 任务拆解(常见update场景)
32
+
33
+ **限制**:
34
+ - 只能更新已完成的阶段(状态为 "done")
35
+ - 不能更新已归档的需求
36
+ - 不能更新不存在的阶段文档
37
+ - 在实施阶段(implement、verify、review)使用时需要特别小心
38
+
39
+ **步骤**
40
+
41
+ 1. **选择需求**
42
+
43
+ 如果提供了名称,使用它。否则:
44
+ - 从对话上下文推断
45
+ - 如果模糊,读取 `6aspecdoc/brown/` 目录,让用户选择
46
+
47
+ 2. **处理特殊选项**
48
+
49
+ **如果是 `--history` 选项**:
50
+ - 读取 `6aspecdoc/brown/<name>/artifacts/` 目录下的所有文档
51
+ - 提取每个文档末尾的"修改记录"部分
52
+ - 按时间顺序汇总显示所有更新历史
53
+ - 显示统计信息(总更新次数、最近更新时间等)
54
+ - 停止执行
55
+
56
+ 3. **检查当前状态**
57
+
58
+ 读取 `6aspecdoc/brown/<name>/status.json`:
59
+ - 确认需求未归档
60
+ - 确认目标阶段存在且状态为 "done"
61
+ - 确认对应的文档文件存在
62
+
63
+ 4. **读取目标文档**
64
+
65
+ 根据阶段名称读取对应文档:
66
+ - `understand` → `artifacts/understanding.md`
67
+ - `impact` → `artifacts/impact-analysis.md`
68
+ - `proposal` → `artifacts/proposal.md`
69
+ - `specs` → `artifacts/specs.md`
70
+ - `design` → `artifacts/design.md`
71
+ - `tasks` → `artifacts/tasks.md`
72
+
73
+ 5. **获取用户修改需求**
74
+
75
+ 询问用户要修改的内容:
76
+ ```
77
+ 问题:"请描述您要对 <phase> 阶段文档进行的修改:"
78
+
79
+ 提示:
80
+ - 请具体描述要修改、补充或调整的内容
81
+ - 如果是补充信息,请说明要补充什么
82
+ - 如果是修正错误,请说明错误的地方和正确的内容
83
+ - 如果是调整描述,请说明要如何调整
84
+ ```
85
+
86
+ 6. **执行更新(根据模式)**
87
+
88
+ **简单模式(默认)**:
89
+
90
+ a. 根据用户描述修改目标文档
91
+
92
+ b. 在文档末尾添加或更新修改记录:
93
+ ```markdown
94
+ ## 修改记录
95
+ - 2026-02-27 10:30: <修改描述>(update)
96
+ ```
97
+
98
+ c. 分析可能受影响的后续文档,生成检查清单
99
+
100
+ d. 更新 status.json 中的 lastUpdate
101
+
102
+ e. 显示检查清单,提示用户手动检查后续文档
103
+
104
+ **智能模式(--smart)**:
105
+
106
+ a. 分析修改内容对后续文档的影响范围
107
+
108
+ b. 读取所有可能受影响的后续文档
109
+
110
+ c. 生成详细的更新计划:
111
+ ```markdown
112
+ ## 更新计划
113
+
114
+ ### 修改内容
115
+ - <phase>.md: <修改描述>
116
+
117
+ ### 影响分析
118
+ - <后续文档1>: 需要更新"<具体部分>"
119
+ - 位置:第 X.Y 节
120
+ - 修改:<具体修改内容>
121
+ - <后续文档2>: 不需要修改
122
+
123
+ ### 风险评估
124
+ - <风险级别>:<风险描述>
125
+ - 建议:<执行建议>
126
+ ```
127
+
128
+ d. **等待用户确认**:
129
+ ```
130
+ 问题:"是否执行上述更新计划?"
131
+ 选项:
132
+ - 确认执行更新
133
+ - 取消
134
+ ```
135
+
136
+ e. 如果用户确认,批量执行所有更新:
137
+ - 修改目标文档
138
+ - 更新所有受影响的后续文档
139
+ - 在每个修改的文档末尾添加修改记录
140
+
141
+ f. 生成更新报告
142
+
143
+ 7. **更新状态记录**
144
+
145
+ 更新 `6aspecdoc/brown/<name>/status.json`:
146
+
147
+ a. 更新 `lastModified` 时间戳
148
+
149
+ b. 更新 `lastUpdate` 记录:
150
+ ```json
151
+ "lastUpdate": {
152
+ "phase": "<phase>",
153
+ "timestamp": "<时间戳>",
154
+ "description": "<修改描述>",
155
+ "affectedPhases": ["<阶段1>", "<阶段2>"],
156
+ "mode": "simple|smart"
157
+ }
158
+ ```
159
+
160
+ 8. **显示更新结果**
161
+
162
+ **输出**
163
+
164
+ **简单模式输出**:
165
+ ```
166
+ ## 更新完成:<name>
167
+
168
+ **更新阶段**: <phase>
169
+ **更新时间**: <时间戳>
170
+ **更新模式**: 简单模式
171
+
172
+ ### 修改内容
173
+ <修改描述>
174
+
175
+ ### 影响分析和检查清单
176
+
177
+ #### 可能受影响的文档
178
+ - [ ] <文档1>: <检查要点>
179
+ - [ ] <文档2>: <检查要点>
180
+
181
+ #### 建议
182
+ <具体检查建议>
183
+
184
+ ### 下一步
185
+ 请根据检查清单逐一检查可能受影响的文档,必要时手动调整。
186
+ ```
187
+
188
+ **智能模式输出**:
189
+ ```
190
+ ## 更新完成:<name>
191
+
192
+ **更新阶段**: <phase>
193
+ **更新时间**: <时间戳>
194
+ **更新模式**: 智能模式
195
+
196
+ ### 修改内容
197
+ <修改描述>
198
+
199
+ ### 联动更新
200
+ - <文档1>: <更新内容>
201
+ - <文档2>: <更新内容>
202
+
203
+ ### 修改摘要
204
+ - 共修改 N 个文件
205
+ - 新增 X 字
206
+ - 修改 Y 处
207
+
208
+ ### 建议
209
+ 请人工复查关键文档,确认修改内容符合预期。
210
+ ```
211
+
212
+ **历史查看输出**:
213
+ ```
214
+ ## 更新历史:<name>
215
+
216
+ ### 更新记录
217
+ 1. **2026-02-27 10:30** - proposal
218
+ - 描述:补充业务背景说明
219
+
220
+ 2. **2026-02-26 15:20** - specs
221
+ - 描述:调整性能指标要求
222
+
223
+ ### 统计
224
+ - 总更新次数:2
225
+ - 最近更新:2026-02-27 10:30
226
+ - 涉及阶段:proposal, specs
227
+ ```
228
+
229
+ **依赖关系和影响分析规则**
230
+
231
+ 根据文档依赖关系确定影响范围:
232
+
233
+ ```
234
+ understand (现状分析)
235
+
236
+ impact (影响面分析)
237
+
238
+ proposal (Why, What, Impact)
239
+
240
+ specs (功能需求、验收标准)
241
+
242
+ design (技术方案)
243
+
244
+ tasks (任务拆解)
245
+
246
+ implement (代码实现)
247
+ ```
248
+
249
+ **影响分析矩阵**:
250
+
251
+ | 修改位置 | 可能影响的文档 | 影响程度 | 检查重点 |
252
+ |---------|--------------|---------|---------|
253
+ | understand.现状 | impact, proposal | 中 | 影响面、需求背景 |
254
+ | impact.影响面 | proposal, design | 中 | 需求范围、非功能需求 |
255
+ | proposal.Why | specs, design | 中 | 优先级、技术选型 |
256
+ | proposal.What | specs, design, tasks | 高 | 功能需求、技术方案、任务拆解 |
257
+ | proposal.Impact | design | 低 | 非功能需求 |
258
+ | specs.功能需求 | design, tasks | 高 | 技术方案、任务拆解 |
259
+ | specs.验收标准 | tasks | 中 | 任务定义、测试用例 |
260
+ | design.技术方案 | tasks | 高 | 任务拆解、工作量估算 |
261
+ | design.技术选型 | tasks | 中 | 技术栈、工作量估算 |
262
+
263
+ **防护措施**
264
+ - 必须确认需求未归档
265
+ - 必须确认目标阶段已完成(状态为 "done")
266
+ - 必须确认对应文档文件存在
267
+ - 智能模式必须等待用户确认后才执行更新
268
+ - 在实施阶段使用时特别提示代码一致性问题
269
+ - 记录所有更新历史,支持追溯
270
+ - 生成的检查清单必须具体明确
271
+ - 智能模式的影响分析必须准确,避免误判
272
+
273
+ **错误处理**
274
+
275
+ - 如果需求不存在,提示创建新需求
276
+ - 如果需求已归档,提示先取消归档
277
+ - 如果目标阶段不存在或未完成,提示阶段状态
278
+ - 如果对应文档文件不存在,提示文件缺失
279
+ - 如果在实施阶段使用,特别提示:
280
+ ```
281
+ ⚠️ 警告:当前需求处于实施阶段,更新文档后请检查代码是否需要相应调整。
282
+ 如果修改影响代码实现,建议使用 rollback 或创建新需求。
283
+ ```
284
+ - 如果智能模式影响分析失败,降级为简单模式
285
+ - 如果用户取消智能模式的更新计划,停止执行
286
+ - 如果文档修改失败,回滚已修改的文件并报告错误
287
+ - 如果--history选项找不到修改记录,显示"暂无更新历史"