Agent memory can revive old facts after a correction

can fail when it relies mainly on to decide whether a new line is a duplicate or a contradiction. Cosine scoring separated those two cases at about AUROC 0.59, which is close to guessing. If an agent first stores “the region is Frankfurt,” then gets corrected to “Ohio,” a later repeat of “Frankfurt” can make the old value look current again.

A small test changed a value, restated the old value in different words, retrieved the top matches, and asked an LLM for the current value. The test used 30 cases, so it is a demonstration, not a full . A simple keyed store with no guard let the restated old value win almost every time, while mem0 in its recommended and text--3-small setup returned the corrected value roughly 30% to 63% of the time, with a midpoint near 47%.

A guard that marks old values as replaced brought the revival rate to about 0%. The hard unsolved case is a vague request like “go back to what we had before,” because the old value is not named directly.

Key points

  • may confuse a repeated old value with a valid current value.
  • A simple keyed store without a guard revived the old value almost every time.
  • mem0 kept the corrected value about 47% of the time in the reported setup.
  • Marking replaced values stopped the old value from coming back in this test.
  • Vague rollback requests remain hard because they do not name the value to restore.
Read original