Surplus Market Blueprint
Surplus is a market for prepaid inference credits.
Buyers acquire discounted credits. Operators sell or make markets in those credits. Settlement happens on-chain, while the order book and quoting run off-chain inside the operator venue. When an operator is bonded as an issuer, it must back credit lots with inference it runs or controls.
Source repo: internal Tangle repository. The public surface is the hosted app and these docs until the repo is public.
What happens in the product
- An operator runs a venue.
- Buyers and sellers place orders or request firm quotes.
- The venue matches orders and emits settlement intents.
- Signed fills settle on-chain.
- Credit lots redeem against inference capacity.
- If an issuer defaults, settlement and slashing paths decide the remedy.
The order book is only the entry point. The hard part is making a credit redeemable.
Operator shapes
| Binary | Use |
|---|---|
surplus-operator-lite | HTTP venue only. Good for local and venue API work. |
surplus-operator | Full Tangle runner, built with the blueprint feature. Runs as a real blueprint operator. |
The full operator runs the venue inside a Tangle BlueprintRunner. The venue starts as a background service, and jobs can drive actions such as listing an instrument, status checks, and workflow ticks.
Venue API
| Route | Purpose |
|---|---|
POST /order | Place a limit order and produce fills or settlement intents. |
POST /cancel | Cancel a resting order. |
POST /book | Read depth, reference price, and operator inventory. |
POST /mm-tick | Pull risk-gated quotes from the market-making sidecar and replace quotes. |
POST /ref | Push a reference price. |
POST /order-signed | Place an EIP-712 signed firm order. |
POST /rfq | Request a signed short-TTL quote. |
POST /rfq/fill | Cross a firm quote with a countersigned taker order. |
GET /settlement/outbox | Read fills waiting for settlement. |
POST /settlement/flush | Submit the outbox through the chain path when enabled. |
The operator is the venue. The mm-sidecar suggests quotes. The risk gate decides whether those quotes can be placed.
Jobs
The blueprint manifest defines:
| Job | Current status |
|---|---|
list_instrument | Implemented. |
configure | Reserved placeholder in the current compact definition. |
start_making | Reserved placeholder in the current compact definition. |
stop_making | Reserved placeholder in the current compact definition. |
status | Implemented. |
workflow_tick | Implemented. Pulls reference price, sidecar quotes, and updates operator quotes. |
The placeholders preserve compact job index compatibility. Do not remove them without changing the runtime assumptions.
What to read next
| Page | Use it for |
|---|---|
| Operator Requirements | Venue host, settlement keys, inference backend, CLOB, and privacy mode. |
| Settlement and Inference | Credit lots, redemption, attester quorum, SP1 path, and inference proof boundary. |
| Dapp Integration | Current link-out app, metadata gap, protocol state, and live venue checks. |
Sources used
This page is grounded in the repo README.md, BLUEPRINT.md, blueprint.toml, deploy/blueprint-definition.toml, deploy/blueprint-metadata.json, docs/testnet-release.md, operator/src/bin/blueprint.rs, and operator/src/http.rs.