idx-cli/tests/golden/stocks-screen-large-cap.json.golden
hermes fe627496dd test: add golden output parity gate and live A/B compare
Phase 0 of docs/DESIGN.md, before any refactor code:

- tests/golden.rs runs every case in tests/golden/cases.toml (126
  outputs across help, completions, config, cache, all stocks commands
  on MSN and Yahoo mocks, error paths, and ownership queries on a seeded
  fixture DB) and compares exit code, stdout, and stderr byte for byte.
  Regenerate only with UPDATE_GOLDEN=1 for a reviewed output change.
- scripts/live-smoke.sh --compare <old-idx> runs each live case with
  both binaries and fails on differing exit codes, added/missing/retyped
  JSON keys, or changed values for slow-moving data.
- Exclude golden files from the whitespace/EOF pre-commit fixers, which
  would otherwise rewrite pinned help output.

Both gates were fault-injected: a one-word table change fails exactly
the three history goldens, and a binary dropping profile.long_name fails
only the profile live comparison.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 08:33:25 +00:00

35 lines
696 B
Text

exit: 0
--- stdout
[
{
"symbol": "BBCA.JK",
"price": 9875,
"change": 117,
"change_pct": 1.2,
"volume": 12300000,
"market_cap": 1215200000000000,
"week52_high": 10500,
"week52_low": 8000,
"week52_position": 0.75,
"range_signal": "upper",
"prev_close": 9758,
"avg_volume": 10000000,
"as_of": null
},
{
"symbol": "BBRI.JK",
"price": 5100,
"change": 210,
"change_pct": 4.3,
"volume": 22200000,
"market_cap": 780000000000000,
"week52_high": 5400,
"week52_low": 3900,
"week52_position": 0.8,
"range_signal": "upper",
"prev_close": 4890,
"avg_volume": 18000000,
"as_of": null
}
]
--- stderr