-
Notifications
You must be signed in to change notification settings - Fork 5.3k
feat: configure enforced simulations slippage #33924
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
Merged
Merged
+486
−74
Conversation
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
91beedf
to
071fd42
Compare
✨ Files requiring CODEOWNER review ✨✅ @MetaMask/confirmations (5 files, +182 -49)
|
Builds ready [071fd42]
UI Startup Metrics (1199 ± 61 ms)
Benchmark value 2282 exceeds gate value 2192 for chrome webpack home mean uiStartup Benchmark value 1741 exceeds gate value 1711 for chrome webpack home mean load Benchmark value 1735 exceeds gate value 1704 for chrome webpack home mean domContentLoaded Benchmark value 1731 exceeds gate value 1699 for chrome webpack home mean loadScripts Benchmark value 2735 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 2068 exceeds gate value 2030 for chrome webpack home p95 load Benchmark value 2057 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded Benchmark value 60 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 2045 exceeds gate value 1970 for chrome webpack home p95 loadScripts Benchmark value 117 exceeds gate value 110 for firefox browserify home mean domInteractive Benchmark value 35 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 43 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 2047 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1697 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1696 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 308 exceeds gate value 156 for firefox webpack home p95 domInteractive Benchmark value 1675 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 195ms | Sum of p95 exceeds: 888ms Sum of all benchmark exceeds: 1083ms |
Builds ready [260f855]
UI Startup Metrics (1175 ± 65 ms)
Benchmark value 249 exceeds gate value 235 for chrome webpack home mean firstReactRender Benchmark value 2652 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 2035 exceeds gate value 2030 for chrome webpack home p95 load Benchmark value 2022 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded Benchmark value 60 exceeds gate value 57 for chrome webpack home p95 domInteractive Benchmark value 410 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 2011 exceeds gate value 1970 for chrome webpack home p95 loadScripts Benchmark value 113 exceeds gate value 110 for firefox browserify home mean domInteractive Benchmark value 1661 exceeds gate value 1660 for firefox browserify home p95 uiStartup Benchmark value 295 exceeds gate value 195 for firefox browserify home p95 domInteractive Benchmark value 28 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 1654 exceeds gate value 1615 for firefox webpack home mean uiStartup Benchmark value 1436 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1436 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 43 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1417 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 1986 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 287 exceeds gate value 156 for firefox webpack home p95 domInteractive Benchmark value 34 exceeds gate value 32 for firefox webpack home p95 getState Benchmark value 31 exceeds gate value 28 for firefox webpack home p95 setupStore Sum of mean exceeds: 241ms | Sum of p95 exceeds: 596ms Sum of all benchmark exceeds: 837ms |
f8a4e92
to
7fd8c5e
Compare
Builds ready [7fd8c5e]
UI Startup Metrics (1175 ± 59 ms)
Benchmark value 1748 exceeds gate value 1711 for chrome webpack home mean load Benchmark value 1742 exceeds gate value 1704 for chrome webpack home mean domContentLoaded Benchmark value 236 exceeds gate value 235 for chrome webpack home mean firstReactRender Benchmark value 1739 exceeds gate value 1699 for chrome webpack home mean loadScripts Benchmark value 2691 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 71 exceeds gate value 57 for chrome webpack home p95 domInteractive Benchmark value 399 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 2004 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 310 exceeds gate value 195 for firefox browserify home p95 domInteractive Benchmark value 32 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 42 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 279 exceeds gate value 156 for firefox webpack home p95 domInteractive Benchmark value 34 exceeds gate value 32 for firefox webpack home p95 getState Benchmark value 30 exceeds gate value 28 for firefox webpack home p95 setupStore Sum of mean exceeds: 217ms | Sum of p95 exceeds: 571ms Sum of all benchmark exceeds: 788ms |
Builds ready [d1b2dd1]
UI Startup Metrics (1189 ± 59 ms)
Benchmark value 2616 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 402 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 27 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 1381 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1381 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 101 exceeds gate value 100 for firefox webpack home mean domInteractive Benchmark value 42 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1361 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2045 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1695 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 292 exceeds gate value 156 for firefox webpack home p95 domInteractive Benchmark value 38 exceeds gate value 32 for firefox webpack home p95 getState Benchmark value 1677 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 8ms | Sum of p95 exceeds: 566ms Sum of all benchmark exceeds: 574ms |
Builds ready [454fa06]
UI Startup Metrics (1197 ± 58 ms)
Benchmark value 392 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 112 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 10 exceeds gate value 9 for firefox browserify home mean setupStore Benchmark value 1664 exceeds gate value 1660 for firefox browserify home p95 uiStartup Benchmark value 215 exceeds gate value 195 for firefox browserify home p95 domInteractive Benchmark value 39 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 1396 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1395 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 102 exceeds gate value 100 for firefox webpack home mean domInteractive Benchmark value 43 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 1376 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2032 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1683 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1683 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 35 exceeds gate value 32 for firefox webpack home p95 getState Benchmark value 1656 exceeds gate value 1630 for firefox webpack home p95 loadScripts Benchmark value 33 exceeds gate value 28 for firefox webpack home p95 setupStore Sum of mean exceeds: 59ms | Sum of p95 exceeds: 470ms Sum of all benchmark exceeds: 529ms |
01d33ef
to
f23cc17
Compare
Accept transactionMeta in util.
454fa06
to
3099d08
Compare
Builds ready [3099d08]
UI Startup Metrics (1278 ± 66 ms)
Benchmark value 1092 exceeds gate value 1070 for chrome browserify home mean load Benchmark value 1085 exceeds gate value 1061 for chrome browserify home mean domContentLoaded Benchmark value 25 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 1404 exceeds gate value 1365 for chrome browserify home p95 uiStartup Benchmark value 1181 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded Benchmark value 18 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 2272 exceeds gate value 2192 for chrome webpack home mean uiStartup Benchmark value 1731 exceeds gate value 1711 for chrome webpack home mean load Benchmark value 1725 exceeds gate value 1704 for chrome webpack home mean domContentLoaded Benchmark value 244 exceeds gate value 235 for chrome webpack home mean firstReactRender Benchmark value 10 exceeds gate value 7 for chrome webpack home mean initialActions Benchmark value 1721 exceeds gate value 1699 for chrome webpack home mean loadScripts Benchmark value 2728 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 2036 exceeds gate value 2030 for chrome webpack home p95 load Benchmark value 2026 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded Benchmark value 343 exceeds gate value 334 for chrome webpack home p95 firstPaint Benchmark value 403 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 19 exceeds gate value 7 for chrome webpack home p95 initialActions Benchmark value 2013 exceeds gate value 1970 for chrome webpack home p95 loadScripts Benchmark value 26 exceeds gate value 25 for firefox browserify home mean firstReactRender Benchmark value 12 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 12 exceeds gate value 9 for firefox browserify home mean setupStore Benchmark value 1661 exceeds gate value 1660 for firefox browserify home p95 uiStartup Benchmark value 313 exceeds gate value 195 for firefox browserify home p95 domInteractive Benchmark value 57 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 11 exceeds gate value 2 for firefox browserify home p95 initialActions Benchmark value 67 exceeds gate value 27 for firefox browserify home p95 setupStore Benchmark value 1674 exceeds gate value 1615 for firefox webpack home mean uiStartup Benchmark value 1421 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1421 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 101 exceeds gate value 100 for firefox webpack home mean domInteractive Benchmark value 59 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 20 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 1401 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2166 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1692 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1691 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 70 exceeds gate value 50 for firefox webpack home p95 firstReactRender Benchmark value 36 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 1673 exceeds gate value 1630 for firefox webpack home p95 loadScripts Benchmark value 29 exceeds gate value 28 for firefox webpack home p95 setupStore Sum of mean exceeds: 474ms | Sum of p95 exceeds: 1180.8ms Sum of all benchmark exceeds: 1654.8ms Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
Add settings hook.
Builds ready [ae29a8a]
UI Startup Metrics (1216 ± 64 ms)
Benchmark value 16 exceeds gate value 15 for chrome browserify home mean getState Benchmark value 8 exceeds gate value 1 for chrome browserify home mean initialActions Benchmark value 25 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 2267 exceeds gate value 2192 for chrome webpack home mean uiStartup Benchmark value 1718 exceeds gate value 1711 for chrome webpack home mean load Benchmark value 1712 exceeds gate value 1704 for chrome webpack home mean domContentLoaded Benchmark value 242 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 1708 exceeds gate value 1699 for chrome webpack home mean loadScripts Benchmark value 2729 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 2043 exceeds gate value 2030 for chrome webpack home p95 load Benchmark value 2024 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded Benchmark value 61 exceeds gate value 57 for chrome webpack home p95 domInteractive Benchmark value 400 exceeds gate value 370 for chrome webpack home p95 firstReactRender Benchmark value 30 exceeds gate value 7 for chrome webpack home p95 initialActions Benchmark value 2019 exceeds gate value 1970 for chrome webpack home p95 loadScripts Benchmark value 6 exceeds gate value 1 for firefox browserify home mean initialActions Benchmark value 14 exceeds gate value 9 for firefox browserify home mean setupStore Benchmark value 27 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 69 exceeds gate value 27 for firefox browserify home p95 setupStore Benchmark value 1682 exceeds gate value 1615 for firefox webpack home mean uiStartup Benchmark value 1420 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1420 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 106 exceeds gate value 100 for firefox webpack home mean domInteractive Benchmark value 59 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 32 exceeds gate value 15 for firefox webpack home mean getState Benchmark value 8 exceeds gate value 1 for firefox webpack home mean initialActions Benchmark value 1398 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2076 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1728 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1728 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 326 exceeds gate value 156 for firefox webpack home p95 domInteractive Benchmark value 67 exceeds gate value 50 for firefox webpack home p95 firstReactRender Benchmark value 34 exceeds gate value 32 for firefox webpack home p95 getState Benchmark value 23 exceeds gate value 2 for firefox webpack home p95 initialActions Benchmark value 1672 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 366ms | Sum of p95 exceeds: 1030.8ms Sum of all benchmark exceeds: 1396.8ms Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
vinistevam
approved these changes
Jul 21, 2025
jpuri
approved these changes
Jul 23, 2025
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
INVALID-PR-TEMPLATE
PR's body doesn't match template
release-13.1.0
Issue or pull request that will be included in release 13.1.0
team-confirmations
Push issues to confirmations team
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.
Description
Configure slippage applied to delegation caveats when enforced simulations is enabled.
Specifically:
enforcedSimulationsSlippage
andenforcedSimulationsSlippageForTransactions
toAppStateController
.SimulationSettingsModal
component to better modularise components and handlers.enforceSimulations
util.Related issues
Fixes: #5174
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist