[Bug] Hook with Dynamic Fee can't be used to create pool positions on Optimism
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 5.5k
- Forks
- 5.4k
- PR merge metrics
- No merged PRs in 30d
Description
📱 Interface Affected
Which application are you experiencing issues with?
- Web (app.uniswap.org)
- Wallet Extension (wallet.uniswap.org)
- Wallet Mobile App
- iOS
- Android
- Both
🧩 App Version
- Version (if known):
- Production build
- Development build
💻 System / Environment Info
Please provide details about your environment:
- Browser (name + version): Chrome
- OS / Platform (e.g. iOS 17, Windows 11, Android 14): Mac
- Device (e.g. iPhone 14 Pro, Pixel 7, MacBook Pro 2023): MBP
- Wallet used (e.g. Uniswap Wallet, MetaMask, Rainbow): Metamask
- Network (e.g. Ethereum Mainnet, Arbitrum, Base, etc.): OP
🔁 Steps to Reproduce
- Go to add liquidity with the following:
- Hook: 0xe1bC12D9269D577E3AfBBBa8C348C261C9557a80
- TokenA: DCA, 0xb1599CDE32181f48f89683d3C5Db5C5D2C7C93cc
- TokenB: ETH
- Fee: Dynamic
- At this point the app crashes as soon as I select dynamic fee options.
✅ Expected Behavior
Lets me add liquidity.
❌ Actual Behavior
App crashes:
Error: Invariant failed
at bt (https://app.uniswap.org/assets/index-DWZ8_YLF.js:50:31078)
at k1r (https://app.uniswap.org/assets/index-DWZ8_YLF.js:59:12182)
at ie (https://app.uniswap.org/assets/priceRangeInfo-B4QEkP1P.js:1:4466)
at ae (https://app.uniswap.org/assets/priceRangeInfo-B4QEkP1P.js:1:1987)
at https://app.uniswap.org/assets/SelectTokenStep-dzh_T3Cp.js:1:21155
at Object.e6t [as useMemo] (https://app.uniswap.org/assets/index-DWZ8_YLF.js:10:22692)
at e.useMemo (https://app.uniswap.org/assets/index-DWZ8_YLF.js:2:59167)
at Bn (https://app.uniswap.org/assets/SelectTokenStep-dzh_T3Cp.js:1:21150)
at DIe (https://app.uniswap.org/assets/index-DWZ8_YLF.js:10:18151)
at VIe (https://app.uniswap.org/assets/index-DWZ8_YLF.js:12:3254)
📸 Screenshots or Screen Recording
Please upload any relevant screenshots or recordings to help us understand the issue better.
🧾 Additional Context
Same hook code works fine on Sepolia when testing the app on testnet.
⚠️ Please redact or avoid sharing sensitive data such as private keys, seed phrases, or personally identifying info.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the crash on Optimism using the hook, DCA, ETH, and Dynamic fee options, then trace the reported SelectTokenStep and priceRangeInfo entry points from the stack trace. Done means selecting the dynamic fee no longer crashes and the user can proceed to add liquidity.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100