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

[HOLD for payment 2023-10-05] [$500] mWeb - Update message with empty values shown when changing track distance in offline mode more than once #26676

Closed
2 of 6 tasks
izarutskaya opened this issue Sep 4, 2023 · 31 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor

Comments

@izarutskaya
Copy link

izarutskaya commented Sep 4, 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. login to staging new dot
  2. Go to preferences and turn offline mode on
  3. Go to a workspace and select reimbursement
  4. Click on rate in track distance and change the amount and click save
  5. Again click on the rate and change the amount to something else and click save
  6. Go to preferences and toggle offline mode off
  7. Go to the admin room of the workspace in step 3
  8. Observe that in addition to the corrected rate update message an addition updated the pendingAction of the Distance rate "Default Rate" from "" to "update" is shown with empty amounts.

Expected Result:

Search bar should be focused

Actual Result:

"Updated the pendingAction of the Distance rate "Default Rate" from "" to "update""

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: v1.3.62-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

2023_08_23_08_35_31.mp4
Screen_Recording_20230904_194647_Chrome.mp4

Expensify/Expensify Issue URL:

Issue reported by: @SofoniasN

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

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01123e24d63cdd9c43
  • Upwork Job ID: 1701781124103757824
  • Last Price Increase: 2023-09-13
  • Automatic offers:
    • s77rt | Reviewer | 26772413
    • sofoniasN | Reporter | 26772420
@izarutskaya izarutskaya added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Sep 4, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 4, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented Sep 4, 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

@melvin-bot melvin-bot bot added the Overdue label Sep 11, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 12, 2023

@anmurali 6 days overdue. This is scarier than being forced to listen to Vogon poetry!

@anmurali
Copy link

Reproduced on staging on Mac/Chrome

@melvin-bot melvin-bot bot removed the Overdue label Sep 13, 2023
@anmurali anmurali added the External Added to denote the issue can be worked on by a contributor label Sep 13, 2023
@melvin-bot melvin-bot bot changed the title mWeb - Update message with empty values shown when changing track distance in offline mode more than once [$500] mWeb - Update message with empty values shown when changing track distance in offline mode more than once Sep 13, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 13, 2023

Job added to Upwork: https://www.upwork.com/jobs/~01123e24d63cdd9c43

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

melvin-bot bot commented Sep 13, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented Sep 13, 2023

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

@tsa321
Copy link
Contributor

tsa321 commented Sep 13, 2023

Proposal

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

Update message with empty values shown when changing track distance rate more than once after going online from offline

What is the root cause of that problem?

customUnitRate: JSON.stringify(newCustomUnit.rates),

We include pendingAction field inside inside customUnitRate parameter when requesting UpdateWorkspaceCustomUnitAndRate API call. The pendingAction is used for front end use on offline functionality, so we don't need to send the value to back end. Then server send the updated message in report for each field which have been updated or have different value from previous. So: the updated the pendingAction of the Distance rate "Default Rate"... is displayed.

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

We could omit the pendingAction field in customUnitRate parameter:

customUnitRate: JSON.stringify( _.omit(newCustomUnit.rates, ['pendingAction']))

What alternative solutions did you explore? (Optional)

N/A

@s77rt
Copy link
Contributor

s77rt commented Sep 13, 2023

@tsa321 Thanks for the proposal. Your RCA makes sense, the backend seems to compare every prop that we send and pendingAction is supposed to be a client only field and should not be sent / compared with any prev values. Your solution looks good to me and I think we should do the same with errors.

A slightly different solution is that instead of using the whole object and excluding those that we don't need, we can construct a new object that only contains the props that we need. I have asked on Slack for that.

🎀 👀 🎀 C+ reviewed
Link to proposal

@melvin-bot
Copy link

melvin-bot bot commented Sep 13, 2023

Triggered auto assignment to @deetergp, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@melvin-bot melvin-bot bot added the Overdue label Sep 18, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 18, 2023

@deetergp @anmurali @s77rt this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

@s77rt
Copy link
Contributor

