mobilecoinfoundation / mobilecoin

Private payments for mobile devices.
Other
1.16k stars 148 forks source link

Consensus - Out of band upgrades #2586

Open jgreat opened 1 year ago

jgreat commented 1 year ago

We would like to be able to upgrade the consensus node containers ahead of the enclave upgrade event and trigger a switch of enclaves/binaries at a specific block height.

Why would we want this?

Some rough thoughts on how we might do this:

Gotchas: When starting from a fresh container, the start up process need to be smart enough to start the correct binary based on current block height. How do we get block height from the local ledger?

cbeck88 commented 1 year ago

We should possibly create an MCIP about this.

I think most projects view automated block-height-based cutovers in protocol rules, as a kind of protocol rule. Generally any changes in protocol rules are supposed to go through the MCIP process.

I think it's okay to discuss this in github etc. first though and make an MCIP when we think we have a more complete proposal, assuming we agree this needs an MCIP.

This is a bit different from the other MCIPs though because it doesn't really concern the clients directly, they can still discover the "block version" number as they currently do, and conform to the rules that way.

Lmk what you think @jcape