Skip to content

Expense - "Chat report" opens report with infinite loading when report is shared #104269

Open

Description

@applause-bot

If you haven’t already, check out our contributing guidelines for onboarding. To join our Slack channel, fill out this form.


Version Number: 9.5.13-0
Reproducible in staging?: Yes
Reproducible in production?: N/A - new feature, doesn't exist in prod
If this was caught during regression testing, add the test name, ID and link from BrowserStack: #103141
Email or phone of affected tester (no customers): [email protected]
Issue reported by: Applause Internal Team
Bug source: Exploratory - Significant User Experience Deterioration
Device used: Mac 26.5 / Chrome
App Component: Money Requests

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to workspace chat.
  3. Create an expense.
  4. Open the report.
  5. Click Submit.
  6. Click More > Share > Share report.
  7. Enter User B email and share it to User B.
  8. As User B, open search router.
  9. Open "Chat report".

Expected Result:

Chat report will open the shared report or it should not appear in search router at all.

Actual Result:

Chat report opens report with infinite loading after being shared report.

Workaround:

Unknown

Platforms:

  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome Safari

Screenshots/Videos

To be added by Applause Leads

Bug7288152_1792158540271.6.mp4

View all open jobs on GitHub

Applause Internal Information
Exported by: Chandana Kiran
Bug ID: 7288152

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    BugSomething is broken. Auto assigns a BugZero manager.
    on Oct 16, 2026
  2. applause-bot commented on Oct 16, 2026

    @applause-bot
    Author

    While Applause doesn't embed attachments for this bug, here are the links for quick view:
    https://platform.applause.com/services/links/v1/external/6689861d3d7183827f45128cc7008dac261987ac8b19bdc41b0d584375fce827

  3. melvin-bot commented on Oct 16, 2026

    @melvin-bot

    @mollfpr recently merged #103141, but they are OOO right now, so I'll auto-assign someone else.

  4. melvin-bot commented on Oct 16, 2026

    @melvin-bot

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

  5. github-actions commented on Oct 16, 2026

    @github-actions
    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.
  6. melvin-bot commented on Oct 16, 2026

    @melvin-bot

    @mollfpr @abzokhattab you have been assigned to this deploy blocker because you reviewed the offending PR: #103141

  7. melvin-bot commented on Oct 16, 2026

    @melvin-bot

    @allgandalf you have been assigned to this deploy blocker because you authored the offending PR: #103141

  8. melvin-bot commented on Oct 16, 2026

    @melvin-bot

    💬 A slack conversation has been started in #expensify-open-source

  9. MelvinBot commented on Oct 16, 2026

    @MelvinBot
    Contributor

    Deploy Blocker Analysis

    Causing PR: [Payment due @abzokhattab] Add Share to the report More menu. It merged 2026-10-16 and shipped in 9.5.13-0 with no beta gate. Confidence: high.

    Recommendation: revert. This is a new feature that isn't in production. The revert should apply cleanly. A fix-forward needs changes on both the server and the App.

    Why it happens: After a share, User B gets a report with only basic fields and the server's default name, "Chat Report." The not-found guard treats any report with a reportID as existing, so it never shows not-found. Opening the report doesn't load the data the screen needs, so it stays on the skeleton.

    Investigation details

    Why this PR and not another one

    #103141 is the only PR on the Deploy Checklist: New Expensify 2026-10-16 that adds or touches report sharing. The bug only appears after "Share report," which this PR adds:

    Why it loads forever

    1. The search router lists any accessible report that has a reportID, type and reportName: ReportUtils.ts:11114-11143. When nothing better is available, the name falls back to report.reportName: ReportNameUtils.ts:1406-1408. "Chat Report" is the server's default chat name.
    2. ReportNotFoundGuard sets reportExists = !!reportID, so a partial report never reaches the not-found page: ReportNotFoundGuard.tsx:57-78

    Not confirmed: Whether the partial entry is the shared expense report or its parent workspace chat. That depends on what the server returns. It decides where a fix-forward belongs, but it doesn't change the revert recommendation.

    Other PRs checked: perf: scope reports parent hierarchy in useReportsParentHierarchy touches the report screen. It can't create a new "Chat report" entry for User B.

    Revert conflicts: Two later staging PRs touch the same files, in separate code. Neither should conflict: Prevent removing the IOU sender and receiver from an expense thread and Add payment details billed to and billing receipt.


    Next Steps: Reply with @MelvinBot <your feedback> to refine this analysis.


    view run

  10. abzokhattab commented on Oct 17, 2026

    @abzokhattab
    Contributor

    I think its the same root cause as this issue flagged in the PR #103141 (comment)

    also i am not able to reproduce .. the report doesnt show up in the search:

    Screen.Recording.2026-10-17.at.02.36.08.mov

    anyways i think this is a backend issue.

    @allgandalf let me know what you think about this

  11. allgandalf commented on Oct 17, 2026

    @allgandalf
    Contributor

    not from this PR, Classic shares on production do the same. the recipient can't open the workspace chat the report came from and the page keeps loading instead of showing not found. fix: #104291

  12. mollfpr commented on Oct 19, 2026

    @mollfpr
    Contributor

    Agree with @allgandalf. Demoting from deploy blocker.

  13. added and removed
    DeployBlockerCashThis issue or pull request should block deployment
    on Oct 19, 2026
  14. removed their assignment
    on Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

BugSomething is broken. Auto assigns a BugZero manager.DailyKSv2EngineeringReviewingHas a PR in review

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions