-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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 2023-09-29] [$500] Workspace details don't show up in participants selector #27510
Comments
Triggered auto assignment to @sophiepintoraetz ( |
Bug0 Triage Checklist (Main S/O)
|
Job added to Upwork: https://www.upwork.com/jobs/~018607cb9d54e7235a |
Current assignee @sophiepintoraetz is eligible for the External assigner, not assigning anyone new. |
Current assignee @situchan is eligible for the External assigner, not assigning anyone new. |
Hey @thienlnam, the Image is broken, can you re-attach again? thanks! |
ProposalPlease re-state the problem that we are trying to solve in this issue.
What is the root cause of that problem?Currently we use What changes do you think we should make in order to solve the problem?
function getParticipatingWorkspace(participants, chatReports) {
const reportIDs = participants.filter((p) => p.accountID === 0).map((workspace) => workspace.reportID);
const workspaces = chatReports.filter((report) => {
return reportIDs.includes(report.reportID);
});
return workspaces;
} It will filter the workspaces from recent chatReports and return the participating workspaces. we then concat this array for sections in App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 106 to 111 in 144e932
The code can be cleaned and handle the conditions better.
if (option.accountID && option.accountID === item.accountID) return true
if (option.reportID && option.reportID === item.reportID) return true and while selecting more than one participants, we are not adding the reportID to participant object, as we do while selecting the subsequent participant here - App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 169 in 76c1559
We shall add reportID here as well What alternative solutions did you explore? (Optional)
|
ProposalPlease re-state the problem that we are trying to solve in this issue.I see there are 2 issues.
What is the root cause of that problem?In the participant page, the participant detail is coming from App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 106 to 108 in 76c1559
App/src/libs/OptionsListUtils.js Lines 209 to 218 in 76c1559
It only works for a user as it gets the detail from personal details onyx based on accountID .
In BaseOptionsList, we have a logic to detect whether an item is selected or not by comparing the App/src/components/OptionsList/BaseOptionsList.js Lines 174 to 179 in 76c1559
However, workspace What changes do you think we should make in order to solve the problem?Below solutions assume that we can split bill with more than 1 workspace For the first problem, we should use App/src/pages/iou/steps/MoneyRequestConfirmPage.js Lines 67 to 73 in 76c1559
But because we can now select a user along with a workspace as participants, we need to adjust the above code a little bit. We will map each participant to use either
This also means we need to update both However, this still won't work because we need App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 169 in 76c1559
We need to include both App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 151 to 152 in 76c1559
For the second problem, currently, the option item selected logic only considers the App/src/components/OptionsList/BaseOptionsList.js Lines 176 to 180 in 76c1559
So, we need to make sure
Last, after fixing it all, I realize we still have another selection issue. Selecting a second workspace participant will deselect all workspaces and the root cause is the same as above and needs the same solution as above. App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 162 to 167 in 76c1559
|
@situchan Mind reviewing these proposals today? This is a bit of a critical issue with the new global create |
Sure! |
@BhuvaneshPatil @bernhardoj thanks for the proposals. |
Current assignee @thienlnam is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new. |
@bernhardoj @situchan - Would the fix here resolve this report as well? @kbecciv for visibility. |
@strepanier03 yes, should be fixed here cc: @bernhardoj |
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. |
Once the PR is done i think we should CP it so that it addresses the blocker. |
@strepanier03 yes, it would resolve the empty user after going back. |
📣 @situchan 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @bernhardoj 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
@bernhardoj if that is the offending PR, please continue test after reverting it locally. |
PR is ready |
🎯 ⚡️ Woah @situchan / @bernhardoj, great job pushing this forwards! ⚡️ The pull request got merged within 3 working days of assignment, so this job is eligible for a 50% #urgency bonus 🎉
On to the next one 🚀 |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.72-11 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 2023-09-29. 🎊 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.
For reference, here are some details about the assignees on this issue:
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Payouts due: Issue Reporter: N/A Eligible for 50% #urgency bonus? Y |
No regression. This was clean-up of #25564 in Simplify Global Create project. |
Ah good point - @thienlnam - can you confirm there is a regression test included for this bug in https://github.com/Expensify/Expensify/issues/318720? |
Clean up for: #25564
When you select a workspace in the new request money flow, the workspace details do not show up.
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: