tinyhumansai/openhuman · error
memory_tree walk: memory driver does not support the retriev
Error message
memory_tree walk: memory driver does not support the retrieval family
What it means
The guard acquired for the walk has as_retrieval() == None: the bound driver does not implement the retrieval family, so FastRetrieveQuery cannot run. Driver capability mismatch, not an argument problem.
Source
Thrown at src/openhuman/memory/query/fast_walk.rs:61
max_hops,
time_window_days
);
// Routed through the bound driver. `None` for the scope is not
// "unrestricted": the guard intersects it with the ambient per-turn
// allowlist, so the source gate still applies.
let guard = active_memory_guard()
.await
.map_err(|e| anyhow::anyhow!("memory_tree walk: {e}"))?;
let opts = FastRetrieveQuery {
limit,
max_hops,
time_window_days,
};
let resp = guard
.as_retrieval()
.ok_or_else(|| {
anyhow::anyhow!("memory_tree walk: memory driver does not support the retrieval family")
})?
.fast_retrieve(&query, opts, None)
.await?;
log::debug!(
"[tool][memory_tree] walk returning hits={} total={}",
resp.hits.len(),
resp.total
);
let json = serde_json::to_string(&resp)?;
Ok(ToolResult::success(json))
}
#[cfg(test)]
mod tests {
use super::*;
use serde_json::json;
#[tokio::test]View on GitHub (pinned to 7491200858)
Solutions
- Bind a driver that implements fast retrieval (tinymemory module)
- Investigate why the current driver lacks the retrieval family
- Use a different memory mode supported by the active driver
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at src/openhuman/memory/query/fast_walk.rs:61 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/f87cd1b79bad6fc0.
Report an issue: GitHub.