Add working wave animation to thread statuses#4299
Conversation
- Animate the Working status copy in web and mobile thread lists - Reuse shared status text rendering in the sidebar - Update tests and keyframes for the new wave motion
|
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 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 |
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.
Want fixes drafted automatically? Bugbot Autofix can create code changes for findings. A team admin can enable Autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit a26d17d. Configure here.
|
|
||
| return ( | ||
| <View accessible accessibilityLabel="Working" className="flex-row items-center"> | ||
| {Array.from("Working", (letter, index) => ( |
There was a problem hiding this comment.
Nested accessible status inside button
Medium Severity
WorkingStatusText marks its container accessible with accessibilityLabel="Working" inside a card Pressable that already exposes accessibilityLabel={thread.title} and accessibilityRole="button". That adds a separate assistive-tech focus stop nested in the row button, unlike other statuses rendered as plain Text, and can split navigation away from the thread action.
Reviewed by Cursor Bugbot for commit a26d17d. Configure here.
ApprovabilityVerdict: Approved This PR adds a visual wave animation effect to the 'Working' status text across mobile and web apps. The changes are purely presentational with no runtime behavior impact. One unresolved accessibility comment notes a potential navigation issue with nested accessible elements, which is a minor UX concern rather than a blocking defect. You can customize Macroscope's approvability policy. Learn more. |
|
this kills perf |


What Changed
Why
To nicely better the indication of working threads
UI Changes
Screencast.From.2026-07-22.13-07-31.mp4
Screencast.From.2026-07-22.13-12-49.mp4
Checklist
Note
Low Risk
Presentation-only status UI and CSS animations with reduce-motion hooks; no auth, data, or business-logic changes.
Overview
Working thread status in web and mobile thread lists now uses a staggered letter wave instead of static text or the old sidebar opacity pulse.
On web, shared
ThreadStatusTextdrives the effect viaanimate-working-wave(per-letter delays,motion-reduce:animate-none). It is wired into status pills and Sidebar v2; the working row keeps a spinning dashed icon and usesaria-labelon the status while animated letters stayaria-hidden. CSS replaces--animate-sidebar-working-textwith--animate-working-waveand newworking-wavekeyframes.On mobile thread list v2,
ThreadListV2StatusTextruns an equivalent wave with Reanimated (ReduceMotion.System,accessibilityLabel="Working").Tests cover accessible Working markup and unchanged static labels for other statuses.
Reviewed by Cursor Bugbot for commit a26d17d. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Add wave animation to 'Working' thread status labels on web and mobile
animationDelayon web (via newanimate-working-waveCSS keyframes) and aSharedValue-driventranslateYtransform on mobile.ThreadStatusText(web) andWorkingStatusText(mobile) components that conditionally render animated letters for 'Working' and plain text for all other statuses.CircleDashedIconin the sidebar replaces the previous static icon for working threads.motion-reduceon web,ReduceMotion.Systemon mobile); mobile cancels the animation on unmount.--animate-sidebar-working-textCSS token and its keyframes in favor of the new sharedworking-waveanimation.Macroscope summarized a26d17d.