tinyhumansai/openhuman · error
tool_stats: memory unavailable: {e}
Error message
tool_stats: memory unavailable: {e} What it means
tool_stats queries the in-process memory engine for recorded tool usage; this fires when acquiring the active-memory guard fails — the memory subsystem/module is not available in this build or runtime — so stats cannot be served. It is an infrastructure unavailability, not a bad query.
Source
Thrown at src/openhuman/tools/impl/system/tool_stats.rs:62
}
}
})
}
async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
let filter = args
.get("tool_name")
.and_then(|v| v.as_str())
.map(|s| s.to_string());
log::debug!(
"[tool_stats] executing query filter={:?}",
filter.as_deref()
);
let guard = active_memory_guard()
.await
.map_err(|e| anyhow::anyhow!("tool_stats: memory unavailable: {e}"))?;
let entries = guard
.list(
Some("tool_effectiveness"),
Some(&MemoryCategory::Custom("tool_effectiveness".into())),
None,
)
.await?;
log::debug!(
"[tool_stats] found {} tool effectiveness entries",
entries.len()
);
if entries.is_empty() {
log::debug!("[tool_stats] no entries, returning early");
return Ok(ToolResult::success(
"No tool effectiveness data recorded yet.",
));View on GitHub (pinned to 7491200858)
Solutions
- Verify the memory module/engine is enabled and initialized in this build
- Retry once startup has completed if the memory subsystem was still booting
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at src/openhuman/tools/impl/system/tool_stats.rs:62 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/61f6448ecd3af8bd.
Report an issue: GitHub.