质量关卡
质量关卡(Quality Gates)在策略的验证阶段作为 Skill 调用自动运行。它们检测安全漏洞、代码质量问题和文档同步状态。
| 关卡 | 说明 | 检测内容 |
|---|---|---|
verify-security | 安全漏洞扫描 | 注入漏洞、敏感信息泄露、危险函数、OWASP Top 10 |
verify-quality | 代码质量检查 | 圈复杂度、函数长度、重复代码、命名规范 |
verify-change | 变更影响分析 | 文档同步、API 签名变更影响、依赖变更 |
verify-module | 模块完整性校验 | 目录结构、缺失文档、README/DESIGN 存在性 |
gen-docs | 文档生成器 | 自动生成 README.md + DESIGN.md 骨架 |
自动触发条件
Section titled “自动触发条件”质量关卡根据场景自动触发,无需手动调用:
/gen-docs <module-path> → 生成文档骨架 ↓/verify-module <module-path> → 检查结构完整性 ↓/verify-security <module-path> → 安全扫描代码变更超过 30 行时
Section titled “代码变更超过 30 行时”/verify-change → 分析变更影响,检查文档同步 ↓/verify-quality <changed-path> → 检查复杂度、代码异味安全相关变更时
Section titled “安全相关变更时”涉及认证、授权、加密、输入验证、密钥管理的变更:
/verify-security <changed-path> → 安全漏洞扫描/verify-change → 确保文档反映重构 ↓/verify-quality <refactored-path> → 验证质量提升 ↓/verify-security <refactored-path> → 确保无新漏洞verify-security
Section titled “verify-security”检测内容:
- SQL 注入、XSS、SSRF 等注入漏洞
- 硬编码密钥 / Token / 密码
- 不安全的加密实现
- 缺失的输入验证
- 危险函数调用(
eval、exec、system) - 路径遍历风险
- CORS 配置问题
输出格式:
[Critical] src/api/auth.ts:42 — 硬编码 JWT secret[High] src/utils/db.ts:15 — 未参数化的 SQL 拼接[Medium] src/config.ts:8 — CORS 允许所有来源verify-quality
Section titled “verify-quality”检测内容:
- 函数圈复杂度 > 10
- 单函数超过 50 行
- 单文件超过 500 行
- 重复代码块
- 不规范的命名(不符合项目约定)
- 未使用的导入 / 变量
- 缺失的错误处理
质量指标:
| 指标 | 阈值 | 严重度 |
|---|---|---|
| 圈复杂度 | > 10 | Warning |
| 圈复杂度 | > 20 | Critical |
| 函数行数 | > 50 | Warning |
| 文件行数 | > 500 | Warning |
| 重复率 | > 5% | Warning |
verify-change
Section titled “verify-change”检测内容:
- 公共 API 签名变更 → 搜索所有调用点
- README / DESIGN.md 是否需要同步更新
- 配置文件变更是否有对应文档
- 依赖版本变更的影响范围
- 数据库 schema 变更的迁移状态
verify-module
Section titled “verify-module”检测内容:
- 目录是否包含
README.md - 是否包含
DESIGN.md(可选) - 导出文件(
index.ts/mod.rs等)是否存在 - 测试文件是否存在
- 文档与代码是否同步
| 级别 | 含义 | 动作 |
|---|---|---|
| Critical | 必须立即修复 | 阻塞交付 |
| High | 应该修复 | 建议修复后再交付 |
| Warning | 建议改进 | 不阻塞,记录待改进项 |
| Info | 参考信息 | 仅提醒,不需要动作 |
- 非阻塞 — 除 Critical 外,质量关卡只生成报告,不阻止交付
- 可链接 — 按上述顺序依次执行,前一个失败则跳过后续
- 静默通过 — 全部通过时不输出冗余的 “all clear” 信息
- 幂等 — 可安全重复执行,相同输入产生相同输出
在策略中的位置
Section titled “在策略中的位置”质量关卡在 full-collaborate 策略的 Phase 5 执行:
Phase 4: 实施(Builder 编码) ↓Phase 5: 验证 ← 质量关卡在这里运行 ├── verify-security ├── verify-quality └── verify-change ↓Phase 6: 双模型交叉审查在 Claude Code 会话中,可以直接以 Skill 方式调用:
请运行 verify-security 扫描 src/auth/ 目录请对刚才的变更运行 verify-quality引擎会将其路由到对应的 Skill 文件执行。