schema-migration-planner

Plan zero-downtime database schema migrations for Kotlin and Spring systems.

4|Updated Jun 10, 2026
One-click install
npx skills add https://github.com/mymx2/foreman --skill schema-migration-planner-mymx2
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: schema-migration-planner
Source: https://github.com/mymx2/foreman/tree/main/.qoder/skills.collected/skills/schema-migration-planner
Command: npx skills add https://github.com/mymx2/foreman --skill schema-migration-planner-mymx2

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill mitigates the high risk of database schema changes in production environments by providing a structured, phased approach to evolution that prevents downtime and data corruption.

Core Features & Use Cases

  • Phased Rollout Planning: Orchestrates complex migrations using expand, contract, and backfill patterns to ensure backward compatibility.
  • Operational Risk Assessment: Identifies potential bottlenecks like table locks, replication lag, and CDC consumer issues before they impact live traffic.
  • Use Case: When renaming a column or changing a data type in a high-traffic Kotlin/Spring application, use this skill to generate a multi-step migration plan that keeps the system operational during the transition.

Quick Start

Use the schema-migration-planner skill to generate a zero-downtime migration strategy for adding a non-nullable column to the users table.

Frequently Asked Questions about schema-migration-planner

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

FAQPage Schema
How do I perform zero-downtime database schema migrations in a Spring application?

Zero-downtime database schema migrations in Spring require a phased rollout approach using expand, contract, and backfill patterns to maintain backward compatibility. This planning method validates migration sequences against operational constraints like table locks and replication lag.

What is the best way to rename a database column without breaking live traffic?

Renaming a database column without breaking live traffic requires a multi-step expand and contract migration plan. This approach introduces the new column, backfills existing data, and safely removes the old column while keeping the system operational during the transition.

Can I use this schema migration planner for large datasets with strict backward-compatibility requirements?

Yes, this schema migration planner handles complex scenarios involving large datasets and strict backward-compatibility requirements. It assesses operational risks like table locking, replication lag, and CDC consumer issues to validate migration sequences before impacting live traffic.

How do I safely add a non-nullable column to a high-traffic Kotlin database table?

Safely adding a non-nullable column to a high-traffic Kotlin database table requires a multi-step migration plan. This strategy uses backfill patterns and operational risk validation to ensure the transition does not cause downtime or data corruption.

What operational constraints are checked when planning a database schema evolution?

Planning database schema evolution checks operational constraints like table locking, replication lag, and backfill performance. This validation identifies potential bottlenecks and CDC consumer issues before they impact live production traffic.

Why does changing a data type in a production database cause downtime?

Changing a data type in a production database causes downtime when migration sequences fail to account for table locks and replication lag. A structured expand, contract, and backfill approach validates backward compatibility to prevent these operational bottlenecks.