Ask a language model a follow-up question and it answers as though it remembers the conversation. It does not. There is no stored state between one turn and the next. What happens instead is that the entire conversation is sent again, from the beginning. The model reads all of it before writing a single word of the reply.
The context window is the size limit on that re-reading. It is a budget, not a memory.
What follows from that
Nothing carries over that is not in the text. A model cannot recall a file it read an hour ago unless that file is still in the window. It has no lingering impression, no summary it kept to one side. If it is not in the transcript being re-read, it may as well never have happened.
Every turn pays for the whole conversation. The tenth message in a thread costs more to process than the first, because the first is still being read. This is why long sessions get slower and more expensive, and why the cost curve bends upward rather than staying flat.
Position matters. Everything in the window is available, but not equally. Material at the very start and the very end tends to carry more weight than material buried in the middle. A crucial instruction dropped halfway through a long thread is the one most likely to be missed.
Trimming is lossy and invisible. When a conversation outgrows the window, something has to go. Whatever gets dropped is gone completely, and the model has no way to signal that it once knew something it no longer does. It will answer confidently either way.
Why the distinction is worth keeping
Calling it memory suggests the model has an inside, a place where your earlier instruction still lives even when it is not on the page. That framing quietly leads to bad predictions. You expect it to recall a constraint from twenty messages back, or you assume a fact it stated once is now known.
Re-reading is a better model of what is happening. It explains why repeating an important constraint helps, why putting the critical instruction at the end of a long prompt works better than burying it, and why a fresh session with a good summary often beats a long one that has drifted.
Anything that has to persist has to be written down somewhere the model will read again. That is not a workaround. That is the whole mechanism.
