用途:在完成任务、提交或合并前,将当前质量指标与内存中保存的基线进行对比,检测测试、覆盖率、类型错误、lint 和死代码是否出现回归,并在指标退化超出容差时阻止任务完成。
主要能力:从内存加载基线(命名如 baseline_<feature>_<date>),运行 ./scripts/check_all.sh,解析并比较 5 项指标:测试通过数、覆盖率、类型错误数、lint 错误数、死代码百分比。按规则判定回归:测试通过数不得低于基线;覆盖率不得低于基线减 1%;类型错误和 lint 错误不得高于基线;死代码不得高于基线加 2%。输出 PASS/FAIL 及可操作的差异报告,并给出严重级别与修复顺序。
使用方式:完成任务后先手动运行测试,再调用该技能并指定基线名称;若 PASS 可标记完成,若 FAIL 需修复后重新检测。触发场景包括任务完成前、创建提交或 PR 前、合并到主分支前,以及用户询问“是否完成”或“检查质量”时。
适用场景:与 @implementer、@unit-tester、@integration-tester、@statuser 等配合,在每次任务后验证质量未退化;与 capture-quality-baseline 配合使用同一基线命名;与 run-quality-gates 互补。
限制:需要项目使用 ./scripts/check_all.sh,且已通过 capture-quality-baseline 创建基线;需安装 pyright、ruff、pytest、vulture。若基线缺失返回警告并建议先捕获基线;若检查无法运行则返回 FAIL 并阻止继续。基线中已存在的类型错误若数量不变视为 PASS。具体修复策略见 references/regression-fixes.md,比较规则见 references/comparison-rules.md。