FURNACERC//4663
method

exact reads.
named limits.

READ VERIFICATION LABDETERMINISTIC
01positions(tokenId)
02tokensOwed0 / 1
03aggregate3()
04balanceOf(dead)
05receipt tuple
NO SAMPLENO INDEXEREXACT CONTRACT READ
AUDIT WORKBENCHREAD SURFACE / 03
01COVERAGE TOPOLOGY3/3 SOURCES PINNED
01creator feepositions(tokenId) → tokensOwed0, tokensOwed1 creator fee = tokensOwed × 0.70 new / 0.90 legacy collect((tokenId, recipient, amount0Max, amount1Max))
02supply removedremoved = balanceOf(0x…dEaD) % supply = removed / totalSupply rate = removed_t2 − removed_t1

the removed-supply read is exhaustive, not sampled. balanceOf is an exact contract read; this measurement does not need n=.

03coverage

uniswap v3 npm addresses and multicall3 are frozen in the dataset with their sources and read time.

02NAMED BLIND SPOTSDISCLOSED

fees already claimed and sold are not visible; only value still resting in the pool is counted.

a transfer to 0x…dead does not reveal whether the owner or an outside address sent it.

other removal methods such as 0x0 or a burn function that reduces totalSupply are outside the 0x…dead measurement.

pools with multiple position NFTs must be summed; omitting one position understates the fee.

03TOOL BOUNDARYCAPABILITY MAP
READBUILDSIGN
toolwalletburn action
ponsscannono
stateofblocksnono
DefiLlamanono
coinfactorynono

named blind spots

tool boundary