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-06-11] [$250] Android - Login - While login android app, a blank page slightly opens and closes #41333

Closed
1 of 6 tasks
lanitochka17 opened this issue Apr 30, 2024 · 33 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

Comments

@lanitochka17
Copy link

lanitochka17 commented Apr 30, 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.68
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. Launch app
  2. Enter email id and tap continue
  3. Tap magic link to login

Expected Result:

Question While login android app, a blank page must not slightly open and close

Actual Result:

While login android app, a blank page slightly opens and closes

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

Bug6466605_1714483792772.screenrecorder-2024-04-30-17-49-07-211.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~0182c092cd87c0b915
  • Upwork Job ID: 1785327999234457600
  • Last Price Increase: 2024-05-07
  • Automatic offers:
    • rayane-djouah | Reviewer | 0
    • bernhardoj | Contributor | 0
Issue OwnerCurrent Issue Owner: @lschurr
@lanitochka17 lanitochka17 added the DeployBlockerCash This issue or pull request should block deployment label Apr 30, 2024
Copy link

melvin-bot bot commented Apr 30, 2024

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

Copy link
Contributor

👋 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

@johnmlee101 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

@lanitochka17
Copy link
Author

We think that this bug might be related to #vip-vsp

@johnmlee101
Copy link
Contributor

I don't think this should necessarily be a blocker, but I do think that it should be External since it has to deal with some rendering order most likely.

@johnmlee101
Copy link
Contributor

Thanks for holding to confirm!

@johnmlee101 johnmlee101 added Weekly KSv2 External Added to denote the issue can be worked on by a contributor and removed DeployBlockerCash This issue or pull request should block deployment Hourly KSv2 labels Apr 30, 2024
@melvin-bot melvin-bot bot changed the title Android - Login - While login android app, a blank page slightly opens and closes [$250] Android - Login - While login android app, a blank page slightly opens and closes Apr 30, 2024
Copy link

melvin-bot bot commented Apr 30, 2024

Job added to Upwork: https://www.upwork.com/jobs/~0182c092cd87c0b915

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Apr 30, 2024
Copy link

melvin-bot bot commented Apr 30, 2024

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

@melvin-bot melvin-bot bot added Daily KSv2 Overdue and removed Weekly KSv2 labels Apr 30, 2024
Copy link

melvin-bot bot commented May 3, 2024

@johnmlee101, @rayane-djouah Whoops! This issue is 2 days overdue. Let's get this updated quick!

@rayane-djouah
Copy link
Contributor

@johnmlee101 please add Bug label to assign a BZ member, Thanks!

@melvin-bot melvin-bot bot removed the Overdue label May 3, 2024
@johnmlee101 johnmlee101 added the Bug Something is broken. Auto assigns a BugZero manager. label May 3, 2024
@johnmlee101
Copy link
Contributor

My bad, thanks for catching that!

Copy link

melvin-bot bot commented May 3, 2024

