This page outlines the process of submitting a DAO proposal and voting on it.
To submit a proposal to the DAO, one needs to hold at least 1 ILIS and present it to the voting contract (component_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78), together with a description of your proposal, using the propose method on the voting contract by submitting a transaction manifest*. All relevant details, such as voting period and conditions for the vote to pass (must be a simple majority or higher) must be included in the description.
An example of a transaction manifest used to submit a proposal:
After a proposal is submitted, it is displayed on the official venue, together with the relevant parameters. Voting on a proposal is done through the vote_on_proposal method on the voting contract.
To call this method, a manifest like such can be used:
CALL_METHOD
Address("{your_account_address}")
"withdraw"
Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
Decimal("{amount_to_vote_with}") //fill in the amount of ilis you want to vote with
;
TAKE_ALL_FROM_WORKTOP
Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
Bucket("ilis_to_vote_with")
;
CALL_METHOD
Address("component_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78")
"vote_on_proposal"
{proposal_id}i64 //fill in the proposal id of the proposal you want to vote on. This is displayed on the official venue next to a proposal (https://ilikeitstable.com/governance)
{vote} //fill in whether you want to vote for or against the proposal, use `true` to vote for, and `false` to vote against.
Bucket("ilis_to_vote_with")
;
CALL_METHOD
Address("{your_account_address}")
"deposit_batch"
Expression("ENTIRE_WORKTOP")
;
After the voting period has passed, and the conditions to pass have been met it is excecuted, preferably autonomously. If a proposal cannot be autonomously executed on chain after passing, the managing members are responsible for executing the necessary steps to enact the proposal.