(msg: string)
| 339 | // fast-resume (rev-parse HEAD) would succeed and present a broken worktree |
| 340 | // as "resumed". Tear it down before propagating the error. |
| 341 | const tearDown = async (msg: string): Promise<never> => { |
| 342 | await execFileNoThrowWithCwd( |
| 343 | gitExe(), |
| 344 | ['worktree', 'remove', '--force', worktreePath], |
| 345 | { cwd: repoRoot }, |
| 346 | ) |
| 347 | throw new Error(msg) |
| 348 | } |
| 349 | const { code: sparseCode, stderr: sparseErr } = |
| 350 | await execFileNoThrowWithCwd( |
| 351 | gitExe(), |
no test coverage detected