Soroban Testnet — live

One vault.
Many keepers.
No single point
of failure.

Nectar replaces single-operator liquidation bots on Blend Protocol with a distributed network of competing keepers — funded by a shared USDC vault. Depositors earn the profit from every liquidation.

TVL
$0
Return
+0.00%
Lifetime fills
0
keeper log stream — awaiting keeper API0 operators
connect a running keeper (SSE /api/events) to stream live liquidation activity here…

THE PROBLEM

$10.8M
liquidation value
Feb 22, 2026 YieldBlox exploit — USTRY/XLM oracle manipulation
2 bots
captured majority
Single-operator bots pre-positioned. No coordinated keeper response.
60
auction fills
Over ~4 hours. One Docker container, one private key, no fallback.

Stellar DeFi (~$187M TVL) relies on single-operator bots for critical automation. Blend's liquidation bot is explicitly disclaimed as "not guaranteed to be profitable and may result in financial loss". Nectar distributes keeper responsibility across competing operators.

ARCHITECTURE

SOROBAN TESTNETKeeperRegistryregister(stake)mark_draw / clear_drawrecord_execution()slash(keeper)NectarVaultdeposit / withdrawdraw / return_proceedscap · cooldownshare_price()mark / clearBlend Poolnew_liquidation_auction()submit() — fillget_positions()Dutch · 0–400 ledgersMock Oracleset_price(asset, price)pricesUSDC (SAC)transfer · balancestakeOFF-CHAINKeeper #1 (keeper-alpha)monitor → draw → fill → returnstaked operator · slashableKeeper #2 (keeper-beta)monitor → draw → fill → returnstaked operator · slashable
KeeperRegistry — staking & slashing
Operators register by staking USDC; the registry tracks executions, success rate, and outstanding draws. Slashing transfers a configurable share of the stake to the vault when a draw isn't returned within the timeout.
NectarVault — pooled liquidation capital
Depositors mint shares against pooled USDC. Deposit caps and per-account withdrawal cooldowns protect against capacity attacks; share price reflects accumulated profit. draw() / return_proceeds() cross-call the registry to mark and clear the operator's outstanding draw.
Blend Pool — Dutch auctions
Liquidations run as two-phase Dutch auctions: lot scales 0→100 % over the first 200 ledgers, bid scales 100→0 % over the next 200. Keepers evaluate profitability live and submit a fill when lot/bid crosses their threshold.
Multi-operator race
Both keepers can simulate and submit fills concurrently. One wins; the other receives an AlreadyFilled error, returns the drawn capital to the vault, and logs the loss.

The network · right now

Competing keepers, one shared vault

Full leaderboard →
No keepers registered yet — connect the keeper API / registry to populate the network.

MONITOR

Pool Position Health

awaiting keeper API
No positions monitored — connect a running keeper to stream live Blend pool health here.

The vault

Deposit USDC. Earn keeper yield.

Deposit into the shared vault and receive LP shares. Every liquidation returns its profit to the vault — your shares appreciate against a rising share price. Withdraw anytime.

Return
+0.00%
Share price
$1.0000
share price · trailing 30 days