The Context-Window Bonfire
A chat thread as the source of truth instead of specs or docs.
What it is
The chat history is the design. The decisions, the constraints, the rejected alternatives, the agreed-upon shape — all of it lives in scrollback. When the tab closes, the project’s brain closes with it.
How it happens
AI conversations feel productive in a way no other medium does. You think out loud, the AI responds, decisions get made, code gets written, you move on. The thinking and the artifact happen in the same surface. But the surface is rented — the conversation ends, the session expires, the tab closes — and nothing was ever extracted to a durable artifact. The chat quietly becomes the design doc, the change log, the architectural decision record, and the institutional memory all at once, none of it written down.
The AI-era mechanism is specific: chat is a fluent collaborator that produces durable-looking decisions in a non-durable container. Pre-AI, when you wanted to think through a design, you opened a doc — the doc was the artifact, by construction. Now you open a chat, and the artifact never gets born. The conversation is so good that the doc feels redundant right up until the moment you need it and it doesn’t exist.
Why it’s dangerous
The next developer (or the next AI session, or you in three weeks) has zero context. They re-prompt, re-decide, and get different answers — sometimes worse, often inconsistent with what the original session decided. Design decisions become a stochastic process that resets every session. The same question gets re-litigated by three different people in three different threads, each unaware of the others. Bus factor is one, and the one is sometimes a closed browser tab.
The AI-era hinge: AI made the conversation cheap and the document feel redundant. It isn’t redundant — it’s the only thing that survives the conversation. The cost of extracting the decision is now ten seconds (ask the AI to summarize the thread as an ADR); the cost of not extracting it is the next person reinventing it, badly.
How to prevent it
Treat the chat as scratch, not as source. At the end of any session that produced a real decision, extract: what we decided, why, what we ruled out, what would invalidate the decision. Drop it in the repo as a doc, an ADR, a PR description, or a ticket comment. AI is excellent at this distillation — it’s the same conversation you just had, rewritten as a durable artifact, and the model still has the full context loaded.
Scale to stakes: a one-off bug fix doesn’t need an ADR. A decision about how the system handles authentication does. The friction signal: when you find yourself scrolling back through chat to remember “what did we decide last time?” the durable artifact is missing and the cost has already started.
The serious team fix
Three things, reinforcing each other:
- A team habit of “extract or it didn’t happen.” Any AI session that produced a decision with downstream consequences ends with the decision in a durable artifact — PR description, ADR, design doc, ticket comment, runbook. The chat is allowed to disappear; the decision isn’t. The rule is stated out loud so it’s a shared norm, not a personal habit.
- An AI-leveraged end-of-session distillation. A slash command or skill that takes the current chat and produces an ADR or design doc draft — what was decided, what was considered, what was rejected, what would invalidate the decision. The AI does the writing work that the human wouldn’t do alone, while the context is still loaded. Doc cost drops to the cost of editing a draft, not writing one.
-
ADRs in the repo, linked from the code that
implements them. Architectural Decision Records as
markdown files in
docs/decisions/, referenced from the code they govern. Searchable, diffable, surviving any team turnover or vendor change. A lightweight CI lint can flag PRs that touch the things ADRs usually cover — new services, schema migrations, new public API surface, dependency swaps — without a linked decision, not as a blocker but as a prompt. The infrastructure makes the artifact discoverable instead of buried.
The shift is: the session ends; the decision doesn’t have to. AI made the cost of extracting it ten seconds — the only excuse left is forgetting to ask before the tab closes.