convex-migrate

作者: get-convex

使用 @convex-dev/migrations 在已部署的 Convex 應用程式上遷移 schema 並回填資料。

npx skills add https://github.com/get-convex/agent-skills --skill convex-migrate

Migrate the schema / data on a live app

Change a deployed schema without breaking existing data: stage the schema change, install @convex-dev/migrations, write a backfill that makes old rows valid, run it, and verify before tightening the validator.

Workflow

  1. Make the new field optional first (so deploy doesn't reject existing rows).
  2. Install @convex-dev/migrations; write a migration that backfills/transforms existing rows.
  3. Run the migration; verify all rows are valid.
  4. Tighten the validator (make the field required) once the backfill is complete.

Rules

  • Never tighten a validator before the backfill completes — it rejects existing rows and breaks the live app.
  • Add new fields as optional first, migrate, then require.
  • Verify row counts before and after.

來自 get-convex 的更多技能

convex-performance-audit
get-convex
審計Convex在讀取、訂閱、寫入競爭及函數限制方面的效能。適用於功能緩慢、洞察發現、OCC衝突或讀取放大等情況。
developmentdatabasedata-analysis
convex
get-convex
將一般 Convex 請求路由至正確的專案技能。當使用者詢問該使用哪個 Convex 技能,或給出未明確指定的 Convex 應用任務時使用。
developmentdatabase
convex-setup-auth
get-convex
設定 Convex 驗證、身份映射與存取控制。用於 Convex 應用中的登入、驗證提供者、使用者資料表、受保護函式或角色。
developmentdatabaseapi
convex-quickstart
get-convex
建立或將 Convex 加入應用程式。適用於新的 Convex 專案、npm create convex@latest、前端設定、環境變數,或首次執行 npx convex dev。
developmentdatabase
convex-migration-helper
get-convex
使用 widen-migrate-narrow 和 @convex-dev/migrations 規劃 Convex 架構與資料遷移。適用於破壞性架構變更、資料回填、資料表重塑或零停機部署。
developmentdatabase
convex-create-component
get-convex
構建可重複使用的 Convex 元件,包含獨立的資料表與面向應用程式的 API。適用於新元件、可重複使用的後端模組、整合或元件邊界工作。
developmentdatabase
convex-optimize
get-convex
審計並優化現有的 Convex 應用程式:安全性、擴展性、升級與可觀測性。
convex-env
get-convex
為應用程式設置並連接 Convex 部署的環境變數/密鑰。