From 20b78bbd1595f36ae9208d258eee3d434a0adac1 Mon Sep 17 00:00:00 2001 From: Brennan Benson <79079362+brennanb2025@users.noreply.github.com> Date: Fri, 23 Oct 2026 15:40:18 -0700 Subject: [PATCH] Explain agent startup failures in plain words (#31932) * fix(terminal): explain agent startup failures in plain words * fix(i18n): use the established Japanese agent label * fix(terminal): preserve uncertainty in startup error messages * Reuse pane agent identity and bound startup toast work * test: render startup notices with shipped locale catalogs --- .../terminal-pane/AgentLaunchPaneNotice.tsx | 8 +- .../terminal-pane/TerminalErrorToast.test.ts | 106 ++++++++++++++++++ .../terminal-pane/TerminalErrorToast.tsx | 12 +- .../terminal-pane/TerminalPaneSurface.tsx | 3 + .../agent-launch-pane-notice-text.ts | 81 +++++++++++-- .../agent-launch-pane-notice.test.ts | 88 ++++++++++----- .../terminal-pane-element-file-drop.test.tsx | 1 + .../use-terminal-pane-projection.ts | 6 +- src/renderer/src/i18n/locales/en.json | 13 ++- src/renderer/src/i18n/locales/es.json | 13 ++- src/renderer/src/i18n/locales/fr.json | 13 ++- src/renderer/src/i18n/locales/ja.json | 13 ++- src/renderer/src/i18n/locales/ko.json | 13 ++- src/renderer/src/i18n/locales/pt.json | 13 ++- src/renderer/src/i18n/locales/zh.json | 13 ++- 15 files changed, 315 insertions(+), 81 deletions(-) diff --git a/src/renderer/src/components/terminal-pane/AgentLaunchPaneNotice.tsx b/src/renderer/src/components/terminal-pane/AgentLaunchPaneNotice.tsx index 6f6a29ac67e..32576386691 100644 --- a/src/renderer/src/components/terminal-pane/AgentLaunchPaneNotice.tsx +++ b/src/renderer/src/components/terminal-pane/AgentLaunchPaneNotice.tsx @@ -11,9 +11,11 @@ import { agentLaunchPaneNoticeText } from './agent-launch-pane-notice-text' */ export function AgentLaunchPaneNotice({ refusal, + agentId, tabId }: { refusal: AgentLaunchPaneOutcome + agentId?: string | null tabId: string }): React.JSX.Element { const prompt = agentLaunchPanePrompt(tabId) @@ -22,7 +24,7 @@ export function AgentLaunchPaneNotice({ data-agent-launch-pane-notice={refusal.kind} className="pointer-events-auto absolute inset-x-3 bottom-3 z-50 flex items-start justify-between gap-3 rounded-md border border-border bg-popover px-3.5 py-2.5 text-xs text-popover-foreground" > - {agentLaunchPaneNoticeText(refusal)} + {agentLaunchPaneNoticeText(refusal, agentId)} {prompt ? (