Problem
tools/cli/src/main.rs exposes MDDS endpoints (registry-driven) and FPSS streaming but has no flatfile subcommand. CLI users cannot pull a whole-universe blob without writing Rust.
Proposed solution
Add a flatfile subcommand group:
tdx flatfile request --sec option --req trade-quote --date 20240315 --out blob.csv --format csv
tdx flatfile request-raw --sec option --req open-interest --date 20240315 --out blob.bin
tdx flatfile decode --raw blob.bin --sec option --out blob.jsonl --format jsonl
tdx flatfile option open-interest --date 20240315 --out oi.csv
tdx flatfile stock trade-quote --date 20240315 --out tq.jsonl --format jsonl
Mirror parameter validation and --format {csv,jsonl} handling from the Rust core. Print the decoded row count and on-disk size on completion.
Impact
CLI now covers all three public surfaces. Useful for ad-hoc backfills and cron jobs.
Problem
tools/cli/src/main.rsexposes MDDS endpoints (registry-driven) and FPSS streaming but has noflatfilesubcommand. CLI users cannot pull a whole-universe blob without writing Rust.Proposed solution
Add a
flatfilesubcommand group:Mirror parameter validation and
--format {csv,jsonl}handling from the Rust core. Print the decoded row count and on-disk size on completion.Impact
CLI now covers all three public surfaces. Useful for ad-hoc backfills and cron jobs.