App: Missing reportActions! 😱

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


HOLD on https://github.com/Expensify/App/pull/13118

Action Performed:

  1. On dev, do yourself a favor and change the pagination size from 50 to 5 here. The bug is still valid with a larger page size, just easier to reproduce with a smaller one.

    + $indexedHistory = ReportAPI::getIndexedHistory($authToken, $reportID, -1, '', 5, Report::ACTION_ORDER_DESC, $shouldKeyReportActionsByID);
    - $indexedHistory = ReportAPI::getIndexedHistory($authToken, $reportID, -1, '', Report::ACTIONS_PAGINATION_LIMIT, Report::ACTION_ORDER_DESC, $shouldKeyReportActionsByID);
    
  2. Sign in on two separate accounts, A and B.

  3. On account A, send 5 messages to account B: 1, 2, 3, 4, 5

    Screenshot 2023-01-19 at 2 38 48 PM
  4. As user A, go offline but keep the app open.

  5. As user B, send 15 responses – 6 through 20

    Screenshot 2023-01-19 at 2 39 48 PM
  6. As user A, come back online.

Expected Result:

  • User A should see chats 1-20, without any missing, OR a more robust solution that depends on bidirectional pagination would be to:
  • We display a skeleton UI between chats 6 and 16 to signify a gap where reportActions are missing. In production w/ our page size of 50, you probably would never see both sides of the ā€œgapā€ on the screen at the same time. Scrolling into the the gap from above or below should trigger an API request to fill in the missing reportActions (or at least, one page of missing reportActions).

Actual Result:

User A is missing chats 6-15:

Screenshot 2023-01-19 at 2 40 07 PM

Workaround:

None. Once you are in this state there’s not really any way to get the missing chats.

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

Issue reported by: @roryabraham Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1674106258093279?thread_ts=1674077185.040839&cid=C01GTK53T8Q

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~013217438ced0fdf01
  • Upwork Job ID: 1616207735730991104
  • Last Price Increase: 2023-01-19

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 19 (15 by maintainers)

Most upvoted comments

It will be addressed with the bidirectional scroll feature, so it makes sense to put it on hold until that feature is implemented

I feel like we should put this on HOLD for comment linking, because the plan in that doc might actually fix this.