migration-specialist

Plan and implement safe database migrations with zero-downtime techniques.

3|Updated Apr 18, 2026
One-click install
npx skills add https://github.com/garochee33/DSH --skill migration-specialist-garochee33
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: migration-specialist
Source: https://github.com/garochee33/DSH/tree/main/agents/skills/migration-specialist
Command: npx skills add https://github.com/garochee33/DSH --skill migration-specialist-garochee33

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you evolve databases safely when your application needs new columns, renamed fields, backfills, or data reshaping without breaking production traffic.

Core Features & Use Cases

  • Safe schema changes: Add columns nullable first, backfill data, then enforce constraints and indexes.
  • Zero-downtime migrations: Use expand-contract patterns, triggers, and phased rollouts to avoid outages during schema changes.
  • Data transformation and verification: Process records in batches, run transactional transforms, and test that migrations are reversible.
  • Use case: A product team needs to rename a user email field in production while keeping the app online, so the migration is rolled out in phases and validated before the old column is removed.

Quick Start

Ask for a zero-downtime migration plan to add a new database column, backfill existing rows, and make it required safely.

Frequently Asked Questions about migration-specialist

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

FAQPage Schema
How do I rename a database column in production without downtime?

Zero-downtime schema migration uses an expand-contract pattern: add nullable columns first, backfill data in batches, deploy updated application code, then enforce constraints and remove old fields safely.

What is the expand-contract pattern for zero downtime database migrations?

The expand-contract pattern expands the schema by adding new nullable columns or tables, migrates data while both old and new structures coexist, and contracts by removing obsolete fields after application traffic shifts entirely to the new schema.

How do I safely backfill existing rows when adding a new required database column?

Safe backfills process records in batches within transactions to avoid locking tables. You add the column as nullable, populate existing rows incrementally, verify data integrity, and finally apply the required constraint after all rows are valid.

Can I use feature flags to support phased database schema rollouts?

Feature flags support phased schema rollouts by decoupling deployment from activation. You can deploy migration code and new schema changes behind flags, gradually enable traffic, validate data transforms, and reverse the migration if issues emerge.

When do I need reversible database migrations for production deployments?

Reversible database migrations are needed for production deployments whenever schema evolution or data transformation carries risk of failure. They ensure you can rollback structural changes and restore prior data states during phased rollouts without causing outages.

What are the limitations of running schema changes and data transforms in a single transaction?

Running large schema changes and data transforms in a single transaction can cause long table locks and production outages. To avoid this limitation, break transformations into batched transactions and use phased deployment workflows.