mradkov / aepp-governance

Aeternity Governance Aepp

Home Page:https://governance.aeternity.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Governance Aepp

This repository will hold the full system used for the aeternity polling system. It consists of the used smart contracts, including their tests. A trustless backend service used for aggregation and caching of results for better presentation. Additionally there will be an frontend-aepp that allows for user-friendly registration, discovery and participation in polls.

Resources

Introduction

Earlier this year there was a proposal to include a polling system directly in the aeternity protocol, in Polling System Protocol, but this was not finalized yet.

This project aims to build a first version of the aeternity polling system as smart contract and aepp to explore governance models better, so in a later stage a more informed decision can be made of what to include on protocol level.

The governance aepp will implement a delegated weighted polling mechanism, polls and votes will be registered on-chain together with minimal meta information. Discussions around poll proposals should happen off-chain, e.g. the aeternity forum. Due to building this as smart contract system a few limitations are introduced, for example the final poll results will not be published within the smart contract, but will be verifiable using external scripts.

Rules

  • Poll voting options are non-binary but limited to one vote per account or delegatee
  • There can only be one delegation from one account, but multiple for one account
  • Delegations are global and permanent, meaning one delegation is in effect for all polls
  • Delegations can be updated and revoked at any time by the delegator
  • Delegations can be recursive
  • Voting on polls does overwrite a delegation from this account for the single poll
  • Votes can be updated and revoked until a poll is closed
  • A poll is counted with the state of its closing height, meaning considering the active delegations and account stakes at this height
  • The closing height is defined on poll creation, but is optional to be able to create ongoing signaling systems

Ideas

  • Each poll should be a single smart contract and in the future there could be multiple registries that provide different views on the same polls
  • Standardizing the polling system as aeternity aexpansion could yield more powerful alternative implementations without breaking compatibility in the future
  • Certain events should be logged in the smart contract to be able to listen for them

About

Aeternity Governance Aepp

https://governance.aeternity.com/

License:ISC License


Languages

Language:JavaScript 60.4%Language:Vue 37.3%Language:CSS 1.1%Language:Shell 0.7%Language:HTML 0.4%Language:Dockerfile 0.1%