Skip to content

Add Doppler hook on robinhood#1091

Merged
Ponx merged 1 commit into
mainfrom
hooks/robinhood/0x4e3468951d49f2eea976ed0d6e75ffcb44a9a544
Jul 16, 2026
Merged

Add Doppler hook on robinhood#1091
Ponx merged 1 commit into
mainfrom
hooks/robinhood/0x4e3468951d49f2eea976ed0d6e75ffcb44a9a544

Conversation

@hooklist-generator

Copy link
Copy Markdown
Contributor

Summary

Uniswap v4 pool initializer that distributes liquidity across multiple positions using a bonding curve (Multicurve). Supports dynamic LP fees, optional Doppler Hook callbacks on initialization and swaps, and fee collection via afterSwap delta returns.

Flags

Flag Value
beforeInitialize true
afterInitialize false
beforeAddLiquidity false
afterAddLiquidity true
beforeRemoveLiquidity false
afterRemoveLiquidity true
beforeSwap false
afterSwap true
beforeDonate false
afterDonate false
beforeSwapReturnsDelta false
afterSwapReturnsDelta true
afterAddLiquidityReturnsDelta false
afterRemoveLiquidityReturnsDelta false

Properties

Property Value
dynamicFee true
upgradeable false
requiresCustomSwapData false
vanillaSwap false
swapAccess none

Warnings

  • Submitter did not provide a description. Using AI-generated description.

Closes #1087

@vercel

vercel Bot commented Jul 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hooklist Ready Ready Preview, Comment Jul 16, 2026 2:40pm

Request Review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: hooks/robinhood/0x4e3468951d49f2eea976ed0d6e75ffcb44a9a544.json

Contract: DopplerHookInitializer (verified on Robinhood chain, chainId 4663)

Address Flags

Lowest 14 bits of 0x...a9a544 = 0xa544 mod 0x4000 = 9540 = 10 0101 0100 0100₂:

Bit Flag Address File Match
13 beforeInitialize 1 true
12 afterInitialize 0 false
11 beforeAddLiquidity 0 false
10 afterAddLiquidity 1 true
9 beforeRemoveLiquidity 0 false
8 afterRemoveLiquidity 1 true
7 beforeSwap 0 false
6 afterSwap 1 true
5 beforeDonate 0 false
4 afterDonate 0 false
3 beforeSwapReturnsDelta 0 false
2 afterSwapReturnsDelta 1 true
1 afterAddLiquidityReturnsDelta 0 false
0 afterRemoveLiquidityReturnsDelta 0 false

All flags match getHookPermissions() in source (lines 563–580). ✓

Properties

  • dynamicFee: true — Correct. The contract calls poolManager.updateDynamicLPFee() in initialize() (line 238) when a Doppler hook is configured, and exposes updateDynamicLPFee() (line 425–431) for the Doppler hook to call. The pool key also uses LPFeeLibrary.DYNAMIC_FEE_FLAG when a Doppler hook is set (line 277). ✓

  • upgradeable: false — Correct. The contract is a plain implementation with no proxy pattern, no delegatecall, no mutable implementation pointer, and no SELFDESTRUCT. ✓

  • requiresCustomSwapData: false — Correct. The _afterSwap function only uses data when a Doppler hook with ON_SWAP_FLAG is configured. Swaps with empty hookData execute normally; there is no revert path triggered by absent hookData. ✓

  • vanillaSwap: false — Correct. afterSwapReturnsDelta is true and _afterSwap can return a non-zero delta (fee taken by the Doppler hook via poolManager.take). This modifies the effective swap output, so the swap is not vanilla. ✓

  • swapAccess: "none" — Correct. The hook has no beforeSwap flag, so there is no swap-time access control. ✓

Metadata

  • name: "Doppler" — Reasonable project-qualified label. The NatSpec title is "Doppler Hook Uniswap V4 Multicurve Initializer" (line 177) and the contract name is DopplerHookInitializer. No promotional, audit, or endorsement language. ✓

  • description — Accurate. Claims (bonding curve / Multicurve liquidity distribution, dynamic LP fees, optional Doppler Hook callbacks on initialization and swaps, fee collection via afterSwap delta) are all substantiated by the source code. ✓

  • verifiedSource: true — Confirmed by source_meta.json ("verified": true). ✓

  • chainId: 4663 — Matches chains.json robinhood entry. ✓

All checks pass.

@Ponx
Ponx merged commit 71be53c into main Jul 16, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

hook: Doppler on Robinhood Chain

1 participant