What problem does it solve? Refactoring legacy code without tests is risky: a single change can silently alter behavior in a critical flow. This Skill provides a disciplined workflow for changing legacy code safely, ensuring every transformation preserves observable behavior and remains reversible. ## Core Features & Use Cases - Characterization Tests First: Guides you to lock in current behavior (including quirks and preserved bugs) with golden-file or snapshot tests before touching any code. - Proven Refactoring Patterns: Applies the Strangler Fig pattern for system migrations, the Mikado Method for discovering prerequisites, and Branch by Abstraction for swapping implementations without long-lived branches. - Structured Refactoring Plan: Produces a plan template with safety net, ordered reversible steps, Mikado prerequisites, and one behavior-preserving commit per step. - Use Case: When extracting a payment service from a 29-year-old monolith, use this Skill to characterize the existing behavior, place a facade in front of the legacy code, and migrate traffic incrementally until the old path reaches zero. ## Quick Start Ask the AI to create a safe refactoring plan for extracting a service from legacy code using characterization tests and the Strangler Fig pattern.