convex-migration-helper

Executes breaking Convex schema/data migrations using widen-migrate-narrow workflow and @convex-dev/migrations batched backfills without downtime.

Updated Apr 22, 2026
One-click install
npx skills add https://github.com/wixels/sab-colour-profile --skill convex-migration-helper-wixels
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: convex-migration-helper
Source: https://github.com/wixels/sab-colour-profile/tree/main/packages/backend/.agents/skills/convex-migration-helper
Command: npx skills add https://github.com/wixels/sab-colour-profile --skill convex-migration-helper-wixels

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Convex enforces strict schema validation that blocks deployments with breaking changes, and manual data migrations risk downtime, data loss, or incomplete backfills for existing production data.

Core Features & Use Cases

  • Widen-Migrate-Narrow Workflow: Implements the proven multi-deploy pattern to safely handle breaking schema changes without service interruption.
  • @convex-dev/migrations Integration: Uses the official Convex migrations component for batched, resumable, fault-tolerant data backfills even on large production tables.
  • Pre-built Migration Patterns: Provides ready-to-use solutions for common tasks like adding required fields, changing field types, splitting nested data into separate tables, and cleaning up orphaned documents. Use case example: If you need to add a required role field to an existing users table with thousands of active production documents, this skill guides you through every step to avoid user-facing errors or downtime.

Quick Start

Ask the AI to plan and execute your Convex schema migration by specifying the breaking change you need to make, the current structure of your existing data, and whether you require zero-downtime support.

Frequently Asked Questions about convex-migration-helper

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

FAQPage Schema
How do I add a required field to an existing Convex table without downtime?

To add a required field to existing Convex tables without downtime, use a widen-migrate-narrow workflow. This multi-deploy pattern safely handles breaking schema changes by widening validation first, backfilling existing documents, then narrowing the schema.

Why does Convex schema validation block my deployments when changing field types?

Convex schema validation blocks deployments with breaking changes because it strictly enforces type checking to prevent production data corruption. You must use a multi-deploy workflow to transition field types safely without triggering validation errors.

What is the best way to backfill large production data in Convex?

The best way to backfill large production data in Convex is using the @convex-dev/migrations component. It provides batched, resumable, and fault-tolerant data backfills to ensure existing documents update safely without interrupting active production services.

Can I split nested data into separate tables in Convex without service interruption?

Yes, you can split nested data into separate Convex tables without service interruption by using zero-downtime dual-read and dual-write strategies. This allows the application to query both structures simultaneously while data backfills complete in the background.

How do I clean up orphaned documents during a Convex schema migration?

To clean up orphaned documents during a Convex schema migration, use pre-built migration patterns. These patterns integrate batched backfill processes to identify and remove isolated data safely while maintaining zero-downtime production operations.