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

[Payment Due Sept 30 2024] [$250] Workspace - "Hmm... it's not here" page opens twice for an invalid link with a RHP #47331

Closed
4 of 6 tasks
lanitochka17 opened this issue Aug 13, 2024 · 28 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 External Added to denote the issue can be worked on by a contributor

Comments

@lanitochka17
Copy link

lanitochka17 commented Aug 13, 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: 9.0.19-9
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/4849349&group_by=cases:section_id&group_id=296763&group_order=asc
Issue reported by: Applause - Internal Team

Action Performed:

  1. Open the app
  2. Log in with any account
  3. Open any deep link with the app that should display the "Hmm... it's not here" page and should open a RHP on web (https://staging.new.expensify.com/r/6821704960193694/details
    )
  4. Tap on the "<" button to go back
  5. Tap on the "<" button to go back again

Expected Result:

"Hmm... it's not here" page should only open once

Actual Result:

"Hmm... it's not here" page opens twice for an invalid link with a RHP

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

Bug6570867_1723551281627.LGWI2032.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~0147fe785445dbe8f8
  • Upwork Job ID: 1824283728870406581
  • Last Price Increase: 2024-08-23
@lanitochka17 lanitochka17 added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Aug 13, 2024
Copy link

melvin-bot bot commented Aug 13, 2024

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

@lanitochka17
Copy link
Author

lanitochka17 commented Aug 13, 2024

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

@lanitochka17
Copy link
Author

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

@daledah
Copy link
Contributor

daledah commented Aug 13, 2024

Edited by proposal-police: This proposal was edited at {2023-10-06T12:30:00Z}.

Proposal

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

"Hmm... it's not here" page opens twice for an invalid link with a RHP

What is the root cause of that problem?

On small screen, after going to /r/invalidId/details, we will init 2 pages. The first one is ReportScreen, the second one is details page. 2 of them are not found pages.

When users go back, we will show ReportScreen (Not found)

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

We're using withReportOrNotFound in report details page, report setting name, ...

return <NotFoundPage />;

In these screens, if the previous ReportScreen is not found, we should go to LHN when users press back button

To do that:

  1. We should add new props named isReportRelatedPage to NotFoundPage, then enable it in here

  2. Update onBackButtonPress handler in NotFoundPage


