Skip to content

feat: notifications push enable updates#8782

Merged
samir-acle merged 6 commits into
mainfrom
notifications-push-enable-updates
May 14, 2026
Merged

feat: notifications push enable updates#8782
samir-acle merged 6 commits into
mainfrom
notifications-push-enable-updates

Conversation

@samir-acle
Copy link
Copy Markdown
Contributor

@samir-acle samir-acle commented May 12, 2026

Explanation

This PR updates notification setup so clients can separate enabling MetaMask notifications from registering for push notifications.

Previously, createOnChainTriggers and enableMetamaskNotifications always attempted FCM/device push registration as part of enabling notifications. Mobile clients need to be able to enable notification preferences without immediately triggering push registration, since OS push permission and FCM registration may happen through a separate native flow.

This PR adds a registerPushNotifications option to the notification enablement options. It defaults to true to preserve existing behavior, but clients can pass false to skip push registration while still enabling MetaMask notifications and initializing notification preferences.

This PR also adds optional os and appVersion metadata to push token registration requests. These values are forwarded to the backend when registering push tokens so Firebase errors can be attributed more precisely by mobile OS and app version.

Other updates:

  • Added and updated tests for the new push registration opt-out behavior.
  • Updated JSDoc and generated messenger action types.
  • Updated the package changelog.

References

https://consensyssoftware.atlassian.net/browse/GE-217
https://consensyssoftware.atlassian.net/browse/GE-211

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them

@samir-acle
Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-previews

