{"record":{"id":"a3f41020bccdc6f4","repo":"aaif-goose/goose","slug":"missing-tool-use-id","errorCode":null,"errorMessage":"Missing tool_use id","messagePattern":"Missing tool_use id","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/goose-provider-types/src/formats/anthropic.rs","lineNumber":537,"sourceCode":"    let content_blocks = response\n        .get(CONTENT_FIELD)\n        .and_then(|c| c.as_array())\n        .ok_or_else(|| anyhow!(\"Invalid response format: missing content array\"))?;\n\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\"))?","sourceCodeStart":519,"sourceCodeEnd":555,"githubUrl":"https://github.com/aaif-goose/goose/blob/3810898a7447ec3299be72e223d3570a7aabf0ab/crates/goose-provider-types/src/formats/anthropic.rs#L519-L555","documentation":"Error \"Missing tool_use id\" thrown in aaif-goose/goose.","triggerScenarios":"Thrown at crates/goose-provider-types/src/formats/anthropic.rs:537 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"}