Skip to content

Conversation

@XxdpavelxX
Copy link
Contributor

@XxdpavelxX XxdpavelxX commented Dec 12, 2025

Ticket: https://consensyssoftware.atlassian.net/browse/INFRA-3188
Test stable sync branch: https://github.com/consensys-test/metamask-mobile-test-workflow/actions/runs/20148777729/job/57923961348, consensys-test/metamask-mobile-test-workflow#174

Description

Adds a composite GitHub Action and script to auto-open PRs syncing stable into active release/* branches after a release is merged.

  • CI/GitHub Actions
    • New composite action /.github/actions/release-branch-sync/action.yml:
      • Inputs: merged-release-branch, github-token, optional github-tools-repository and github-tools-ref.
      • Checks out repo and tools, configures git, runs sync script.
    • New script /.github/scripts/release-branch-sync.sh:
      • Detects active release branches via open PR titles matching release: X.Y.Z.
      • Creates stable-sync-release-X.Y.Z branches from origin/stable, pushes, and opens PRs into corresponding release/X.Y.Z branches.
      • Skips invalid/older-than-merged branches, the just-merged branch, non-existent branches, already up-to-date branches, or if a sync PR already exists.
      • Emits a summary of created/skipped/failed operations.

Open in GitHub Codespaces

Changelog

CHANGELOG entry: null

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.

Note

Adds a GitHub Actions workflow that validates merged release branch names on stable PRs and triggers a sync of open release branches using a shared action.

  • CI/GitHub Actions:
    • New workflow /.github/workflows/release-branch-sync.yml:
      • Triggers on pull_request closed to stable (merged only).
      • Validates head branch matches release/X.Y.Z format.
      • Runs metamask/github-tools/.github/actions/[email protected] to sync open release/* branches with stable using secrets.STABLE_SYNC_TOKEN.

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

@github-actions
Copy link
Contributor

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-dev-ops DevOps team label Dec 12, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [f647fd8]
UI Startup Metrics (1375 ± 117 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup13751108181411714511552
load1132927157710412081281
domContentLoaded1125922157110311971266
domInteractive3017130242598
firstPaint55394130444310771260
backgroundConnect23421227513242264
firstReactRender5435131176486
getState4319131165070
initialActions105113
loadScripts89970513201029681038
setupStore1373351422
numNetworkReqs171170161166
BrowserifyPower User HomeuiStartup19141564228015119792204
load1077893156412811821279
domContentLoaded1067884155612711721268
domInteractive3117174252793
firstPaint59993156943410811251
backgroundConnect256199820105239561
firstReactRender494010085160
getState19914476183194282
initialActions104112
loadScripts85468713251249631044
setupStore1584271535
numNetworkReqs66521331864119
WebpackStandard HomeuiStartup8496811129829011023
load65657589373702796
domContentLoaded65057088773698790
domInteractive251583182280
firstPaint27382867193260686
backgroundConnect226103202966
firstReactRender59352663657138
getState3215138164158
initialActions103112
loadScripts64756788471695788
setupStore1464591639
numNetworkReqs181178181170
WebpackPower User HomeuiStartup13581072189817814721684
load700593104992712887
domContentLoaded693586103691702878
domInteractive2916119242598
firstPaint27679882197270687
backgroundConnect998624150113551
firstReactRender49426035154
getState17413667755179231
initialActions102011
loadScripts690583102690700875
setupStore1564281335
numNetworkReqs65511311961117
FirefoxBrowserifyStandard HomeuiStartup14611134233321515331854
load1113919158913312001349
domContentLoaded1112918158913312001349
domInteractive74313354692146
firstPaint------
backgroundConnect83231014135108204
firstReactRender423191104466
getState1267081229
initialActions103112
loadScripts1079902154412011521305
setupStore165155211269
numNetworkReqs20985201378
BrowserifyPower User HomeuiStartup25971614380356430613398
load1567992255049620572421
domContentLoaded1566987255049620572420
domInteractive16031107626197948
firstPaint------
backgroundConnect2112411272592291001
firstReactRender5834112166397
getState1256738542151192
initialActions2033423
loadScripts1491967235245319572228
setupStore455103511627164
numNetworkReqs69431292266127
WebpackStandard HomeuiStartup16271316218018717212030
load13111109167511613871506
domContentLoaded13111109167511613861506
domInteractive762622844105142
firstPaint------
backgroundConnect61232243984149
firstReactRender443596104657
getState1971422814108
initialActions103122
loadScripts12771093156510313361446
setupStore205203291685
numNetworkReqs201083201379
WebpackPower User HomeuiStartup26901789439754730543539
load18981148348151623082604
domContentLoaded18981148348151623072604
domInteractive2462918643781831009
firstPaint------
backgroundConnect159251122217177918
firstReactRender5539133156078
getState1327830153157237
initialActions207126
loadScripts18061132345948622242499
setupStore2742263627108
numNetworkReqs68431271973113
📊 Page Load Benchmark Results

Current Commit: f647fd8 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±88ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 733ms (±102ms) 🟢 | historical mean value: 730ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 93ms (±168ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 88ms 1.01s 1.86s 1.07s 1.86s
domContentLoaded 733ms 102ms 699ms 1.70s 741ms 1.70s
firstPaint 93ms 168ms 60ms 1.76s 88ms 1.76s
firstContentfulPaint 93ms 168ms 60ms 1.76s 88ms 1.76s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 0 Bytes (0%)
  • common: 20 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [5982b75]
UI Startup Metrics (1322 ± 90 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1322106315419013861447
load109488913239211561218
domContentLoaded108788613179211511212
domInteractive2917121222495
firstPaint58496132844111031202
backgroundConnect22020325111225246
firstReactRender513291156384
getState401596134667
initialActions105113
loadScripts8746701111959391006
setupStore1365061426
numNetworkReqs171175171166
BrowserifyPower User HomeuiStartup18871566233515919732223
load1060883136511611411292
domContentLoaded1049877135611511351280
domInteractive2917115212796
firstPaint60599127243010681226
backgroundConnect24620056686230542
firstReactRender48376655060
getState19614372462203292
initialActions102112
loadScripts83867611511139141069
setupStore1685281534
numNetworkReqs65511442062122
WebpackStandard HomeuiStartup8586761165869211010
load67057295080743807
domContentLoaded66456794479737794
domInteractive251686172275
firstPaint25773962199221772
backgroundConnect236165243079
firstReactRender59352754051152
getState321572144062
initialActions102112
loadScripts66156593679732792
setupStore1163961229
numNetworkReqs171172171168
WebpackPower User HomeuiStartup13561057193619114411761
load7165861079104816887
domContentLoaded7095791069103810879
domInteractive30161432625106
firstPaint28075899203261758
backgroundConnect5386119881123
firstReactRender49396145154
getState194138680100185265
initialActions102112
loadScripts7065771059102804874
setupStore1564691437
numNetworkReqs67502292861129
FirefoxBrowserifyStandard HomeuiStartup13671088193815414431646
load1075905153611811521291
domContentLoaded1074905153611911521291
domInteractive69312324085166
firstPaint------
backgroundConnect58182044775160
firstReactRender38316363953
getState127116141032
initialActions103012
loadScripts1042890141610411031258
setupStore115103121030
numNetworkReqs19981201375
BrowserifyPower User HomeuiStartup26051735354153230423404
load1593986260451021072434
domContentLoaded1593986260451021072434
domInteractive198311017303148999
firstPaint------
backgroundConnect172201175185213482
firstReactRender5536117155892
getState1247434038142190
initialActions3040626
loadScripts1534968241947720062321
setupStore51592311843252
numNetworkReqs71511262186115
WebpackStandard HomeuiStartup16601313208117517642008
load13541100168311614431540
domContentLoaded13531099168311714431540
domInteractive872916536116141
firstPaint------
backgroundConnect732027851108172
firstReactRender44359184658
getState197183271489
initialActions102012
loadScripts13171086161410713831510
setupStore206207281480
numNetworkReqs201188201382
WebpackPower User HomeuiStartup27021720405254631873420
load18861193290550623732571
domContentLoaded18851193290450623732571
domInteractive2692910333623151004
firstPaint------
backgroundConnect142231288213173372
firstReactRender5838125136379
getState1367532552161245
initialActions2040427
loadScripts18141168287949222812546
setupStore305351503082
numNetworkReqs70531272177117
📊 Page Load Benchmark Results

Current Commit: 5982b75 | Date: 12/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±46ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±43ms) 🟢 | historical mean value: 730ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±14ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 46ms 1.02s 1.42s 1.08s 1.42s
domContentLoaded 731ms 43ms 706ms 1.07s 761ms 1.07s
firstPaint 78ms 14ms 60ms 200ms 88ms 200ms
firstContentfulPaint 78ms 14ms 60ms 200ms 88ms 200ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 0 Bytes (0%)
  • common: 20 Bytes (0%)

@HowardBraham HowardBraham changed the title chore: INFRA-3188: automate release branch sync ci: INFRA-3188: automate release branch sync Dec 15, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [1b9cdc1]
UI Startup Metrics (1313 ± 101 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup13131032163410113771451
load108586513559411521216
domContentLoaded107885813489411421207
domInteractive2717104192386
firstPaint58475131742010691194
backgroundConnect21519827813219241
firstReactRender4733139144774
getState3917113134565
initialActions106113
loadScripts871659113492934990
setupStore1353761425
numNetworkReqs171175151165
BrowserifyPower User HomeuiStartup19211602228513020052190
load1107900140711711931308
domContentLoaded1097894139711711871302
domInteractive31181212327106
firstPaint57394136042610611231
backgroundConnect25420765592237525
firstReactRender50409375359
getState1989871060211257
initialActions103112
loadScripts87768911771169671080
setupStore1583861532
numNetworkReqs67531241866122
WebpackStandard HomeuiStartup834681114580886976
load65156981772716785
domContentLoaded64556481271711779
domInteractive2515103202186
firstPaint25076810188248714
backgroundConnect236123253667
firstReactRender54321772948134
getState3214112164161
initialActions104111
loadScripts64256280270709774
setupStore1274261427
numNetworkReqs171176171168
WebpackPower User HomeuiStartup14241063193218715841741
load73858799597834901
domContentLoaded73158198796827889
domInteractive3017117212796
firstPaint341951001237591805
backgroundConnect59662111454352
firstReactRender53437155564
getState20312436440221277
initialActions102012
loadScripts72757897895821887
setupStore1565291439
numNetworkReqs69532082963124
FirefoxBrowserifyStandard HomeuiStartup13981123187713014871576
load110493213858911631244
domContentLoaded110492713858911631244
domInteractive833523741103161
firstPaint------
backgroundConnect59221993875137
firstReactRender41327084460
getState166193251327
initialActions103122
loadScripts106891512877511181198
setupStore14599141238
numNetworkReqs19989181469
BrowserifyPower User HomeuiStartup25731662399951729403411
load1633994288748120272351
domContentLoaded1633993288648120272350
domInteractive175321043281128953
firstPaint------
backgroundConnect208281155255197999
firstReactRender513396115775
getState1236624038148197
initialActions2027323
loadScripts1530967266745219272290
setupStore3142414733152
numNetworkReqs71511382186115
WebpackStandard HomeuiStartup15731298212716216561884
load12821079154010713541484
domContentLoaded12811079153910713541483
domInteractive73281753797132
firstPaint------
backgroundConnect57171523368135
firstReactRender4433135144674
getState157196201342
initialActions103112
loadScripts12511063146510013271443
setupStore196215301472
numNetworkReqs20984201379
WebpackPower User HomeuiStartup26731713379548530723355
load18351079256743522072449
domContentLoaded18351079256743522072449
domInteractive236311065340248968
firstPaint------
backgroundConnect151251159178175339
firstReactRender5739125156190
getState1236735349151213
initialActions209126
loadScripts17561065253641421232349
setupStore4163586442208
numNetworkReqs68451392372114
📊 Page Load Benchmark Results

Current Commit: 1b9cdc1 | Date: 12/15/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±37ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 716ms (±34ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±11ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 37ms 1.00s 1.30s 1.06s 1.30s
domContentLoaded 716ms 34ms 693ms 975ms 739ms 975ms
firstPaint 75ms 11ms 60ms 164ms 84ms 164ms
firstContentfulPaint 75ms 11ms 60ms 164ms 84ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 3.56 KiB (0.07%)
  • ui: 2.21 KiB (0.03%)
  • common: 1.2 KiB (0.01%)

@XxdpavelxX XxdpavelxX enabled auto-merge December 15, 2025 21:42
@XxdpavelxX XxdpavelxX added this pull request to the merge queue Dec 15, 2025
Merged via the queue into main with commit d0ff511 Dec 15, 2025
176 checks passed
@XxdpavelxX XxdpavelxX deleted the INFRA-3188-AutomateReleaseBranchSync branch December 15, 2025 22:15
@github-actions github-actions bot locked and limited conversation to collaborators Dec 15, 2025
@metamaskbot metamaskbot added the release-13.14.0 Issue or pull request that will be included in release 13.14.0 label Dec 15, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.14.0 Issue or pull request that will be included in release 13.14.0 size-S team-dev-ops DevOps team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants