SuperAPI AI 工具集

refactor-module

编程与开发

查看项目

更新于 10-16 08:06

技能介绍

refactor-module 用于对 .plain 模块做纯结构性重构:按逻辑领域把大型模块拆成若干小模块,并通过 requires 链连接,使组合后的行为与原模块完全一致,不新增、删除或削弱任何功能规格。

适用场景:模块包含跨越多个不同域或功能区域的功能规格;无关关注点交织导致难以理解;模块范围过宽难以新增功能;用户明确要求拆分或重组模块。

使用流程:先读取整个 .plain 文件(frontmatter、definitions、implementation reqs、test reqs 及所有功能规格)与 import/requires 链,清点功能规格并建立依赖图,识别逻辑分组,验证组间独立性。随后向用户展示拆分方案并取得明确确认方可继续。

拆分规则:以 requires 链保持原功能规格的时间顺序,链首模块承载最早规格、包含原始 requires/import,后续模块逐级 require 前一模块。每条功能规格只放入一个模块,模块内保持原相对顺序,规格不得早于其依赖的规格;跨模块使用的概念定义在首个使用它的模块并写入 exported_concepts;共享概念过多时可新建 import 模板集中放置。被所有模块共用的 reqs 宜留在共享 import 模板,模块专属 reqs 随模块迁移。原模块若被完全替换则删除或改名,若被其他模块依赖则改为 require 链尾模块。

执行与验证:自链首向上创建模块,保留原规格措辞与嵌套的验收测试。验证包括完整性(规格总数一致、文本一致、验收测试完整迁移)、时间顺序、概念可用性(本地、import 或 exported_concepts 均可获取,无命名冲突)、逐模块结构校验(至少一条功能规格和一条 implementation req、YAML 正确、路径正确、位于仓库根目录、规格与语言无关),最后通读所有新模块并交用户批准。

常见陷阱:拆分过细(建议每模块 3–10 条规格)、破坏时间顺序、遗漏 exported_concepts、改写规格文本、丢失验收测试。

使用前提:应先调用技能 load-plain-reference 获取 ***plain 语法规则(若尚未获取)。其他价格、平台等信息暂未提供。