gemstation / gemforge

Command-line tool for building, deploying and upgrading Diamond Standard contracts on EVM chains.
https://gemforge.xyz
MIT License
17 stars 4 forks source link

Multisig upgrade support #11

Open hiddentao opened 1 year ago

hiddentao commented 1 year ago

Multisig upgrade support should be added to enable protected upgrades.

A possible proposal:

Alternative proposal:

hiddentao commented 3 weeks ago

Current architectural thoughts:

hiddentao commented 3 weeks ago

New proposed idea based on feedback from @kevin-fruitful @amarinkovic @tgeorgas. This proposal removes the need for a separate Upgrades contract, a new signing UI, and caters for all types of multisig wallets.

Risk:

hiddentao commented 2 days ago

The solidity receive() method has a fixed gas stipend of 2300 so it won't be enough for doing an upgrade. Thus, we will have to make the safeOwner call a method on the contract.