App: [$500] [MEDIUM] LHN - Green dot(IOU) disappears from WS conversation in LHN when going offline-online
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.16-3 Reproducible in staging?: Y Reproducible in production?: N 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: Applause-Internal Team Slack conversation: @
Action Performed:
⚠️ To reproduce you need an account that has the beta: excludedFromReliableUpdates.
- Open New Expensify app
- Log in with any account
- Create new workspace
- Request money on that workspace
- Go to offline mode and after a few seconds return to online mode
Expected Result:
The IOU green dot must be present in the LHN in any mode of operation until the IOU request is paid or an IOU error occurs.
Actual Result:
The green dot IOU disappears from the LHN if the user goes offline and comes back online.
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
https://github.com/Expensify/App/assets/115492554/de7c4828-3504-493c-8238-2a0a8fa1674b
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~019c2e500b47b7def2
- Upwork Job ID: 1738525487918645248
- Last Price Increase: 2024-01-31
About this issue
- Original URL
- State: closed
- Created 6 months ago
- Comments: 52 (37 by maintainers)
First of all, this is not a deploy blocker – it’s happening in prod as well:
We’re potentially facing the out-of-order Onyx updates again: When coming back online, 2 conflicting responses set
report.hasOutstandingChildRequest:First comes the
ReconnectAppthat sets it tofalsevia themergeCollectionaction:Second comes the
ReconnectToReport, which should set the value totrue, but this value is ignored. I suppose it gets overwritten by themergeCollectionfrom above similar to what was happening in https://github.com/Expensify/App/issues/28737This particular issue can be fixed by making sure the
ReconnectAppreturnsreport.hasOutstandingChildRequest: true(which is correct), but the Onyx issue should be addressed as well.cc: @Julesssss for the out-of-order updates
I have a fix here https://github.com/Expensify/Auth/pull/9929, I just need to add the tests and I’ll make it ready for review
Issue is still reproducible on the latest build 1.4.40-1
https://github.com/Expensify/App/assets/78819774/d1c7e690-8ed8-49fe-9949-b2df486282e4
Considering @paultsimura 's investigation here, I think it may be good to hold on https://github.com/Expensify/App/issues/32583 and check if https://github.com/Expensify/App/pull/32776 fixes this. That PR may help with avoiding fetching outdated Onyx updates.
@Christinadobrzyn not as far as I know, the backend PR wasn’t reviewed by C+
Reproduced in dev, the key is that the account has to have the beta
excludedFromReliableUpdates. Accounts underexpensifail.com,applause.expensifail.comand some big domains have this, so I guess that explain why @BartoszGrajdek can’t reproduce.oh, nice! thanks for taking a look @BartoszGrajdek
Hi! I’m Bartosz from Software Mansion, I was working on this issue yesterday (I wanted to run a few more tests today) and I think that it may have been fixed with navigation rework. Following these steps here’s the result:
https://github.com/Expensify/App/assets/41169160/77ceee9a-cceb-44bc-be9f-88df8ccdc354
@alitoshmatov @Christinadobrzyn I can no longer reproduce this on main. Could you please re-test?