[$250] Sign in – Concierge chat does not open via deeplink when logging in with a new account
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 9.0.28-0 Reproducible in staging?: Y Reproducible in production?: Y If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4916548 Email or phone of affected tester (no customers): [email protected] Issue reported by: Applause - Internal Team
Action Performed:
- Go to https://staging.new.expensify.com/
- Sign out
- Navigate via deeplink https://staging.new.expensify.com/concierge
- Sign in with a new Gmail account
Expected Result:
Concierge chat opens
Actual Result:
LHN opens
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
- [x] Android: Native
- [ ] Android: mWeb Chrome
- [ ] iOS: Native
- [ ] iOS: mWeb Safari
- [ ] MacOS: Chrome / Safari
- [ ] MacOS: Desktop
Screenshots/Videos
Add any screenshot/video evidence
https://github.com/user-attachments/assets/9f4c54fc-0661-4154-b3fb-5ee43728af7e
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~01172b48a244279bbf
- Upwork Job ID: 1831292649888862736
- Last Price Increase: 2024-09-04
Issue Owner
Current Issue Owner: @allroundexperts
Triggered auto assignment to @sonialiap (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.
Job added to Upwork: https://www.upwork.com/jobs/~01172b48a244279bbf
Triggered auto assignment to Contributor-plus team member for initial proposal review - @allroundexperts (External)
Proposal
Please re-state the problem that we are trying to solve in this issue.
Deeplinks do not work when signing in with a new account
What is the root cause of that problem?
This is a regression from https://github.com/Expensify/App/pull/47829. The PR added a check to stop listening for updates after ONYXKEYS.NVP_ONBOARDING data is set.
https://github.com/Expensify/App/blob/aaa60b9103af83aaa58222e3f36e8cbfbd57e5c3/src/libs/actions/Report.ts#L2665-L2672
Later, the code determines whether to navigate to the deeplink immediately or wait until onboarding is completed. The decision is based on the onboarding.hasCompletedGuidedSetupFlow property.
The issue is that onboarding.hasCompletedGuidedSetupFlow is initially set to false, which means Onyx.disconnect(connection); will be called before it changes to true.
What changes do you think we should make in order to solve the problem?
We should call Onyx.disconnect only after onboarding is completed.
+ const hasCompletedGuidedSetupFlow = hasCompletedGuidedSetupFlowSelector(onboarding);
+
- if (onboarding) {
+ if (hasCompletedGuidedSetupFlow) {
@sonialiap, @allroundexperts Eep! 4 days overdue now. Issues have feelings too...
@allroundexperts what do you think of the above proposal?
@CyberAndrii's proposal looks good to me. It has the correct RCA and the solution seems to work as well.
🎀 👀 🎀 C+ reviewed
Triggered auto assignment to @puneetlath, see https://stackoverflow.com/c/expensify/questions/7972 for more details.
📣 @CyberAndrii 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app!
Offer link Upwork job Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑💻 Keep in mind: Code of Conduct | Contributing 📖
@allroundexperts @CyberAndrii what's the status of this?
Hm... Just looking at this now. I think this slipped from my list of issues. Reviewing now.
Reviewing label has been removed, please complete the "BugZero Checklist".
The solution for this issue has been :rocket: deployed to production :rocket: in version 9.0.46-5 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
- https://github.com/Expensify/App/pull/49092
If no regressions arise, payment will be issued on 2024-10-16. :confetti_ball:
For reference, here are some details about the assignees on this issue:
- @allroundexperts requires payment through NewDot Manual Requests
- @CyberAndrii requires payment automatic offer (Contributor)
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
- [ ] [@allroundexperts] The PR that introduced the bug has been identified. Link to the PR:
- [ ] [@allroundexperts] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
- [ ] [@allroundexperts] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
- [ ] [@allroundexperts] Determine if we should create a regression test for this bug.
- [ ] [@allroundexperts] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
- [ ] [@sonialiap] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:
Payment summary:
- @allroundexperts $250 please request in ND and complete the checklist
- @CyberAndrii $250 paid in upwork ✔️
Checklist
- https://github.com/Expensify/App/pull/47829
- https://github.com/Expensify/App/pull/47829/files#r1807954482
- N/A
- A regression test would be good to have here.
Regression test
- Make sure that you're logged out of any existing account.
- Navigate via deeplink to /concierge page
- Sign in with a new Gmail account
Verify that Concierge chat opens
Do we 👍 or 👎 ?
Thanks!
$250 approved for @allroundexperts