Skip to content

Make What's new a built-in plugin with a sidebar card and an easy off switch - #4981

Open
brsbl wants to merge 51 commits into
bb/shared-onboarding-components-thr_gt5eeahuymfrom
bb/whats-new-settings
Open

brsbl wants to merge 51 commits into
bb/shared-onboarding-components-thr_gt5eeahuymfrom
bb/whats-new-settings

Conversation

@brsbl

@brsbl brsbl commented Oct 6, 2026 •

Copy link
Copy Markdown
Collaborator

Human comments

What was wrong

Release notes were hidden behind an experiment in Settings, and updating bb gave users no visible entry point to them.

What changed

  • A default-on What's new plugin shows a dismissible sidebar nudge after updates, with Turn off and Undo.
  • New installs establish a baseline silently; visiting the notes or dismissing the nudge marks that release seen per client.
  • Settings → Updates shows compact notes, skipped releases, and Show me actions that fill the composer without sending.
  • The read-only bb whats-new command and release-notes SDK/API remain available when the plugin is disabled.
  • Experimental plugin slots host the sidebar nudge and Updates section; Plugin SDK is 0.6.42.
  • The branch now uses the shared UI foundation, with the current sidebar footer layout and no inherited setup/notification implementation.

Compatibility hold

This candidate removes the shipped changelogPreview experiment key. Older CLI callers receive 400 and API clients lose that field. The earlier request to make release notes nonexperimental does not establish approval for those exact compatibility effects; approval must be verified or compatibility preserved before shipping.

How you verified

  • Merge commit 51dec7b12a70484d1c4874471e4371fb9a47a031 preserves branch history and the feature-only diff over its new base.
  • Remote CI passed on the new candidate: CI run.
  • Current-head review, browser QA, refreshed screenshots, and user screenshot sign-off remain pending.

Previous candidate evidence — superseded

These captures document the earlier candidate and do not verify or request approval for the new head.

Before: b75017c (#5222 head) · After: ea8000a · Captured at 2×

Branch web dev app, fresh mktemp -d data dir shared by both revisions: seeded threads, setup skipped, orbital selected, update simulated from 0.44.0 (seen record set to 0.44.0 before each load).

Screen / state Viewport Before After
Sidebar / What's new nudge, light (no nudge on base) Desktop · 1440×900 Before: sidebar footer with no release notes nudge After: What's new nudge above the sidebar footer
Sidebar / What's new nudge, dark (no nudge on base) Desktop · 1440×900 Before: sidebar footer with no nudge, dark After: What's new nudge, dark
After ×: Hidden until the next release + Turn off (no nudge on base) Desktop · 1440×900 Before: sidebar footer with no nudge After: Hidden until the next release with a Turn off What's new link
After Turn off What's new: Undo / Settings (no nudge on base) Desktop · 1440×900 Before: sidebar footer with no nudge After: What's new is off with Settings → Plugins and Undo
Settings → Updates / What's new block, collapsed (no block on base) Desktop · 1440×900 Before: Updates with only the update rows After: Updates with the What's new block, Updated from 0.44.0
Settings → Updates / Show all changes expanded with Show me (no block on base) Desktop · 1440×900 Before: Updates with only the update rows After: expanded notes, each Highlights bullet ends with Show me
New thread / composer after Show me on Prompt Library (no Show me on base) Desktop · 1440×900 Before: new-thread page with an empty composer After: composer filled with the Prompt Library walkthrough prompt
Sidebar drawer / What's new nudge (no nudge on base) Mobile · 390×844 Before: mobile sidebar drawer with no nudge After: mobile sidebar drawer with the What's new nudge
Settings → Updates (no block on base) Mobile · 390×844 Before: mobile Updates with only the update rows After: mobile Updates with the What's new block

BB-Thread: Brainstorm BB feature for sharing tips and
BB-Thread-ID: thr_rtj958b9wf

AGENT GENERATED

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

brsbl and others added 2 commits October 5, 2026 17:53
Replace the changelogPreview experiment with an always-on What's new
section: the installed release's highlights, releases skipped since the
page was last opened, and an available update's notes. Remove the
dismissible card, inverted footer, and nested scroll.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drop the dividers between the update row, release notes, and skipped
releases in favor of spacing, and let a release's metadata carry one
optional hero screenshot with an optional dark-theme variant.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@brsbl
brsbl force-pushed the bb/whats-new-settings branch from 179013a to b3ec51b Compare October 6, 2026 00:53
brsbl and others added 6 commits October 5, 2026 18:00
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Use the website's headline weight, lede size, section titles, and square
bullets, and mark Full changelog with the external-link icon.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keeps main's one-line-per-machine Updates layout and replaces its experiment-gated changelog preview with the permanent What's new section.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@brsbl brsbl changed the title Make What's new a permanent Settings → Updates section Make What's new permanent, with a sidebar card for unseen releases Oct 8, 2026
brsbl and others added 12 commits October 8, 2026 02:46
Each RELEASE_META entry can name a static release drawing, shown beside the
headline in the sidebar What's new card and the Settings What's new header.
Drawings are composed from a small release-art kit that mirrors the Tips
diagram kit's visual language. Backfills visuals for every release, adds a
Ladle sheet, and adds a release-visual skill for new releases.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
What's new now sits below the bb and Provider CLI rows as a compact block:
the 40px release visual, version and date, the headline at section-title
size, and the lede on one line, with the full notes behind Show all changes.
The sidebar card loses its border and keeps the raised fill. A test covers
the card scrolling to the lower #whats-new block and marking it seen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A client with no seen record now records its installed release as seen, so
the sidebar card first appears after the next update; clients with a seen
record keep getting it on upgrade.

bb whats-new reads release notes from a new read-only
GET /api/v1/system/release-notes route (SDK:
system.experimental_releaseNotes) with --version, --since, and --json. The
server parses the changelog bundled through @bb/templates with the parser
and release metadata, now in @bb/domain/changelog, that the app and website
share. Reading notes never marks a release seen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… record onboarding events

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rmission is decided

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…r follows

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…the composer

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…separately

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
brsbl and others added 5 commits October 8, 2026 15:08
…-notification-opt-in-onboardin-thr_7xet9fqq42

# Conflicts:
#	apps/app/src/components/onboarding/Onboarding.stories.tsx
#	apps/app/src/components/onboarding/SetupChecklistHost.tsx
#	apps/app/src/components/onboarding/SetupChecklistViews.tsx
#	packages/domain/src/plugin-sdk-version.ts
#	packages/plugin-sdk/package.json
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The sidebar card, the Settings → Updates notes block, the per-client seen
record, and the release drawings now live in plugins/whats-new
(bb--whats-new), installed and enabled by default. Release data stays in
core: RELEASE_META, GET /api/v1/system/release-notes (now with visual and
hero), system.experimental_releaseNotes, and bb whats-new.

The card renders through a new generic app.slots.experimental_sidebarFooterSection
slot and the notes through settingsSection experimental_page "updates", so
core renders both through the same plugin path. The card's ⋯ menu turns
What's new off with an inline Undo that says where to turn it back on;
the Show What's new plugin setting, the plugin toggle, and
bb plugin disable bb--whats-new work too. Plugin SDK 0.6.36.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@brsbl brsbl changed the title Make What's new permanent, with a sidebar card for unseen releases Make What's new a built-in plugin with a sidebar card and an easy off switch Oct 8, 2026
brsbl and others added 3 commits October 8, 2026 16:49
…te badge

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…can't re-show it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…extra, and expose setupComplete

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
brsbl and others added 15 commits October 9, 2026 16:10
…-notification-opt-in-onboardin-thr_7xet9fqq42

# Conflicts:
#	apps/app/src/components/onboarding/Onboarding.stories.tsx
#	apps/app/src/components/onboarding/OnboardingGate.tsx
#	apps/app/src/components/onboarding/SetupChecklistHost.test.tsx
#	apps/app/src/components/onboarding/SetupChecklistHost.tsx
#	apps/app/src/components/plugin/PluginNewThreadComposer.test.tsx
#	apps/app/src/views/RootComposeView.tsx
#	packages/domain/src/plugin-sdk-version.ts
#	packages/plugin-sdk/package.json
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Each highlight in the expanded Settings → Updates notes gets a quiet
Show me action that opens the new-thread composer with a walkthrough
prompt for that highlight and focuses it, through useBbNavigate().toCompose.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Plugin SDK moves to 0.6.38 since main took 0.6.36 and 0.6.37.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
0.46.0 landed on main without a What's new drawing, which the release
visual coverage test requires, and its changelog now carries an inline
image. The release-notes route moves a standalone changelog image into
hero (when release metadata has none) instead of passing it as raw
Markdown text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…test

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Highlight text often ends with its own sentence, so the prompt now names
the highlight title, then quotes the text as What's new context.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…es hierarchy, one done treatment, new plugin list

- Agent step names the checked machine when it isn't this computer; new ACP footer line
- Projects: new repos first with a quiet selection header, already-added repos as a checked group, subtitle matches the 7-day preselection
- Devices: mobile app as the primary card with one Get the app action, browser access and another machine as secondary rows, footer button Start your first thread
- Plugins: Workflows, Browser Automation, Agent Annotations, GitHub, Ask User Question, File Editor with first-session descriptions
- Shared done mark (diff-added green) for header steps, ready agents, connect On and added repos; Agent step label is Agents
- Notification card copy; step_reached counts once per step and leaving the Devices route counts as skipped

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s there

The notes component called useBbNavigate through ShowMeAction, so it
crashed outside a plugin slot and the plugins/What's new Updates section
story rendered blank. The Updates slot now supplies the Show me handler.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e room

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…r nudge

Both the notifications card and plugin sidebar footer sections render above
the footer. Plugin SDK moves to 0.6.42, above #5222 (0.6.40) and Tips (0.6.41).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@brsbl
brsbl changed the base branch from main to bb/checklist-led-home-notification-opt-in-onboardin-thr_7xet9fqq42 October 10, 2026 13:53
brsbl and others added 8 commits October 10, 2026 06:58
The card uses SidebarNudge: the release drawing in the icon tile, one
sentence, one See what's new action, and a dismiss. Turning What's new off
moves from the card's menu to the confirmation shown inside the nudge after
dismissing it, with Undo, and the confirmation collapses on its own.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Interactive Answers is now Playgrounds (#5293/#5314).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…udge to the plugin registry

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@brsbl
brsbl changed the base branch from bb/checklist-led-home-notification-opt-in-onboardin-thr_7xet9fqq42 to bb/shared-onboarding-components-thr_gt5eeahuym October 12, 2026 21:28

This branch has not been deployed

No deployments
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