{"record":{"id":"ecd22a01e018ef83","repo":"zed-industries/zed","slug":"no-kernel-specs-found","errorCode":null,"errorMessage":"No kernel specs found","messagePattern":"No kernel specs found","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"crates/repl/src/kernels/remote_kernels.rs","lineNumber":103,"sourceCode":"    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(),\n            kernelspec: spec.spec,\n        })\n        .collect::<Vec<RemoteKernelSpecification>>();\n\n    anyhow::ensure!(!remote_kernelspecs.is_empty(), \"No kernel specs found\");\n    Ok(remote_kernelspecs)\n}\n\nimpl PartialEq for RemoteKernelSpecification {\n    fn eq(&self, other: &Self) -> bool {\n        self.name == other.name && self.url == other.url\n    }\n}\n\nimpl Eq for RemoteKernelSpecification {}\n\npub struct RemoteRunningKernel {\n    remote_server: RemoteServer,\n    _receiving_task: Task<Result<()>>,\n    _routing_task: Task<Result<()>>,\n    http_client: Arc<dyn HttpClient>,\n    pub working_directory: std::path::PathBuf,\n    pub request_tx: mpsc::Sender<JupyterMessage>,","sourceCodeStart":85,"sourceCodeEnd":121,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/repl/src/kernels/remote_kernels.rs#L85-L121","documentation":"Post-parse guard in list_remote_kernelspecs(): the server's kernelspecs response deserialized fine but yielded an empty list, meaning the remote server exposes no kernels. Raised as an error instead of returning an empty spec list so callers fail loudly.","triggerScenarios":"Thrown at crates/repl/src/kernels/remote_kernels.rs:103 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Install at least one kernel on the remote server","Verify the correct remote server/token is configured"],"exampleFix":null,"handlingStrategy":"validation","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"}