Skip to content

fix(assets-controllers): revert Snap account-asset enrichment added in 109.3.0#9454

Merged
salimtb merged 3 commits into
mainfrom
revert/stellar-enrichment-legacy-asset-ctrl
Jul 13, 2026
Merged

fix(assets-controllers): revert Snap account-asset enrichment added in 109.3.0#9454
salimtb merged 3 commits into
mainfrom
revert/stellar-enrichment-legacy-asset-ctrl

Conversation

@stanleyyconsensys

@stanleyyconsensys stanleyyconsensys commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Explanation

References

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

Note

High Risk
Marked BREAKING in the changelog: removes exported types, changes messenger event payloads, and alters balance merge semantics—consumers relying on 109.3.0 enrichment or refreshed must migrate.

Overview
Breaking revert of the 109.3.0 Snap getAccountAssetInfo flow: multichain balance rows are again { amount, unit } only, with enrichment expected in the unified assets controller on the client.

MultichainBalancesController drops snap enrichment calls, the account-asset-info module, and exported types AccountAssetInfo / MultichainAccountBalance. Asset-list handling no longer treats refreshed assets (only added / removed), and balance merges on updates are simplified (e.g. full replace on updateBalance, shallow assign on accountBalancesUpdated).

MultichainAssetsController:accountAssetListUpdated no longer emits a refreshed list for snap adds that are already tracked; its payload aligns with AccountsController:accountAssetListUpdated. Token selectors stop exposing accountAssetInfo on Asset items. Tests and changelog document the breaking removals; balance tests add coverage for pruning stale balances when assets are removed.

Reviewed by Cursor Bugbot for commit 2263d69. Bugbot is set up for automated code reviews on this repo. Configure here.

