Skip to content

feat(sidebar): keep multi-root project headers project-only - #750

Merged
im-ian merged 1 commit into
mainfrom
feat/multi-root-project-menu
Aug 5, 2026
Merged

feat(sidebar): keep multi-root project headers project-only#750
im-ian merged 1 commit into
mainfrom
feat/multi-root-project-menu

Conversation

@im-ian

@im-ian im-ian commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary

Multi-root project headers now delegate root-scoped creation to the individual root rows and keep only project-level actions at the group level.

  1. Header scoping — hide direct regular and worktree session buttons whenever a project has an extra source root.
  2. Project-only menus — make both the ellipsis and right-click menus expose source-folder management, project settings, Finder/path actions, and project close only.
  3. Accessible localization — give the multi-root ellipsis a dedicated project-menu label in all supported languages.
  4. Regression coverage — verify multi-root headers contain no creation actions while single-root headers keep their existing shortcuts.

Expected impact

Area Before After
Multi-root project header Creation buttons and mixed workspace/session menu target the primary root implicitly No root-scoped creation; project management actions only
Source-root rows Per-root session and workspace creation Unchanged and remains the explicit creation surface
Single-root project header Direct session buttons and creation menu Unchanged

Design notes

  • A project is treated as multi-root when source_paths contains at least one extra root, meaning the primary root plus one or more source roots.
  • The ellipsis and right-click menu share the same project-management item list in multi-root mode so alternate interaction paths cannot expose different scopes.
  • Session creation plumbing is unchanged; this only removes ambiguous entry points from the group header.

Test plan

  • pnpm run typecheck — passes
  • pnpm exec playwright test tests/e2e/sidebar.spec.ts --grep "multi-root project header|project header exposes regular and worktree session buttons" — 2 tests pass
  • pnpm run test — 109 files and 1,287 tests pass
  • pnpm exec playwright test tests/e2e/sidebar.spec.ts — 52 tests pass
  • git diff --check — passes

@im-ian im-ian added the enhancement New feature or request label Aug 5, 2026
@im-ian
im-ian merged commit 6b4ef64 into main Aug 5, 2026
3 checks passed
@im-ian
im-ian deleted the feat/multi-root-project-menu branch August 5, 2026 06:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant