Skip to content

Conversation

@mathieuartu
Copy link
Contributor

@mathieuartu mathieuartu commented Jul 10, 2025

Explanation

  • Reduce the N scrypt parameter used to compute the encryption key in order to significantly increase performance on clients.
    • The input to the KDF is already a long, high entropy non-user-generated string so it does not make sense to use a KDF with high compute cost.
    • This decreases the impact of the KDF on all clients by around 99%
    • Add backwards compatible migration logic
    • Add encryption callbacks so we can measure the impact of future migrations through analytics

The tests below have been done measuring 30 consecutive clean onboardings and the time it took to encrypt or decrypt the first entry (before caching the key from the KDF)

  • Mobile: from 1,9434 seconds (UI blocking) to 0,0088 seconds (99.54% decrease)
  • Extension, chrome: 0,3116 seconds (UI non-blocking) to 0,0064 seconds (97.94% decrease)
  • Extension, firefox: 0,538 seconds (UI blocking) to 0,0044 seconds (99.18% decrease)

References

Fixes:

Test drive client PRs:

Changelog

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, highlighting breaking changes as necessary
  • I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

Note

Lowers scrypt N and introduces a new shared salt with auto-migration, adds encrypt/decrypt callbacks, updates caching/derivation logic, and refreshes tests and changelog.

  • Encryption (core):
    • Reduce scrypt cost (SCRYPT_N_V2 = 2) and introduce SHARED_SALT_V2.
    • Add doesEntryNeedReEncryption and auto-migrate entries encrypted with old salt or old N.
    • Add encrypt/decrypt callbacks (onEncrypt/onDecrypt) and fire them with payload metadata.
    • Revise KDF caching: cache key now includes params; remove shared-salt-only cache path; switch to sha2 import.
  • SDK/UserStorage:
    • Pass encryption callbacks through options for getItem, getAllFeatureItems, setItem, batchSetItems.
    • Re-encrypt-and-upsert when entries need migration; support batch re-upsert of migrated items.
    • Type updates (EncryptedPayload), constants/plumbing adjustments.
  • Controller:
    • Add optional config.encryption.onEncrypt/onDecrypt and forward to SDK in all storage operations.
  • Tests/Changelog:
    • Add tests for callbacks, migration to new N/salt, and caching behavior; update CHANGELOG under Unreleased.

Written by Cursor Bugbot for commit b5439f2. This will update automatically on new commits. Configure here.

