Skip to content

chore: core PR 6066 test drive #34064

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft

chore: core PR 6066 test drive #34064

wants to merge 4 commits into from

Conversation

mathieuartu
Copy link
Contributor

@mathieuartu mathieuartu commented Jul 3, 2025

Description

This PR can be used a reference on how to implement the breaking changes introduced by MetaMask/core#6066 for:

  • TokenDetectionController
  • MultichainNetworkController
  • TransactionController

Open in GitHub Codespaces

Changelog

CHANGELOG entry:

Related issues

Fixes:

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Copy link
Contributor

github-actions bot commented Jul 3, 2025

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

Copy link

socket-security bot commented Jul 3, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​metamask/​assets-controllers@​70.0.0 ⏵ 70.0.0-preview-d9822daf100 +5100100 +11100 +1100
Updated@​metamask/​transaction-controller@​58.1.0 ⏵ 58.1.0-preview-d9822daf100 +4100100 +22100 +1100

View full report

@metamaskbot
Copy link
Collaborator

Builds ready [0979a93]
UI Startup Metrics (1232 ± 64 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1232110914696412731311
load105995112625610951140
domContentLoaded105294612545610871133
domInteractive18145171638
firstPaint768133127141110821140
backgroundConnect84273913
firstReactRender23175772538
getState166117132130
initialActions606411826
loadScripts80369798854836882
setupStore85274815
WebpackHomeuiStartup23231778293621724142779
load17511332220017818772082
domContentLoaded17431327217617618732076
domInteractive2013101181567
firstPaint1666842769190311
backgroundConnect251179112948
firstReactRender26893431123383409
getState205256272048
initialActions172195351164
loadScripts17401325216517418712065
setupStore227239282344
FirefoxBrowserifyHomeuiStartup13881206195913114571726
load1216107615999612821383
domContentLoaded1216107615999612821383
domInteractive1163631048133207
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2213135152346
firstReactRender25225542630
getState1157513934
initialActions506210424
loadScripts1198106115749412691367
setupStore11421824827
WebpackHomeuiStartup17341455261520418272105
load14941236214915615911723
domContentLoaded14941235214915615911723
domInteractive117618039997306
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect25176492646
firstReactRender43355834549
getState156176201351
initialActions618912619
loadScripts14721216212015615711696
setupStore175271391137
Benchmark value 24 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 16 exceeds gate value 15 for chrome browserify home mean getState
Benchmark value 7 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 26 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 2323 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 1751 exceeds gate value 1711 for chrome webpack home mean load
Benchmark value 1744 exceeds gate value 1704 for chrome webpack home mean domContentLoaded
Benchmark value 269 exceeds gate value 235 for chrome webpack home mean firstReactRender
Benchmark value 18 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 1740 exceeds gate value 1699 for chrome webpack home mean loadScripts
Benchmark value 2779 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 2082 exceeds gate value 2030 for chrome webpack home p95 load
Benchmark value 2077 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded
Benchmark value 67 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 409 exceeds gate value 370 for chrome webpack home p95 firstReactRender
Benchmark value 64 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 2065 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 116 exceeds gate value 110 for firefox browserify home mean domInteractive
Benchmark value 12 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 6 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 11 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 1726 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 207 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 34 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 24 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 1735 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1494 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1494 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 117 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 44 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 16 exceeds gate value 15 for firefox webpack home mean getState
Benchmark value 7 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1473 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 18 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2105 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1723 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1723 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 306 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 51 exceeds gate value 32 for firefox webpack home p95 getState
Benchmark value 19 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1696 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 37 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 815ms | Sum of p95 exceeds: 1341.8ms
Sum of all benchmark exceeds: 2156.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 23.01 KiB (0.42%)
  • ui: 262 Bytes (0%)
  • common: -14.09 KiB (-0.17%)

@mathieuartu
Copy link
Contributor Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Builds ready [2b43095]
UI Startup Metrics (1253 ± 62 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1253113514306212891369
load107292512285511151160
domContentLoaded106592012235511091153
domInteractive18145871740
firstPaint76387123141810901160
backgroundConnect84293911
firstReactRender24174972444
getState1765182233
initialActions508512320
loadScripts81568296853858900
setupStore85304818
WebpackHomeuiStartup22551694281022423912695
load17031280207217717972015
domContentLoaded16961272205417517922004
domInteractive2013114201568
firstPaint1556335372173331
backgroundConnect2610110133050
firstReactRender25393407121381402
getState206301312050
initialActions143279321042
loadScripts16921270204017417911991
setupStore207217222139
FirefoxBrowserifyHomeuiStartup13951211242018314191813
load12081077157310512601419
domContentLoaded12081077157310512601419
domInteractive1183639270117331
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2413109182277
firstReactRender25215852730
getState16538940956
initialActions5019221217
loadScripts11891060153610012411400
setupStore17434846882
WebpackHomeuiStartup17221430235320418272193
load14841222189116015871772
domContentLoaded14831222189116015861771
domInteractive1124048369106295
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect271783112853
firstReactRender43325444649
getState186266331242
initialActions40204513
loadScripts14641207186815815671738
setupStore155175231054
Benchmark value 1253 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 1073 exceeds gate value 1070 for chrome browserify home mean load
Benchmark value 1066 exceeds gate value 1061 for chrome browserify home mean domContentLoaded
Benchmark value 24 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 17 exceeds gate value 15 for chrome browserify home mean getState
Benchmark value 5 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 1369 exceeds gate value 1365 for chrome browserify home p95 uiStartup
Benchmark value 20 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 18 exceeds gate value 17 for chrome browserify home p95 setupStore
Benchmark value 2255 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 254 exceeds gate value 235 for chrome webpack home mean firstReactRender
Benchmark value 14 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 2696 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 68 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 402 exceeds gate value 370 for chrome webpack home p95 firstReactRender
Benchmark value 42 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 1992 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 118 exceeds gate value 110 for firefox browserify home mean domInteractive
Benchmark value 26 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 16 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 6 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 18 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 1813 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 331 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 77 exceeds gate value 70 for firefox browserify home p95 backgroundConnect
Benchmark value 56 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 17 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 82 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1722 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1484 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1484 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 113 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 27 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 43 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 19 exceeds gate value 15 for firefox webpack home mean getState
Benchmark value 4 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1464 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 15 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2193 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1772 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1771 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 295 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 53 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 42 exceeds gate value 32 for firefox webpack home p95 getState
Benchmark value 13 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1738 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 54 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 598ms | Sum of p95 exceeds: 1542.8ms
Sum of all benchmark exceeds: 2140.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 16.09 KiB (0.3%)
  • ui: 245 Bytes (0%)
  • common: -14.08 KiB (-0.17%)

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

✨ Files requiring CODEOWNER review ✨

🧩 @MetaMask/extension-devs (4 files, +4 -4)
  • 📁 lavamoat/
    • 📁 browserify/
      • 📁 beta/
        • 📄 policy.json +1 -1
      • 📁 experimental/
        • 📄 policy.json +1 -1
      • 📁 flask/
        • 📄 policy.json +1 -1
      • 📁 main/
        • 📄 policy.json +1 -1

📜 @MetaMask/policy-reviewers (4 files, +4 -4)
  • 📁 lavamoat/
    • 📁 browserify/
      • 📁 beta/
        • 📄 policy.json +1 -1
      • 📁 experimental/
        • 📄 policy.json +1 -1
      • 📁 flask/
        • 📄 policy.json +1 -1
      • 📁 main/
        • 📄 policy.json +1 -1

Tip

Follow the policy review process outlined in the LavaMoat Policy Review Process doc before expecting an approval from Policy Reviewers.


🔗 @MetaMask/supply-chain (4 files, +4 -4)
  • 📁 lavamoat/
    • 📁 browserify/
      • 📁 beta/
        • 📄 policy.json +1 -1
      • 📁 experimental/
        • 📄 policy.json +1 -1
      • 📁 flask/
        • 📄 policy.json +1 -1
      • 📁 main/
        • 📄 policy.json +1 -1

@metamaskbot
Copy link
Collaborator

Builds ready [13bb173]
UI Startup Metrics (1226 ± 75 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1226109515377512721366
load105292212447211031189
domContentLoaded104591312277110971181
domInteractive18145971739
firstPaint72383124641610641167
backgroundConnect84294919
firstReactRender2417147152444
getState1574582131
initialActions50367619
loadScripts79866295871846937
setupStore94334919
WebpackHomeuiStartup22811734279519923802744
load17061259206615418082024
domContentLoaded16991255205715318022012
domInteractive191367131558
firstPaint1576634367191292
backgroundConnect24145272840
firstReactRender28092425119389406
getState15555101939
initialActions10257101137
loadScripts16951253204415118001999
setupStore247326442342
FirefoxBrowserifyHomeuiStartup14561245203515215151802
load1252109415478513041415
domContentLoaded1251109415478513041415
domInteractive1163734957125275
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect241481122757
firstReactRender28235762937
getState2252254210112
initialActions5112614320
loadScripts1232107815088312851384
setupStore194216428171
WebpackHomeuiStartup16691396248420917782061
load14391208188015215741694
domContentLoaded14381208187915215741694
domInteractive1093834664103297
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2716107132849
firstReactRender42336444447
getState196256341251
initialActions51326520
loadScripts14181192184415115481677
setupStore15534036940
Benchmark value 25 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 16 exceeds gate value 15 for chrome browserify home mean getState
Benchmark value 5 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 1366 exceeds gate value 1365 for chrome browserify home p95 uiStartup
Benchmark value 1182 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded
Benchmark value 20 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 19 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 19 exceeds gate value 17 for chrome browserify home p95 setupStore
Benchmark value 2281 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 281 exceeds gate value 235 for chrome webpack home mean firstReactRender
Benchmark value 11 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 2745 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 2012 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded
Benchmark value 59 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 406 exceeds gate value 370 for chrome webpack home p95 firstReactRender
Benchmark value 37 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 2000 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 1456 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 1252 exceeds gate value 1245 for firefox browserify home mean load
Benchmark value 1252 exceeds gate value 1239 for firefox browserify home mean domContentLoaded
Benchmark value 117 exceeds gate value 110 for firefox browserify home mean domInteractive
Benchmark value 28 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 22 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 5 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 1232 exceeds gate value 1230 for firefox browserify home mean loadScripts
Benchmark value 19 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 1802 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 275 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 112 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 20 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 171 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1669 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1439 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1439 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 109 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 27 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 42 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 19 exceeds gate value 15 for firefox webpack home mean getState
Benchmark value 5 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1418 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 15 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2061 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1694 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1694 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 297 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 51 exceeds gate value 32 for firefox webpack home p95 getState
Benchmark value 20 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1677 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 40 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 508ms | Sum of p95 exceeds: 1323.8ms
Sum of all benchmark exceeds: 1831.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 16.09 KiB (0.3%)
  • ui: 245 Bytes (0%)
  • common: -14.08 KiB (-0.17%)

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

Successfully merging this pull request may close these issues.

2 participants