App: [HOLD for payment 2024-03-07] [$500] Wrong header is shown for 2nd and 3rd level of child threads

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.43-13 Reproducible in staging?: y Reproducible in production?: y 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 Expensify/Expensify Issue URL: Issue reported by: @puneetlath Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1708622339587649

Action Performed:

  1. Post a message 1 in a room as account A
  2. Create a thread message (messsage 2) for message 1
  3. Create another 2nd level thread message from message 2
  4. Go to thread of message2
  5. Look at the header

Expected Result:

Header should show only the thread which is 1 level up

Actual Result:

Shows “room name” and clicking on that takes to 1 level up

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

https://github.com/Expensify/App/assets/38435837/39cfd82c-6f6e-4389-a70e-553ddcb3f3c7

image (2)

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01d99f7344fe2e0a2c
  • Upwork Job ID: 1760784445477494784
  • Last Price Increase: 2024-02-22
  • Automatic offers:
    • paultsimura | Reviewer | 0
    • barros001 | Contributor | 0

About this issue

  • Original URL
  • State: closed
  • Created 4 months ago
  • Comments: 27 (18 by maintainers)

Most upvoted comments

Paid everyone out and created the regression test GH issue. Thanks everyone!

  • The PR that introduced the bug has been identified. Link to the PR: https://github.com/Expensify/App/pull/21092
  • 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: This is rather a new feature request, so the original PR is not offending.
  • 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: N/A
  • Determine if we should create a regression test for this bug: Yes
  • 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.

Regression Test Proposal

  1. Post “Message 1” in a room
  2. Click “Reply in thread” on “Message 1”
  3. Post “Message 2” in this thread
  4. Click “Reply in thread” on “Message 2”
  5. Verify that the report title shows “Message 2” and the subtitle shows “Message 1” as the parent navigation it.

Do we agree 👍 or 👎

@paultsimura thank you. I will make it better in the next issue 😃

I’m ware of the speed run proposals issue we’re dealing with and I assure you that wasn’t my idea here.

I understand that, no worries. That was just some advice 👍

Eventually, I think we can get rid of the getRootReportAndWorkspaceName function completely and calculate the ParentNavigationSummaryParams solely in the getParentNavigationSubtitle function.

Since @barros001 was the first to give the correct RCA and the correct fix (removing the recursion) – we can proceed with his proposal. 🎀👀🎀 C+ reviewed

@barros001 just a friendly note for you: I see your proposal was modified a ton of times. Since all the edits were made before other proposals were posted, it’s OK, but in such a case, I would recommend just copying your final proposal, posting it again, and removing the edited one. This way, you’re not losing the priority since there are no other proposals yet, but it looks much cleaner.

Not overdue. Waiting for a decision from @puneetlath and @chiragsalian. Also asked in Slack.