@mathieuartu mathieuartu self-assigned this Jul 10, 2025
@mathieuartu mathieuartu added the team-identity Identity Team changes. https://github.com/orgs/MetaMask/teams/identity label Jul 10, 2025
@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "0.4.0-preview-2bb8758e",
  "@metamask-previews/accounts-controller": "31.0.0-preview-2bb8758e",
  "@metamask-previews/address-book-controller": "6.1.1-preview-2bb8758e",
  "@metamask-previews/announcement-controller": "7.0.3-preview-2bb8758e",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-2bb8758e",
  "@metamask-previews/approval-controller": "7.1.3-preview-2bb8758e",
  "@metamask-previews/assets-controllers": "70.0.1-preview-2bb8758e",
  "@metamask-previews/base-controller": "8.0.1-preview-2bb8758e",
  "@metamask-previews/bridge-controller": "34.0.0-preview-2bb8758e",
  "@metamask-previews/bridge-status-controller": "34.0.0-preview-2bb8758e",
  "@metamask-previews/build-utils": "3.0.3-preview-2bb8758e",
  "@metamask-previews/chain-agnostic-permission": "1.0.0-preview-2bb8758e",
  "@metamask-previews/composable-controller": "11.0.0-preview-2bb8758e",
  "@metamask-previews/controller-utils": "11.11.0-preview-2bb8758e",
  "@metamask-previews/delegation-controller": "0.5.0-preview-2bb8758e",
  "@metamask-previews/earn-controller": "2.0.1-preview-2bb8758e",
  "@metamask-previews/eip1193-permission-middleware": "1.0.0-preview-2bb8758e",
  "@metamask-previews/ens-controller": "17.0.1-preview-2bb8758e",
  "@metamask-previews/error-reporting-service": "2.0.0-preview-2bb8758e",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-2bb8758e",
  "@metamask-previews/foundryup": "1.0.0-preview-2bb8758e",
  "@metamask-previews/gas-fee-controller": "24.0.0-preview-2bb8758e",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-2bb8758e",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-2bb8758e",
  "@metamask-previews/keyring-controller": "22.1.0-preview-2bb8758e",
  "@metamask-previews/logging-controller": "6.0.4-preview-2bb8758e",
  "@metamask-previews/message-manager": "12.0.2-preview-2bb8758e",
  "@metamask-previews/multichain-api-middleware": "1.0.0-preview-2bb8758e",
  "@metamask-previews/multichain-network-controller": "0.9.0-preview-2bb8758e",
  "@metamask-previews/multichain-transactions-controller": "3.0.0-preview-2bb8758e",
  "@metamask-previews/name-controller": "8.0.3-preview-2bb8758e",
  "@metamask-previews/network-controller": "24.0.0-preview-2bb8758e",
  "@metamask-previews/notification-services-controller": "13.0.0-preview-2bb8758e",
  "@metamask-previews/permission-controller": "11.0.6-preview-2bb8758e",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-2bb8758e",
  "@metamask-previews/phishing-controller": "12.6.0-preview-2bb8758e",
  "@metamask-previews/polling-controller": "14.0.0-preview-2bb8758e",
  "@metamask-previews/preferences-controller": "18.4.1-preview-2bb8758e",
  "@metamask-previews/profile-sync-controller": "20.0.0-preview-2bb8758e",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-2bb8758e",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-2bb8758e",
  "@metamask-previews/sample-controllers": "1.0.0-preview-2bb8758e",
  "@metamask-previews/seedless-onboarding-controller": "2.0.1-preview-2bb8758e",
  "@metamask-previews/selected-network-controller": "23.0.0-preview-2bb8758e",
  "@metamask-previews/signature-controller": "31.0.1-preview-2bb8758e",
  "@metamask-previews/token-search-discovery-controller": "3.3.0-preview-2bb8758e",
  "@metamask-previews/transaction-controller": "58.1.1-preview-2bb8758e",
  "@metamask-previews/user-operation-controller": "37.0.0-preview-2bb8758e"
}

Copy link
Contributor

@mirceanis mirceanis left a comment

Choose a reason for hiding this comment

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

Looks good!
Perhaps we can rephrase the changelog to reenforce the reason for this change.

Since this PR deals with encryption "soft" migration I'd take the opportunity to make sure that future "hard" migrations fail gracefully, meaning that clients don't fail entire operations if one of the entries does not decrypt. See lines like if (encryptedData.v === '1').... else throw.
WDYT @mathieuartu ?

@mathieuartu mathieuartu marked this pull request as ready for review July 16, 2025 13:26
@mathieuartu mathieuartu requested review from a team as code owners July 16, 2025 13:26
@mathieuartu mathieuartu changed the title feat: KDF performance test 2: keep scrypt but dumb down parameters feat: reduce KDF computing cost on clients Jul 16, 2025
mirceanis
mirceanis previously approved these changes Jul 16, 2025
Copy link
Contributor

@mirceanis mirceanis left a comment

Choose a reason for hiding this comment

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

looks good

@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "0.4.0-preview-ea7474e2",
  "@metamask-previews/accounts-controller": "31.0.0-preview-ea7474e2",
  "@metamask-previews/address-book-controller": "6.1.1-preview-ea7474e2",
  "@metamask-previews/announcement-controller": "7.0.3-preview-ea7474e2",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-ea7474e2",
  "@metamask-previews/approval-controller": "7.1.3-preview-ea7474e2",
  "@metamask-previews/assets-controllers": "72.0.0-preview-ea7474e2",
  "@metamask-previews/base-controller": "8.0.1-preview-ea7474e2",
  "@metamask-previews/bridge-controller": "36.0.0-preview-ea7474e2",
  "@metamask-previews/bridge-status-controller": "36.0.0-preview-ea7474e2",
  "@metamask-previews/build-utils": "3.0.3-preview-ea7474e2",
  "@metamask-previews/chain-agnostic-permission": "1.0.0-preview-ea7474e2",
  "@metamask-previews/composable-controller": "11.0.0-preview-ea7474e2",
  "@metamask-previews/controller-utils": "11.11.0-preview-ea7474e2",
  "@metamask-previews/delegation-controller": "0.5.0-preview-ea7474e2",
  "@metamask-previews/earn-controller": "3.0.0-preview-ea7474e2",
  "@metamask-previews/eip1193-permission-middleware": "1.0.0-preview-ea7474e2",
  "@metamask-previews/ens-controller": "17.0.1-preview-ea7474e2",
  "@metamask-previews/error-reporting-service": "2.0.0-preview-ea7474e2",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-ea7474e2",
  "@metamask-previews/foundryup": "1.0.0-preview-ea7474e2",
  "@metamask-previews/gas-fee-controller": "24.0.0-preview-ea7474e2",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-ea7474e2",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-ea7474e2",
  "@metamask-previews/keyring-controller": "22.1.0-preview-ea7474e2",
  "@metamask-previews/logging-controller": "6.0.4-preview-ea7474e2",
  "@metamask-previews/message-manager": "12.0.2-preview-ea7474e2",
  "@metamask-previews/multichain-api-middleware": "1.0.0-preview-ea7474e2",
  "@metamask-previews/multichain-network-controller": "0.10.0-preview-ea7474e2",
  "@metamask-previews/multichain-transactions-controller": "3.0.0-preview-ea7474e2",
  "@metamask-previews/name-controller": "8.0.3-preview-ea7474e2",
  "@metamask-previews/network-controller": "24.0.0-preview-ea7474e2",
  "@metamask-previews/notification-services-controller": "14.0.0-preview-ea7474e2",
  "@metamask-previews/permission-controller": "11.0.6-preview-ea7474e2",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-ea7474e2",
  "@metamask-previews/phishing-controller": "13.1.0-preview-ea7474e2",
  "@metamask-previews/polling-controller": "14.0.0-preview-ea7474e2",
  "@metamask-previews/preferences-controller": "18.4.1-preview-ea7474e2",
  "@metamask-previews/profile-sync-controller": "21.0.0-preview-ea7474e2",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-ea7474e2",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-ea7474e2",
  "@metamask-previews/sample-controllers": "1.0.0-preview-ea7474e2",
  "@metamask-previews/seedless-onboarding-controller": "2.1.0-preview-ea7474e2",
  "@metamask-previews/selected-network-controller": "23.0.0-preview-ea7474e2",
  "@metamask-previews/signature-controller": "31.0.1-preview-ea7474e2",
  "@metamask-previews/token-search-discovery-controller": "3.3.0-preview-ea7474e2",
  "@metamask-previews/transaction-controller": "58.1.1-preview-ea7474e2",
  "@metamask-previews/user-operation-controller": "37.0.0-preview-ea7474e2"
}

