DAO governance is a work in progress for almost every DAO. At Inverse Finance DAO, we’ve chosen a more challenging form of governance that most DAO’s have not yet embraced: fully on-chain governance.
Fully on-chain governance means INV holders can decide the future of the DAO on basically any topic, including which markets to add how DAO funds should be managed, etc. by directly defining which on-chain actions are required to execute the desired outcome. Unlike Snapshot or Discord voting, fully on-chain voting is 100% immutable and completely transparent.
In practice, at Inverse Finance DAO proposals are open to votes for around 3 days, if passed then a 48 hour lock period follows before the vote is executable.
On-chain governance can be tough to manage without a good UX/UI for both proposal creators, delegates, DAO members or visitors. At Inverse Finance DAO we try to make on-chain Governance easy for everyone and as transparent as possible. In this article, we’ll introduce the key features that help the DAO have a smoother Governance process.
Creating a Proposal
Draft Proposals
We introduced off-chain draft proposals as a first step before submitting a proposal on-chain, the draft includes everything an on-chain proposal would need: a title, description and, critically, the actual on-chain actions which are the most important part of a proposal. DAO core members can review and edit the draft. There is a social agreement to publish the draft proposal on the forum for discussion for a minimum of 24 hours unless there is significant time pressure, and voting is delayed for this 24 hour period between when a draft has been reviewed and when it is submitted as an on-chain proposal. A link to the forum post is also usually provided where holders can discuss it (or on discord).
Action Templates for most-common actions
Frequently, proposals contain one or several on-chain actions that are very common, like adding a market, transferring or approving tokens, or adding someone to Inverse Finance DAO’s payroll.
To handle these common actions in a faster and less technical way when creating the draft, DAO members can choose among a list of templates when creating a commonly proposed action.
Below is an example of a template action that illustrates how it simplifies the process of creating a new Vester for a contributor, all calculations and unit conversions are handled automatically:
Human Readable actions
To easily understand what an on-chain action does, most of the time the action will be automatically translated into human-readable texts, below you can see an example of how it greatly improves the readability of on-chain actions:
This makes reading addresses, token amounts, timestamps, durations etc readable for everyone without calculation or converters.
Autocompletes
Autocompletes with names are provided for known addresses regarding both contracts and DAO contributors to help avoid making mistakes when filling addresses and work faster.
Likewise when an ABI is available on Etherscan, the list of the chosen contract write functions are shown in an autocomplete to help the user in its task:
Proof of Reviews
Reviewing Draft proposals can be tricky as communication is spread out in Discord and on the Forum. To make it clearer as to who reviewed what and when, we introduced a Proof of Review system where reviewers can sign with their wallet a simple review that includes a comment or not, the purpose is solely a review of the Proposal and its actions (not the contracts code which should be handled beforehand by Devs on Github).
When the draft is submitted and becomes an on-chain proposal, the Proof of Reviews will still be visible.
Simulate on-chain Actions
Another feature to help have a proper proposal and avoid some mistakes in on-chain actions like forgetting to add an allowance to a contract or using wrong calls/parameters is the Simulation of on-chain actions, this will execute the on-chain actions on a Ethereum fork and show if all went well or not.
Find and Duplicate a Past Proposal
Past proposals can be used to recreate new ones by a simple duplicate as Draft feature, as the number of past proposals growed a lot we introduced a search and tag system to quickly find and identify proposals:
Votes & Delegates
Another important part of a DAO is voting which costs a bit of Ether in gas costs, that’s why most INV holders delegate their voting power to a Delegate, but how would one know who to delegate to?
Besides following a Delegate’s twitter and discord, the best way is to check how they voted on past proposals and who else delegates to that Delegator.
Delegate’s Profile
Most active Delegates have a Pseudo associated with their wallet address, but in addition to that, delegates can also leverage ENS to populate their profile with an avatar, description and socials:
Delegate’s votes
On the same Delegate Profile page, you can see key information regarding the Delegate such as the past votes regarding each proposal (abstained, voted For or Against), helping holders in their delegation decision.
Delegation Events
All the history of the delegation events are visible in a clear human-readable way:
Delegators
The current list of delegators and their voting power:
Governance Operations
Handling DAO members operation costs
On-chain Governance is not free! Each time a proposal is submitted, queued, executed or a Delegate votes it requires some Ether to cover the gas costs. Likewise when a developer deploys a new contract the gas cost can be quite high…
To avoid the hassle of reporting manually every gas costs and help the Treasury Working Group handle the refunds for those operations in an efficient manner we built a UI to handle most of the hard work.
The eligible refundable transactions (Governance actions, multisig actions, Fed actions etc) are automatically listed with all the data required, if a transaction does not appear the TWG can add it manually (for a new contract deployed by a developer for example):
Then it’s up to the TWG or a TWG member to decide which transactions to refund, the process is simple:
By filtering and checking the transactions to refund, then a breakdown of the refund will be shown which can also be exported as a CSV, to proceed with the refunds it then only requires a single transaction to execute them all by using the Disperse contract.
Practice makes perfect
Inverse Finance’s Governance workflow has gradually been improved in recent months with around 80 proposals submitted to date. Creating proposals has become much easier than before with – most of the time – no technical skills required to create a proposal, which means more autonomy for Delegates and DAO members for both creating or understanding the on-chain actions.
There’s still room for improvement and as we continue submitting more proposals we’ll continue improving our Governance day after day…