Shadow Arena/Shadow Arena #017: Velodrome/Aerodrome Slipstream
DEX/AMMAdvanced

Shadow Arena #017: Velodrome/Aerodrome Slipstream

You built Uniswap V3 from scratch: the concentrated-liquidity pool, the swap loop, the tick bitmap, the fee-growth accumulators. Velodrome Slipstream (Optimism) and its Aerodrome twin (Base) are that exact v3-core, forked line-for-line, with one thing bolted on: CL positions become NFTs you stake into a per-pool CLGauge to earn VELO/AERO emissions. That single addition introduces staked-vs-unstaked liquidity per tick, an unstakedFee, and epoch-based reward notification, and that is where most of the bugs live. This is a two-layer entry: canonical v3-core findings you could have shipped in your own pool, plus fork-delta findings that exist only in the gauge and reward layer. 8 representative findings (7 H + 1 M).

Scope (1848 SLOC)

FileSLOC
contracts/core/CLPool.sol760
contracts/core/libraries/SwapMath.sol63
contracts/core/libraries/TransferHelper.sol9
contracts/core/libraries/Tick.sol151
contracts/gauge/CLGauge.sol266
contracts/gauge/CLGaugeFactory.sol86
contracts/periphery/SwapRouter.sol184
contracts/periphery/NonfungiblePositionManager.sol329

Documentation

Part of the Uniswap V3 Path

This shadow audit connects to the Uniswap V3 Build module. Students who built the concentrated-liquidity pool have an advantage because they understand tick accounting, the swap loop, fee growth, the observation oracle, and callback-based payment.

View Build Module
Duration7 days
Total Findings8
Scope1848 SLOC
PriceFree