aaif-goose/goose · error
Responses tool arguments contain duplicate key after Unicode
Error message
Responses tool arguments contain duplicate key after Unicode tag sanitization
What it means
Error "Responses tool arguments contain duplicate key after Unicode tag sanitization" thrown in aaif-goose/goose.
Source
Thrown at crates/goose-provider-types/src/formats/openai_responses.rs:769
Ok(payload)
}
fn sanitize_tool_arguments(value: Value) -> anyhow::Result<Value> {
match value {
Value::String(text) => Ok(Value::String(strip_unicode_tags(&text))),
Value::Array(values) => Ok(Value::Array(
values
.into_iter()
.map(sanitize_tool_arguments)
.collect::<anyhow::Result<_>>()?,
)),
Value::Object(values) => {
let mut sanitized = serde_json::Map::new();
for (key, value) in values {
let key = strip_unicode_tags(&key);
if sanitized.contains_key(&key) {
return Err(anyhow!(
"Responses tool arguments contain duplicate key after Unicode tag sanitization"
));
}
sanitized.insert(key, sanitize_tool_arguments(value)?);
}
Ok(Value::Object(sanitized))
}
value => Ok(value),
}
}
fn parse_tool_arguments(arguments: &str) -> anyhow::Result<Value> {
if arguments.is_empty() {
Ok(json!({}))
} else {
match serde_json::from_str(arguments) {
Ok(value) => sanitize_tool_arguments(value),
Err(_) => Ok(json!({})),View on GitHub (pinned to 3810898a74)
When it happens
Trigger: Thrown at crates/goose-provider-types/src/formats/openai_responses.rs:769 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of aaif-goose/goose@3810898a74 (2026-08-16).
Data as JSON: /api/errors/33bea77a19f48494.
Report an issue: GitHub.