EVM Transaction Triage · Ethereum Mainnet
A searcher/keeper bot permissionlessly executed Uniswap's official Firepit.release() fee-auction. It burned 4,000 UNI to claim accumulated protocol fees — an intended protocol operation, not value theft.
| Address / role | Net change | USD | Interpretation |
|---|---|---|---|
| 0x0000…deadBurn address | +4,000 UNI | +$15,240 | burned — a cost |
| TokenJarUniswap fee vault | −USDC/USDT/WETH/WBTC + ~12 long-tail tokens |
≈ −$14,300 | released by design |
| UniswapV3 / v4 poolsDEX liquidity | tokens in / WETH out | ~0 | routing |
| FewWrappedTokenfew.wtf wrapper | −1,812.5 UNI / +3.57 WETH | ~0 | unwrap artifact |
| 0x4838b1…5f97Builder / coinbase tip | +0.0095 ETH | +$18 | block tip |
| 0xfeefee…69d3Keeper operator EOA | +0.0031 ETH | +$6 | realized profit |
0xfeefee…69d3 calls its keeper contract 0x428c34…58ba.flashLoan → onMorphoFlashLoan).PoolManager, and few.wtf wrapped-UNI (then unwrapped).Firepit.threshold() / nonce(), calls the fee adapter's collect(), and approves 4,000 UNI to the Firepit.Firepit.release(1089, [assets…], recipient): the 4,000 UNI threshold is sent to the hardcoded recipient 0xdead (burned), and in exchange TokenJar releases its accumulated protocol-fee tokens to the keeper.ExchangeReleaser. Recipient hardcoded to 0xdead. Security contact security@uniswap.org.feefee vanity prefix is consistent with an MEV/fee bot.ExchangeReleaser with recipient hardcoded to 0xdead and Uniswap's security contact. release() transfers the UNI threshold to burn, then TOKEN_JAR.release(assets, recipient) — a permissionless, by-design swap.0x0d5cd355…6721 is documented as Uniswap's mainnet Firepit, part of the "UNIfication" fee system launched after the governance fee-switch and 100M UNI burn.FewWrappedToken +3.57 WETH line is a wrapper-unwrap artifact. It does not create phantom keeper profit here — real profit is only the ~0.003 ETH remainder — so the known unwrap-accounting issue does not affect this verdict.