Since May, we’ve been working to improve the Maker Foundation’s Governance Polling system, addressing some of the known issues experienced over the past six months as governance has evolved. Today, we are pleased to announce that these improvements have been implemented on the Governance Voting Portal.

Governance Polling provides a vital role within MakerDAO and the Maker Protocol by allowing MKR holders to express their sentiment regarding a variety of matters in order to keep Dai stable and maintain system security and relevance.

As a result of these new updates, MKR holders can now vote on any number of polls simultaneously, without going through the vote proxy or sending MKR to the DSChief (the voting contract). Additionally, users can participate in an Executive Vote and Poll at the same time. This means that the Maker system remains secure while allowing MKR holders to continue to express their support for other governance matters.

UI Changes

We’ve updated the Polling User Interface, taking into consideration the great feedback we’ve received concerning the usage of the Governance Portal:

Voting options have been moved from the polling dashboard to inside each individual poll, which allows for a cleaner and lighter experience when searching for active and historical polls, including the results of past polls.

A new voting selection method utilizes a simple dropdown menu.

In addition to easily selecting a proposal, users now have a clear indication of the real-time and historical vote breakdown.

Total participation figures (number of unique voters and total MKR) are provided per poll.

The new Governance Polling system in action

Technical Changes

In addition to the UI changes, we’ve made technical improvements, the biggest of which is that we have completely separated Polling from DSChief. We now use an Event Emitting Contract (address here), which emits events for the creation and withdrawal of polls, as well as for voting on an individual poll. This not only makes taking part in Maker Governance Polling much easier than before, but also it’s an important step toward complete decentralization.

The previous version of Polling was integrated into DSChief using a hybrid solution of the executive voting, which remains the same as before. Prior to these latest improvements, users would vote on blank spells to signal their support for a change, without it having any effect on the Maker Protocol.

The creation of a poll stores on-chain critical information about the poll, including start/end times, poll id, and, most crucially, a hash of the poll description and poll metadata. This content can follow any format, but we recommend it follow this template. The template creates a standard, allowing as many user interfaces as possible (including the Governance UI) to consume this data easily. Additionally, the content is not stored on-chain; instead, it is stored under any publicly accessible source. Although this means the content could be edited, users of Governance Polling can verify the content matches what was originally created by re-hashing the content and matching it to the hash on the poll creation event on-chain.

Voting on a poll emits an event from a voter’s wallet address containing the poll id and the vote option id (from the metadata) the voter supports. Changing a vote emits a new event with the new vote option id. This improvement means that voters no longer have to transfer MKR to the DSChief or setup a vote proxy before getting started.

Voting on a Poll

If you’re an existing user of the Governance Voting Portal, you can continue to vote in a way similar to before, but do so on multiple polls at once with the full weight of your MKR. Simply go to each proposal and select the preferred voting option.

To clarify, your total voting weight now equals the total MKR you have locked through your vote proxy/Chief and whatever amount of MKR you have in both your voting and linked wallets. For example, if you currently have 20 MKR locked into Chief, 10 MKR in your voting wallet, and 5 MKR in the linked wallet, you have a total voting weight of 35 MKR per poll.

New users that keep MKR in a Metamask or mobile wallet, Ledger, or Trezor will find it easier to vote without transferring MKR to any contract. They can simply vote with the wallet that holds their MKR, and the total MKR balance will be taken as the vote weight.

Important Notices

If you move any MKR from your voting wallet or from your vote proxy during a vote, the amount you transfer will also be removed from any existing poll that you have already voted on. For your vote to count, you must ensure the MKR is in your wallet when the poll ends.

Additionally, only the voting events emitted between the start and end timestamps will count toward the final vote weighting.

What’s Next?

An update of the entire governance experience is planned. We are already looking at other ways to show polling data over time, how to use different types of polls, and much more. If you’d like to be a part of our testing and research in the future, please join us in our chat and the Maker Forum.