{"record":{"id":"760ad0c30a08f234","repo":"aaif-goose/goose","slug":"invalid-response-format-missing-content-array","errorCode":null,"errorMessage":"Invalid response format: missing content array","messagePattern":"Invalid response format: missing content array","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/goose-provider-types/src/formats/anthropic.rs","lineNumber":522,"sourceCode":"    if options.prompt_cache_disabled {\n        return json!([{\n            TYPE_FIELD: TEXT_TYPE,\n            TEXT_TYPE: system\n        }]);\n    }\n    json!([{\n        TYPE_FIELD: TEXT_TYPE,\n        TEXT_TYPE: system,\n        CACHE_CONTROL_FIELD: { TYPE_FIELD: \"ephemeral\" }\n    }])\n}\n\n/// Convert Anthropic's API response to internal Message format\npub fn response_to_message(response: &Value) -> Result<Message> {\n    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())","sourceCodeStart":504,"sourceCodeEnd":540,"githubUrl":"https://github.com/aaif-goose/goose/blob/3810898a7447ec3299be72e223d3570a7aabf0ab/crates/goose-provider-types/src/formats/anthropic.rs#L504-L540","documentation":"Error \"Invalid response format: missing content array\" thrown in aaif-goose/goose.","triggerScenarios":"Thrown at crates/goose-provider-types/src/formats/anthropic.rs:522 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"}