FLYWHEEL 2.0 value flow¶
ELI5: Coil charges trading fees in USDC. Those fees split three ways — into Keep, to voters, and into TARE savings. TARE's own fees add more surplus. Keep deploys mostly into Coil market-making, which earns spread and brings more fees back.
Step-by-step loop¶
- Coil settles batch auctions → collects USDC fees.
CoilFeeRoutersplits fees:keep_bps(0–50%) → CoilMakerStrategy / Keep vault pathgauge_bps(0–50%) → BribeDistributor (USDC to voters)- Remainder → swapped to TARE → TARE surplus
- TareEngine accrues stability fees → also feeds surplus.
SurplusSplittersplits surplus:- Senior ≥70% → sTARE (saver yield)
- Emission ≤30% → Keep vault (reinvestment)
- Keep priority queue:
- Priority 0: CoilMakerStrategy (spread + fee discount)
- Fallback: Curve TARE, Aave, Compound, Morpho
- veForge voters steer Keep weights via GaugeWeightRouter (
ALLOCATOR_ROLEonly). - Loop closes: Keep yield → depositors; excess → surplus → deeper Coil liquidity → more fees.
flowchart TD
Coil[Coil batch auctions] --> Fees[USDC fees]
Fees --> CFR[CoilFeeRouter]
CFR -->|keep_bps| CMS[CoilMakerStrategy]
CFR -->|gauge_bps| BD[BribeDistributor]
CFR -->|remainder| Surplus[TARE surplus]
Engine[TareEngine fees] --> Surplus
Surplus --> SS[SurplusSplitter]
SS -->|senior 70%+| sTARE[sTARE vault]
SS -->|emission 30%-| Keep[Keep MultiStrategyVault]
CMS --> Keep
ve[veTARE votes] --> GC[GaugeController]
GC --> GWR[GaugeWeightRouter]
GWR --> Keep
CMS -->|EIP-1271 MM| Coil
What you can observe on-chain¶
| Flow | Contract | Event / function |
|---|---|---|
| Fee harvest | CoilFeeRouter | harvest / split logic |
| Surplus skim | SurplusSplitter | split to sTARE + Keep |
| Vote → allocation | GaugeWeightRouter | set_allocations on vault |
| Bribe claim | BribeDistributor | epoch claim |
Cross-links¶
What can go wrong¶
Composition risks
- Routers only move earned/released value — misconfiguration wastes yield but should not drain solvent CDPs.
- Keep admin can change strategies — not covered by TARE engine invariant.
- Fee split caps:
keep_bps + gauge_bps ≤ 50%— remainder minimum to surplus enforced in router.
Deep dive: why CoilMaker is priority 0
Proprietary yield from batch-auction spread + fee discounts is not available to retail Coil LPs the same way. FLYWHEEL 2.0 routes capital there first before generic lending.