Skip to content

No suggestions when type declined: on search #104399

Closed

Description

@applause-bot

If you haven’t already, check out our contributing guidelines for onboarding. To join our Slack channel, fill out this form.


Version Number: 9.5.14-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: #103309
Email or phone of affected tester (no customers): [email protected]
Issue reported by: Applause Internal Team
Bug source: Pull Request QA execution
Device used: windows 10/chrome
App Component: Other

Action Performed:

  1. As a submitter on a workspace with approvals, submit three reports to an approver.
  2. As the approver, reject one expense on the first report.
  3. As the approver, reject the whole second report.
  4. As the submitter, go to Spend > Expenses and click Filters.
  5. Verify Rejected appears below Billable.
  6. Select Rejected > Yes.
  7. Verify a "Rejected: Yes" chip appears and only the rejected expense is listed.
  8. Change the chip to No.
  9. Verify the rejected expense is not listed and the other expenses are.
  10. Go to Spend > Reports and click Filters.
  11. Verify Rejected appears below Paid status.
  12. Select Rejected > Yes.
  13. Verify only the second report is listed.
  14. Click the search icon and type declined:.

Expected Result:

The suggestions are declined:no and declined:yes.

Actual Result:

No suggestions

Workaround:

Unknown

Platforms:

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

Screenshots/Videos

Bug7290523_1792435469800.Recording__1911.mp4

View all open jobs on GitHub

Applause Internal Information
Exported by: Chandana Kiran
Bug ID: 7290523

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    BugSomething is broken. Auto assigns a BugZero manager.
    on Oct 19, 2026
  2. applause-bot commented on Oct 19, 2026

    @applause-bot
    Author

    While Applause doesn't embed attachments for this bug, here are the links for quick view:
    https://platform.applause.com/services/links/v1/external/a4d9605641ff8a8452d532b49c597a3cc5aa2b0c36e9b92bec9e7afe7f6095f4

  3. melvin-bot commented on Oct 19, 2026

    @melvin-bot

    You have been assigned to this deploy blocker because you recently merged this PR: #103309

  4. github-actions commented on Oct 19, 2026

    @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.
  5. melvin-bot commented on Oct 19, 2026

    @melvin-bot

    @JS00001 @QichenZhu you have been assigned to this deploy blocker because you reviewed the offending PR: #103309

  6. melvin-bot commented on Oct 19, 2026

    @melvin-bot

    @c3024 you have been assigned to this deploy blocker because you authored the offending PR: #103309

  7. melvin-bot commented on Oct 19, 2026

    @melvin-bot

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

  8. MelvinBot commented on Oct 19, 2026

    @MelvinBot
    Contributor

    ⚠️ Preliminary analysis (low confidence): treat this as a starting point, not a conclusion.

    Recommendation: don't revert yet. First get the exact text the tester typed. I couldn't find a code defect. Add Rejected search filter for expenses and expense reports is the only PR that adds declined:, and its autocomplete is wired the same way as billable:.

    Likely explanation (unverified): The router opened from Spend pre-fills the current query, such as type:expense-report declined:yes (SearchRouter.tsx:141). After step 13, typing declined: there gives one of two results:

    • With no space (...declined:yesdeclined:), nothing parses, so no suggestions appear.
    • With a space, values already in the query are hidden (useAutocompleteSuggestions.ts:174-180), so only declined:no shows.

    billable: and reimbursable: behave the same way in both cases, so this would not be a regression.

    Next steps:

    1. Applause: share the full search input text at step 14, and say whether it was pre-filled.
    2. c3024: retest on 9.5.14-0 with an empty search input.
    3. If it fails with an empty input, this is a real bug. Add a test that runs the real parser on declined:. The current test mocks parseForAutocomplete, so the parser never runs.

    I tried to reproduce this on web, but the test session didn't load, so I have no live result. I found no follow-up PR for this issue.


    Next Steps: Reply with @MelvinBot <your feedback> to refine this analysis.


    view run · no recording available

  9. QichenZhu commented on Oct 19, 2026

    @QichenZhu
    Contributor

    @MelvinBot I think this is expected since the keyword box only supports keywords. To use search syntax, you need to go to the search screen via the magnifying glass icon.

    cc @JS00001 @c3024

  10. MelvinBot commented on Oct 19, 2026

    @MelvinBot
    Contributor

    Agreed, QichenZhu. The code supports this. The inline keyword box on Spend has no autocomplete. Only the router opened by the magnifying glass suggests search syntax. So no suggestions in the keyword box is expected, and it isn't a regression from Add Rejected search filter for expenses and expense reports.

    • Keyword box: SearchPageInput.tsx:65-69 is a plain TextInput with no suggestion list. On submit, escapeKeyword wraps key:value text in quotes, so declined:yes becomes a literal keyword. billable: behaves the same way there.
    • Magnifying-glass router: this one does suggest values. declined shares a case with billable and returns yes/no: useAutocompleteSuggestions.ts:548-557.

    Both inputs use the same placeholder, "Search for something...", which makes them easy to mix up.

    If the tester confirms they typed into the keyword box, you can close this or remove the DeployBlockerCash label. If declined: shows no suggestions in the magnifying-glass router, it's a real bug.


    view run

  11. QichenZhu commented on Oct 19, 2026

    @QichenZhu
    Contributor

    @Chandkia24 the test step means clicking the search icon 🔍 in the top-right corner.

  12. Chandkia24 commented on Oct 19, 2026

    @Chandkia24

    17. @Chandkia24 the test step means clicking the search icon 🔍 in the top-right corner.

    @QichenZhu declined: shows suggestions as expected in the magnifying-glass router

  13. grgia commented on Oct 20, 2026

    @grgia
    Contributor

    @QichenZhu is this to be demoted or closed?

  14. QichenZhu commented on Oct 20, 2026

    @QichenZhu
    Contributor

    @grgia I think this can be closed since everything works as expected.

  15. JS00001 commented on Oct 20, 2026

    @JS00001
    Contributor

    yeah agreed, they are using the wrong searchbox

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

BugSomething is broken. Auto assigns a BugZero manager.Engineering

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions