- Cherry-picking commits from main to release/8.12.0 for PR #36370 (#36436) (85e3447)
- Cherry-picking commits from main to release/8.12.0 for PR #36363 (#36420) (464b259)
- Cherry-picking commits from main to release/8.12.0 for PR #36038 (#36418) (62f9159)
- Cherry-picking commits from main to release/8.12.0 for PR #36368 (#36400) (2ed15cc)
- Cherry-picking commits from main to release/8.12.0 for PR #36381 (#36392) (22f77f3)
- Cherry-picking commits from main to release/8.12.0 for PR #36359 (#36402) (dd88f01)
- Cherry-picking commits from main to release/8.12.0 for PR #36042 (#36365) (09bf5a8)
- chore: sync stable into release/8.12.0 (#36355) (824b630)
- remove unnecessary patch (1ca817c)
- merge release/8.12.0 (ee53246)
- fix(confirmations): patch TPC 27.1.2 for predict deposit-order exact output cp-8.12 (#36353) (ce09c1f)
- release: 8.11.0 (#35713) (84e27f1)
- Cherry-picking commits from main to release/8.12.0 for PR #36241 (#36269) (3369388)
- Cherry-picking commits from main to release/8.12.0 for PR #36263 (#36268) (5adc891)
- release: release-changelog/8.12.0 (#36085) (aa3a8bf)
- Merge release/8.11.0 into release/8.12.0 (20ed2d1)
- feat: remove network fee row from limit order details section (#36014) (b3bc880)
- fix(notifications): synchronize Braze device push consent (#35945) (da41561)
- feat(home): floating tab bar and header nav bar A/B/C wiring (#35548) (f7d50bd)
- fix(content): remove "please" from mobile locale strings (batch 5 of 11) (#35881) (74aa3a5)
- fix(content): remove "please" from mobile locale strings (batch 6 of 11) (#35882) (78d1caa)
- fix(content): remove "please" from mobile locale strings (batch 4 of 11) (#35897) (eaa84fa)
- fix: revert money onboarding footer offset change cp-8.11.0 (#36065) (d357673)
- feat: surface relayer fee in quote details (#36060) (bdc8384)
- feat: remove quotes fetching logic from limit orders (#36022) (7b641d7)
- feat: pair social identifiers when Basic Functionality is consolidated (#36017) (647bbc9)
- fix: stop routing local OAuth through legacy byoa-server (#36027) (7cd6f6b)
- ci: enable RC repack by default with opt-out label (#36039) (d3a3b79)
- fix(swaps): record no quote outcomes (#35965) (003b740)
- fix: defi controller fetch behaviour change (#36019) (a7d94b8)
- chore(STX-825): bump @metamask/smart-transactions-controller to 26.0.0 (#35499) (980d673)
- feat(social): isolate Social Bundle V1 home behind A/B assignment (#35962) (ec47c67)
- feat: add trust signals to tokenized stock search results (#36043) (947e9aa)
- fix(content): standardize auth error strings (#35554) (0a3279e)
- fix(content): remove "please" from mobile locale strings (batch 3 of 11) (#35888) (f6c1cb8)
- chore: bump react-native-keyboard-controller to 1.21.6 (#35621) (257f8fd)
- fix: MUSD-1329, MUSD-1330 Fixing Money onboarding regressions introduced by nitro-rive upgrade cp-8.11.0 (#35998) (b8f2352)
- feat(accounts): add useManageAccountsView hook and unit tests (#35765) (9e21342)
- feat(brand): replace Geist with Inter (#35748) (3d553f9)
- chore: bump
@metamask/network-controllerto^36.0.0cp-8.11.0 (#36031) (8405741) - chore(braze): upgrade React Native SDK to v23 (#35944) (f55b45c)
- fix: push notifications onboarding for Android < 13 (#35387) (f6cf829)
- test(cv): add e2e-style component view tests for 14 Perps views (#35957) (7fe6eae)
- feat: MUSD-1331 Wrap redesigned Earn row in trade menu with feature flag cp-8.11.0 (#36004) (cf7f14b)
- feat: keep Rewards behind Money after sweepstakes Add Funds and flag lagging qualifying deposits (#35918) (dba71e3)
- test: sync FF defaults for perps (#35972) (d69baae)
- chore: bump typescript to 5.8.3 (#35623) (6499484)
- fix(perps): perps confirm loader trap cp-8.11.0 (#35996) (25bb15b)
- chore(perps): bump perps-controller to 16.2.0 (#35967) (d5e50de)
- fix(android): stop nitro-websockets crash when closing mid-handshake cp-8.11.0 (#35600) (46db28b)
- chore: New Crowdin Translations by GitHub Action cp-8.11.0 (#35687) (7c379ae)
- chore: limit recurring dest chains to source network (#35981) (4e3f280)
- release: sync stable to main for version 8.10.2 (#35997) (ac45926)
- Merge origin/main into stable-main-8.10.2 (7ac6965)
- Merge remote-tracking branch 'origin/main' into stable-main-8.10.2 (a69a6d5)
- feat: drop MetaMetrics opt-in for profile metrics under Basic Functionality consolidation (#35921) (2326692)
- fix(card): center KYC verify-identity illustration (#35102) (95c30b9)
- fix: limit order destination asset picker should only allow source chain (#35941) (9be889b)
- refactor(activity): align activity details transaction lookup (#35929) (bb5337c)
- test: sync FF defaults for swaps and bridge (#35966) (6599d41)
- fix: Add build attribution option to separate mix panel events (#35923) (dbed3f8)
- fix(predict): block PWAT CTAs until pay state passes the publish guard (#35867) (8409e88)
- fix(predict): align market details header with image (#35197) (199e0bb)
- chore(core-backend): bump version to 9.1.1 (#35958) (877d017)
- test: sync FF defaults for confirmations (#35954) (156d6de)
- feat(onboarding): add loading timeout and App Unlocked telemetry (#35228) (8384724)
- feat: add Robinhood RWA assets to Explore ASSETS-3935 (#35854) (6edd84f)
- feat(rewards): scope perps campaign state per campaign id (#35759) (b9f4fa9)
- fix: default money deposits to highest-balance pay token (#35934) (ab24666)
- ci: adding missing unit tests for E2E CI logic (#35898) (7eec7bf)
- feat(whats-happening): add fetch and TTC Sentry spans (#35820) (3134315)
- feat: MUSD-1327 Add Segment event to redesigned Earn row in trade menu cp-8.11.0 (#35917) (ebb17fb)
- fix(predict): treat geoblock timeouts as unavailable (#35719) (1c3ba98)
- fix(perps): add padding between TWAP filters and inner tabs (#35774) (9dfd1e8)
- fix: open external Braze in-app message links on iOS (#35922) (295f3ae)
- feat(confirmations): bump transaction pay controller to 27.1.2 (#35869) (b40083f)
- perf(predict): pause homepage BTC live price when off-screen (#35766) (32a6bab)
- fix(explore): limit API ranking preservation to LAPTOP searches cp-8.10.2 (#35937) (9fe0ffe)
- fix: align network usage notice toast events with segment schema cp-8.11.0 cp-8.10.3-ota (#35930) (01b1945)
- fix(predict): match market details About rows to Token Details typography (#35813) (2b99b52)
- fix(predict): harden claim gas-station preflight (#35567) (e1261fa)
- test(appium): harden iOS WebView select for React-controlled options (#34998) (51355ea)
- feat: recurring small fixes 2 (#35914) (a6993fb)
- feat: add feature ids on search/popular endpoints for all swap tabs (#35810) (284467a)
- chore: SwapQuotesProvider updates for parity with legacy hooks (#35649) (9f1ee4b)
- fix: submit add-device scans via QRTabSwitcher messenger (#35931) (bb8b4a8)
- test: Money Account deposit e2e (payment methods, max, another account) + preferred-token batch fix (#35753) (0e5ab0e)
- test(appium): stabilize deeplink Continue and Multichain iOS dapp URL (#35855) (989d4f9)
- feat(subscriptions): replace membership footer with Also included section (#35565) (2a297c9)
- test(appium): wait for onboarding readiness after wallet reset (#35899) (1cce8cd)
- perf(ios-e2e): warm up WDA pool in parallel (MMQA-2391) (#35901) (de9f251)
- test: pin A/B flag variants during feature-flag registry sync (#35850) (a6a3959)
- refactor(nav): remove the MainFlow navigator wrapper (#35789) (86c1e32)
- chore: upgrade design system packages (v65.0.0) (#35916) (c6330cb)
- fix(content): remove "please" from mobile locale strings (batch 1 of 11) (#35879) (c574cff)
- feat: recurring open historical order page (#35769) (a48b54e)
- feat(ui): Implement Phosphor icons for Brand update (#35526) (147ca60)
- feat: MUSD-1326 removed no fee tag from EarnSearchAssetRow cp-8.11.0 (#35904) (95f079b)
- chore: upgrade React Native design system to 0.43.0 (#35873) (fa6cd08)
- feat: MUSD-1314 earn module wire up analytics cp-8.11.0 (#35721) (8c682f1)
- refactor: centrailize the startup deeplink navigator path (#35718) (e64f1a1)
- fix(solana): open send from Solana Pay QR transfer URIs cp-8.11.0 (#35672) (2a83b01)
- feat: implement live token fiat rate hook through websockets (#35859) (c69db61)
- ci: optimizations around CI flags computation for E2E jobs (#35608) (f5d3ec9)
- chore: bump and align accounts packages (#35866) (dd37b41)
- feat: install base agent skills by default (#35263) (4d3aa24)
- feat(ui-slots): integrate UI slots for enhanced content rendering (#35641) (94dca13)
- feat(card): add UK migration Update badge on Accounts menu (#35826) (aed73b5)
- feat(ramp): add native Sumsub SDK and launch it from VBA verify identity (#35469) (9062c2a)
- feat(perps): gate position-modify margin preview cp-8.11.0 (#35849) (81ad527)
- fix(predict): remove dead status spacing above the market details chart (#35860) (6c9e427)
- fix(predict): reduce recurrence icon to 16pt on multi-outcome market cards (#35858) (6191c5d)
- fix(predict): align carousel card CTAs on a shared inset (#35806) (e083268)
- fix(onboarding): fill Android gesture inset without pushing fox under nav (#35838) (4662183)
- fix: bump
@metamask/walletto^12.0.3cp-8.11.0 (#35853) (40b6a62) - ci: run feature-flag sync scripts with tsx [MMQA-2389] (#35837) (5bdee98)
- test(appium): assert enabled Snap alert atomically with re-tap (#35803) (89caf87)
- fix(metamask-pay): use exact balance in all max flows (#35822) (031abbd)
- test(cv): add component-view tests for Top Traders feature (#35804) (94c6f36)
- fix: share Top Traders title i18n key between homepage and tabs view (#34858) (8521f38)
- ci(e2e): pack iOS Appium smoke onto fewer N=2 shards (#35829) (d06d256)
- feat(subscriptions): add Invoices row to membership manage section (#35566) (867f35c)
- feat(subscriptions): update Pro Hub home UI layout and stats (#35518) (c3ee10b)
- release: sync stable to main for version 8.10.1 (#35833) (fefe6c5)
- Merge origin/main into stable-main-8.10.1 (5b112be)
- fix(content): replace 'charged for gas' with 'network fee' in smart transaction string (#35555) (6e8cafa)
- fix(content): fix "DeFi" capitalization in homepage error state (#35703) (39a4a6a)
- fix(content): add missing article in network details check description (#35728) (534dcdc)
- feat: add gas fees and balance checks on swaps limit order (#35800) (9c69d1c)
- fix: remove extra space in token minimal unit error message (#35731) (3f39f3b)
- fix(content): capitalize sentence in IPFS gateway banner (#35729) (4bb71f3)
- fix(content): use "withdrawal" in Predict withdraw error (#35726) (96ec5de)
- fix(content): remove extra space in onboarding analytics alert (#35724) (3ead030)
- fix(content): add missing "to" in Display NFT media copy (#35723) (5661e6a)
- fix(card): resolve redeem destinations and lock withdraw across modes (#35741) (1921536)
- chore(vscode): migrate deprecated JS/TS editor settings (#35827) (0d9bb31)
- chore: bump assets-controller to 15.0.0 and account-tree-controller to cp-8.11.0 cp-8.10.3 (#35695) (984a31e)
- fix(appium): give each Android pool worker its own adb server (#35815) (e98c0ac)
- feat(market-insights): add fetch and TTC Sentry spans (#35807) (2ffc269)
- ci: replace Homebrew ffmpeg with a timed static install (#35802) (84efad1)
- feat: validate hardware payer gas for Money Account deposits (#35809) (fc71a67)
- fix(ci): pin JS bundle baseline from the PR merge-ref parent (#35805) (9724ba5)
- feat: remove wallet activity in-app and push toggles + source preferences from Trigger API (#35474) (feb0582)
- chore(codeowners): add DevOps team as owner of .github/workflows/ (#35701) (c1baf11)
- fix: android push notifications opt out event (#35626) (bdaeee3)
- perf(activity): replace O(n·m) bridge scans in ActivityList non-EVM merge (#35801) (90e0156)
- test(cv): stabilize PredictMarketDetails async load, share, buy, and tab waits (#35794) (65fe801)
- fix(e2e): skip adb reverse --remove on pooled Android emulators (#35799) (6c66171)
- fix(confirmations): stop Send back navigation from looping instead of popping (#35712) (c33ba19)
- fix(rewards): tighten sweepstakes balance and last-checked rows (#35770) (dd4b45c)
- fix(e2e): treat missing iOS app data container as already cleared (#35793) (904d9f5)
- fix: ios perps n2 flake (#35790) (94eeb10)
- fix(predict): show the claim CTA for pushed markets bought above 50c (#35646) (362aaba)
- ci: add AI-assisted fixes for dependency audit advisories (#35639) (68dfa29)
- ci: skip merge-previous-releases on non-release branches (#35787) (577e290)
- fix(content): remove trailing period in notifications accounts copy (#35734) (322ed02)
- fix(content): remove extra space in network details check description (#35722) (4b3802d)
- fix(content): use "an unfavourable swap" in slippage warnings (#35725) (c4143b2)
- refactor(card): drive redeem hooks from controller-owned withdrawal state (#35740) (88028af)
- feat(card): add remote UK card migration flag and home UX (#35717) (c93aa6f)
- feat(e2e): pool two iOS simulators per Appium smoke job (N=2, mirror Android) (MMQA-2208) (#35699) (977d16e)
- ci(e2e): reduce Android Appium smoke shards after N=3 pool (#35786) (f6f94cb)
- feat(card): move redeem withdrawal and receipt monitoring into CardController (#35739) (73a41c6)
- refactor(earn): co-locate lending testIDs (MMQA-1390) (#35581) (1d73051)
- test(appium): serialize host adb reverse across N=2 workers (#35758) (7792b1a)
- refactor(settings): co-locate DeveloperOptions testIDs (MMQA-1390) (#35582) (507d33b)
- refactor(confirmations): import getAssetTestId from AssetElement.testIds (MMQA-1390) (#35579) (3d0d6bc)
- ci: retry Namespace artifact uploads in ci.yml (INFRA-3902) (#35706) (6cc0320)
- test: reverted change in money home performance test (#35767) (017b790)
- release: sync stable to main for version 8.10.0 (#35756) (1919156)
- test(perf): harden flaky performance specs (MMQA-XX) (#35517) (3e7572d)
- perf(predict): end feed TTI when the active tab is interactive (#35764) (6f3ccac)
- fix(perps): bump perps-controller to 16.1.0 for TP/SL cache misses cp-8.11.0 (#35742) (c08f4d0)
- chore: bump react-native-nitro-fetch to 1.5.1 (#35619) (65b7899)
- ci: page the audit owner in Slack for dependency audit advisories (#35638) (aea8a79)
- chore: bump bitcoin snap version (#35697) (2d9f46c)
- feat(accounts): add useToggleAccountGroupHidden hook (#35751) (546ae95)
- perf(predict): skip chart history for homepage BTC live price (#35752) (b8cf163)
- feat(accounts): add ManageAccountsView (#35750) (b8d581f)
- test(cv): stabilize PredictMarketDetails zero-price buy button assertion (#35675) (4d9946e)
- fix(agentic): deduplicate forwarded test ID targets (#35762) (a0315da)
- fix(agentic): handle Fabric UI targets reliably (#35746) (8e11f95)
- Merge origin/main into stable-main-8.10.0 (70de3c7)
- release: Bump main version to 8.12.0 (#35715) (2dd0799)
- fix(perps): fill Pro order book taps at displayed price precision (#35685) (1cf96df)
- fix(predict): limit homepage open positions to five (#35513) (a6f5e2d)
- test(perps): add stable TWAP market selector (#35745) (1ec7aa9)
- feat: migrate users with all toggles on/off to consolidated toggle without toast (#35671) (7f76497)
- test(appium): stabilize Perps stop-loss market select and price push (#35683) (5b3a01a)
- feat: show one-time Arc usage notice toast on wallet home cp-8.11.0 cp-8.10.3-ota (#35716) (9707b16)
- feat: manage account row (#35625) (ecec9c3)
- feat(perps): remove myx support and adopt controller v16 analytics (#35735) (bacca1f)
- fix: remove READ_MEDIA_IMAGES permissions cp-8.10.0 (#35737) (d56c78c)
- test: add coverage for bridge quote hooks (#35393) (f057cba)
- test(e2e): add Money Account fiat deposit flow (#35691) (5bca6b6)
- ci(e2e): extend dual-upload artifact retry to remaining E2E workflows (INFRA-3902) (#35669) (0b34de5)
- test(e2e): try Android Appium smoke on a three-emulator pool (#35700) (07511b8)
- revert(card): remove Money Account cross-device linkage guardrail (#35698) (24e9376)
- fix(content): remove double space in home onboarding trade subtitle (#35711) (d61e89e)