Compare commits

...
Author SHA1 Message Date
iris
bd0e4d1012 fixup! docs(turn-loop): document system inbox messages and link to approvals.md helper events
Per argus review: correct routing subject from 'root/manager agent' to
'submitting agent (root agent for top-level containers; approvals-group
agent for its own subtree)', and drop the deprecated 'manager' term.
2026-07-05 02:28:26 +02:00
iris
2748ce2f4c docs(turn-loop): document system inbox messages and link to approvals.md helper events
The messaging section listed the MCP tools for send/recv/ask/answer/ack_until
but didn't mention the system events agents receive from sender 'system' —
lifecycle events (spawned, rebuilt, killed, etc.) routed to the root agent and
Q&A events (question_asked, question_answered) delivered to any agent. Add a
brief paragraph that names the events and links to the canonical reference in
docs/approvals.md where the full payload shapes and routing logic live.
2026-07-05 02:24:42 +02:00

View file

@ -571,6 +571,18 @@ ttl_seconds?, to?)`, `answer(id, answer)`, `ack_until(up_to)`.
`ack_until(N)` to prevent re-pop. Acked rows never redeliver.
Transient pings (sentinel id 0) have nothing to ack and show no marker.
**System messages** (from sender `system`): lifecycle and Q&A events
delivered as regular inbox messages (same `recv` path; body is a JSON
object with an `event` discriminant field). The **submitting agent**
(the root agent for top-level containers; an agent with the `approvals`
tool group for its own subtree) receives lifecycle events (`spawned`,
`rebuilt`, `killed`, `destroyed`, `container_crash`, `needs_login`,
`logged_in`, `config_ready`, `needs_update`, `approval_resolved`). Any
agent receives Q&A events when it is the declared target
(`question_asked`) or the asker (`question_answered`). Full payload
shapes and routing logic in
[`docs/approvals.md` § Helper events](../approvals.md#helper-events-to-the-submitting-agent).
**Inbox** (`inbox` group): `get_loose_ends(agent?)`,
`cancel_loose_end(kind, id)`, `remind(message, delay_seconds? |
at_unix_timestamp?)`, `request_next_turn()`.