Skip to content

feat(updates): add setting to dismiss update banners#3107

Merged
charlesvien merged 4 commits into
mainfrom
feat/dismissible-update-banners
Jul 2, 2026
Merged

feat(updates): add setting to dismiss update banners#3107
charlesvien merged 4 commits into
mainfrom
feat/dismissible-update-banners

Conversation

@charlesvien

@charlesvien charlesvien commented Jul 2, 2026

Copy link
Copy Markdown
Member

Problem

#3101 made the update-ready banner dismissible by adding a "Later" button, which grew the banner into a two-row card. Update banners are meant to stay concise, and dismissal should be opt-in without changing the default UI.

Changes

  • Revert feat(updates): add "Later" option to dismiss the update-ready banner #3101, restoring the original single-row banner layout.
  • Add a "Dismissible update banners" switch to Settings > Updates (persisted, default off, only shown when updates are enabled).
  • With the setting on, hovering a banner reveals a small dismiss X: an overlay badge on the corner of the sidebar cards and an inline icon next to the compact title-bar pills. The banner layout itself never changes, and with the setting off nothing renders differently from before the revert.
  • Dismissal is session-scoped and keyed by version: one click hides every banner instance for that version and keeps it hidden through the available/downloading/ready cycle. The banner returns when a newer version arrives, after an app restart or when the setting is turned off.

Screenshots

At rest (setting on) Hovered
banner at rest banner hovered showing the dismiss X

updates settings with the new switch

Screenshots come from the dev app with a forced update state, since the updater is disabled in dev builds. Images are hosted on the pr-3107-assets branch; delete it after merge if unwanted.

How did you test this?

  • UpdateBanner.test.tsx (7 cases): no dismiss button when the setting is off and dismissal when it is on, both parameterised across the sidebar and compact variants; dismissal holds across the update cycle; a newer version resurfaces the banner; turning the setting off restores a dismissed banner.
  • Added dismissibleUpdateBanners to the settings store rehydrate test table.
  • pnpm typecheck (22 packages), biome check on the changed files and the full @posthog/ui vitest suite all pass.
  • Drove the real Electron app over CDP with a forced update state to verify the hover reveal live and capture the screenshots above.

Automatic notifications

  • Publish to changelog?
  • Alert Sales and Marketing teams?

@trunk-io

trunk-io Bot commented Jul 2, 2026

Copy link
Copy Markdown

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

React Doctor found no issues in the changed files. 🎉

Reviewed by React Doctor for commit 601f278.

@charlesvien charlesvien added the Stamphog This will request an autostamp by stamphog on small changes label Jul 2, 2026
@greptile-apps

greptile-apps Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Reviews (1): Last reviewed commit: "add setting to dismiss update banners" | Re-trigger Greptile

Comment thread packages/ui/src/features/sidebar/components/UpdateBanner.test.tsx Outdated

@stamphog stamphog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

T1d feature with zero reviews that silently removes the always-visible "Later" dismiss button from the update-ready banner for all existing users — it's now gated behind a new setting that defaults to off. This is a user-facing behavioral regression that warrants human sign-off before merging.

@stamphog stamphog Bot removed the Stamphog This will request an autostamp by stamphog on small changes label Jul 2, 2026
@charlesvien charlesvien added the Stamphog This will request an autostamp by stamphog on small changes label Jul 2, 2026

@stamphog stamphog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR removes the always-visible "Later" dismiss button from the update-ready banner and replaces it with a new dismiss button gated behind a setting that defaults to off — a user-facing behavioral regression for all existing users. A bot review flagged this exact concern on an older commit, and the current diff still exhibits the same behavior. No human has reviewed this change.

@stamphog stamphog Bot removed the Stamphog This will request an autostamp by stamphog on small changes label Jul 2, 2026
@charlesvien charlesvien merged commit c65fd80 into main Jul 2, 2026
23 checks passed
@charlesvien charlesvien deleted the feat/dismissible-update-banners branch July 2, 2026 20:35
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