-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[HOLD for payment 2024-10-09] [$250] Onboarding - Onboarding Modal opens when returning back online #49499
Comments
Triggered auto assignment to @jliexpensify ( |
@jliexpensify FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors |
Able to repro this one |
Job added to Upwork: https://www.upwork.com/jobs/~021836961456209861456 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @eVoloshchak ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.Reloading after going back online bring back the Onboarding flow for a moment What is the root cause of that problem?When calling App/src/libs/actions/Report.ts Line 3692 in 6510ae4
so when users reload, the onboarding flow will be shown again What changes do you think we should make in order to solve the problem?set What alternative solutions did you explore? (Optional) |
ProposalPlease re-state the problem that we are trying to solve in this issue.Onboarding Modal opens when returning back online What is the root cause of that problem?
App/src/libs/actions/Report.ts Line 3692 in 00d2e32
What changes do you think we should make in order to solve the problem?We need to add a condition for displaying onboarding. If there is a // .src/libs/hasCompletedGuidedSetupFlowSelector.ts#L6
function hasCompletedGuidedSetupFlowSelector(onboarding: OnyxValue<typeof ONYXKEYS.NVP_ONBOARDING>): boolean {
// onboarding is an array for old accounts and accounts created from olddot
if (Array.isArray(onboarding)) {
return true;
}
+ const persistedRequests = PersistedRequests.getAll();
+ const hasPendingCompleteGuidedSetupRequest = persistedRequests.some((item) => item.command === WRITE_COMMANDS.COMPLETE_GUIDED_SETUP);
+ // If there's a pending request to complete guided setup, return false
+ if (hasPendingCompleteGuidedSetupRequest) {
+ return false;
+ }
return onboarding?.hasCompletedGuidedSetupFlow ?? true;
} POC
Screen.Recording.2024-09-20.at.14.57.18.mp4 |
📣 @allgandalf 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
Thanks @CyberAndrii - have assigned Vit and @allgandalf to have a look at this and confirm it's a regression fornm their PR. |
I think this is minor, the original bug the Pr was fixing was much more critical @blazejkustra would you be able to follow up on this one and see why the modal is opening for a bit? Thanks! |
To clarify, this issue was already fixed by #49516. It's just that #49263 changed the default value in the |
We can use my proposal to fix this issue because it solves the problem without affecting other flows. |
Update: I have a working fix for this here, but I'm struggling to make the exit animation of the Modal to work correctly, I'm sure I'll update on the progress rather quickly |
Famous last words 💀 Update: We investigated this with @adamgrzybowski, as it is deeply connected to navigation logic, there are several issues with the current setup of onboarding (redundant logic, weird flows etc)
All that being said we come up with a solution that refactors a lot of code, and could potentially affect HybridApp - that's why first thing in the morning I'll check with the HybridApp team to make sure we don't introduce any new bugs. |
@blazejkustra thanks for the update, how its going? |
I'll update shortly, we are testing the refactor on HybridApp with @mateuuszzzzz |
double mention @blazejkustra 😆 |
Just a heads up I'm OOO from 3rd to 14th, but I don't think anything is needed from me during this period. Feel free to reassign to another B0 if needed - otherwise I will catch up when I'm back. |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
PR hit production today, payment date should be 9th. @mountiny can you reassign a BZ since @jliexpensify is OoO? Also what would be the final payment here given that it was a full logic refactor of the onboarding flow? |
Triggered auto assignment to @zanyrenney ( |
$250 to @allgandalf for their review |
Can the compensation be $375 for this one ?, I tested lot of cases from testrail for this logic refactor 😅 |
@mountiny, @blazejkustra, @zanyrenney, @allgandalf Eep! 4 days overdue now. Issues have feelings too... |
Yep I think this is fair, thanks for your willingness to step up and help with this one |
Hey @allgandalf well done for the extra effort here. payment summary $250 + $100 bonus for the work, paid via upwork to @allgandalf |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: v9.0.38-0
Reproducible in staging?: Y
Reproducible in production?: Y
Issue reported by: Applause Internal Team
Action Performed:
Expected Result:
Reloading after going back online should not bring the Onboarding flow back
Actual Result:
Reloading after going back online bring back the Onboarding flow for a moment
Workaround:
Unknown
Platforms:
Screenshots/Videos
Bug6608836_1726747731805.Onboarding_01.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @zanyrenneyThe text was updated successfully, but these errors were encountered: