DIA-V Base L2 · Uniswap V3 · x402 $0.05 USDC / validation

The loan is fine until the tick isn't.

DIA-V reads the live Uniswap V3 pool on Base and asks what your flash-loan size does to price if liquidity thins, slippage spikes, or you actually use the leverage you typed in. One verdict: the worst scenario.

APPROVE · impact under 2% REDUCE · 2% to 5%, with a max safe size REJECT · impact over 5%

How it works

  1. You name a Base pool, which side you are borrowing (token0 or token1), a size in human token units, and leverage from 1 to 10.
  2. DIA-V calls the pool over JSON-RPC: liquidity() and slot0(), then each token's decimals, so the size and the liquidity share a unit.
  3. Price impact is a concentrated-liquidity approximation inside the active tick. For a small borrow, impact ~ X / L_scaled. L_scaled is active liquidity turned into human units of the borrowed asset. The divisor is 1e18 for an 18-decimal token and 1e6 for USDC. The number we score is the closed-form tick move: it matches that ratio for small X, and it blows up if the size exhausts the tick.
  4. Five scenarios run separately. The verdict is the worst of them, plus the largest base size that would have kept every scenario under 2%.

Stresses

baseline

Full active liquidity, the size you sent, no leverage.

drain 30

30% of the in-range liquidity is gone.

drain 60

60% gone. Same borrow.

3x spike

Slippage comes back three times the tick estimate.

leverage

Size times the leverage you asked for.

These are not stacked. A drain and a leverage multiple at the same time is worse than whichever single scenario won. APPROVE means none of these five screens tripped, not that the loan is safe.

Price

$0.05

USDC per validation. x402 on Base L2. Unpaid machine calls get HTTP 402 with the payment terms. This page is free.

POST

https://agentpaystore.com/diav/api/validate

Call it

curl -s -X POST https://agentpaystore.com/diav/api/validate -H 'Content-Type: application/json' -d '{"pool":"0xd0b53D9277642d899DF5C87A3966A349A798F224","borrow_asset":"token0","borrow_amount":10,"leverage":2}'

That pool is Uniswap V3 WETH/USDC 0.05% on Base. token0 is WETH, so 10 means ten WETH, not ten wei. With no payment header the response is 402. Retry with the x402 PAYMENT-SIGNATURE (or X-PAYMENT) header. The form below is the human path.

Try it



  

What this will not tell you

It does not walk the tick bitmap, so depth outside the current tick is invisible. It does not add the pool fee, simulate your callback, or know if a lender will fund the loan. The fee multiplier (it rises once the worst stress leaves the 2% band, and caps at 5) and the max leverage (the highest 1x-10x that still clears 2% on full liquidity) are recommendations, not instructions the pool will follow. Treat the verdict as a screen you run before you size the loan, not as a promise about the next block.