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-10-28] Rules - No card is selected when command is "Block retail purchases on all cards" #103869
Version Number: 9.5.8-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:#99624 Email or phone of affected tester (no customers):applausetester+khcategory19@applause.expensifail.com Issue reported by: Applause Internal Team Bug source: Exploratory - Significant User Experience Deterioration Device used: Mac 26.5 / Chrome App Component: Workspace Settings
Action Performed:
Precondition:
Create a Control workspace.
Enable Rules.
Workspace has Expensify Card feature.
Assign a virtual card to any user.
Go to staging.new.expensify.com
Go to workspace settings > Rules.
Click Add rule.
Click Restrict card spend.
Click Describe.
Enter "Block retail purchases on all cards" and click Next.
Expected Result:
All cards will be selected.
Actual Result:
No card is selected when command is "Block retail purchases on all cards".
👋 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.
Verdict: Not a regression. I agree with rushatgabhane that this should stay closed and shouldn't block the deploy.
Why:AI-assisted rule creation shipped this new feature, and the App works as built. The Describe flow sends the text to the backend through GenerateRule, then copies the returned values into the form as they are. The App never expands "all cards" into a card list. When the backend returns no cards, no cards are selected.
Investigation details
Form handling: The App only filters categories and toggles merchant restrictions on the returned values (SpendRulePageBase.tsx#L110-L114). A new rule starts with no cards, so the App didn't clear any.
Known and accepted: While testing the PR, JmillsExpensify noted the card wasn't matched correctly and called it "fair enough for now". The author said backend improvements need no App changes.
No bad data: Save requires at least one card, so the admin must pick cards before saving.
Not tested in the app: The test account has no Control workspace or Expensify Card.
Optional follow-up (not blocking): Have the backend resolve "all cards" to the eligible cards, or return an "all cards" flag for the App to expand. This is a new feature request, and any backend change needs a separate internal investigation.
changed the title [-]Rules - No card is selected when command is "Block retail purchases on all cards"[/-][+][Due for payment 2026-10-28] Rules - No card is selected when command is "Block retail purchases on all cards"[/+]on Oct 21, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.5.15-3 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-10-28. 🎊
The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the Contributor+ 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]. If no checklist is needed for this issue, you can click: [no checklist button]
Activity
applause-bot commentedon Oct 13, 2026
While Applause doesn't embed attachments for this bug, here are the links for quick view:
https://platform.applause.com/services/links/v1/external/c269382db4a9e3b5a9053c9ca8b2fd4aa131a22ed7923f6f74f9bbf1704902ac
melvin-bot commentedon Oct 13, 2026
You have been assigned to this deploy blocker because you recently merged this PR: #99624
melvin-bot commentedon Oct 13, 2026
@luacmartins @JS00001 @Krishna2323 you have been assigned to this deploy blocker because you reviewed the offending PR: #99624
github-actions commentedon Oct 13, 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:
melvin-bot commentedon Oct 13, 2026
@rushatgabhane you have been assigned to this deploy blocker because you authored the offending PR: #99624
melvin-bot commentedon Oct 13, 2026
💬 A slack conversation has been started in #expensify-open-source
rushatgabhane commentedon Oct 13, 2026
not a bug
MelvinBot commentedon Oct 13, 2026
Deploy Blocker Investigation
Verdict: Not a regression. I agree with
rushatgabhanethat this should stay closed and shouldn't block the deploy.Why: AI-assisted rule creation shipped this new feature, and the App works as built. The Describe flow sends the text to the backend through
GenerateRule, then copies the returned values into the form as they are. The App never expands "all cards" into a card list. When the backend returns no cards, no cards are selected.Investigation details
JmillsExpensifynoted the card wasn't matched correctly and called it "fair enough for now". The author said backend improvements need no App changes.Optional follow-up (not blocking): Have the backend resolve "all cards" to the eligible cards, or return an "all cards" flag for the App to expand. This is a new feature request, and any backend change needs a separate internal investigation.
view run
m-natarajan commentedon Oct 13, 2026
Chrome / v9.5.8-3
Repro with Beta enabled
No Describe option with Beta disabled
bandicam.2026-10-13.20-17-25-448.mp4
bandicam.2026-10-13.20-15-45-808.mp4
[-]Rules - No card is selected when command is "Block retail purchases on all cards"[/-][+][Due for payment 2026-10-28] Rules - No card is selected when command is "Block retail purchases on all cards"[/+]melvin-bot commentedon Oct 21, 2026
@Krishna2323
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.5.15-3 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-10-28. 🎊
The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the Contributor+ 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]. If no checklist is needed for this issue, you can click: [no checklist button]