Skip to content

Conversation

@Mrtenz
Copy link
Member

@Mrtenz Mrtenz commented Jul 31, 2025

Description

This deflakes the onStart lifecycle hook test by removing a race condition.

Open in GitHub Codespaces

Changelog

CHANGELOG entry:

Related issues

Fixes: #34767

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.

@Mrtenz Mrtenz added the no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed label Jul 31, 2025
@metamaskbot metamaskbot added the team-snaps-platform-deprecated DEPRECATED: please use "team-core-platform" instead (or "team-new-networks" for Solana snap issues) label Jul 31, 2025
@metamaskbot
Copy link
Collaborator

metamaskbot commented Jul 31, 2025

✨ Files requiring CODEOWNER review ✨

👨‍🔧 @MetaMask/core-platform (1 files, +14 -2)
  • 📁 test/
    • 📁 e2e/
      • 📁 snaps/
        • 📄 test-snap-lifecycle.spec.ts +14 -2

@metamaskbot
Copy link
Collaborator

Builds ready [fd3460f]
UI Startup Metrics (1280 ± 66 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1280116015206613141409
load109398713346111221210
domContentLoaded108597413236011151202
domInteractive19146381840
firstPaint710104133243811111154
backgroundConnect2262122578229237
firstReactRender2115121112037
getState1038291323
initialActions30577210
loadScripts866750109560895988
setupStore74162714
WebpackHomeuiStartup23021741288317423482625
load18441305251219318922273
domContentLoaded18351299249518918862255
domInteractive2111246331467
firstPaint1645647370180306
backgroundConnect44113006928273
firstReactRender1528934350169228
getState943341017
initialActions52284511
loadScripts18231296248318318702163
setupStore196253411425
FirefoxBrowserifyHomeuiStartup14951256191012315521747
load1285110715848813411468
domContentLoaded1285110615838813391467
domInteractive1063442653114232
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2716103132954
firstReactRender27218292852
getState828411632
initialActions6019121317
loadScripts1264109115598613181420
setupStore935610737
WebpackHomeuiStartup16391422217215617102011
load13791202171111814501623
domContentLoaded13791202171111814501622
domInteractive93312774798233
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3421104113557
firstReactRender52416755561
getState103108131131
initialActions6011314321
loadScripts13531178168511514261582
setupStore125162201025
Benchmark value 1280 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 1093 exceeds gate value 1070 for chrome browserify home mean load
Benchmark value 1086 exceeds gate value 1061 for chrome browserify home mean domContentLoaded
Benchmark value 226 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 3 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 867 exceeds gate value 830 for chrome browserify home mean loadScripts
Benchmark value 1409 exceeds gate value 1365 for chrome browserify home p95 uiStartup
Benchmark value 1211 exceeds gate value 1190 for chrome browserify home p95 load
Benchmark value 1202 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded
Benchmark value 237 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 10 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 988 exceeds gate value 940 for chrome browserify home p95 loadScripts
Benchmark value 2303 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 1845 exceeds gate value 1711 for chrome webpack home mean load
Benchmark value 1835 exceeds gate value 1704 for chrome webpack home mean domContentLoaded
Benchmark value 22 exceeds gate value 21 for chrome webpack home mean domInteractive
Benchmark value 44 exceeds gate value 40 for chrome webpack home mean backgroundConnect
Benchmark value 1823 exceeds gate value 1699 for chrome webpack home mean loadScripts
Benchmark value 2625 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 2273 exceeds gate value 2030 for chrome webpack home p95 load
Benchmark value 2255 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 274 exceeds gate value 90 for chrome webpack home p95 backgroundConnect
Benchmark value 11 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 2163 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 1496 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 1286 exceeds gate value 1245 for firefox browserify home mean load
Benchmark value 1285 exceeds gate value 1239 for firefox browserify home mean domContentLoaded
Benchmark value 28 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 6 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 1264 exceeds gate value 1230 for firefox browserify home mean loadScripts
Benchmark value 1747 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 232 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 17 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 37 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1639 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 34 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 52 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 6 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 2011 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 233 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 57 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 61 exceeds gate value 50 for firefox webpack home p95 firstReactRender
Benchmark value 21 exceeds gate value 2 for firefox webpack home p95 initialActions
Sum of mean exceeds: 1128ms | Sum of p95 exceeds: 1765.8ms
Sum of all benchmark exceeds: 2893.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 43 Bytes (0%)
  • ui: 332 Bytes (0%)
  • common: 15 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [c00ae22]
UI Startup Metrics (1239 ± 69 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1239112416846912671353
load106397614886410931158
domContentLoaded105697014806310861152
domInteractive18135571737
firstPaint57485117942210511122
backgroundConnect2212092456224231
firstReactRender20144962034
getState1147591327
initialActions20203211
loadScripts841759125962870941
setupStore74172712
WebpackHomeuiStartup23561918282316824392685
load18791451235617419752212
domContentLoaded18691444233716919672199
domInteractive1911186231457
firstPaint173611891186177317
backgroundConnect43103036534279
firstReactRender1539035155180273
getState204248461235
initialActions7219319615
loadScripts18621441232716419642180
setupStore156238231426
FirefoxBrowserifyHomeuiStartup13951214180210814381590
load1209105713927612661360
domContentLoaded1209105713917612651360
domInteractive993228940106185
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect261491132856
firstReactRender24206062633
getState8211915542
initialActions5020521212
loadScripts1189103813717312421339
setupStore73366622
WebpackHomeuiStartup16301427211015117341940
load13771208174612514671623
domContentLoaded13761208174612514661623
domInteractive92322784893233
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect331892133365
firstReactRender53417465763
getState933871223
initialActions40225315
loadScripts13511188171412314411600
setupStore1057311926
Benchmark value 1240 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 221 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 3 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 842 exceeds gate value 830 for chrome browserify home mean loadScripts
Benchmark value 232 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 11 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 941 exceeds gate value 940 for chrome browserify home p95 loadScripts
Benchmark value 2357 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 1879 exceeds gate value 1711 for chrome webpack home mean load
Benchmark value 1869 exceeds gate value 1704 for chrome webpack home mean domContentLoaded
Benchmark value 44 exceeds gate value 40 for chrome webpack home mean backgroundConnect
Benchmark value 8 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 1862 exceeds gate value 1699 for chrome webpack home mean loadScripts
Benchmark value 2685 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 2212 exceeds gate value 2030 for chrome webpack home p95 load
Benchmark value 2199 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded
Benchmark value 58 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 279 exceeds gate value 90 for chrome webpack home p95 backgroundConnect
Benchmark value 15 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 2180 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 26 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 5 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 42 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 12 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 1631 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 33 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 53 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 4 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1940 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 233 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 65 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 63 exceeds gate value 50 for firefox webpack home p95 firstReactRender
Benchmark value 15 exceeds gate value 2 for firefox webpack home p95 initialActions
Sum of mean exceeds: 943ms | Sum of p95 exceeds: 1391.8ms
Sum of all benchmark exceeds: 2334.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 43 Bytes (0%)
  • ui: 1.2 KiB (0.02%)
  • common: 15 Bytes (0%)

@Mrtenz Mrtenz marked this pull request as ready for review August 1, 2025 09:08
@Mrtenz Mrtenz requested a review from a team as a code owner August 1, 2025 09:08
@Mrtenz Mrtenz added this pull request to the merge queue Aug 1, 2025
Merged via the queue into main with commit 3f71af6 Aug 1, 2025
146 checks passed
@Mrtenz Mrtenz deleted the mrtenz/deflake-lifecycle-test branch August 1, 2025 10:22
@github-actions github-actions bot locked and limited conversation to collaborators Aug 1, 2025
@metamaskbot metamaskbot added the release-13.2.0 Issue or pull request that will be included in release 13.2.0 label Aug 1, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed release-13.2.0 Issue or pull request that will be included in release 13.2.0 team-snaps-platform-deprecated DEPRECATED: please use "team-core-platform" instead (or "team-new-networks" for Solana snap issues)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Flaky test: Test Snap Lifecycle Hooks runs the onStart lifecycle hook when the client is started

5 participants