feat(cli): add --quiet to doberman demo (#441) - #447
Conversation
Mirrors scan --quiet: suppresses the banner, per-scenario narration, and the closing 'doberman dash' hint, keeping only the summary line/table and the exit code. Lets 'doberman demo' run as a CI smoke test without polluting build logs. Display-only; scenarios and the engine path are untouched. Closes DobermanCore#441
|
@fu351 — flagging this for you. CI: 5/6 checks are green ( Root cause: test collection dies with the same error in ~230 unrelated modules: traced through class DictReader(csv.DictReader["FeatureName"]):
It's a fresh regression, not a pre-existing bug in this repo's code: the failing job's pip resolve pulled Confirmed this reproduces against a clean |
|
Thanks @blackcoderx, and thank you for the river diagnosis, tracing it to the 0.25→0.26 |
Adds the one direct test the flag was missing: a scenario mismatch under --quiet still exits nonzero and still prints the MISMATCH detail -- narration is suppressed, the failure signal never is. Uses the same mismatch-forcing technique as test_demo.py's existing mismatch tests. Also fixes docs/CLI.md's machine-readable-flags table, which copied scan's fully-silent --quiet wording onto demo. demo --quiet keeps the summary line/table (CHANGELOG.md already described this correctly); the table now says so instead of claiming demo goes fully silent. Addresses review feedback on PR DobermanCore#447.
|
@fu351 Both addressed, pushed as cbf31be:
Left the |
Slice
--quiettodoberman demoso it can run as a CI smoke test #441 —doberman demo --quietWhat this PR does
Adds a
--quiet/-qflag todoberman demo, mirroringscan --quiet. Whenset, it suppresses the opening banner, the per-scenario narration line, and the
closing "Run
doberman dash" hint — keeping only the summary (silent on a fullmatch, loud with details on a mismatch) and the exit code. This lets
demorunas a CI smoke test ("is the engine alive") without polluting build logs.
Display-only: the scenarios and the engine decision path are untouched.
Tests added (run in CI)
tests/unit/test_cli_demo_quiet.py—demo --fast --quietproduces farfewer stdout lines than
demo --fast(banner/narration/hint gone), exitcodes match between quiet and loud runs, and the quiet run still reports the
summary line.
Public-release safety (doberman-core only)
Security checklist
Edge cases covered / Deviations from plan / Risks introduced
Written with Claude Code assistance.
Closes #441