Skip to content

Desktop: 'Compacting context' and 'Context compacted' messages not rendered properly #128

Description

@wangtsiao

Describe the bug

The "Compacting context" and "Context compacted" system messages are not rendered correctly in the Desktop app's transcript.

Issues

  1. Rendering — These compaction lifecycle events do not display as proper visual dividers in the chat transcript. They may flash briefly but don't appear as persistent status indicators between turns.

  2. Persistence on session load — When a session is saved and later reloaded (session resume), the compaction events are not replayed from the rollout file. This means users see a gap in the conversation history where compaction occurred, without any visual indicator.

Affected components

  • apps/desktop/src/renderer/atoms/actions/event-processor.ts — event processing
  • apps/desktop/src/renderer/components/chat/compaction-status-divider.tsx — compaction divider component
  • crates/core/src/conversation/records.rs — rollout record types for compaction events
  • crates/core/src/durable_record.rsContextCompactionStarted and ContextCompactionCompleted record types

Expected behavior

  • Compaction status should be clearly visible in the transcript as a divider between turns
  • When loading a saved session, compaction events should be replayed from rollout records so the user can see where compaction happened

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions