Qortal Project

The future of blockchain platforms

User Tools

Site Tools


Sidebar

Qortal Project Wiki

Important Notices

Introduction

Project Model

Minting

Communications

Trade Portal

Data Hosting

Voting System

Hardware

Frequently Asked Questions (FAQ)

How-To Guides

Node Setup Guides

Third-Party Services

voting_system_overview

Voting System Overview

Qortal aims to create a true direct democracy where no outside government or party will have control. Instead, the people who contribute to Qortal by minting blocks will earn a weighted vote accordingly. Accounts will have a voting influence that is weighted based on the blocks minted count. For example, an account with 100 blocks minted would have more weighted influence than an account with 99. This is an extremely important concept as it is based on time and contribution.

The Founder accounts will have a different weighted vote that is based on their blocks minted count PLUS level 10 blocks minted count. What we mean by this, as seen on the Leveling System wiki page, for an account to reach level 10 requires 4,074,400 total blocks minted. So Founder accounts will have a weighted vote of 4,074,400 PLUS their actual blocks minted count. For a simple example, if a Founder has 100 blocks minted, the account would have a weighted influence of: 4,074,400 + 100 = 4,074,500

When the first Founder reaches level 10, Founders will no longer have the boosted weighted vote as explained in the previous paragraph. Founders will then only have a weighted vote based on actual blocks minted. Also, those who were given pre-enabled levels as “QORA Forgers” will be given a 'blocksMintedPenalty' equal to the number of blocks they were credited with at Genesis. This will remove that number of blocks from their total minted blocks. This will not only affect their voting weight but also their minting reward blocks minted account, as blocks minted is an across the board credit. This also means that if they have NOT minted by the time the first Founder hits level 10, they could be sent back to level 0. (7 years should be plenty of time for them to have paid enough attention to start minting, and if they haven't by then, that's their choice. They were given ample time to take advantage of the opportunity given). Yes, this does mean QORA Forgers will lose blocks minted, and could affect their level if they are on the cusp of reaching or had just reached a level. Refer to the Leveling System page to see how blocks minted credit for levels 1-5 will not have too much of an impact on the QORA Forgers who will have high leveled accounts at the time of the ‘blocksMintedPenalty’.

This penalty (just a technical term) is simply to be sure the voting system is fair for everyone who actually started at 0 blocksMinted at Genesis, including but not limited to the Founders. Therefore this is simply an effort to 'level the playing field' for those who did NOT have pre-enabled blocks minted. The Founders have level 10 + blocks minted, until the first Founders actually reaches level 10, then they are actual blocks minted like everyone else. At the same time, those who were given pre-enabled levels get the penalty for however many blocks they were credited with at Genesis. This structure will incentivize users to keep their existing account minting, opposed to if we kept the previous concept where everyone would max out at level 10 and incentivize users to begin a second account. This is the latest concept for building a fair system of egalitarianism. Subject to further modification.

Please note: Qortal is ever evolving, as we build this from scratch. Development does not always have room for the community’s involvement, although when possible, it certainly will be. The DevTeam will always be the final decision maker of what is best, as they understand what is technically possible and what will make the most sense. We realize that some folks might not fully grasp this reality, as ideologically we’d all love to be more involved. This is where we must respect and credit the team’s time and track record of building a fair system for all. One that is built with truly decentralized features that meet the foundational goal of egalitarianism.

Voting will be used to help steer the project’s direction when possible. Rather than leaving everything up to the DevTeam, the community will be able to vote on certain matters with how the DevTeam should allocate their time with options presented to the community. Such as which coins or features to implement next, or certain modifications needing to take place and which options the community thinks are the best ones to pursue. There will NEVER be any voting for sanctioning or censoring as this will never be a possible action by the Dev Team! In the case of the Voting System itself, there does not seem to be any alternative solutions that could be presented as ‘options’ to vote on. This is a small example of how the DevTeam has to make decisions on behalf of the community, and the track record of building a system with genuine intention, deserves credit and trust.

Voting will also be used for the community to help approve new developers as an admin of the DevTeam. What this means is that we have two types of DevTeam members: 1) anyone can join the team and help develop the codebase who DO NOT have the ability to vote on the 60% approval to push updates to the chain, and 2) DevTeam admins who DO have the ability to vote on the 60% approval to push updates to the chain. The DevTeam would notify the community of the vetted developers being entered into a community vote, then the community will vote to approve the DevTeam admins to push the update with their 60% approval. This update will then assign the admin permission to the vetted dev(s) and it's official. It is extremely important to have this layer of security with these two types of DevTeam members as the DevTeam admins will be the only ones who can vote for a 60% approval to push updates. This creates a way for the community to have a say in who becomes a DevTeam admin, and the DevTeam admins keep the rest of the DevTeam in check as DevTeam admins are the only devs who can push the 60% approval updates to the chain.

The community will NOT be voting to directly approve code updates. There's no sense in having the community vote on what they cannot read and understand (code). Especially when they have not vested the time contributing to the codebase as the DevTeam does. Otherwise let us know and join the DevTeam, and one day based on time and contribution, you may be vetted and casted in a vote to earn the admin permission and take part in the 60% approval as explained above.

The community will always be able to submit proposals and vote on them. This can be done by anyone. If they are approved by the community vote, they will get passed on to the DevTeam for review and to determine what is actually possible. The DevTeam will make changes to the concept if necessary, then submit a final approval for the community to vote on. Thereafter, the DevTeam will move forward with development of the concept.

Of course at any time, anyone is able to submit pull requests. That will always remain an option and has nothing to do with the Voting System.

Voting System is expected to be implemented after core version 3.0 is launched with data hosting!

voting_system_overview.txt · Last modified: 03/11/2022 17:57 by gfactor