Parcourir la source

fix(opencode): cleanup orphaned worktree directories (#12399)

Maharshi Patel il y a 1 semaine
Parent
commit
89064c34c5
1 fichiers modifiés avec 6 ajouts et 1 suppressions
  1. 6 1
      packages/opencode/src/worktree/index.ts

+ 6 - 1
packages/opencode/src/worktree/index.ts

@@ -411,8 +411,13 @@ export namespace Worktree {
         if (key === directory) return item
       }
     })()
+
     if (!entry?.path) {
-      throw new RemoveFailedError({ message: "Worktree not found" })
+      const directoryExists = await exists(directory)
+      if (directoryExists) {
+        await fs.rm(directory, { recursive: true, force: true })
+      }
+      return true
     }
 
     const removed = await $`git worktree remove --force ${entry.path}`.quiet().nothrow().cwd(Instance.worktree)