@lssm/lib.work-runtime
v3.0.1
Published
Pure Work Graph reducers, event processing, recurrence, idempotency, and sync conflict decisions.
Readme
@lssm/lib.work-runtime
Pure, provider-neutral Work Graph runtime behavior.
It reduces immutable Work events, enforces aggregate revision order, expands recurrence, applies native/remote/merge field authority, detects three-way scalar conflicts, and exposes storage/projection ports. Concrete PostgreSQL, queue, search, realtime, connector, and object-store adapters belong in integrations. Unknown event types, revision gaps, open merge conflicts, and aggregate identity or scope drift are rejected fail-closed.
./outbox-dispatch supplies the provider-neutral worker boundary for
projection, authorized realtime, and OPA reoptimization delivery. It requires
destination-specific leased records and owner-fenced acknowledgements from the
durable adapter; unknown destinations or missing consumers fail closed.
Durable command ports expose optional lookupCommitted so services can resolve an authorized retry before object-existence or revision validation. The PostgreSQL adapter fences the request identity and returns its persisted receipt, or an idempotency conflict for changed input. Managed hosts keep lookup, projection reads and commit in one outer authority transaction, so concurrent identical creates return one committed event. Other adapters must implement this receipt lookup to qualify equivalent retry behavior.
Work outbox lease contract v2 requires deliveryAttempt on acknowledge/release, copied from the claimed record's deliveryAttempts. The dispatcher supplies it automatically. Matching a worker name and future expiry is insufficient: settlement also checks the exact persisted attempt. Old or missing attempt values fail closed. Update custom callers before upgrading; no database migration or stored-record reset is required.
