Update / migration policy for apps?


I’m writing smart contracts for a DAO. Ideally I’d like to keep everything immutable (for true decentralization), but there can be situations where updates are required, like fixing bugs / security improvements / using new TEAL features / (not sure if needed) updates for non backwards compatible TEAL upgrades.

Is there a way to handle this sensibly?

I’ve considered migrations too, but this seems rather inconvenient for the DAO members, which would have to opt-in again to new apps (and migrate funds too, as the app id is referenced by diverse escrows).

There’s also the possibility to subject the upgrades to a community vote, but I’d prefer something simpler for now.

Hi user123,

You may want to make the updates allowed only by some multisig or after some number of votes by the DAO members.