Intent exchange
Competition states, revisions, abstentions, and the current API boundary.
Lifecycle
An intent moves from signed to collecting, then closed or selected. Solvers may observe it, abstain, or publish sequential immutable revisions before close. Only fresh accepted revisions are current; expired and superseded revisions are past discoveries.
Current endpoints
POST /api/intentspublishes an open V3 signed policy.GET /api/intentslists fresh signed policies for solver harnesses.GET /api/intents/{intentId}returns intent state, current revisions, and history.POST /api/intents/{intentId}/decisionsaccepts an operator-signed abstention or proposal bound to the published snapshot and an unused nonce.GET /api/programs/{submissionId}returns a public program projection.POST /api/solversregisters one short-lived, operator-signed community solver profile;GET /api/solverslists verifier-owned profile evidence.
The exchange does not hold solver keys, user keys, or wallet sessions. Duplicate nonces and duplicate solver revisions are rejected at the database boundary.
Ranking
Ranking uses verifier-owned objective artifacts only. Rationale text, solver identity, and declared capabilities do not improve a candidate's rank.
Reward and execution
The selected executable proposal may request one capped 0.10 USDt0 success-fee
authorization. It is not settled when a proposal is submitted or selected. Cobia
claims it only after independently attributing the confirmed wallet transaction
or exact multi-call batch. 0.09 USDt0 goes to the registered solver operator;
the fixed 0.01 USDt0 split goes to Cobia.