English
主导航
Codex

Codex 用例

运行代码迁移

在可控的检查点完成旧技术栈迁移。

难度 高级
时间周期 1h

使用 Codex 将遗留系统映射到新技术栈,分阶段完成迁移,并在每次过渡前验证一致性。

适用场景

  • 框架、运行时、构建系统或平台规范需要发生改变的从旧到新技术栈的迁移。
  • 需要兼容层、分阶段过渡,以及在每次迁移检查点进行显式验证的团队。

目录

    ← 所有用例

    运行代码迁移

    在可控的检查点完成旧技术栈迁移。

    使用 Codex 将遗留系统映射到新技术栈,分阶段完成迁移,并在每次过渡前验证一致性。

    高级
    1h

    使用 Codex 将遗留系统映射到新技术栈,分阶段完成迁移,并在每次过渡前验证一致性。

    高级
    1h

    适用场景

    • 框架、运行时、构建系统或平台规范需要发生改变的从旧到新技术栈的迁移。
    • 需要兼容层、分阶段过渡,以及在每次迁移检查点进行显式验证的团队。

    技能与插件

    • 在合并前检查有风险的迁移、依赖项变更和暴露的接口。
    • 在每个迁移里程碑之后解决 CI 失败问题,而不是将清理工作留到最后。
    • 当迁移涉及 ASP.NET Core 应用模型、`Program.cs`、中间件、测试、性能或版本升级时,请使用特定于框架的指导。
    技能 为什么使用它
    安全最佳实践 在合并前检查有风险的迁移、依赖项变更和暴露的接口。
    Gh 修复 CI 在每个迁移里程碑之后解决 CI 失败问题,而不是将清理工作留到最后。
    Aspnet Core 当迁移涉及 ASP.NET Core 应用模型、`Program.cs`、中间件、测试、性能或版本升级时,请使用特定于框架的指导。

    起始提示词

    将此代码库从 [旧技术栈或系统] 迁移到 [目标技术栈或系统]。要求: - 首先盘点旧系统的假设前提:路由、数据模型、身份验证、配置、构建工具、测试、部署和外部约定。 - 将旧技术栈映射到新技术栈,并指出任何没有直接对应项的内容。 - 提出带有兼容层或检查点的渐进式迁移计划,而不是一次性重写。 - 除非迁移明确要求进行用户可见的更改,否则保持行为不变。 - 分里程碑进行工作,并在每个里程碑之后运行 lint、类型检查和针对性测试。 - 在过渡完成之前,保持回滚或回退选项可见。 - 如果验证失败,请在继续之前进行修复。 - 从映射迁移范围并提出检查点计划开始。
    将此代码库从 [旧技术栈或系统] 迁移到 [目标技术栈或系统]。要求: - 首先盘点旧系统的假设前提:路由、数据模型、身份验证、配置、构建工具、测试、部署和外部约定。 - 将旧技术栈映射到新技术栈,并指出任何没有直接对应项的内容。 - 提出带有兼容层或检查点的渐进式迁移计划,而不是一次性重写。 - 除非迁移明确要求进行用户可见的更改,否则保持行为不变。 - 分里程碑进行工作,并在每个里程碑之后运行 lint、类型检查和针对性测试。 - 在过渡完成之前,保持回滚或回退选项可见。 - 如果验证失败,请在继续之前进行修复。 - 从映射迁移范围并提出检查点计划开始。

    简介

    当您从一种技术栈迁移到另一种技术栈时,您可以利用 Codex 来映射并执行受控迁移:路由、数据模型、配置、身份验证、后台作业、构建工具、部署、测试,甚至是语言和框架规范本身。

    Codex 在这里非常有用,因为它可以盘点遗留系统,将旧概念映射到新概念,并以检查点的形式落实更改,而不是一次性全面重写。当您准备放弃旧框架、移植到新运行时,或者在产品仍需正常运行的情况下逐步替换技术栈时,这一点至关重要。

    如何使用

    1. 首先盘点迁移范围:旧包、框架规范、路由、数据访问、身份验证、配置、构建工具、测试、部署假设,以及任何必须在迁移中保留的外部约定。
    2. 让 Codex 将旧概念映射到目标技术栈,并指出哪些没有直接匹配的对应项。
    3. 选择渐进式策略:兼容层、逐模块移植、分支 abstraction(Branch-by-abstraction),或者围绕单一边界进行绞杀者模式(Strangler)替换。
    4. 在迁移本身迫使发生可见变更之前,保持行为稳定,并明确指出这些例外情况。
    5. 在每个里程碑之后,运行最少的验证以证明一致性:lint、类型检查、针对性测试、契约测试、冒烟测试,或与旧路径的并行比对。
    6. 在每个检查点之后审查差异和剩余的过渡风险,而不是等待全面重写后再进行。

    利用 ExecPlans

    In our 代码现代化手册,我们引入了 ExecPlan:这些文档让 Codex 能够保持对清理工作的全局掌控,详细说明预期的最终状态,并在每次运行后记录验证结果。当你要求 Codex 执行复杂的迁移时,请让它为系统的每个部分创建一个 ExecPlan,以确保每个决策和技术栈选择都被记录下来,以便日后审查。

    结合目标

    对于长时间运行的迁移切片,请使用 目标 来指导 Codex 完成工作。设定具有明确终态、一致性检查、回滚预期和停止条件的目标。

    相关用例