migratorlisted
Install: claude install-skill kbelasheuski/ios-architecture-skills
# Migrator — Any-to-Any Architecture Migration
## Purpose
Move an iOS codebase from a **source** pattern to a **target** pattern with minimal disruption. Output is a phased migration plan rooted in a small set of reusable primitives, plus a per-pair playbook with the exact mechanical steps.
## Prerequisites
- Run `analyser` first to confirm the source pattern.
- Confirm the target pattern is right (run `researcher` if unsure).
- Confirm CI is green and there is a test baseline. If coverage is sparse, the first phase becomes "add characterisation tests on critical flows".
## Universal migration rules
1. **Never migrate the whole app in one go.** Strangler-fig per feature. Old and new patterns coexist behind a feature-folder boundary.
2. **Start with a leaf feature.** Pick a screen with few inbound dependencies. Avoid the home screen, authentication, and anything in the payment path on day 1.
3. **Tests come first.** If the source feature has no tests, write characterisation tests (snapshot + integration) before refactoring.
4. **Ship per phase.** Each phase merges to main and ships. No long-running branches.
5. **Keep public APIs stable.** When migrating a feature module, its `Interface` target's public symbols stay the same so callers don't change.
6. **Roll back triggers**: CI red for > 24h, crash rate up ≥ 10%, perf regression > 5%, dev velocity drop > 30%.
## Shared primitives
These are the building blocks every migration uses. The per-pair playbook is just a recip