This is a complete flowchart that describes how we may implement our snapshot voting strategy, including addtional setups outside of snapshot.
View on Excalidraw (Last update: 2pm 2022/1/21 UTC+8)
Accounts / Servers / Contracts
-
COMPLETE
Create snapshot.org space
-
WIP - MisterPlus
Create BrightID App
a. Noble (registered, can be used for registry webapp review)
b. snapshot (registered, working on a solution for purchasing sponsorships)
-
COMPLETE
Setup idchain archive node
a. Node RPC: https://idchain.songadao.org/rpc
-
COMPLETE
BrightID Registry Contract
a. Registry Contract deployed to IDChain.
-
COMPLETE
Multicall Contract
a. Multicall Contract deployed on IDChain
-
WIP - MisterPlus
a. Deployed ERC20PresetMinterPauser contract from @openzeppelin.
b. Minter role assignment to be discussed with Adam.
c. Verifier Token with Burner role deployed to IDChain.
d. Connect with Adam to discuss about setting up an Aragon DAO for managing the Verifier Token distribution.
-
COMPLETE
Submit PR to Snapshot to add IDChain
a. PR completed, waiting for merge.
-
TODO - aLANparty
Build interface for users to register their brightID on chain.
a. Adam Stallard in discord says the easiest method would be to fork https://ethereum.brightid.org/
b. Is this site open source, or run by one who can provide the code for forking?
c. We will most likely want to add a section to this site that explains to the user, how to attain IDChain tokens (and I assume setup IDChain as a network in MetaMask)
User Registration
-
User must setup a brightID account by downloading the app to their phone and setting up an account.
-
User must become ‘verified’ by brightID by following this short guide, Getting Verified - BrightID
a. Part of this process involves a verification party which are scheduled here, brightid-meet
-
User must link their brightID account to Nobel, at https://enter.songaday.world/
a. This step is really only relevant for the discord role. It’s not necessary for the snapshot voting if I understand correctly. They will still need to do an on-chain registration for that.
b. For live deployment, user must link their brightID account to snapshot instead, since the official registry will be shared among all snapshot spaces using this strategy. -
User needs to submit a transaction to register their brightID with a smart contract.
a. Suggestion by Adam Stallard, is to fork the site https://ethereum.brightid.org/.
Creation of Proposals
-
Take Suggestions
a. Open discussion will take place on https://songadao.org/ in the “Suggestions” category.
b. Discussions will be open to everyone (both DAO members and the general public)
c. Nothing discussed in this area will be binding, it’s just a place for hashing out potential official proposals to put forward to the DAO. -
Proposal Review Phase
a. When an item from the suggestions section seems like it is something that should probably be voted on, we can promote it to being a “tentative proposal”.
b. This could be handled by moving the suggestion post into a “DAO Proposals” category.
c. Posts in this category should only be create-able by admins in order to keep it tidy, while “Suggestions” will be a bit more “everything goes”.- This will make it easy for DAO members to find discourse on things that are going to be be voted on, without needing to sift through general suggestions.
d. As discourse on a proposal wraps up, we could propose the wording of the official proposal and the answers for it, with-in the thread.
-
Proposal Creation and Voting
a. After a proposal has been hashed out in these discussions, and final wording decided upon, someone with control of the snapshot.org account could create the proposal
b. An announcement can be posted to the discord #dao-proposals channel, and a tweet sent out on twitter.