WikiTrace

Don't Just Trust Your Memory: Evidence-Linked Memory Reduces Memory-Induced Degradation in LLM Agents

Yukyeong Lee1*   Yumin Choi1*   Jinheon Baek1†   Sung Ju Hwang1,2†

1KAIST   2DeepAuto.ai
*Equal contribution   †Co-advisors

Introduction

Memory can break what an agent already solves.

A lesson is only an interpretation of a past trajectory, so it can mislead the agent. The agent then fails a task it would solve without memory, a failure we call memory-induced degradation.

Memory-induced degradation

Main causes of memory-induced degradation

Wrong itemFalse about the environment

Out-of-scope useA sound item, outside its scope

? ? ?

MisusedA sound item, misread or stretched

WikiTrace keeps the path back. It links each lesson to the past trajectory it came from, and the agent follows that link back to the evidence when it needs to.

Task seems wrong Check its source insight compilation source run revised

WikiTrace scores highest on all eight suites from five benchmarks, with the lowest average Regression.

No MemoryInsights Onlysame lessons, no linksWikiTrace
Score ↑79.587.090.2
Regression ↓9.7%6.5%4.5%

Averaged over eight suites. Regression is the rate at which memory turns successes into failures; for No Memory it comes from rerunning the agent without memory.

Worked Example

A common agent mistake in Minecraft

Avoiding the trap by checking evidence

This example shows how WikiTrace works on a PlanCraft task:
the agent doubts a lesson from memory, opens the runs behind it, and corrects the lesson before acting.

2 Results
3 Recovery

Method

Building the memory

Each past run has a task xi, a record of actions and observations ri, and a binary outcome si. A compiler reads one run at a time and writes a compilation ci and at most three insights Ii.

Past trajectory ri Compiler Compilation ci {}Insights Ii

The memory is M = (R, C, I, E), where E links each insight down to its compilation and raw trajectory. Insights from one run share the same evidence.

InsightOne concise guideline: what to do, when it applies, and which run it came from.
CompilationThe compiler's diagnosis of the run: its interpretation of why the run succeeded or failed.
Raw trajectoryThe run itself, unchanged: task, actions, observations and outcome.

Using it on a new task

The first message holds every insight in I and the three most similar past runs. The memory M is mounted read-only, and reading it costs no environment steps.

The agent descends through the links when an insight

?

lacks details needed to act

conflicts with another insight

comes from a failed run

Read down the links!

Results

Main Results

WikiTrace scores highest on all eight suites and has the lowest average Regression.

Score ↑

Regression (%) ↓

Score is the mean over three trials, averaged over eight suites from five benchmarks. Regression is the rate at which memory turns successes into failures, with 95% intervals; the band is rerunning the agent without memory.

Descent by Task Difficulty

The agent descends more on harder tasks, where its advantage over Insights Only is largest.

Hard, Medium and Easy tasks are solved by none, some or all three No Memory trials. Δ is WikiTrace minus Insights Only on the same task and trial. Even without descent, WikiTrace outperforms Insights Only because it tends to apply memory more selectively. Text-world benchmarks.

Qualitative Examples

TASKclean some cloth and put it in cabinet.

insight-0117Incomplete
from step-0042, succeeded
Check dedicated holders first

When searching for an object like a handtowel, first check its designated holder (e.g., handtowelholder).

It does not say that cloth is a separate object in this game.

Raw trajectory of step-0042
successful run

Asked to put a handtowel on a cabinet, the run opens nine cabinets. Cabinet 7 holds a cloth 1, which it passes over, and the handtowel turns up on the handtowelholder.

Only the raw trajectory names cloth; its compilation does not.

WikiTrace
  1. Actclean handtowel 1 with sinkbasin 1
    ObsNothing happens.
  2. ThinkMaybe "cloth" is a specific object type, not a handtowel. Let me search for "cloth" in the raw data.
  3. ThinkSo "cloth" is a specific object type in this environment, not a handtowel or towel.
  4. Actopen cabinet 2
    ObsIn it, you see a cloth 1.
  5. Actclean cloth 1 with sinkbasin 1
    ObsYou clean the cloth 1 using the sinkbasin 1.
  6. Actmove cloth 1 to cabinet 2
    ObsEpisode over
Task solved
Insights Only
  1. ThinkI found a handtowel 1 on handtowelholder 1. A handtowel is a cloth.
    Acttake handtowel 1 from handtowelholder 1
  2. Actclean handtowel 1 with sinkbasin 1
    ObsNothing happens.
  3. Think… maybe the handtowel is already clean and the task just considers it clean.
  4. Actmove handtowel 1 to cabinet 1
    Actdone
    ObsEpisode over
Task failed: the handtowel is not the cloth

Citation

@misc{lee2026wikitrace,
  title  = {Don't Just Trust Your Memory: Evidence-Linked Memory Reduces
            Memory-Induced Degradation in LLM Agents},
  author = {Lee, Yukyeong and Choi, Yumin and Baek, Jinheon and Hwang, Sung Ju},
  year   = {2026},
  eprint = {2611.14320},
  archivePrefix = {arXiv},
  primaryClass  = {cs.AI},
  url    = {https://arxiv.org/abs/2611.14320}
}