BRO-002: unify action/status output one table-hunk per (sub)module

Now
DONE

Beagle today models the SAME <time> <verb> <path> row two incompatible ways: the action verbs (get/put/delete, plus post/patch/keeper banners) emit ONE status hunk per event carrying the row in the hunk's ts/verb/uri HEADER fields with empty body, while be status and the ls: projector emit ONE content hunk whose text body is the WHOLE formatted table with per-column tok32 colors. The split is a pure renderer heuristic (hunk_is_status) with no field backing it, so two render paths draw one visual line. This ticket converges everything onto ONE model: every verb emits a content hunk per (sub)module, body = a row table with colored tok32 tokens AND U-tok links (paths→blob:/cat:, commits→commit:?<sha> via the COMMIT-001 primitive), headed by that module's uri. The hunk_is_status dual path is deleted. This subsumes BRO-001 (the banner becomes the per-module hunk header) and unblocks BLAME-005. See Projector, Bro, Verb channels, CLAUDE.

Input

Context

Goals

Constraints

WIP

Design decisions

TODOs

Blockers and bummers

Outcome