-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[HOLD for payment 2024-04-05] Android - Chat - When offline, if a user requests money and then deletes the message, the page keeps loading #38844
Comments
👋 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:
|
Triggered auto assignment to @NikkiWines ( |
We think that this bug might be related to #vip-vsb |
When testing on dev, this behavior is reproducible for me on web as well. @kbecciv can you confirm if this is specific to Android or a regression across all platforms? |
I have a suspicion that this is tied to the changes added by #30269. It also seems like similar behavior to another existing blocker #38781. @roryabraham looks like you have context for both the PR and the associated blocker, thoughts? |
Yeah, looks quite possibly like the same root cause. Let's CP and retest. |
ProposalPlease re-state the problem that we are trying to solve in this issue.The other messages disappear and the skeleton shows when deleting a message. What is the root cause of that problem?The other messages disappear because App/src/libs/ReportActionsUtils.ts Lines 307 to 308 in 191d932
When calculating the App/src/libs/ReportActionsUtils.ts Lines 283 to 292 in 191d932
However, a newly optimistic added action doesn't have The initial value of App/src/libs/ReportActionsUtils.ts Line 268 in 191d932
and because we delete the first action, the pending action is updated to delete, so the What changes do you think we should make in order to solve the problem?Based on this comment, the reason we check for pending action add is that the action doesn't have the App/src/libs/ReportActionsUtils.ts Lines 297 to 298 in 191d932
But as mentioned above, when deleting the message, the pending action value is overwritten. The cause of the issue is the same as this one where we rely on the pending action, but it's overwritten. To overcome the issue, we introduce a new property called So, the solution is to App/src/libs/ReportActionsUtils.ts Line 268 in 191d932
index = sortedReportActions.findIndex((obj) => ... || !obj.isOptimisticAction); App/src/libs/ReportActionsUtils.ts Line 301 in 191d932
... ||
sortedReportActions[startIndex - 1]?.isOptimisticAction What alternative solutions did you explore? (Optional)Optimistically set |
The issue still happens, please check my proposal for the solution. |
@bernhardoj I like your alternate solution better - it seems like optimistic actions could be seamlessly integrated into the chain by setting the |
Not sure I'm following the concern here @bernhardoj |
This will be fixed by #38968. I do think including |
So, I'm thinking of 2 cases where the optimistic
EDIT: Btw, do we really to check for the DELETE pending action too? I think the reason we check for ADD pending action is because the action doesn't have EDIT 2: I just remember |
That's actually a very good point |
verified that this is fixed on staging, going to close it out now. |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.57-5 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-04-05. 🎊 |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 1.4.56.0
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4447619
Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
When offline, after requesting money, if a user sends and deletes a message, the deleted message should be struck through, and the rest of the messages on the page should display without any issues.
Actual Result:
When offline, after requesting money, if a user sends and deletes a message, the deleted message is struck through. However, the above messages and the entire page keep loading, displaying a skeleton.
Workaround:
n/a
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6423554_1711133956935.chin.mp4
View all open jobs on GitHub
The text was updated successfully, but these errors were encountered: