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.28k stars 2.71k forks source link

[HOLD for payment 2024-07-17] [$250] Report fields - Row is not grayed out when added/edited offline #44798

Closed m-natarajan closed 1 month ago

m-natarajan commented 1 month 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!


Version Number: 9.0.4.0 Reproducible in staging?: y Reproducible in production?: no new feature If this was caught during regression testing, add the test name, ID and link from TestRail: n/a Email or phone of affected tester (no customers): n/a Logs: https://stackoverflow.com/c/expensify/questions/4856 Expensify/Expensify Issue URL: Issue reported by: Applause internal team Slack conversation:

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to Workspace settings > Report fields (enable from More features)
  3. Go offline.
  4. Tap Add field.
  5. Add any report field and save it.

Expected Result:

The row will be grayed out when added offline.

Actual Result:

The row is not grayed out when added offline. This also applies to List values editor for List report field.

Workaround:

unknown

Platforms:

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

Screenshots/Videos

https://github.com/Expensify/App/assets/38435837/9e99c34c-8da0-47b2-bd42-ff4d21986c4a

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~018389cb0ae25e3928
  • Upwork Job ID: 1808737930014144742
  • Last Price Increase: 2024-07-04
Issue OwnerCurrent Issue Owner: @zanyrenney
melvin-bot[bot] commented 1 month ago

Triggered auto assignment to @techievivek (DeployBlockerCash), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.

melvin-bot[bot] commented 1 month ago

Triggered auto assignment to @zanyrenney (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

github-actions[bot] commented 1 month 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.
m-natarajan commented 1 month ago

@techievivek FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

m-natarajan commented 1 month ago

We think that this bug might be related to #vip-vsb

nkdengineer commented 1 month ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

The row is not grayed out when added offline. This also applies to List values editor for List report field.

What is the root cause of that problem?

We don't add the pendingAction field when we get the list report fields here

https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/pages/workspace/reportFields/WorkspaceReportFieldsPage.tsx#L67

What changes do you think we should make in order to solve the problem?

We should add pendingAction here when we get the list report field to apply the gray out style when this report field is added/edited offline.

https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/pages/workspace/reportFields/WorkspaceReportFieldsPage.tsx#L67

https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/libs/actions/Policy/ReportFields.ts#L162-L164

What alternative solutions did you explore? (Optional)

etCoderDysto commented 1 month ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

Row is not grayed out when added/edited offline

What is the root cause of that problem?

When creating a report field we are adding a pendingAction to pendingFileds of a policy with fieldKey here https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/libs/actions/Policy/ReportFields.ts#L162-L163

But when creating a reportFieldList here and pass it selection list we are not including pendingFieldadded to the policy as a 'pendingAction' prop https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/pages/workspace/reportFields/WorkspaceReportFieldsPage.tsx#L67-L73

What changes do you think we should make in order to solve the problem?

Result:

https://github.com/Expensify/App/assets/171434916/4b4f3f3d-1975-4f5d-a5e9-ea9bc619fa69

etCoderDysto commented 1 month ago

Updated Proposal

techievivek commented 1 month ago

Adding a C+ so they can review the above proposals and help us fix this ASAP.

melvin-bot[bot] commented 1 month ago

Job added to Upwork: https://www.upwork.com/jobs/~018389cb0ae25e3928

melvin-bot[bot] commented 1 month ago

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

mollfpr commented 1 month ago

Both proposal has the correct RCA, but the @etCoderDysto proposal has more detail for the implementation.

I'll suggest we go with @etCoderDysto proposal.

πŸŽ€ πŸ‘€ πŸŽ€ C+ reviewed!

melvin-bot[bot] commented 1 month ago

Current assignee @techievivek is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new.

nkdengineer commented 1 month ago

@mollfpr I don't think we need more detail here, I also referred the way to get the pending action here in my proposal.

https://github.com/Expensify/App/blob/83eb7e6ee5f8a86c4500deda3454763680dcd5cf/src/libs/actions/Policy/ReportFields.ts#L162-L164

melvin-bot[bot] commented 1 month ago

πŸ“£ @etCoderDysto You have been assigned to this job! Please apply to the Upwork job and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review πŸ§‘β€πŸ’» Once you apply to this job, your Upwork ID will be stored and you will be automatically hired for future jobs! Keep in mind: Code of Conduct | Contributing πŸ“–

etCoderDysto commented 1 month ago

Raising a PR now.

nkdengineer commented 1 month ago

@techievivek I believe my proposal is detail enough. I referred the way we merge the pending field and I think it's enough to know how we can get this.

mollfpr commented 1 month ago

I don't think we need more detail here, I also referred the way to get the pending action here in my proposal.

Yeah, I understand that, but proposing a detailed solution is very helpful for the reviewer.

We should add pendingAction here when we get the list report field to apply the gray out style when this report field is added/edited offline.

My weighing point is your solution doesn't have much information on how we can get the pendingFields into the mapping. I believe you already have the implementation in mind, but it would be great if you put more detail to understand the solution you proposing. A detailed solution is great and gives you a chance to win the issue.

nkdengineer commented 1 month ago

Yeah, I understand that, but proposing a detailed solution is very helpful for the reviewer.

@mollfpr Thanks for your feedback, I think this issue is straight forward and the implement detail (the way to get the pendingFields, I also referred the way we merged the pendingFields for report field in Onyx and it's good to know how we can get this) is very simply so it can be done in the PR phrase. The detailer is good but I don't think it's not enough to make a proposal more weight in this case. If the issue is complex, I agree with that.

etCoderDysto commented 1 month ago

@mollfpr PR is ready for review

luacmartins commented 1 month ago

Report fields is behind a beta and this is. a minor UI issue. Gonna remove the blocker label.

mountiny commented 1 month ago

Happy to take this over as I am leading the report fields configuration project

mountiny commented 1 month ago

Noting $50 payment to @mollfpr for their help on this issue

mountiny commented 1 month ago

@techievivek with @shubham1206agra and @rezkiy37 @waterim we have discussed handling the offline feedback differently than its done now https://expensify.slack.com/archives/C06ML6X0W9L/p1720172553875929?thread_ts=1719874235.982839&cid=C06ML6X0W9L and we are going to handle it in the report fields configation PRs from Callstack.

As such I think we can provide a partial compensation to @mollfpr and @etCoderDysto for their time $50 each

techievivek commented 1 month ago

@mountiny sounds good to me. Thanks.

Payment summary: $50 each to @mollfpr and @etCoderDysto, once payment is made, we close this out. cc @zanyrenney

JmillsExpensify commented 1 month ago

$50 approved for @mollfpr

melvin-bot[bot] commented 1 month ago

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

melvin-bot[bot] commented 1 month ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 9.0.5-13 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 2024-07-17. :confetti_ball:

For reference, here are some details about the assignees on this issue:

melvin-bot[bot] commented 1 month ago

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:

melvin-bot[bot] commented 1 month ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 9.0.6-8 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 2024-07-22. :confetti_ball:

For reference, here are some details about the assignees on this issue:

melvin-bot[bot] commented 1 month ago

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:

Christinadobrzyn commented 1 month ago

Hi @mollfpr @mountiny @techievivek can you check and see if this deploy blocker relates to this PR? https://github.com/Expensify/App/issues/45461

melvin-bot[bot] commented 1 month 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.

mollfpr commented 1 month ago

cc @shubham1206agra https://github.com/Expensify/App/issues/44798#issuecomment-2231369866

zanyrenney commented 1 month ago

bump @shubham1206agra can you review the comment above as this is being raised as a deploy blocker?

shubham1206agra commented 1 month ago

@zanyrenney Already addressed here https://github.com/Expensify/App/issues/45461#issuecomment-2233928218

zanyrenney commented 1 month ago

Ah great, thank you!

zanyrenney commented 1 month ago

I'll move ahead with the payments in this case πŸ™‡πŸΌ

zanyrenney commented 1 month ago

have asked @etCoderDysto to apply to job for payout

shubham1206agra commented 1 month ago

Payments will be handled later at one place for this.

zanyrenney commented 1 month ago

Ah okay that's not what the payment summary says: 2024-07-19_14-52-55

But happy to go with that then. I will close this one out!

etCoderDysto commented 1 month ago

$50 approved for @mollfpr

@zanyrenney Only mollfpr is paid. I am not paid yet. And here is the payment summary

$50 each to @mollfpr and @etCoderDysto, once payment is made, we close this out. cc @zanyrenney

zanyrenney commented 1 month ago

Cool, payment summary: @mollfpr requires payment through NewDot Manual Requests - paid via ND @etCoderDysto requires payment (Needs manual offer from BZ) - paid $50 via UPwork.