fix: "Unable to determine current pool tick" on /app/cheats page #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The Liquidity Snapshot section on
/app/cheatsshows the error:Clicking Refresh reproduces the same error. No console errors are visible to the user.
Reported in codeberg#1191.
Root cause
In
web-app/src/views/CheatsView.vue, theloadLiquidityStats()function callsslot0()on the Uniswap V3 pool and parses the response as a named object:viem v2 returns multi-output contract calls as plain arrays, not named objects.
slot0()has 7 outputs, so viem returns:isRecord()passes (arrays are objects in JS), butslot0Response.tickisundefinedbecause arrays don't have a.tickproperty. SocurrentTickstaysnulland the error is thrown.Reproduction
docker compose up -d)cast callthatslot0()returns valid data (tick = -120075)Fix
Destructure
slot0Responseas an array (index[1]is the tick):Note: the same file already handles both array and record shapes for the
positions()call viatoPosition()— a similar pattern should be used here for consistency.Files
web-app/src/views/CheatsView.vue—loadLiquidityStats(), around line 558Blocked — issue #2
no_push2026-04-05T16:20:05ZDiagnostic output
Blocked — issue #2
no_push2026-04-05T16:20:09ZDiagnostic output
✅ Dev-agent: Already implemented
Existing implementation
Fix already merged into master via PR #3 (commit
f1e4c37)Closing as already implemented.
Automated assessment by dev-agent · 2026-04-05 16:55 UTC