Escrow Flow
Call the EscrowFactory and deploy a new escrow contract instance.
Select role admin to enable.
Ensure the deployed escrow contract has enough native tokens for bridge callbacks and on-chain operations.
A test ERC20 TestToken contract can be deployed to simulate real-world token transfers. This step can be skipped.
Approve the escrow contract to spend tokens from the buyer address.
Deposit approved tokens into escrow from the buyer address.
If there's a dispute, the buyer or seller can request adjudication, putting the escrow into a paused state.
An adjudicator address (or contract) is assigned to the escrow to take over resolution.
The adjudicator must confirm their role and accept responsibility for resolving the dispute.
The adjudicator issues a final ruling, sending funds to either party and triggering any optional callbacks.
Reactive subscriptions are automatically cleaned up after resolution. The escrow becomes immutable and inactive.