Dismissing onboarding fix #45327
Conversation
|
cc @allgandalf as you were the reviewer of the original PR - basically I just added one check if the user is authenticated before we do some actions with navigation state. |
|
@allgandalf 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] |
|
@filip-solecki can you please include all the issues that were identified as test/ qa in the PR? |
|
This issue #45206 also magically got fixed after the revert (So i assume the offending PR was ours) , so can you also test it out @filip-solecki |
|
Just FYI - #44600 is still open and happening on staging. Calling it out because it says in the description here that the original PR was reverted... So it might not be related? but if this PR fixes it, great! |
|
It seems like that issue existed before this original pr no? |
Do you have any idea how can I test it? |
sorry, my bad - I've made a mistake while copy pasting links - this issue is not fixed here |
|
@mountiny I've mentioned all issues I know are fixed here. There is one mentioned by @allgandalf and I don't know how to test it, maybe you have any idea @allgandalf ? |
|
@mountiny @filip-solecki sorrg mostly ooo these days I have triggered a build here You can test it by intercepting the link to new dot with the shortlived token and change it for localhost or to the adhoc build link |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪
|
|
Seems to be solved, thanks @mountiny 🙇 Screen.Recording.2024-07-16.at.5.03.52.PM.mov |
Reviewer Checklist
Screenshots/VideosMacOS: Chrome / SafariScreen.Recording.2024-07-08.at.7.58.51.PM.movScreen.Recording.2024-07-08.at.8.05.35.PM.movMacOS: DesktopScreen.Recording.2024-07-08.at.8.17.07.PM.movScreen.Recording.2024-07-08.at.8.18.54.PM.movAndroid: NativeScreen.Recording.2024-07-08.at.8.25.22.PM.movAndroid: mWeb ChromeScreen.Recording.2024-07-09.at.3.12.41.PM.moviOS: NativeScreen.Recording.2024-07-09.at.3.10.08.PM.moviOS: mWeb SafariScreen.Recording.2024-07-09.at.3.08.10.PM.mov |
allgandalf
left a comment
There was a problem hiding this comment.
I approve off this PR, LGTM, hopefully no issues arise this time 🙏
|
@filip-solecki we have conflicts here ;) |
|
Resolved |
mountiny
left a comment
There was a problem hiding this comment.
Thanks for the patience!
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.0.10-2 🚀
|
|
🚀 Cherry-picked to staging by https://github.com/mountiny in version: 9.0.10-3 🚀
@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes. |
|
Onboarding still can be skipped by navigating to page with RHP. This PR is failing with the original issue #44401 45327.web.mp4 |
|
@filip-solecki , can you look at this please |
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.0.10-7 🚀
|
|
@adamgrzybowski is taking a look |
Hi! I'll take a look at it :) |
@mvtglobally Could you recheck it? I tried to reproduce that and it seems to work fine :) I tested it on a local build and on staging, in both cases it behaves correctly. Screen.Recording.2024-07-24.at.07.34.55.mov |
|
🚀 Deployed to production by https://github.com/francoisl in version: 9.0.11-5 🚀
|
| // We reset the URL as the browser sets it in a way that doesn't match the navigation state | ||
| // eslint-disable-next-line no-restricted-globals | ||
| history.replaceState({}, '', getPathFromState(state, linkingConfig.config)); |
There was a problem hiding this comment.
Yeah, we definetly should make this part platform-specific.
There was a problem hiding this comment.
Agree, should we make a issue for this @adamgrzybowski @s77rt ?
There was a problem hiding this comment.
Somebody from SWM can take care of this issue if you want
There was a problem hiding this comment.
@mountiny Could you please create an issue for this?
| const initialState = useMemo(() => { | ||
| if (!user || user.isFromPublicDomain) { | ||
| return; | ||
| } |
There was a problem hiding this comment.
This return is too early and prevented public domain users from using the lastVisitedPath feature.
Repro steps:
- Go to settings
- Open https://dev.new.expensify.com:8082/
- Verify that you land on settings
This only works with private domain users. cc @mountiny

Details
This PR is second attempt to solve this issue. Original PR was reverted due to issues listed below:
#45157
#45196
#44235
#45284
Fixed Issues
$ #44401
PROPOSAL:
Tests
NOTE
While testing on iOS web or Android web the app should not be running in the background on native devices
CASE 1:
onboarding/purposewith eg.settings/profilein the URLCASE 2:
Offline tests
QA Steps
While testing on iOS web or Android web the app should not be running in the background on native devices
Dismissing onboarding test steps
CASE 1:
onboarding/purposewith eg.settings/profilein the URLCASE 2:
Previous regressions fix test steps
CASE 3
)
CASE 4
CASE 5
CASE 6
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.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: mWeb Chrome
android.webm
iOS: mWeb Safari
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-07-12.at.11.30.39.mp4
MacOS: Chrome / Safari
Web.mov
SSO login issue
SSO.mov
Magic link issue
Magic-link.mov