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.
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.
Read full self metadata. Requires view permission on the running agent,
admitted by the effective permission card and permitted by initialCard.
Stored environment and configuration fields are not filtered by the per-key
permissions used for WASI reads. Pure initialization does not call this API.
Permission denials and backend failures remain typed AgentOperationErrors.
Runs new attempts until the body succeeds. Return operation errors with ?.
Each failed attempt compensates successful operations in reverse order before
starting a new attempt. Attempts append durable history; they never rewind it.
The host resolves the saga policy after each completely compensated failure.
Exhaustion, policy errors and partial compensation return typed failures.
Rust WASM panics abort as programming errors without compensation.
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.