feat(profile-sync-controller): use KeyringController to resolve entropySourceIds instead of @metamask/message-signing-snap - #9794
Merged
Conversation
…py source IDs instead of message-signing-snap
mathieuartu
temporarily deployed
to
default-branch
August 5, 2026 13:05 — with
GitHub Actions
Inactive
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 99fd724. Configure here.
Contributor
Author
|
@metamaskbot publish-preview |
Contributor
|
Preview builds have been published. Learn how to use preview builds in other projects. Expand for full list of packages and versions. |
KeyringController to resolve entropySourceIds instead of @metamask/message-signing-snap
ccharly
previously approved these changes
Aug 10, 2026
Co-authored-by: Charly Chevalier <charly.chevalier@consensys.net>
mathieuartu
enabled auto-merge
August 10, 2026 11:42
ccharly
approved these changes
Aug 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Explanation
From CHANGELOG:
References
Related to: https://consensyssoftware.atlassian.net/browse/MUL-2057
Extension test-drive PR: MetaMask/metamask-extension#45250
Checklist
Note
Medium Risk
Changes how primary and multi-SRP identities are resolved in authentication and user storage paths; behavior should match keyring order but any mismatch with the old snap enumeration could affect login tags, pairing, and token scoping.
Overview
HD entropy source IDs (primary SRP and multi-SRP enumeration) now come from
KeyringControllerkeyring state instead of the message-signing snap’sgetAllPublicKeys. That lets flows likegetBearerToken()resolve the primary ID without waiting on snap boot; the snap is still used forgetPublicKeyandsignMessageduring login.New shared helpers in
shared/utils/entropy-source.tscentralize filtering HD keyrings and picking the primary metadata ID.AuthenticationControllerandUserStorageControllerboth use them; the snapgetAllPublicKeysRPC helper and in-controller cache for primary ID are removed. Tests and changelog are updated for the new source of truth and error text when no HD keyring exists.Reviewed by Cursor Bugbot for commit 36a38a2. Bugbot is set up for automated code reviews on this repo. Configure here.