Skip to content

Add LimitOrderHook hook on base - #10442

Closed
hooklist-generator[bot] wants to merge 1 commit into
mainfrom
hooks/base/0x5e178bb3407f80f29f542129853244e7ef409040
Closed

hooklist-generator[bot] wants to merge 1 commit into
mainfrom
hooks/base/0x5e178bb3407f80f29f542129853244e7ef409040

Conversation

@hooklist-generator

Copy link
Copy Markdown
Contributor

Summary

A Uniswap v4 Hook that enables on-chain limit orders on supported liquidity pools.

Users can set a target price, and when the pool price reaches the specified price, the Hook automatically executes the order. This enables users to place limit orders directly on Uniswap v4.

Flags

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

Properties

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

Warnings

None

Closes #10441

@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/base/0x5e178bb3407f80f29f542129853244e7ef409040.json

Address Flags

Address 0x...9040: 0x9040 & 0x3FFF = 0x1040 → bits 12 and 6 are set.

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

Confirmed by getHookPermissions() in source.

Properties

  • dynamicFee: false ✓ — No beforeSwap, no updateDynamicLPFee() call anywhere in the contract.
  • upgradeable: false ✓ — treasury is immutable; no proxy pattern, no delegatecall to mutable targets, no SELFDESTRUCT.
  • requiresCustomSwapData: false ✓ — hookData parameter in _afterSwap is unused; swaps execute correctly with empty hookData.
  • vanillaSwap: false ✓ — _afterSwap calls poolManager.modifyLiquidity() and poolManager.mint() to fill crossed limit orders, performing non-trivial pool state changes inside the afterSwap callback.
  • swapAccess: "none" ✓ — beforeSwap flag is not set, so there is no access control on swaps.

Metadata

  • name: "LimitOrderHook" ✓ — Exact contract name from verified source.
  • chainId: 8453 ✓ — Matches base in chains.json.
  • verifiedSource: true ✓ — Confirmed by source_meta.json.
  • description ✓ — Accurately describes the one-tick out-of-range liquidity limit order mechanism. No audit, safety, or marketing language.

All fields are correct.

@hooklist-generator
hooklist-generator Bot deleted the hooks/base/0x5e178bb3407f80f29f542129853244e7ef409040 branch September 23, 2026 04:59
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: Smart Limit Order Hook

0 participants