Verify on-chain Doppler behavior with cast, viem, RPC, and explorers for dynamic auctions, multicurve launches, hook initializer state, and migration flows.
Resources
1Install
npx skillscat add rustydotwtf/doppler-skills/verification Install via the SkillsCat registry.
About this skill
This skill verifies on-chain behavior of Doppler protocol contracts using tools like cast, viem, raw RPC, and blockchain explorers. It solves the problem of confirming whether contract state matches expected launch, auction, and migration behavior by reading source contracts, recomputing values off-chain, and comparing against emitted events. Use it when auction progression, pool status transitions, or migration splits need deterministic validation before making changes.
SKILL.md
Verification
When to use
- Contract state does not match expected launch/migration behavior
- Rebalances, fee claims, or migration splits need confirmation
- You need deterministic proof from chain data before making changes
Tool selection
cast: fast reads and direct function checksviem: precision-safe math and custom scripts- raw RPC: historical
eth_callat prior blocks - explorers/indexer: events, tx traces, and timeline reconstruction
Core workflow
- Identify module path:
- Dynamic (
Doppler) - Multicurve (base/scheduled/decay)
- Hook-initializer (
DopplerHookInitializer+ hooks) - Proceeds split migration (
UniswapV4MigratorSplit,TopUpDistributor)
- Dynamic (
- Read primary state directly from source contract.
- Recompute expected values off-chain (ticks, prices, allocations, proceeds split).
- Compare against emitted events and token balances.
High-impact checks
- Auction progression: epochs, proceeds, sold amounts
- Pool status transitions (
Initialized,Locked,Graduated,Exitedwhere applicable) - Hook permissions/flags and callback state
- Split recipient payout + top-up pull-up outcomes