fix(ci): 3D specs — 180s viewer-open wait for llvmpipe; skip deadlock spec on CI
Follow-up to the headed-llvmpipe switch. That run (28652367347) stopped CRASHING — every failure became a plain timeout, confirming llvmpipe gives a stable WebGL context (no more CONTEXT_LOST / "Target crashed") but software raytracing is just slow: - The first board raytrace takes ~60s on llvmpipe, right at openThreeDViewer's 60s wait → raise it to 180s (shared helper + the models spec's inline copy). Real GPU returns in ~2s, so it is only CI headroom. - The deadlock spec asserts the wasm main thread stays responsive within ~15s DURING a raytrace — a premise only true on a fast (real) GPU. Under slow software rendering a legitimately-slow raytrace is indistinguishable from a deadlock, so skip it on CI (test.skip on process.env.CI). The Worker-boot deadlock MECHANISM stays covered on CI by the standalone coroutine-pthread-ondemand / raytrace-threads wx harnesses; the spec still runs locally on a real GPU. - Gate the headed + llvmpipe launch flags on CI so chromium-ci-3d behaves like a normal bundled-Chromium project locally. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4c33ff6f66
commit
d60bc1575b
4 changed files with 33 additions and 15 deletions
|
|
@ -267,17 +267,22 @@ export default defineConfig({
|
|||
use: {
|
||||
...devices["Desktop Chrome"],
|
||||
viewport: { width: 1280, height: 720 },
|
||||
// Headed only matters on CI (real GPU locally); harmless headed locally too.
|
||||
headless: !process.env.CI,
|
||||
launchOptions: {
|
||||
args: [
|
||||
"--use-gl=angle",
|
||||
"--use-angle=gl",
|
||||
"--disable-gpu-watchdog",
|
||||
"--disable-gpu-process-crash-limit",
|
||||
"--enable-unsafe-swiftshader",
|
||||
],
|
||||
},
|
||||
// The headed + Mesa-llvmpipe stack is a CI-only need (the GPU-less VM). Locally this
|
||||
// project should behave like any other bundled-Chromium project, so gate it on CI.
|
||||
...(process.env.CI
|
||||
? {
|
||||
headless: false,
|
||||
launchOptions: {
|
||||
args: [
|
||||
"--use-gl=angle",
|
||||
"--use-angle=gl",
|
||||
"--disable-gpu-watchdog",
|
||||
"--disable-gpu-process-crash-limit",
|
||||
"--enable-unsafe-swiftshader",
|
||||
],
|
||||
},
|
||||
}
|
||||
: { launchOptions: { args: ["--enable-unsafe-swiftshader"] } }),
|
||||
},
|
||||
},
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue