← ClaudeAtlas

refactoringlisted

Improve code structure in small, always-green steps without changing behavior. Use when asked to clean up, simplify, restructure, or de-duplicate working code.
Amey-Thakur/AI-SKILLS · ★ 4 · AI & Automation · score 77
Install: claude install-skill Amey-Thakur/AI-SKILLS
# Refactoring A refactor changes structure while behavior stays identical. The moment behavior changes on purpose, it is a feature; by accident, a bug. Keep the line sharp. ## Method 1. **Secure the net first.** Confirm the tests around the target pass and actually pin its behavior. If coverage is thin, write characterization tests *before* touching anything: capture what the code does now, even its oddities. An odd behavior may be load-bearing. 2. **Name the smell and the target shape.** "Three near-copies of this query builder → one function with two parameters." If you cannot state the after-state in a sentence, you are wandering, not refactoring. 3. **Move in reversible steps, green after each.** Rename; extract function; inline; move; then delete the old path. Each step compiles, passes, and could ship. Twenty two-minute steps beat one two-hour rewrite in every dimension that matters: reviewability, bisectability, abort-ability. 4. **Separate refactor commits from behavior commits.** A reviewer must be able to skim a refactor commit ("no behavior change") and scrutinize the small behavior commit. Mixed commits get neither reading. 5. **Follow the house style,** even where you prefer another. A codebase with one accent is maintainable; your improvement in a foreign accent is someone else's cleanup ticket. 6. **Stop at the target.** The neighboring mess you noticed goes on a list, not into this change. Scope creep is how refactors