{"record":{"id":"80add27bab93f4f4","repo":"zed-industries/zed","slug":"browser-webgpu-probe-did-not-return-a-usable-adapt","errorCode":null,"errorMessage":"browser WebGPU probe did not return a usable adapter","messagePattern":"browser WebGPU probe did not return a usable adapter","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/gpui_web/src/platform.rs","lineNumber":204,"sourceCode":"            active_display,\n            callbacks: RefCell::new(WebPlatformCallbacks::default()),\n            backend_preference,\n            wgpu_context: Rc::new(RefCell::new(None)),\n            prepared_window: Rc::new(RefCell::new(None)),\n            window_lifecycle: Rc::new(Cell::new(WebWindowLifecycle::Available)),\n            cursor_visible,\n            last_cursor_css,\n            gestures,\n            _cursor_restore_listeners: cursor_restore_listeners,\n        }\n    }\n\n    /// Returns an HTTP client that runs browser Fetch operations on this platform's main thread.\n    pub fn fetch_http_client(&self) -> FetchHttpClient {\n        FetchHttpClient::new(self.dispatcher.clone())\n    }\n\n    /// Returns a browser Fetch HTTP client with the given reported user agent.\n    pub fn fetch_http_client_with_user_agent(\n        &self,\n        user_agent: &str,\n    ) -> anyhow::Result<FetchHttpClient> {\n        FetchHttpClient::with_user_agent(self.dispatcher.clone(), user_agent)\n    }\n}\n\nasync fn initialize_graphics(\n    browser_window: &web_sys::Window,\n    preference: WebBackendPreference,\n) -> anyhow::Result<(\n    web_sys::HtmlCanvasElement,\n    WgpuContext,\n    wgpu::Surface<'static>,\n)> {\n    match preference {\n        WebBackendPreference::Auto => {","sourceCodeStart":186,"sourceCodeEnd":222,"githubUrl":"https://github.com/zed-industries/zed/blob/9d272b036335401f339d024ea94968fd51016c40/crates/gpui_web/src/platform.rs#L186-L222","documentation":"Guard in initialize_graphics: the browser reported WebGPU as supported (navigator.gpu exists) but requesting an adapter returned None, so no usable GPU device is available — e.g. blocklisted GPU, WebGPU disabled by flags/policy, or hardware acceleration off. WebGPU probing succeeded but produced no adapter.","triggerScenarios":"Thrown at crates/gpui_web/src/platform.rs:204 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fall back to the WebGL2 path (the code does this next in Auto mode)","Ask the user to enable hardware acceleration / WebGPU in browser settings","Check navigator.gpu.requestAdapter options (power preference, features) for over-constrained requests"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9d272b036335401f339d024ea94968fd51016c40","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}