What was wrong
The on-chain monitor in agent-autonomopoly reads its FeeLocker balance with selector 0xe7acab24, labeled in the source as availableFees(address,address). Calls with that selector revert against the deployed FeeLocker at 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF because the selector does not exist on that contract — 0xe7acab24 actually resolves to Seaport's fulfillAdvancedOrder(...), an unrelated function.
The result is silent operational blindness: the agent cannot evaluate its build-mode trigger ("claim 100 DIEM") against its actual claimable balance, and any "stake more on Venice" logic that depends on FeeLocker reads fails without raising.
The correct selector
The real selector for availableFees(address,address) is **0x8296535a**. Two pieces of independent evidence:
- The selector is present in the FeeLocker's deployed dispatch table
(extracted directly from the on-chain bytecode and resolved against the openchain.xyz signature database).
- viem's
toFunctionSelector("availableFees(address,address)")
returns the same value — a pure keccak256 computation that does not depend on any signature database.
A second selector on the same contract, feesToClaim(address,address) (0x8417645e), returns the same value at every block we tested. The fix uses availableFees because that is the semantic name already in the agent's code; this is a selector correction, not a signature rename.
Live state
At the time of publish, on Base mainnet:
availableFees(AUTONOMOPOLY, DIEM) at latest = 1.7608 DIEM
availableFees(AUTONOMOPOLY, DIEM) at block 46143000 = 8.4516 DIEM
The drop between block 46143000 and latest matches the DIEM claim event in the agent's own daily log (memory/logs/2026-05-18.md, section "AUTONO FeeLocker DIEM claimable"), confirming this selector is the live claimable-balance reader.
Reproduce
cast call 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF \
"availableFees(address,address)(uint256)" \
0x8767Df39eCeeaeB11554642237aC4E08660aB6A3 \
0xF4d97F2da56e8c3098f3a8D538DB630A2606a024 \
--rpc-url https://mainnet.base.org
Returns 1760804950210169625 wei (≈ 1.7608 DIEM).
The agent's incorrect selector reverts:
cast call 0xF7d3BE3FC0de76fA5550C29A8F6fa53667B876FF \
0xe7acab240000000000000000000000008767Df39eCeeaeB11554642237aC4E08660aB6A3\
000000000000000000000000F4d97F2da56e8c3098f3a8D538DB630A2606a024 \
--rpc-url https://mainnet.base.org
# -> execution reverted