Modules
Durable timers and async invoke execution for Statifier, backed by Oban.
Configuration for running Statifier effects on a host-supplied Oban instance.
The delivery seam a completed invoke goes through - the run-liveness
check at the done.invoke door, the same shape
StatifierOban.Timer.Delivery gives a fired timer.
The default StatifierOban.Invoke.Delivery: reports a completed invoke
back into a live Statifier.Session through
Statifier.Session.done_invocation/3, behind the same two-step
liveness check StatifierOban.Timer.Delivery.Session runs for a fired
timer.
The Oban-backed base for a Statifier.Invoke.Handler implementation:
use it and the host's <invoke type="..."> runs its work in an Oban
job on the host-supplied instance, with completion delivered back into
the run as done.invoke.<invoke_id> through
StatifierOban.Invoke.Delivery.
The wire shape between a %Statifier.Effect.Invoke{} and the args map
an invoke-handler Oban job stores.
The Oban worker a base-handler invocation becomes.
Tagged :erlang.term_to_binary/1 payloads for the host-opaque fields a
job's args carry.
Consumes {:send_delayed, %Statifier.Effect.SendDelayed{}} into a
uniquely-keyed job on the host's Oban instance.
{session scope, send_id} - the key a cancel addresses.
{session scope, ordinal} - the compact dedup key ADR-0059 decision 3
blesses, read off the stored %Statifier.Effect.SendDelayed{}.
The delivery seam a fired timer job goes through - the run-liveness check st-ADR-0054 decision 4 requires, plus the feed-back itself.
The default StatifierOban.Timer.Delivery: feeds a fired event back
into a live Statifier.Session, behind the two-step liveness check
statifier-ex's docs/durable-timers.md spells out.
The wire shape between a %Statifier.Effect.SendDelayed{} and the args
map an Oban job stores.
Derives the two scoped keys a durable-timer store needs, per ADR-0054
decision 3 as amended by ADR-0059, and docs/durable-timers.md ("Keying
your store") in statifier-ex.
The Oban worker a %Statifier.Effect.SendDelayed{} becomes.