fix(broker): route all wakes through sqlite, remove transient ping buffer

This commit is contained in:
damocles 2026-07-05 11:55:40 +02:00
commit fac326aa35
9 changed files with 84 additions and 215 deletions

View file

@ -579,19 +579,9 @@ pub enum Request {
/// Wake-up event injected from inside the container. Recipient is
/// implicit (this agent); `from` is caller-chosen. See
/// `docs/conventions.md::Wake injection` for the trust model and
/// typical callers.
///
/// When `transient` is `true` the server delivers the wake signal
/// through an in-process channel only — no sqlite write, no
/// redelivery on restart. Use this for ephemeral notifications (e.g.
/// bash task completions) where persistence is unnecessary and would
/// cause duplicate delivery after a harness restart.
Wake {
from: String,
body: String,
#[serde(default)]
transient: bool,
},
/// typical callers. The wake is persisted in the sqlite broker
/// like any other message — the agent can ack it via `AckUntil`.
Wake { from: String, body: String },
/// Last `limit` messages addressed to this agent, newest-first.
/// Non-mutating — pulls from the broker without delivering. The
/// per-agent web UI uses this to render its own inbox section.