Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.36k stars 2.78k forks source link

[HOLD for payment 2023-06-29] Selecting/removing one user selects/removes all the user on split bill group page #21075

Closed kbecciv closed 1 year ago

kbecciv commented 1 year ago

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


Action Performed:

  1. Go to staging dot on web chrome
  2. Create a new group with multiple new users that you have not chatted before
  3. Click on + in the group and select split bill
  4. Enter amount and click on save/continue
  5. On the split money page, notice there are multiple users in green checkmark selected.
  6. Select the first user and notice all the other users are removed
  7. Again, select any user and notice all the users are selected

Expected Result:

Selecting/removing one user should not selects/remove all the user on split bill group page

Actual Result:

Selecting/removing one user selects/removes all the user on split bill group page

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

Version Number: 1.3.29-0

Reproducible in staging?: yes

Reproducible in production?: no

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

https://github.com/Expensify/App/assets/93399543/f94f1ad4-5253-40bb-bd4b-e88d6a95590b

https://github.com/Expensify/App/assets/93399543/fba375a5-8caf-4087-82c1-3901d4b8de87

Expensify/Expensify Issue URL:

Issue reported by: @priya-zha

Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686991867243109

View all open jobs on GitHub

OSBotify commented 1 year ago

:wave: 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:

  1. Identify the pull request that introduced this issue and revert it.
  2. Find someone who can quickly fix the issue.
  3. Fix the issue yourself.
melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @aldo-expensify (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

aldo-expensify commented 1 year ago

Reproduced:

image
aldo-expensify commented 1 year ago

The selectedParticipants here:

https://github.com/Expensify/App/blob/a1611f9ec8f070faaf705ccc1579e2499f3beabc/src/components/MoneyRequestConfirmationList.js#L153

are missing the login:

image

@Beamanator do you know if that is expected? I see that the text contains the email. These accounts did not exist when I created the group with them.

aldo-expensify commented 1 year ago

it seems like in Onyx personalDetails we have two entries for the accounts created with the group, for example:

image

The account appears under a real ID (11033541), missing the login key, and under a front end generated ID (4331464817836459) which does have the login information.

Debugging, I see that the participant is passed around with the real ID 11033541, so when we look in personalDetails for the login information, it is just not there.

melvin-bot[bot] commented 1 year ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

Beamanator commented 1 year ago

When I created a group w/ a user that didn't exist yet, I saw __fake__ in the LHN (mentioned in linked issue ^). I also noticed I see this in Onyx:

Screenshot 2023-06-20 at 2 43 03 PM
Beamanator commented 1 year ago

And this too, due to optimistic accountIDs:

Screenshot 2023-06-20 at 2 44 42 PM
Beamanator commented 1 year ago

Which also leads to Hidden showing in the report participants page (I know this has been reported elsewhere, i just want to add for complete investigation):

Screenshot 2023-06-20 at 2 45 22 PM
Beamanator commented 1 year ago

On the "Split Bill" -> Confirm page (in main), I also saw:

Beamanator commented 1 year ago

PR up for this: https://github.com/Expensify/App/pull/21113

Beamanator commented 1 year ago

Assigning @s77rt since they're reviewing the PR 👍 🙏

luacmartins commented 1 year ago

Removing the blocker label since we merged the PR and are CPing it.

melvin-bot[bot] commented 1 year ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

melvin-bot[bot] commented 1 year ago

Reviewing label has been removed, please complete the "BugZero Checklist".

melvin-bot[bot] commented 1 year ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.3.29-11 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2023-06-28. :confetti_ball:

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

melvin-bot[bot] commented 1 year ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.3.30-5 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2023-06-29. :confetti_ball:

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

melvin-bot[bot] commented 1 year ago

@Beamanator, @s77rt, @aldo-expensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

melvin-bot[bot] commented 1 year ago

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

melvin-bot[bot] commented 1 year ago

Bug0 Triage Checklist (Main S/O)

aldo-expensify commented 1 year ago

@zanyrenney I think this just needs payment handling.

@s77rt reviewed the PR https://github.com/Expensify/App/pull/21113 which was fixing this deploy blocker

aldo-expensify commented 1 year ago

I'll be out of office next week, I don't think you need any action from me 👋

zanyrenney commented 1 year ago

Going to chat to @Beamanator to understand the latest here!

zanyrenney commented 1 year ago

Hi there! After discussing internally, seeing as technically @s77rt & @narefyev91 both helped test & review that PR and you are both C+ we will be splitting the payment so it does not warrant the full $1000 each. it should be $500 each.

zanyrenney commented 1 year ago

Payment on upwork sent for reporting bonus and C+ work from @s77rt . Closing this one out!