Delivery, Interaction, and Durable Operations
Status: Accepted. Supervisor rotation is the first concrete operation; a reusable platform operation API is intentionally deferred.Context
Meerkat needs three different temporal contracts. Treating all three as raw request/response couples correctness to a live reply route and makes timeout or caller cancellation ambiguous.- Delivery is a signed, routed, fire-and-forget envelope. This remains the
primitive owned by
meerkat-comms. - Interaction is optional, short-lived request/response correlation for
conversational behavior. Existing
PeerResponseandin_reply_tohandling remain a compatibility interaction projection. - Operation is a durable machine-owned command with a stable ID, observable progress, and a terminal receipt. Its truth cannot depend on a live interaction.
Decision
Supervisor rotation is a durable operation scoped to one member session.Consequences
meerkat-commsremains fundamentally one-way and does not become a general RPC substrate.- Supervisor rotation survives sender timeout, handler cancellation, and cold restart without rollback-by-timeout.
- Existing synchronous-looking host APIs become submit-and-observe adapters; their result shape can remain compatible.
- Ordinary current-supervisor verification may continue using the existing interaction compatibility path; it is not rotation authority.
- A reusable
OperationId → OperationState → TerminalReceiptplatform surface is follow-up work after this concrete contract has proven its shape.
