Conversation
|
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. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
| error as Error, | ||
| 'OTA Updates: Error reloading app on onboarding', | ||
| ); | ||
| }); |
There was a problem hiding this comment.
Missing platform check for reloadAsync on Android
Medium Severity
The new onboarding path calls reloadAsync() unconditionally on both iOS and Android, but the existing OTAUpdatesModal deliberately only calls reloadAsync() on iOS (if (Platform.OS === 'ios')). On Android, the established pattern is to let the update apply on next cold start — the modal shows "Close and reopen MetaMask to apply the update" with a "Got it" button. The new hook bypasses this platform-specific behavior, which could cause unexpected forced reloads on Android during onboarding.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection:
None of these changes affect:
The OTA update behavior during onboarding is an edge case that wouldn't be testable in standard E2E tests anyway (requires actual OTA update availability from Expo). No E2E tags are needed. Performance Test Selection:
No performance-sensitive code paths are modified (no UI rendering changes, no data loading changes, no state management changes, no account/network list components affected). |


Description
Changelog
CHANGELOG entry:
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Medium Risk
Medium risk because it changes CI dependency caching/build setup across OSes (including new Cirrus runners and tarball artifacts) and alters OTA update behavior to force a reload during onboarding, which can affect startup flow.
Overview
CI setup changes:
setup-node-modules.ymlis expanded to supportios/android/generic modes with platform-specific runners, optional submodule checkout, optional build-config application, and optional tarball artifacts to preserve symlinks (with updated artifact naming/permissions and retries for platform setup).Runtime behavior change:
useOTAUpdatesnow checksselectCompletedOnboardingand, when a new OTA update is fetched during onboarding, callsreloadAsync()instead of showing the OTA modal; tests were updated accordingly.Version bump: Updates version strings to
7.69.12acrosspackage.json, Android Gradle, iOSMARKETING_VERSION, and Bitrise env vars.Written by Cursor Bugbot for commit a76f011. This will update automatically on new commits. Configure here.