diff --git a/crates/agent_ui/src/thread_worktree_archive.rs b/crates/agent_ui/src/thread_worktree_archive.rs index 795dd0ba700e1df275ac487bc21fcc08597fb356..c43bc48aa79765c6e2b5c250f4d7b9c223103df8 100644 --- a/crates/agent_ui/src/thread_worktree_archive.rs +++ b/crates/agent_ui/src/thread_worktree_archive.rs @@ -1115,7 +1115,9 @@ pub async fn restore_worktree_via_git( // Check if the branch exists and points at original_commit_hash. // If it does, switch to it. If not, create a new branch there. let rx = wt_repo.update(cx, |repo, _cx| repo.change_branch(branch_name.clone())); - if matches!(rx.await, Ok(Ok(()))) { + let switched = matches!(rx.await, Ok(Ok(()))); + + if switched { // Verify the branch actually points at original_commit_hash after switching let head_after_switch = wt_repo .update(cx, |repo, _cx| repo.head_sha())