{"version":"2.1.300","anchor":"compaction-preserved-rows-missing-from-the-conversation-are","canonical_anchor":"compaction-preserved-rows-missing-from-the-conversation-are","heading":"Compaction drops kept messages that no longer exist in the conversation","tier":"internal","area":"Compaction","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.300\/e\/compaction-preserved-rows-missing-from-the-conversation-are","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.300","markdown":"### Compaction drops kept messages that no longer exist in the conversation\n\nWhen compaction keeps some messages, Claude Code now removes any on that list that are no longer in the conversation\n\n**What**\n\nCompaction is what Claude Code does when a conversation gets too long: it shortens older parts so the session can continue. Some messages are marked to be kept as they are. Claude Code now checks that list and removes any message that no longer exists in the conversation.\n\nWhen it does this, Claude Code also records how many entries were dropped. It also records how many tool steps were left without their pair. A tool step is a request from Claude to run a tool, matched with the tool's reply.\n\n**Why**\n\nThis helps stop a tool request from being left without its reply, or a reply without its request, after compaction. Mismatched pairs like that can break the conversation.\n\n- Area: Compaction\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}