用途:这是一个交互式 SKILL,帮助 Java 企业开发者为数据库架构或数据含义变更设计 Parallel Change(并行变更)迁移方案,判断是否需要兼容窗口,并把变更拆分为 expand、migrate、contract 三个可独立部署的步骤。
主要能力:决定迁移是否需要兼容窗口;按 expand、migrate、contract 排序;在发布与回滚窗口内保留新旧应用版本共存;处理列重命名、类型或数据重新解释、大批量回填、关系表变更、索引或唯一性变更;说明临时双路径、额外迁移、验证成本与延迟清理等权衡;策略确定后把框架实现交给 Spring Boot、Quarkus 或 Micronaut 的 Flyway 技能。
使用方式:先阅读 references/055-design-parallel-change.md,再识别架构形态、数据含义、应用读写路径、发布窗口、回滚预期与生产数据风险;判断采用 Parallel Change 还是更简单的单向迁移;若采用则把 expand、migrate、contract 拆为独立可部署步骤,expand 与 migrate 期间保持旧结构有效,待所有已部署代码与数据迁移到新结构后再 contract;规划验证与运维,包括上一版本夹具检查、行数预期、重复检测、回填监控、回滚行为与清理责任;策略明确后使用 313-frameworks-spring-db-migrations-flyway、413-frameworks-quarkus-db-migrations-flyway 或 513-frameworks-micronaut-db-migrations-flyway 处理框架相关依赖、配置、迁移位置与测试;最后报告所选方案、被拒替代方案、序列或更简单迁移、验证证据、清理触发条件、权衡、跳过的检查与剩余风险。
适用场景:列重命名、类型或数据含义变更、大批量回填、关系表变更、索引或唯一性变更,以及需要零停机或新旧版本共存的迁移。
限制:必须把 Parallel Change 作为数据库迁移设计模式使用,实现细节交给框架专用迁移技能;若变更属于增量、立即安全且无需新旧应用版本共存,必须推荐更简单的单次迁移;必须说明兼容性、数据保留、验证与清理的权衡。具体命令、配置与代码示例暂未提供。