tinyhumansai/openhuman · error
`{key}` must be an array of strings
Error message
`{key}` must be an array of strings What it means
Error "`{key}` must be an array of strings" thrown in tinyhumansai/openhuman.
Source
Thrown at src/openhuman/agent/tools/todo.rs:295
approval_mode,
acceptance_criteria: optional_string_array(args, "acceptanceCriteria")?,
evidence: optional_string_array(args, "evidence")?,
notes: optional_string(args, "notes"),
blocker: optional_string(args, "blocker"),
source_metadata: None,
})
}
fn optional_string_array(
args: &serde_json::Value,
key: &str,
) -> anyhow::Result<Option<Vec<String>>> {
let Some(value) = args.get(key) else {
return Ok(None);
};
let values = value
.as_array()
.ok_or_else(|| anyhow::anyhow!("`{key}` must be an array of strings"))?;
values
.iter()
.map(|item| {
item.as_str()
.map(|s| s.to_string())
.ok_or_else(|| anyhow::anyhow!("`{key}` must be an array of strings"))
})
.collect::<anyhow::Result<Vec<_>>>()
.map(Some)
}
#[cfg(test)]
mod tests {
use super::*;
use serde_json::Value;
/// Serialize tests that share the process-global scratch store with
/// `todos::ops` tests. Same lock — otherwise the two test modules raceView on GitHub (pinned to a221052e0d)
When it happens
Trigger: Thrown at src/openhuman/agent/tools/todo.rs:295 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@a221052e0d (2026-08-16).
Data as JSON: /api/errors/943b12aedc52f0f4.
Report an issue: GitHub.