Skip to content

Belief-aware Recall

Ordinary retrieval asks which stored items best match a query. Belief-aware recall also asks which claims apply to the requested time, what Remem knew at a particular point, how each result is supported, and whether the answer is complete enough to rely on.

This distinction is necessary because a relevant result may be historical, contested, unsupported, or still waiting for revision. Returning only its text and similarity score would hide information that changes how an agent should use it.

The planned recall request separates two time parameters:

  • valid_at asks what applied in the world at a particular time. For example: “Where did this person live in March?”
  • known_at asks what the system had learned by a particular point in its history. For example: “What did Remem believe on 1 June, given only reports captured by then?”

They answer different questions. A later correction might establish that a person moved in March, making Lisbon valid from March onward. A known_at query dated before the correction arrived may still show that Remem then knew only about Berlin. Neither date should be inferred from an ambiguous as_of value.

The plan also treats observed-current freshness separately. A claim may be labelled current by the latest completed revision but still be old enough that an application should ask for confirmation. “Current in the recorded model” does not mean “recently observed.”

Recall is expected to return typed references to the exact memory version or episode segment behind each result. Along with the content, results need the status, applicability, attribution, and time information required to interpret them. An agent should be able to distinguish a corroborated current claim from a single-source report or a hypothesis without making another request just to learn that distinction.

Hypotheses, unsupported, historical, and retracted claims are not intended to appear as ordinary current results by default. A caller may explicitly ask for those categories when investigating history or disagreement. Scope, perspective, kind, status, and memory-versus-episode tier are structural filters; the read path is not supposed to call a language model to guess what a scope meant.

When two claims remain contested, recall must not return one as if it were a settled winner. It should return the alternatives together when they fit, or say that conflict coverage is incomplete when the response budget cannot include all relevant sides. This lets the caller know that a compact answer omitted part of the disagreement.

For example, if two independent sources report different current locations and the rules leave them at equal standing, the result should preserve both alternatives and their sources. Choosing the more recent one, or the one with a higher text score, would hide the epistemic conflict.

Partial results must say why they are partial

Section titled “Partial results must say why they are partial”

The response envelope is planned to distinguish several conditions that can otherwise look like an ordinary empty result:

  • belief revision has not published the requested current state;
  • a source or index was unavailable;
  • a history or retention boundary limits what can be returned;
  • a candidate limit truncated the search;
  • the response budget could not fit complete conflict coverage;
  • semantic search was requested but compatible vectors are unavailable.

These conditions should not be collapsed into one truncated flag. A hybrid search may return what its available sources found, but it must identify the missing source and the reason the answer is partial. A semantic-only request without vectors must not present an empty result as proof that no relevant memory exists.

Revision and privacy gates come before fallback paths. A missing or stale projection must not be bypassed by returning an older belief, an episode snippet, or a cursor page that escapes the same gate.

Recall is designed for agents with finite context windows. The response budget must account for required labels, typed references, attribution, and conflict coverage, not only the text body. When a budget is too small to include both sides of a conflict, the result needs an explicit coverage warning rather than a silently one-sided answer.

Optional explanation and operational details can remain opt-in, but compact disclosure of status, applicability, freshness, and uncertainty is part of the planned minimum. Uncertainty is useful context, not decoration to remove when the answer is shortened.

Recall consumes belief projections; it does not decide whether a claim is true. Search similarity can nominate relevant memories, but acceptance, corroboration, temporal applicability, and revision determine their standing. Usage-based activation may later help order equally relevant results; it does not change those labels. See Usage and Activation for that planned distinction.

For the underlying evidence and revision model, see Beliefs and Evidence and Revision and Forgetting.