After adding an upgradable, verifiable contract (via its proxy address), I cant do any admin actions nor does the list of methods show up in the drop down menu. also, after I try to get the list of available methods, the UI kinda freezes up and I cant navigate or click anything
Other non upgradable contracts I have on defender work fine.
Environment
Open zeppelin defender admin actions, on goerli. I've tested it both on chrome and safari with same results.
Details
After adding an upgradable, verifiable contract (via its proxy address), I cant do any admin actions nor does the list of methods show up in the drop down menu. also, after I try to get the list of available methods, the UI kinda freezes up and I cant navigate or click anything
Other non upgradable contracts I have on defender work fine.
thanks for reaching out, sorry to hear you are experimenting an issue with Defender, we are going to look into this, would you have the contract address as well as the network it is using?
Also where you able to import the contract originally including it's ABI, or did you encounter an issue here as well?
Hi @yotamDaniel , hope you are doing well, thanks for the details.
After investigation we notice that one of your read function call getTreasuryAddress is reverting when called due to the require condition of this call see line 3070 of the contract code while it is set to a zero address in the initialize function.
Decoding this result freezes the UI, wich is not a great behavior we will be working on nicely handling such error and displaying it in the UI.
In a short-term solution, you could either:
set this address outside of Defender
you could also redeploy the contract parametrizing the address to be set in the initialize function
remove this function from the ABI in Defender
Those are short terms solution and will be working on a long-term solution on our side to better handle this situation by giving errors information to the user.
I hope this unblock you for now, do not hesitate to respond for further assistance.
Hi @yotamDaniel, yesterday we released a new version of Defender that makes it resilient to querying reverting functions, so the workaround explained by @bjmrq should no longer be necessary.