Skip to content

Unpriced-models warning is truncated at every terminal width, hiding both the model list and the fix command #969

Description

@therickfactr

Problem

The unpriced-models warning in codeburn report is truncated below usefulness at every terminal width, so neither the affected models nor the fix command can be read from the output.

Evidence

At an 80-column-ish default:

│ ! 3 models unpriced at $0, fix: codeburn model-alias (auto-ge… │

Widening the terminal does not help — the warning lives in a fixed-width panel in the report layout, so at COLUMNS=400 it still clips:

$ COLUMNS=400 codeburn report | grep -i unpriced
│ ! 3 models unpriced at $0, fix: codeburn model-alias (auto-genius, big-pickle, .… │

The third model name is never reachable, and the fix command is cut before its arguments — codeburn model-alias alone is not runnable.

Why it matters

The warning's whole purpose (per #638) is to make unpriced usage actionable in the product itself rather than behind CODEBURN_VERBOSE=1. As rendered, it tells the user a problem exists but withholds both which models are affected and the command to address it. Finding the third name meant reading the daily cache directly, which is the opposite of the intent.

The full renderer produces useful text — it is only the panel that clips it:

Unpriced   3 models at $0: auto-genius (35.3M tok), big-pickle (33.9K tok), …
           Fix: codeburn model-alias "<model>" <known-model>

Suggested direction

Any of these would resolve it; listing options rather than assuming a preference:

  1. Wrap the warning across lines inside the panel instead of clipping, so the model list and the fix line both survive.
  2. Keep the panel line as a short pointer (! 3 models unpriced at $0 — see codeburn models --unpriced) and put the detail behind a command that can print at full width.
  3. Let the warning render full-width outside the fixed panel grid, as the Totals block does.

Option 2 has the side benefit of giving a stable way to list every unpriced model, not just the first three — useful when the count exceeds the +N more cutoff.

Environment: codeburn 0.9.20 (npm), macOS 26.6.1 (25G76) arm64, Node v26.5.0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions