v0.8.2 — readable output across every report command
Extends the width-aware, colour-gated treatment that landed for forge status
in v0.8.1 to every other plain-print surface, via a shared forge/render.py
(paint · fit · tilde · term_width · strip_ansi). One theme everywhere: output is
collapsed to a line and fit to the ACTUAL terminal width with an ellipsis rather
than wrapping into an unreadable block, and colour is emitted only to a real TTY
(honours NO_COLOR and TERM=dumb) so piped or redirected output stays clean text.
- receipts coloured ✓/✗ verdict, ~-shortened project, evidence fit to width
- learnings coloured verified mark, facts fit to width
- trace coloured header + action, FAIL in red, active flags in yellow,
~-shortened cwd, a box-drawn divider sized to the header - run one-shot event lines fit to width (were fixed [:80]/[:70]) with
ok/fail, escalate/borrow and inbox lines coloured
The interactive chat TUI already has its own rich renderer (in-chat actions,
diffs, file explorer, approval gate) and is unchanged. Stdlib-only, zero runtime
deps. 526 tests green (+10 for render).