Skip to content

Add sidebar fixed-item visibility controls - #2478

Open
brsbl wants to merge 4 commits into
bb/build-search-palette-layer-thr_z45dnp4jywfrom
bb/sidebar-top-region-item-toggles-thr_2e2gbjx943
Open

Add sidebar fixed-item visibility controls#2478
brsbl wants to merge 4 commits into
bb/build-search-palette-layer-thr_z45dnp4jywfrom
bb/sidebar-top-region-item-toggles-thr_2e2gbjx943

Conversation

@brsbl

@brsbl brsbl commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

What was wrong

The sidebar’s two fixed top-region rows—New thread and Extensions—had no item-level visibility preferences. The legacy hidden-plugin preference could also still contain the built-in __builtin__/tools key, so introducing an Extensions preference without a one-time, order-independent handoff would either resurface a previously hidden row or consume unrelated plugin-page state.

What changed

  • adds client-local visibility preferences for New thread and Extensions, both defaulting on
  • adds the decided Sidebar items checkbox group last in Display options and keeps the menu open while toggling
  • hides only the selected fixed row, with no overflow disclosure and no route removal
  • migrates only the legacy __builtin__/tools entry to Extensions off, preserving plugin-page keys for the plugin-list migration
  • keeps migration idempotent and order-independent whether the plugin-list or fixed-item layer runs first
  • adds focused coverage for defaults, repeated toggling, persistence, route availability, migration fan-out, and command-palette escape-hatch behavior

No server state, server files, wire contracts, or daemon protocol fields changed.

Before (parent PR #2474 head 23c1937624d5f3a408ba7be3876a461658a03790)

Display options ended at Sidebar sections; New thread and Extensions had no item-level controls.

Before — Display options without Sidebar items

After (this PR head 7071a5a492b58bf0403792ea8c1e8786c8e41468)

Sidebar items renders last, with both fixed rows checked by default and no new sidebar chrome.

After — Sidebar items controls

Toggling Extensions removes only that fixed row; New thread and the rest of the sidebar remain unchanged.

After — Extensions hidden

How you verified

  • focused Vitest acceptance after merging Move thread search into the command palette #2474: 6 files, 51 tests passed
  • pnpm exec turbo run typecheck: 76/76 tasks passed
  • repo lint: 0 errors (174 warnings)
  • Chrome for Testing 151.0.7922.71 against scripts/bb-dev-app current: five toggle cycles, menu retention, hard reload, persisted state, 1440×900 and 1024×768 layouts, light/dark themes, and legacy tools migration; zero runtime exceptions
  • Safari 26.5.2 via Safari WebDriver: default and hidden states, hard reload persistence, light/dark/system themes, Extensions client navigation, and return to the composer; zero captured runtime errors
  • before/after captures used the same copied fixture database, route, 1440×900 viewport, and state; only the compared revision changed

Fixes: Updated Sidebar Spec — top-region item toggles layer

BB-Thread-ID: thr_2e2gbjx943

AGENT GENERATED

brsbl added 2 commits August 26, 2026 05:05
….com:get-bb/bb into bb/sidebar-top-region-item-toggles-thr_2e2gbjx943

# Conflicts:
#	apps/app/src/components/sidebar/AppSidebar.tsx
#	apps/app/src/components/sidebar/ProjectList.tsx
#	apps/app/src/components/sidebar/SidebarThreadSearchPanel.test.tsx
brsbl added a commit to brsbl/bb that referenced this pull request Aug 26, 2026
@brsbl
brsbl changed the base branch from bb/sidebar-splits-thr_2e2gbjx943 to bb/build-search-palette-layer-thr_z45dnp4jyw August 26, 2026 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant