{"record":{"id":"e7fb1d5f9b5a1fe1","repo":"stablyai/orca","slug":"expected-disable-gpu-sandbox-on-linux-wayland-b","errorCode":null,"errorMessage":"Expected --disable-gpu-sandbox on Linux Wayland, but it was absent.","messagePattern":"Expected --disable-gpu-sandbox on Linux Wayland, but it was absent\\.","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"config/scripts/verify-linux-wayland-gpu-sandbox.mjs","lineNumber":275,"sourceCode":"      rendererSetupTimeoutMs\n    )\n    logPhase(\n      'app.switches',\n      `disableGpuSandbox=${commandLineSwitches.disableGpuSandbox} disableGpu=${commandLineSwitches.disableGpu}`\n    )\n\n    if (mode === 'expect-repro' && commandLineSwitches.disableGpuSandbox) {\n      throw new MissingReproductionError(\n        'Base run already has --disable-gpu-sandbox; cannot validate the unfixed Wayland path.'\n      )\n    }\n    if (mode === 'expect-repro' && commandLineSwitches.disableGpu) {\n      throw new MissingReproductionError(\n        'Base run has --disable-gpu; hardware acceleration is disabled and would mask the GPU sandbox path.'\n      )\n    }\n    if (mode === 'verify-fix' && !commandLineSwitches.disableGpuSandbox) {\n      throw new Error('Expected --disable-gpu-sandbox on Linux Wayland, but it was absent.')\n    }\n    if (mode === 'verify-fix' && commandLineSwitches.disableGpu) {\n      throw new Error('Expected hardware acceleration to remain enabled, but --disable-gpu is set.')\n    }\n\n    logPhase('window.first')\n    page = await runWithTimeout('first renderer window', () => app.firstWindow(), timeoutMs)\n    logPhase('window.load')\n    await runWithTimeout(\n      'renderer domcontentloaded',\n      () => page.waitForLoadState('domcontentloaded'),\n      rendererSetupTimeoutMs\n    )\n    logPhase('window.loaded')\n    const ptyId = await setupTerminal(page, repoPath, logPhase)\n    terminalExerciseStarted = true\n    logPhase('exercise.start')\n    const scroll = await assertScrollbackBufferWorks(page, ptyId, runId, logPhase)","sourceCodeStart":257,"sourceCodeEnd":293,"githubUrl":"https://github.com/stablyai/orca/blob/1136503c6a231a16dce8f921f6fadb63d181e8db/config/scripts/verify-linux-wayland-gpu-sandbox.mjs#L257-L293","documentation":"In --mode=verify-fix the script asserts the fix is present: Electron must launch with --disable-gpu-sandbox on Linux Wayland (the documented workaround for the GPU-sandbox wedge). If the switch is absent, the fix is not applied and the verify pass is invalid. Unlike the MissingReproductionError cases, this is a plain Error — the expected fix is missing.","triggerScenarios":"mode === 'verify-fix' AND !commandLineSwitches.disableGpuSandbox at line 274. Happens when the Electron build does not inject --disable-gpu-sandbox on Wayland (fix reverted, not yet built, or ozone-platform detection failed).","commonSituations":"Testing a pre-fix build with verify-fix mode; the Wayland detection that decides to add the switch is broken; build was not rebuilt after the fix landed.","solutions":["Rebuild the app (`pnpm run build:electron-vite` or electron-vite build --mode e2e) so the fix that injects --disable-gpu-sandbox is included.","Check the code path that adds the switch on Wayland is reached (ozone-platform / session-type detection).","Re-run verify-fix after rebuilding."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"if (mode === 'verify-fix' && !electronApp.commandLine.hasSwitch('disable-gpu-sandbox')) {\n  console.error('verify-fix expected --disable-gpu-sandbox; rebuild with the fix applied.')\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Rebuild after the GPU-sandbox fix lands so the switch is injected on Wayland.","Verify ozone-platform/session detection reaches the switch-appending code path."],"tags":["wayland","gpu-sandbox","fix","linux","electron-flags"],"backgroundTag":null,"analyzedSha":"1136503c6a231a16dce8f921f6fadb63d181e8db","analyzedAt":"2026-08-12T23:15:58.167Z","schemaVersion":2},"datasetVersion":"2026-08-12T23:17:12.415Z"}