So, you want your own Moloch DAO… Yum!
Here is a walkthrough of the initial configurations for the DAO deployment that you need to figure out and decide on before you do anything else.
summoner (address)
The DAO contract initially has one member with 1 share that allows that initial user or ‘summoner’ to summon the next members or add new proposals. This initial summoner account is no different from any other DAO member once voted in. No special privileges. 1 Shares = 1 Share.
_approvedToken: (address)
The DAO contract takes in any ERC-20 for pledges. Currently, the contracts only can use only one selected token. You input the token address of the token you want to be used as the DAO pledge.
Moloch & MetaCartel both use WETH
_periodDuration (uint256)
Period duration is the smallest unit account of time for the DAO and is measured as seconds. Eg. If you specify the period duration as 3600 (60 x 60 seconds) then the period duration would be an hour. This is important as this is the ‘lego’ brick that you use to set and account for your DAO’s voting period.
Moloch & MetaCartel both use 17280 as the period duration (4.8 hours)
Both DAOs, then both respective have 1 week voting periods and 1 week grace periods - hence the voting period and grace periods are 35 periods each.
- 1 DAY = 4.8hrs x 5 (5 periods)
- 1 WEEK = 4.8hrs x 5 x 7 (35 periods)
_votingPeriodLength (uint256)
How long you want to let members vote on proposals for.
Moloch & MetaCartel both use 35 periods (1 week)
_gracePeriodLength (uint256)
After a proposal is voted on and the verdict is decided upon, the DAO members are given a grace period - a period of time in which they can rage quit/leave the DAO without being diluted and ultimately affected by the proposal’s acceptance into the DAO.
Moloch & MetaCartel both use 35 periods (1 week)
Finally, there is the risk of capture. For example, while we’re all at Burning Man, everyone who isn’t attending decides to submit a proposal to give themselves all the ether in the Guild Bank. If the attackers submit this proposal before Burning Man, then the Burners will still be able to vote NO before they leave. If the attackers submit immediately after we leave for Burning Man, then then Burners will still have, after ~10 days of festivities, another 4 days of the grace period to ragequit and withdraw their funds. I think the combination of the 7 day voting period and 7 day grace period is enough to protect members from the risk of capture.
_abortWindow (uint256)
The period of time, a proposal can be immediately be canceled with funds immediately refunded.
Moloch & MetaCartel both use 1 period (4.8hrs)
_proposalDeposit (uint256)
Members need to stake a deposit into the DAO when submitting a proposal.
MetaCartel uses 1 WETH. Input = 1000000000000000000
_dilutionBound (uint256)
A “dilution bound” with the intention to protect members from excessive dilution in case of a mass ragequit.
Moloch & MetaCartel uses 3
_processingReward
When proposals are accepted and finish the grace period, someone needs to execute a transaction to finalize the proposal where the proposer gets their proposal deposit back and the shares are issued.
MetaCartel uses 0.1 ETH as the reward. Input = 100000000000000000
Deploying
Launch using this contract factory https://daohaus.club/