Remote sessions repeat some rows after compaction; bridge handles unverified Slack turns
In remote sessions, some stored rows are now re-sent after a compaction event, and the bridge treats non-slash messages without a verified Slack human turn differently
Under the hoodTier: how much it should matter to you
2Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
CompactionArea: what it touches
Internal ChangesKind: in v2.1.292,
Internal ChangesSection of the release
What
Compaction is when Claude Code shortens a long conversation by summarising older parts so it fits in the model's memory. This release adds a way to keep certain rows of a remote session present after that happens:
The remote input/output layer gets a repeatAfterCompaction setter.
When a compaction event is queued with no session_agent_id, the client appends extra rows from rowsRepeatedAfterCompaction in the same batch, each with a fresh uuid. Before, only the original events were sent.
Separately, the bridge's handler for incoming messages now calls a function for messages that are not slash commands and lack verifiedSlackHumanTurn.
Why
Rows that a compaction would otherwise drop can stay in the stored session. These are internals of remote sessions, and what the Slack-turn handling does in practice is not described.