Skip to content

Silent empty on typed searches: '--type F-3' miss is indistinguishable from 'no such filings' — surface totals and coverage #69

Description

@JordanCoin

Problem

A --type filter that matches nothing yields entities=[], error=None → the CLI prints 'No results found' (cli.py:3942-3946). The user cannot distinguish (a) the company truly has no such filings, (b) the form string is misformatted, (c) the form family isn't indexed by EFTS, (d) the hit exists but is outside the default size=25.

Real-world failure (2026-08-11): records search "Webull Corp" --source sec --type F-3 returned empty while the F-3 (filed 2026-06-26) exists on EDGAR. In a falsification workflow, a silent empty reads as 'record is clean' — the most dangerous possible failure.

Proposal

  • Always print {total_hits, shown, source, query_echo} — EFTS returns the total; show it even when 0
  • On zero hits with a --type filter, validate the form string against EDGAR's known form-type list and say 'form type not recognized' vs '0 filings of this type indexed'
  • Exit code or --strict flag so scripts can distinguish empty-success from suspect-empty

Related: base.py:165-221 already separates transport failure from genuine zero — this extends that honesty one level up.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions