Skip to content

[Due for payment 2025-08-19] Categories - Checkbox is not marked as selected when selecting all categories #68058

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

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to workspace settings > Categories
  3. Select all the categories via checkbox

Expected Result:

The checkbox will be marked as selected

Actual Result:

The checkbox is not marked as selected when selecting all categories
The same issue happens in other pages such as Tags

Workaround:

Unknown

Platforms:

Select the officially supported platforms where the issue was reproduced:

  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome / Safari
  • MacOS: Desktop
Platforms Tested: On which of our officially supported platforms was this issue tested:
  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence
Bug6909659_1754509792626.20250807_034835.mp4

View all open jobs on GitHub

Issue OwnerCurrent Issue Owner: @bfitzexpensify

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    BugSomething is broken. Auto assigns a BugZero manager.
    on Aug 6, 2025
  2. github-actions commented on Aug 6, 2025

    @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.
  3. melvin-bot commented on Aug 6, 2025

    @melvin-bot

    Triggered auto assignment to @bfitzexpensify (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.

  4. melvin-bot commented on Aug 6, 2025

    @melvin-bot

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

  5. melvin-bot commented on Aug 6, 2025

    @melvin-bot

    💬 A slack conversation has been started in #expensify-open-source

  6. Eskalifer1 commented on Aug 7, 2025

    @Eskalifer1
    Contributor

    Proposal

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

    Categories - Checkbox is not marked as selected when selecting all categories

    What is the root cause of that problem?

    The problem is that in this part of the code, we mutate the original object, causing the isSelected value to be added to the original object and the isItemSelected function to start working incorrectly:

    const newItem = item;
    if (!item.isSelected) {
    newItem.isSelected = selected;
    }

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

    We need to clone the object. The easiest way to do this is with “...”

     item={{...item, isSelected: selected}}

    Or use clone when creating an object:

    const newItem = clone(item);

    What specific scenarios should we cover in automated tests to prevent reintroducing this issue in the future?

    N/A

    What alternative solutions did you explore? (Optional)

    Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

  7. 7 remaining items

  8. added
    Awaiting PaymentAuto-added when associated PR is deployed to production
    and removed on Aug 12, 2025
  9. changed the title [-]Categories - Checkbox is not marked as selected when selecting all categories[/-] [+][Due for payment 2025-08-19] Categories - Checkbox is not marked as selected when selecting all categories[/+] on Aug 12, 2025
  10. melvin-bot commented on Aug 12, 2025

    @melvin-bot

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

  11. melvin-bot commented on Aug 12, 2025

    @melvin-bot

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.1.92-5 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 2025-08-19. 🎊

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

  12. melvin-bot commented on Aug 12, 2025

    @melvin-bot

    @allgandalf @bfitzexpensify The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]

  13. allgandalf commented on Aug 15, 2025

    @allgandalf
    Contributor

    Good to close

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.EngineeringWeeklyKSv2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions