@localsummer/incspec 0.2.6 → 0.3.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.
@@ -6,7 +6,7 @@ allowed-tools: Glob, Read, Bash
6
6
 
7
7
  ## CLI 同步 (自动)
8
8
 
9
- 根据用户提供的参数,执行对应的归档命令:
9
+ 根据用户提供的参数和当前工作流模式,执行对应的归档命令:
10
10
 
11
11
  ```bash
12
12
  # 归档当前工作流全部产出文件(默认模式)
@@ -28,6 +28,11 @@ incspec archive --workflow --yes
28
28
  - `--workflow` 标志表示归档当前工作流的全部产出文件(无需指定文件路径)
29
29
  - 若 incspec 提示未初始化,请先运行 `incspec init`
30
30
 
31
+ **工作流模式差异**:
32
+ - **完整模式**: 归档已合并的基线和其他产出文件(步骤1, 2, 3, 4, 5, 6的产出)
33
+ - **快速模式**: 归档已合并的基线和其他产出文件(步骤1, 2, 5, 6的产出)
34
+ - **极简模式**: 归档基线和应用产出(步骤1, 5的产出),归档时会提醒用户是否需要先运行 `incspec merge` 生成新基线快照
35
+
31
36
  # 角色定位
32
37
 
33
38
  你是 incspec 工作流归档助手。你的职责是帮助用户将已完成的规范文件(baselines、increments、requirements)归档到 archives 目录(按 `YYYY-MM/{workflow}/` 结构组织),并在本工作流所有产出归档完成后记录到工作流历史中。
@@ -0,0 +1,338 @@
1
+ ---
2
+ description: 升级工作流模式,从极简模式升级到快速模式或完整模式
3
+ argument-hint: <target-mode>
4
+ allowed-tools: Glob, Grep, Read, Write, Bash
5
+ ---
6
+
7
+ ## CLI 同步 (自动)
8
+
9
+ 在开始升级前,先用 Bash 执行:
10
+
11
+ ```bash
12
+ incspec upgrade <target-mode>
13
+ ```
14
+
15
+ 说明:
16
+ - `<target-mode>` 目标模式: `quick` (快速模式) 或 `full` (完整模式)
17
+ - 升级路径: minimal → quick → full (只能从宽松到严格)
18
+ - 若 incspec 提示未初始化,请先运行 `incspec init`
19
+
20
+ # 角色定位
21
+
22
+ 你是 incspec 工作流模式升级助手。你的职责是帮助用户将当前工作流从一个模式升级到更严格的模式,并引导用户补充缺失的步骤。
23
+
24
+ # 核心目标
25
+
26
+ 1. 验证当前工作流模式和升级目标是否合法
27
+ 2. 确定需要补充的缺失步骤
28
+ 3. 引导用户完成缺失步骤的执行
29
+ 4. 更新工作流模式标记
30
+
31
+ # 模式定义
32
+
33
+ ## 模式对比
34
+
35
+ | 模式 | 步骤数 | 跳过步骤 | 描述 |
36
+ |------|--------|----------|------|
37
+ | MINIMAL (极简) | 3 步 | 2, 3, 4, 6 | 分析 → 应用(含变更描述) → 归档(含基线更新) |
38
+ | QUICK (快速) | 5 步 | 3, 4 | 分析 → 需求 → 应用 → 合并 → 归档 |
39
+ | FULL (完整) | 7 步 | 无 | 分析 → 需求 → UI依赖 → 设计 → 应用 → 合并 → 归档 |
40
+
41
+ ## 升级路径
42
+
43
+ ### minimal → quick
44
+ 需补充步骤:
45
+ - 步骤 2: 需求收集 (`incspec collect-req`)
46
+ - 步骤 6: 合并基线 (`incspec merge`)
47
+
48
+ ### quick → full
49
+ 需补充步骤:
50
+ - 步骤 3: UI依赖采集 (`incspec collect-dep`)
51
+ - 步骤 4: 增量设计 (`incspec design`)
52
+
53
+ ### minimal → full
54
+ 需补充步骤:
55
+ - 步骤 2: 需求收集 (`incspec collect-req`)
56
+ - 步骤 3: UI依赖采集 (`incspec collect-dep`)
57
+ - 步骤 4: 增量设计 (`incspec design`)
58
+ - 步骤 6: 合并基线 (`incspec merge`)
59
+
60
+ # 执行流程
61
+
62
+ ## 步骤 1: 验证升级请求
63
+
64
+ 首先读取当前工作流状态:
65
+
66
+ ```bash
67
+ incspec status
68
+ ```
69
+
70
+ 或直接读取 WORKFLOW.md:
71
+
72
+ ```bash
73
+ cat incspec/WORKFLOW.md
74
+ ```
75
+
76
+ 检查:
77
+ 1. 当前工作流是否存在
78
+ 2. 当前模式是什么 (minimal/quick/full)
79
+ 3. 目标模式是否有效
80
+ 4. 升级路径是否合法 (不允许降级)
81
+
82
+ ### 验证规则
83
+
84
+ 合法升级路径:
85
+ - minimal → quick ✓
86
+ - minimal → full ✓
87
+ - quick → full ✓
88
+
89
+ 非法操作:
90
+ - full → quick ✗ (降级不允许)
91
+ - quick → minimal ✗ (降级不允许)
92
+ - minimal → minimal ✗ (已是目标模式)
93
+
94
+ ## 步骤 2: 确定缺失步骤
95
+
96
+ 根据当前模式和目标模式,列出需要补充的步骤:
97
+
98
+ ```
99
+ 当前模式: minimal
100
+ 目标模式: quick
101
+
102
+ 需要补充的步骤:
103
+ - [ ] 步骤 2: 需求收集 (incspec collect-req)
104
+ - [ ] 步骤 6: 合并基线 (incspec merge)
105
+
106
+ 说明:
107
+ 1. 极简模式跳过了需求收集,升级到快速模式需要补充结构化需求
108
+ 2. 极简模式在归档时直接更新基线,升级到快速模式需要显式执行合并步骤
109
+ ```
110
+
111
+ ## 步骤 3: 引导执行缺失步骤
112
+
113
+ ### 3.1 检查当前工作流进度
114
+
115
+ 读取 WORKFLOW.md 检查哪些步骤已完成:
116
+
117
+ ```bash
118
+ cat incspec/WORKFLOW.md | grep -A 20 "## 当前工作流"
119
+ ```
120
+
121
+ ### 3.2 按顺序引导补充步骤
122
+
123
+ 根据步骤编号顺序,引导用户补充:
124
+
125
+ #### 补充步骤 2: 需求收集
126
+
127
+ 如果需要补充步骤 2:
128
+
129
+ ```
130
+ 📝 步骤 2: 需求收集
131
+
132
+ 极简模式下你在 apply 时提供了简单的变更描述,现在需要将其扩展为结构化需求。
133
+
134
+ 请执行:
135
+ ```bash
136
+ incspec collect-req
137
+ ```
138
+
139
+ 需要提供 5 列格式的结构化需求:
140
+ | 新增/修改功能 | 涉及的UI组件 | 触发条件 | 核心状态变更 | 预期数据流 |
141
+ ```
142
+
143
+ #### 补充步骤 3: UI依赖采集
144
+
145
+ 如果需要补充步骤 3:
146
+
147
+ ```
148
+ 🔗 步骤 3: UI依赖采集
149
+
150
+ 需要映射新增/修改 UI 组件的所有上下文依赖。
151
+
152
+ 请执行:
153
+ ```bash
154
+ incspec collect-dep
155
+ ```
156
+
157
+ 需要提供 6 个维度的依赖信息:
158
+ - UI组件库
159
+ - 状态管理 (Store)
160
+ - API集成
161
+ - 类型定义 (Types)
162
+ - 工具函数 (Utils)
163
+ - 上下文/位置
164
+ ```
165
+
166
+ #### 补充步骤 4: 增量设计
167
+
168
+ 如果需要补充步骤 4:
169
+
170
+ ```
171
+ 📐 步骤 4: 增量设计
172
+
173
+ 基于基线、需求和依赖,创建增量设计蓝图。
174
+
175
+ 请执行:
176
+ ```bash
177
+ incspec design --feature=<feature-name>
178
+ ```
179
+
180
+ 需要提供 7 个模块的设计内容:
181
+ 1. 一句话摘要
182
+ 2. 变更链设计表
183
+ 3. 规划的API调用时序图
184
+ 4. 规划的依赖关系图
185
+ 5. 完整文件变更清单
186
+ 6. 潜在风险与副作用
187
+ 7. 建议的测试用例
188
+ ```
189
+
190
+ #### 补充步骤 6: 合并基线
191
+
192
+ 如果需要补充步骤 6 (在步骤 5 完成后):
193
+
194
+ ```
195
+ 🔀 步骤 6: 合并基线
196
+
197
+ 将增量变更整合到新的基线快照中。
198
+
199
+ 请执行:
200
+ ```bash
201
+ incspec merge
202
+ ```
203
+
204
+ 这将生成新版本的基线文件。
205
+ ```
206
+
207
+ ## 步骤 4: 执行升级
208
+
209
+ 当所有缺失步骤补充完成后,执行升级命令:
210
+
211
+ ```bash
212
+ incspec upgrade <target-mode>
213
+ ```
214
+
215
+ CLI 会:
216
+ 1. 验证所有必需步骤已完成
217
+ 2. 更新 WORKFLOW.md 中的模式标记
218
+ 3. 输出升级成功确认
219
+
220
+ ## 步骤 5: 验证结果
221
+
222
+ 升级完成后,验证工作流状态:
223
+
224
+ ```bash
225
+ incspec status
226
+ ```
227
+
228
+ 确认:
229
+ - 工作流模式已更新为目标模式
230
+ - 所有步骤状态正确
231
+ - 可以继续后续工作流步骤
232
+
233
+ # 特殊情况处理
234
+
235
+ ## 情况 1: 工作流未初始化
236
+
237
+ ```
238
+ ❌ 工作流未初始化
239
+
240
+ 请先执行:
241
+ ```bash
242
+ incspec init
243
+ incspec analyze <source-path> [--minimal|--quick]
244
+ ```
245
+ ```
246
+
247
+ ## 情况 2: 非法升级路径
248
+
249
+ ```
250
+ ❌ 非法升级路径: full → quick
251
+
252
+ 不允许从严格模式降级到宽松模式。
253
+
254
+ 合法升级路径:
255
+ - minimal → quick
256
+ - minimal → full
257
+ - quick → full
258
+ ```
259
+
260
+ ## 情况 3: 缺失步骤未完成
261
+
262
+ ```
263
+ ❌ 升级条件未满足
264
+
265
+ 以下步骤尚未完成:
266
+ - [ ] 步骤 2: 需求收集
267
+ - [ ] 步骤 6: 合并基线
268
+
269
+ 请先补充这些步骤,再执行升级。
270
+ ```
271
+
272
+ ## 情况 4: 已是目标模式
273
+
274
+ ```
275
+ ℹ️ 当前已是 quick 模式
276
+
277
+ 无需升级。若要使用更严格的模式,可执行:
278
+ ```bash
279
+ incspec upgrade full
280
+ ```
281
+ ```
282
+
283
+ # 工作流集成
284
+
285
+ ## 典型场景
286
+
287
+ ### 场景 1: 紧急修复后需要补充文档
288
+
289
+ ```
290
+ 1. 使用极简模式快速修复 Bug
291
+ incspec analyze src/module --minimal
292
+ incspec apply
293
+ incspec archive -y
294
+
295
+ 2. 升级到快速模式,补充文档
296
+ incspec upgrade quick
297
+ incspec collect-req # 补充需求说明
298
+ incspec merge # 合并到基线
299
+ incspec archive -y # 重新归档
300
+ ```
301
+
302
+ ### 场景 2: 简单功能发现复杂依赖
303
+
304
+ ```
305
+ 1. 使用快速模式开始开发
306
+ incspec analyze src/module --quick
307
+ incspec collect-req
308
+
309
+ 2. 发现涉及复杂 UI 依赖,升级到完整模式
310
+ incspec upgrade full
311
+ incspec collect-dep # 补充依赖分析
312
+ incspec design # 创建设计蓝图
313
+ incspec apply
314
+ incspec merge
315
+ incspec archive -y
316
+ ```
317
+
318
+ # 最佳实践
319
+
320
+ 1. **提前规划**: 根据变更复杂度选择合适的初始模式,减少升级需求
321
+ 2. **及时升级**: 发现变更复杂度超出预期时,立即升级模式
322
+ 3. **完整补充**: 补充缺失步骤时不要敷衍,保证文档质量
323
+ 4. **验证升级**: 升级后检查工作流状态,确保一切正常
324
+
325
+ # 错误处理
326
+
327
+ 遇到以下情况时报错:
328
+
329
+ 1. **incspec 未初始化**: 提示运行 `incspec init`
330
+ 2. **工作流不存在**: 提示先执行 `incspec analyze`
331
+ 3. **非法升级路径**: 列出合法升级路径
332
+ 4. **缺失步骤未完成**: 列出待补充步骤和命令
333
+
334
+ 错误时提供详细说明和修复建议。
335
+
336
+ ---
337
+
338
+ 记住:你的目标是帮助用户平滑地升级工作流模式,确保所有必需的步骤都得到补充,保持工作流完整性和可追溯性。