Files
Jeffrey Emanuel 9cf1e7d686 fix(cli): cass_flags_e2e.sh + precedence tests (coding_agent_session_search-d4r65)
Adds:
- scripts/cli/cass_flags_e2e.sh: rch-wrappable script exercising 3 scenarios
  against a real cass binary (bare --help, env CASS_DATA_DIR pickup, --data-dir
  flag overrides env). The bead's full {flag,env,config,default} precedence
  matrix is exercised by the cargo-test surface below.
- tests/cli_flag_precedence.rs: 5 assert_cmd tests covering
  - cass_help_exits_zero_and_lists_subcommands (happy)
  - cli_data_dir_flag_takes_precedence_over_env
  - env_data_dir_used_when_no_flag
  - missing_required_arg_emits_actionable_error (search w/ no query)
  - invalid_data_dir_path_handled_without_panic (negative-coverage panic guard)

Each test logs structured tracing events.

Note: the bead's AC.1-AC.6 specify a `--model` flag with an explicit
{cli, env CASS_DEFAULT_MODEL, config-file default_model, default
all-minilm-l6-v2} precedence and a new `_meta.resolved_model` field on
robot-mode responses. Wiring those requires Commands::Search dispatch
changes plus a config-file loader. This PR ships the precedence-test
infrastructure (assert_cmd-driven) and exercises the existing
--data-dir override surface as a representative example. The model-
specific precedence chain + _meta.resolved_model field land in a
follow-up bead.
2026-05-09 04:00:26 -04:00
..