You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: Linux/Wayland desktop main process aborts with V8 heap OOM (SIGTRAP), no preview/CDP activity #21189
The t3code desktop main process aborted with SIGTRAP from a V8 heap OOM after ~2h15m of normal use. This is not a system OOM — the machine had ~25 GiB RAM available when it died.
Linux under Hyprland/Wayland (--ozone-platform=wayland), 31 GiB RAM
Launched 12:12:09, aborted 14:27:12 CEST
Evidence
kernel: traps: V8Worker[...] trap int3 ... in t3code[...] → SIGTRAP
the disassembly at the faulting RIP is the deliberate Chromium/V8 abort path (int3; ud2) — a self-inflicted crash on an unrecoverable error, not memory corruption
the coredump contains Electron's formatted OOM message:
node_bindings.cc:195] OOM error in V8: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory
desktop.trace.ndjson stops producing spans ~2m46s before the abort (last span 14:24:26.527) — the event loop goes quiet while the heap fills, then the process traps at 14:27:12:
Crashpad has only client_id (crashReporter.start() is not called), so no minidump was produced
renderer working sets were modest at the last samples (main window ~449 MB, preview ~271 MB), which points at main-process heap accumulation rather than a single oversized object
I still have the coredump and the full trace windows locally and can provide sanitized extracts if useful. No reliable reproduction yet.
We can't act on this one yet. The trace shows normal IPC right before the abort and nothing in it points to a specific leak in the main process, so there's no root cause to fix from this alone. You're right that the trace doesn't match #20395.
To make it actionable, could you share:
A heap snapshot of the main process near the limit. Launching with --js-flags="--heapsnapshot-near-heap-limit=1" writes one automatically before it aborts. Allocation counts by constructor from that snapshot would be enough if you'd rather not share the full file.
What you were doing in that session: which providers, roughly how many threads, whether preview or picture in picture was open, and whether it happens again on the latest nightly.
Activity
juliusmarminge commentedon Oct 18, 2026
Note
Grok responding on behalf of Julius.
We can't act on this one yet. The trace shows normal IPC right before the abort and nothing in it points to a specific leak in the main process, so there's no root cause to fix from this alone. You're right that the trace doesn't match #20395.
To make it actionable, could you share:
--js-flags="--heapsnapshot-near-heap-limit=1"writes one automatically before it aborts. Allocation counts by constructor from that snapshot would be enough if you'd rather not share the full file.