0056 — #agent-smith carries big updates and the queue rollups; an automated per-event post goes to a DM, and SEVERITY decides the contested middle

The problem

#agent-smith is Smith's two-way brain channel, and it had become a log. Measured from the outbound ledger (~/.claude/smith-state/outbound-ledger.db, table posts, channel C0BDW7G1Z62, 30 days) plus a Slack scan: 1,520 top-level bot posts, of which 785 were ✅ board-row closures from one specialist, 177 were "Fleet check: TROUBLE", 70 were review-wait nag roots carrying another 134 bot-only thread replies, and a long tail of compact-delivery failures, pre-queue alarms, reviewer-pool checks, driver progress lines and git-hygiene notes.

Smith deleted 1,227 of them by hand, taking the window down to 254. A hand deletion is not a fix — the emitters were untouched, so the channel would have refilled within weeks. The thing worth writing down is not the cleanup; it is where each post goes from now on, and what stops a new emitter quietly aiming at the channel again.

The decision

One mechanism, not N channel decisions. Every redirected emitter reads ONE shared destination reader, in the shape lib/mini_alerts.py already proved on the preceding dock (post_args() yielding an explicit --channel, a file on disk because these posters run under launchd and cannot see an env var, an env seam for tests, and never a silent fallback to the team channel). A per-tool #agent-smith → D… string swap is explicitly refused: six hardcoded ids is the failure the preceding dock existed to delete, and re-introducing it one emitter at a time is the same defect with better manners.

What the channel keeps: big Agent Smith updates, the nightly and morning queue rollups, every human-addressed post and thread reply, and decision relays. A reply inside a person's thread is not an automated per-event post and is not touched — including the receipts this dock itself posts into Gera's thread.

What leaves for the DM: the automated per-event families — board-row closures, fleet checks, review-wait nags, compact-delivery failures, pre-queue alarms, reviewer-pool checks, driver progress lines, git-hygiene.

The contested three, by SEVERITY rather than by family (the Driver's ruling, not a founder's): a per-event banner goes to the DM; a state change meaning the fleet CANNOT RUN — fleet-down, red main — stays in the channel as a big update. The reasoning, from the Fable round: the two standards overlap narrowly, covering only deploy-freshness (53 posts/14d) and fleet-down (9/14d), so freezing every redirect until the founders reconcile would hold up work nobody disputes while the channel refilled. Fleet-down is sustained-only (120s sustain, 900s cooldown) — a rare state alert that sits inside Gera's own "big updates stay" carve-out, and routing it to a single-reader DM would recreate the 2026-07-13 burial that alert was built to prevent. Fede's rationale argues "not #alerts" rather than channel-over-DM, so moving deploy-freshness to the DM honours both texts rather than choosing between them.

⚠️ Red main is kept by the SEVERITY RULE, not by that overlap evidence, and the distinction matters. The measured overlap covers only deploy-freshness (53 posts/14d) and fleet-down (9/14d). Red main has no measured overlap and no measured cadence — it is kept in the channel because "main is red" is a state meaning the fleet cannot ship, which is the same test applied to fleet-down, and for no other reason. A reader must not take the Fable measurement as covering it. If its cadence turns out to be per-failing-run rather than per-state-transition (see the cost section, where this is listed as unverified), the severity rule stops applying to it and it should move.

Deploy-freshness is the lowest-confidence piece of this ruling and should be the first thing reverted if Fede objects. It rests on a reading of his rationale rather than on a measurement, and the cost section concedes that verdict-threading into a DM is untested. It is one module constant; reverting it is one small PR.

What this costs if the narrowing is wrong

Stated because a medium-confidence ruling that hides its downside is worse than no ruling:

Why a guard, not just a redirect

The backlog was deleted by hand once. A redirect that nothing enforces decays the first time somebody adds an emitter, and the preceding dock already paid for this lesson: its guard test is what proves each poster reads the one key, derived per file rather than pinned to a hardcoded list, and proven by deleting a poster's line and watching the build fail naming that poster. This dock ships the sibling of that test. A destination standard with no test is a comment.