Lost Control over my Timelock contract on Polygon Mainnet

When I deployed the timelock contract from Defender's UI, My wallet address (the deployer) and the address of the timelock itself were supposed to have admin roles (as shown in Defender’s UI).

Now I’m checking the transaction on-chain and I see that for some reason the address 0x0000...01 was set as an admin instead of my wallet (It can be seen in the Constructor Arguments with the long 0x0000000000000......0001 being given admin access. I’m not sure how and why that happened as we had no control over it. So right now we have no ownership over the timelock which is really bad since we're using this for something serious on mainnet. Could someone explain why did that happen?


The openzeppelin contract's version for the timelock is v4.8.0 when the contract was deployed. Network: Polygon mainnet. Everything was deployed and interacted with using Defender's UI.

Where I need help:
We only have our multisig wallet as a proposer and an executor (which we also deployed using Defender UI). Could someone please help me with how I can execute a certain transaction on the timelock using the multisig (since we can't execute it using an EOA because the multisig is the only executor)? I'm having hard time to execute the timelock transaction from the multisig

1 Like

Could you please provide me with your tenantId so we can look into this issue on the Defender side of things? Which function are you trying to call on the timelock contract? This will likely require you to create a custom action in your Defender Dashboard

I want to call the grantRole function so that I can execute scheduled transactions from an EOA.

What is the tenantId?

image

This is the execution strategy. The proposal got scheduled and now ready to be executed. But the only address that is allowed to execute it is the multisig

And I'm not sure how I can let a multisig execute the transaction
image

@Hasan_Khadra it's located in the hamburger menu in the top right corner of your Defender Dashboard