Reading the keeper...

Break it before
you deposit

The risk lab replays real DeFi crises against what each tier holds right now, lets you build your own, and shows the full range of outcomes rather than one APY. The keeper's own risk rules decide every reaction, and every number says what it's based on.

$
Bedrock4.24% net today
  • Kamino Lend28%
  • Jupiter Lend28%
  • Kamino Earn12%
  • Aave v318%
  • Morpho9%
  • Idle5%
Rapids6.26% net today
  • Jupiter Lend30%
  • Kamino RWA16%
  • Perena11%
  • Solstice11%
  • Exponent11%
  • Maple16%
  • Idle5%

Replay a real crisis

Eight DeFi disasters, mapped onto the venues each tier holds right now. The keeper's actual risk rules decide what happens on every 10-minute cycle: when it notices, what it pulls, and what it can't get out of.

USDC depeg

10 to 13 March 2023

Circle disclosed that $3.3B of USDC's reserves sat at the failed Silicon Valley Bank. USDC traded down to about $0.88 over the weekend and recovered once US regulators guaranteed SVB's deposits.

In Bedrock: Every venue holds USDC, so the whole vault, idle cash included, is repriced in dollars. No venue loses principal.

Worst point
-12.19%
-$1,219 on $10,000
Lost for good
Nothing
After recoveries
Sentinel reacts
Never
Nothing it watches moves
Withdrawable within a day
100%
At every point
Your $10,000 through the event
With the sentinel
Share of the vault a depositor could get back within a day

What happens, cycle by cycle

  1. Day 1, 07:00 · What happens
    USDC starts trading below $1
  2. Day 2, 02:00 · What happens
    USDC bottoms at $0.878
  3. Day 4, 08:00 · What happens
    USDC back within half a cent of $1

Modelled and assumed

  • USDC low$0.878 about a day inModelled
  • Back above $0.99about 2.5 days laterModelled
  • Venue lossesnone; lending markets keep runningAssumed
  • Sentinelno rule watches USDC against the dollar; it reacts to nothingModelled

Venue by venue

VenueBeforeAfterWorst verdictLoss
Kamino Lendest.28.1%28.1%ok0
Jupiter Lendest.28.1%28.1%ok0
Kamino Earnest.11.7%11.7%ok0
Aave v3est.17.6%17.6%ok0
Morphoest.9.4%9.4%ok0

Weights are shares of the tier. Losses are shares of the tier's starting value, after any recovery.

Build your own disaster

Stack the shocks you worry about and watch both tiers respond live. Everything runs in your browser against today's allocations; copy the link to share the exact scenario.

Venue exploitLost in one transaction, before any keeper cycle
Deposits lost30%
Withdrawals frozen5 days
Later returned0%
Utilisation locked at 100%Lenders can't withdraw until borrowers repay
For0 days
USDC depegReprices everything in dollars, idle cash included
Low$1.000
Back to $1 after3 days
CCTP haltBase and Ethereum venues can't send money home
Route down forOff
Synthetic dollars depegUSD* and eUSX slide below their backing
Below backingOff
Over3 days

Bedrock

1 venue hit
Worst point
-8.44%
-$844
Lost for good
-8.45%
-$845
Sentinel reacts
6 h
Out 4.8 days later
Withdrawable within a day
78%
All of it after 6 days
  1. Day 2, 00:00 · Loss
    Jupiter Lend exploited: 30% of deposits lost, 8.45% of the tier
  2. Day 2, 06:00 · Sentinel
    Jupiter Lend pause: exploit listed by an operator (cap 0, exit)
  3. Day 2, 06:00 · Keeper
    Exit from Jupiter Lend blocked: no free liquidity
  4. Day 7, 00:00 · What happens
    Jupiter Lend reopens withdrawals
  5. Day 7, 00:00 · Keeper
    Keeper pulls 19.72% of the tier from Jupiter Lend

Rapids

