HIGH: [UX Reliability] Incorrect previousReportActionID for a whisper
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Reproducible in staging?: yes Reproducible in production?: yes Issue reported by: @perunt Slack conversation: https://expensify.slack.com/archives/C035J5C9FAP/p1709726899587219?thread_ts=1705035404.136629&cid=C035J5C9FAP
Action Performed:
- Create a workspace with Account A.
- Add Account B to the workspace using Account A.
- Send messages from Account A to Account B in the workspace.
- Check the messages in the workspace with Account A.
- Refresh the page
Expected Result:
All reportActions should form a continuous chain where the previousReportActionID of one points at the reportActionID of the next.
Actual Result:
One of the whispers breaks the chain.
Workaround:
@perunt implemented a front-end workaround, but we should still fix this.
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~01abf9781cd5d16284
- Upwork Job ID: 1765785466235363328
- Last Price Increase: 2024-03-07
Job added to Upwork: https://www.upwork.com/jobs/~01abf9781cd5d16284
Triggered auto assignment to Contributor Plus for review of internal employee PR - @ntdiary (Internal)
Triggered auto assignment to @johncschuster (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.
@roryabraham, coming from this comment:
@perunt implemented a front-end workaround, but we should still fix this.
are you implying this will require a back end fix?
are you implying this will require a back end fix?
yes, correct
Sweet. Thanks for clarifying that!
I chatted with Rory about this, and it looks like this is a part of Comment Linking which is a Q1 deliverable. I'm going to raise this to #engineering to get someone to work on it.
Brought it to Slack yesterday and have bumped it today
@johncschuster, @ntdiary Whoops! This issue is 2 days overdue. Let's get this updated quick!
Bumped it again today
Bumped again!
My thread in #engineering got no traction. I've raised this to #vip-vsb and asked for help there.
Ok! I chatted with @quinthar and confirmed this is a high priority that needs to be delivered in Q1. I've updated the title to reflect the urgency.
@johncschuster, @ntdiary Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!
Raising in #engineering again to get a BE engineer on this.
@johncschuster, @ntdiary Whoops! This issue is 2 days overdue. Let's get this updated quick!
Bumped again!
I'm going to bump this again Monday so I can get more visibility
Bumped again in Slack
@johncschuster, @ntdiary Whoops! This issue is 2 days overdue. Let's get this updated quick!
brought this one up in slack: https://expensify.slack.com/archives/C03TQ48KC/p1713552934772489?thread_ts=1713540323.130089&cid=C03TQ48KC
@johncschuster, @ntdiary 6 days overdue. This is scarier than being forced to listen to Vogon poetry!
Does this issue require c+'s attention now? If so, I can request another c+ to take over it on slack, because my bandwidth is limited. 😄
@ntdiary Thanks for asking! I'm under the impression this requires a backend engineer to work on it.
Is this still reproducible?
I'm also unclear on the problem. It says "One of the whispers breaks the chain." -- what does this mean in terms of user impact?
Great questions! I'm not super familiar with how to validate what the expected behavior or the actual behavior looks like. I've tested a conversation between User A and User B, and the chat seems to be going well.
@perunt, you originally reported this. Are you still able to reproduce the behavior you've reported? If so, can you:
- clarify why it's a problem, and illuminate what kind of impact it might have.
- point me to how you validated the errant behavior and in the console, as well as what the correct behavior should look like in the console?
I'm happy to test this further, but I'm not sure I know what a pass/fail looks like.
Pinged here for clarity and making this a weekly in the meantime.
I think this is probably something we'll want to button up, but I'm not sure off-hand the user impact of the problem - probably just an additional unnecessary network request. Need to dig into this one a bit to uncover more, but need to prioritize May 1st release stuff first. Making this a weekly in the meantime.
I think I may actually have a proposal that will superfluize this issue: https://expensify.slack.com/archives/C05LX9D6E07/p1714672294012849?thread_ts=1714656403.682529&cid=C05LX9D6E07.
going to throw this on HOLD for a bit while that issue simmers. I confirmed that we have a front-end workaround in place for this for the time being.
I'm also unclear on the problem. It says "One of the whispers breaks the chain." -- what does this mean in terms of user impact?
The issue was that when a whisper message indicating that the user was invited to chat got added to the list, the report actions around it didn't recognize its presence. This created a gap in the user's interaction flow, making it seem like the conversation abruptly ended, even though it hadn't.
I've seen we've brought back showing whispers for users. I've tested it a few times, and the new whispers have the right reportActionId and previousReportActionId without causing any issues. But it looks like we'll still need that front-end workaround for older accounts to keep it running smoothly. Just rechecked on the original account and yes, the issue's still there, for obvious reasons.