Skip to content

fix(web): ui fixes on snooze#4418

Merged
maria-rcks merged 3 commits into
t3/sidebar-v2-snoozefrom
agent/ui-fixes-on-snooze
Jul 24, 2026
Merged

fix(web): ui fixes on snooze#4418
maria-rcks merged 3 commits into
t3/sidebar-v2-snoozefrom
agent/ui-fixes-on-snooze

Conversation

@maria-rcks

@maria-rcks maria-rcks commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

What Changed

  • simplify snoozed thread rows and actions
  • add collapsible Snoozed and Settled shelves with counts
  • prevent scrollbar-driven sidebar layout shifts
  • show the parked-thread composer notice for snoozed threads

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-snooze branch.

UI Changes

  • snoozed countdowns are compact sans-serif timestamps without a clock icon
  • collapsed shelves show counts and use down/up chevrons
  • unsnooze styling matches unsettle styling
  • snoozed threads show a composer notice with a Wake now action

No browser screenshots or interaction recording were produced, per the requested verification scope.

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes

Note

Add composer banner and wake action for snoozed threads in chat view

  • The chat composer in ChatView.tsx now shows a banner for snoozed threads (alongside the existing settled banner), with a "Wake now" button that calls threadEnvironment.unsnooze.
  • A scheduled setTimeout triggers a re-render when the snooze expiry time passes, keeping the banner state accurate without manual refresh.
  • The settled and snoozed banners are unified into a single parkedThreadBannerItem with 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 threadSnooze is enabled). It uses effectiveSnoozed, shows snooze-specific copy and Wake now via threadEnvironment.unsnooze, and schedules a timeout at snoozedUntil so 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: stable to 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.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7a60171d-1c57-4e61-b960-a9733d6d3a4d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/ui-fixes-on-snooze

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added size:L 100-499 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Jul 24, 2026
@maria-rcks
maria-rcks marked this pull request as ready for review July 24, 2026 03:05
Comment thread apps/web/src/components/ChatView.tsx Outdated
Comment thread apps/web/src/components/SidebarV2.tsx Outdated
@macroscopeapp

macroscopeapp Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: 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.

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ 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.

Comment thread apps/web/src/components/ChatView.tsx Outdated
@maria-rcks
maria-rcks merged commit efdf69b into t3/sidebar-v2-snooze Jul 24, 2026
16 checks passed
@maria-rcks
maria-rcks deleted the agent/ui-fixes-on-snooze branch July 24, 2026 03:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant