Contract Architecture
The CLOB system is composed of multiple contracts with clearly defined responsibilities and interactions.Contract Hierarchy
Contract Responsibilities
| Contract | Layer | Responsibility |
|---|---|---|
| CLOBRouter | Entry | User-facing API for orders, deposits, withdrawals |
| CLOBSwapRouter | Entry | Optimized swap execution across pools |
| PoolManager | Management | Pool lifecycle, trading rules, OrderBook deployment |
| OrderBook | Core | Order matching and trade execution |
| BalanceManager | Core | Fund custody, locking, fee collection |
| HooksRegistry | Extension | Custom hook registration and execution |
| MarketMakingVault | Extension | Automated market making strategies |
| VaultGauge | Extension | Incentive distribution for LPs |
Beacon Proxy Pattern
OrderBook contracts are deployed as Beacon Proxies, allowing efficient upgrades across all trading pairs. Benefits:- Single upgrade transaction affects all pools
- Lower deployment cost per pool
- Consistent behavior across all trading pairs
Authorization Model
The system implements a strict authorization hierarchy:Caller Authorization
| Contract | Authorized Callers |
|---|---|
| OrderBook | CLOBRouter, PoolManager |
| BalanceManager | CLOBRouter, OrderBook |
| HooksRegistry | OrderBook |
Role-Based Access
| Role | Permissions |
|---|---|
| Owner | Upgrade contracts, configure fees, pause trading |
| Operator | Create pools, modify trading rules |
| Router | Place/cancel orders, manage balances |
| OrderBook | Lock/unlock funds, execute transfers |
Upgradeability
The contracts use ERC-7201 namespaced storage for safe upgrades.What Can Be Upgraded
- OrderBook implementation (via beacon)
- Router logic
- BalanceManager logic
- Hooks implementation
What Cannot Be Changed
- Core authorization relationships
- Fund custody guarantees
Contract Addresses
| Contract | Address |
|---|---|
| CLOBRouter | 0xb48e7Be0F7765F5298DC748990B7f075F047cBBf |
| CLOBPoolManager | 0x0756D47160E2d1Ad04ddc2aB95e57e7Dd0588Dd0 |
| CLOBBalanceManager | 0x86507244cc1d15FBb929A1E222a31A92784aEf66 |