Contracts
| Contract | Responsibility |
|---|---|
| Governance | Owns controller and timelocks protocol-admin operations. |
| Controller | Accounts, spokes, oracle policy, risk checks, liquidation, flash loans, strategies, and pool ownership. |
| Pool | Custody and accounting rows keyed by HubAssetKey. |
| DeFindex strategy | Adapter configured for one HubAssetKey and spoke_id. |
Market Coordinate
All market-specific flows use:Account Risk
Accounts bind to one spoke. The spoke decides collateral flags, borrow flags, caps, LTV, liquidation threshold, liquidation bonus, fee, and optional oracle override for each hub asset.Pool Boundary
The controller is the pool owner. Users do not call pool mutators directly. The pool tracks internalcash, indexes, scaled supply, scaled debt, and revenue.
External Boundaries
- Oracle output is validated before use.
- Aggregator output is checked by token balance deltas.
- Flash-loan receivers are arbitrary code; the pool verifies repayment.
- Token contracts must be fixed-balance assets.
Keeper
The keeper is off-chain. It renews TTL and may callupdate_indexes. It is
configured with launched HubAssetKey markets.
