be's verb reports must all speak ONE output model: stream color to a tty, compose ONE H hunk per (sub)module for --tlv, each headed by a pale-yellow state banner — built through ROWS, never per-site fprintf or a pasted THEME_BANNER. Today only the per-file tables comply; the summaries / confirmations (be get, post/put, status!) still print raw. This is the umbrella; per-verb wiring lands as the child tickets GET-026, STATUS-001, POST-018.
dog/ROWS.c) is the shared builder: status opens it with
uri="status:" + ROWS_BATCH → one banner hunk (SNIFF.exe.c:457).
empty_uri + ROWS_MODE_KEYED;
rows_stream_one (ROWS.c:172) zeroes ts/verb/uri → flat, NO banner.
HUNKu8sFeedBanner
keyed on the hunk's uri/verb/ts and the global HUNKMode.
DOG_BANG_VERB/cli.bang); be x! ≡
be x --force — the STATUS-001 extended toggle.
HUNKMode-keyed (color stream on tty / one H hunk on --tlv).
on an empty result) — so KEYED (get/clone) matches BATCH (status).
links back here and reuses the same ROWS banner path.
header. dog/ROWS + sniff/ only; no abc/ (abc-changes-need-review).
dog/ROWS.c: a streaming table with a non-empty
uri/verb/ts emits its banner once (and on empty), vs zeroing it — the single enabler every child depends on.
and --tlv relay stay in ROWS/HUNK.
dog/ROWS.c: streaming banner-once + emit-on-empty (the shared core).be get = default GET + resulting-state banner.be status! extended + be status:<path>/ sub-scope.