s77rt commented Sep 18, 2023

We have a proposal already and a working solution. I just bumped the slack thread as there may be better future proof solution.

@melvin-bot melvin-bot bot removed the Overdue label Sep 18, 2023
@deetergp
Copy link
Contributor

The silence in the Slack thread is deafening 😅 I am fine with just omitting it on the front end. Let's go with @tsa321's proposal.

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

melvin-bot bot commented Sep 20, 2023

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

Offer link
Upwork job

@melvin-bot
Copy link

melvin-bot bot commented Sep 20, 2023

📣 @tsa321 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 📖

@melvin-bot
Copy link

melvin-bot bot commented Sep 20, 2023

📣 @SofoniasN 🎉 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

@melvin-bot melvin-bot bot added the Weekly KSv2 label Sep 20, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 25, 2023

🎯 ⚡️ Woah @s77rt / @tsa321, 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 🎉

  • when @tsa321 got assigned: 2023-09-20 08:26:00 Z
  • when the PR got merged: 2023-09-25 07:43:41 UTC

On to the next one 🚀

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Sep 28, 2023
@melvin-bot melvin-bot bot changed the title [$500] mWeb - Update message with empty values shown when changing track distance in offline mode more than once [HOLD for payment 2023-10-05] [$500] mWeb - Update message with empty values shown when changing track distance in offline mode more than once Sep 28, 2023
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Sep 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 28, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented Sep 28, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.74-3 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-10-05. 🎊

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.

  • External issue reporter
  • Contributor that fixed the issue
  • Contributor+ that helped on the issue and/or PR

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:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@melvin-bot
Copy link

melvin-bot bot commented Sep 28, 2023

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:

  • [@s77rt] The PR that introduced the bug has been identified. Link to the PR:
  • [@s77rt] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
  • [@s77rt] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
  • [@s77rt] Determine if we should create a regression test for this bug.
  • [@s77rt] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
  • [@anmurali] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@s77rt
Copy link
Contributor

s77rt commented Sep 29, 2023

@melvin-bot melvin-bot bot added Daily KSv2 Overdue and removed Weekly KSv2 labels Oct 5, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 10, 2023

@deetergp, @anmurali, @s77rt, @tsa321 Huh... This is 4 days overdue. Who can take care of this?

@deetergp
Copy link
Contributor

Still holding?

@melvin-bot melvin-bot bot removed the Overdue label Oct 10, 2023
@s77rt
Copy link
Contributor

s77rt commented Oct 10, 2023

I think payment is due here

@deetergp
Copy link
Contributor

@anmurali ^

@melvin-bot melvin-bot bot added the Overdue label Oct 16, 2023
@tsa321
Copy link
Contributor

tsa321 commented Oct 16, 2023

cc @anmurali ^^

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Oct 16, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 20, 2023

@deetergp, @anmurali, @s77rt, @tsa321 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@mallenexpensify
Copy link
Contributor

mallenexpensify commented Oct 23, 2023

Steppin' in to help here
Issue reporter: @SofoniasN paid $250 via Upwork (the bug was reported in Slack before we changed the bounty price)
Contributor: @tsa321 paid $750 via Upwork, inc. urgency bonus
Contributor+: @s77rt paid $750 via Upwork, inc. urgency bonus

@tsa321 can you please accept the job and reply here once you have?
https://www.upwork.com/jobs/~01123e24d63cdd9c43

image

live as of today, August 30th, and will affect all issues created after this point.

@tsa321
Copy link
Contributor

tsa321 commented Oct 23, 2023

@mallenexpensify thanks, I have accepted the offer.

@melvin-bot melvin-bot bot removed the Overdue label Oct 23, 2023
@mallenexpensify
Copy link
Contributor

mallenexpensify commented Oct 23, 2023

Thanks @tsa321 , I just paid you, and updated the payment breakdown above!

Contributor: @tsa321 paid $750 via Upwork, inc. urgency bonus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor
Projects
None yet
Development

No branches or pull requests

6 participants