用途
Regression Suite 用于确保每个 bug 修复都有能捕获原始 bug 的测试作为支撑,并让回归测试套件随游戏演进保持最新。它还会检测新功能是否在缺少对应回归覆盖的情况下被加入。
回归套件不是新的测试类别,而是对 tests/ 中已有测试的精选清单,这些测试共同覆盖游戏的关键路径和已知失败点。该技能负责维护这份清单。
输出文件:tests/regression-suite.md
何时运行
- 修复 bug 之后(确认已编写回归测试或识别缺口)
- 阶段门禁之前——在 qa.level: full 时,/gate-check 要求存在回归套件
- 作为冲刺收尾的一部分,用于检测覆盖漂移
主要能力
- 将 GDD 验收标准映射到测试覆盖,标记 COVERED、PARTIAL、MISSING、EXEMPT
- 对已关闭 bug 检查是否存在回归测试,标记 HAS REGRESSION TEST 或 MISSING REGRESSION TEST
- 检测覆盖漂移:本冲刺完成但无对应测试的故事、新增系统、GDD 章节变更、清单更新时间过旧
- 生成回归套件清单,包含已注册测试、已知缺口、隔离测试
- 对公式或状态机相关的 MISSING 项提升为 HIGH PRIORITY 缺口
使用方式
支持三种模式:
- /regression-suite update — 扫描本冲刺新的 bug 修复并检查回归测试是否存在;将新测试加入套件清单
- /regression-suite audit — 全面审计所有 GDD 关键路径与现有测试覆盖;标记没有回归测试的路径
- /regression-suite report — 只读状态报告(不写入),适合冲刺评审
无参数时:若明显有活跃冲刺(存在含进行中故事的冲刺计划),运行 update;否则通过 AskUserQuestion 询问选择模式。
适用场景
适用于使用 Claude Code 进行游戏开发、需要维护回归测试套件的项目。qa.level 控制是否生成套件:minimal 不生成(报告并停止);standard 在 Polish 阶段入口生成;full 在 Production 阶段入口生成。workflow 层级影响 audit 模式中关键路径的来源:full 读取 GDD 所有章节;standard 读取必需章节(验收标准、边界情况、公式);minimal 跳过 GDD 扫描,改用最新 smoke-check 报告中的关键路径。
限制
- 在 qa.level: minimal 时不生成回归套件,判定为 NOT ASSESSED
- 若 GDD 或测试文件为空,不输出百分比,报告 Coverage: NOT ASSESSED
- 未经用户明确批准,不得从清单中移除已有回归测试
- 缺口为建议性而非阻塞性(qa.level: full 的阶段门禁除外)
- 隔离不等于删除;间歇性失败的测试应隔离并交由 /test-flakiness 修复
- 写入清单前始终需要确认
判定
- NOT ASSESSED — qa.level: minimal 停止;或 minimal 下无 smoke 报告;或覆盖未计算
- BLOCKED — update 或 audit 模式且用户拒绝写入
- COMPLETE — update/audit 已更新套件;report 已显示覆盖报告