I know that TransparentUpgradeProxy requires you to be admin to upgrade it, but for UUPS I didn't see anything. I tried to test this in my Truffle test suite by deploying with a different address but I am getting these results:
upgradeProxy(existingAddress, ContractV2, { deployer: address2 })
I get the error: Cannot use 'in' operator to search for 'sendAsync' in undefined
upgradeProxy(existingAddress, ContractV2, { from: address2 })
success <- this should fail
upgradeProxy(existingAddress, ContractV2, { address2 })
success <- this should fail
So I guess I am using the options incorrectly. What's the right way to do this?
When I look at unknown-1337.json I see an admin address in there but it does not match any of the accounts on ganache or my deployment account.
Can anyone show me how I can be assured that no one else can upgrade over my implementation?
Thank you so apparently extending UUPSUpgradeable adds 4kb to my contract. That is 16% of the max contract size. Shoudl I just go back to TransparentProxy? or is there anything else I can do?