Abstract
The post describes solutions how to give DeFi users a voice in Governance. The requirements for participating in Governance need to be modified. The registration requirement should be modified to allow registering of all the stake not held directly in one’s own account. This can be achieved with a decentralized solution akin to ASA Stats. The commitment requirement of holding the stake uninterruptedly throughout an entire Governance period should be modified to require holding of only an average commitment throughout that period. Lastly, the post describes how the issue of Governance hindering the use of DeFi due to attractive risk/reward ratio should be addressed.
Introduction
In the Foudnation’s post about the proposed Goveranance measures for Q3 2022 (i.e. G4), there have been a lot of opinions voiced on different matters, especially related to the distribution and use of uncirculated ALGO (i.e. “rewards”). However, the discussion has overshadowed the crucial aspect of what changes to the actual Governance format are even needed and how they should be implemented to achieve the targeted objectives.
This (lengthy) post first tries to identify what the actual objectives of the proposed measures are. Based on the identified objectives, it derives the needed changes to the Governance. It highlights the issues of the Foundation’s suggested implementations and provides a counterproposal. Pros and cons of the counterproposal are addressed.
Objectives of the measures
Based on the Foundation’s provided rationale, the overarching objectives of the two proposed measures seem to be:
- Give DeFi users a voice in Governance by granting them voting power.
- Increase the use of DeFi - more specifically, the use of ALGO in DeFi.
Possible solutions to achieve these two objectives should be addressed separately, although the former does have an influence on the latter. However, it is imperative that any changes to the Governance system and the voting power respect the two core principles of Algorand: equality of each and every ALGO, and direct participation. These principles are integrated in Algorand’s PPoS consensus and should be respected in Governance as well.
The meaning of these two principles with regards to the voting power is not only the 1 ALGO = 1 vote rule but also that the requirements to even be included in Governance must be exactly the same for all.
Current requirements to participate in Governance
The initial network-wide referendum that enabled the Governance program stipulated the requirements to be (taken from page 4 of “Decentralizing Algorand Governance”, accessible here):
- Register an Algorand address to use for governing for the current period (of three months).
- Commit to holding a certain ALGO balance in that account throughout the period.
- Participate in the vote that the Foundation calls in that period.
Besides these three agreed upon requirements, another requirement was imposed by the Foundation’s current technical implementation:
4) Registration can only be made by issuing a transaction of specific format directly from the address, which is to participate in Governance, to an address defined by the Foundation (as detailed here).
And another implicitly assumed requirement (again due to the current implementation):
5) The vote needs to be cast directly from the registered address.
Solutions to Objective 1: Give DeFi users a voice in Governance
To try to come up with solutions for giving DeFi users a voice in Governance, one should first consider if the ALGO stake in DeFi fulfills the current Governance requirements. If it does not, it needs to be considered whether and how the requirements could be modified to allow DeFi participation while still continuing to respect Algorand’s core principles.
When looking at the current requirements, it becomes clear that DeFi could actually fulfill all of them except the imposed 4th one and the implicitly assumed 5th one. This is due to the nature that majority of DeFi solutions do not have a central authority that could issue the required registration and vote transactions. These technical limitations can be overcome relatively easily by simply modifying how address and stake registration as well as voting can be executed.
Redefining registration of stake commitment
Instead of allowing registration only of the stake in an account that one has access to directly through its spending keys, it should be allowed to register the stake that is delegated to another address but still owned by the primary one. However, for this to work, it has to be absolutely clear that the primary address is indeed the sole owner of the delegated stake. This ownership is typically represented through some form of tokens (e.g. LP tokens of liquidity pools of DEXs or lending platforms) or as a stored state in a smart contract (e.g. for staking services or escrow accounts).
In its essence, this is actually what the Foundation proposes in M2 but (unnecessarily) limits it to only LP tokens of DEXs and even to just pools with specific assets.
It might seem straightforward to track the delegated stake through only LP tokens of DEXs, but even this must not be done hastily.
For tracking a stake one has delegated to an LP on a DEX, one needs to define (and track):
- account that holds the delegated stake,
- account that holds the uncirculated LP tokens, and
- how the stake in the pool is divided among LP tokens (commonly pro rata).
These criteria are embedded in a smart contract. In the current form of M2, it would be up to the Foundation to interpret the smart contract and made this connection. Indeed, this probably seems trivial to do for anyone reading this. Nonetheless, it should not be up to a central authority to make this claim, not only to have a decentralized system but also to protect the Algorand (Foundation) in case there is an exploit of the smart contract. Many could see the approval of the Foundation of the LP token as an endorsement of the smart contract backing it, which would damage the Foundation’s reputation if the contract is hacked (although the Foundation never made a claim that it audited the contract).
As an alternative, the following framework should be considered.
The definition of the connection between an LP token and the actual ALGO stake it represents should be put to a Governance vote. The Governors should confirm that the representation is accurate, thus alleviating the Foundation from (objective) responsibility and any potential liability. Since this is a slightly more technical vote, it should have an “abstain” option.
This would need to be done for each and every pool, but multiple could be joined together in batches that are submitted by respective protocols for all their pools (since those all are based on the same smart contract).
This framework can easily be generalized to other DeFi protocols. The connection from a primary account to a delegated stake just needs to be defined for each one. In its essence, this would be exactly the same as what e.g. ASA Stats is already doing (i.e. tracking your ALGO stake through the ecosystem), just that the methods would be confirmed by Governors. With such a framework, there would be no need to rely on intermediaries to provide lists of eligible DeFi accounts, as suggested in M1.
Implementation details
When registering for Governance, another field would need to be added to the transaction referred to as “method” to mark the commitment of a particular delegated stake. For example, “method: 794708849” would mark that one commits the delegated stake that is represented by LP tokens of gALGO-ALGO pool on Tinyman. The “method: direct” would represent the existing commitment of the stake directly held in one’s account. This method would take precedence over any other claim. This is needed for example if Governors were to approve (mistakenly or maliciously) a claim that a token called LP-SilvioM actually represents a delegated stake, which in reality belongs to an address of Silvio M. If the address issues a transaction with “method: direct” it would automatically nullify the decision approved by Governors. All approved methods would be stored in a list on Algorand Foundation’s Github, i.e. made publicly available. When a proposal for a connection would be made, the proposer would be required to also provide the means for the Foundation to track the commitments made through that method (to reduce the effort for the Foundation).
DeFi protocols would be inherently incentivized to submit the methods for their protocols and give their users the means to issue the required transaction, since otherwise they might leave for a different platform where they can vote with their delegated stake.
This framework would also easily allow generalization to so-called “secondary” delegation options. For example, if the LP tokens of a DEX are submitted to a staking contract, just another method would need to be submitted to allow tracking of the “primary” delegation method (i.e. establish an approved chain to the delegate stake).
The approval system would work as long as the majority of Governors act for the good of the ecosystem - i.e. the basic assumption of Governance. If valid method claims were rejected, then protocols would leave the ecosystem, giving it a bad reputation, which is not in the interest of good actors.
If a method was approved that claimed access to an account that was already approved, the new method would take precedence (i.e. be updated). If two different methods were approved simultaneously that claimed access to the same address, the Foundation should reject both (since two should not be able to claim ownership to the same stake).
With this system, there would be no need to change the actual voting mechanism. Only the voting power would be the sum of the committed stake through all the methods, instead of just the stake held in the account itself.
Commitment: from a hard-limit to an average
Besides the two imposed requirements that DeFi could not currently fulfill (but could with the solution described in the previous section), there is also a practical issue for DeFi to abide by the 2nd requirement of not violating the commitment throughout the whole period. Due to the fact that in DeFi the stake needs to be liquid, it is easy to break the commitment - intentionally or not (e.g. due to temporarily large swings of an liquidity pool of a DEX or due to someone borrowing of your stake on a lending platform).
With M2, the Foundation tries to address this issue (for LPs of DEXs) by:
- taking a snapshot of the stake at the end of the registration period,
- allowing the actual ALGO stake to decrease,
- but still giving the user the voting power equal to the stake that was committed at the start.
To prevent misuse of this, e.g. by committing of ALGO to a pool where one holds all the LP tokens, and removing them after the registration ends to use it elsewhere (i.e. draining the pool), they suggest limiting the pools to only assets that fulfill certain requirements (to minimize the chance of draining of the pools - but not preventing it).
This solution has two main issues:
- It is discriminatory against small projects. For these, the liquidity is even more crucial than for larger ones and users will be disincentivized to participate, making it harder for competitors to rise.
- It contradicts the core principles of Algorand - equality of each and every ALGO. The commitment requirements for ALGO in the pool are different from others. They can (intentionally or not) fall below the commitment level and still remain eligible.
These issues can be overcome with a different solution - to change the meaning of commitment for all. Instead of having a hard-limit below which one must not fall, instead rather require an average commitment in the period (i.e. a cumulative ALGO*period stake).
With the requirement of an average commitment, any DeFi protocol could participate and more easily fulfill the requirement without being subjected to the dangers of a short-term manipulation. However, it must be noted that a commitment of one’s full DeFi stake will most likely still result in breaking even this modified commitment requirement. For example, if one commits 100% of one’s stake in an LP of a DEX, this would mean that during the Governance period one expects the average price to remain the same. It might be more prudent to protect on the downside and e.g. commit only 80% of the stake in case the asset depreciates against ALGO. Similarly, for a stake lent on a lending platform, it would make sense to commit only e.g. 15% of one’s stake if the optimal borrow utilization of the protocol is e.g. 80%.
Some might argue that not being able to (reliably) commit 100% of one’s DeFi stake is unfair. However, when one participates with one’s ALGO in DeFi, one is willingly prepared to part with one’s ALGO - i.e. is willing to sell a portion of the stake (e.g. in a DEX pool if the other asset depreciates or in case of lack of liquidators on lending platforms). Hence, it could be regarded as a less-firm commitment towards ALGO, justifying the lack a guarantee for a commitment of 100% of one’s stake, i.e. voting power.
Note that this would also open possibilities for speculation - both on the upside and downside. One could commit more than 100% of their initial stake e.g. if one plans to DCA or expects the asset in a DEX pool on average to appreciate against ALGO. ALGO day traders could still participate in Governance and remain eligible if successful in making an average profit. Since these traders are hoarding ALGO, it would seem that they believe in its success, thus could be viewed as having a long-term commitment towards it. Exchanges would most likely still fall out of Governance if they overcommit and the users remove the funds from the exchanges. To remain eligible, they would be required to purchase ALGO, having a positive impact on its price. However, it should be expected that due to all this possible speculation, the price of ALGO could see an increase in its volatility.
Lastly, to point out, the notion of an average commitment is also used in Algorand’s PPoS consensus.
In short, an average commitment would open the stake to remain liquid, which is crucial for DeFi usage, while maintaining the exact same requirements for all Governors.
Implementation details
Tracking of the average commitment is easily done by just summing the stake through all the blocks in the Governance period. The only difference is that it would be clear only at the very end of the period whether an account has remained eligible or not, thus the votes could be finalized only at that time.
This can be easily combined with the framework suggested in the previous section - to essentially have a solution similar to using ASA Stats for each Governor for each block in the period and summing the ALGO stake, from which the average can be calculated.
Objective 2: Increase the use of DeFi
The objective of increasing the use of DeFi is regarded here with respect to Governance hindering DeFi use due to Governance providing an attractive risk/reward ratio with which it is difficult for DeFi to compete.
This objective can be achieved in 4 ways (or any combination thereof):
- Reduce the rewards for Governance
- Increase rewards for DeFi
- Decrease the risk of DeFi
- Increase the risk of Governance
The 4th option should not be desired because it will reduce the number of Governors participating (e.g. if all were required to run participation nodes), thus lead away from decentralization. Hence, it will not be considered further here.
There are two ways to reduce Governance rewards. A direct one by explicitly lowering the reward pool or implicitly by enabling participation of more ALGO in Governance, e.g. with the above described solutions for DeFi. It should be noted that the effect of the latter would currently be minor since there is only <100M of ALGO in DeFi that is not already participating in Governance (compared to ~4B committed to Governance).
Explicitly lowering Governance rewards is a delicate topic as seen from the many voiced opinions, thus requires a diplomatic approach. But regardless of the end decision on this, it needs to be pointed out how the decision should be enacted.
Governance rewards must remain the same for all Governors. Same requirements, same voting power, same rewards - equality of each and every ALGO.
If it is decided e.g. that rewards for “ordinary” Governors are to be reduced and “DeFi” Governors rewarded more, the question should be termed as follows: ‘Should Governance rewards be reduced for X amount and use that amount to incentivize DeFi participants, who also partake in Governance?’.
Note that there is no practical distinction about the end result of this wording compared to the Foundation’s in M1. However, it does not violate the core principles of equality in Algorand and Governance. While this might seem just being pedantic, it is an important distinction for long-term reputation of Algorand.
To approach potential lowering of rewards diplomatically, it should be much more clear how the reduced rewards will be spent and benefit the Governors. For example, if rewards are lowered and redirected to DeFi, it should be made publicly available what are the expected changes to DeFi usage as well as justification provided for those expectations (e.g. by publishing a report on the use and effects of Viridis Phase I and Phase II - Aeneas programs). Other options on how the reduced rewards could be used and directly benefit the Governors are:
- Giving grants for development of a decentralized system for how community proposals are put to vote in Governance. The development of xGov has progressed slower than expected by the community and alternatives not really considered (at least publicly). The grants could speed up the development as well as allow the community to make an informed decision from multiple options, which is imperative for such a crucial part of Governance.
- Reducing DeFi risks by having a bounty program led by the Foundation/Governors or incentivizing insurance of DeFi even more than currently planned through Nimble.
- Incentivize participation node runners, not with direct rewards but by educating the community on the importance of running nodes, how to do it themselves, and even subsidizing the needed hardware (as e.g. discussed here).
- Promote participation in Governance and remind Governors to sign-up by e.g. sending on-chain notifications to all existing accounts (at current 26M accounts, that would cost only 26k in fees per quarter). Similarly, all registered Governors should receive on-chain notifications when voting opens (at ~50k Governors, that’s only 50A in fees per quarter).
Conclusions: Questions to pose to Governors
Based on all the addressed points, the questions for the measures could be formed as follows:
- Should the Governance registration be modified to allow registration of stake not directly held in one’s own account?
- Should the Governance requirement of holding the committed stake uninterruptedly throughout a Governance period be modified to require holding of only an average commitment?
- Should the Governance rewards be reduced by X amount to be used for Y purpose?