Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make governance committee membership replaceable #5539

Open
Chris-Hibbert opened this issue Jun 7, 2022 · 5 comments
Open

Make governance committee membership replaceable #5539

Chris-Hibbert opened this issue Jun 7, 2022 · 5 comments
Labels
enhancement New feature or request Governance Governance vaults_triage DO NOT USE

Comments

@Chris-Hibbert
Copy link
Contributor

What is the Problem Being Solved?

We want the ability to update the membership of governance committees.

Description of the Design

Add a method to the committee's creator facet allowing the holder to replace the committee's members. This could be called by something in the bootstrap context after a cosmos-level vote to elect a new slate of addresses.

Security Considerations

governance, legibility.

Test Plan

check wrong number of nominations. Verify legibility.

@Chris-Hibbert Chris-Hibbert added enhancement New feature or request Governance Governance labels Jun 7, 2022
@Chris-Hibbert Chris-Hibbert added this to the Mainnet 1 milestone Jun 7, 2022
@Chris-Hibbert Chris-Hibbert self-assigned this Jun 7, 2022
@dckc
Copy link
Member

dckc commented Jun 20, 2022

@Chris-Hibbert this part of the design isn't quite clear to me:

Add a method to the committee's creator facet allowing the holder to replace the committee's members.

What does it mean to replace the committee's members? Is it a matter of regenerating the voter invitations?

(If it's clear to you, I can stand by until you find time to code it up for an explanation.)

@Chris-Hibbert
Copy link
Contributor Author

The representation inside committee.js would have to change. It doesn't currently track the outstanding voterHandles or have a way to invalidate theme. It would have to remember the voterHandles, check them when voting, and replace them with a new set on changes. (A more OCap-ish approach might be to have an intermediate object that could cast the votes, and be invalidated when replaced.)

The method should probably allow the caller to specify a number of invitations, and return that number of new invitations.

@dckc
Copy link
Member

dckc commented Jun 20, 2022

A more OCap-ish approach might be to have an intermediate object that could cast the votes, and be invalidated when replaced.

Yeah... we seem to moving from using a replaceable electorate to using a long-standing electorate with revocable membership.

This design makes sense.

@dckc
Copy link
Member

dckc commented Jun 25, 2022

I just ran across some related work:

In accordance with Prop 25 the SubDAO Multisig contract will be instantiated by this governance vote with the Juno community as admin. This means the community can execute messages on behalf of the DAO via a governance proposal, recall funds, upgrade the contract, or add / remove members. -- https://commonwealth.im/juno/discussion/5264-launch-hack-juno-subdao

@Tartuffo Tartuffo removed this from the Mainnet 1 milestone Jul 20, 2022
@dckc dckc removed their assignment Dec 6, 2022
@Chris-Hibbert Chris-Hibbert removed their assignment Dec 6, 2022
@ivanlei ivanlei added vaults_triage DO NOT USE and removed vaults-release labels Jan 4, 2023
@dckc
Copy link
Member

dckc commented Mar 22, 2023

having the committee be able to update its own membership is important.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Governance Governance vaults_triage DO NOT USE
Projects
None yet
Development

No branches or pull requests

4 participants