Show “Awaiting Input” sidebar status and extract thread status logic#701
Merged
juliusmarminge merged 2 commits intomainfrom Mar 9, 2026
Merged
Show “Awaiting Input” sidebar status and extract thread status logic#701juliusmarminge merged 2 commits intomainfrom
juliusmarminge merged 2 commits intomainfrom
Conversation
- add `Sidebar.logic.ts` to centralize thread status pill resolution - show `Awaiting Input` when plan mode is blocked on user responses - add unit tests for unseen completion and status-priority behavior - prevent plan collapse/expand clicks from triggering chat scroll anchoring
|
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)
Comment |
- add "Plan Ready" sidebar status when a plan-mode turn is settled with a proposed plan - update sidebar logic tests to cover the new status and expanded thread inputs
4 tasks
This was referenced Mar 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CleanShot.2026-03-09.at.09.41.25.mp4
Summary
Awaiting Inputas a first-class sidebar thread status when plan mode is blocked on user responsesSidebar.logic.tsfor clearer precedence and easier maintenanceSidebar.logic.test.tscovering status priority and unseen completion behaviorChatViewTesting
hasUnseenCompletionandresolveThreadStatusPillinapps/web/src/components/Sidebar.logic.test.tsbun lintbun typecheckbun run testNote
Low Risk
Low risk UI/UX logic change: updates sidebar status-pill precedence (including new “Awaiting Input”/“Plan Ready” states) and tweaks chat scroll-anchor click handling, with unit tests covering the new resolver behavior.
Overview
Sidebar thread status resolution is refactored and expanded. Status-pill logic is extracted into
Sidebar.logic.ts(with newresolveThreadStatusPill/hasUnseenCompletion) andSidebar.tsxnow derives both pending approvals and pending user inputs to show an “Awaiting Input” state, plus a “Plan Ready” state when a settled plan has an associated proposed plan.Test coverage is added via
Sidebar.logic.test.tsto lock in precedence (pending approval → awaiting input → working/connecting → plan ready → completed) and unseen-completion behavior.Chat scroll anchoring is hardened by ignoring clicks on elements within
[data-scroll-anchor-ignore](and marking the plan expand/collapse button accordingly) to avoid unintended scroll-anchor adjustments when toggling plan expansion.Written by Cursor Bugbot for commit c30706a. This will update automatically on new commits. Configure here.
Note
Show “Awaiting Input” and “Plan Ready” thread status in the sidebar and add a click guard in
ChatView.onMessagesClickCapturein ChatView.tsxExtract thread status logic into
Sidebar.logicwithresolveThreadStatusPillandhasUnseenCompletion, wirederivePendingUserInputsinto the sidebar, and adddata-scroll-anchor-ignorehandling in the chat view. Tests cover status resolution scenarios.📍Where to Start
Start with
resolveThreadStatusPillandhasUnseenCompletionin Sidebar.logic.ts, then see their usage in Sidebar.tsx.Macroscope summarized c30706a.