@github-actions
Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@7.3.0-preview-2fd84c8
@metamask-previews/accounts-controller@38.1.1-preview-2fd84c8
@metamask-previews/address-book-controller@7.1.2-preview-2fd84c8
@metamask-previews/ai-controllers@0.6.3-preview-2fd84c8
@metamask-previews/analytics-controller@1.0.1-preview-2fd84c8
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-2fd84c8
@metamask-previews/announcement-controller@8.1.0-preview-2fd84c8
@metamask-previews/app-metadata-controller@2.0.1-preview-2fd84c8
@metamask-previews/approval-controller@9.0.1-preview-2fd84c8
@metamask-previews/assets-controller@7.1.1-preview-2fd84c8
@metamask-previews/assets-controllers@108.0.0-preview-2fd84c8
@metamask-previews/authenticated-user-storage@1.0.1-preview-2fd84c8
@metamask-previews/base-controller@9.1.0-preview-2fd84c8
@metamask-previews/base-data-service@0.1.2-preview-2fd84c8
@metamask-previews/bridge-controller@72.0.4-preview-2fd84c8
@metamask-previews/bridge-status-controller@71.1.4-preview-2fd84c8
@metamask-previews/build-utils@3.0.4-preview-2fd84c8
@metamask-previews/chain-agnostic-permission@1.6.1-preview-2fd84c8
@metamask-previews/chomp-api-service@3.1.0-preview-2fd84c8
@metamask-previews/claims-controller@0.5.1-preview-2fd84c8
@metamask-previews/client-controller@1.0.1-preview-2fd84c8
@metamask-previews/compliance-controller@2.0.1-preview-2fd84c8
@metamask-previews/composable-controller@12.0.1-preview-2fd84c8
@metamask-previews/config-registry-controller@0.3.1-preview-2fd84c8
@metamask-previews/connectivity-controller@0.2.0-preview-2fd84c8
@metamask-previews/controller-utils@12.1.0-preview-2fd84c8
@metamask-previews/core-backend@6.2.2-preview-2fd84c8
@metamask-previews/delegation-controller@3.0.0-preview-2fd84c8
@metamask-previews/earn-controller@12.1.2-preview-2fd84c8
@metamask-previews/eip-5792-middleware@3.0.3-preview-2fd84c8
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-2fd84c8
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-2fd84c8
@metamask-previews/ens-controller@19.1.3-preview-2fd84c8
@metamask-previews/eth-block-tracker@15.0.1-preview-2fd84c8
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-2fd84c8
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-2fd84c8
@metamask-previews/foundryup@1.0.1-preview-2fd84c8
@metamask-previews/gas-fee-controller@26.2.1-preview-2fd84c8
@metamask-previews/gator-permissions-controller@4.1.2-preview-2fd84c8
@metamask-previews/geolocation-controller@0.1.3-preview-2fd84c8
@metamask-previews/json-rpc-engine@10.5.0-preview-2fd84c8
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-2fd84c8
@metamask-previews/keyring-controller@25.5.0-preview-2fd84c8
@metamask-previews/logging-controller@8.0.2-preview-2fd84c8
@metamask-previews/message-manager@14.1.2-preview-2fd84c8
@metamask-previews/messenger@1.2.0-preview-2fd84c8
@metamask-previews/messenger-cli@0.2.0-preview-2fd84c8
@metamask-previews/money-account-balance-service@1.0.2-preview-2fd84c8
@metamask-previews/money-account-controller@0.3.0-preview-2fd84c8
@metamask-previews/money-account-upgrade-controller@2.0.1-preview-2fd84c8
@metamask-previews/multichain-account-service@9.0.0-preview-2fd84c8
@metamask-previews/multichain-api-middleware@3.1.2-preview-2fd84c8
@metamask-previews/multichain-network-controller@3.1.1-preview-2fd84c8
@metamask-previews/multichain-transactions-controller@7.1.0-preview-2fd84c8
@metamask-previews/name-controller@9.1.2-preview-2fd84c8
@metamask-previews/network-controller@32.0.0-preview-2fd84c8
@metamask-previews/network-enablement-controller@5.1.1-preview-2fd84c8
@metamask-previews/notification-services-controller@23.1.1-preview-2fd84c8
@metamask-previews/passkey-controller@2.0.1-preview-2fd84c8
@metamask-previews/permission-controller@13.1.1-preview-2fd84c8
@metamask-previews/permission-log-controller@5.1.0-preview-2fd84c8
@metamask-previews/perps-controller@6.0.1-preview-2fd84c8
@metamask-previews/phishing-controller@17.1.2-preview-2fd84c8
@metamask-previews/polling-controller@16.0.5-preview-2fd84c8
@metamask-previews/preferences-controller@23.1.0-preview-2fd84c8
@metamask-previews/profile-metrics-controller@3.1.4-preview-2fd84c8
@metamask-previews/profile-sync-controller@28.0.2-preview-2fd84c8
@metamask-previews/ramps-controller@13.3.1-preview-2fd84c8
@metamask-previews/rate-limit-controller@7.0.1-preview-2fd84c8
@metamask-previews/react-data-query@0.2.0-preview-2fd84c8
@metamask-previews/remote-feature-flag-controller@4.2.1-preview-2fd84c8
@metamask-previews/sample-controllers@5.0.1-preview-2fd84c8
@metamask-previews/seedless-onboarding-controller@9.1.0-preview-2fd84c8
@metamask-previews/selected-network-controller@26.1.3-preview-2fd84c8
@metamask-previews/shield-controller@5.1.2-preview-2fd84c8
@metamask-previews/signature-controller@39.2.2-preview-2fd84c8
@metamask-previews/snap-account-service@0.0.0-preview-2fd84c8
@metamask-previews/social-controllers@2.2.1-preview-2fd84c8
@metamask-previews/storage-service@1.0.1-preview-2fd84c8
@metamask-previews/subscription-controller@6.1.3-preview-2fd84c8
@metamask-previews/transaction-controller@65.3.0-preview-2fd84c8
@metamask-previews/transaction-pay-controller@22.3.1-preview-2fd84c8
@metamask-previews/user-operation-controller@41.2.2-preview-2fd84c8

@samir-acle samir-acle changed the title Notifications push enable updates feat: notifications push enable updates May 13, 2026
@samir-acle samir-acle force-pushed the notifications-push-enable-updates branch from 2fd84c8 to ebd3199 Compare May 13, 2026 18:48
@samir-acle samir-acle force-pushed the notifications-push-enable-updates branch from d089c9a to 258c7e9 Compare May 13, 2026 19:54
@samir-acle samir-acle marked this pull request as ready for review May 13, 2026 19:58
@samir-acle samir-acle requested review from a team as code owners May 13, 2026 19:58
@samir-acle samir-acle added this pull request to the merge queue May 14, 2026
Merged via the queue into main with commit d0b7977 May 14, 2026
373 checks passed
@samir-acle samir-acle deleted the notifications-push-enable-updates branch May 14, 2026 13:14
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.

2 participants