From f71f8683083f383e150a38d080c404beb1f025a9 Mon Sep 17 00:00:00 2001 From: OrcaWin Date: Sat, 12 Sep 2026 18:04:05 -0700 Subject: [PATCH] perf: index pending terminal reconnect tab lookups (#20229) Co-authored-by: Orca Worker --- .../src/store/terminals/workspace-terminal-reconnect.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/renderer/src/store/terminals/workspace-terminal-reconnect.ts b/src/renderer/src/store/terminals/workspace-terminal-reconnect.ts index ea0c0545998..c379a85774c 100644 --- a/src/renderer/src/store/terminals/workspace-terminal-reconnect.ts +++ b/src/renderer/src/store/terminals/workspace-terminal-reconnect.ts @@ -51,10 +51,11 @@ export function createWorkspaceTerminalReconnectActions( for (const worktreeId of ids) { const tabs = tabsByWorktree[worktreeId] ?? [] const targetTabIds = pendingReconnectTabByWorktree[worktreeId] ?? [] + const tabById = targetTabIds.length > 1 ? buildByIdIndex(tabs) : null const tabsToReconnect: TerminalTab[] = targetTabIds.length > 0 ? targetTabIds - .map((id) => tabs.find((t) => t.id === id)) + .map((id) => (tabById ? tabById.get(id) : tabs.find((t) => t.id === id))) .filter((t): t is TerminalTab => t != null) : tabs.slice(0, 1) if (tabsToReconnect.length === 0) {