> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reiy.finance/llms.txt
> Use this file to discover all available pages before exploring further.

# Auction Rounds and Certificates

> How Fisherman groups intents, ranks solver solutions, and signs settlement certificates.

# Auction Rounds and Certificates

The current Reiy runtime uses a hybrid model. <Tooltip tip="The off-chain coordinator that runs solver competition and signs certificates; it holds no funds.">Fisherman</Tooltip> coordinates solver competition off-chain, while the Move contracts verify the signed settlement certificate and protect user <Tooltip tip="Your funds locked inside the intent object until settle or cancel.">escrow</Tooltip> on-chain.

## Auction rounds

Fisherman builds auction rounds from open indexed <Tooltip tip="An on-chain order that escrows your sell tokens and records your terms.">intents</Tooltip>. Compatible intents are grouped by `sellType`, `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 a `SolveResponse` with intent ids, fills, gross payouts, <Tooltip tip="The guaranteed floor in the certificate; any settlement below it is rejected.">protected minimums</Tooltip>, <Tooltip tip="The number Fisherman ranks solutions by; the highest valid score wins.">score</Tooltip>, 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.

<CardGroup cols={2}>
  <Card title="Protections" href="/reiy-protocol/concepts/protections">
    See what the contracts enforce at settlement.
  </Card>

  <Card title="Scoring and ranking" href="/reiy-protocol/reference/core/scoring-and-ranking">
    Read the current validation and ranking rules.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.