-
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 2024-06-13] [$500] Reddot pinned chat appears for approver for submitter's failed scanned receipt #37044
Comments
Triggered auto assignment to @isabelastisser ( |
Job added to Upwork: https://www.upwork.com/jobs/~0158b53b3b70327b50 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @eVoloshchak ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.What is the root cause of that problem?Currently errors are not distinguished by owner, so they will show to all users who have access. What changes do you think we should make in order to solve the problem?If the red dot should only be visible to the owner, we can relocate this line: Line 238 in d33bf6e
below this code: Lines 359 to 361 in d33bf6e
And adjust the logic to:
If this condition also applies to the workspace switcher, we can place the check here:
If we also want to ignore
What alternative solutions did you explore? (Optional) |
@eVoloshchak proposal updated. Add an optional condition if we also want to apply the same rule for the workspace switcher. |
Hey @eVoloshchak, can you please review the proposal? Thanks! |
ProposalPlease re-state the problem that we are trying to solve in this issue.In the current implementation, when a submitter creates an expense report with an invalid receipt that fails to scan, RBR The expected behavior is:
What is the root cause of that problem?The App/src/libs/OptionsListUtils.ts Line 472 in 690174f
Specifically, the } else if (ReportUtils.hasSmartscanError(Object.values(reportActions ?? {}))) {
reportActionErrors.smartscan = ErrorUtils.getMicroSecondOnyxError('report.genericSmartscanFailureMessage');
} App/src/libs/OptionsListUtils.ts Lines 492 to 493 in 690174f
This adds the RBR for any user that has access to the report actions, regardless of if they are the submitter or not. What changes do you think we should make in order to solve the problem?To meet the requirements of only showing the RBR on the LHN for the submitter, while still showing it for all users on report/request previews and the money request view, I propose:
function shouldShowLHNErrorForMissingSmartscanFields(iouReportID) {
const reportActions = ReportActionsUtils.getAllReportActions(iouReportID);
const submitterReportActions = _.filter(reportActions, reportAction =>
reportAction.actorAccountID === currentUserAccountID
);
return ReportUtils.hasMissingSmartscanFields(iouReportID);
}
} else if (shouldShowLHNErrorForMissingSmartscanFields(report?.reportID ?? '')) {
reportActionErrors.smartscan = ErrorUtils.getMicroSecondOnyxError('report.genericSmartscanFailureMessage');
}
This separates the logic for showing LHN errors vs preview/money request view errors, to meet the different requirements for each. |
ProposalPlease re-state the problem that we are trying to solve in this issue.
What is the root cause of that problem?
What changes do you think we should make in order to solve the problem?
What alternative solutions did you explore? (Optional)
|
ProposalPlease re-state the problem that we are trying to solve in this issue.Scan - No red dot for transaction thread in LHN when scanning fails What is the root cause of that problem?The second condition block, in the App/src/libs/OptionsListUtils.ts Lines 487 to 489 in 91ea979
Hence, the This root cause of this issue is caused by the third condition in the App/src/libs/OptionsListUtils.ts Lines 491 to 492 in 91ea979
Therefore, the third condition will pass because the What changes do you think we should make in order to solve the problem?In the third condition, we should check if the report action was acted by the current user to prevent scan errors from the Old Condition App/src/libs/OptionsListUtils.ts Lines 491 to 493 in 91ea979
New Condition
|
This issue was meant to be fixed at #34827. The expected result was explained in detail in this #34827 (comment) and #34827 (comment) by @cead22. The issue was closed despite the third expected result is not fulfilled: The expense report should not have the RBR on the LHN for either user |
@Tony-MK, thank you for the added context! |
@eVoloshchak Also, maybe we have another expected behavior that we need to consider here #27333 (comment) |
@JmillsExpensify do we wanna show RBR on the LHN when receipt scanning fails only to the user requesting money? I think so, and if that's the case, @brandonhenry 's and @dukenv0307 's root cause is accurate |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
Not overdue. bump @JmillsExpensify on Carlo's question above ^^ |
I DM'd Mills. |
Yes, that's correct. If the receipt scan fails, then we only RBR the LHN of the person that created the request. |
Updated ProposalProposal Link: #37044 (comment) |
@eVoloshchak PR #39970 is opened |
This issue has not been updated in over 15 days. @cead22, @eVoloshchak, @isabelastisser, @dukenv0307 eroding to Monthly issue. P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do! |
@dukenv0307 @eVoloshchak, any updates? |
@isabelastisser, PR is in review, should be merged fairly soon |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.79-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 2024-06-13. 🎊 For reference, here are some details about the assignees on this 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:
|
@eVoloshchak, can you please complete the BZ list above? Thanks! |
Payment summary: @eVoloshchak C+ requires payment through NewDot Manual Requests |
Bump @eVoloshchak to complete the BZ list before I can close the issue. I will also DM you for visibility. Thanks! |
|
Regression Test Proposal Test case 1 (to make sure RBR on the LHN is only shown for the user that made the request):
Test case 2 (to make sure the RBRs on the report preview, money request preview, and the ones in the money request view are shown to every user that has access to them):
Do we agree 👍 or 👎 |
$500 approved for @eVoloshchak |
All set! |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 1.4.43-3
Reproducible in staging?: y
Reproducible in production?: y
Issue reported by: @puneetlath
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1708448202824579
Action Performed:
Expected Result:
No RBR pinned chat appear in the LHN for the error message
Actual Result:
Seeing red dot pinned chat in LHN for submitter's workspace chat as approver
Workaround:
unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @isabelastisserThe text was updated successfully, but these errors were encountered: