Fix worktree list option forwarding

Co-authored-by: Orca <help@stably.ai>
This commit is contained in:
brennanb2025
2026-07-09 13:35:24 -07:00
committed by Brennan Benson
co-authored by Orca
parent 29a68f62cc
commit 33b87c68e1
2 changed files with 10 additions and 2 deletions
+8 -2
View File
@@ -9,6 +9,10 @@ type LocalRepoWorktreeListOptions = {
signal?: AbortSignal
}
function hasLocalRepoWorktreeListOptions(options: LocalRepoWorktreeListOptions | undefined) {
return options?.wslDistro !== undefined || options?.signal !== undefined
}
export function isRepoRoot(repos: Repo[], resolvedTarget: string): boolean {
return repos.some(
(repo) => !repo.connectionId && areWorktreePathsEqual(repo.path, resolvedTarget)
@@ -30,7 +34,7 @@ export function createFolderWorktree(repo: Repo): GitWorktreeInfo {
export async function listRepoWorktrees(
repo: Repo,
options: LocalRepoWorktreeListOptions = {}
options?: LocalRepoWorktreeListOptions
): Promise<GitWorktreeInfo[]> {
if (isFolderRepo(repo)) {
return [createFolderWorktree(repo)]
@@ -42,5 +46,7 @@ export async function listRepoWorktrees(
// local git against a server path.
return provider ? await provider.listWorktrees(repo.path) : []
}
return await listWorktrees(repo.path, options)
return hasLocalRepoWorktreeListOptions(options)
? await listWorktrees(repo.path, options)
: await listWorktrees(repo.path)
}
@@ -557,6 +557,8 @@ export default function WorkspaceCleanupDialog(): React.JSX.Element {
deleteState.error === null &&
deleteState.phase === 'queued'
) {
// Why: candidates that fail before removal starts would otherwise
// stay marked "Queued for deletion" in the sidebar indefinitely.
clearWorktreeDeleteState(failure.worktreeId)
}
}