function NotFoundPage({onBackButtonPress=Navigation.goBack, ...fullPageNotFoundViewProps}: NotFoundPageProps) {
    return (
       ...
                onBackButtonPress={()=>{
                    if(!isReportRelatedPage || !isSmallScreen){
                        onBackButtonPress();
                        return;
                    }
                    const topmostReportId = Navigation.getTopmostReportId()
                    const report = getReport(topmostReportId??'')
                    // detect the report is invalid
                    if(topmostReportId && (!report || report.errorFields?.['notFound'])){
                        Navigation.goBack(ROUTES.HOME, true, true)
                        return;
                    }
                    onBackButtonPress()
                }}

What alternative solutions did you explore? (Optional)

NA

@melvin-bot melvin-bot bot added the Overdue label Aug 15, 2024
@kadiealexander kadiealexander added the External Added to denote the issue can be worked on by a contributor label Aug 16, 2024
@melvin-bot melvin-bot bot changed the title Workspace - "Hmm... it's not here" page opens twice for an invalid link with a RHP [$250] Workspace - "Hmm... it's not here" page opens twice for an invalid link with a RHP Aug 16, 2024
Copy link

melvin-bot bot commented Aug 16, 2024

Job added to Upwork: https://www.upwork.com/jobs/~0147fe785445dbe8f8

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

melvin-bot bot commented Aug 16, 2024

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

Copy link

melvin-bot bot commented Aug 19, 2024

@sobitneupane, @kadiealexander Whoops! This issue is 2 days overdue. Let's get this updated quick!

@melvin-bot melvin-bot bot added the Overdue label Aug 19, 2024
@daledah
Copy link
Contributor

daledah commented Aug 20, 2024

@sobitneupane What do you think about my proposal?

@sobitneupane
Copy link
Contributor

sobitneupane commented Aug 20, 2024

@daledah Thanks for the proposal.

Is it possible to not open the deeplink (in this case, details page) if user doesn't have access to the report? In that case we will be just showing the NotFoundPage for the report.

@melvin-bot melvin-bot bot removed the Overdue label Aug 20, 2024
@daledah
Copy link
Contributor

daledah commented Aug 21, 2024

@sobitneupane I don't think it's the expectation. If users open the details page by deeplink, they want to see the details page url. If we show the report url, it can cause the confusion.

@sobitneupane
Copy link
Contributor

Thanks for the update @daledah

Yup. It makes sense to open the deeplink especially in browsers. What will be the impact of your proposal in large screen devices which opens the details page in RHP? I don't think we should change the report (even if Not Found) when user presses back button in RHP.

Copy link

melvin-bot bot commented Aug 23, 2024

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

@melvin-bot melvin-bot bot added the Overdue label Aug 26, 2024
@daledah
Copy link
Contributor

daledah commented Aug 26, 2024

@sobitneupane Thanks for your suggestion, I updated the proposal to handle onBackButtonPress on large screen, we should close the RHP only.

@sobitneupane
Copy link
Contributor

Thanks for the update @daledah

Proposal from @daledah looks good to me.

🎀 👀 🎀 C+ reviewed

Copy link

melvin-bot bot commented Aug 26, 2024

Triggered auto assignment to @Beamanator, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@Beamanator Beamanator added the Awaiting Payment Auto-added when associated PR is deployed to production label Oct 21, 2024
@Beamanator Beamanator changed the title [$250] Workspace - "Hmm... it's not here" page opens twice for an invalid link with a RHP [Payment Due Sept 30 2024] [$250] Workspace - "Hmm... it's not here" page opens twice for an invalid link with a RHP Oct 21, 2024
@kadiealexander
Copy link
Contributor

kadiealexander commented Oct 24, 2024

Payouts due:

Upwork job is here.

@kadiealexander kadiealexander added Daily KSv2 and removed Weekly KSv2 labels Oct 24, 2024
@kadiealexander
Copy link
Contributor

I'm going OOO so I'm adding someone to help with payment once the offer has been accepted.

@kadiealexander kadiealexander removed their assignment Oct 25, 2024
@kadiealexander kadiealexander added Bug Something is broken. Auto assigns a BugZero manager. and removed Bug Something is broken. Auto assigns a BugZero manager. labels Oct 25, 2024
Copy link

melvin-bot bot commented Oct 25, 2024

Triggered auto assignment to @trjExpensify (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 added Daily KSv2 Overdue and removed Daily KSv2 labels Oct 27, 2024
@trjExpensify
Copy link
Contributor

Payment due in a couple of days. Can we get a checklist for this? Thanks!

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Oct 28, 2024
Copy link

melvin-bot bot commented Oct 31, 2024

@Beamanator, @trjExpensify, @sobitneupane, @daledah Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@trjExpensify
Copy link
Contributor

Still awaiting the checklist!

@melvin-bot melvin-bot bot removed the Overdue label Nov 1, 2024
@Beamanator
Copy link
Contributor

Bump @sobitneupane

@melvin-bot melvin-bot bot added the Overdue label Nov 4, 2024
@sobitneupane
Copy link
Contributor

sobitneupane commented Nov 5, 2024

Regression Test Proposal

  1. Login
  2. Open deep link of details page of a report without access and verify that "Hmm... it's not here" page is displayed.
  3. Tap on the back button
  4. Verify that: On big screen, the modal showing Not here page closes and On small screen, the user is redirected to the home page.

Do we agree 👍 or 👎

@melvin-bot melvin-bot bot removed the Overdue label Nov 5, 2024
@sobitneupane
Copy link
Contributor

The issue arises from an inconsistency between the big screen and small screen displays. On small screens, when we close the first 'Not here' page, another 'Not here' page opens. The first 'Not here' page is for Details, and the second one is for the Report. However, on big screens, the first 'Not here' page appears in the RHP, clearly indicating that it’s for the Details page.

@melvin-bot melvin-bot bot added the Overdue label Nov 11, 2024
@trjExpensify
Copy link
Contributor

Cool, thanks. Go ahead and request on NewDot, based on this payment summary. @daledah I've paid you in Upwork.

This issue was created from this regression test failing. I've created an issue for Applause to discuss a suggested edit. Closing!

@garrettmknight
Copy link
Contributor

$250 approved for @sobitneupane

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 External Added to denote the issue can be worked on by a contributor
Projects
No open projects
Status: Polish
Development

No branches or pull requests

7 participants