Contract.Notifications
type request
type outcome =
| Drained of reduction
| Awaiting of request
val run : reduction -> (outcome, string) Stdlib.result
Drains accepted intents until empty or until a strategy callback must suspend the transition. No later phase runs with pending feedback.
val has_pending : reduction -> bool
val payload : request -> context * event
val resume : request -> intent list -> reduction