
Key facts.
- MINJA shows an agent's stored memory can be corrupted through injection, demonstrating that agent memory is fragile and manipulable, not a stable store. source
- Mix-of-Granularity shows retrieval has to adapt its granularity to the query, evidence that managing what an agent holds in context over time is a non-trivial engineering problem. source
- Memory drifts on a long run; a bigger model does not fix it, and MINJA shows corruption, so the wrong intent runs at a cost. (arXiv:2503.03704)
Why does memory drift over a long run?
A long-running agent accumulates context: earlier steps, tool outputs, intermediate conclusions, side conversations. As that pile grows, the original goal becomes a small, old entry competing with a mass of recent detail and the agent starts weighting the recent over the important. It optimizes the subtask in front of it and loses the thread of why it was doing any of it. The drift is gradual and invisible until the agent does something that makes sense locally and contradicts the goal it started with, by which point it has been off-track for a while, confidently.
Memory is also more fragile than teams assume. MINJA demonstrates that an agent's stored memory can be deliberately corrupted by injection, which is a security problem in its own right and also a proof that the memory store is not a reliable substrate. What an attacker can corrupt on purpose, ordinary accumulation degrades by accident. And managing context well is genuinely hard, as Mix-of-Granularity shows for retrieval, where even choosing the right chunk size depends on the query. The answer is deliberate memory management: re-anchor the goal periodically, prune or summarize stale context, protect what the agent stores and check that the agent is still pursuing the intent it began with rather than the one its drifted memory now implies.

What does deliberate memory management include?
| Practice | Drift unmanaged | Memory managed |
|---|---|---|
| The goal | Buried in context | Periodically re-anchored |
| Stale context | Accumulates | Pruned or summarized |
| Stored memory | Trusted blindly | Protected and checked |
| Outcome | Acts on a lost goal | Stays on task |
Keeping the goal alive across a long run means treating the original intent as a stable pattern the agent must keep satisfying, which is what the Pattern Intelligence Layer enforces. VibeModel anchors the agent's handling of a task to the pattern that defines success, so re-anchoring is built in rather than hoped for and the agent does not quietly drift into executing a goal it lost somewhere in the accumulated context.
Frequently asked questions
Why does the goal get lost?
It becomes a small old entry under a growing pile of recent context, so the agent over-weights the latest detail and loses the thread of the original intent.
Is agent memory secure?
Not inherently. MINJA shows stored memory can be corrupted by injection, so memory needs protection and verification, not blind trust.
How do you prevent drift?
Re-anchor the goal periodically, prune or summarize stale context and check the agent is still pursuing the intent it started with.

