deprecation-and-migration

Plans and executes deprecation of legacy systems with incremental migration patterns.

Updated Jul 19, 2026
One-click install
npx skills add https://github.com/DagimAlemayehuu/AgenticEngineering --skill deprecation-and-migration-dagimalemayehuu
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: deprecation-and-migration
Source: https://github.com/DagimAlemayehuu/AgenticEngineering/tree/main/agentic-engineering/core/dependencies/delivery/deprecation-and-migration
Command: npx skills add https://github.com/DagimAlemayehuu/AgenticEngineering --skill deprecation-and-migration-dagimalemayehuu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Removing old systems, APIs, and features is hard because consumers depend on undocumented behaviors, and rushed removals break production. This Skill provides a disciplined process for deciding what to deprecate, migrating consumers safely, and removing code without regressions. ## Core Features & Use Cases - Deprecation Decision Framework: Structured questions to decide whether to maintain, deprecate, or sunset a system, including advisory vs compulsory deprecation trade-offs. - Migration Patterns: Step-by-step guidance for the Strangler pattern, Adapter pattern, feature flag migration, and expand/contract database schema migrations with reversible phases. - Zombie Code Handling: Criteria for identifying unmaintained code with active consumers and forcing an own-or-remove decision. - Use Case: When renaming a database column, follow the expand/contract workflow — add the new nullable column, dual-write, backfill in batches, switch reads, then drop the old column in a separate deploy — so old and new code stay valid at every step. ## Quick Start Use the deprecation-and-migration skill to plan the deprecation of our legacy task service and migrate all consumers to the new implementation.

Frequently Asked Questions about deprecation-and-migration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deprecate an API or system without breaking consumers?▼

Build a production-proven replacement first, announce the deprecation with a migration guide, then migrate consumers incrementally one at a time. Only remove the old system after metrics and logs verify zero active usage.

How to rename a database column without downtime?▼

Use the expand/contract pattern: add the new column as nullable, dual-write both columns, backfill existing rows in throttled batches, switch reads to the new column, then drop the old column in a separate later deploy.

What is the difference between advisory and compulsory deprecation?▼

Advisory deprecation uses warnings and documentation so users migrate on their own timeline, while compulsory deprecation sets a hard removal deadline. Default to advisory; use compulsory only when maintenance cost or security risk justifies forcing migration.

When should I use the Strangler pattern for migration?▼

Use the Strangler pattern when replacing a system that serves live traffic. Run old and new systems in parallel, route traffic incrementally from old to new, and remove the old system once it handles zero percent of traffic.

Why do database migrations fail during deployment rollouts?▼

Failures happen when a schema change ships in the same deploy as the code depending on it, so old and new code query incompatible shapes during the rollout window. Ship additive changes first and destructive drops in their own deploy.

What should I do with zombie code that nobody owns?▼

Zombie code with active consumers but no maintainer cannot stay in limbo. Either assign an owner who maintains it properly, or deprecate it with a concrete migration plan and removal timeline.