SuperAPI AI 工具集

slice-refactor

编程与开发

查看项目

更新于 10-15 22:41

技能介绍

用途:slice-refactor 是 jdforsythe/groove 下的可选技能,在 slice-impl 完成、切片测试全绿之后运行,用于对实现做后期清理式重构,改善可读性、DRY 与项目既有模式一致性,但不改变可观察行为。若实现本身已经干净,可跳过;跳过是成功结果。

主要能力与流程:先判断实现是否明显需要清理(重复逻辑可提取、魔法值可命名、嵌套条件可扁平化、命名含糊、与既有模式结构不匹配);无信号则输出跳过信息并停止。随后在改动任何文件前运行完整测试套件,确认全部通过且本切片测试在通过之列,否则输出 blocked 信息并拒绝开始。接着加载 .substrate/anti-pattern/INDEX.md,用 substrate-read 获取与切片 touched_paths 有范围重叠的反模式正文,作为重构必须遵守的约束;索引不存在或为空可继续。然后完整阅读 docs/plans/<workflow_id>.md 中的切片条目,记录 id、title、acceptance_criteria、touched_paths、out_of_scope,并完整阅读测试文件(测试文件只读)。

使用方式:规划阶段先写下具体重构动作,每个动作须保持行为、位于 touched_paths 内、不添加 out_of_scope 项、不违反反模式、不引入新特性;无有效动作则跳到最终校验并说明无需清理。执行阶段逐个应用动作,每步后运行测试;通过则继续,失败则立即回退该动作并停止,不得改测试或绕过。全部动作或中止后运行完整测试套件做最终校验,再按格式报告已应用与跳过的动作、加载的反模式数量与 id。

限制:测试文件不得修改、重命名、移动或注释;前置绿灯检查为强制项;一次只做一个动作,不可批量后测一次;一旦破坏测试即回退并中止;不得新增 out_of_scope 条目,不得让原本失败的测试变通过或暴露新公开接口;计划动作耗尽且测试全绿即停止,不为凑时长发明重构;所有已加载反模式对重构后实现同样有效;不得提及任何具体 harness,技能通过共享产物路径组合。