External Durable Streams clients. The host owns HTTP, framing and authentication;
these clients retain only replay-reconstructed checkpoints, buffers and producer state.
Each client owns one golem:agent/durable-streams@2.0.0 resource. Construction
journals its immutable descriptor without HTTP; dropping the client releases it.
Component Model stream constructor generated by wit_bindgen for the
primary bindings world. Used by callers that need to hand a writable
stream<u8> to host imports such as wasi:blobstore outgoing values.
FallibleTransaction is a sequence of operations that are executed in a way that if any of the
operations fails all the already performed operation’s compensation actions got executed in
reverse order.
InfallibleTransaction is a sequence of operations that are executed in a way that if any of the
operations or the underlying Golem executor fails, the whole transaction is going to
be retried.
Ergonomic value.into_typed_schema_value()? form of
try_into_typed_schema_value, mirroring the legacy
IntoValueAndType::into_value_and_type method shape.
A unified interface for the different types of transactions. Using it can make the code
easier to switch between different transactional guarantees but is more constrained in
terms of error types.
Fallible transaction execution. If any operation fails, all the already executed
successful operation’s compensation actions are executed in reverse order and the transaction
returns with a failure.
Generates an idempotency key. This operation will never be replayed —
i.e. not only is this key generated, but it is persisted and committed, such that the key can be used in third-party systems (e.g. payment processing)
to introduce idempotence.
Retry the transaction in case of failure. If any operation returns with a failure, all
the already executed successful operation’s compensation actions are executed in reverse order
and the transaction gets retried, using Golem’s active retry policy.
Same as infallible_transaction, but with strong rollback guarantees. The compensation actions
are guaranteed to be always executed before the transaction gets retried, even if it
fails due to a panic or an external executor failure.
Constructs an Operation from two async closures: one for executing the operation,
and one for rolling it back. The rollback operation always sees the input and
the output of the operation.
Constructs an Operation from two synchronous closures: one for executing the operation,
and one for rolling it back. This is a convenience wrapper around operation for
cases where the execute and compensate logic is synchronous.
A generic interface for defining transactions, where the transaction mode is
determined by the function’s parameter (it can be FallibleTransaction or InfallibleTransaction).