{"record":{"id":"396c21e582dd13b6","repo":"zed-industries/zed","slug":"failed-to-fetch-kernel-specs","errorCode":null,"errorMessage":"Failed to fetch kernel specs: {}","messagePattern":"Failed to fetch kernel specs: (.+?)","errorType":"http","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"crates/repl/src/kernels/remote_kernels.rs","lineNumber":80,"sourceCode":"\n    Ok(response.id)\n}\n\npub async fn list_remote_kernelspecs(\n    remote_server: RemoteServer,\n    http_client: Arc<dyn HttpClient>,\n) -> Result<Vec<RemoteKernelSpecification>> {\n    let url = remote_server.api_url(\"/kernelspecs\");\n\n    let request = Request::builder()\n        .method(\"GET\")\n        .uri(&url)\n        .header(\"Authorization\", format!(\"token {}\", remote_server.token))\n        .body(AsyncBody::default())?;\n\n    let response = http_client.send(request).await?;\n\n    anyhow::ensure!(\n        response.status().is_success(),\n        \"Failed to fetch kernel specs: {}\",\n        response.status()\n    );\n    let mut body = response.into_body();\n\n    let mut body_bytes = Vec::new();\n    body.read_to_end(&mut body_bytes).await?;\n\n    let kernel_specs: KernelSpecsResponse = serde_json::from_slice(&body_bytes)?;\n\n    let remote_kernelspecs = kernel_specs\n        .kernelspecs\n        .into_iter()\n        .map(|(name, spec)| RemoteKernelSpecification {\n            name,\n            url: remote_server.base_url.clone(),\n            token: remote_server.token.clone(),","sourceCodeStart":62,"sourceCodeEnd":98,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/repl/src/kernels/remote_kernels.rs#L62-L98","documentation":"HTTP status guard in list_remote_kernelspecs(): the GET {base}/kernelspecs request to the remote Jupyter server returned a non-success status (bad token, server error, wrong URL). Spec listing aborts with the status code embedded in the error.","triggerScenarios":"Thrown at crates/repl/src/kernels/remote_kernels.rs:80 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the remote Jupyter-compatible server URL and token are correct","Check that the remote server is running and reachable"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}