Skip to content

Conversation

@ammar-agent
Copy link
Collaborator

Summary

When the 'notify on response' feature triggers for a post-compaction message, show "Compaction complete" as the notification body instead of the compaction summary text.

Background

The compaction summary text can be long and technical, making it unsuitable for notification body content. Users just need to know compaction finished, not see the full summary.

Implementation

  • Added isCompaction parameter to the onResponseComplete callback signature in StreamingMessageAggregator
  • Captured wasCompacting from the stream context before cleanup (since cleanup removes the stream)
  • Updated WorkspaceStore callback type to include the new parameter
  • Added logic in App.tsx to show "Compaction complete" when isCompaction is true

Generated with mux • Model: anthropic:claude-opus-4-5 • Thinking: high • Cost: $1.08

When the 'notify on response' feature triggers for a post-compaction
message, show 'Compaction complete' as the notification body instead
of the compaction summary text (which can be long and technical).

Changes:
- Add isCompaction parameter to onResponseComplete callback
- Capture isCompacting from stream context before cleanup
- Handle compaction case in App.tsx notification logic
@github-actions github-actions bot added the enhancement New feature or functionality label Jan 24, 2026
@ammario ammario merged commit c653d30 into main Jan 24, 2026
24 checks passed
@ammario ammario deleted the compaction-notification-text branch January 24, 2026 16:10
ammario pushed a commit that referenced this pull request Jan 24, 2026
## Summary

Skip the compaction-complete notification when the compaction request
includes a continue message by threading compaction metadata through the
response-complete callback, avoiding racy queued-message checks.

This is a follow-up to #1888.

## Implementation

- Added compaction continue metadata to `StreamingMessageAggregator`
stream context and pass it through `onResponseComplete` as an optional
compaction object
- Updated `WorkspaceStore` callback typing to accept the optional
compaction object
- Updated `App.tsx` to skip notifications when
`compaction?.hasContinueMessage` and to use compaction presence for the
"Compaction complete" body

## Validation

- `make static-check`

---

_Generated with `mux` • Model: `anthropic:claude-opus-4-5` • Thinking:
`high` • Cost: `$1.61`_

<!-- mux-attribution: model=anthropic:claude-opus-4-5 thinking=high
costs=1.61 -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants