用途:在 CDS 仓库的 packages/migrator/src/transforms/ 下新增或更新 jscodeshift 迁移转换,处理 cds-web、cds-common、cds-mobile、web-visualization、mobile-visualization 等包的代码迁移,例如重命名、修改导入路径、替换表达式、映射枚举或字符串值、添加本地类型别名等。
主要能力与流程:先明确迁移的符号、目标结果、是否纳入 preset 及文件落点;判断 Web/移动端是一个还是两个转换;使用 Sourcegraph MCP 与仓库 grep 调研实际使用模式;建立用例矩阵并与用户确认哪些可自动化、哪些留 TODO 或手动;再实现转换、测试与预设清单。
使用方式:以 Nx + yarn 运行迁移命令,如 yarn nx run migrator:<target>。转换文件放在 transforms/<subdir>/<name>.ts 或 transforms 根目录,使用默认导出 transformer 并配合 transform-utils、package-scope、import-mapping 等工具。支持通过 --packageScope/-ps 限定包作用域,通过 --import-mapping '<from>=<to>' 或 cds-migrator.config.json 配置导入映射。测试用 runInlineTest 为主,少量配对 fixture 用 runTest,命令包括 yarn nx run migrator:test、migrator:typecheck、migrator:lint 和 yarn nx format:write --projects=migrator。
适用场景与限制:适合 CDS 生态的代码现代化与迁移;需要用户提供检索范围,Sourcegraph 未配置时需手动配置。提交内容需保持 OSS 安全,不得包含内部主机名、机密仓库或产品代号。预设清单仅用于需要纳入升级包的转换,独立转换可仅通过 CLI 运行。具体价格、平台支持等未提供。