Auction Rounds and Certificates
The current Reiy runtime uses a hybrid model. coordinates solver competition off-chain, while the Move contracts verify the signed settlement certificate and protect user on-chain.Auction rounds
Fisherman builds auction rounds from open indexed . Compatible intents are grouped bysellType, buyType, and targetEpoch, then chunked up to maxBatchSize.
Auction rounds move through these statuses:
| Status | Meaning |
|---|---|
collecting | The round is gathering intents until the collection window matures. |
solving | Fisherman is calling enabled solver endpoints with a SolveRequest. |
solved | A valid winner was selected and a certificate was issued. |
settling | Fisherman has asked the winning solver to submit settlement. |
settled | Settlement succeeded or was recorded as complete. |
expired | The round or certificate missed its usable deadline. |
failed | Solving or settlement failed and operator retry may be needed. |
Winner ranking
For the current Fisherman implementation, each enabled solver returns aSolveResponse with intent ids, fills, gross payouts, , , and expiry. Fisherman validates the response shape, token pair, epoch, expiry, fill bounds, duplicate intent ids, user floors, and protected minimums.
The highest valid score wins. If scores tie, Fisherman breaks the tie deterministically by solver endpoint id.
Certificates
After selecting a winner, Fisherman signs a settlement certificate. The certificate binds the protocol state id, config id, key version, current epoch, solution id, solver address, token types, intent ids, fills, gross payouts, protected minimums, and expiry. Settlement can happen immediately after a valid current-epoch certificate is issued. The contracts do not expose a separate on-chain bid, selection, or settlement phase gate.Protections
See what the contracts enforce at settlement.
Scoring and ranking
Read the current validation and ranking rules.