Menu

#344 cli: one message-severity vocabulary (error:/warning:/note:) instead of four

closed
nobody
2026-08-11
2026-08-11
Anonymous
No

Originally created by: fu351
Originally owned by: floze-the-genius

What

src/doberman/cli/main.py speaks four different message-severity dialects for "something didn't happen":

  • bare messages (lines 347, 406, 457, 877, 956, 982)
  • warning: (629, 888)
  • note: (1537)
  • error: (29 occurrences)

A user can't tell from the prefix whether a line is fatal, advisory, or informational. (Line numbers current on main as of 2026-08-11 - re-grep before you start.)

The fix

  1. Pick one scheme - the natural one already dominates: error: for failures (non-zero exit), warning: for something skipped or degraded (exit 0), note: for purely informational asides. Bare messages become one of those three.
  2. Sweep cli/main.py's echo call sites to match. Keep exit codes exactly as they are - this is prefix-only, no behavior change.
  3. Extend a test to lock the convention where it is load-bearing (e.g. the bad-mode-choice path asserts its error: prefix in tests/unit/test_setup_wizard.py - follow that pattern for one or two of the re-prefixed sites).

Flagged in the 2026-08-05 UX audit and carried through the 2026-08-11 re-score; everything else at its severity is fixed, so this is the last P2 in the CLI surface.

Related

Tickets: #346

Discussion

  • Anonymous

    Anonymous - 2026-08-11

    Originally posted by: floze-the-genius

    I’d like to claim this. I’ll re-audit the src/doberman/cli/main.py echo sites against the issue’s error: / warning: / note: definitions, make prefix-only changes while preserving every exit code and stdout/stderr behavior, add focused coverage for one or two representative re-prefixed paths, keep the required docs in sync, and run the full contributor checks before opening the PR.

     
  • Anonymous

    Anonymous - 2026-08-11
     
  • Anonymous

    Anonymous - 2026-08-11

    Ticket changed by: fu351

    • status: open --> closed
     

Log in to post a comment.