Skip to content

Contain kernel boot failures - #12022

Merged
iHiD merged 1 commit into
mainfrom
contain-kernel-boot-failures
Oct 28, 2026
Merged

iHiD merged 1 commit into
mainfrom
contain-kernel-boot-failures

Conversation

@iHiD

@iHiD iHiD commented Oct 28, 2026

Copy link
Copy Markdown
Member

A low-end Android tablet hit a wasm trap while booting the C++ kernel. That one failure produced two unhandled errors in Sentry (EXERCISM-JS-PH and EXERCISM-JS-PG), although the run still fell back to the server.

The kernel now cancels its worker's error event and sends one handled Sentry event instead, tagged with the language, the kernel version and navigator.deviceMemory when the browser exposes it. It also handles the event subscription's rejection and terminates the worker of a kernel that fails to boot. The pool stops booting kernels for a language once one has failed to boot on the page, so later runs go straight to the server instead of downloading and unpacking the sysroot again.

The manifest entry now carries its language, which lookup adds, so the pool and the Sentry tags can use it. There are new jest tests for the kernel and the pool.

🤖 Generated with Claude Code

When the kernel's wasm traps, the worker's error now stays out of the
page's error handler and is reported once as a handled Sentry event,
tagged with the language, kernel version and device memory. The event
subscription's rejection is handled, a kernel that fails to boot has
its worker terminated, and a language whose kernel failed to boot stops
booting kernels for the rest of the page, so its runs go to the server.

Fixes EXERCISM-JS-PH
Fixes EXERCISM-JS-PG

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@iHiD
iHiD requested a review from dem4ron as a code owner October 28, 2026 12:07
@iHiD
iHiD merged commit 9b9a32c into main Oct 28, 2026
29 checks passed
@iHiD
iHiD deleted the contain-kernel-boot-failures branch October 28, 2026 12:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant