Skip to content
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-04-25] [$500] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot #39831

Closed
6 tasks done
lanitochka17 opened this issue Apr 8, 2024 · 45 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause

Comments

@lanitochka17
Copy link

lanitochka17 commented Apr 8, 2024

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: 1.4.61-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team

Action Performed:

  1. Log out of New Dot if logged in
  2. Log in to Old Dot
  3. Click on the Concierge icon on the bottom right

Expected Result:

After redirecting to New Dot, Concierge chat will not flicker

Actual Result:

After redirecting to New Dot, Concierge chat flickers non-stop

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

bandicam.2024-04-08.17-56-01-668.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01cd4a71bbd34dbd5f
  • Upwork Job ID: 1777373249826816000
  • Last Price Increase: 2024-04-15
  • Automatic offers:
    • c3024 | Reviewer | 0
    • tienifr | Contributor | 0
Issue OwnerCurrent Issue Owner: @CortneyOfstad
@lanitochka17 lanitochka17 added the DeployBlockerCash This issue or pull request should block deployment label Apr 8, 2024
Copy link

melvin-bot bot commented Apr 8, 2024

Triggered auto assignment to @youssef-lr (DeployBlockerCash), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.

Copy link
Contributor

github-actions bot commented Apr 8, 2024

👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

  1. Identify the pull request that introduced this issue and revert it.
  2. Find someone who can quickly fix the issue.
  3. Fix the issue yourself.

@lanitochka17
Copy link
Author

We think that this bug might be related to #wave-collect - Release 1

@lanitochka17
Copy link
Author

@youssef-lr 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

@mountiny mountiny added the External Added to denote the issue can be worked on by a contributor label Apr 8, 2024
@melvin-bot melvin-bot bot changed the title OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot [$250] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot Apr 8, 2024
Copy link

melvin-bot bot commented Apr 8, 2024

Job added to Upwork: https://www.upwork.com/jobs/~01cd4a71bbd34dbd5f

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Apr 8, 2024
@mountiny mountiny changed the title [$250] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot [$500] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot Apr 8, 2024
Copy link

melvin-bot bot commented Apr 8, 2024

Triggered auto assignment to Contributor-plus team member for initial proposal review - @c3024 (External)

Copy link

melvin-bot bot commented Apr 8, 2024

Upwork job price has been updated to $500

@mountiny
Copy link
Contributor

mountiny commented Apr 8, 2024

I hate this bug, this keeps popping up. I am worried the rootcause might lay in the onyx bump #38114 but I wish I would be wrong

@tienifr
Copy link
Contributor

tienifr commented Apr 8, 2024

This starts happening after the Onyx bump #38114, but I believe the root cause is not in Onyx, the Onyx update just makes the issue become more visible.

Proposal

Please re-state the problem that we are trying to solve in this issue.

After redirecting to New Dot, Concierge chat flickers non-stop

What is the root cause of that problem?

In here, we call signInWithShortLivedAuthToken whenever isAccountLoading changes, this leads to signInWithShortLivedAuthToken being called repeatedly because signInWithShortLivedAuthToken will set account loading to true, then account loading becoming false will trigger signInWithShortLivedAuthToken again. This causes the flickering since signInWithShortLivedAuthToken is called and the page is rerendered non-stop.

Only this navigation logic needs to trigger based on isAccountLoading changing, the rest doesn't.

What changes do you think we should make in order to solve the problem?

Extract this navigation logic to its own useEffect that has isAccountLoading as dependency, and remove isAccountLoading from the dependency list here

What alternative solutions did you explore? (Optional)

Add a first render ref like this, and only run this block if it's the first render.

Or another approach is to just remove isAccountLoading from here, but we need to test this carefully because it might cause regressions.

@shubham1206agra
Copy link
Contributor

@tienifr Can you give the offending PR here, as this is a deploy blocker?

@c3024
Copy link
Contributor

c3024 commented Apr 8, 2024

@lanitochka17 the video attached is not for this issue. Could you upload the correct video?

@lanitochka17
Copy link
Author

@c3024 sorry for confusion

bandicam.2024-04-08.17-56-01-668.mp4

@tienifr
Copy link
Contributor

tienifr commented Apr 8, 2024

@tienifr Can you give the offending PR here, as this is a deploy blocker?

@shubham1206agra I haven't been able to find one yet, I think some Navigation/Onyx changes just happen to uncover this issue.

@c3024
Copy link
Contributor

c3024 commented Apr 8, 2024

Can someone help me with how to redirect to New Dot Dev when pressing on the Chat icon in staging/prod old dot?

@rayane-d
Copy link
Contributor

rayane-d commented Apr 8, 2024

@c3024 try to press the icon and copy the link before the transition is done

@tienifr
Copy link
Contributor

tienifr commented Apr 8, 2024

@c3024 try to press the icon and copy the link before the transition is done

Yes, @c3024, can copy the transition link, paste it in another tab, and replace the domain part by your dev domain

@tienifr
Copy link
Contributor

tienifr commented Apr 8, 2024

@c3024 This happens after the Onyx bump #38114, proposal updated to mention that.

@c3024
Copy link
Contributor

c3024 commented Apr 8, 2024

That makes sense and works but how did this work in the earlier version of Onyx? 🤔

@tienifr
Copy link
Contributor

tienifr commented Apr 9, 2024

@mountiny The PR works well in desktop adhoc build:

output.mp4

@mountiny
Copy link
Contributor

Good to retest, the mobile platforms are still not working though, right?

@tienifr
Copy link
Contributor

tienifr commented Apr 10, 2024

the mobile platforms are still not working though

C+ and I do not know how to reproduce the bug in native devices, so we cannot verify whether the solution is fixed on native platform or not.

@tienifr
Copy link
Contributor

tienifr commented Apr 10, 2024

@mountiny Can you give me steps to reproduce the bug on native?

@tienifr
Copy link
Contributor

tienifr commented Apr 15, 2024

@mountiny Can you help check my comment above once you have a chance?

Copy link

melvin-bot bot commented Apr 15, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@mountiny
Copy link
Contributor

@tienifr I think my comment stemmed from your discussion with @c3024 in the PR. Can you test the deeplink to concierge chat in native is working as expected?

@tienifr
Copy link
Contributor

tienifr commented Apr 16, 2024

When using the deeplink to concierge chat in native, I cannot reproduce the bug, in both PR and the latest main at the time PR is not merged. @c3024 Can you confirm?

@c3024
Copy link
Contributor

c3024 commented Apr 16, 2024

Yes, there wasn't a continuous reloading (flickering) on native apps on main which is the bug here. But it was showing a different Your session has expired screen when tried to visit the Concierge chat with deeplink on native apps on main.

@tienifr
Copy link
Contributor

tienifr commented Apr 16, 2024

But it was showing a different Your session has expired screen when tried to visit the Concierge chat with deeplink on native apps on main.

@mountiny Can you help to check the TestRail to see if this flow ever works before for mobile?

As far as I can see there's no way for a real user to reproduce this flow in mobile native, when they click to Concierge icon in OD, it will redirect to ND on web, not mobile native (tested in my physical iPhone on prod).

@mountiny
Copy link
Contributor

sounds good then, I can ask QA to verify these redirections

@kavimuru could you please retest the concierge chat deeplinks/ redirections you got in Testrail and related to this issue so we can close this out

@mountiny mountiny added retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause and removed Help Wanted Apply this label when an issue is open to proposals by contributors labels Apr 16, 2024
@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Apr 18, 2024
@melvin-bot melvin-bot bot changed the title [$500] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot [HOLD for payment 2024-04-25] [$500] OD redirection - Concierge chat flickers non-stop after redirecting from Old Dot to New Dot Apr 18, 2024
Copy link

melvin-bot bot commented Apr 18, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.62-17 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2024-04-25. 🎊

For reference, here are some details about the assignees on this issue:

Copy link

melvin-bot bot commented Apr 18, 2024

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:

  • [@c3024] The PR that introduced the bug has been identified. Link to the PR:
  • [@c3024] 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:
  • [@c3024] 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:
  • [@c3024] Determine if we should create a regression test for this bug.
  • [@c3024] 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.
  • [@CortneyOfstad] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@mountiny
Copy link
Contributor

I think we are good to pay this one out

@CortneyOfstad
Copy link
Contributor

Payment set for tomorrow! @c3024 can you complete the checklist by EOD, so there is no delay in issuing payment? Thanks!

@c3024
Copy link
Contributor

c3024 commented Apr 24, 2024

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:

Regression Test Proposal

  1. Log out of New Dot if logged in
  2. Log on to Old Dot
  3. Click on the Concierge icon on the bottom right. It redirects to New Dot
  4. After redirecting to New Dot, verify that Concierge chat does not flicker continuously

👍 or 👎

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Apr 24, 2024
@CortneyOfstad
Copy link
Contributor

Payment Summary

@tienifr — paid $500 via Upwork
@c3024 — paid $500 via Upwork

@CortneyOfstad
Copy link
Contributor

Regression test here — https://github.com/Expensify/Expensify/issues/390864

Closing — thanks all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause
Projects
None yet
Development

No branches or pull requests

10 participants