@stanleyyconsensys

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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.5.4-preview-2263d69
@metamask-previews/accounts-controller@39.0.4-preview-2263d69
@metamask-previews/address-book-controller@7.1.2-preview-2263d69
@metamask-previews/ai-controllers@0.8.0-preview-2263d69
@metamask-previews/analytics-controller@1.2.1-preview-2263d69
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-2263d69
@metamask-previews/announcement-controller@8.1.0-preview-2263d69
@metamask-previews/app-metadata-controller@2.0.1-preview-2263d69
@metamask-previews/approval-controller@9.0.2-preview-2263d69
@metamask-previews/assets-controller@10.2.0-preview-2263d69
@metamask-previews/assets-controllers@109.4.0-preview-2263d69
@metamask-previews/authenticated-user-storage@3.0.0-preview-2263d69
@metamask-previews/base-controller@9.1.0-preview-2263d69
@metamask-previews/base-data-service@0.1.3-preview-2263d69
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-2263d69
@metamask-previews/bridge-controller@77.3.2-preview-2263d69
@metamask-previews/bridge-status-controller@74.1.1-preview-2263d69
@metamask-previews/build-utils@3.0.4-preview-2263d69
@metamask-previews/chain-agnostic-permission@1.7.0-preview-2263d69
@metamask-previews/chomp-api-service@3.1.0-preview-2263d69
@metamask-previews/claims-controller@0.5.3-preview-2263d69
@metamask-previews/client-controller@1.0.1-preview-2263d69
@metamask-previews/client-utils@1.0.0-preview-2263d69
@metamask-previews/compliance-controller@2.1.0-preview-2263d69
@metamask-previews/composable-controller@12.0.1-preview-2263d69
@metamask-previews/config-registry-controller@0.4.1-preview-2263d69
@metamask-previews/connectivity-controller@0.3.0-preview-2263d69
@metamask-previews/controller-utils@12.3.0-preview-2263d69
@metamask-previews/core-backend@6.5.0-preview-2263d69
@metamask-previews/delegation-controller@3.0.2-preview-2263d69
@metamask-previews/earn-controller@12.2.2-preview-2263d69
@metamask-previews/eip-5792-middleware@3.0.4-preview-2263d69
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-2263d69
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-2263d69
@metamask-previews/ens-controller@19.1.5-preview-2263d69
@metamask-previews/eth-block-tracker@15.0.1-preview-2263d69
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-2263d69
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-2263d69
@metamask-previews/foundryup@1.0.1-preview-2263d69
@metamask-previews/gas-fee-controller@26.2.4-preview-2263d69
@metamask-previews/gator-permissions-controller@4.2.2-preview-2263d69
@metamask-previews/geolocation-controller@0.1.3-preview-2263d69
@metamask-previews/java-tron-up@1.0.0-preview-2263d69
@metamask-previews/json-rpc-engine@10.5.0-preview-2263d69
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-2263d69
@metamask-previews/keyring-controller@27.1.0-preview-2263d69
@metamask-previews/local-node-utils@1.0.0-preview-2263d69
@metamask-previews/logging-controller@8.0.2-preview-2263d69
@metamask-previews/message-manager@14.1.2-preview-2263d69
@metamask-previews/messenger@2.0.0-preview-2263d69
@metamask-previews/messenger-cli@0.2.0-preview-2263d69
@metamask-previews/money-account-api-data-service@0.1.0-preview-2263d69
@metamask-previews/money-account-balance-service@2.2.0-preview-2263d69
@metamask-previews/money-account-controller@0.3.3-preview-2263d69
@metamask-previews/money-account-upgrade-controller@2.2.1-preview-2263d69
@metamask-previews/multichain-account-service@12.0.0-preview-2263d69
@metamask-previews/multichain-api-middleware@4.0.1-preview-2263d69
@metamask-previews/multichain-network-controller@3.2.1-preview-2263d69
@metamask-previews/multichain-transactions-controller@7.1.1-preview-2263d69
@metamask-previews/name-controller@9.1.2-preview-2263d69
@metamask-previews/network-connection-banner-controller@0.1.0-preview-2263d69
@metamask-previews/network-controller@34.0.0-preview-2263d69
@metamask-previews/network-enablement-controller@5.4.1-preview-2263d69
@metamask-previews/notification-services-controller@25.0.0-preview-2263d69
@metamask-previews/passkey-controller@2.0.1-preview-2263d69
@metamask-previews/permission-controller@13.1.1-preview-2263d69
@metamask-previews/permission-log-controller@5.1.0-preview-2263d69
@metamask-previews/perps-controller@9.2.1-preview-2263d69
@metamask-previews/phishing-controller@17.2.0-preview-2263d69
@metamask-previews/platform-api-docs@0.0.0-preview-2263d69
@metamask-previews/polling-controller@16.0.8-preview-2263d69
@metamask-previews/preferences-controller@23.1.0-preview-2263d69
@metamask-previews/profile-metrics-controller@4.0.1-preview-2263d69
@metamask-previews/profile-sync-controller@28.2.0-preview-2263d69
@metamask-previews/ramps-controller@15.1.0-preview-2263d69
@metamask-previews/rate-limit-controller@7.0.1-preview-2263d69
@metamask-previews/react-data-query@0.2.1-preview-2263d69
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-2263d69
@metamask-previews/sample-controllers@5.0.3-preview-2263d69
@metamask-previews/seedless-onboarding-controller@10.0.3-preview-2263d69
@metamask-previews/selected-network-controller@26.1.5-preview-2263d69
@metamask-previews/shield-controller@5.1.2-preview-2263d69
@metamask-previews/signature-controller@39.2.7-preview-2263d69
@metamask-previews/smart-transactions-controller@25.0.0-preview-2263d69
@metamask-previews/snap-account-service@2.0.0-preview-2263d69
@metamask-previews/social-controllers@2.4.0-preview-2263d69
@metamask-previews/solana-test-validator-up@1.0.0-preview-2263d69
@metamask-previews/stellar-quickstart-up@0.0.0-preview-2263d69
@metamask-previews/storage-service@1.0.2-preview-2263d69
@metamask-previews/subscription-controller@6.2.0-preview-2263d69
@metamask-previews/transaction-controller@68.3.0-preview-2263d69
@metamask-previews/transaction-pay-controller@24.0.0-preview-2263d69
@metamask-previews/user-operation-controller@41.2.6-preview-2263d69
@metamask-previews/wallet@7.0.0-preview-2263d69
@metamask-previews/wallet-cli@0.0.0-preview-2263d69

