Rejections, conflicts, and recovery
Version conflicts
Section titled “Version conflicts”Every run and action mutation carries an exact version. A 409 means another
actor or worker committed a winner. Refresh the run, review current state, and
decide whether the intended action is still valid. Do not blindly replay stale
request bodies.
Request identity mismatch
Section titled “Request identity mismatch”An effect key permanently identifies its canonical kind and request digest. Reusing a key with different bytes fails the run. Fix and save the workflow, then start a new run. Do not change a started run.
Human conflicts
Section titled “Human conflicts”Only one human response wins. Later exact retries return the winner; a different choice or form value conflicts. Organisation-admin overrides are explicit and audited.
Safe conflicts
Section titled “Safe conflicts”A changed Safe nonce, owner set, threshold, or version invalidates stale preparation. STS mutations serialize and ambiguous writes reconcile by exact Safe transaction hash and signer. A rejected attempt cannot later be signed or executed.
EOA conflicts
Section titled “EOA conflicts”Only the earliest call in the earliest chain/account lane is actionable. A pinned nonce, active claim, or recorded hash prevents a second wallet request. Wrong-sender and wrong-nonce hashes are rejected.
Cancellation
Section titled “Cancellation”Cancellation stops future txcast coordination. It cannot recall a signature, provider proposal, wallet prompt, or transaction that may have escaped. Such account lanes remain fenced until reconciliation proves the final state.