{"record":{"id":"ebd5fed70b43bf92","repo":"clockworklabs/SpacetimeDB","slug":"failed-to-extract-workspace-metadata","errorCode":null,"errorMessage":"Failed to extract workspace metadata","messagePattern":"Failed to extract workspace metadata","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/cli/build.rs","lineNumber":104,"sourceCode":"            let server_path = PathBuf::from(server_source);\n            generate_template_entry(&mut generated_code, &server_path, server_source, &manifest_dir);\n        }\n\n        if let Some(ref client_source) = template.client_source {\n            let client_path = PathBuf::from(client_source);\n            generate_template_entry(&mut generated_code, &client_path, client_source, &manifest_dir);\n        }\n    }\n\n    generated_code.push_str(\"    templates\\n\");\n    generated_code.push_str(\"}\\n\\n\");\n\n    let repo_root = get_repo_root();\n    let workspace_cargo = repo_root.join(\"Cargo.toml\");\n    println!(\"cargo:rerun-if-changed={}\", workspace_cargo.display());\n\n    let (workspace_edition, workspace_versions) =\n        extract_workspace_metadata(&workspace_cargo).expect(\"Failed to extract workspace metadata\");\n\n    let ts_bindings_package = repo_root.join(\"crates/bindings-typescript/package.json\");\n    println!(\"cargo:rerun-if-changed={}\", ts_bindings_package.display());\n    let ts_bindings_version =\n        extract_ts_bindings_version(&ts_bindings_package).expect(\"Failed to read TypeScript bindings version\");\n\n    // Embed skill files from skills/*/SKILL.md\n    let skills_dir = repo_root.join(\"skills\");\n    let skill_names = discover_skill_names(&skills_dir);\n\n    generated_code.push_str(\"pub fn get_skill(name: &str) -> Option<&'static str> {\\n\");\n    generated_code.push_str(\"    match name {\\n\");\n    for skill_name in &skill_names {\n        let skill_path = skills_dir.join(skill_name).join(\"SKILL.md\");\n        generated_code.push_str(&format!(\n            \"        \\\"{}\\\" => Some(include_str!(\\\"{}\\\")),\\n\",\n            skill_name,\n            skill_path.to_str().unwrap().replace('\\\\', \"\\\\\\\\\")","sourceCodeStart":86,"sourceCodeEnd":122,"githubUrl":"https://github.com/clockworklabs/SpacetimeDB/blob/524b4487d949b61a07d4f39c862d1290259dfd20/crates/cli/build.rs#L86-L122","documentation":"Error \"Failed to extract workspace metadata\" thrown in clockworklabs/SpacetimeDB.","triggerScenarios":"Thrown at crates/cli/build.rs:104 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"524b4487d949b61a07d4f39c862d1290259dfd20","analyzedAt":"2026-08-16T23:58:54.611Z","schemaVersion":2},"datasetVersion":"2026-08-17T04:17:16.089Z"}