fix(web): ui fixes on snooze#4418
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ApprovabilityVerdict: Approved UI-only changes extending snooze display to ChatView and adding collapsible settled shelf. Changes follow existing patterns for settled thread handling and are scoped to the web layer without schema or security implications. You can customize Macroscope's approvability policy. Learn more. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 59d2412. Configure here.

What Changed
Why
The snooze UI had inconsistent icon, color, spacing, action, and typography treatments. Expanding history could also introduce a scrollbar that shifted the sidebar layout, and opening a snoozed thread did not explain its state above the composer.
This PR is stacked on #4311 and targets its
t3/sidebar-v2-snoozebranch.UI Changes
No browser screenshots or interaction recording were produced, per the requested verification scope.
Checklist
Note
Add composer banner and wake action for snoozed threads in chat view
threadEnvironment.unsnooze.setTimeouttriggers a re-render when the snooze expiry time passes, keeping the banner state accurate without manual refresh.parkedThreadBannerItemwith context-appropriate icons, labels, and in-flight states ("Waking...", "Un-settling...").Macroscope summarized b5499fb.
Note
Low Risk
Presentation and local UI state only; snooze/settle behavior still goes through existing capability checks and atom commands.
Overview
Snooze and settled threads get clearer sidebar shelves and a shared composer banner so parked state is obvious without inconsistent chrome.
In ChatView, the settled-only composer banner becomes a parked-thread banner that also covers snoozed threads (when
threadSnoozeis enabled). It useseffectiveSnoozed, shows snooze-specific copy and Wake now viathreadEnvironment.unsnooze, and schedules a timeout atsnoozedUntilso the UI refreshes when the snooze expires without a server event.In SidebarV2, the Settled section is collapsible like Snoozed (default expanded; collapsed shows only the routed thread). Shelf headers use counts, chevron toggles, and blue styling for Snoozed. Snooze/wake row affordances drop bordered hover chips in favor of transparent styling aligned with unsettle; wake countdowns are blue tabular text without a clock icon. The thread list adds
scrollbar-gutter: stableto avoid layout shift when scrollbars appear.Reviewed by Cursor Bugbot for commit b5499fb. Bugbot is set up for automated code reviews on this repo. Configure here.