Skip to content

feat(web): port compact workspace menu from ov2 - #12812

Closed
maria-rcks wants to merge 3 commits into
pingdotgg:mainfrom
maria-rcks:maria/compact-workspace-menu
Closed

maria-rcks wants to merge 3 commits into
pingdotgg:mainfrom
maria-rcks:maria/compact-workspace-menu

Conversation

@maria-rcks

@maria-rcks maria-rcks commented Sep 21, 2026 •

Copy link
Copy Markdown
Collaborator

ports ov2's workspace and version control popup into main's chat header, using a 256px width, 28px rows, 12px text, 8px section padding, and 2px row gaps. existing branch, editor, script, and git handlers remain in use, and open dialogs survive closing the menu or resizing.

verified in the real app: workspace mode changes, a provider turn, adding/running/editing a project script, nested editor/git menus, escape dismissal, and changes opening the diff panel. inspected desktop and phone widths in dark and light themes. blacksmith web typecheck, scoped lint, and 161 existing tests passed; the spacing follow-up passed web typecheck, scoped lint, and 78 existing tests.

before: main header actions

before spacing adjustment

after: compact workspace menu

workspace menu interaction recording

model: gpt-6. harness: codex.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Sep 21, 2026
@maria-rcks
maria-rcks marked this pull request as ready for review September 21, 2026 00:30
Comment thread apps/web/src/components/BranchToolbarEnvironmentSelector.tsx
Comment thread apps/web/src/components/ProjectScriptsControl.tsx
@macroscopeapp

This comment has been minimized.

@macroscopeapp

This comment has been minimized.

@macroscopeapp

macroscopeapp Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This PR introduces a substantial workspace and version-control menu that changes the default chat-header experience and touches multiple interactive controls and lifecycle paths. Its cross-component user-facing impact is broader than a bounded UI adjustment.

You can add or adjust custom eligibility rules. Learn more.

@coderabbitai

coderabbitai Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: pingdotgg/t3code/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 057841b8-b995-49cb-a5d0-14b846e4b6a6

📥 Commits

Reviewing files that changed from the base of the PR and between 78d3bb5 and 8bdb838.

📒 Files selected for processing (2)
  • apps/web/src/components/BranchToolbar.tsx
  • apps/web/src/components/chat/ChatHeader.tsx
🚧 Files skipped from review as they are similar to previous changes (2)
  • apps/web/src/components/BranchToolbar.tsx
  • apps/web/src/components/chat/ChatHeader.tsx

Included review availability: Your plan provides up to 10 included reviews per hour; 5 remain after this review.


📝 Walkthrough

Walkthrough

The PR adds panel layouts for branch, environment, script, editor, and Git controls. Chat headers now group these controls in workspace and version-control sections within a persistent popover. Toolbar layouts remain the default.

Changes

Thread details panel controls

Layer / File(s) Summary
Panel style and popup foundation
apps/web/src/components/chat/threadDetailsPanelStyles.ts, apps/web/src/components/ui/popover.tsx
Adds shared panel control classes and a keepMounted option for PopoverPopup.
Branch and environment panel variants
apps/web/src/components/BranchToolbar.tsx, apps/web/src/components/BranchToolbarBranchSelector.tsx, apps/web/src/components/BranchToolbarEnvModeSelector.tsx, apps/web/src/components/BranchToolbarEnvironmentSelector.tsx
Adds panel layout sections and panel-specific presentation for branch and environment controls.
Workspace and Git action panel variants
apps/web/src/components/chat/OpenInPicker.tsx, apps/web/src/components/ProjectScriptsControl.tsx, apps/web/src/components/GitActionsControl.tsx
Adds panel action groups, anchored popups, panel styling, and a Git “Changes” action.
Chat header panel integration
apps/web/src/components/ChatView.tsx, apps/web/src/components/chat/ChatHeader.tsx
Passes consolidated branch-toolbar props and replaces responsive inline/menu switching with workspace and version-control sections in a persistent popover.

Priority: ➖ Normal

Estimated code review effort: 4 (Complex) | ~45 minutes

Change: Feature

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 8 functions across 11 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main change: porting the compact workspace menu from OV2 into the web application.
Description check ✅ Passed The description explains the workspace and version control popup, documents UI dimensions and behavior, includes screenshots and a recording, and reports verification and test results. It does not use…
  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL 500-999 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