@mathieuartu mathieuartu marked this pull request as draft July 16, 2025 16:35
@mathieuartu mathieuartu force-pushed the feat/kdf-performance-2-dumbed-down branch from 159efb2 to ffa6d7a Compare July 17, 2025 18:57
@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "0.4.0-preview-00abdb8d",
  "@metamask-previews/accounts-controller": "31.0.0-preview-00abdb8d",
  "@metamask-previews/address-book-controller": "6.1.1-preview-00abdb8d",
  "@metamask-previews/announcement-controller": "7.0.3-preview-00abdb8d",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-00abdb8d",
  "@metamask-previews/approval-controller": "7.1.3-preview-00abdb8d",
  "@metamask-previews/assets-controllers": "72.0.0-preview-00abdb8d",
  "@metamask-previews/base-controller": "8.0.1-preview-00abdb8d",
  "@metamask-previews/bridge-controller": "36.1.0-preview-00abdb8d",
  "@metamask-previews/bridge-status-controller": "36.0.0-preview-00abdb8d",
  "@metamask-previews/build-utils": "3.0.3-preview-00abdb8d",
  "@metamask-previews/chain-agnostic-permission": "1.0.0-preview-00abdb8d",
  "@metamask-previews/composable-controller": "11.0.0-preview-00abdb8d",
  "@metamask-previews/controller-utils": "11.11.0-preview-00abdb8d",
  "@metamask-previews/delegation-controller": "0.5.0-preview-00abdb8d",
  "@metamask-previews/earn-controller": "3.0.0-preview-00abdb8d",
  "@metamask-previews/eip1193-permission-middleware": "1.0.0-preview-00abdb8d",
  "@metamask-previews/ens-controller": "17.0.1-preview-00abdb8d",
  "@metamask-previews/error-reporting-service": "2.0.0-preview-00abdb8d",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-00abdb8d",
  "@metamask-previews/foundryup": "1.0.0-preview-00abdb8d",
  "@metamask-previews/gas-fee-controller": "24.0.0-preview-00abdb8d",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-00abdb8d",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-00abdb8d",
  "@metamask-previews/keyring-controller": "22.1.0-preview-00abdb8d",
  "@metamask-previews/logging-controller": "6.0.4-preview-00abdb8d",
  "@metamask-previews/message-manager": "12.0.2-preview-00abdb8d",
  "@metamask-previews/multichain-api-middleware": "1.0.0-preview-00abdb8d",
  "@metamask-previews/multichain-network-controller": "0.10.0-preview-00abdb8d",
  "@metamask-previews/multichain-transactions-controller": "3.0.0-preview-00abdb8d",
  "@metamask-previews/name-controller": "8.0.3-preview-00abdb8d",
  "@metamask-previews/network-controller": "24.0.0-preview-00abdb8d",
  "@metamask-previews/notification-services-controller": "14.0.0-preview-00abdb8d",
  "@metamask-previews/permission-controller": "11.0.6-preview-00abdb8d",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-00abdb8d",
  "@metamask-previews/phishing-controller": "13.1.0-preview-00abdb8d",
  "@metamask-previews/polling-controller": "14.0.0-preview-00abdb8d",
  "@metamask-previews/preferences-controller": "18.4.1-preview-00abdb8d",
  "@metamask-previews/profile-sync-controller": "21.0.0-preview-00abdb8d",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-00abdb8d",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-00abdb8d",
  "@metamask-previews/sample-controllers": "1.0.0-preview-00abdb8d",
  "@metamask-previews/seedless-onboarding-controller": "2.1.0-preview-00abdb8d",
  "@metamask-previews/selected-network-controller": "23.0.0-preview-00abdb8d",
  "@metamask-previews/signature-controller": "31.0.1-preview-00abdb8d",
  "@metamask-previews/token-search-discovery-controller": "3.3.0-preview-00abdb8d",
  "@metamask-previews/transaction-controller": "58.1.1-preview-00abdb8d",
  "@metamask-previews/user-operation-controller": "37.0.0-preview-00abdb8d"
}

