You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Due for payment 2026-05-12] [Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list. #89340
Version Number: 9.3.65-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:#85225 Email or phone of affected tester (no customers):ibellicotest+2250@gmail.com Issue reported by: Applause Internal Team Bug source: Exploratory - Significant User Experience Deterioration Device used: Motorola MotoG60 / Android 12 (Hybrid app) - Windows 11 / Chrome App Component: Money Requests
Action Performed:
Prerequisite: Account has at least one workspace.
Open the staging.new.expensify.com website.
Open any workspace chat.
Create a manual expense with negative amount.
Create an empty report.
Click on "Add Expense" > "Add existing expense"
Note that the expense created on step 3, is not visible on existing expenses list.
Expected Result:
Expense with negative amount should be displayed on existing expenses list and user should be able to add it to another report.
Actual Result:
Expense with negative amount is not displayed on existing expenses list and can´t be added to another report.
👋 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:
Identify the pull request that introduced this issue and revert it.
Classification: Frontend bug Causing PR: #85225 - "Feat: Change Add unreported expense to Add existing expense in a report" by @nyomanjyotisa (High confidence) Related Issues: #84130
Recommendation: REVERT
PR #85225 introduced a regression by expanding the "Add existing expense" flow to include Draft expenses (expenses on open expense reports), but the pre-existing filter that blocks negative-amount transactions still applies to all expense types. This causes negative-amount expenses to be hidden from the list even when they are valid Draft expenses that should be selectable.
Assigned: @nyomanjyotisa (PR author), @sobitneupane and @puneetlath (approving reviewers) Labels: DeployBlockerCash kept (Frontend bug — App PR caused the issue). DeployBlocker kept (already present on the issue, not removing without confirmation this is purely frontend).
Detailed Analysis
Evidence
The bug report states that expenses with negative amounts are not visible in the "Add existing expense" list, and cannot be added to another report.
The issue is staging-only ("Reproducible in production? N/A - new feature, doesn't exist in prod"), meaning the cause is in the current staging deploy.
Lines 122-127 of the current file contain this filter logic:
consttransactionAmount=getTransactionDetails(item)?.amount??0;// Negative values are not allowed for unreported expensesif(transactionAmount<0){returnfalse;}
Before PR #85225, getEligibleTransactions only returned truly unreported transactions (reportID === CONST.REPORT.UNREPORTED_REPORT_ID or empty). The negative-amount filter was arguably intentional for that context (unreported expenses from the workspace chat cannot be negative). PR #85225 widened the filter to also include Draft expenses (those on any open expense report), but the blanket negative-amount exclusion was not adjusted to account for this expanded set. Draft expenses with negative amounts are valid (e.g., refunds or credits) and should appear in the list. The fix requires either removing the blanket negative-amount guard or scoping it to only apply to truly unreported transactions (not Draft expenses on open reports).
changed the title [-]Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/-][+][Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/+]on May 4, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.3.65-6 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:
@sobitneupane / @nyomanjyotisa 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]
changed the title [-][Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/-][+][Due for payment 2026-05-12] [Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/+]on May 5, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.3.66-7 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:
@sobitneupane / @nyomanjyotisa 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]
Activity
melvin-bot commentedon May 1, 2026
You have been assigned to this deploy blocker because you recently merged this PR: #85225
melvin-bot commentedon May 1, 2026
💬 A slack conversation has been started in #expensify-open-source
github-actions commentedon May 1, 2026
👋 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:
OSBotify commentedon May 1, 2026
Investigation Summary
Classification: Frontend bug
Causing PR: #85225 - "Feat: Change Add unreported expense to Add existing expense in a report" by @nyomanjyotisa (High confidence)
Related Issues: #84130
Recommendation: REVERT
PR #85225 introduced a regression by expanding the "Add existing expense" flow to include Draft expenses (expenses on open expense reports), but the pre-existing filter that blocks negative-amount transactions still applies to all expense types. This causes negative-amount expenses to be hidden from the list even when they are valid Draft expenses that should be selectable.
Assigned: @nyomanjyotisa (PR author), @sobitneupane and @puneetlath (approving reviewers)
Labels:
DeployBlockerCashkept (Frontend bug — App PR caused the issue).DeployBlockerkept (already present on the issue, not removing without confirmation this is purely frontend).Detailed Analysis
Evidence
StagingDeployCash(version9.3.65-0) and was merged on 2026-04-29, shortly before this blocker was filed.Verification
src/pages/AddExistingExpense.tsx(renamed fromAddUnreportedExpense.tsxby PR Feat: Change Add unreported expense to Add existing expense in a report #85225).getEligibleTransactionsto also include Draft expenses (expenses on open expense reports viaallOpenReportsandopenReportDrafts), but did NOT remove or narrow the negative-amount filter.Root Cause
Before PR #85225,
getEligibleTransactionsonly returned truly unreported transactions (reportID === CONST.REPORT.UNREPORTED_REPORT_IDor empty). The negative-amount filter was arguably intentional for that context (unreported expenses from the workspace chat cannot be negative). PR #85225 widened the filter to also include Draft expenses (those on any open expense report), but the blanket negative-amount exclusion was not adjusted to account for this expanded set. Draft expenses with negative amounts are valid (e.g., refunds or credits) and should appear in the list. The fix requires either removing the blanket negative-amount guard or scoping it to only apply to truly unreported transactions (not Draft expenses on open reports).3 remaining items
m-natarajan commentedon May 1, 2026
Issue no longer reproducible, Mac/ Chrome, Motorola Moto G60 - Android 12, on Build 9.3.65-4
screen-20260501-170656.mp4
Repro.-.issue.89340.mp4
puneetlath commentedon May 1, 2026
Great, thanks!
[-]Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/-][+][Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/+]melvin-bot commentedon May 4, 2026
Reviewinglabel has been removed, please complete the "BugZero Checklist".melvin-bot commentedon May 4, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.3.65-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 2026-05-11. 🎊
For reference, here are some details about the assignees on this issue:
melvin-bot commentedon May 4, 2026
@sobitneupane / @nyomanjyotisa 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]
[-][Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/-][+][Due for payment 2026-05-12] [Due for payment 2026-05-11] Expense - Expense with negative account is not displayed on "Existing Expenses" list.[/+]melvin-bot commentedon May 5, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.3.66-7 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 2026-05-12. 🎊
For reference, here are some details about the assignees on this issue:
melvin-bot commentedon May 5, 2026
@sobitneupane / @nyomanjyotisa 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]