Triggered auto assignment to @lschurr (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.

@melvin-bot melvin-bot bot removed the Overdue label May 10, 2024
@bernhardoj
Copy link
Contributor

Sorry, I missed it.

but when I test removing this part of the code the deep linking still working correctly

May I know the steps you took?

Below is the video without the code:

Screen.Recording.2024-05-11.at.12.56.51.mov

and below is the video with the code:

Screen.Recording.2024-05-11.at.12.58.29.mov

Also, can you identify what PR from #41266 (comment) caused this bug?

Hmm, I think the issue has been there for a long time since the code is old. Usually, QA posts a video comparison on prod, but I don't see it here. So I don't think it's a regression from recent changes. I also already noticed this issue when working on this PR (see the native recordings).

@rayane-djouah
Copy link
Contributor

@bernhardoj

For signing without navigating to an exitTo path:
npx uri-scheme open 'new-expensify://v/14826403/632926' --android

Below is the video with the code:

Screen.Recording.2024-05-11.at.3.15.25.PM.mov

The bug is reproducible in this case, see (a blank page slightly opens and closes):

Screenshot 2024-05-11 at 3 30 20 PM

and below is the video without the code:

Screen.Recording.2024-05-11.at.3.20.28.PM.mov

Removing the code fixed the bug. but I don't understand the role of this code and the root cause of this bug.

@rayane-djouah
Copy link
Contributor

For navigation to an exitTo path after signing (npx uri-scheme open 'new-expensify://v/14826403/665502?exitTo=/settings/preferences' --android) (in this case, there is no blank page slightly opens and closes):

Below is the video with the code:

Screen.Recording.2024-05-11.at.3.18.51.PM.mov

and below is the video with the code:

Screen.Recording.2024-05-11.at.3.23.21.PM.mov

The navigation is done correctly in both cases.

@rayane-djouah
Copy link
Contributor

@bernhardoj, Nevermind, I understand now that this code is handling deep link navigation that was made while logged out.

I inspected the debug console and confirmed that we are navigating again to "v/:accountID/:validateCode" route after the login is successful. the root cause in your proposal makes sense.

For the solution, I don't think we should call Navigation.navigate for "v/:accountID/:validateCode" route because the react navigation handled the navigation to it already, so instead of resolving the promise, can we early return for this route?

I see that in #33225 we introduced shouldSkipDeepLinkNavigation to early return in case of transition route, can we use a similar approach / include more routes in shouldSkipDeepLinkNavigation?

Also, do we need to apply the solution for all public screens or only to VALIDATE_LOGIN? can you explain why?

@bernhardoj
Copy link
Contributor

so instead of resolving the promise, can we early return for this route?

Good idea, it would simplify the code too. I guess it would work fine. We can test it more for all platforms in the PR. I have updated the proposal to include the early return and also mention to apply that public screen check only while logged out, so it's more predictable I guess.

Also, do we need to apply the solution for all public screens or only to VALIDATE_LOGIN? can you explain why?

Yes, I don't think we want to navigate before and after sign-in, right? I don't see a reason to limit it to VALIDATE_LOGIN only.

@rayane-djouah
Copy link
Contributor

@bernhardoj Let's go with the early return solution by including the public screens in shouldSkipDeepLinkNavigation. provided that the navigation to public screens is done before sign-in and we should not navigate to them another time after sign-in.

@bernhardoj's propoal looks good to me.

🎀👀🎀 C+ reviewed

Copy link

melvin-bot bot commented May 13, 2024

Current assignee @johnmlee101 is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new.

@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label May 13, 2024
Copy link

melvin-bot bot commented May 13, 2024

📣 @rayane-djouah 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job

Copy link

melvin-bot bot commented May 13, 2024

📣 @bernhardoj 🎉 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 📖

@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Daily KSv2 labels May 14, 2024
@bernhardoj
Copy link
Contributor

PR is ready

cc: @rayane-djouah

@rayane-djouah
Copy link
Contributor

Heads up, I'll be mostly offline until June 5th, 2024. I can still review this issue, but my response might be slower. If there is something urgent, please reassign it. Thanks!

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Jun 4, 2024
@melvin-bot melvin-bot bot changed the title [$250] Android - Login - While login android app, a blank page slightly opens and closes [HOLD for payment 2024-06-11] [$250] Android - Login - While login android app, a blank page slightly opens and closes Jun 4, 2024
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Jun 4, 2024
Copy link

melvin-bot bot commented Jun 4, 2024

Reviewing label has been removed, please complete the "BugZero Checklist".

Copy link

melvin-bot bot commented Jun 4, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.78-5 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-06-11. 🎊

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

Copy link

melvin-bot bot commented Jun 4, 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:

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

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Jun 10, 2024
@lschurr
Copy link
Contributor

lschurr commented Jun 11, 2024

Payment summary:

Contributor: $250 @bernhardoj (Paid in Upwork)
Contributor+ $250 @rayane-djouah (Paid in Upwork)

@lschurr lschurr closed this as completed Jun 11, 2024
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
Projects
None yet
Development

No branches or pull requests

5 participants