Skip to content

[Due for payment 2026-06-29] [Due for payment 2026-05-20] [$250] Copilot with limited access level can reject expenses, which contradicts the statement #75166

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!


Updated 2026-04-25: Narrowed scope per this comment from aimane-chnaif — the reject case is now fixed, but the retract case is still not fixed.

Version Number: 9.2.58-2
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from BrowserStack: Exp https://test-management.browserstack.com/projects/2219752/test-runs/TR-1965/41236699/1013855572?q=copilot&issue_type=jira
Email or phone of affected tester (no customers): applausetester+141104kh@applause.expensifail.com
Issue reported by: Applause Internal Team
Device used: Mac 15.5 / Chrome
App Component: Money Requests

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to Account > Security.
  3. Click Add copilot.
  4. Select User B.
  5. Select Limited access level.
    -> On confirm page, it states "Allow another member to take most actions in your paccount, on your behalf. Excludes approvals, payments, rejections, and holds."
  6. Click Add copilot and enter magic code.
  7. Go to workspace chat.
  8. Create an expense and click Submit.
  9. As User B (copilot), open account switcher and switch to User A.
  10. [Copilot] Go to workspace chat and open the expense report.
  11. [Copilot] Click More > Hold.
    -> Hold action is denied in accordance with "Allow another member to take most actions in your paccount, on your behalf. Excludes approvals, payments, rejections, and holds." - Expected.
  12. [Copilot] Click More > Reject. (Reject case is now fixed)
  13. [Copilot] Retract the expense.

Expected Result:

Copilot with limited access level should be blocked from retracting an expense because limited access "Excludes approvals, payments, rejections, and holds."

Actual Result:

Copilot with limited access level can reject expense despite the Limited access level statement. Reject is now fixed. However, copilot with limited access level can still retract an expense, which should also be blocked.

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

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021989470519323088195
  • Upwork Job ID: 1989470519323088195
  • Last Price Increase: 2025-11-21
  • Automatic offers:
    • aimane-chnaif | Reviewer | 111348147
Issue OwnerCurrent Issue Owner: @Eskalifer1

Activity

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