Skip to content

[Due for payment 2026-04-14] Reports - Approver can be bypassed by bulk changing approver when self-approval is disabled #77372

Description

@jponikarchuk

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.2.75-0
Reproducible in staging?: Yes
Reproducible in production?: N/A - new feature, doesn't exist in prod
If this was caught during regression testing, add the test name, ID and link from BrowserStack: #75729
Email or phone of affected tester (no customers): jsdonijsdojoisjdiosnjdo11@gmail.com
Issue reported by: Applause Internal Team
Bug source: Pull Request QA execution
Device used: Mac 26.1 / Chrome
App Component: Money Requests

Action Performed:

Precondition:

  • Create two workspaces - A and B.
  • User B is invited to Workspace A and B and is the workspace approver in both workspaces.
  • "Prevent self-approvals" is enabled in Workspace A only.
  1. Go to staging.new.expensify.com
  2. Create an expense in both Workspace A and B and click Submit for each report.
  3. Open the expense report in workspace chat A.
  4. Click More > Change approver.
    → Bypass approver option is hidden because "Prevent self-approvals" is enabled.
  5. Go to Reports > Reports.
  6. Select both reports from both workspaces via checkbox.
  7. Click dropdown button > Change approver.
  8. Click Bypass approver > Change approver.
  9. Open expense report from workspace chat A.

Expected Result:

In Step 8, Bypass approver option should be hidden when bulk changing approver for both reports from both workspaces because "Prevent self-approvals" is enabled in Workspace A (the same way the option is hidden in Step 4).

Actual Result:

In Step 8, Bypass approver option is shown when bulk changing approver for both reports from both workspaces when "Prevent self-approvals" is enabled in Workspace A.
As a result, user can change approver to themselves despite self-approval settings.

Workaround:

Unknown

Platforms:

  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

1.mp4

View all open jobs on GitHub

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.EngineeringReviewingHas a PR in reviewWeeklyKSv2

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions