将 50 个文件从 REST 迁移到 GraphQL
规划一次包含 50 个文件的从 REST 到 GraphQL 的迁移,将其拆分为互不冲突的工作包,并通过批量会话一次性运行所有工作包。使用 Ask Devin 确定迁移范围
你有 50 个文件从 这可以帮助你判断是否适合并行化处理。如果大多数文件在不同域之间高度耦合,那么按顺序迁移会更安全。在这里,8 个域中有 6 个是完全独立的——你可以并行迁移它们。
src/lib/restClient.ts 导入,需要迁移到新的 graphqlClient。在将工作拆分为并行任务之前,你需要了解这些文件之间是如何关联的。使用 Ask Devin 来梳理迁移的范围——哪些文件导入了旧版客户端、它们按业务域如何聚类,以及高风险的耦合关系分布在哪里。Devin 在底层使用了 DeepWiki 和语义搜索,因此它可以基于你的实际代码来回答这些问题。打开 Ask Devin 并提出以下问题:Ask Devin 会返回类似下面这样的拆解结果:创建迁移操作手册
每个并行会话都应遵循相同的迁移模式,这样生成的 PR 才能保持一致,并且便于审查。创建一个运行手册,明确规定每个文件应如何迁移。前往 Settings > Playbooks > Create Playbook 并定义以下步骤:也可以使用 Advanced Devin 为你自动生成运行手册——描述你的迁移模式,Devin 会生成一份完整的运行手册:在你的编排提示中引用这个运行手册,可以确保所有并行会话提交的 PR 看起来都像出自同一位开发者之手。
使用 Advanced Devin 启动多个并行会话
打开 Advanced Devin(Web 应用中的闪光图标),并向它提供编排指令。Advanced Devin 会分析你的代码库依赖关系图,创建独立的工作包,并为每个工作包启动一个批次会话——全部并行运行。Advanced Devin 会在启动任何操作之前,先给出一个分组方案供你审批:批准分组,并一次性启动这六个会话。先运行
Auth,在 Auth 合并后再运行 Admin。