{"record":{"id":"8f47c12b65465997","repo":"zed-industries/zed","slug":"invalid-symbol-path","errorCode":null,"errorMessage":"invalid symbol path","messagePattern":"invalid symbol path","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/project/src/lsp_store.rs","lineNumber":10161,"sourceCode":"            let abs_path = &update.diagnostics.document_abs_path;\n            let server_id = update.server_id;\n            let Some((worktree, relative_path)) =\n                self.worktree_store.read(cx).find_worktree(abs_path, cx)\n            else {\n                log::warn!(\"skipping diagnostics update, no worktree found for path {abs_path:?}\");\n                continue;\n            };\n\n            let worktree_id = worktree.read(cx).id();\n            let project_path = ProjectPath {\n                worktree_id,\n                path: relative_path,\n            };\n\n            let document_uri = lsp::Uri::from_file_path(abs_path)\n                .map_err(|()| anyhow!(\"Failed to convert buffer path {abs_path:?} to lsp Uri\"))?;\n            if let Some(buffer_handle) = self.buffer_store.read(cx).get_by_path(&project_path) {\n                let snapshot = buffer_handle.read(cx).snapshot();\n                let buffer = buffer_handle.read(cx);\n                let reused_diagnostics = buffer\n                    .buffer_diagnostics(Some(server_id))\n                    .iter()\n                    .filter(|v| merge(&document_uri, &v.diagnostic, cx))\n                    .map(|v| {\n                        (*v).clone().map_coordinates(|range| {\n                            Unclipped(range.start.to_point_utf16(&snapshot))\n                                ..Unclipped(range.end.to_point_utf16(&snapshot))\n                        })\n                    })\n                    .collect::<Vec<_>>();\n\n                self.as_local_mut()\n                    .context(\"cannot merge diagnostics on a remote LspStore\")?\n                    .update_buffer_diagnostics(\n                        &buffer_handle,\n                        server_id,","sourceCodeStart":10143,"sourceCodeEnd":10179,"githubUrl":"https://github.com/zed-industries/zed/blob/9d272b036335401f339d024ea94968fd51016c40/crates/project/src/lsp_store.rs#L10143-L10179","documentation":"A symbol whose location is inside the project references a worktree that can no longer be resolved (absolutize failed with 'no such worktree'), so its absolute path cannot be computed; the outer error surfaces as 'invalid symbol path'.","triggerScenarios":"Thrown at crates/project/src/lsp_store.rs:9442 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure the worktree containing the symbol is still open in the project","Re-index/re-run the symbol search so stale symbol paths are refreshed"],"exampleFix":null,"handlingStrategy":"type-guard","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"}