Skip to content

Add sidebar-navigation and Changes-view replacement slots - #2443

Open
SawyerHood wants to merge 1 commit into
bb/garden-2-escape-to-stopfrom
bb/garden-3-app-replacement-slots
Open

Add sidebar-navigation and Changes-view replacement slots#2443
SawyerHood wants to merge 1 commit into
bb/garden-2-escape-to-stopfrom
bb/garden-3-app-replacement-slots

Conversation

@SawyerHood

@SawyerHood SawyerHood commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Human comments

What was wrong

Plugins could replace the thread list but not the two other sidebar/secondary-panel surfaces people wanted to own: the navigation controls block (New thread / Search / Extensions / plugin panels) and the whole Changes view (toolbar + file list). Plugin-owned dialogs also lacked a host-provided non-modal drawer.

What changed

Two exclusive replacement slots and one helper, all experimental_ and entered in docs/api_to_audit.md:

  • app.slots.experimental_sidebarNavigation: a semantic item list (new-thread, search-threads, extensions, plugin-panel:<pluginId>/<panelId>), activeItemId, experimental_activate(itemId, { openInSplit }), experimental_Original. bb keeps the drawer, search field, thread list, footer, and shortcuts (SidebarNavigationRegion, sidebarNavigationItems.ts). Settings → Appearance → Navigation picks the provider.
  • app.slots.experimental_changesView: replaces the Changes toolbar and file list; ChangesViewHost passes experimental_target (file/commit intents with a sequence) and experimental_Original. The built-in view remembers its selection per environment and its line-overflow mode.
  • experimental_ResponsiveDrawer (PluginResponsiveDrawer): the shared persistent responsive drawer for plugin UIs.
  • PluginSourceCodeRendererProps.experimental_Original / PluginDiffRendererProps.experimental_Original.
  • Plugin SDK bumps to 0.4.19; plugin-app-collector, plugin-slots, the testing harness, and the replacement-lab-* example plugins cover the new slots.

No wire change. Prerequisite: #2442 (stack order only).

How you verified

turbo run typecheck; turbo run test for @get-bb/plugin-sdk, @bb/app (sidebar, secondary-panel, settings, plugin), @bb/server (plugin-authoring docs), @bb/cli (packaged plugin build with the examples).

Fixes: none (upstream stack split).

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