Blog

What is memory drift in AI agents?

Jonathan Bree


Agent memories become stale the moment the world changes. Most memory systems have no mechanism for detecting this. Here is what memory drift is, why it happens, and how to prevent it.


Memory drift is what happens when an AI agent continues to act on information that was once true but is no longer. A user changes jobs. Moves cities. Switches tools. Updates a preference. The agent was told something months ago, stored it, and continues to retrieve and act on it as if nothing has changed. The information is not missing. It is wrong. And the agent does not know.


Why it happens

Most memory systems are append-only by design. New information is added to the store. Old information stays. When a user tells the agent something new that contradicts something old, both versions exist in the store simultaneously, with no mechanism to determine which is current.

This is a reasonable starting point for a storage system. It is not a reasonable property for a memory system. Human memory does not append indefinitely. It updates. When you learn that a friend has moved, you do not retain both their old address and their new one with equal weight. You update. The old version is superseded.

Vector stores have no native concept of supersession. A fact stored six months ago occupies the same index as a fact stored yesterday. Both are retrievable. Both may surface with similar confidence scores on a relevant query. The retrieval layer has no signal about which is current.


Why it is hard to detect

Memory drift shares the same invisibility problem as semantic collapse. The system does not fail. It retrieves something, the model generates an answer, the answer is confident and coherent. It is also based on information that stopped being true months ago.

The failure mode is particularly insidious because it does not appear in development or early testing. A fresh memory store contains only current information. Drift accumulates over time, as users evolve and the gap between stored state and actual state widens. By the time it becomes visible as a reliability problem, it has usually been affecting answers for a while.


How most systems handle it

Most do not. Competing memory systems store facts as they are stated and retrieve by similarity. When a new fact contradicts an old one, both are stored. Retrieval surfaces whichever is more similar to the current query, which may be either version depending on how the query is phrased. The model sees both, or only one, with no reliable signal about which reflects the current state of the world.

Some systems attempt deduplication at ingestion, merging new facts with existing ones when they appear related. This is better than pure append but still falls short of genuine contradiction resolution: it requires the deduplication logic to correctly identify that two statements are about the same thing and that one supersedes the other, which is a hard problem that naive approaches handle poorly.


How M-1 handles it

M-1's knowledge update category on LongMemEval tests exactly this problem: whether the system can recognise when previously shared information has changed and retrieve the current version rather than the stale one. M-1 scores 97.4% on this category, one of its highest individual results across all six categories.

That score reflects an architecture that actively resolves contradictions rather than letting old and new memories coexist silently. When new information arrives that contradicts existing memory, M-1 identifies the relationship between the two statements, determines which is more recent, and updates the memory graph accordingly. The stale version does not disappear entirely but it is correctly weighted against the current version so that retrieval surfaces what is true now rather than what was true then.

This is temporal reasoning applied at the storage layer rather than delegated to the model. Asking the model to resolve a contradiction it has been handed in context is asking it to do the memory system's job. M-1 resolves it before the context is assembled, so the model receives accurate information rather than a conflict to adjudicate.

Memory drift is a slow, invisible reliability problem that compounds as agents are used over longer periods and by users whose lives and preferences change. The solution is not more storage. It is a memory architecture that treats facts as having a temporal position and resolves contradictions explicitly.

Exabase's Memory API handles knowledge update and contradiction resolution as first-class concerns, not afterthoughts. See the docs to get started.

Ship your first app in minutes.