Before any value

Security & status

Unaudited. Do not use with real funds.The current contracts have not had an external security audit and have no supported public deployment.

What testing covers

What tests do not prove

Passing contract tests does not prove criteria quality, document availability, verifier honesty, arbitrator neutrality, beneficial-owner separation or safety for real value.

Operator surface

The escrow operator can pause and unpause new deal creation and transfer the pauser role. Pausing does not stop settlement, cancellation, withdrawal or the clocks on existing deals. The escrow has no fee or general admin withdrawal function.

Threat model

ThreatContract responseResidual responsibility
Seller signature replayTyped-data domain and consumed acceptance digestIntegrators must pin chain, contract and domain version.
Fee-on-transfer or short-receipt tokenOpening/bond/challenge require exact received amountUse only listed tokens with understood behavior.
Role impersonationCaller checks against signed verifier/arbitrator addressesParties must authenticate role operators before signing.
Verifier or arbitrator silenceTimeout and permissionless finalization paths prevent permanent lockShort windows can still deny a practical chance to respond.
Withdrawal receiver failurePull-based, per-beneficiary credits and partial withdrawalBeneficiary must use a receiver that can accept the token.
Self-dealing historyEvents preserve addresses and allocationsIndexers must disclose beneficial-owner and independence limits.

Critical invariants

Open before production

Reporting a vulnerability

Use GitHub private vulnerability reporting on the source repository. Do not open a public issue containing vulnerability details.

Roadmap, not launch claims

A hosted verifier, meaningful independent reputation, standards runtime integrations, mainnet, an external audit, a revenue model and role marketplaces are deferred until each is implemented and evidenced.