Skip to content

Polish sidebar hierarchy and section actions - #2501

Open
brsbl wants to merge 10 commits into
bb/sidebar-top-region-item-toggles-thr_2e2gbjx943from
bb/sidebar-final-polish-thr_2e2gbjx943
Open

Polish sidebar hierarchy and section actions#2501
brsbl wants to merge 10 commits into
bb/sidebar-top-region-item-toggles-thr_2e2gbjx943from
bb/sidebar-final-polish-thr_2e2gbjx943

Conversation

@brsbl

@brsbl brsbl commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

What was wrong

Traditional plugin rows exposed only position controls, and the options button and right-click surfaces did not provide one complete host-owned action model. Across collapsible sidebar rows, carets and transient hover controls also competed for the same trailing space.

What changed

  • gives every traditional plugin row one icon-labelled menu for Move to top, Move to overflow, Open in split, Detail page, and Disable
  • uses the same complete action set from the options button and right-click menu
  • routes Detail page to the plugin's canonical Extensions detail and performs Disable through the host-owned mutation
  • reserves distinct far-right caret and transient-action slots across project, section, environment, parent-thread, and plugin rows
  • steps hierarchy glyphs down one visual rung while preserving action visibility and alignment

Visual evidence

Exact comparison: 66cf39b68e813c195e39ecdb022cb5ffbf0292c56278f2b81cea120828a02e2f901c58735b863ea0.

Before — exact base 66cf39b68e813c195e39ecdb022cb5ffbf0292c5

The Plugin Guide row menu contains only disabled position controls.

Before — position-only plugin menu

After — exact head 6278f2b81cea120828a02e2f901c58735b863ea0

The same fixture, row, route, and menu state add Open in split, Detail page, and Disable with leading icons.

After — complete plugin row menu

After — Open in split

After — Plugin Guide opened alongside the existing pane

How you verified

  • Google Chrome for Testing 151.0.7922.71, exact branch web apps from scripts/bb-dev-app, light theme, /, 1440×900, with the built-in Plugin Guide enabled in the isolated fixture on both revisions.
  • The base menu contained only disabled Move to top and Move to overflow. The head added icon-labelled Open in split, Detail page, and Disable.
  • Right-click exposed the identical five-item menu.
  • Open in split opened /plugins/plugin-api-docs/plugin-api beside the existing pane; Detail page navigated to /extensions/plugins/plugin-api-docs; Disable removed the row, showed “Plugin Guide disabled,” and the API reported enabled: false / status: disabled.
  • Observed aligned trailing controls/carets in the same captured sidebar states. No page or console errors were recorded.

Cumulative prototype parity — final stack

This is the cumulative completion gate at the exact final stack head 6278f2b81cea120828a02e2f901c58735b863ea0. Lower PRs retain their exact incremental before/after evidence; these comparisons belong on the top layer because they exercise all layers composed together.

  • canonical spec SHA-256: 06ef18e7042ee1012b4391ec73b771ef0123129ad47103027a68349c57d9130d
  • Google Chrome for Testing 151.0.7922.71, light theme, 1440×900; compact state 700×900
  • one isolated branch web app and one long-lived Chrome-for-Testing session
  • 21/21 materially distinct prototype states passed; prototype is left and implementation is right in every row
  • no product code changed during this pass

Flow 1 — Shape and customize

State order: initial; customized/reordered; all bb-owned items hidden; Manual with Active + Drafts.

Flow 1 prototype parity

Flow 2 — Thread lifecycle

State order: Active default; Active + Drafts + Archived; focused Unarchive; empty recovery.

Flow 2 prototype parity

Flow 3 — Palette search

State order: commands-only root; flat ranked query; unlabelled thread mode; Archived scope.

Flow 3 prototype parity

Flow 4 — Plugin pages and overflow

State order: collapsed; expanded; complete icon-labelled row menu; zero traditional plugins.

Flow 4 prototype parity

Flow 5 — Split drafts

State order: hover/focus Split action; blank split; independent pane payloads; restored payloads; compact drawer.

Flow 5 prototype parity

The pass also exercised behavior screenshots cannot prove: live top-row reorder/hide, lifecycle selection protection and Unarchive removal, the palette's keyboard scope and two-step Escape ladder, identical plugin .../right-click actions and Detail page/Disable behavior, plus per-pane draft/attachment persistence through reload and close/reopen. Full 21-state manifest and filenames.

Fixes: N/A — Updated Sidebar final polish layer.

BB-Thread-ID: thr_2e2gbjx943

AGENT GENERATED

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