Architecture
This page explains SV3's on-chain architecture, covering contract roles, the permissionless keeper's function, and how solvency checks secure every
SV3 settles pricing, issuance, redemption, reserve custody, floor accounting, fees, collateral, and debt on-chain.
Contract roles
| Component | Responsibility |
|---|---|
| Directory | Protocol configuration, global controls, caps, and implementation discovery |
| Factory | Permissionless market creation and deterministic market identity |
| FloorPolicyController | Recomputes the maximum valid area/surplus floor-raise plan |
| UpgradeableBeacon | Shared FloorMarket implementation for the v1 market generation |
| FloorMarket | Trading, reserve accounting, floor actions, positions, fees, and solvency checks |
| MarketToken | 18-decimal ERC-20 Permit token minted and burned only through market rules |
Curve math is compiled directly into FloorMarket. Each transaction calculates from current market state and validates its complete post-action solvency values before settlement.
What the keeper does
The keeper supplies liveness only:
- Read the controller's current eligibility result and deterministic plan.
- Build a freshness-bound witness.
- Submit
raiseIfEligibleto the market. - Let the contracts recompute and either accept or reject the same plan.
The controller recomputes the plan on-chain, so the submitted witness only proves freshness. The keeper has permission to submit the same call available to any address and earns no protocol bounty.
A keeper outage delays eligible raises. Existing reserve accounting, floor value, trading, positions, and solvency continue under the last completed state.
Interfaces and indexed data
Web interfaces and indexed history present quotes and past activity. Before execution, a transaction refreshes authoritative contract state and must pass on-chain slippage, deadline, cap, pause, and solvency checks.
Upgrade and pause authority are separate trust assumptions described in Risks & Controls.