Governance
IotaPolis includes a governance system that lets the community make decisions transparently on-chain.
Polls
Polls let any registered user create a question with multiple options and a deadline.
Creating a Poll
- Navigate to the Governance page
- Click New Poll
- Enter the question and add options (2 or more)
- Set a deadline
- Submit — the poll is created on-chain via a
FORUM_POLLevent
Voting
- Each registered user can vote once on each poll
- Votes are recorded on-chain as
FORUM_POLL_VOTEevents - Results are visible in real-time as votes come in
- After the deadline, the poll is closed and final results are displayed
Verification
Since all votes are blockchain events:
- Vote counts are independently verifiable
- No votes can be added, removed, or modified after submission
- Any node can tally the results from on-chain data
Governance Proposals
Proposals are a more formal mechanism for community decisions, featuring quorum requirements and binary yes/no voting.
Creating a Proposal
- Navigate to the Governance page and select the Proposals tab
- Click New Proposal
- Enter the title and description
- Set the quorum (minimum number of votes required for the proposal to be valid)
- Set the deadline
- Submit — the proposal is created on-chain via a
FORUM_PROPOSALevent
Voting on Proposals
- Each registered user can vote Yes or No once per proposal
- Votes are recorded as
FORUM_PROPOSAL_VOTEevents - The vote count updates in real-time
Proposal States
| State | Condition |
|---|---|
| Active | Deadline has not passed |
| Passed | Deadline passed, quorum met, majority voted Yes |
| Rejected | Deadline passed, quorum met, majority voted No |
| Expired | Deadline passed, quorum not met |
On-Chain Storage
Proposals and their votes are stored in the GovernanceStore shared object. This ensures:
- Proposal results are tamper-proof
- Quorum requirements are enforced by the smart contract
- The complete governance history is preserved on-chain