diff --git a/src/components/TranslatePanel.tsx b/src/components/TranslatePanel.tsx index be60664..539c305 100644 --- a/src/components/TranslatePanel.tsx +++ b/src/components/TranslatePanel.tsx @@ -158,7 +158,13 @@ export function TranslatePanel({ break; } }; - worker.onerror = (event) => fail(event.message ?? "", "worker-crash"); + // An empty crash message is the silent OOM tab-kill signature (D-027, + // D-030) — say so in words the "translate" stage classifies as OOM. + worker.onerror = (event) => + fail( + event.message || "The translation stopped: the browser ran out of memory.", + "worker-crash", + ); const request: TranslateRequest = { type: "translate", requestId,