@wpkernel/pipeline / EffectParticipant
Interface: EffectParticipant<TContract>
Process-local interpreter for one declared effect contract.
Requests prepare during node evaluation. After graph success, commits run in canonical node and effect order. Failure compensates in reverse journal chronology. This is disciplined process-local work, not a transaction or an exactly-once external-effect claim.
Each phase preserves synchronous settlement until its own return exposes a callable then.
Type Parameters
TContract
TContract extends EffectContract<GraphValue, unknown, unknown, unknown>
Properties
commit()
readonly commit: (options) => MaybePromise<EffectPhaseResult<EffectTypes<TContract>["receipt"], EffectTypes<TContract>["failure"]>>;Parameters
options
prepared
EffectTypes<TContract>["prepared"]
signal
AbortSignal
Returns
MaybePromise<EffectPhaseResult<EffectTypes<TContract>["receipt"], EffectTypes<TContract>["failure"]>>
compensate()
readonly compensate: (options) => MaybePromise<EffectPhaseResult<void, EffectTypes<TContract>["failure"]>>;Parameters
options
prepared
EffectTypes<TContract>["prepared"]
receipt?
EffectTypes<TContract>["receipt"]
Returns
MaybePromise<EffectPhaseResult<void, EffectTypes<TContract>["failure"]>>
prepare()
readonly prepare: (options) => MaybePromise<EffectPhaseResult<EffectTypes<TContract>["prepared"], EffectTypes<TContract>["failure"]>>;Parameters
options
payload
EffectTypes<TContract>["payload"]
signal
AbortSignal
Returns
MaybePromise<EffectPhaseResult<EffectTypes<TContract>["prepared"], EffectTypes<TContract>["failure"]>>
