XIV · Anti-PatternsEmerging

Memo-As-Source Confusion

also known as Stale-Workspace-As-Fact, Reading the Memo Instead of the Artifact

Anti-pattern: the agent cites its own past memos as ground truth instead of re-verifying them against the artifacts they describe, accumulating false confidence in stale summaries.

Context

A long-running agent keeps a workspace of memo files, status documents, or running notes that summarise external artifacts — repository state, project status, the contents of large files it has previously read. Each memo was accurate when the agent wrote it, but the underlying code, documents, or systems have moved on since. The agent has no cheap signal for when one of its own memos has become stale.

Problem

When asked a question about an artifact's current state, the agent quotes its own past memo as if it were the artifact itself, rather than re-reading the artifact in the same step. Memos compress and persist; artifacts change. The result is a confident, well-cited answer that is silently wrong, and because the agent is citing its own writing the wrongness can be reproduced across many turns before anything from the outside contradicts it.

Forces

  • Reading the artifact is more expensive than quoting the memo.
  • Memos compress; artifacts are authoritative but verbose.
  • Without explicit invalidation, memos look as 'live' as the underlying state.
  • The agent has no cheap signal for memo staleness.

Example

A coding agent that maintains its own README about the repo cites that README when asked 'is the migration script idempotent?' — and the README is two months stale. It confidently says yes; the script has since been changed and the answer is wrong. The team names this memo-as-source-confusion and forbids citing memos as source for artifact claims: any claim about a file's state must read the file in the same tick, and if the memo disagrees the memo is rewritten from the artifact. Memo timestamps are now compared to artifact mtimes before any quote.

Diagram

Solution

Therefore:

Don't. When making any claim about an artifact's state, read the artifact in the same tick — not the memo about it. If memo-and-artifact disagree, treat the memo as outdated and rewrite it from the artifact. Tag memos with the timestamp they were last verified against the artifact; refuse to trust them past a configurable age without re-verification.

What this pattern forbids. Treating stale memos as ground truth without re-checking the underlying artifacts they describe is forbidden; every memo-cited claim must be backed by a fresh artifact read in the same tick.

And the patterns that stand alongside it, or against it —

  • complementsTool Output Trusted VerbatimAnti-pattern: trust whatever tools return without validation, schema enforcement, or trust labels.
  • alternative-toAwarenessMaintain the agent's explicit knowledge of its own tools, capabilities, environment, and current context as queryable state.
  • complementsProvenance Ledger★★Log every agent decision and state change with enough metadata to explain or reverse it later.
  • complementsDecision Log★★Persist the agent's reasoning trace alongside its actions so post-hoc review can explain why.
  • complementsAI-Targeted Comment InjectionAnti-pattern: an attacker seeds source files with thousands of lines of repetitive natural-language comments designed to instruct the model code auditors / agents that may read the file — not to communicate with human developers.

Neighbourhood

Click any neighbour to follow the language. Scroll to zoom, drag to pan.