Problem
anglerfish list and anglerfish verify render only a Rich table to the console (src/anglerfish/cli/deploy.py, _run_list). There is no machine-readable output, so scripted reporting, fleet inventory, and SOAR integration all require parsing terminal output.
Proposal
Add a --format json option (default table) to both subcommands. The deployment record dicts already exist in memory — this is serialization and an output branch, no new data plumbing.
Acceptance:
anglerfish list --format json --records-dir X emits a JSON array of records to stdout, nothing else (no banner/table).
anglerfish verify --format json ... emits per-record status objects; exit-code behavior unchanged.
- Tests cover both, following the patterns in
tests/test_cli_smoke.py.
See ROADMAP.md — "Machine-readable output".
Problem
anglerfish listandanglerfish verifyrender only a Rich table to the console (src/anglerfish/cli/deploy.py,_run_list). There is no machine-readable output, so scripted reporting, fleet inventory, and SOAR integration all require parsing terminal output.Proposal
Add a
--format jsonoption (defaulttable) to both subcommands. The deployment record dicts already exist in memory — this is serialization and an output branch, no new data plumbing.Acceptance:
anglerfish list --format json --records-dir Xemits a JSON array of records to stdout, nothing else (no banner/table).anglerfish verify --format json ...emits per-record status objects; exit-code behavior unchanged.tests/test_cli_smoke.py.See ROADMAP.md — "Machine-readable output".