Your AI Keeps Citing Your Old Docs. Here's the One-Line Fix.

July 13, 2026 · Solaris · 5 min read
context-engineering

You asked your AI a simple question about your own business — what's our current pricing, what's the refund policy, what did we actually decide about the launch — and it answered, confidently, with the version you killed a month ago.

It wasn't being careless. It had no way to know.

This is the single most common failure I see from people who've crossed the line from "AI is a toy" to "AI is part of how I work." You start feeding it your real documents — your Project folder, your knowledge base, your pile of exports — and somewhere in that pile are three versions of the same thing, and the model keeps grabbing the wrong one. The good news is that the fix is small, it's borrowed from how engineers have worked for decades, and the minimal version is genuinely one line.

Why it happens

To an AI, your documents are just text. A six-month-old draft and today's final version look identical — same authoritative tone, no timestamps, nothing that says "ignore the other one." You know which is current because you were there when it changed. The model wasn't. When it finds two versions of your pricing, it has no basis to prefer either, so it uses whichever it happened to read first, or quietly blends them into an answer that matches neither.

The problem isn't the model's intelligence. It's that your documents never told it what they are. You handed it a stack of paper with the dates torn off and asked which one is current.

The fix engineers have used forever

No engineer trusts an unlabeled file. Every meaningful document in a codebase carries a little metadata riding on top of it — what it is, what version, when it last changed. You can put the exact same thing on your own documents. It's called frontmatter: a few lines of structured labels at the very top of the file.

Here's the one line that solves today's problem. At the top of the current version of a document, add:

source_of_truth: true

Leave it off the stale copies. Then tell your AI once — in your Project instructions, your system prompt, wherever it reads its standing rules:

When documents conflict, trust the one marked source_of_truth: true.

That's the one-line fix. The stale-citation problem largely disappears, because you've finally given the model the one thing it was missing: a way to tell your documents apart. It's no longer guessing which version you meant. You told it.

Do it properly: the three-field header

One line solves today's problem. A slightly fuller header prevents next month's. Here's the minimal version actually worth adopting — paste it at the very top of a document, before anything else:

---
title: Q3 Pricing
status: active          # draft | active | superseded
updated: 2026-07-10
source_of_truth: true
---

Three fields do the real work:

  • status — is this live, a rough draft, or retired? Mark old versions superseded and the model stops treating them as current.
  • updated — how fresh is this? Gives the model a tiebreaker when two things both look active.
  • source_of_truth — is this the one? The single most valuable flag you can add.

The title is just so you (and the model) can see at a glance what you're looking at. Everything else is optional until you need it — which is what Part 2 is about.

Not writing in markdown? Even better.

Pasting a header at the top works for markdown and plain text — that's where a visible label belongs. But your pricing lives in Excel and your policy is a Word doc, and nobody wants metadata printed on page one of a client-facing report. Good news: those formats have carried an invisible metadata layer for decades — custom document properties, the same channel your compliance tools and document-management systems quietly use. Same labels, written where only machines look. You can set them by hand (on a Mac: File → Properties → Custom; on Windows: File → Info → Advanced Properties → Custom) — or drop your files on the Context Stamp and it writes them for you, in your browser, without your documents ever touching a server.

The afternoon plan

You don't need to boil the ocean. You need to fix the ten documents you actually ask about.

  1. Pick your 10–15 most-referenced docs. The ones you or your team query the AI about weekly. Ignore the rest for now.
  2. Add the header to each. For every document that has multiple versions floating around, mark exactly one as source_of_truth: true and set the old ones to status: superseded.
  3. Give the AI the rule — the one instruction above.

That's the whole thing. You'll feel the difference on the very next question you ask, and it took an afternoon.

What you actually just did

Notice that you didn't reorganize anything. You didn't build a system or migrate a folder. You labeled.

But look at what the labeling is. You just built a thin layer of structured meaning on top of your own knowledge so a machine can navigate it correctly — which document is authoritative, which is retired, how fresh each one is. That has a name. It's context engineering, and this is the first brick of it. Everything sophisticated in this space is just more of what you did this afternoon: telling the model what your stuff is, so it stops guessing.

Where this goes next

Labeling stops stale citations. It's the biggest win for the least effort, which is why it's Part 1. But two things it doesn't do yet:

It doesn't capture your documents' history — which version replaced which, when the new one took effect, what changed between them. Once you're versioning real things that supersede each other, you'll want the model to understand lineage, not just recency. That's Part 2: teaching your documents their own history.

And it doesn't stay honest on its own. The moment you've got more than a handful of docs, and more than one person touching them, the labels drift — someone forgets to flip a status, and now the header lies, which is worse than no header at all. Keeping it true at scale is a different kind of problem. That's Part 3: when your doc system outgrows you.

Start with the ten documents. Add the line. Tell the AI the rule. Then come back for the part where it gets interesting.

Put it to work

Reading about context engineering is one thing. Seeing your own AI setup graded against it is another — and getting a system that does it for you is the point.