Skip to content

[HOLD for payment 2024-08-07] [$250] Dupe detect - Removed expense during review offline is accessible & fields open not here page #45917

Closed

Description

@lanitochka17

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.10-2
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to workspace chat
  3. Submit two same expenses (same amount. date and merchant)
  4. Go to any transaction thread
  5. Go offline
  6. Click Review duplicates
  7. Click Keep this one (any)
  8. On confirmation page, click Confirm
  9. Return to the expense report
  10. Click on the expense preview with skeleton

Expected Result:

The expense which is removed during duplicate review offline should be crossed out and inaccessible

Actual Result:

The expense which is removed during duplicate review offline is accessible and all the fields in the transaction thread lead to not here page

Workaround:

Unknown

Platforms:

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

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

Bug6549542_1721659868909.bandicam_2024-07-22_22-46-56-762.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~011cf834f88beec2ec
  • Upwork Job ID: 1815779453230360541
  • Last Price Increase: 2024-07-23
Issue OwnerCurrent Issue Owner: @
Issue OwnerCurrent Issue Owner: @OfstadC

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    DeployBlockerIndicates it should block deploying the API
    on Jul 22, 2024
  2. melvin-bot commented on Jul 22, 2024

    @melvin-bot

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

  3. github-actions commented on Jul 22, 2024

    @github-actions
    Contributor

    👋 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.
  4. MariaHCD commented on Jul 22, 2024

    @MariaHCD
    Contributor

    @lanitochka17 just to confirm, this bug is not reproducible on production? Do you have a recording of the behavior on production?

  5. roryabraham commented on Jul 22, 2024

    @roryabraham
    Contributor

    was able to reproduce this one locally

  6. roryabraham commented on Jul 22, 2024

    @roryabraham
    Contributor

    The problem here is that in IOU.mergeDuplicates we need to also optimistically delete the IOU reportActions for the transactions marked as duplicates

  7. roryabraham commented on Jul 22, 2024

    @roryabraham
    Contributor

    A broad set of changes will be required here:

    • update the lastMessageText and lastMessageHTML for the policyExpenseChat
    • set message.deleted for the IOU action on the expense report
    • update the message[0].text and message[0].html for the REPORT_PREVIEW action in the policyExpenseChat
    • update the MoneyRequestAction component to return null if the action is deleted
  8. roryabraham commented on Jul 22, 2024

    @roryabraham
    Contributor

    WIP PR to fix this issue: #45961

  9. francoisl commented on Jul 23, 2024

    @francoisl
    Contributor

    Any luck with that PR @roryabraham?

  10. roryabraham commented on Jul 23, 2024

    @roryabraham
    Contributor

    That PR fixes this issue, and I was working on fixing related issues where the total on the expense report and policyExpenseChat are not optimistically updated to account for the merged dupes. I think I may have fixed it but didn't get a chance to test it

  11. 29 remaining items

  12. melvin-bot commented on Jul 31, 2024

    @melvin-bot

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

  13. melvin-bot commented on Jul 31, 2024

    @melvin-bot

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.14-6 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-08-07. 🎊

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

    • @brunovjk requires payment (Needs manual offer from BZ)
  14. melvin-bot commented on Jul 31, 2024

    @melvin-bot

    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:

    • [@brunovjk] The PR that introduced the bug has been identified. Link to the PR:
    • [@brunovjk] 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:
    • [@brunovjk] 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:
    • [@brunovjk] Determine if we should create a regression test for this bug.
    • [@brunovjk] 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.
    • [@OfstadC] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:
  15. OfstadC commented on Aug 6, 2024

    @OfstadC
    Contributor

    @brunovjk Please complete the checklist today so we can issue payment tomorrow 😃

  16. brunovjk commented on Aug 6, 2024

    @brunovjk
    Contributor
    • [@brunovjk] The PR that introduced the bug has been identified. Link to the PR: N/A
    • [@brunovjk] 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: N/A
    • [@brunovjk] 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: N/A
    • [@brunovjk] Determine if we should create a regression test for this bug. Yes
    • [@brunovjk] 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.

    Regression Test Proposal:

    1. Sign in
    2. Create a workspace if needed
    3. Submit two duplicate expenses to the policy expense chat for that workspace
    4. Open the expense thread for one of the violations (it should appear in the LHN with a red dot)
    5. Go offline
    6. Click Resolve Duplicates
    7. Pick either one of the duplicate transactions then confirm
    8. verify that the total of the report updates correctly in the LHN.
    9. Click on the workspace chat.
    10. verify that there's no skeleton action for the removed expense
    11. verify that the expense report preview shows the correct total

    Do we agree 👍 or 👎

  17. OfstadC commented on Aug 7, 2024

    @OfstadC
    Contributor

    @brunovjk I sent you a manual offer in Upwork - can you accept? 😃 Thanks!

  18. OfstadC commented on Aug 7, 2024

    @OfstadC
    Contributor
  19. brunovjk commented on Aug 7, 2024

    @brunovjk
    Contributor

    Done @OfstadC, thank you

  20. melvin-bot commented on Aug 7, 2024

    @melvin-bot

    Payment Summary

    Upwork Job

    BugZero Checklist (@OfstadC)

    • I have verified the correct assignees and roles are listed above and updated the neccesary manual offers
    • I have verified that there are no duplicate or incorrect contracts on Upwork for this job (https://www.upwork.com/ab/applicants/1815779453230360541/hired)
    • I have paid out the Upwork contracts or cancelled the ones that are incorrect
    • I have verified the payment summary above is correct
  21. OfstadC commented on Aug 7, 2024

    @OfstadC
    Contributor

    https://github.com/Expensify/Expensify/issues/418708

    Closing since regression test was created and Upwork contract has been paid/closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2EngineeringExternalAdded to denote the issue can be worked on by a contributor

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions