Skip to content
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

[$1000] Web - Money Request IOU doesn't doesn't appear as latest reportAction #22884

Closed
1 of 6 tasks
kbecciv opened this issue Jul 14, 2023 · 53 comments
Closed
1 of 6 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review Weekly KSv2

Comments

@kbecciv
Copy link

kbecciv commented Jul 14, 2023

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


Action Performed:

  1. Create a new chat.
  2. Request money once.
  3. Send some message.
  4. Request money again.

Expected Result:

When requesting money, the IOU should be shown at the last, after all messages.

Actual Result:

IOU isn't the last message.

Workaround:

Unknown

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

Version Number: 1.3.40.4
Reproducible in staging?: y
Reproducible in production?: y
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
Notes/Photos/Videos: Any additional supporting documentation

Screen.Recording.2023-07-13.at.6.01.20.PM.mov
Recording.3584.mp4

Expensify/Expensify Issue URL:
Issue reported by: @esh-g
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1689165314598769

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01382dceefde674ee1
  • Upwork Job ID: 1681366780094275584
  • Last Price Increase: 2023-08-08
  • Automatic offers:
    • ShogunFire | Contributor | 26036615
    • esh-g | Reporter | 26036617
@kbecciv kbecciv added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Jul 14, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 14, 2023

Triggered auto assignment to @sakluger (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

@melvin-bot
Copy link

melvin-bot bot commented Jul 14, 2023

Bug0 Triage Checklist (Main S/O)

  • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
  • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
    • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
  • This bug is reproducible using the reproduction steps in the OP. S/O
    • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
    • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
  • This issue is filled out as thoroughly and clearly as possible
    • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
  • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@Victor-Nyagudi
Copy link
Contributor

I've noticed that if you try requesting money in a new chat where the other person hasn't chatted before, you get a red brick road indicator, so an error occurred. This is also evident in the video above.

In addition, if you click the report discussing this money request (the one with the red brick road indicator), you get a message stating it's not there.

expensify-request-money-new-chat-pt1.mov

However, if the person you're chatting with has sent a message prior, it works fine.

expensify-request-money-new-chat-pt-2.mov

Is it intended you can't request money from someone who hasn't chatted with you before? I see how this could be since the person you're chatting with may not exist/no longer exist.

Either way, I think it would be best to determine what the bug is before moving forward. Is it:

  • Not being able to request money in a new chat where the other person hasn't chatted before?
  • IOU report doesn't appear as latest reportAction?

I can create a bug report in Slack if the first option has a different root cause, and that can be worked on separately.

@Victor-Nyagudi
Copy link
Contributor

If the issue ends up being the IOU report not appearing as the latest reportAction, then I think it could be linked to another money request issue where the message in the LHN displays the other user's email instead of their display name after deleting the message directly after the money request.

@multijump
Copy link
Contributor

I couldn't reproduce this issue in v1.3.41-0

@melvin-bot melvin-bot bot added the Overdue label Jul 17, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 17, 2023

@sakluger Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@sakluger sakluger added the External Added to denote the issue can be worked on by a contributor label Jul 18, 2023
@melvin-bot melvin-bot bot changed the title Web - Money Request IOU doesn't doesn't appear as latest reportAction [$1000] Web - Money Request IOU doesn't doesn't appear as latest reportAction Jul 18, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 18, 2023

Job added to Upwork: https://www.upwork.com/jobs/~01382dceefde674ee1

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jul 18, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 18, 2023

Current assignee @sakluger is eligible for the External assigner, not assigning anyone new.

@melvin-bot
Copy link

melvin-bot bot commented Jul 18, 2023

Triggered auto assignment to Contributor-plus team member for initial proposal review - @thesahindia (External)

@sakluger
Copy link
Contributor

This seems like a unique bug, adding external label.

@melvin-bot melvin-bot bot removed the Overdue label Jul 18, 2023
@ShogunFire
Copy link
Contributor

I have another bug when I follow the steps:
https://expensify.slack.com/archives/C049HHMV9SM/p1689771818966349

@Talha345
Copy link
Contributor

e another bug when I follow t

@ShogunFire We already have a issue for that:
#23038

Please mark your bug report as dupe.

@ShogunFire
Copy link
Contributor

Thanks @Talha345 I should verify better before reporting bugs

@Talha345
Copy link
Contributor

Unable to reproduce on STG.

@ShogunFire
Copy link
Contributor

I was able to reproduce on staging, it doesn't happen all the time and the user we chat too must not have an account from what I tested. I receive an error from the backend during the money request api call:
image

@ShogunFire
Copy link
Contributor

Sometimes we also see two previews which I think is a bug
image

@Talha345
Copy link
Contributor

I was able to reproduce on staging, it doesn't happen all the time and the user we chat too must not have an account from what I tested. I receive an error from the backend during the money request api call: image

I was also able to sometimes replicate with a user without an account on STG.This is also related to #23038 which happens always.

@ShogunFire
Copy link
Contributor

ShogunFire commented Jul 19, 2023

I made a proposal that fixes both bugs here

@melvin-bot melvin-bot bot added the Overdue label Jul 20, 2023
@sakluger
Copy link
Contributor

@ShogunFire just go confirm, are you saying that this bug only happens when you request money from someone who does not have an Expensify account? And you think that this bug has the same root cause as #23038?

@melvin-bot melvin-bot bot removed the Overdue label Jul 21, 2023
@ShogunFire
Copy link
Contributor

It happens because in getOptions here:

const personalDetailsExtended = {
...personalDetails,
[optimisticAccountID]: {
accountID: optimisticAccountID,
login: searchValue,
avatar: UserUtils.getDefaultAvatar(optimisticAccountID),
},
};
userToInvite = createOption([optimisticAccountID], personalDetailsExtended, null, reportActions, {
showChatPreviewLine,
});

If there is no options in our known personal details but the search value is a valid email or phone number we create and return an option userToInvite.

This option will then be added to the list that the user can choose from, for example here:

if (filteredUserToInvite) {
sectionsList.push({
title: undefined,
data: [filteredUserToInvite],
shouldShow: true,
indexOffset,
});
}

@melvin-bot melvin-bot bot added the Overdue label Aug 9, 2023
@jasperhuangg
Copy link
Contributor

@ShogunFire got it, thanks for clarifying! If that's the case then your proposal sounds good to me. Assigning you

@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Aug 9, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 9, 2023

📣 @thesahindia Please request via NewDot manual requests for the Reviewer role ($1000)

@jasperhuangg jasperhuangg self-assigned this Aug 9, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 9, 2023

📣 @ShogunFire 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job
Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑‍💻
Keep in mind: Code of Conduct | Contributing 📖

@melvin-bot
Copy link

melvin-bot bot commented Aug 9, 2023

📣 @esh-g 🎉 An offer has been automatically sent to your Upwork account for the Reporter role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job

@jasperhuangg
Copy link
Contributor

Not overdue

@melvin-bot melvin-bot bot removed the Overdue label Aug 9, 2023
@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Daily KSv2 labels Aug 10, 2023
@ShogunFire
Copy link
Contributor

ShogunFire commented Aug 10, 2023

Thanks @jasperhuangg I am almost done with the PR, is the C+ going to review it ? It's working but I am doubting if there is a cleaner way to do it.

@jasperhuangg
Copy link
Contributor

Yes, the @thesahindia should be able to help you review it.

@ShogunFire
Copy link
Contributor

PR ready for review

@ShogunFire
Copy link
Contributor

@jasperhuangg It doesn't look like @thesahindia is present for the review

@jasperhuangg
Copy link
Contributor

Unassigning @thesahindia since they weren't able to review any proposals here and haven't been able to review the PR.

@parasharrajat
Copy link
Member

Taken over as C+. Reviewing the PR.

@sakluger
Copy link
Contributor

@mountiny I looked through the PR and it looks like we may be going a different direction (although if seems that @ShogunFire has one more idea). If we do go a different direction, would we close out this GH issue or just restart the process of accepting proposals?

@mountiny
Copy link
Contributor

mountiny commented Aug 24, 2023

Yeah the problem with these flows is that using email in combination with the secure logins is very hard and there is many workarounds.

So the better solution is to update the flows to accept accountIDs but that also means more backend work. Aldo already has that on his plate but currently its deprioritized to focus on the recent waves.

I think it might be better to close/ hold this for the solution with accountIDs as thats the real solution

This is the issue btw #22480

@parasharrajat
Copy link
Member

I have been following the discussion on the PR and it seems that we don't have a proper solution. So I agree with Mountiny to hold this issue until a plan is prepared.

@mountiny
Copy link
Contributor

I have not been following this issue that much but isn't the problem here the created timestamp update for the report preview action? Do we correctly update it when optimistic actions take place?

Ot is the issue body outdated

@luacmartins
Copy link
Contributor

I'm not able to reproduce this issue following the steps in the OP, am I missing something?

@luacmartins
Copy link
Contributor

Chatted 1:1 with @jasperhuangg and we decided to close this issue since it's no longer reproducible with the instructions in the OP. Please report a new bug if anything comes up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review Weekly KSv2
Projects
None yet
Development

No branches or pull requests