FLIP for Staged Contract Updates

Quick last call for feedback on the Staged Contract Update FLIP. In case you’ve missed this proposal, here’s a TL;DR:

This proposal outlines a mechanism for automated and efficient contract updates to take effect at or beyond a specified block height with the goal of minimizing recovery time following breaking improvements.
Included in this FLIP is a design enabling contract developers to pre-define a sequence of contract updates across an arbitrary number of contracts and accounts, and either execute these updates themselves or delegate deployment authority to some trusted party.

Feedback thus far has been generally in favor of approval, with callouts regarding tooling to support the configuration of encapsulated updates, emulating updates, and monitoring progress of delegated updates.

The callouts address core user questions following the introduction of this mechanism:

  • How do I configure my staged updates given my contracts & their dependencies?
  • How do I emulate updates locally to ensure updates execute properly?
  • How do I know if my staged updates were executed successfully?

These questions are no doubt critical, but investing effort towards solutions depends on the existence of the mechanism this FLIP seeks to introduce. So, I don’t believe the lack of direct solutions is a blocker to put this proposal up for consideration.

If this FLIP is approved, we can work to further address each step on the usage path with specific solutions to ensure staging contract updates is as easy as possible for those who choose to do so.

Next Steps

Please take a look at the FLIP and leave your questions, feedback, or approval!

Resources

Staged Contract Updates FLIP

Recording from October 3rd Smart Contract Open House

Proof of concept implementation

1 Like