P
principle-migrate-callers-then-delete-legacy-apis
About principle-migrate-callers-then-delete-legacy-apis
A refactoring skill for projects that can coordinate breaking API changes. It advises migrating internal callers and removing legacy APIs in the same refactor wave, rather than maintaining compatibility layers by default.
Key features
- 01Inventory existing API callers
- 02Migrate callers to the new API
- 03Remove the legacy API in the same refactor
- 04Update tests for the new contract
- 05Treat adapters as temporary exceptions
Use cases
- 01Simplify an internal API without external compatibility needs
- 02Coordinate a breaking API change across callers
- 03Remove tests tied only to pre-refactor implementation details
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ mdsmithaustin/ pstack --skill principle-migrate-callers-then-delete-legacy-apisAfter installing, type/principle-migrate-callers-then-delete-legacy-apisin Claude Code to confirm it loaded.
Bundled filesagents/openai.yaml
Details
From the project READMEMigrate Callers Then Delete Legacy APIs
When we decide a new API is the right design, migrate callers and remove the old API in the same refactor wave instead of preserving compatibility layers.
Rule:
- Do not keep legacy API paths only because internal callers still exist
- Inventory callers, migrate them, and delete the old API immediately
- Treat temporary adapters as exceptional and time-boxed, not default architecture
- Update tests to assert the new contract, and delete tests that only protect pre-refactor implementation details
When this applies:
- No external users depend on backward compatibility
- The project can absorb coordinated breaking changes
- The new API is part of a simplification or refactor initiative
Keeping both old and new APIs creates dual-path complexity, slows cleanup, and makes the codebase feel append-only.
Comments
Markdown supported