1 venue hit
Worst point
-9.00%
-$900
Lost for good
-9.00%
-$900
Sentinel reacts
6 h
Out 4.8 days later
Withdrawable within a day
77%
All of it after 6 days
  1. Day 2, 00:00 · Loss
    Jupiter Lend exploited: 30% of deposits lost, 9.00% of the tier
  2. Day 2, 06:00 · Sentinel
    Jupiter Lend pause: exploit listed by an operator (cap 0, exit)
  3. Day 2, 06:00 · Keeper
    Exit from Jupiter Lend blocked: no free liquidity
  4. Day 7, 00:00 · What happens
    Jupiter Lend reopens withdrawals
  5. Day 7, 00:00 · Keeper
    Keeper pulls 21.02% of the tier from Jupiter Lend

The range of outcomes

Thousands of simulated futures for each venue's rate, fitted to up to two years of its own history and correlated across venues, run through the tier's live allocation and net of the performance fee.

$10,000 in Bedrock, after 1 year
Median50% of outcomes90%Kamino Lend aloneHolding USDC
Compare with lending on one venue

Weights stay at today's targets for the whole horizon. The real keeper moves toward better rates, so the median is if anything conservative.

What each venue's rate model was fitted to

Loading rate history...
VenueWeightAPY nowLong-runMonth-to-month swingExploit chance a yearHistoryFrom data
Kamino LendLending market28.1%4.40%4.40%±25%0.5%Prior0%
Jupiter LendLending market28.1%4.80%4.80%±25%0.5%Prior0%
Kamino EarnCurated vault11.7%5.60%5.60%±25%1.0%Prior0%
Aave v3Lending market17.6%4.60%4.60%±25%0.5%Prior0%
MorphoCurated vault9.4%4.30%4.30%±25%1.0%Prior0%

“Month-to-month swing” is the spread of a venue's 30-day average rate, as a share of the rate. “From data” is how much of the fit comes from the venue's own history rather than priors; venues with little history lean on priors fitted to two years of USDC lending rates.

How the lab works

Stress tests and the builder

Each scenario is a list of shocks (an exploit, utilisation locked at 100%, a USDC or synthetic-dollar depeg, a run on deposits, a CCTP halt) replayed on the keeper's 10-minute cycle against the live targets from the keeper's /targets.

On every cycle a copy of the keeper's sentinel (rules-v1 with its hysteresis: utilisation 95%/99%, 7-day TVL -15%/-30%, NAV 0.2%/1% below backing, APY 3x/5x its 7-day median, 30 and 10 minute confirmations, relaxed clear thresholds) reads only the signals the keeper's feeds really report, and the planner's safety exits cut anything above the lowered cap.

Exits wait for free liquidity, take 25% of a crowded venue's free liquidity per cycle for a vault of $10.0M, and take each venue's exit time (CCTP transfers about 30 minutes, Maple's queue a day). Exited funds stay idle.

Yield projections

Each venue's log APY is a slow level that reverts to its long-run mean (half-life about four months) plus fast day-to-day noise, fitted to up to two years of daily history from DefiLlama's yields API, or the keeper's /rates/history where DefiLlama has no pool.

Shocks are correlated across venues by the correlation of their daily rate changes. Short histories are blended with priors fitted to two years of USDC lending rates. Weights stay at today's targets, idle cash earns nothing, and the performance fee is charged only above the high-water mark.

Exploit risk, when on, is an assumption: a yearly chance of 0.15% x risk score^1.7 per venue, losing 10% to 60%.

What this can't tell you

History doesn't repeat exactly. A crisis mapped onto today's venues is an analogy: we keep the shape of what happened and say where we had to guess. The exploit probabilities are not fitted to anything, because there is too little honest data to fit them to.

The keeper's hand-maintained incident list is modelled as an operator acting hours after an event. The real keeper also redeploys exited funds into healthy venues, which this leaves out. It doesn't model smart-contract risk in Aqueduct's own program.