Add DiamondHandsHook hook on ethereum#650
Merged
marktoda merged 1 commit intoJun 11, 2026
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
There was a problem hiding this comment.
Review: hooks/ethereum/0x1df8e3ce04a62922506e4ba303e1338583155044.json
Address Bitmask
Address suffix 0x5044 → lowest 14 bits 0001 0000 0100 0100:
| Bit | Flag | Expected | JSON |
|---|---|---|---|
| 13 | beforeInitialize | false | false ✓ |
| 12 | afterInitialize | true | true ✓ |
| 11 | beforeAddLiquidity | false | false ✓ |
| 10 | afterAddLiquidity | false | false ✓ |
| 9 | beforeRemoveLiquidity | false | false ✓ |
| 8 | afterRemoveLiquidity | false | false ✓ |
| 7 | beforeSwap | false | false ✓ |
| 6 | afterSwap | true | true ✓ |
| 5 | beforeDonate | false | false ✓ |
| 4 | afterDonate | false | false ✓ |
| 3 | beforeSwapReturnsDelta | false | false ✓ |
| 2 | afterSwapReturnsDelta | true | true ✓ |
| 1 | afterAddLiquidityReturnsDelta | false | false ✓ |
| 0 | afterRemoveLiquidityReturnsDelta | false | false ✓ |
All flags correct.
Properties
- dynamicFee: false ✓ — No
updateDynamicLPFee()orlpFeeOverrideinbeforeSwap(the hook has nobeforeSwap). The variable sell fee (0.5–10%) is implemented as a hook fee captured viaafterSwapReturnsDeltausing theBaseHookFeepattern, not the v4 LP dynamic fee mechanism. - upgradeable: false ✓ — No proxy,
delegatecall,selfdestruct, or mutable implementation storage.source_meta.jsonconfirms"proxy": false. - requiresCustomSwapData: false ✓ —
hookDatais passed through but never decoded or required. Swaps work correctly with empty hookData. - vanillaSwap: false ✓ —
afterSwapReturnsDelta: true; the hook captures a fee delta from the swapper on sells. Swap behavior is materially different from a vanilla pool for sells. - swapAccess: "none" ✓ — No access control in
_afterSwap(hook has nobeforeSwap). Anyone may swap freely.
Metadata
- name
"DiamondHandsHook"✓ — MatchescontractNamefrom Etherscan and the NatSpec@title DiamondHandsHookin source. - verifiedSource: true ✓ — Confirmed by
source_meta.json("verified": true). - chainId: 1 ✓ — Ethereum mainnet.
- description ✓ — Accurately describes the on-chain logic: 0% buy hook fee (
BUY_FEE = 0), dynamic 0.5–10% sell fee (SELL_FEE_BASE = 5_000,SELL_FEE_MAX = 100_000), 1-hour rolling window (PRESSURE_WINDOW = 1 hours), integral pricing (verified in_sellFeeFor), 50/30/20 split (SPLIT_JACKPOT/BUYBACK/LOYALTY), MerkleDistributor jackpot, WETH→DMND buyback-and-burn, and LP donations viapoolManager.donate(). No promotional or audit language.
All fields verified. No issues found.
marktoda
approved these changes
Jun 11, 2026
marktoda
left a comment
Contributor
There was a problem hiding this comment.
Bot review verified. DiamondHandsHook on ethereum (0x1df8...5044). Bitmask 0x1044 → afterInitialize, afterSwap, afterSwapReturnsDelta. Description length 327/500 prechecked. LGTM.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Anti-dump hook for a single DMND/WETH pool that charges 0% on buys and a dynamic 0.5–10% fee on sells, scaling with 1h rolling sell pressure via integral pricing. Captured fees are split 50/30/20 between a MerkleDistributor jackpot for DMND holders, WETH→DMND buyback-and-burn, and direct LP donations via poolManager.donate().
Flags
Properties
Warnings
Closes #649