You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would add a backwards-compatible executor: Option<Executor> to both InstantiateMsg and Config. This could accept the following values:
None - same behavior as now (and same struct)
Some(Member{}) - any member in the voting group (even with 0 points) can execute the contract, same restriction as those who can propose
Some(Only{address}) - only the given address can execute the contract
Use case for Member is eg. a swap from a multisig, where you want control of the timing (not someone using a sandwich attack on your trade).
Use case for Only is a separate approval / veto step. This is like the US President needing to sign a law once it passed congress. Or even the two houses. It can allow more complex governance structures.
The text was updated successfully, but these errors were encountered:
In
cw3-flex-multisig
, anyone can execute the proposal once the vote has passed. This is not always ideal.I would add a backwards-compatible
executor: Option<Executor>
to both InstantiateMsg and Config. This could accept the following values:None
- same behavior as now (and same struct)Some(Member{})
- any member in the voting group (even with 0 points) can execute the contract, same restriction as those who can proposeSome(Only{address})
- only the given address can execute the contractUse case for
Member
is eg. a swap from a multisig, where you want control of the timing (not someone using a sandwich attack on your trade).Use case for
Only
is a separate approval / veto step. This is like the US President needing to sign a law once it passed congress. Or even the two houses. It can allow more complex governance structures.The text was updated successfully, but these errors were encountered: