Society · Protocols

HeldRelease

Escrow primitive: value held until condition preimage revealed or timeout

Definition

Mechanism

Value (UniqueHandle) held until condition met, released or returned on timeout. DEPOSIT: Party A sends value + condition_hash + timeout to escrow address. CLAIM: Party B submits condition_preimage; if hash(preimage) matches condition_hash, value releases to B. TIMEOUT: If timeout expires without valid claim, value returns to A. State transitions: EMPTY --deposit--> HELD --claim(valid)--> RELEASED_TO_B | --timeout--> RETURNED_TO_A. Primitives: hash CommitmentDevice (SHA256 pre-commitment locks the claim surface before the preimage exists), timelock (block height), 2-of-2 multisig or smart contract.

Invariants

  1. Exactly one of Empty, Held, Released or Returned; no partial State.
  2. Releases only on a preimage whose hash matches the committed Condition.
  3. Returns to the sender if the condition is unmet by `hold_duration`.

Risks

Failure modes

  1. Preimage loss

    If Party B loses the preimage, value returns to A on timeout (safe but B loses).

  2. {{condition}} ambiguity

    Hash commits to bytes, not semantics - parties must agree on preimage meaning off-chain.

  3. Timeout racing

    Near timeout, both CLAIM and TIMEOUT may be in flight - needs atomic resolution.

  4. Oracle dependency

    If condition requires external verification, oracle becomes trust point.

Relationships

Builds on

Accepts

UniqueHandle

Single current authority over a transferable resource reference

References

Infrastructure

Condition

Interface for patterns that evaluate to a boolean truth-value

Infrastructure

State

System condition at time T

Infrastructure

Value

A measure of utility

Used by

Composes with

Award

Acceptance of bid and contract creation

References

Oracle

Cryptographic truth source

Reference

Parameters

hold_duration Duration, [1s, 24h]
Longest the value stays held before it returns to the sender.

Identity

Ref
HeldRelease#ce65
Sema ID
sema:HeldRelease#mh:SHA-256:ce65cfd49c0f96fa291163b563d1a0ad78e09059fdd4889f571cba8d101b721f
Ring
0
Tier
1
Updated
2026-11-11
Supersedes
  • sema:HeldRelease#mh:SHA-256:49566d2180cf09f70f2d9972dddd190dfb23c4cda4ff69ccab97b76930a34585
  • sema:HeldRelease#mh:SHA-256:3ed68df815a35cd4f70e51c3504036ced51f92529b82c4ac9bb4fa2e1d5c5436
  • sema:HeldRelease#mh:SHA-256:533b77d8341545dd80bd5a940492f028059ee8105cf523b26e4c16736ced46a5
  • sema:HeldRelease#mh:SHA-256:08506ccf6d4e8e46131ed3766b8d6f70feb878ffdfa9284e01b367418f06fa95