@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "0.4.0-preview-1982229e",
  "@metamask-previews/accounts-controller": "31.0.0-preview-1982229e",
  "@metamask-previews/address-book-controller": "6.1.1-preview-1982229e",
  "@metamask-previews/announcement-controller": "7.0.3-preview-1982229e",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-1982229e",
  "@metamask-previews/approval-controller": "7.1.3-preview-1982229e",
  "@metamask-previews/assets-controllers": "72.0.0-preview-1982229e",
  "@metamask-previews/base-controller": "8.0.1-preview-1982229e",
  "@metamask-previews/bridge-controller": "36.1.0-preview-1982229e",
  "@metamask-previews/bridge-status-controller": "36.0.0-preview-1982229e",
  "@metamask-previews/build-utils": "3.0.3-preview-1982229e",
  "@metamask-previews/chain-agnostic-permission": "1.0.0-preview-1982229e",
  "@metamask-previews/composable-controller": "11.0.0-preview-1982229e",
  "@metamask-previews/controller-utils": "11.11.0-preview-1982229e",
  "@metamask-previews/delegation-controller": "0.5.0-preview-1982229e",
  "@metamask-previews/earn-controller": "3.0.0-preview-1982229e",
  "@metamask-previews/eip1193-permission-middleware": "1.0.0-preview-1982229e",
  "@metamask-previews/ens-controller": "17.0.1-preview-1982229e",
  "@metamask-previews/error-reporting-service": "2.0.0-preview-1982229e",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-1982229e",
  "@metamask-previews/foundryup": "1.0.0-preview-1982229e",
  "@metamask-previews/gas-fee-controller": "24.0.0-preview-1982229e",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-1982229e",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-1982229e",
  "@metamask-previews/keyring-controller": "22.1.0-preview-1982229e",
  "@metamask-previews/logging-controller": "6.0.4-preview-1982229e",
  "@metamask-previews/message-manager": "12.0.2-preview-1982229e",
  "@metamask-previews/multichain-api-middleware": "1.0.0-preview-1982229e",
  "@metamask-previews/multichain-network-controller": "0.10.0-preview-1982229e",
  "@metamask-previews/multichain-transactions-controller": "3.0.0-preview-1982229e",
  "@metamask-previews/name-controller": "8.0.3-preview-1982229e",
  "@metamask-previews/network-controller": "24.0.0-preview-1982229e",
  "@metamask-previews/notification-services-controller": "14.0.0-preview-1982229e",
  "@metamask-previews/permission-controller": "11.0.6-preview-1982229e",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-1982229e",
  "@metamask-previews/phishing-controller": "13.1.0-preview-1982229e",
  "@metamask-previews/polling-controller": "14.0.0-preview-1982229e",
  "@metamask-previews/preferences-controller": "18.4.1-preview-1982229e",
  "@metamask-previews/profile-sync-controller": "21.0.0-preview-1982229e",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-1982229e",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-1982229e",
  "@metamask-previews/sample-controllers": "1.0.0-preview-1982229e",
  "@metamask-previews/seedless-onboarding-controller": "2.1.0-preview-1982229e",
  "@metamask-previews/selected-network-controller": "23.0.0-preview-1982229e",
  "@metamask-previews/signature-controller": "31.0.1-preview-1982229e",
  "@metamask-previews/token-search-discovery-controller": "3.3.0-preview-1982229e",
  "@metamask-previews/transaction-controller": "58.1.1-preview-1982229e",
  "@metamask-previews/user-operation-controller": "37.0.0-preview-1982229e"
}

@mathieuartu mathieuartu marked this pull request as ready for review July 18, 2025 09:37
cursor[bot]

This comment was marked as outdated.

@mathieuartu mathieuartu marked this pull request as draft July 18, 2025 10:21
@mathieuartu mathieuartu marked this pull request as ready for review July 18, 2025 10:21
@mathieuartu
Copy link
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "0.4.0-preview-03ea8543",
  "@metamask-previews/accounts-controller": "31.0.0-preview-03ea8543",
  "@metamask-previews/address-book-controller": "6.1.1-preview-03ea8543",
  "@metamask-previews/announcement-controller": "7.0.3-preview-03ea8543",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-03ea8543",
  "@metamask-previews/approval-controller": "7.1.3-preview-03ea8543",
  "@metamask-previews/assets-controllers": "72.0.0-preview-03ea8543",
  "@metamask-previews/base-controller": "8.0.1-preview-03ea8543",
  "@metamask-previews/bridge-controller": "36.1.0-preview-03ea8543",
  "@metamask-previews/bridge-status-controller": "36.0.0-preview-03ea8543",
  "@metamask-previews/build-utils": "3.0.3-preview-03ea8543",
  "@metamask-previews/chain-agnostic-permission": "1.0.0-preview-03ea8543",
  "@metamask-previews/composable-controller": "11.0.0-preview-03ea8543",
  "@metamask-previews/controller-utils": "11.11.0-preview-03ea8543",
  "@metamask-previews/delegation-controller": "0.5.0-preview-03ea8543",
  "@metamask-previews/earn-controller": "3.0.0-preview-03ea8543",
  "@metamask-previews/eip1193-permission-middleware": "1.0.0-preview-03ea8543",
  "@metamask-previews/ens-controller": "17.0.1-preview-03ea8543",
  "@metamask-previews/error-reporting-service": "2.0.0-preview-03ea8543",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-03ea8543",
  "@metamask-previews/foundryup": "1.0.0-preview-03ea8543",
  "@metamask-previews/gas-fee-controller": "24.0.0-preview-03ea8543",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-03ea8543",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-03ea8543",
  "@metamask-previews/keyring-controller": "22.1.0-preview-03ea8543",
  "@metamask-previews/logging-controller": "6.0.4-preview-03ea8543",
  "@metamask-previews/message-manager": "12.0.2-preview-03ea8543",
  "@metamask-previews/multichain-api-middleware": "1.0.0-preview-03ea8543",
  "@metamask-previews/multichain-network-controller": "0.10.0-preview-03ea8543",
  "@metamask-previews/multichain-transactions-controller": "3.0.0-preview-03ea8543",
  "@metamask-previews/name-controller": "8.0.3-preview-03ea8543",
  "@metamask-previews/network-controller": "24.0.0-preview-03ea8543",
  "@metamask-previews/notification-services-controller": "14.0.0-preview-03ea8543",
  "@metamask-previews/permission-controller": "11.0.6-preview-03ea8543",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-03ea8543",
  "@metamask-previews/phishing-controller": "13.1.0-preview-03ea8543",
  "@metamask-previews/polling-controller": "14.0.0-preview-03ea8543",
  "@metamask-previews/preferences-controller": "18.4.1-preview-03ea8543",
  "@metamask-previews/profile-sync-controller": "21.0.0-preview-03ea8543",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-03ea8543",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-03ea8543",
  "@metamask-previews/sample-controllers": "1.0.0-preview-03ea8543",
  "@metamask-previews/seedless-onboarding-controller": "2.1.0-preview-03ea8543",
  "@metamask-previews/selected-network-controller": "23.0.0-preview-03ea8543",
  "@metamask-previews/signature-controller": "31.0.1-preview-03ea8543",
  "@metamask-previews/token-search-discovery-controller": "3.3.0-preview-03ea8543",
  "@metamask-previews/transaction-controller": "58.1.1-preview-03ea8543",
  "@metamask-previews/user-operation-controller": "37.0.0-preview-03ea8543"
}

fabiobozzo
fabiobozzo previously approved these changes Jul 18, 2025
@mathieuartu mathieuartu marked this pull request as draft July 22, 2025 15:16
@mathieuartu
Copy link
Contributor Author

Going back to draft again as it seems to be working fine now but may have introduced a UI bug on mobile when adding or renaming accounts. Investigating.

cursor[bot]

This comment was marked as outdated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

team-accounts team-identity Identity Team changes. https://github.com/orgs/MetaMask/teams/identity

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants