| name | dev-refactor |
| description | 重构子类型规范 — 测试覆盖前置确认 + 三段式重构流程 |
Dev Refactor Skill
触发条件
用户意图为重构现有代码(不改变外部行为),典型场景:提取公共模块、消除重复代码、改善架构分层、升级编码风格。
前置检查(必须在 CP1 前完成)
| 项 | 内容 |
|---|
| 测试覆盖确认 | 确认被重构模块已有测试覆盖(单测/集成测试),无测试时禁止继续,优先补测试 |
| 基线快照 | 记录当前接口签名、导出列表、公开 API |
| 类型契约基线 | TypeScript 项目须区分必须保持兼容的公开类型契约与允许修正的旧类型缺陷 |
执行流程
CP1(范围确认)→ CP2(方案确认)→ [plan-review] → [impact-review] → CP3(计划确认)→ 执行
plan-review:PR-1 在 CP2 前自检,PR-2~PR-7 在 CP2→CP3 之间执行;PR-5② 跨模块依赖变更时继续 impact-review,🔴 阻断时回 CP2。
执行阶段:
- 最小增量重构,每步可独立回滚
- 重构后运行测试套件(零新增失败)
- 更新 API 文档(若接口签名变更)
- document-sync(更新架构文档)
关键规则
- 🔴 重构前测试覆盖率不足时,必须先补测试再重构(C-REF-01)
- 禁止在重构 PR 中混入功能变更(行为不变原则)
- Breaking Changes 必须在 CP2 中列出并评估
- TypeScript 类型迁移或重构不得机械复制旧版本类型缺陷;应按公开契约与消费面逐步完善,跨模块业务契约、公开类型与配置类型优先集中到 types 契约层,本地私有 interface 可保留但须说明理由