feat(web): add Tab completion to path browser#4257
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)
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: Needs human review This PR introduces a new user-facing feature (Tab completion in the path browser) that changes how users interact with the command palette. New interactive capabilities warrant human review even when well-tested and self-contained. You can customize Macroscope's approvability policy. Learn more. |
493ac39 to
3accacf
Compare
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 a7ae59d. Configure here.
83ce1aa to
dc90a36
Compare

Summary
Why
The add-project and clone-destination path inputs already display matching directories, but Tab moved focus out of the input instead of accepting a suggestion. This makes the picker behave like a directory autocomplete and addresses #2160.
Validation
pnpm exec vp test run apps/web/src/components/CommandPalette.logic.test.tspnpm --filter @t3tools/web typecheckvp fmt --checkandvp linton the three changed filesCloses #2160
Exact-head evidence
Revalidated at 83ce1aa on current main (9a0a071): focused tests, vp check, and vp run typecheck passed. The capture uses only disposable local projects.
Note
Low Risk
Localized command-palette keyboard handling and pure selection logic; no auth, data, or API changes.
Overview
Tab in the command palette path browser now accepts a directory suggestion instead of moving focus out of the input.
While browsing, plain Tab is intercepted and routed through new
resolveBrowseTabCompletion: highlighted row (including..→ parent) wins, then a case-sensitive exact name match on the filter, then the first filtered directory.browseUp/browseToapply the choice; Tab does nothing when matches are still loading or a relative path needs an active project.Reviewed by Cursor Bugbot for commit dc90a36. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Add Tab key completion to the path browser in Command Palette
browseUp.resolveBrowseTabCompletionin CommandPalette.logic.ts with full unit test coverage in CommandPalette.logic.test.ts.Macroscope summarized dc90a36.