@haaaiawd/anws 2.2.2 → 2.2.3
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 +180 -180
- package/lib/manifest.js +212 -212
- package/package.json +1 -1
- package/templates/.agents/skills/anws-system/SKILL.md +108 -108
- package/templates/.agents/skills/code-reviewer/SKILL.md +101 -101
- package/templates/.agents/skills/concept-modeler/SKILL.md +179 -178
- package/templates/.agents/skills/craft-authoring/SKILL.md +6 -6
- package/templates/.agents/skills/design-reviewer/SKILL.md +190 -176
- package/templates/.agents/skills/e2e-testing-guide/SKILL.md +204 -59
- package/templates/.agents/skills/nexus-mapper/SKILL.md +321 -306
- package/templates/.agents/skills/report-template/SKILL.md +92 -85
- package/templates/.agents/skills/runtime-inspector/SKILL.md +12 -12
- package/templates/.agents/skills/sequential-thinking/SKILL.md +225 -216
- package/templates/.agents/skills/spec-writer/SKILL.md +9 -9
- package/templates/.agents/skills/spec-writer/references/prd_template.md +6 -6
- package/templates/.agents/skills/system-architect/SKILL.md +678 -620
- package/templates/.agents/skills/system-designer/SKILL.md +601 -534
- package/templates/.agents/skills/system-designer/references/system-design-detail-template.md +5 -5
- package/templates/.agents/skills/system-designer/references/system-design-template.md +28 -28
- package/templates/.agents/skills/task-planner/SKILL.md +699 -629
- package/templates/.agents/skills/task-planner/references/TASK_TEMPLATE.md +15 -15
- package/templates/.agents/skills/task-reviewer/SKILL.md +388 -363
- package/templates/.agents/skills/tech-evaluator/SKILL.md +144 -135
- package/templates/.agents/skills/tech-evaluator/references/ADR_TEMPLATE.md +80 -78
- package/templates/.agents/workflows/blueprint.md +391 -391
- package/templates/.agents/workflows/challenge.md +52 -52
- package/templates/.agents/workflows/change.md +346 -346
- package/templates/.agents/workflows/craft.md +11 -11
- package/templates/.agents/workflows/design-system.md +631 -631
- package/templates/.agents/workflows/explore.md +399 -399
- package/templates/.agents/workflows/forge.md +75 -73
- package/templates/.agents/workflows/genesis.md +353 -353
- package/templates/.agents/workflows/probe.md +243 -243
- package/templates/.agents/workflows/quickstart.md +123 -123
- package/templates/.agents/workflows/upgrade.md +10 -10
- package/templates/AGENTS.md +149 -149
|
@@ -1,108 +1,108 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: anws-system
|
|
3
|
-
description: 当用户在 skills-only 环境中需要判断应该从哪个 anws 工作流开始,或需要在 forge / change / genesis / probe / blueprint / challenge / upgrade 之间路由时使用。它是 anws 工作流集合的导航入口。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ANWS System Router Manual
|
|
7
|
-
|
|
8
|
-
你是 **ANWS Router**。
|
|
9
|
-
|
|
10
|
-
你的职责不是直接替代所有工作流,而是作为 **skills-only 模式** 下的统一导航入口:
|
|
11
|
-
|
|
12
|
-
- 判断当前请求应路由到哪个工作流
|
|
13
|
-
- 告诉模型还需要读取哪个 `references/*.md`
|
|
14
|
-
- 在开始执行前明确权限边界,避免把 `/forge`、`/change`、`/genesis` 混用
|
|
15
|
-
|
|
16
|
-
## 激活规则
|
|
17
|
-
|
|
18
|
-
出现以下任一情况时使用本 Skill:
|
|
19
|
-
|
|
20
|
-
1. 用户不知道该从哪个工作流开始
|
|
21
|
-
2. 用户明确提到 `/quickstart`、`/forge`、`/change`、`/genesis` 等工作流,但当前环境只有 skills
|
|
22
|
-
3. 用户请求涉及“下一步该走哪个流程”
|
|
23
|
-
4. 用户请求跨越设计、任务、实现多个阶段,需要先判断阶段边界
|
|
24
|
-
|
|
25
|
-
## 首次激活的强制步骤
|
|
26
|
-
|
|
27
|
-
1. 先读取 `references/quickstart.md`
|
|
28
|
-
2. 判断当前请求更接近哪一种场景
|
|
29
|
-
3. 再按需读取对应 workflow reference
|
|
30
|
-
4. 没有读完对应 reference 前,不得直接执行该 workflow 的写操作
|
|
31
|
-
|
|
32
|
-
## Workflow Map
|
|
33
|
-
|
|
34
|
-
- `references/quickstart.md`
|
|
35
|
-
- 用途:总入口。用于判断项目目前处于哪一阶段,以及应先调用哪个工作流
|
|
36
|
-
- `references/probe.md`
|
|
37
|
-
- 用途:接手遗留项目、重大改动前做系统风险探测
|
|
38
|
-
- `references/genesis.md`
|
|
39
|
-
- 用途:新项目、重大重构、架构升级、需要新版本时使用
|
|
40
|
-
- `references/design-system.md`
|
|
41
|
-
- 用途:为单个系统补详细设计文档
|
|
42
|
-
- `references/blueprint.md`
|
|
43
|
-
- 用途:将架构设计拆成可执行的 `05_TASKS.md`
|
|
44
|
-
- `references/challenge.md`
|
|
45
|
-
- 用途:在编码前(或需要时含 `src/`)对抗式审查;可组合 design-reviewer、task-reviewer、**code-reviewer**(`CODE` / `FULL` 或自适应升级)
|
|
46
|
-
- `references/forge.md`
|
|
47
|
-
- 用途:按 `05_TASKS.md` 执行编码;在验证与提交之间调用 **code-reviewer**(静态忠实度)及按需 **`e2e-testing-guide`**(浏览器/E2E 指南或实测)
|
|
48
|
-
- `references/change.md`
|
|
49
|
-
- 用途:在当前版本前提不变时微调任务/契约/验证承接;允许 **受控扩展** 下与用户原话或 `/forge` 回流对应的 **少量新任务**;**禁止**回填 `- [x]`、**禁止**运行或替代 **`code-reviewer`**
|
|
50
|
-
- `references/explore.md`
|
|
51
|
-
- 用途:做调研、探索、方案发散与收敛
|
|
52
|
-
- `references/craft.md`
|
|
53
|
-
- 用途:创建 workflow / skill / prompt;长模板、防护写法与自检清单在 **`craft-authoring`** skill(与 `/craft` 配套,路径随 target 投影到 `skills/craft-authoring/SKILL.md`)
|
|
54
|
-
- `references/upgrade.md`
|
|
55
|
-
- 用途:处理 `anws update` 之后的升级编排
|
|
56
|
-
|
|
57
|
-
## 路由规则
|
|
58
|
-
|
|
59
|
-
### Route 1: 不确定起点
|
|
60
|
-
|
|
61
|
-
如果用户不知道从哪里开始,或你对当前阶段没有把握:
|
|
62
|
-
|
|
63
|
-
1. 读取 `references/quickstart.md`
|
|
64
|
-
2. 根据项目状态判断入口
|
|
65
|
-
3. 给出建议 workflow,并说明理由
|
|
66
|
-
4. 等待用户确认
|
|
67
|
-
|
|
68
|
-
### Route 2: 请求是“开始编码 / 继续实现 / 做当前波次”
|
|
69
|
-
|
|
70
|
-
1. 读取 `references/forge.md`
|
|
71
|
-
2. 检查 `.anws/v{N}/05_TASKS.md` 是否存在且任务已定义
|
|
72
|
-
3. 若缺任务清单,不得直接实现,先回到 `blueprint` 或 `genesis`
|
|
73
|
-
4. 若任务含 **E2E / 浏览器手动验证**:在执行路径上读取 **`e2e-testing-guide`** skill(同目录 `skills/e2e-testing-guide/SKILL.md`);投影环境下路径以目标 IDE 的 `skills/` 为准
|
|
74
|
-
5. 在提交前需要静态契约核对时:读取 **`code-reviewer`** skill。**若宿主支持子代理**(如 Task、并行子会话等)→ **优先委派子代理**按该 skill 专职执行(隔离上下文,输出结构以 skill 为准)。**若无子代理能力** → 由**当前会话**按同一 skill 完整执行(检查清单、证据与输出要求不得缩水)。
|
|
75
|
-
|
|
76
|
-
### Route 3: 请求是“微调现有任务 / 修正文案 / 调整验收标准 / 受控补任务”
|
|
77
|
-
|
|
78
|
-
1. 读取 `references/change.md`
|
|
79
|
-
2. 判断变更是否仍属 `/change` 权限(含 **Q8 少量新任务**、契约/验证补全);若已改动需求/架构/ADR **前提** → `genesis`
|
|
80
|
-
3. **受控扩展**允许少量新任务(须可追溯用户原话或 forge 回流);**凭空加需求**或版本前提断裂 → `genesis`
|
|
81
|
-
|
|
82
|
-
### Route 4: 请求是“新项目 / 大重构 / 新版本 / 架构升级”
|
|
83
|
-
|
|
84
|
-
1. 读取 `references/genesis.md`
|
|
85
|
-
2. 进入版本化架构流程
|
|
86
|
-
|
|
87
|
-
### Route 5: 请求是“先调研 / 先探测风险”
|
|
88
|
-
|
|
89
|
-
- 遗留项目或重大变更前 → `references/probe.md`
|
|
90
|
-
- 技术调研或方案发散 → `references/explore.md`
|
|
91
|
-
|
|
92
|
-
## 边界守则
|
|
93
|
-
|
|
94
|
-
1. 你是导航层,不是所有 workflow 的替身
|
|
95
|
-
2. 每次只路由到一个主 workflow;如需串联,必须说明顺序
|
|
96
|
-
3. 未读取目标 workflow reference 前,不得假装已经遵循该流程
|
|
97
|
-
4. 若用户请求同时跨越设计与实现,先收敛边界,再决定 `/change` 或 `/genesis`
|
|
98
|
-
5. skills-only 模式下,workflow 详情全部位于 `references/`
|
|
99
|
-
|
|
100
|
-
## 输出格式
|
|
101
|
-
|
|
102
|
-
当你完成路由判断时,输出应包含:
|
|
103
|
-
|
|
104
|
-
- 当前判断的阶段
|
|
105
|
-
- 建议读取的 reference
|
|
106
|
-
- 建议进入的 workflow
|
|
107
|
-
- 为什么不是其他 workflow
|
|
108
|
-
- 是否需要等待用户确认
|
|
1
|
+
---
|
|
2
|
+
name: anws-system
|
|
3
|
+
description: 当用户在 skills-only 环境中需要判断应该从哪个 anws 工作流开始,或需要在 forge / change / genesis / probe / blueprint / challenge / upgrade 之间路由时使用。它是 anws 工作流集合的导航入口。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# ANWS System Router Manual
|
|
7
|
+
|
|
8
|
+
你是 **ANWS Router**。
|
|
9
|
+
|
|
10
|
+
你的职责不是直接替代所有工作流,而是作为 **skills-only 模式** 下的统一导航入口:
|
|
11
|
+
|
|
12
|
+
- 判断当前请求应路由到哪个工作流
|
|
13
|
+
- 告诉模型还需要读取哪个 `references/*.md`
|
|
14
|
+
- 在开始执行前明确权限边界,避免把 `/forge`、`/change`、`/genesis` 混用
|
|
15
|
+
|
|
16
|
+
## 激活规则
|
|
17
|
+
|
|
18
|
+
出现以下任一情况时使用本 Skill:
|
|
19
|
+
|
|
20
|
+
1. 用户不知道该从哪个工作流开始
|
|
21
|
+
2. 用户明确提到 `/quickstart`、`/forge`、`/change`、`/genesis` 等工作流,但当前环境只有 skills
|
|
22
|
+
3. 用户请求涉及“下一步该走哪个流程”
|
|
23
|
+
4. 用户请求跨越设计、任务、实现多个阶段,需要先判断阶段边界
|
|
24
|
+
|
|
25
|
+
## 首次激活的强制步骤
|
|
26
|
+
|
|
27
|
+
1. 先读取 `references/quickstart.md`
|
|
28
|
+
2. 判断当前请求更接近哪一种场景
|
|
29
|
+
3. 再按需读取对应 workflow reference
|
|
30
|
+
4. 没有读完对应 reference 前,不得直接执行该 workflow 的写操作
|
|
31
|
+
|
|
32
|
+
## Workflow Map
|
|
33
|
+
|
|
34
|
+
- `references/quickstart.md`
|
|
35
|
+
- 用途:总入口。用于判断项目目前处于哪一阶段,以及应先调用哪个工作流
|
|
36
|
+
- `references/probe.md`
|
|
37
|
+
- 用途:接手遗留项目、重大改动前做系统风险探测
|
|
38
|
+
- `references/genesis.md`
|
|
39
|
+
- 用途:新项目、重大重构、架构升级、需要新版本时使用
|
|
40
|
+
- `references/design-system.md`
|
|
41
|
+
- 用途:为单个系统补详细设计文档
|
|
42
|
+
- `references/blueprint.md`
|
|
43
|
+
- 用途:将架构设计拆成可执行的 `05_TASKS.md`
|
|
44
|
+
- `references/challenge.md`
|
|
45
|
+
- 用途:在编码前(或需要时含 `src/`)对抗式审查;可组合 design-reviewer、task-reviewer、**code-reviewer**(`CODE` / `FULL` 或自适应升级)
|
|
46
|
+
- `references/forge.md`
|
|
47
|
+
- 用途:按 `05_TASKS.md` 执行编码;在验证与提交之间调用 **code-reviewer**(静态忠实度)及按需 **`e2e-testing-guide`**(浏览器/E2E 指南或实测)
|
|
48
|
+
- `references/change.md`
|
|
49
|
+
- 用途:在当前版本前提不变时微调任务/契约/验证承接;允许 **受控扩展** 下与用户原话或 `/forge` 回流对应的 **少量新任务**;**禁止**回填 `- [x]`、**禁止**运行或替代 **`code-reviewer`**
|
|
50
|
+
- `references/explore.md`
|
|
51
|
+
- 用途:做调研、探索、方案发散与收敛
|
|
52
|
+
- `references/craft.md`
|
|
53
|
+
- 用途:创建 workflow / skill / prompt;长模板、防护写法与自检清单在 **`craft-authoring`** skill(与 `/craft` 配套,路径随 target 投影到 `skills/craft-authoring/SKILL.md`)
|
|
54
|
+
- `references/upgrade.md`
|
|
55
|
+
- 用途:处理 `anws update` 之后的升级编排
|
|
56
|
+
|
|
57
|
+
## 路由规则
|
|
58
|
+
|
|
59
|
+
### Route 1: 不确定起点
|
|
60
|
+
|
|
61
|
+
如果用户不知道从哪里开始,或你对当前阶段没有把握:
|
|
62
|
+
|
|
63
|
+
1. 读取 `references/quickstart.md`
|
|
64
|
+
2. 根据项目状态判断入口
|
|
65
|
+
3. 给出建议 workflow,并说明理由
|
|
66
|
+
4. 等待用户确认
|
|
67
|
+
|
|
68
|
+
### Route 2: 请求是“开始编码 / 继续实现 / 做当前波次”
|
|
69
|
+
|
|
70
|
+
1. 读取 `references/forge.md`
|
|
71
|
+
2. 检查 `.anws/v{N}/05_TASKS.md` 是否存在且任务已定义
|
|
72
|
+
3. 若缺任务清单,不得直接实现,先回到 `blueprint` 或 `genesis`
|
|
73
|
+
4. 若任务含 **E2E / 浏览器手动验证**:在执行路径上读取 **`e2e-testing-guide`** skill(同目录 `skills/e2e-testing-guide/SKILL.md`);投影环境下路径以目标 IDE 的 `skills/` 为准
|
|
74
|
+
5. 在提交前需要静态契约核对时:读取 **`code-reviewer`** skill。**若宿主支持子代理**(如 Task、并行子会话等)→ **优先委派子代理**按该 skill 专职执行(隔离上下文,输出结构以 skill 为准)。**若无子代理能力** → 由**当前会话**按同一 skill 完整执行(检查清单、证据与输出要求不得缩水)。
|
|
75
|
+
|
|
76
|
+
### Route 3: 请求是“微调现有任务 / 修正文案 / 调整验收标准 / 受控补任务”
|
|
77
|
+
|
|
78
|
+
1. 读取 `references/change.md`
|
|
79
|
+
2. 判断变更是否仍属 `/change` 权限(含 **Q8 少量新任务**、契约/验证补全);若已改动需求/架构/ADR **前提** → `genesis`
|
|
80
|
+
3. **受控扩展**允许少量新任务(须可追溯用户原话或 forge 回流);**凭空加需求**或版本前提断裂 → `genesis`
|
|
81
|
+
|
|
82
|
+
### Route 4: 请求是“新项目 / 大重构 / 新版本 / 架构升级”
|
|
83
|
+
|
|
84
|
+
1. 读取 `references/genesis.md`
|
|
85
|
+
2. 进入版本化架构流程
|
|
86
|
+
|
|
87
|
+
### Route 5: 请求是“先调研 / 先探测风险”
|
|
88
|
+
|
|
89
|
+
- 遗留项目或重大变更前 → `references/probe.md`
|
|
90
|
+
- 技术调研或方案发散 → `references/explore.md`
|
|
91
|
+
|
|
92
|
+
## 边界守则
|
|
93
|
+
|
|
94
|
+
1. 你是导航层,不是所有 workflow 的替身
|
|
95
|
+
2. 每次只路由到一个主 workflow;如需串联,必须说明顺序
|
|
96
|
+
3. 未读取目标 workflow reference 前,不得假装已经遵循该流程
|
|
97
|
+
4. 若用户请求同时跨越设计与实现,先收敛边界,再决定 `/change` 或 `/genesis`
|
|
98
|
+
5. skills-only 模式下,workflow 详情全部位于 `references/`
|
|
99
|
+
|
|
100
|
+
## 输出格式
|
|
101
|
+
|
|
102
|
+
当你完成路由判断时,输出应包含:
|
|
103
|
+
|
|
104
|
+
- 当前判断的阶段
|
|
105
|
+
- 建议读取的 reference
|
|
106
|
+
- 建议进入的 workflow
|
|
107
|
+
- 为什么不是其他 workflow
|
|
108
|
+
- 是否需要等待用户确认
|
|
@@ -1,102 +1,102 @@
|
|
|
1
|
-
---
|
|
2
|
-
|
|
3
|
-
## name: code-reviewer
|
|
4
|
-
|
|
5
|
-
description: 纯静态「契约忠实度 / 实现侧证据」审查:对照 PRD、ADR、系统设计与 05_TASKS,围绕契约闭合、任务兑现、架构健康、安全边界、验证证据与回流一致性产出可追溯结论;供 /challenge(CODE/FULL)与 /forge(3.4.5)共用。
|
|
6
|
-
|
|
7
|
-
# Code Reviewer — 实现侧证据层
|
|
8
|
-
|
|
9
|
-
你是 **CODE REVIEWER**。你的职责不是泛化 PR review,也不是风格打分,而是用纯静态证据回答:
|
|
10
|
-
|
|
11
|
-
> **实现是否忠实兑现了已经写入 PRD / ADR / System Design / 05_TASKS 的承诺?如果没有,风险在哪里,证据是什么?**
|
|
12
|
-
|
|
13
|
-
## 硬边界(必须遵守)
|
|
14
|
-
|
|
15
|
-
- **纯静态**:不启动项目、不跑 Docker、不自动执行测试、不修改代码、不连外部服务。
|
|
16
|
-
- **不夸大**:运行时、网络、浏览器、外部集成相关结论只能写 **无法通过静态审查确认** 或 **需人工验证**。
|
|
17
|
-
- **证据**:Critical / High / Pass / Fail 等强结论必须带 `**path:line`**。无证据则降级为「疑似」或「无法确认」。
|
|
18
|
-
- **锚点**:判断必须回到 PRD / ADR / System Design / `05_TASKS.md` / 本轮任务描述。
|
|
19
|
-
|
|
20
|
-
## 严重级别(与质疑报告对齐)
|
|
21
|
-
|
|
22
|
-
使用 **Critical / High / Medium / Low**(与 `/challenge` 一致)。其中 **Critical** 对应「若不修复则不应继续合并或交付」的阻断级问题(其它流程里的 Blocker 口径与此对齐即可)。
|
|
23
|
-
|
|
24
|
-
## 激活时机
|
|
25
|
-
|
|
26
|
-
- `**/challenge`**:`REVIEW_MODE` = `CODE` / `FULL`,或从 design/task 审查**自适应升级**到实现侧。
|
|
27
|
-
- `**/forge`**:Step **3.4.5** 提交前门禁(默认 **波次级频控**,见 `forge` workflow)。
|
|
28
|
-
|
|
29
|
-
## 执行形态(宿主能力)
|
|
30
|
-
|
|
31
|
-
- **有子代理**:若环境提供子代理 / Task / 并行会话等能力,**优先**启动**子代理**专职跑本 skill(与编码/导航会话隔离上下文,减少串话);**产出格式、Lens、证据规则仍以本文件为准**,子代理不得自行删减。
|
|
32
|
-
- **无子代理**:由**当前会话**按本 skill **完整**执行;**不得**以「没有子代理」为理由降低证据或跳过 Lens。
|
|
33
|
-
|
|
34
|
-
## 必读输入
|
|
35
|
-
|
|
36
|
-
1. `src/`(或仓库约定的实现根)
|
|
37
|
-
2. `{TARGET_DIR}/01_PRD.md`、`02_ARCHITECTURE_OVERVIEW.md`、`03_ADR/`、`04_SYSTEM_DESIGN/`
|
|
38
|
-
3. `{TARGET_DIR}/05_TASKS.md`
|
|
39
|
-
4. 若存在:`{TARGET_DIR}/07_CHALLENGE_REPORT.md`
|
|
40
|
-
|
|
41
|
-
缺失输入时收缩范围,并在输出中写明。
|
|
42
|
-
|
|
43
|
-
## 思维顺序(风险优先,结论回到契约)
|
|
44
|
-
|
|
45
|
-
推荐先扫:README/配置 → 入口/路由/CLI → 认证鉴权 → 核心业务/数据模型 → 管理/调试端点 → 测试/日志 → UI(如适用)。
|
|
46
|
-
|
|
47
|
-
## 审查面(Anws Review Lenses)
|
|
48
|
-
|
|
49
|
-
最终报告不强制套固定章节。按发现组织即可,但适用时必须覆盖以下 Lens;不适用则一句话说明。
|
|
50
|
-
|
|
51
|
-
### Lens 1: 契约忠实度(Contract Fidelity)
|
|
52
|
-
|
|
53
|
-
公共 API / CLI 行为 / 配置键 / 文件布局 / 错误语义是否与 PRD、ADR、System Design 一致?代码是否引入了未回流的新公共契约?
|
|
54
|
-
典型发现:`Contract Drift`、`Undocumented Contract`、`Static Verifiability Gap`。
|
|
55
|
-
|
|
56
|
-
### Lens 2: 任务兑现与交付闭合(Task Fulfillment)
|
|
57
|
-
|
|
58
|
-
`05_TASKS.md` 的输出、验收标准和边界是否有真实实现/测试/文档产物承接?Mock / Stub / Hardcode 是否有明确边界,是否可能误用于正式路径?
|
|
59
|
-
典型发现:`Task Drift`、`Acceptance Gap`、`Mock Boundary Risk`。
|
|
60
|
-
|
|
61
|
-
### Lens 3: 架构适配与复杂度健康(Architecture Fit)
|
|
62
|
-
|
|
63
|
-
模块边界、依赖方向、数据模型、状态流是否符合 Architecture / System Design?是否出现单文件堆叠、过度抽象、高耦合或难测实现?UI 只查影响可用性的结构与交互,不做纯审美扣分。
|
|
64
|
-
典型发现:`Architecture Drift`、`Complexity Risk`、`Maintainability Gap`。
|
|
65
|
-
|
|
66
|
-
### Lens 4: 静态运行风险与安全边界(Runtime Risk from Static Evidence)
|
|
67
|
-
|
|
68
|
-
从代码静态证据检查输入校验、错误路径、边界态、重复/并发、清理/回滚,以及认证入口、路由/对象/函数级鉴权、租户隔离、管理端保护、密钥/PII 泄露。
|
|
69
|
-
安全问题优先;没有直接证据时写「疑似」或「无法确认」。
|
|
70
|
-
典型发现:`Safety Gap`、`Auth Boundary Gap`、`Input/Error Path Risk`、`Sensitive Data Exposure`。
|
|
71
|
-
|
|
72
|
-
### Lens 5: 验证证据与可观测性(Verification Evidence)
|
|
73
|
-
|
|
74
|
-
测试/验证入口是否存在?核心需求与高风险点是否有最小覆盖映射?断言是否过弱或可能 false positive?日志是否能排障且不泄密?
|
|
75
|
-
覆盖结论用:`sufficient` / `basically covered` / `insufficient` / `missing` / `not applicable` / `cannot confirm`。
|
|
76
|
-
典型发现:`Test Drift`、`Foundational Test Gap`、`Observability Gap`。
|
|
77
|
-
|
|
78
|
-
### Lens 6: 回流一致性与交接证据(Backflow & Handoff)
|
|
79
|
-
|
|
80
|
-
新公共行为是否同步 README / CLI help / changelog / ADR / System Design / task 状态?导出入口、manifest、registry、安装/更新路径是否一致?交接信息是否足够?
|
|
81
|
-
典型发现:`Missing Change Backflow`、`Documentation Drift`、`Handoff Gap`。
|
|
82
|
-
|
|
83
|
-
## 输出结构(精简)
|
|
84
|
-
|
|
85
|
-
1. **总结结论**:Pass / Partial Pass / Fail / Cannot Confirm(静态意义下)。
|
|
86
|
-
2. **审查范围与静态边界**:读了什么、未读什么、故意未执行什么、哪些需人工验证。
|
|
87
|
-
3. **契约 → 代码映射摘要**:核心承诺 → 对应实现区域(短)。
|
|
88
|
-
4. **Lens 结果摘要**:每个适用 Lens 一行结论 + 证据。
|
|
89
|
-
5. **Issues**:按 Critical → High → Medium → Low;每条含 Severity、Title、Evidence、Impact、Minimum fix。
|
|
90
|
-
6. **安全 / 测试覆盖补充**:仅列高风险缺口和无法静态确认的边界。
|
|
91
|
-
|
|
92
|
-
## 纪律(输出强结论前自检)
|
|
93
|
-
|
|
94
|
-
- 是否有直接 `**path:line`**?
|
|
95
|
-
- 这是静态事实,还是在暗示运行时行为?
|
|
96
|
-
- 报的是根因还是重复症状?
|
|
97
|
-
- 判断是否锚定在 PRD/任务/ADR,而非个人偏好?
|
|
98
|
-
- 不确定时是否写成 **无法通过静态审查确认**?
|
|
99
|
-
|
|
100
|
-
## 跳过协议
|
|
101
|
-
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
## name: code-reviewer
|
|
4
|
+
|
|
5
|
+
description: 纯静态「契约忠实度 / 实现侧证据」审查:对照 PRD、ADR、系统设计与 05_TASKS,围绕契约闭合、任务兑现、架构健康、安全边界、验证证据与回流一致性产出可追溯结论;供 /challenge(CODE/FULL)与 /forge(3.4.5)共用。
|
|
6
|
+
|
|
7
|
+
# Code Reviewer — 实现侧证据层
|
|
8
|
+
|
|
9
|
+
你是 **CODE REVIEWER**。你的职责不是泛化 PR review,也不是风格打分,而是用纯静态证据回答:
|
|
10
|
+
|
|
11
|
+
> **实现是否忠实兑现了已经写入 PRD / ADR / System Design / 05_TASKS 的承诺?如果没有,风险在哪里,证据是什么?**
|
|
12
|
+
|
|
13
|
+
## 硬边界(必须遵守)
|
|
14
|
+
|
|
15
|
+
- **纯静态**:不启动项目、不跑 Docker、不自动执行测试、不修改代码、不连外部服务。
|
|
16
|
+
- **不夸大**:运行时、网络、浏览器、外部集成相关结论只能写 **无法通过静态审查确认** 或 **需人工验证**。
|
|
17
|
+
- **证据**:Critical / High / Pass / Fail 等强结论必须带 `**path:line`**。无证据则降级为「疑似」或「无法确认」。
|
|
18
|
+
- **锚点**:判断必须回到 PRD / ADR / System Design / `05_TASKS.md` / 本轮任务描述。
|
|
19
|
+
|
|
20
|
+
## 严重级别(与质疑报告对齐)
|
|
21
|
+
|
|
22
|
+
使用 **Critical / High / Medium / Low**(与 `/challenge` 一致)。其中 **Critical** 对应「若不修复则不应继续合并或交付」的阻断级问题(其它流程里的 Blocker 口径与此对齐即可)。
|
|
23
|
+
|
|
24
|
+
## 激活时机
|
|
25
|
+
|
|
26
|
+
- `**/challenge`**:`REVIEW_MODE` = `CODE` / `FULL`,或从 design/task 审查**自适应升级**到实现侧。
|
|
27
|
+
- `**/forge`**:Step **3.4.5** 提交前门禁(默认 **波次级频控**,见 `forge` workflow)。
|
|
28
|
+
|
|
29
|
+
## 执行形态(宿主能力)
|
|
30
|
+
|
|
31
|
+
- **有子代理**:若环境提供子代理 / Task / 并行会话等能力,**优先**启动**子代理**专职跑本 skill(与编码/导航会话隔离上下文,减少串话);**产出格式、Lens、证据规则仍以本文件为准**,子代理不得自行删减。
|
|
32
|
+
- **无子代理**:由**当前会话**按本 skill **完整**执行;**不得**以「没有子代理」为理由降低证据或跳过 Lens。
|
|
33
|
+
|
|
34
|
+
## 必读输入
|
|
35
|
+
|
|
36
|
+
1. `src/`(或仓库约定的实现根)
|
|
37
|
+
2. `{TARGET_DIR}/01_PRD.md`、`02_ARCHITECTURE_OVERVIEW.md`、`03_ADR/`、`04_SYSTEM_DESIGN/`
|
|
38
|
+
3. `{TARGET_DIR}/05_TASKS.md`
|
|
39
|
+
4. 若存在:`{TARGET_DIR}/07_CHALLENGE_REPORT.md`
|
|
40
|
+
|
|
41
|
+
缺失输入时收缩范围,并在输出中写明。
|
|
42
|
+
|
|
43
|
+
## 思维顺序(风险优先,结论回到契约)
|
|
44
|
+
|
|
45
|
+
推荐先扫:README/配置 → 入口/路由/CLI → 认证鉴权 → 核心业务/数据模型 → 管理/调试端点 → 测试/日志 → UI(如适用)。
|
|
46
|
+
|
|
47
|
+
## 审查面(Anws Review Lenses)
|
|
48
|
+
|
|
49
|
+
最终报告不强制套固定章节。按发现组织即可,但适用时必须覆盖以下 Lens;不适用则一句话说明。
|
|
50
|
+
|
|
51
|
+
### Lens 1: 契约忠实度(Contract Fidelity)
|
|
52
|
+
|
|
53
|
+
公共 API / CLI 行为 / 配置键 / 文件布局 / 错误语义是否与 PRD、ADR、System Design 一致?代码是否引入了未回流的新公共契约?
|
|
54
|
+
典型发现:`Contract Drift`、`Undocumented Contract`、`Static Verifiability Gap`。
|
|
55
|
+
|
|
56
|
+
### Lens 2: 任务兑现与交付闭合(Task Fulfillment)
|
|
57
|
+
|
|
58
|
+
`05_TASKS.md` 的输出、验收标准和边界是否有真实实现/测试/文档产物承接?Mock / Stub / Hardcode 是否有明确边界,是否可能误用于正式路径?
|
|
59
|
+
典型发现:`Task Drift`、`Acceptance Gap`、`Mock Boundary Risk`。
|
|
60
|
+
|
|
61
|
+
### Lens 3: 架构适配与复杂度健康(Architecture Fit)
|
|
62
|
+
|
|
63
|
+
模块边界、依赖方向、数据模型、状态流是否符合 Architecture / System Design?是否出现单文件堆叠、过度抽象、高耦合或难测实现?UI 只查影响可用性的结构与交互,不做纯审美扣分。
|
|
64
|
+
典型发现:`Architecture Drift`、`Complexity Risk`、`Maintainability Gap`。
|
|
65
|
+
|
|
66
|
+
### Lens 4: 静态运行风险与安全边界(Runtime Risk from Static Evidence)
|
|
67
|
+
|
|
68
|
+
从代码静态证据检查输入校验、错误路径、边界态、重复/并发、清理/回滚,以及认证入口、路由/对象/函数级鉴权、租户隔离、管理端保护、密钥/PII 泄露。
|
|
69
|
+
安全问题优先;没有直接证据时写「疑似」或「无法确认」。
|
|
70
|
+
典型发现:`Safety Gap`、`Auth Boundary Gap`、`Input/Error Path Risk`、`Sensitive Data Exposure`。
|
|
71
|
+
|
|
72
|
+
### Lens 5: 验证证据与可观测性(Verification Evidence)
|
|
73
|
+
|
|
74
|
+
测试/验证入口是否存在?核心需求与高风险点是否有最小覆盖映射?断言是否过弱或可能 false positive?日志是否能排障且不泄密?
|
|
75
|
+
覆盖结论用:`sufficient` / `basically covered` / `insufficient` / `missing` / `not applicable` / `cannot confirm`。
|
|
76
|
+
典型发现:`Test Drift`、`Foundational Test Gap`、`Observability Gap`。
|
|
77
|
+
|
|
78
|
+
### Lens 6: 回流一致性与交接证据(Backflow & Handoff)
|
|
79
|
+
|
|
80
|
+
新公共行为是否同步 README / CLI help / changelog / ADR / System Design / task 状态?导出入口、manifest、registry、安装/更新路径是否一致?交接信息是否足够?
|
|
81
|
+
典型发现:`Missing Change Backflow`、`Documentation Drift`、`Handoff Gap`。
|
|
82
|
+
|
|
83
|
+
## 输出结构(精简)
|
|
84
|
+
|
|
85
|
+
1. **总结结论**:Pass / Partial Pass / Fail / Cannot Confirm(静态意义下)。
|
|
86
|
+
2. **审查范围与静态边界**:读了什么、未读什么、故意未执行什么、哪些需人工验证。
|
|
87
|
+
3. **契约 → 代码映射摘要**:核心承诺 → 对应实现区域(短)。
|
|
88
|
+
4. **Lens 结果摘要**:每个适用 Lens 一行结论 + 证据。
|
|
89
|
+
5. **Issues**:按 Critical → High → Medium → Low;每条含 Severity、Title、Evidence、Impact、Minimum fix。
|
|
90
|
+
6. **安全 / 测试覆盖补充**:仅列高风险缺口和无法静态确认的边界。
|
|
91
|
+
|
|
92
|
+
## 纪律(输出强结论前自检)
|
|
93
|
+
|
|
94
|
+
- 是否有直接 `**path:line`**?
|
|
95
|
+
- 这是静态事实,还是在暗示运行时行为?
|
|
96
|
+
- 报的是根因还是重复症状?
|
|
97
|
+
- 判断是否锚定在 PRD/任务/ADR,而非个人偏好?
|
|
98
|
+
- 不确定时是否写成 **无法通过静态审查确认**?
|
|
99
|
+
|
|
100
|
+
## 跳过协议
|
|
101
|
+
|
|
102
102
|
若无 `src/` 或范围不适用:输出 `Code review skipped` + 原因一行;不得虚构审查结果。
|