devbooks-reviewer:以 Reviewer 角色做可读性/一致性/依赖健康/坏味道审查,只输出审查意见与可执行建议,不讨论业务正确性。用户说"帮我做代码评审/review 可维护性/坏味道/依赖风险/一致性建议",或在 DevBooks apply 阶段以 reviewer 执行时使用。
目标:明确本 Skill 的核心产出与使用范围。 输入:用户目标、现有文档、变更包上下文或项目路径。 输出:可执行产物、下一步指引或记录路径。 边界:不替代其他角色职责,不触碰 tests/。 证据:引用产出物路径或执行记录。
适用:需要细化策略、边界或风险提示时补充。
适用:需要与外部系统或可选工具协同时补充。
核心原则:Code Review 在 Test Owner 阶段 2 验证之后执行,是归档前的最后一个评审步骤。
proposal → design → test-owner(阶段1) → coder → test-owner(阶段2) → [Code Review] → archive
↓
可读性/一致性/依赖审查| 允许 | 禁止 |
|---|---|
| 审查代码可读性/一致性 | ❌ 修改代码文件 |
| 设置 verification.md Status = Done | ❌ 讨论业务正确性(那是 Test Owner 的事) |
| 提出改进建议 | ❌ 勾选 AC 覆盖矩阵(那是 Test Owner 的事) |
<truth-root>:当前真理目录根<change-root>:变更包目录根执行前必须按以下顺序查找配置(找到后停止):
.devbooks/config.yaml(如存在)→ 解析并使用其中的映射dev-playbooks/project.md(如存在)→ Dev-Playbooks 协议,使用默认映射project.md(如存在)→ template 协议,使用默认映射关键约束:
agents_doc(规则文档),必须先阅读该文档再执行任何操作<truth-root>/architecture/c4.md)必须检查的资源泄漏模式:
| 检查项 | 违规模式 | 正确模式 |
|---|---|---|
| 订阅未取消 | event.on(...) 无对应 off() | 注册到 DisposableStore |
| 定时器未清理 | setInterval() 无 clearInterval() | 在 dispose() 中清理 |
| 监听器未移除 | addEventListener() 无 removeEventListener() | 使用 AbortController |
| 流未关闭 | createReadStream() 无 close() | 使用 try-finally 或 using |
| 连接未释放 | connect() 无 disconnect() | 使用连接池或 dispose 模式 |
DisposableStore 模式检查:
// 违规:可变的 disposable 字段
private disposable = new DisposableStore(); // 应该是 readonly
// 违规:dispose() 未调用 super.dispose()
dispose() {
this.cleanup(); // 缺少 super.dispose()
}
// 正确模式
private readonly _disposables = new DisposableStore();
override dispose() {
this._disposables.dispose();
super.dispose();
}资源管理检查清单:
readonly 或 const?super.dispose()?ensureNoDisposablesAreLeakedInTestSuite()?as any 类型断言?{} as T 危险断言?unknown 而非 any?参见:references/坏味道速查表.md
test.only / describe.only?~/.claude/skills/_shared/references/AI行为规范.md(可验证性 + 结构质量守门)。references/资源管理审查清单.md。references/代码评审提示词.md。本 Skill 在执行前自动检测上下文,选择合适的审查范围。
检测规则参考:skills/_shared/上下文检测模板.md
| 模式 | 触发条件 | 行为 |
|---|---|---|
| 变更包审查 | 提供 change-id | 审查该变更包相关的代码变更 |
| 文件审查 | 提供具体文件路径 | 审查指定文件 |
| 热点优先审查 | 检测到热点文件变更 | 优先审查高风险热点 |
检测结果:
- 变更包状态:存在
- 代码变更:12 个文件
- 热点文件:3 个(需重点关注)
- 运行模式:变更包审查 + 热点优先参考:skills/_shared/工作流下一步.md
完成 code-review 后,下一步取决于具体情况:
| 条件 | 下一个 Skill | 原因 |
|---|---|---|
| 有 spec deltas | devbooks-archiver | 归档前合并规格到真理 |
| 无 spec deltas | 归档完成 | 无需其他 skill |
| 发现重大问题 | 交回 devbooks-coder | 归档前修复问题 |
只有 Reviewer 可以将 verification.md 的 Status 设为 Done。
Review 通过后,Reviewer 必须执行:
<change-root>/<change-id>/verification.md- Status: Ready 改为 - Status: Donechange-check.sh --mode archive 会检查)完成 code-review 后,输出:
## 推荐的下一步
**下一步:`devbooks-archiver`**(如果有 spec deltas)
或
**归档完成**(如果无 spec deltas)
原因:代码评审已完成。下一步是[合并 spec deltas 到真理 / 完成归档]。
### 如何调用(如果有 spec deltas)运行 devbooks-archiver skill 处理变更
2608f9c
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.