Skip to content

fix(cli): prevent parser breakage on empty results across output formats#228

Open
amsminn wants to merge 1 commit intotobi:mainfrom
amsminn:fix-empty-results-format
Open

fix(cli): prevent parser breakage on empty results across output formats#228
amsminn wants to merge 1 commit intotobi:mainfrom
amsminn:fix-empty-results-format

Conversation

@amsminn
Copy link

@amsminn amsminn commented Feb 19, 2026

Summary

  • When search, vsearch, or query return no results (or --min-score filters everything),
    non-default output formats now return parseable empty values instead of plain text
  • Prevents downstream parser breakage for tools consuming --json, --csv, or --xml output

Fixes Issue #183

Changes

Extracts a shared printEmptySearchResults() that emits format-appropriate empty output:

Format Before After
--json "No results found." []
--csv "No results found." header-only row
--xml "No results found." <results></results>
--md / --files "No results found." empty output
default (CLI) unchanged unchanged

Also applies to the --min-score filtering path in outputResults(), which previously
only handled JSON.

Tests

  • Added CLI tests for all output formats (--json, --csv, --xml, --md, --files) with non-matching queries
  • Added tests for --min-score filtering across all formats

Validation

  • npx vitest run --reporter=verbose test/cli.test.ts

- --json: []
- --csv: header only
- --xml: <results></results>
- --md/--files: empty output
- default CLI keeps human-readable message
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments