[wasm] Bump helix V8 image and re-enable exnref CI legs (#129849)#130511
Merged
lewing merged 3 commits intoJul 11, 2026
Conversation
…otnet#129849) The ubuntu-26.04 helix-webassembly image now bakes V8 15.2.47, which supports --experimental-wasm-exnref. Bump the pinned digest and revert the two temporary workarounds (sendToHelix:false for Mono runtime tests, SkipTrimmingTestsRun=true for trimming tests) that were skipping V8 execution while the old V8 15.0.243 image was in use.
…or (dotnet#129849) UpdateChromeVersions derives the V8 version from the Chrome milestone, which already reverted the pinned V8 below the exnref-capable floor (15.1.103) once. Add a minimum-version guard that keeps the existing V8 version whenever the recomputed value would drop below the floor, mirroring the existing CDN-unavailable fallback.
…et#129849) With the atob feature-detection polyfill (dotnet#130142) covering both the Mono and CoreCLR loaders and an exnref-capable V8 now in the helix image and pinned in BrowserVersions.props, restore the perf wasm v8 PR trigger and the CoreCLR WasmTestOnV8 smoke scenario that were disabled while the engine could not run exnref.
Member
Author
|
/azp run runtime-wasm |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Contributor
|
Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the WebAssembly CI infrastructure to run standardized WASM exception handling (exnref) again by bumping the Linux Helix webassembly image digest to a V8 build that supports exnref, re-enabling previously-disabled V8-based CI legs, and hardening the Chrome→V8 auto-update task to prevent accidental downgrades below a known-good V8 floor.
Changes:
- Bump
ubuntu-26.04-helix-webassembly-amd64Helix queue image digest in both CoreCLR and Libraries pipeline queue setup templates. - Re-enable V8 execution legs for WASM runtime tests, trimming tests, perf wrapper PR triggers, and the CoreCLR V8 smoke scenario.
- Add a minimum V8 version guard (15.1.103) to the Chrome/V8 version updater task to prevent silent downgrades below the exnref-capable baseline.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/tasks/WasmBuildTasks/UpdateChromeVersions.cs | Adds a minimum V8 floor and reuses a helper to keep the existing pinned V8 version when computed values would regress below the floor or when CDN artifacts are unavailable. |
| eng/pipelines/runtime.yml | Re-enables the WasmTestOnV8 smoke scenario for CoreCLR WASM runs. |
| eng/pipelines/runtime-linker-tests.yml | Removes the trimming-test skip flag so trimming tests execute on V8 again. |
| eng/pipelines/performance/runtime-wasm-perf.yml | Restores PR triggering (with path filters) for the WASM perf wrapper pipeline. |
| eng/pipelines/libraries/helix-queues-setup.yml | Updates the Linux Helix webassembly container digest for WASI / browser WASM / Firefox legs. |
| eng/pipelines/coreclr/templates/helix-queues-setup.yml | Updates the Linux Helix webassembly container digest for CoreCLR browser WASM legs (public/internal). |
| eng/pipelines/common/templates/wasm-runtime-tests.yml | Removes the sendToHelix: false override so Mono WASM runtime tests are sent to Helix again. |
Member
Author
|
This was referenced Jul 10, 2026
Open
lewing
approved these changes
Jul 11, 2026
Member
|
/ba-g x86 failure unrelated |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #129849
Background
The exnref migration (#129851) exposed CI failures on the WASM legs.
#130142 fixed —
wasm-feature-detect'sexceptionsFinal()usedatob.Changes
Bump the Linux Helix WebAssembly image to an exnref-capable V8
ubuntu-26.04-helix-webassembly-amd64→@sha256:73db6e43…(V8 15.2.47, verified locally by pulling the image and runningd8). Previous pin baked V8 15.0.243.eng/pipelines/coreclr/templates/helix-queues-setup.ymlandeng/pipelines/libraries/helix-queues-setup.yml.Re-enable the CI legs disabled against this issue
eng/pipelines/common/templates/wasm-runtime-tests.yml— removedsendToHelix: false(Mono runtime tests run on Helix again).eng/pipelines/runtime-linker-tests.yml— removedSkipTrimmingTestsRun=true(trimming tests execute on V8 again).eng/pipelines/performance/runtime-wasm-perf.yml— restored the originalpr:trigger (waspr: none).eng/pipelines/runtime.yml— re-enabled the CoreCLRWasmTestOnV8smoke scenario.Harden the Chrome/V8 auto-updater
src/tasks/WasmBuildTasks/UpdateChromeVersions.cs— add a minimum-version guard so a Chrome-milestone-derived V8 can no longer silently downgrade the pinned*_V8Versionbelow the exnref floor (15.1.103), which had already reverted the pins once via the automated bump. When the recomputed value would drop below the floor, the existing version is kept (mirroring the existing CDN-unavailable fallback).