mirror of
https://github.com/0xrsydn/idx-cli.git
synced 2026-08-07 01:33:52 +00:00
3.5 KiB
3.5 KiB
Smoke Checks
Use scripts/live-smoke.sh as the reusable smoke runner for shipped CLI surfaces.
The script:
- builds
target/debug/idxonce by default - isolates config, cache, and data under
tmp/live-smoke/<timestamp>/ - records one log file per case under
tmp/live-smoke/<timestamp>/logs/ - supports fast mock-backed runs and slower live-network passes
Common Runs
scripts/live-smoke.sh
scripts/live-smoke.sh --mode full
scripts/live-smoke.sh --mode mock
scripts/live-smoke.sh --group live-table --group live-json
scripts/live-smoke.sh --group live-nonfinite
scripts/live-smoke.sh --group cache --symbol BBRI
scripts/live-smoke.sh --dry-run --mode full
scripts/live-smoke.sh --bin ./tmp/release-install/bin/idx --no-build --mode mock
scripts/audit-msn-fundamentals.sh --tickers BUMI,ADRO,AIMS
Modes
liveruns the default real-network baseline:general,live-table, andownershipmockruns the deterministic baseline:general,mock,cache,routing,errors, andownershipfullruns every group, including live JSON output checks and ownership-import verification
Groups
general:version,completions,config, andcachecommand basicslive-table: all shippedstockscommands in live table modelive-json: all shippedstockscommands in live JSON modemock: all shippedstockscommands against the mock provider in both table and JSON modecache: cache warm,--offline, and stale-cache fallback checks for quote, technical, and MSNprofilerouting: Yahoo/MSN provider routing plus explicit MSN history behaviorerrors: JSON error contract and invalid flag/input checkslive-nonfinite: opt-in live MSN fundamentals checks for known non-finite ticker payloads (BUMI,ADRO,AIMS)ownership: safe ownership smoke checks that do not require imported ownership dataownership-import: live discovery/import hardening checks for supportedabove1import plus expected unsupported legacy-family failures
Notes
- The runner forces
IDX_OUTPUT=tableas its default environment so table cases stay stable; JSON checks use-o jsonexplicitly. - Cache-group warm cases clear the smoke cache before they run so each warm/offline/stale sequence starts clean and stale-cache assertions are not masked by earlier groups.
- Use
--bin <path> --no-buildwhen you want to validate an installed binary instead of the workspacetarget/debug/idxbuild. - Use
scripts/audit-msn-fundamentals.shfor a full CLI valuation sweep across the IDX MSN symbol map. It is intentionally separate from the reusable smoke runner because it is a heavier provider-health audit, not a stable baseline check. - Ownership commands that need imported data are intentionally not part of the baseline runner yet. The current baseline only covers
ownership releasesand the known unsupportedownership import --fetch-bing. ownership syncis still primarily covered by fixture-backed CLI tests rather than the reusable smoke runner.- The new
ownership-importgroup is intentionally opt-in for explicit--group ownership-importruns or--mode full; it discovers live URLs first, imports the supportedabove1attachment into the temp DB, then asserts the currentabove5andinvestor-typeURLs fail with explicit unsupported-schema UX. - The new
live-nonfinitegroup is intentionally opt-in only. As of2026-04-13, the known real repro tickers areBUMI,ADRO, andAIMS. - When a case fails, inspect the per-case log in
tmp/live-smoke/.../logs/before updatingTODO.mdorFEATURE_SPEC.md.