@stanleyyconsensys stanleyyconsensys marked this pull request as draft July 10, 2026 04:23
@stanleyyconsensys

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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.5.5-preview-a511f243f
@metamask-previews/accounts-controller@39.0.5-preview-a511f243f
@metamask-previews/address-book-controller@7.1.2-preview-a511f243f
@metamask-previews/ai-controllers@0.8.0-preview-a511f243f
@metamask-previews/analytics-controller@1.2.1-preview-a511f243f
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-a511f243f
@metamask-previews/announcement-controller@8.1.0-preview-a511f243f
@metamask-previews/app-metadata-controller@2.0.1-preview-a511f243f
@metamask-previews/approval-controller@9.0.2-preview-a511f243f
@metamask-previews/assets-controller@10.2.1-preview-a511f243f
@metamask-previews/assets-controllers@109.4.1-preview-a511f243f
@metamask-previews/authenticated-user-storage@3.0.1-preview-a511f243f
@metamask-previews/base-controller@9.1.0-preview-a511f243f
@metamask-previews/base-data-service@0.1.3-preview-a511f243f
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-a511f243f
@metamask-previews/bridge-controller@77.4.1-preview-a511f243f
@metamask-previews/bridge-status-controller@74.1.2-preview-a511f243f
@metamask-previews/build-utils@3.0.4-preview-a511f243f
@metamask-previews/chain-agnostic-permission@1.7.0-preview-a511f243f
@metamask-previews/chomp-api-service@3.1.0-preview-a511f243f
@metamask-previews/claims-controller@0.5.3-preview-a511f243f
@metamask-previews/client-controller@1.0.1-preview-a511f243f
@metamask-previews/client-utils@1.1.0-preview-a511f243f
@metamask-previews/compliance-controller@2.1.0-preview-a511f243f
@metamask-previews/composable-controller@12.0.1-preview-a511f243f
@metamask-previews/config-registry-controller@0.4.1-preview-a511f243f
@metamask-previews/connectivity-controller@0.3.0-preview-a511f243f
@metamask-previews/controller-utils@12.3.0-preview-a511f243f
@metamask-previews/core-backend@6.5.0-preview-a511f243f
@metamask-previews/delegation-controller@3.0.2-preview-a511f243f
@metamask-previews/earn-controller@12.2.2-preview-a511f243f
@metamask-previews/eip-5792-middleware@3.0.5-preview-a511f243f
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-a511f243f
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-a511f243f
@metamask-previews/ens-controller@19.1.5-preview-a511f243f
@metamask-previews/eth-block-tracker@15.0.1-preview-a511f243f
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-a511f243f
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-a511f243f
@metamask-previews/foundryup@1.0.1-preview-a511f243f
@metamask-previews/gas-fee-controller@26.2.4-preview-a511f243f
@metamask-previews/gator-permissions-controller@4.2.3-preview-a511f243f
@metamask-previews/geolocation-controller@0.1.3-preview-a511f243f
@metamask-previews/java-tron-up@1.0.0-preview-a511f243f
@metamask-previews/json-rpc-engine@10.5.0-preview-a511f243f
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-a511f243f
@metamask-previews/keyring-controller@27.1.0-preview-a511f243f
@metamask-previews/local-node-utils@1.0.0-preview-a511f243f
@metamask-previews/logging-controller@8.0.2-preview-a511f243f
@metamask-previews/message-manager@14.1.2-preview-a511f243f
@metamask-previews/messenger@2.0.0-preview-a511f243f
@metamask-previews/messenger-cli@0.2.0-preview-a511f243f
@metamask-previews/money-account-api-data-service@0.1.0-preview-a511f243f
@metamask-previews/money-account-balance-service@2.2.0-preview-a511f243f
@metamask-previews/money-account-controller@0.3.3-preview-a511f243f
@metamask-previews/money-account-upgrade-controller@2.2.1-preview-a511f243f
@metamask-previews/multichain-account-service@13.0.0-preview-a511f243f
@metamask-previews/multichain-api-middleware@4.0.1-preview-a511f243f
@metamask-previews/multichain-network-controller@3.2.1-preview-a511f243f
@metamask-previews/multichain-transactions-controller@7.1.1-preview-a511f243f
@metamask-previews/name-controller@9.1.2-preview-a511f243f
@metamask-previews/network-connection-banner-controller@0.1.0-preview-a511f243f
@metamask-previews/network-controller@34.0.0-preview-a511f243f
@metamask-previews/network-enablement-controller@5.5.0-preview-a511f243f
@metamask-previews/notification-services-controller@25.0.0-preview-a511f243f
@metamask-previews/passkey-controller@2.0.1-preview-a511f243f
@metamask-previews/permission-controller@13.1.1-preview-a511f243f
@metamask-previews/permission-log-controller@5.1.0-preview-a511f243f
@metamask-previews/perps-controller@9.2.1-preview-a511f243f
@metamask-previews/phishing-controller@17.2.1-preview-a511f243f
@metamask-previews/platform-api-docs@0.0.0-preview-a511f243f
@metamask-previews/polling-controller@16.0.8-preview-a511f243f
@metamask-previews/preferences-controller@23.1.0-preview-a511f243f
@metamask-previews/profile-metrics-controller@4.0.2-preview-a511f243f
@metamask-previews/profile-sync-controller@28.3.0-preview-a511f243f
@metamask-previews/ramps-controller@15.1.0-preview-a511f243f
@metamask-previews/rate-limit-controller@7.0.1-preview-a511f243f
@metamask-previews/react-data-query@0.2.1-preview-a511f243f
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-a511f243f
@metamask-previews/sample-controllers@5.0.3-preview-a511f243f
@metamask-previews/seedless-onboarding-controller@10.0.3-preview-a511f243f
@metamask-previews/selected-network-controller@26.1.5-preview-a511f243f
@metamask-previews/shield-controller@5.1.3-preview-a511f243f
@metamask-previews/signature-controller@39.2.7-preview-a511f243f
@metamask-previews/smart-transactions-controller@25.0.1-preview-a511f243f
@metamask-previews/snap-account-service@2.0.0-preview-a511f243f
@metamask-previews/social-controllers@2.4.0-preview-a511f243f
@metamask-previews/solana-test-validator-up@1.0.0-preview-a511f243f
@metamask-previews/stellar-quickstart-up@0.0.0-preview-a511f243f
@metamask-previews/storage-service@1.0.2-preview-a511f243f
@metamask-previews/subscription-controller@6.2.1-preview-a511f243f
@metamask-previews/transaction-controller@69.0.0-preview-a511f243f
@metamask-previews/transaction-pay-controller@24.0.2-preview-a511f243f
@metamask-previews/user-operation-controller@41.2.7-preview-a511f243f
@metamask-previews/wallet@7.0.1-preview-a511f243f
@metamask-previews/wallet-cli@0.0.0-preview-a511f243f

@stanleyyconsensys stanleyyconsensys marked this pull request as ready for review July 13, 2026 09:03
@stanleyyconsensys stanleyyconsensys added this pull request to the merge queue Jul 13, 2026
@stanleyyconsensys stanleyyconsensys removed this pull request from the merge queue due to a manual request Jul 13, 2026
@salimtb salimtb added this pull request to the merge queue Jul 13, 2026
Merged via the queue into main with commit 8f0baff Jul 13, 2026
424 checks passed
@salimtb salimtb deleted the revert/stellar-enrichment-legacy-asset-ctrl branch July 13, 2026 09:41
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