External routing integrations sometimes need to know, before a user message is
persisted, whether the runner will open a new turn, steer the active turn, or
buffer the message for the next turn. Omnigent already makes that decision
atomically inside its per-session FIFO gate, but the public server surface does
not expose the decision to REQUEST policies or callbacks.
I propose a narrow, experimental opt-in seam:
- the runner reserves its existing decision and returns an opaque admission ID,
monotonic input sequence, disposition, stable lineage ID, and active response
ID;
- an optional public app-factory admitter selects which sessions use the seam;
- REQUEST policy receives the frozen admission data before persistence;
- ALLOW consumes the reservation exactly once, while DENY, timeout, or
disconnect cancels it; and
- the opt-in acknowledgement and callback expose the same correlation joined
to the persisted item ID.
The default remains fully stock: no extra runner call, response field, timing
change, persistence, or migration. A selected session fails closed if admission
is unavailable rather than silently running without correlation.
The prototype includes race coverage for concurrent idle inputs, live steering,
buffered continuation ordering, cancellation and TTL, duplicate or foreign
consumption, fork and resume isolation, and a zero-call control path.
External routing integrations sometimes need to know, before a user message is
persisted, whether the runner will open a new turn, steer the active turn, or
buffer the message for the next turn. Omnigent already makes that decision
atomically inside its per-session FIFO gate, but the public server surface does
not expose the decision to REQUEST policies or callbacks.
I propose a narrow, experimental opt-in seam:
monotonic input sequence, disposition, stable lineage ID, and active response
ID;
disconnect cancels it; and
to the persisted item ID.
The default remains fully stock: no extra runner call, response field, timing
change, persistence, or migration. A selected session fails closed if admission
is unavailable rather than silently running without correlation.
The prototype includes race coverage for concurrent idle inputs, live steering,
buffered continuation ordering, cancellation and TTL, duplicate or foreign
consumption, fork and resume isolation, and a zero-call control path.