Problem
Forty turns into a working session the assistant forgets a constraint set on turn three. Nothing announced the change. The conversation looks the same, reads the same, and is now running against a version of the history with the beginning cut off.
Solution
The window is finite and shared. Every turn of history, every attached document, the standing instructions and the reply being generated all draw on the same budget, and it’s fixed per model. When the conversation exceeds it something has to give, and the three available behaviours produce very different experiences.
Truncation drops the oldest turns. Cheap, and it is the silent-forgetting failure exactly. Summarisation compresses earlier turns into a synopsis, which keeps the gist and loses the specifics, so the model remembers that a format was agreed and forgets what it was. Refusal stops and asks the viewer to start a new conversation, which is the most honest and the most disruptive.
Whichever is chosen, the viewer needs two things: a sense of where they’re against the limit while there’s still room to act, and an unambiguous event when the boundary is crossed. A meter alone is insufficient, because nobody watches a meter. A marker in the transcript at the point where earlier material stopped being visible to the model is the part that actually helps, since it converts an invisible state change into something a reader can see when they scroll back.
Timing follows from that. A meter that appears at ninety per cent is informing someone whose options have already narrowed to starting over. Surfacing it around two-thirds leaves room to act, and the actions worth offering are concrete: start a fresh conversation carrying a summary, remove a large attachment, or switch to a model with a larger window.
Attachments are where this becomes urgent rather than academic. A three-hundred-page document can consume most of a window on its own, and the viewer experiences that as the assistant being strangely forgetful for the rest of the session. Showing the attachment’s share of the budget, in the tray where it was added, explains a symptom that would otherwise look like the product being bad.
Use when
Sessions run long, documents are attached, or the product offers models whose windows differ enough to matter.
Don’t use when
Exchanges are short and self-contained. A meter that never moves off empty is decoration, and it teaches people to ignore an indicator that would matter later.
Trade-offs
Exposing the budget invites people to manage it, which is real work the product has offloaded onto them. Tokens are also the wrong unit for a human: a percentage is comprehensible and imprecise—a token count is precise and meaningless to almost everyone. Automatic summarisation keeps conversations alive and introduces a silent lossy step that’s harder to reason about than plain truncation. Displaying a limit also makes the product feel constrained at exactly the moment someone is deep in productive work.
Checklist
- Does the viewer learn the window is filling before it is full?
- Is there a visible marker where earlier turns stopped being included?
- What’s the overflow behaviour, and is it stated anywhere a viewer would look?
- Does a large attachment show its share of the budget?
- Are the units something a person can act on?
- Does switching models change the limit visibly?
- Is there a one-click way to continue in a fresh conversation with a summary?
- Do standing instructions count against the budget, and is that visible?
- What happens to a branch abandoned by an edit, and does it still occupy space?
- Does the assistant say when it can no longer see something it was told?
Compare
Claude publishes its window sizes per model and ties the limit to the model choice, so the constraint is a documented property rather than folklore. ChatGPT mostly hides the meter and manages overflow behind the scenes. The interface stays calm and the forgetting gets harder to attribute. Gemini competes largely on window size, which turns the limit into a marketing surface and reduces the need for an in-product meter. Cursor takes the opposite approach for a technical audience and shows what is in context as an explicit, editable list. The budget becomes something to curate rather than something the product hides.
Related
Conversation history is where a session that outgrew its window should continue. Attachment tray is the largest single consumer of the budget. Usage meter is the other limit and measures money rather than memory. Scoped context determines how much material is in play. Custom instructions spend part of the window on every turn.