/ca-refactor — behavior-preserving restructure

SkillDev tools

Restructure code with behavioral parity proven through unmodified pre-existing tests, then refactor. No behavior change.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the /ca-refactor — behavior-preserving restructure skill

What this skill tells your AI

The instructions your AI receives, as published by arbiterforge/codearbiter in plugins/ca-pi/skills/ca-refactor/SKILL.md and read by ahel’s review.

The only permitted entry to refactor work. A refactor that cannot prove parity through unmodified pre-existing tests is a feature change in disguise and routes to /ca-feature. Two required parts: the surface (exact files, functions, classes, or methods — vague surfaces like "the auth module" are rejected) and the motivation (why the restructure is worth doing).

Flow

Routes to the refactor skill — six phases:

  1. Surface identification — lock the exact files, symbols, and public signatures.
  2. Parity coverage proof — demonstrate pre-existing tests already cover the named surface, with at least one direct test per public method.
  3. Red parity tests (conditional) — if the refactor exposes a new test seam, route to tdd (<plugin-root>/routines/tdd/SKILL.md) Phase 1 to write failing tests pinning the seam's contract first.
  4. Implementation — apply the restructure mechanically within the surface table; no new behavior, branches, error paths, or side effects.
  5. Parity verification — the full pre-existing suite passes with zero edits to any pre-existing test file.
  6. Lint / coverage gate — lint, type-check, and coverage clear; surface coverage MUST NOT regress.

Routes to

refactor (<plugin-root>/routines/refactor/SKILL.md) — all six phases.

When NOT to use

  • New behavior — a new branch, error path, side effect, public method beyond a Phase 3 seam, or a change to what any input maps to → /ca-feature.
  • A change motivated by "the current behavior is wrong" → /ca-fix.
  • Questions or discussion → /ca-btw.
  • Persisting an already-completed refactor → /ca-commit.

Hard gate

No refactor proceeds without behavioral-parity coverage proof in Phase 2; if the surface is under-covered, the skill halts and routes to tdd Phase 1 to backfill before resuming. A Phase 4 diff that would classify as feat, or a Phase 5 verification that depends on edits to a pre-existing test, terminates the refactor and re-routes to /ca-feature or /ca-fix.

Signals

GitHub stars
145
Forks
7
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
ca-refactor
Source
github.com/arbiterforge/codearbiter