Repository navigation
Fix Onboarding modal does not appear until clearing cache - #103550
Conversation
|
@marufsharifi Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
@marufsharifi Sorry for the ping. This is a DB, @abzokhattab will handle it |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b017bbf0f8
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
…en is pushed over it
|
reviewing |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2026-10-09.at.13.45.22.movAndroid: mWeb ChromeiOS: HybridAppScreen.Recording.2026-10-09.at.13.26.54.moviOS: mWeb SafariScreen.Recording.2026-10-09.at.13.30.41.movMacOS: Chrome / SafariScreen.Recording.2026-10-09.at.13.20.45.mov |
joekaufmanexpensify
left a comment
There was a problem hiding this comment.
Good for product
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Fix Onboarding modal does not appear until clearing cache (cherry picked from commit 693cab0) (cherry-picked to staging by puneetlath)
|
🚧 carlosmiceli has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Cherry-picked to staging by https://github.com/puneetlath in version: 9.5.6-3 🚀
|
|
No help site update is needed. This bug fix restores the expected behavior: new accounts see onboarding right after they sign in. It only changes internal navigation code and does not add, rename or remove anything an article describes. |
|
🚀 Deployed to production by https://github.com/puneetlath in version: 9.5.6-6 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
Navigation.isValidateLoginFlow()readsnavigationRef.getRootState()during render, so it isn't reactive. Previously, theisOnboardingCompleted === falsepart of the condition made AuthScreens re-render and re-check it once the onboarding NVP loaded.This PR subscribes
AuthScreensto navigation state withuseRootNavigationState(Navigation.isValidateLoginFlow). The navigator gets registered as soon as the user leaves the validate login screen, while onboarding still doesn't open over it.Navigation.isValidateLoginFlownow takes the navigation state as a parameter so it can be used as the selector.Fixed Issues
$ #103545
PROPOSAL:
Tests
Offline tests
N/A. This change only affects when the onboarding navigator is registered after navigation state changes; sign-in requires a network connection.
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
Screen.Recording.2026-10-09.at.12.32.13.mov
iOS: mWeb Safari
Screen.Recording.2026-10-09.at.12.57.54.mov
MacOS: Chrome / Safari
Screen.Recording.2026-10-09.at.12.55.11.mov