Repository navigation
Conversation
Contributor
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This adds a persisted user-facing setting that changes whether stale Claude thread sends compact history, while also changing per-thread state reset behavior. Although the default is unchanged and the diff is focused, the composer decision and reset flow lack direct behavioral test coverage. You can add or adjust custom eligibility rules. Learn more. |
Contributor
Author
|
@juliusmarminge @t3dotgg @maria-rcks focused PR to add a setting for a very annoying new default on compaction! |
Add a "Compact stale threads by default" setting. It stays on by default. When it's off, the Compact chip on a stale Claude thread starts at Full, and the chip still switches for a single message. After a successful send, the thread's chip goes back to the setting. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Move the per-thread chip choice into ContextWindowMeter.logic so the default, a thread's own choice, and the reset after a send are tested. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
When you return to a large Claude thread after its prompt cache expires, the composer shows a Compact chip that starts on. If you don't notice it and press Enter, the thread's history is summarized before your message is sent, and that can't be undone. The only way to get the full history back is to fork the thread. Users who usually want to keep full history have no way to make that the starting state.
Change
Adds a client setting, Settings → General → Compact stale threads by default. It's on by default, so nothing changes for existing users.
Web and desktop share this composer. Mobile has no Compact chip, so it's unaffected.
Scope and approval
This is a focused configuration option for an existing feature, the compact-before-send chip from #17127 and #17945. The setting only controls whether the chip starts on or off. When the chip is shown, what compaction does, and how the chip works for one message are unchanged. The default stays the same.
Verification
vp test run packages/contracts/src/settings.test.ts apps/desktop/src/settings/DesktopClientSettings.test.ts: 178 passed. This includes a new test that the setting defaults to on and acceptsfalse.vp test run apps/web/src/components/chat/ContextWindowMeter.logic.test.ts: 26 passed. New tests cover how the chip follows the setting per thread: the default, a thread's own choice overriding it either way, and a thread returning to the setting once its choice is cleared after a send.tsc-rs --noEmitpasses forpackages/contracts,apps/web, andapps/desktop.vp linton the changed files reports 0 errors. The 4 warnings were already inChatView.tsxonmain.Before / setting on (default): chip starts at Compact
After / new setting:
After / setting off: chip starts at Full
Written with Claude Opus 5.5 in Claude Code, run inside T3 Code.