kld-sdd 2.4.7
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.
- package/README.md +287 -0
- package/bin/kld-sdd-init.js +24 -0
- package/index.js +13 -0
- package/lib/init.js +906 -0
- package/package.json +36 -0
- package/skywalk-sdd/index.js +587 -0
- package/templates/openspec/design.md +290 -0
- package/templates/openspec/overview.md +143 -0
- package/templates/openspec/proposal.md +108 -0
- package/templates/openspec/spec.md +185 -0
- package/templates/openspec/tasks.md +287 -0
- package/templates/opsx-commands/apply.md +420 -0
- package/templates/opsx-commands/archive.md +85 -0
- package/templates/opsx-commands/check.md +344 -0
- package/templates/opsx-commands/design.md +560 -0
- package/templates/opsx-commands/explore.md +89 -0
- package/templates/opsx-commands/propose.md +399 -0
- package/templates/opsx-commands/spec.md +516 -0
- package/templates/opsx-commands/task.md +423 -0
- package/templates/opsx-commands/test.md +207 -0
- package/templates/skills/opsx-apply/SKILL.md +167 -0
- package/templates/skills/opsx-archive/SKILL.md +97 -0
- package/templates/skills/opsx-check/SKILL.md +147 -0
- package/templates/skills/opsx-design/SKILL.md +179 -0
- package/templates/skills/opsx-explore/SKILL.md +99 -0
- package/templates/skills/opsx-propose/SKILL.md +258 -0
- package/templates/skills/opsx-spec/SKILL.md +190 -0
- package/templates/skills/opsx-task/SKILL.md +211 -0
- package/templates/skills/opsx-test/SKILL.md +138 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: OPSX: Archive
|
|
3
|
+
description: "归档变更 - 将已完成或取消的变更归档,清理活动状态"
|
|
4
|
+
argument-hint: "[change-name]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
归档变更 - 将已完成实施或决定取消的变更移出活动状态,保留文档供后续参考。
|
|
8
|
+
|
|
9
|
+
> **📊 Telemetry(必做,不得跳过)**
|
|
10
|
+
> 在终端执行(必须成功):`node skywalk-sdd/log.js start --command=archive --project=<项目根目录绝对路径> --change=<变更名称> --agent=<Agent类型>`,记录返回的 event_id。
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
**输入**: `/opsx:archive` 后跟变更名称(kebab-case)
|
|
15
|
+
|
|
16
|
+
**执行步骤**
|
|
17
|
+
|
|
18
|
+
0. **【Telemetry 必做】记录阶段开始**
|
|
19
|
+
|
|
20
|
+
在终端执行(若命令失败必须中止本阶段,不得跳过):
|
|
21
|
+
```bash
|
|
22
|
+
node skywalk-sdd/log.js start --command=archive --project=<项目根目录绝对路径> --change=<变更名称> --agent=<Agent类型>
|
|
23
|
+
```
|
|
24
|
+
保存输出 JSON 中的 `event_id`,供阶段结束使用。
|
|
25
|
+
|
|
26
|
+
1. **【交互引导】确认变更名称**
|
|
27
|
+
|
|
28
|
+
若未提供,列出当前所有变更供用户选择:
|
|
29
|
+
```bash
|
|
30
|
+
openspec list
|
|
31
|
+
```
|
|
32
|
+
展示每个变更的状态(PENDING / IMPLEMENTING / ARCHIVED),引导用户选择。
|
|
33
|
+
|
|
34
|
+
2. **获取变更状态**
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
openspec status --change "<name>" --json
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
检查变更当前状态:
|
|
41
|
+
- `PENDING`:尚未申请实施(提醒用户是否跳过实施直接归档)
|
|
42
|
+
- `IMPLEMENTING`:正在实施中(提醒用户确认是否全部任务已完成)
|
|
43
|
+
- `ARCHIVED`:已归档(提示用户该变更已归档,无需操作)
|
|
44
|
+
|
|
45
|
+
**【状态异常处理】**:
|
|
46
|
+
- 若变更为 `PENDING`(从未实施):
|
|
47
|
+
> "变更 `<name>` 尚未申请实施,确定要直接归档?
|
|
48
|
+
> - A. 确认归档(变更已取消/搁置)
|
|
49
|
+
> - B. 先申请实施(运行 `/opsx:apply <name>`)"
|
|
50
|
+
- 若变更为 `IMPLEMENTING`(实施中):
|
|
51
|
+
> "变更 `<name>` 正在实施中,请确认所有 tasks.md 任务已完成:
|
|
52
|
+
> - A. 确认全部完成,归档变更
|
|
53
|
+
> - B. 取消(继续实施中状态)"
|
|
54
|
+
|
|
55
|
+
3. **【交互引导】确认归档原因**
|
|
56
|
+
|
|
57
|
+
> "请确认归档原因(将记录在归档日志中):
|
|
58
|
+
> - A. 变更已完成实施 ✅(所有任务已完成并验收)
|
|
59
|
+
> - B. 变更已取消 ❌(业务原因取消)
|
|
60
|
+
> - C. 变更已搁置 ⏸(暂缓实施,保留文档)
|
|
61
|
+
> - D. 其他(请输入原因)"
|
|
62
|
+
|
|
63
|
+
4. **执行归档**
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
openspec archive "<name>"
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
5. **输出结果**
|
|
70
|
+
|
|
71
|
+
> "✅ 变更 `<name>` 已归档!
|
|
72
|
+
> - 归档原因:[用户选择的原因]
|
|
73
|
+
> - 文档路径:openspec/changes/<name>/(已保留,可随时查阅)
|
|
74
|
+
> - 如需查看所有归档变更,运行 `/opsx:explore`"
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
**护栏规则**
|
|
79
|
+
|
|
80
|
+
- 归档操作执行前必须用户明确确认,不可自动执行
|
|
81
|
+
- 归档后文档仍保留在 `openspec/changes/<name>/` 目录,不会删除
|
|
82
|
+
- 若变更状态已是 `ARCHIVED`,提示用户直接跳过,无需重复操作
|
|
83
|
+
|
|
84
|
+
> **📊 Telemetry(必做,不得跳过)**
|
|
85
|
+
> 在终端执行(必须成功):`node skywalk-sdd/log.js end --event-id=<开头记录的event_id> --result=success/failure --summary="归档结果摘要" --project=<项目根目录绝对路径>`
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: OPSX: Check
|
|
3
|
+
description: "质量检查 - 验证文档完整性、一致性、算法正确性及可执行性"
|
|
4
|
+
argument-hint: "[change-name] [上下文文件...]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
执行 **质量门禁检查** - 验证 proposal → specs → design → tasks 文档链的完整性、一致性、算法正确性和可执行性。
|
|
8
|
+
|
|
9
|
+
> **📊 Telemetry(必做,不得跳过)**
|
|
10
|
+
> 在终端执行(必须成功):`node skywalk-sdd/log.js start --command=check --project=<项目根目录绝对路径> --change=<变更名称> --agent=<Agent类型>`,记录返回的 event_id。
|
|
11
|
+
|
|
12
|
+
> **⚠️ 阶段边界提示**
|
|
13
|
+
>
|
|
14
|
+
> 当前处于 **Check(检查)阶段**,此阶段:
|
|
15
|
+
> - ✅ **允许**:读取并检查文档、读取代码作为验证参考
|
|
16
|
+
> - ❌ **禁止**:创建/修改任何代码文件、执行代码生成、运行测试
|
|
17
|
+
>
|
|
18
|
+
> 即使检查发现代码相关问题,也只记录在检查报告中,**不自动修复代码**。
|
|
19
|
+
> 代码修复将在 `/opsx:apply` 阶段进行。
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
**执行步骤**
|
|
24
|
+
|
|
25
|
+
0. **【Telemetry 必做】记录阶段开始**
|
|
26
|
+
|
|
27
|
+
在终端执行(若命令失败必须中止本阶段,不得跳过):
|
|
28
|
+
```bash
|
|
29
|
+
node skywalk-sdd/log.js start --command=check --project=<项目根目录绝对路径> --change=<变更名称> --agent=<Agent类型>
|
|
30
|
+
```
|
|
31
|
+
保存输出 JSON 中的 `event_id`,供阶段结束使用。
|
|
32
|
+
|
|
33
|
+
1. **确认变更名称**
|
|
34
|
+
|
|
35
|
+
若未提供,列出当前所有变更供用户选择:
|
|
36
|
+
```bash
|
|
37
|
+
openspec list
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
若变更不存在,提示用户先运行 `/opsx:propose <name>` 创建变更。
|
|
41
|
+
|
|
42
|
+
2. **读取完整文档链**
|
|
43
|
+
|
|
44
|
+
按顺序读取以下文档(如存在):
|
|
45
|
+
- `proposal.md`(或 propose.md,兼容旧格式)(业务意图)
|
|
46
|
+
- `specs/<capability>/spec.md`(技术契约)
|
|
47
|
+
- `design.md`(实现方案)
|
|
48
|
+
- `tasks.md`(或 task.md,兼容旧格式)(任务拆解)
|
|
49
|
+
|
|
50
|
+
3. **【上下文加载】识别并读取用户提供的文件**
|
|
51
|
+
|
|
52
|
+
**自动识别上下文文件**:
|
|
53
|
+
若用户在命令中指定了文件路径(如 `/opsx:check atp-calc ./需求.md`),
|
|
54
|
+
或在对话中附加/引用了文件,**必须自动读取这些文件**。
|
|
55
|
+
|
|
56
|
+
**上下文类型与检查维度**:
|
|
57
|
+
| 上下文类型 | 检查用途 | 对应检查维度 |
|
|
58
|
+
|------------|---------|----------|
|
|
59
|
+
| 需求文档 (.md) | 需求追溯检查基线 | 4.6 需求追溯检查 |
|
|
60
|
+
| 算法说明 (.md) | 伪代码正确性参考 | 4.4 算法正确性检查 |
|
|
61
|
+
| 参考实现 (.java/.ts) | 一致性检查参考 | 4.2 一致性检查 |
|
|
62
|
+
|
|
63
|
+
**示例**:
|
|
64
|
+
```
|
|
65
|
+
/opsx:check atp-calc ./ATP引擎算法逻辑.md
|
|
66
|
+
/opsx:check atp-calc ./需求文档.md ./erp-algorithm-atp/
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
4. **【交互引导】上下文补充提示**
|
|
70
|
+
|
|
71
|
+
**若用户未提供任何上下文文件**,AI 分析文档内容后,**主动提示用户补充**:
|
|
72
|
+
|
|
73
|
+
**【关键】具体化建议**:
|
|
74
|
+
AI 必须**引用文档中的具体内容**给出建议:
|
|
75
|
+
```
|
|
76
|
+
❌ 错误:"建议提供需求文档"
|
|
77
|
+
✅ 正确:"design.md 包含《正差反差计算》伪代码,建议提供该算法的需求文档进行一致性检查"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**主动提示模板**:
|
|
81
|
+
> "📌 **建议提供上下文信息以进行更深度的检查**:
|
|
82
|
+
>
|
|
83
|
+
> 文档中包含:
|
|
84
|
+
> - **《[XX算法]》** - 建议提供算法说明文档进行算法正确性检查
|
|
85
|
+
> - **原始需求** - 建议提供需求文档进行需求追溯检查
|
|
86
|
+
>
|
|
87
|
+
> 您可以:
|
|
88
|
+
> - **在命令后追加文件路径**:`/opsx:check atp-calc ./需求.md`
|
|
89
|
+
> - **在对话中上传文件**或粘贴内容
|
|
90
|
+
>
|
|
91
|
+
> 或者选择:
|
|
92
|
+
> - A. 仅检查内部一致性(跳过需要外部上下文的检查项)
|
|
93
|
+
> - B. 已提供全部信息"
|
|
94
|
+
|
|
95
|
+
5. **【交互引导】询问用户检查重点**
|
|
96
|
+
|
|
97
|
+
使用 **AskUserQuestion** 询问用户:
|
|
98
|
+
> "请选择本次检查的重点(可多选):
|
|
99
|
+
> - [ ] 完整性检查:文档链是否完整
|
|
100
|
+
> - [ ] 一致性检查:文档间是否存在矛盾
|
|
101
|
+
> - [ ] 可执行性检查:task.md 任务是否可落地
|
|
102
|
+
> - [ ] **算法正确性检查**:design.md 伪代码是否自洽
|
|
103
|
+
> - [ ] **场景完整性检查**:spec.md Scenario 是否完整
|
|
104
|
+
> - [ ] **需求追溯检查**:需求→代码链路是否完整(需要上下文)
|
|
105
|
+
> - [ ] 全量检查:以上全部"
|
|
106
|
+
|
|
107
|
+
根据用户选择执行对应检查项。
|
|
108
|
+
|
|
109
|
+
6. **执行质量检查**
|
|
110
|
+
|
|
111
|
+
### 4.1 完整性检查
|
|
112
|
+
|
|
113
|
+
检查项清单:
|
|
114
|
+
- [ ] proposal.md 存在且非空
|
|
115
|
+
- [ ] specs 目录存在且非空
|
|
116
|
+
- [ ] design.md 存在且非空
|
|
117
|
+
- [ ] tasks.md 存在且非空
|
|
118
|
+
|
|
119
|
+
**缺失文档处理**:
|
|
120
|
+
- 若发现缺失文档,列出缺失清单
|
|
121
|
+
- 询问用户:"是否立即创建缺失文档?"
|
|
122
|
+
- 用户确认后,引导执行对应命令创建
|
|
123
|
+
|
|
124
|
+
### 4.2 一致性检查
|
|
125
|
+
|
|
126
|
+
**文档间引用一致性**:
|
|
127
|
+
- [ ] proposal.md 的业务目标在 specs 中有对应技术实现
|
|
128
|
+
- [ ] specs 的需求定义在 design.md 中有对应模块设计
|
|
129
|
+
- [ ] design.md 的模块在 tasks.md 中有对应任务
|
|
130
|
+
- [ ] tasks.md 的任务数量与 design.md 模块数量匹配
|
|
131
|
+
|
|
132
|
+
**数据一致性**:
|
|
133
|
+
- [ ] 接口参数在 specs/design/tasks 中定义一致
|
|
134
|
+
- [ ] 错误码定义在各文档中一致
|
|
135
|
+
- [ ] 模块名称在各文档中一致
|
|
136
|
+
|
|
137
|
+
**【发现不一致时的澄清机制】**:
|
|
138
|
+
- 列出所有不一致项
|
|
139
|
+
- 对每个不一致项,分析影响范围
|
|
140
|
+
- 询问用户:"请选择修复策略:
|
|
141
|
+
- A. 以 proposal.md 为准,同步修改下游文档
|
|
142
|
+
> - B. 以 specs 为准,同步修改上下游文档
|
|
143
|
+
- C. 手动指定正确版本"
|
|
144
|
+
- 根据用户选择,生成修复建议或引导用户澄清
|
|
145
|
+
|
|
146
|
+
### 4.3 可执行性检查
|
|
147
|
+
|
|
148
|
+
**任务可执行性**:
|
|
149
|
+
- [ ] 每个任务有明确的输入/输出定义
|
|
150
|
+
- [ ] 每个任务有具体的实现步骤
|
|
151
|
+
- [ ] 每个任务有明确的验收标准
|
|
152
|
+
- [ ] 任务依赖关系无循环依赖
|
|
153
|
+
- [ ] 任务颗粒度符合"5分钟可完成"标准
|
|
154
|
+
|
|
155
|
+
**【不可执行任务的处理】**:
|
|
156
|
+
- 标记不可执行任务
|
|
157
|
+
- 分析原因:颗粒度过大?依赖不明确?验收标准模糊?
|
|
158
|
+
- 询问用户:"是否自动拆分/优化这些任务?"
|
|
159
|
+
- 用户确认后,生成优化建议
|
|
160
|
+
|
|
161
|
+
### 4.4 算法正确性检查(新增)
|
|
162
|
+
|
|
163
|
+
**❗ 此检查针对 design.md 中的伪代码**
|
|
164
|
+
|
|
165
|
+
#### 4.4.1 伪代码自洽性检查
|
|
166
|
+
|
|
167
|
+
| 检查项 | 要求 | 未通过处理 |
|
|
168
|
+
|---------|------|------------|
|
|
169
|
+
| 变量声明 | 伪代码中的变量在使用前已赋值 | ❌ 错误 |
|
|
170
|
+
| 循环边界 | for 循环的起始/结束条件明确 | ❌ 错误 |
|
|
171
|
+
| 分支覆盖 | switch 有 default,if 有 else | ⚠️ 警告 |
|
|
172
|
+
| 数据来源 | 关键变量有来源说明 | ⚠️ 警告 |
|
|
173
|
+
|
|
174
|
+
#### 4.4.2 算法一致性检查(需要 --context 算法文档)
|
|
175
|
+
|
|
176
|
+
若提供了算法参考文档,检查:
|
|
177
|
+
- [ ] design.md 伪代码与参考算法逻辑一致
|
|
178
|
+
- [ ] 核心计算逻辑(循环、分支、累加顺序)一致
|
|
179
|
+
- [ ] 边界条件处理一致
|
|
180
|
+
|
|
181
|
+
**【模糊伪代码检测】**:
|
|
182
|
+
- "累加计算数量(需求取负数)" → ❌ 模糊,需要明确 calcQuantity 本身是否已为负数
|
|
183
|
+
- "if (direction == -1) subtract" → ⚠️ 警告,需要说明 calcQuantity 的符号
|
|
184
|
+
|
|
185
|
+
### 4.5 场景完整性检查(新增)
|
|
186
|
+
|
|
187
|
+
**❗ 此检查针对 spec.md 中的 Scenario**
|
|
188
|
+
|
|
189
|
+
#### 4.5.1 需求项-场景配比检查
|
|
190
|
+
|
|
191
|
+
| 检查项 | 要求 | 未通过处理 |
|
|
192
|
+
|---------|------|------------|
|
|
193
|
+
| 场景数量 | 每个需求项至少 1 个场景 | ❌ 错误 |
|
|
194
|
+
| 场景结构 | 每个场景必须有 当/预期 | ❌ 错误 |
|
|
195
|
+
| 预期结果 | 每个场景必须有可验证的预期 | ⚠️ 警告 |
|
|
196
|
+
| 边界条件 | 关键场景应包含边界条件 | ⚠️ 警告 |
|
|
197
|
+
|
|
198
|
+
#### 4.5.2 场景缺失检测
|
|
199
|
+
|
|
200
|
+
若发现以下情况,标记为警告:
|
|
201
|
+
- 场景只有需求项声明但无详细描述
|
|
202
|
+
- 场景描述使用 “等”、“之类” 等模糊词汇
|
|
203
|
+
- 场景的预期结果无法量化验证
|
|
204
|
+
|
|
205
|
+
### 4.6 需求追溯检查(新增)
|
|
206
|
+
|
|
207
|
+
**❗ 此检查需要 --context 提供需求文档基线**
|
|
208
|
+
|
|
209
|
+
若未提供 --context,跳过此检查并警告:
|
|
210
|
+
> "⚠️ 需求追溯检查已跳过(未提供 --context 需求文档)"
|
|
211
|
+
|
|
212
|
+
#### 4.6.1 需求追溯矩阵检查
|
|
213
|
+
|
|
214
|
+
从需求文档中提取需求项,检查:
|
|
215
|
+
- [ ] 每个需求项在 spec.md 中有对应需求项
|
|
216
|
+
- [ ] 每个 spec.md 需求项在 design.md 中有对应实现
|
|
217
|
+
- [ ] 每个 design.md 实现在 tasks.md 中有对应任务
|
|
218
|
+
|
|
219
|
+
**【追溯矩阵格式】**:
|
|
220
|
+
```markdown
|
|
221
|
+
| 需求ID | 需求描述 | 规格需求项 | 设计算法 | 测试场景 | 追溯状态 |
|
|
222
|
+
|--------|---------|-----------------|-------------|---------|----------|
|
|
223
|
+
| REQ-001 | 离散 ATP 计算 | RLT-处理 | 5.2 | TASK-CA-05-TEST | ✅ |
|
|
224
|
+
| REQ-002 | 存储地点 ATP | 存储地点级别 ATP | 5.5 | 未覆盖 | ❌ 缺失 |
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
#### 4.6.2 缺失需求检测
|
|
228
|
+
|
|
229
|
+
若发现需求文档中存在但未在 SDD 文档链中覆盖的需求:
|
|
230
|
+
> "⚠️ **需求追溯检查发现以下缺失**:
|
|
231
|
+
> - '存储地点级别 ATP' 在需求文档中存在,但测试场景未覆盖
|
|
232
|
+
> - '工厂日历计算' 在需求文档中存在,但 spec.md 完全缺失
|
|
233
|
+
>
|
|
234
|
+
> 请选择:
|
|
235
|
+
> - A. 返回 spec 阶段补充缺失场景
|
|
236
|
+
> - B. 标记为 '已知风险' 继续
|
|
237
|
+
> - C. 确认缺失需求不在本次范围内"
|
|
238
|
+
|
|
239
|
+
7. **【交互引导】补充上下文信息**
|
|
240
|
+
|
|
241
|
+
若检查过程中发现以下情况,主动询问用户:
|
|
242
|
+
|
|
243
|
+
**信息缺失时**:
|
|
244
|
+
> "propose.md 中 [具体章节] 缺少 [具体信息],请补充:"
|
|
245
|
+
|
|
246
|
+
**逻辑矛盾时**:
|
|
247
|
+
> "检查中发现 [文档A] 和 [文档B] 在 [具体点] 存在矛盾:
|
|
248
|
+
> - 文档A描述:...
|
|
249
|
+
> - 文档B描述:...
|
|
250
|
+
> 请澄清正确意图:"
|
|
251
|
+
|
|
252
|
+
**模糊描述时**:
|
|
253
|
+
> "检查中发现 [具体章节] 存在模糊描述 '[原文]',请明确:"
|
|
254
|
+
|
|
255
|
+
8. **生成检查报告**
|
|
256
|
+
|
|
257
|
+
生成 `check-report.md` 到变更目录:
|
|
258
|
+
|
|
259
|
+
```markdown
|
|
260
|
+
# 质量检查报告
|
|
261
|
+
|
|
262
|
+
## 检查概览
|
|
263
|
+
- 变更名称:[name]
|
|
264
|
+
- 检查时间:[timestamp]
|
|
265
|
+
- 检查范围:[完整性/一致性/可执行性/全量]
|
|
266
|
+
- 总体状态:[通过/需修复/严重问题]
|
|
267
|
+
|
|
268
|
+
## 文档完整性
|
|
269
|
+
| 文档 | 状态 | 说明 |
|
|
270
|
+
|-----|------|-----|
|
|
271
|
+
| proposal.md | ✅/❌ | 存在/缺失 |
|
|
272
|
+
| specs/ | ✅/❌ | 存在/缺失 |
|
|
273
|
+
| design.md | ✅/❌ | 存在/缺失 |
|
|
274
|
+
| tasks.md | ✅/❌ | 存在/缺失 |
|
|
275
|
+
|
|
276
|
+
## 一致性检查结果
|
|
277
|
+
### 通过项
|
|
278
|
+
- [x] [检查项描述]
|
|
279
|
+
|
|
280
|
+
### 问题项
|
|
281
|
+
- [ ] [问题描述]
|
|
282
|
+
- 影响:[影响范围]
|
|
283
|
+
- 建议:[修复建议]
|
|
284
|
+
- 优先级:[高/中/低]
|
|
285
|
+
|
|
286
|
+
## 可执行性评估
|
|
287
|
+
### 任务统计
|
|
288
|
+
- 总任务数:X
|
|
289
|
+
- 可执行任务:X
|
|
290
|
+
- 需优化任务:X
|
|
291
|
+
|
|
292
|
+
### 问题任务清单
|
|
293
|
+
| 任务 | 问题 | 优化建议 |
|
|
294
|
+
|-----|------|---------|
|
|
295
|
+
| | | |
|
|
296
|
+
|
|
297
|
+
## 修复建议
|
|
298
|
+
1. [优先级:高] [具体建议]
|
|
299
|
+
2. [优先级:中] [具体建议]
|
|
300
|
+
|
|
301
|
+
## 下一步行动
|
|
302
|
+
- [ ] 修复标记为"高优先级"的问题
|
|
303
|
+
- [ ] 运行 `/opsx:check <name>` 重新验证
|
|
304
|
+
- [ ] 通过后运行 `/opsx:apply` 开始实现
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
9. **【AI 分析澄清】智能问题诊断**
|
|
308
|
+
|
|
309
|
+
若发现严重问题,AI 应主动分析并引导澄清:
|
|
310
|
+
|
|
311
|
+
**严重问题类型**:
|
|
312
|
+
- 文档链断裂(缺少关键中间文档)
|
|
313
|
+
- 核心逻辑矛盾(业务目标与技术实现冲突)
|
|
314
|
+
- 无法落地的任务(缺少必要依赖或资源)
|
|
315
|
+
|
|
316
|
+
**澄清流程**:
|
|
317
|
+
1. AI 分析问题根因
|
|
318
|
+
2. 提供 2-3 个可能的解决方案
|
|
319
|
+
3. 询问用户:"请确认采用哪种方案,或提供更多信息:"
|
|
320
|
+
4. 根据用户反馈,更新文档或调整检查标准
|
|
321
|
+
|
|
322
|
+
10. **显示检查结果**
|
|
323
|
+
|
|
324
|
+
完成后显示:
|
|
325
|
+
- 检查报告路径
|
|
326
|
+
- 问题统计(通过 X 项,警告 Y 项,错误 Z 项)
|
|
327
|
+
- 关键问题摘要(如有)
|
|
328
|
+
- 下一步建议:
|
|
329
|
+
- 检查通过:"✅ 质量检查通过!可以运行 `/opsx:apply` 开始实现"
|
|
330
|
+
- 有问题:"⚠️ 发现 X 个问题,请查看检查报告并修复后重新检查"
|
|
331
|
+
|
|
332
|
+
---
|
|
333
|
+
|
|
334
|
+
**护栏规则**
|
|
335
|
+
|
|
336
|
+
- 检查是**辅助手段**,最终决策权在用户
|
|
337
|
+
- 发现问题时**必须提供具体位置和修复建议**,不要只报告"有问题"
|
|
338
|
+
- **区分严重程度**:错误(必须修复)vs 警告(建议优化)vs 建议(可选改进)
|
|
339
|
+
- 用户选择"忽略"某问题时,记录原因到检查报告
|
|
340
|
+
- 检查报告本身也是文档,需保持清晰、可追踪
|
|
341
|
+
- **⛔ 阶段边界**:本阶段仅执行检查,禁止自动修复代码。若发现代码问题,记录到检查报告并提示用户:「代码修复请使用 `/opsx:apply` 执行。」
|
|
342
|
+
|
|
343
|
+
> **📊 Telemetry(必做,不得跳过)**
|
|
344
|
+
> 在终端执行(必须成功):`node skywalk-sdd/log.js end --event-id=<开头记录的event_id> --result=success/failure --summary="检查结果摘要" --project=<项目根目录绝对路径>`
|