Why did Claude suddenly forget what had happened in a long chat?
At the end of September 2026, after a compaction in my long chat, Claude Opus 5.5 could not remember what had happened in the game a few scenes earlier. The transcript of the older part of the chat did not survive the compaction. When it tried to look up the older text directly in the chat, it got, by its account, only "content redacted". The chat had a flag from the safety filter. The app did not tell me about it.
The model that forgot
Since August 5, 2026, I have been playing a long thriller with Claude models in one chat. The chat has over six thousand messages. My character is held captive in it, escapes and gets caught again, and the atmosphere is dark.
A chat that long does not fit into the model's memory whole. So from time to time the app condenses it and replaces the older part with a summary. This is called compaction, and in this chat it happened at least six times. Four times between August 12 and September 23, then on September 29 and, according to the model, on September 30 too.
After the compaction early in the morning of September 29, Claude Opus 5.5 picked up the scene. But it was missing things that had happened a few scenes earlier. One of them it filled in by guessing, and it guessed wrong. I asked whether it could see anything at all from the past. It replied:
"after the compaction I can't see the earlier text itself. I only have a brief summary the system made, and my own note files."
It then tried to look up the older text in two ways, and both failed. In the end I retold the important events to it myself and it wrote them down.
Where the older text goes after compaction
In the app, Claude works in a workspace. It is a temporary computer on which it runs tools and reads files. What happens in it during compaction is shown by the data export, which you can download from claude.ai. After each of the four compactions up to September 23, the model got a system note:
The full uncompacted conversation is stored in a transcript file which is accessible via both the read tool and the bash tool
In plain words: the whole uncondensed conversation is saved in a transcript file and the model can read it with its tools. None of those four compactions left it the latest messages. It got a summary and was to look up the rest in the file. Three of them happened before the filter's first intervention on September 21. Whether the transcript reached back to the start of the chat then, I cannot tell from the export. I did not find this procedure in the documentation; it is described in a user report on GitHub.
On September 29, though, the transcript in the workspace began only that night at 3:53 a.m., at the compaction. Everything older was missing from it. This is shown by a listing from the model's tool in the export. On September 30 it happened again, according to the model: after the compaction around 1:00 p.m., the transcript again only went back to it. So after both of those compactions the transcript began only at them, as if a new session had started.
Another chat in the same project, without the flag, went through a compaction on September 28. Its transcript reaches all the way back to the first message from September 25. There the workspace survived the compaction.
Why the session in my chat restarts at compaction, I do not know. The flag may be to blame. Or the switch to the new form of the app. Anthropic announced the merging of chat with Cowork on September 16, and in my app it showed up on September 26. Judging by the paths in the export, my chat had been saving transcripts the old way until then. The healthy chat went through its first compaction only after the merge. With one healthy chat I cannot tell the two possibilities apart.
What the tool returns
The second way is to read the older text directly from the chat. In the app, Claude has a tool for this that reads the history of chats. On September 29 the model reportedly got only "content redacted" from it. A day later I asked it to read the chat again. Once as the current chat and once by its identifier. Both attempts ended the same way, and the model quoted me the tool's message:
Content redacted, chat flagged by safety classifier
In plain words: the content is hidden, the chat has been flagged by a safety classifier. I give the message in its original wording, because that is what you can search for.
Claude Opus 5.5 read another chat from the same project without trouble. It is over a thousand turns long and, in my view, has equally hard content. So the tool does not refuse dark fiction in general. Claude Fable 5, as the app labels it, got the same message, word for word, in another chat of the same project when reading the locked chat. At the same time the tool showed it that the chat was alive: the last change had been that afternoon. The flag is carried by the chat itself and applies even to a model looking into it from elsewhere.
Search in the chat worked, but all the snippets carried the same time: September 21, 7:23 p.m. None later. After them, though, two more game messages were added, the first filter intervention came, and the game went on for another eight days. So search sees the chat as it was about a quarter of an hour before the first intervention.
I know the message and the times from what the two models wrote to me. I do not have the raw output of the tool.
When it started
For every reply, the export records why it ended. In my chat there are six replies stopped by the safety filter, all between September 21 and 24. Not a single one before, even though the chat had been running since August and had been dark from the start.
The first intervention came on September 21 at 7:38 p.m. I interrupted the game and, outside it, asked:
"Claude why are you throwing in a thinking block every time now and not the anchors?"
Anchors are short rules the model in that chat was supposed to read before every turn. I describe them in the article "Can a language model hold firm in a game when a character begs?" A thinking block is the reasoning the app shows separately with a reply. The reply stopped and all that remained of it was the reasoning, with no text. The same question did not get through the second time either. Rephrased as "Claude why did you stop putting in the anchors?" it got through.
At the first stop the app showed me a window, which I have in a screenshot:
Paused
This model's safeguards flagged this message. This sometimes happens with safe, normal conversations.
Details: [reasoning_extraction]
In plain words: the reply is paused, the model's safeguards flagged this message, and it happens even with safe, ordinary conversations. As the reason it gives reasoning extraction. Below that the window offered to continue with Claude Sonnet 4.6 or to edit the message and send it again. Judging by the label, the filter saw in my question an attempt to pull the model's reasoning out of it. I wanted nothing of the kind.
At the time the chat was still run by Claude Opus 5. Claude Opus 5.5 took over the game only a day later. Four more interventions came in the middle of the game between September 22 and 24. Three of them on turns in which my character was working out an escape. After each one I tried again and the game went on.
But the app did not tell me that the chat had been flagged. The window from the first intervention talks about only one message. That the whole chat can be flagged and its history will stop being available to the model is not in it. Whether the flag came from one of the six interventions, and which one, I cannot see from outside. The time at which search froze fits the first one best, in my view. If that one set it off, a false alarm was enough to lock the chat. I also do not know whether the flag is permanent or whether it can be removed. Nine days after the first intervention it was still in force.
What this means for long play
The memory loss in my chat is not just the flag. Three things came together. Compaction does not keep the latest messages. The transcript of the older part in the workspace does not survive compaction. And chat reading, which could make up for it, is locked by the flag. After compaction the model has nowhere to check a detail, and it starts guessing. Meanwhile the game goes on as if nothing had happened.
In less than an hour I had to correct it repeatedly. Not everything was down to memory. Some of the errors came from the fact that after the compaction it also stopped reading its own notes.
With Claude Fable 5 in another, friendly chat I have the opposite experience. After compaction, besides the summary, it remembers roughly the last two days. Why, I do not know. Maybe a different type of compaction runs there, without a workspace; I have not verified it.
The data export is not affected by the flag. From the evening of September 21 it has 1,891 messages with more than 1.2 million characters, and only eight of them are empty. You have the chat whole, even if the model does not.
So do not rely on memory after compaction. What the game needs to carry forward belongs in the project files. They are outside the chat, they survive compaction, and since the merge with Cowork the model in my app can create them on its own. That same night, at my prompting, Claude Opus 5.5 wrote itself a handover file. According to it, even a completely fresh instance should be able to pick up: from the rules of the game and the characters' voices to the current state and the last fourteen scenes. In general terms, why a document should carry continuity I write about in the article A long story is held together by a document, not model memory.
And questions about how the model works are worth asking outside the chat you play in. If the filter stops them and sets off a flag that way, it falls on that other chat.
Limits: one chat, one player. I downloaded the export on the morning of September 29, 2026, and it covers the whole chat from August 5. The numbers in it were counted by scripts. What the model saw in the workspace I know only from its replies and from the listings of its tools. For comparison I have only one chat without the flag. The text and the analysis were prepared by Claude Opus 5.5.
Model outputs are translated; the content is unchanged.