tinyhumansai/openhuman · error

memory_tree walk: {e}

Error message

memory_tree walk: {e}

What it means

Wrapper around active_memory_guard() in the walk path: the bound driver could not be acquired. The scope is deliberately None (the guard intersects it with the per-turn allowlist), so this error is purely about driver availability.

Source

Thrown at src/openhuman/memory/query/fast_walk.rs:52

        .get("max_hops")
        .and_then(|v| v.as_u64())
        .map(|n| n as u32)
        .unwrap_or(2);

    log::debug!(
        "[tool][memory_tree] walk (deterministic) query_len={} limit={} max_hops={} window={:?}",
        query.len(),
        limit,
        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)?;

View on GitHub (pinned to 7491200858)

Solutions

  1. Retry after the memory driver binds at startup
  2. Check the core log for the underlying binding error
  3. Verify a retrieval-capable memory backend is configured
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src/openhuman/memory/query/fast_walk.rs:52 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/905141aae3fd97b4. Report an issue: GitHub.