Skip to content

Conversation

aganglada
Copy link
Contributor

@aganglada aganglada commented Oct 1, 2025

Description

Enable Bitcoin BIP44 accounts

Open in GitHub Codespaces

Changelog

CHANGELOG entry: Enable BIP44 Bitcoin accounts

Related issues

Fixes:

Manual testing steps

  1. Load flask/beta
  2. Go to accounts you should see bitcoin accounts created

Screenshots/Recordings

Before

After

Screenshot 2025-10-01 at 17 29 01

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.

Note

Pass a providers array to MultichainAccountService, adding BtcAccountProvider behind a bitcoin build flag, and update the test accordingly.

  • Multichain Account Service Init (app/scripts/controller-init/multichain/multichain-account-service-init.ts):
    • Add providers option when constructing MultichainAccountService.
    • Include BtcAccountProvider in providers (guarded by ONLY_INCLUDE_IF(bitcoin)).
  • Tests (multichain-account-service-init.test.ts):
    • Expect providers array in constructor args.

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

Copy link
Contributor

github-actions bot commented Oct 1, 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.

@metamaskbot metamaskbot added the team-new-networks PRs from the New Networks team label Oct 1, 2025
@github-actions github-actions bot added the size-S label Oct 1, 2025
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 8e5630b | Date: 10/1/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±72ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±71ms) 🟢 | historical mean value: 738ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±13ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 72ms 1.01s 1.36s 1.26s 1.36s
domContentLoaded 731ms 71ms 698ms 1.04s 935ms 1.04s
firstPaint 76ms 13ms 56ms 184ms 84ms 184ms
firstContentfulPaint 76ms 13ms 56ms 184ms 84ms 184ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [8e5630b]
UI Startup Metrics (1240 ± 108 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup12401089213410812761333
load107596318919711001145
domContentLoaded106995718849710931142
domInteractive18148691739
firstPaint61772115342510731125
backgroundConnect2532402948257265
firstReactRender24175772539
getState1454471628
initialActions50244714
loadScripts822710159693842898
setupStore1063241022
WebpackHomeuiStartup19901556252326521822446
load15961231200120917401922
domContentLoaded15841217198421117371905
domInteractive1812119161553
firstPaint1636346675187312
backgroundConnect3417431533056
firstReactRender92383337280317
getState2442925613192
initialActions62183614
loadScripts15811215197421017341893
setupStore195299451320
FirefoxBrowserifyHomeuiStartup13811190174910414391557
load1196104514428512561346
domContentLoaded1196104514418512561346
domInteractive1003332452107222
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect291980103349
firstReactRender27235742832
getState73708610
initialActions41253410
loadScripts1174102414188412401326
setupStore95475916
WebpackHomeuiStartup18081537230214619122052
load15351271184913716241774
domContentLoaded15341271184813716231773
domInteractive1204145965120299
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3726167194153
firstReactRender43367754653
getState73213815
initialActions51495511
loadScripts15081238182213615961754
setupStore147165191130
Benchmark value 1241 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 1076 exceeds gate value 1070 for chrome browserify home mean load
Benchmark value 1070 exceeds gate value 1061 for chrome browserify home mean domContentLoaded
Benchmark value 253 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 25 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 6 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 265 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 14 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 22 exceeds gate value 17 for chrome browserify home p95 setupStore
Benchmark value 14 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 29 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 28 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 4 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 222 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 10 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 1808 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1535 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1535 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 121 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 38 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 44 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 5 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1508 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 14 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2052 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1774 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1773 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 299 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 53 exceeds gate value 50 for firefox webpack home p95 firstReactRender
Benchmark value 11 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1754 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 30 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 977ms | Sum of p95 exceeds: 935.8ms
Sum of all benchmark exceeds: 1912.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -157 Bytes (0%)
  • ui: 1.91 KiB (0.03%)
  • common: 498 Bytes (0.01%)

@aganglada aganglada self-assigned this Oct 1, 2025
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: b53661c | Date: 10/1/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±74ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±71ms) 🟢 | historical mean value: 738ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±14ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 74ms 1.00s 1.35s 1.26s 1.35s
domContentLoaded 731ms 71ms 694ms 1.02s 940ms 1.02s
firstPaint 76ms 14ms 56ms 200ms 84ms 200ms
firstContentfulPaint 76ms 14ms 56ms 200ms 84ms 200ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [b53661c]
UI Startup Metrics (1224 ± 71 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1224109615567112651336
load105694812016310961170
domContentLoaded104791911926410891162
domInteractive1913149151641
firstPaint800109123740310951170
backgroundConnect25223934512255270
firstReactRender2516161162543
getState144112121732
initialActions519811612
loadScripts80467095163846921
setupStore963241021
WebpackHomeuiStartup20161525253627622412488
load16191225200521117561943
domContentLoaded16111219200021117521933
domInteractive1812113141545
firstPaint1706138170189330
backgroundConnect281470113053
firstReactRender97373477690317
getState2653216115271
initialActions7217217619
loadScripts16071217198921017491927
setupStore1252851424
FirefoxBrowserifyHomeuiStartup14131213177410814831613
load1218105614168412821358
domContentLoaded1217105514168412821358
domInteractive1053334455111239
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3119125143553
firstReactRender28244942932
getState835610631
initialActions4114248
loadScripts1194103813888212551339
setupStore1055671015
WebpackHomeuiStartup15931385214218316862036
load13421167177014014541617
domContentLoaded13421166177014014541616
domInteractive1103239570103314
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect41222363040104
firstReactRender38315154149
getState63172612
initialActions3113248
loadScripts13161142174913914271581
setupStore116177171016
Benchmark value 801 exceeds gate value 800 for chrome browserify home mean firstPaint
Benchmark value 253 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 26 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 6 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 270 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 12 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 21 exceeds gate value 17 for chrome browserify home p95 setupStore
Benchmark value 8 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 2488 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 271 exceeds gate value 195 for chrome webpack home p95 getState
Benchmark value 19 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 1413 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 31 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 28 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 4 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 10 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 239 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 31 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 8 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 111 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 41 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 4 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 2036 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 314 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 104 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 8 exceeds gate value 2 for firefox webpack home p95 initialActions
Sum of mean exceeds: 303ms | Sum of p95 exceeds: 765.8ms
Sum of all benchmark exceeds: 1068.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 4.72 KiB (0.1%)
  • ui: 1.6 KiB (0.02%)
  • common: 1.06 KiB (0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size-S team-new-networks PRs from the New Networks team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants