关于 convex-migrate
convex-migrate 是用于在线 Convex 应用的模式与数据迁移技能,可避免现有记录因模式变更而失效。它先暂时将新字段设为可选,完成回填与验证后再收紧验证器。
主要功能
- 01先将新增字段设为可选
- 02回填并转换现有记录
- 03收紧验证器前验证数据
- 04比较迁移前后的记录数
适用场景
- 01为在线模式添加必填字段
- 02在迁移中转换现有记录
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ convex/ agent-skills --skill convex-migrate安装后在 Claude Code 中输入/convex-migrate确认已加载。
详细介绍
迁移线上应用的架构 / 数据
在不破坏现有数据的前提下更改已部署的架构:先暂存架构变更,安装 @convex-dev/migrations,编写一个回填脚本,让旧行满足要求,然后运行并验证,再收紧验证器。
工作流
- 首先将新字段设为可选(这样部署时不会因现有行而被拒绝)。
- 安装 @convex-dev/migrations;编写一个回填 / 转换现有行的迁移。
- 运行迁移;验证所有行都有效。
- 回填完成后收紧验证器(将字段设为必需)。
规则
- 回填完成前,绝不要收紧验证器——它会拒绝现有行,导致线上应用故障。
- 先将新字段设为可选,再迁移,最后设为必需。
- 验证迁移前后的行数。
评论
支持 Markdown