{"record":{"id":"605bd8aabccc6fcc","repo":"tinyhumansai/openhuman","slug":"memory-query-memory-driver-does-not-support-the-r","errorCode":null,"errorMessage":"memory query: memory driver does not support the retrieval family","messagePattern":"memory query: memory driver does not support the retrieval family","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/memory/query/backend.rs","lineNumber":35,"sourceCode":"//! reaches the driver, so naming a scope here could only ever narrow what the\n//! turn may see.\n\nuse anyhow::Result;\n\nuse crate::openhuman::memory::api::chunks::SourceKind;\nuse crate::openhuman::memory::api::provider::{\n    MemoryProvider, RetrievalHit, RetrievalResponse, SourceRetrievalQuery,\n};\nuse crate::openhuman::memory::guard::MemoryGuard;\nuse crate::openhuman::memory::ops::guard::active_memory_guard;\n\n/// The retrieval family on the active driver, or a caller-facing error.\nasync fn retrieval() -> Result<std::sync::Arc<MemoryGuard>> {\n    let guard = active_memory_guard()\n        .await\n        .map_err(|e| anyhow::anyhow!(\"memory query: {e}\"))?;\n    if guard.as_retrieval().is_none() {\n        return Err(anyhow::anyhow!(\n            \"memory query: memory driver does not support the retrieval family\"\n        ));\n    }\n    Ok(guard)\n}\n\n/// Query the per-source summary trees. The global (time-axis) and topic\n/// (subject-axis) trees were removed; source trees plus the entity index are\n/// the substrate, so this is the only remaining tree-query backend.\npub async fn query_source_scope(\n    scope: Option<&str>,\n    time_window_days: Option<u32>,\n    query: Option<&str>,\n    limit: usize,\n) -> Result<RetrievalResponse> {\n    let guard = retrieval().await?;\n    let request = SourceRetrievalQuery {\n        source_id: scope.map(str::to_string),","sourceCodeStart":17,"sourceCodeEnd":53,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/memory/query/backend.rs#L17-L53","documentation":"The bound memory driver does not implement the retrieval capability family (as_retrieval() is None). A driver-shape mismatch: the active backend (e.g. the null driver) serves no retrieval methods, so the query cannot be routed at all.","triggerScenarios":"Thrown at src/openhuman/memory/query/backend.rs:35 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Switch to a memory driver that implements MemoryRetrieval (the tinymemory module)","Check whether the null driver is bound because module loading failed","Report the driver/backend combination as lacking retrieval support"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}