tinyhumansai/openhuman · error · anyhow::Error
memory_recall: {e}
Error message
memory_recall: {e} What it means
The driver's recall search failed after namespace/query/limit parsing. The search runs with the user query only (namespace rides in RecallOpts, not the query string); the chained {e} is the backend's reason.
Source
Thrown at src/openhuman/memory/tools/recall.rs:93
}
#[allow(clippy::cast_possible_truncation)]
let limit = args
.get("limit")
.and_then(serde_json::Value::as_u64)
.map_or(5, |v| v as usize);
// Search with the user query only. Prefixing `namespace` into the query
// string would add a redundant token matching almost every row. Instead,
// namespace scoping belongs in RecallOpts so the backend restricts the
// search to the correct namespace column.
let recall_opts = crate::openhuman::memory::api::recall::OwnedRecallOpts {
namespace: Some(namespace.to_string()),
..Default::default()
};
let guard = active_memory_guard()
.await
.map_err(|e| anyhow::anyhow!("memory_recall: {e}"))?;
// `None` scope: the guard intersects it with the ambient per-turn
// allowlist, so this can only ever be narrowed, never widened.
match guard.recall(query, limit, &recall_opts, None).await {
Ok(entries) if entries.is_empty() => Ok(ToolResult::success(
"No memories found matching that query.",
)),
Ok(entries) => {
let mut output = format!("Found {} memories:\n", entries.len());
for entry in &entries {
let score = entry
.score
.map_or_else(String::new, |s| format!(" [{s:.0}%]"));
let _ = writeln!(
output,
"- [{}] {}: {}{score}",
entry.category, entry.key, entry.content
);
}View on GitHub (pinned to 7491200858)
Solutions
- Retry transient backend failures
- Check the chained error for store/embedding faults
- Verify the namespace exists in the recall store
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at src/openhuman/memory/tools/recall.rs:93 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/ec51c554fd702433.
Report an issue: GitHub.