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

[$1000] Chat - Page not found for valid chat with access if clicking deeplink after invalid chat #20722

Closed
2 of 6 tasks
kbecciv opened this issue Jun 13, 2023 · 15 comments
Closed
2 of 6 tasks
Assignees
Labels
Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors

Comments

@kbecciv
Copy link

kbecciv commented Jun 13, 2023

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Issue found when executing PR #20407

Action Performed:

  1. Login to NewDot Android native
  2. From another app tap any invalid (or no access ) chat deeplink
  3. Page not found is displayed. Do not click Back button.
  4. From another app tap a valid with access chat deeplink

Expected Result:

Chat should be displayed

Actual Result:

Page not found is still displayed

Workaround:

Unknown

Platforms:

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

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.3.27.2

Reproducible in staging?: Yes

Reproducible in production?: No

If this was caught during regression testing, add the test name, ID and link from TestRail:

Email or phone of affected tester (no customers):

Logs: https://stackoverflow.com/c/expensify/questions/4856

Notes/Photos/Videos: Any additional supporting documentation

Bug6091758_video_10__3_.mp4

Expensify/Expensify Issue URL:

Issue reported by: Applause - Internal Team

Slack conversation:

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01e33b2003048b6946
  • Upwork Job ID: 1673854548230725632
  • Last Price Increase: 2023-06-28
@kbecciv kbecciv added the DeployBlockerCash This issue or pull request should block deployment label Jun 13, 2023
@OSBotify
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.

@melvin-bot
Copy link

melvin-bot bot commented Jun 13, 2023

Triggered auto assignment to @deetergp (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

@deetergp deetergp removed the DeployBlockerCash This issue or pull request should block deployment label Jun 13, 2023
@deetergp
Copy link
Contributor

This is an edge case similar to #19496 and should be fixed and might be related, but isn't a big enough deal that I would consider it a deploy blocker.

@kbecciv kbecciv changed the title Android - Page not found for valid chat with access if clicking deeplink after invalid chat Chat - Page not found for valid chat with access if clicking deeplink after invalid chat Jun 13, 2023
@kbecciv
Copy link
Author

kbecciv commented Jun 13, 2023

I updated environments, reproduced in Android and iOS native. Deep links work correctly if app is in LHN

@deetergp deetergp added Weekly KSv2 and removed Hourly KSv2 labels Jun 14, 2023
@melvin-bot melvin-bot bot added the Overdue label Jun 22, 2023
@deetergp
Copy link
Contributor

I'm pretty sure this can be dealt with by a contributor. Marking it external.

@melvin-bot melvin-bot bot removed the Overdue label Jun 28, 2023
@deetergp deetergp added the External Added to denote the issue can be worked on by a contributor label Jun 28, 2023
@melvin-bot melvin-bot bot changed the title Chat - Page not found for valid chat with access if clicking deeplink after invalid chat [$1000] Chat - Page not found for valid chat with access if clicking deeplink after invalid chat Jun 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 28, 2023

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

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 28, 2023

Triggered auto assignment to @NicMendonca (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Jun 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 28, 2023

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

@koko57
Copy link
Contributor

koko57 commented Jun 28, 2023

Hi! I'm Agata from Callstack, expert agency, maybe I can help with this issue?

@hungvu193
Copy link
Contributor

hungvu193 commented Jun 28, 2023

Is this issue still opening for proposals?

@hungvu193
Copy link
Contributor

Proposal

I'll still post a proposal here, hope it helps fix this issue.

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

Chat - Page not found for valid chat with access if clicking deeplink after invalid chat

What is the root cause of that problem?

We're listening for the deeplink to open report here:

Linking.addEventListener('url', (state) => Report.openReportFromDeepLink(state.url, isAuthenticated));

And we're using navigate for this action so if we are already in a report, when you opened another report, it won't get any updates because the ReportScreen is already visible. You can try to open any report screen, it don't need to be NotFoundPage after that open another valid report from deeplink, you will see it will stay at the first ReportScreen that you opened.
Navigation.navigate(ROUTES.getReportRoute(reportID));

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

Instead of navigating to current deeplink route, we can replace current route with your deeplink route. So we will need to update our function to:

            if (reportID) {
                Navigation.navigate(ROUTES.getReportRoute(reportID), 'UP');
            }

This will make your ReportScreen always update when it's opened from deeplink. (We can also consider update the same way for Concierge report).

What alternative solutions did you explore? (Optional)

N/A

Result:

Screen.Recording.2023-06-28.at.22.34.09.mov

@melvin-bot
Copy link

melvin-bot bot commented Jun 28, 2023

Looks like something related to react-navigation may have been mentioned in this issue discussion.

As a reminder, please make sure that all proposals are not workarounds and that any and all attempt to fix the issue holistically have been made before proceeding with a solution. Proposals to change our DeprecatedCustomActions.js files should not be accepted.

Feel free to drop a note in #expensify-open-source with any questions.

@melvin-bot melvin-bot bot added the Overdue label Jun 30, 2023
@NicMendonca
Copy link
Contributor

@hungvu193 yes! Still open for proposals!

@Santhosh-Sellavel can you review please? #20722 (comment)

Hi @koko57 👋 I'll let @Santhosh-Sellavel decide if we need any extra help here. Ty!

@bernhardoj
Copy link
Contributor

Just found out about this issue and I believe it's a dupe of #20624.

@hungvu193 passing 'UP' will replace the screen.

There is no accepted proposal in #20624 yet.

@Santhosh-Sellavel
Copy link
Collaborator

Yes, this seems to duplicate, @hungvu193 Please move your proposal there too. As it sounds like a good option!

@NicMendonca We can close this as it is a duplicate of #20624.

@deetergp deetergp closed this as completed Jul 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors
Projects
None yet
Development

No branches or pull requests

8 participants