Economics & incentives◆ Points era

The S1 points program

Earn 1% of settled volume as points on both sides of the book. The same rows re-denominate at TGE.

The base rate is simple: every settled dollar of volume mints 100 bps of points, which is 1% back. The unit is bps, where 10,000 bps equals $1 of volume-equivalent. Both sides of the book earn it. The asker earns on what they were charged; the provider earns 1% of settled net serve revenue, after the 7% router fee. Two multipliers apply on the asker side, both derivable from the settlement row itself: turns inside a session earn +0.25×, and a wallet's first served fill in a model class earns 2×.

Points mint only on settled volume. A refunded request, a failed settlement, or a successfully challenged fill earns nothing. That rule is not enforced by a clawback job; it holds by construction, which brings us to the design decision that defines the whole program.

No second ledger

There is no points database. Balances are pure derivations over the settlement rows the router already keeps: usage_records, the atom of settlement that everything money-related derives from, and the challenge table that integrity.ts materializes. Earned bps are a SQL expression over settled usage rows; stakes, forfeits, bounties, and slashes are sums over challenge rows. No write path, no backfill risk, and every surface that writes a usage record (web, CLI, SDK, raw API) accrues identically for free.

This is also why the program can promise that the same rows re-denominate at TGE. When the token launches, nothing migrates: the derivation re-reads the same settlement history in a new denomination. A balance you can recompute from receipts is a balance nobody can quietly edit.

The pre-TGE stake asset

Before the token and the USDC provider vault exist, points are the stake asset for the market's integrity game. An approved challenger locks settled bps to open a receipt-scoped challenge: the stake is max(25 bps, 1× the receipt's own asker earn), so challenging a $2 fill costs the points from $2 of your own settled spend. An upheld challenge slashes the serving provider's ledger at max(250 bps, 25× its net earn on the receipt), pays 50% of the slash to the challenger as bounty, and burns the rest. A rejected challenge forfeits the stake. Ambiguous unwinds everything.

published termsThe staking terms are published constants, versioned s0-2026.07.1. Read them, and the exact stake for any receipt, from GET /v1/model-integrity/challenges/quote before signing anything. Your balance, tier, rank, and challenge record read from GET /v1/points/:wallet or omnious points in the CLI.
As a customerYou are already earning if you are using the market: 1% of every settled dollar, doubled on your first fill in a new model class. Your balance is a query over your own receipts, and you can verify it the same way you verify a receipt.
As a providerServing mints the same points at 1% of your net revenue, but the ledger is also your integrity collateral: an upheld challenge slashes it at 25 times what the offending fill earned you. Honest serving compounds; substitution costs about 25 honest fills.

Weights and tier thresholds are versioned constants in points.ts: they are the published terms, changed consciously and never silently. For what happens when a challenge resolves, see The three verdicts.