[codex] Group projects in new-thread pickers#4312
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 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 |
ApprovabilityVerdict: Needs human review This PR introduces a new feature that groups projects in command palette pickers, changing how users see and search for projects. The logic for finding latest threads and building search terms is modified to work across grouped projects. New user-facing behavior warrants human review. You can customize Macroscope's approvability policy. Learn more. |
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
e7d474e to
7ec6918
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.
Bugbot Autofix is ON, but a cloud agent failed to start.
Reviewed by Cursor Bugbot for commit 7ec6918. Configure here.
Co-authored-by: codex <codex@users.noreply.github.com>

Why
After Sidebar V2 groups duplicate repository copies, its new-thread flows can still list every physical environment/project pair. That makes the picker disagree with the sidebar and presents redundant choices.
Root cause
The command palette and global new-thread route consume the raw project collection rather than logical project snapshots.
Fix
Dependency
Stacked on PR #4282 because it reuses the logical grouping helpers introduced there.
Verification
vp run --filter @t3tools/web typecheckNote
Group projects by logical groups in new-thread pickers and command palette
chat.newshortcut now opens the command palette only when there is more than one logical project group, not merely more than one raw project.Macroscope summarized f6f19ce.
Note
Low Risk
UI-only routing and picker aggregation in the web app; reuses existing sidebar grouping helpers with no auth or data-layer changes.
Overview
Aligns command palette and global
chat.newbehavior with Sidebar V2 logical project groups so pickers no longer list every physical environment/project copy.The palette builds one row per logical group (
buildSidebarProjectSnapshots/buildSidebarProjectPickerEntries), uses each group’s display name, and extendsbuildProjectActionItemswith optional extra search terms from all member projects. Opening a grouped project navigates to the latest non-archived thread across the whole group (not just the target project). New thread in… keeps the user’s contextual project ref when it belongs to the selected group.The root “New thread in …” label prefers the preferred picker group name.
chat.newin_chat.tsxopens the palette only whenprojectGroupCount > 1(logical groups), not raw project count.Reviewed by Cursor Bugbot for commit f6f19ce. Bugbot is set up for automated code reviews on this repo. Configure here.