Files
zeekayandHanzo Dev a8bb719b6f feat: answer owner->safes and enumerate ERC-721 holdings from the chain
The sidebar asked which Safes an address owns and always got []; the NFT tab
asked for collectibles and always got an empty page. Both were stubbed pending
a Transaction Service, so a Safe you own was invisible unless you pasted its
address, and 73 LP positions read as zero.

Neither actually needs an indexer. registry.json declares, per chain, the
Safes and NFT collections this deployment knows about, and every entry is
confirmed against the chain before it reaches a response: a Safe must return
the caller among its getOwners(), a collection must return a balance. The
registry proposes, the chain disposes — a stale entry yields nothing rather
than a lie.

Collectibles walk ERC721Enumerable (balanceOf + tokenOfOwnerByIndex), which is
what the DEX position manager implements, and unwrap the data: tokenURI so a
position reads as "Uniswap - 0.3% - LZOO/LUX - 49.989<>199.88" with its
on-chain SVG rather than 73 identical rows.

Chains advertise ERC721 so the tab is reachable at all.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-13 12:06:17 -07:00

23 lines
345 B
JSON

{
"96369": {
"safes": [
"0xF0D19cCCB8e33663e9bDEe6e40474F1E3fD1f2BD"
],
"collections": [
"0x7a4C48B9dae0b7c396569b34042fcA604150Ee28"
]
},
"200200": {
"safes": [],
"collections": []
},
"494949": {
"safes": [],
"collections": []
},
"36963": {
"safes": [],
"collections": []
}
}