@@ -180,6 +180,31 @@ positive declaration/template wakes, negative runtime/bus events, bounded
180180discovery/materialization/PTY queries and writes, continuous-event starvation,
181181and no-op desired-equals-actual behavior.
182182
183+ ## Quiet, evented coordination (R22)
184+
185+ Useful work is silent by default. Presence, status, and durable plan state are
186+ inspectable facts, not invitations to send status messages or poll peers.
187+ Coordination begins only at an understandable event boundary:
188+
189+ | Admitted event | Coordination obligation |
190+ | --- | --- |
191+ | unread inbox message | DING the recipient; process or hand off the request |
192+ | durable failure or true blocker | notify the responsible supervisor; diagnose, recover, or escalate until cleared |
193+ | completion or decision | hand the outcome to the agent or principal that needs it, then become quiet |
194+ | explicitly declared named schedule | perform that named coordination; do not emulate it with an ambient chat or polling loop |
195+
196+ The inbox path follows the source contract in
197+ [ DING requirements] ( ./01-ding/requirements.md ) . A normal supervisor is an
198+ exception handler for failure and truly blocked work, not a continuous manager
199+ of healthy agents. An intentionally extended supervisor persona may declare a
200+ higher coordination cadence. CoS is one non-normative example only: st2 does not
201+ require or type that role, and R22 grants it no standardized authority.
202+
203+ This boundary does not define the still-open schedule grammar in DQ1; it only
204+ requires a named declared event rather than an implicit loop. A transport
205+ partition may delay coordination, but it does not stop independent host-local
206+ work or create a global availability dependency.
207+
183208## Targeted reconciliation (R19)
184209
185210` st2 up --materialize-only --task <host.agent.task> ` resolves one exact local
0 commit comments