{"record":{"id":"0853ecdd282d8bb9","repo":"aaif-goose/goose","slug":"missing-tool-use-name","errorCode":null,"errorMessage":"Missing tool_use name","messagePattern":"Missing tool_use name","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/goose-provider-types/src/formats/anthropic.rs","lineNumber":541,"sourceCode":"\n    let mut message = Message::assistant();\n\n    for block in content_blocks {\n        match block.get(TYPE_FIELD).and_then(|t| t.as_str()) {\n            Some(TEXT_TYPE) => {\n                if let Some(text) = block.get(TEXT_TYPE).and_then(|t| t.as_str()) {\n                    message = message.with_text(text.to_string());\n                }\n            }\n            Some(TOOL_USE_TYPE) => {\n                let id = block\n                    .get(ID_FIELD)\n                    .and_then(|i| i.as_str())\n                    .ok_or_else(|| anyhow!(\"Missing tool_use id\"))?;\n                let name = block\n                    .get(NAME_FIELD)\n                    .and_then(|n| n.as_str())\n                    .ok_or_else(|| anyhow!(\"Missing tool_use name\"))?\n                    .to_string();\n                let input = block\n                    .get(INPUT_FIELD)\n                    .ok_or_else(|| anyhow!(\"Missing tool_use input\"))?;\n\n                let tool_call =\n                    CallToolRequestParams::new(name).with_arguments(object(input.clone()));\n                message = message.with_tool_request(id, Ok(tool_call));\n            }\n            Some(THINKING_TYPE) => {\n                let thinking = block\n                    .get(THINKING_TYPE)\n                    .and_then(|t| t.as_str())\n                    .ok_or_else(|| anyhow!(\"Missing thinking content\"))?\n                    .to_string();\n                let signature = block\n                    .get(SIGNATURE_FIELD)\n                    .and_then(|s| s.as_str())","sourceCodeStart":523,"sourceCodeEnd":559,"githubUrl":"https://github.com/aaif-goose/goose/blob/3810898a7447ec3299be72e223d3570a7aabf0ab/crates/goose-provider-types/src/formats/anthropic.rs#L523-L559","documentation":"Error \"Missing tool_use name\" thrown in aaif-goose/goose.","triggerScenarios":"Thrown at crates/goose-provider-types/src/formats/anthropic.rs:541 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":"3810898a7447ec3299be72e223d3570a7aabf0ab","analyzedAt":"2026-08-16T10:14:26.282Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}