DAO frameworks do not do a good job describing the transactions a DAO is doing. Decoding transaction data is hard, especially when proxies are involved. Hopefully our proof-of-concept pushes the technology in this area a bit forward, storing the ABI of the contracts using the bytecode hash as an identifier, so other contracts deployed with the same code can reuse the function descriptions.

Transaction Decoder showcase

How it's made

We store the ABIs of the functions on IPFS and link them on an ethereum contract that hosts a list of curated definitions. We can access this list, so we can describe the functions NFTX DAO is performing, even if the contracts it is calling are using proxies. We support transparent proxies, beacon proxies, and probably UUPS proxies.