Due to Snapshot character limitations, this proposal has been shortened, the Clarifications, Topics for Discussion, and Notes sections can be found in the original Forum post.
author(s): @larry_cucumber, @leekuanjew, @cipio
Abstract
- As market volatility batters the DeFi 1.0 v DeFi 2.0 narrative, Larry the Cucumber has signalled a clear focus on revenues for Pickle as a DeFi OG protocol.
- This proposal was inspired by Andre's ve(3,3) tokenomics for Solidly, a model likely to be implemented on cousin projects Yearn and Keeper. If this proposal passes, the ve tokenomics created by Curve and already adopted by Pickle will be improved to:
- clearly frame the utility of $DILL locking as a claim on Pickle revenues: present and future.
- reduce dilutive pressure on $DILL lockers.
- dynamically reduce $PICKLE emissions as $DILL adoption increases.
- These enhancements will be accomplished by:
- switching the revenue-sharing token to $ETH (either native or wrapped ERC-20) for $DILL distributions.
- on top of $ETH from revenue-sharing, adding a second anti-dilutive reward of $PICKLE (either naked or vested $vPICKLE) to $DILL distributions.
- introducing dynamic (3,3) emissions i.e. as $DILL supply increases as a % of $PICKLE total supply, emissions will decrease.
- This proposal contains two parts:
- (I) Tokenomics enhancements, summarised above.
- (II) Treasury restructuring, summarised below.
- Governance discussion is needed to determine if both parts will be voted on together or separately.
- The proposed tokenomics changes should be accompanied by a restructuring of the Treasury, as follows:
- 100% of Protocol revenues to be sent to $DILL lockers.
- Governance to authorise a mint representing a 100% increase in locked $PICKLE supply for the main Treasury address.
- Treasury to max lock all newly-minted $PICKLEs for $DILL, thus attaining at least 50% of all $DILL (if everyone max-locks).
- Treasury to use $ETH received in $DILL distributions for development, bounties, operations, marketing & growth, $CORN buybacks, periodic $PICKLE buybacks, etc – as per the budget approved in PIP-44, under the oversight of the SCCOC.
- Treasury to use $PICKLEs received in anti-dilutive $DILL rewards for the following authorised purposes:
- for strategic initiatives, approved by the SCCOC.
- to build a reserve of $PICKLEs for future use or protocol-owned liquidity, deployed with SCCOC approval.
- to re-lock in $DILL, in order to defend its % of ownership, with the advice and consent of the SCCOC.
- Treasury to periodically sell reserve $PICKLE on the market as options to community members, CowSwap style, with Governance consent.
- Treasury to progressively decentralise the Protocol, increasing the % of $PICKLE in the hands of community members.
Proposal
Part I, Section 1: Revenue-sharing for $DILL in $ETH
- At present, revenue-sharing is done by buying $PICKLEs from the market with revenues, which are distributed using the
FeeDistributor contract.
- When implemented, the Pickle Protocol had buybacks as part of its value-capture design, so the community believed $PICKLE to be the most appropriate fee token. This version of "ve" tokenomics differed from the original veCRV from Curve, which uses $3CRV (a Curve LP position made of the three major stablecoins, essentially a "yield-bearing dollar") as a fee token, yet basically, every other protocol that adopted "ve" tokenomics after Pickle used our design (using the native token as the fee token), that is until Andre's ve(3,3).
- The reason ve(3,3) recommends a non-native token is to avoid volatility affecting the status of the fee token as passive income. The idea of ve(3,3) is to go beyond making the governance token an "interest-bearing asset" but providing lockers with a clear "claim on fee ownership" which requires ownership percentages that can be easily defended, a token with wide utility as the fee token, and a mechanism to make locking collectively desirable.
- Over our time using $PICKLE as the fee token, we have found that the effects of buybacks to be temporary and only accrue to the most sophisticated traders, whereas most lockers end up absorbing the $PICKLE volatility, which makes it harder to use $DILL as a tool for passive income.
- Using $ETH as the fee token instead of $PICKLE makes sense as the first step towards ve(3,3)PICKLE. Harking back to the time of "$PICKLE gives you $ETH", the idea would be to create demand for $PICKLE not from buybacks, but because they represent a claim rights to a steady (or even better, a growing) stream of a highly sought-after, hyper-liquid, ultra-high utility token like $ETH. As $ETH is much less volatile than $PICKLE, a user may even be incentivised to increase his "percentage of ownership" in the Protocol by buying $PICKLEs back with their $ETH in order to increase their lock amounts.
Part I, Section 2: Anti-dilutive $PICKLE rewards for $DILL
- users will continue to receive $PICKLE rewards for depositing into $DILL
- these rewards will not come from $PICKLE buybacks (tho may occasionally do so as "special dividends"), but rather from "anti-dilutive" emissions.
dill.totalSupply / pickle.totalSupply of adjusted emissions will go to $DILL holders every week, the rest going to farms. Auxiliary contracts may be needed to obtain these parameters precisely or the implementation may involve averaging these parameters over the course of an epoch via off-chain scripting. Implementation details left to Core team.
- to mitigate impact to farms, emissions will be set to 0.15
picklePerBlockas new initial state of the system.
- dual rewards (revenue-sharing + anti-dilutive) managed by a new
FeeDistributorV2 contract, to be developed by the Core team should this proposal pass.
- borrowing from Olympus's original (3,3), there is the possibility to add a time delay to these anti-dilutive $PICKLEs so they're even less likely to be dumped right away. Using a contract called
VestedERC20.sol, $PICKLE can be wrapped into $vPICKLE, which is at the same time transferrable and linearly vesting $PICKLE (say over the course of 5 days).
- Of note, using $vPIKCLE would add significantly more complexity as we would have to create $vPICKLEs with the right expiry for every distribution of anti-dilutive rewards. The user would also need to pay a transaction to redeem the underlying $PICKLEs, likely using Etherscan. The decision is up to the DAO.
Part I, Section 3: Dynamic $PICKLE emissions
- to fully enable (3,3) dynamics, $PICKLE emissions will decrease as $DILL increases relative to $PICKLE. A fixed
emissions parameter will be adjusted with the formula adjusted_emissions = emissions * ( 1 - ( dill.totalSupply / pickle.totalSupply )).
- This means if all $PICKLEs are max-locked,
adjusted_emissions will be zero. Conversely, if no $PICKLEs are locked, adjusted_emissions will equal emissions. This encourages everyone to collaborate and lock for $DILL in order to reduce emissions and create positive pressure on the $PICKLE price.
- it will be very important to accurately decide on the parameters
dill.totalSupply and pickle.totalSupply the purposes of adjusted emissions (and the % of adjusted emissions going to $DILL and Farms). Auxiliary contracts may be needed to obtain these parameters precisely or the implementation may involve averaging these parameters over the course of an epoch via off-chain scripting. Implementation details left to Core team.
Part II, Section 1: 100% Revenue-sharing for $DILL
- fundamental to Treasury restructuring is about building an ever more resilient protocol.
- currently, when locking for $DILL, you are eligible for 45% of the revenues Pickle generates, distributed weekly. Ideally, that number should be 100%.
- other revenue-focused protocols like Curve, LooksRare, and Solidly give 100% of revenues to those locking or staking the governance token, which is also the essence of ve(3,3).
Part II, Section 2: The Treasury $DILL
- In order for the Treasury to maintain the current level of development in the protocol under a 100% revenue-sharing paradigm, it needs to hold a position in $DILL. However, the Treasury does not have an extensive reserve of $PICKLEs to lock since $PICKLE was fairly launched. The option to mint a reserve for the Treasury lays (and has always laid) in the hands of the community.
- If this proposal passes, Pickle will carry a strategic mint (its very first), in order for the Treasury to control 50% of locked $PICKLEs as $DILL and thus receive 50% of the governance rewards. At present, almost 1M $PICKLEs are locked for $DILL, ergo this proposal would authorise the mint of as many $PICKLEs as will be locked for $DILL on the day the proposal passes (1M $PICKLEs in this example).
- $PICKLEs minted under this proposal will not reach the market, instead, they will be "perma-locked" (max-locked and extended to max-lock periodically) in order for the Treasury to control a minimum of half of the max $DILL supply (what $DILL supply would be if everyone locked extends to max).
- Thus, after locking for $DILL, the Treasury would receive two rewards every week: revenue-sharing rewards (say, in $ETH), and anti-dilutive rewards (say, in $PICKLE).
- The Treasury will use its $ETH from revenue-sharing (the "$DILL distributions") to finance the Protocol's development, bounties, operations, and marketing & growth i.e. continuing business as usual as per the budget approved in PIP-44, which will continue to be deployed under the oversight of the SCCOC. The Treasury will continue to carry out weekly $CORN buybacks at the same level of revenues, and also carry out periodic $PICKLE buybacks when market conditions justify them, and either hold them in reserve or distribute them as "special dividends".
- The Treasury will also receive $PICKLEs from anti-dilutive $DILL rewards, and this proposal restricts the Treasury in using these $PICKLEs for only the following authorised purposes:
- strategic initiatives like co-marketing, bootstrapping pool-2s of $PICKLE, seeding liquidity in CEXs, et al – any such "strategic initiative" will have to be approved by the SCCOC through its normal resolution procedure before the $PICKLEs can be appropriated.
- the Treasury may choose to build a reserve of $PICKLEs for the purposes of providing $PICKLE Grants for contributors, paying bonuses, or for building protocol-owned liquidity – any such deployment of $PICKLEs in reserve will have to be approved by the SCCOC.
- to re-lock in $DILL, in order to defend its share of entitlement to revenues. This will be done with the advice and consent of the SCCOC as the community may wish for the Treasury to reduce its percentage of ownership as the Protocol grows and achieves better economies of scale.
- The Treasury may periodically sell reserve $PICKLEs on the market as options to community members by passing a Proposal for each particular "Exit to Community" round. The current thinking around this is to borrow a page from the CowSwap $COW options which were offered to the community first and where terms were never worse for community members than for professional investors.
- The Treasury may divide its $DILL holdings over several wallets, in order to support differentiated locks. The Governance may vote to allow any of these locks to expire and decide on the fate of the $PICKLEs once they unlock (e.g. using them for fundraising via an "Exit to Community" round).
- Over time, the Treasury will act to realise the strategic vision of Pickle which is to progressively decentralise the Protocol. For the Treasury, this means increasing the percentage of $PICKLE in the hands of community members and reducing its own entitlement to Protocol revenues by reducing its share of the $DILL supply. This progressive decentralisation will be achieved via a combination of grants, special dividends, and community fundraising rounds.
Specification
- Part I:
- a
FeeDistributorV2 contract to be developed by the Core team, supporting two tokens as claimable rewards:
- $ETH (or $WETH if $ETH is unfeasible) as revenue-sharing rewards, coming from fees generated by the protocol.
- $PICKLE
- Pickle UI to change to integrate
FeeDistributorV2 dual rewards (claims of old rewards in FeeDistributor will still be supported).
FeeDistributor to be "deprecated", claims allowed but no further $PICKLE transfers there by Governance. FeeDistributor.kill_me() won't be called as then claims would be disallowed and all $PICKLEs are returned to Treasury – the emergency_return address.
MasterChef.setPicklePerBlock(adjusted_emissions) to be called by Governance.
- Core team will develop auxiliary contracts or an off-chain scripting solution to calculate the split of $PICKLE emissions between anti-dilutive rewards (sent to
FeeDistributorV2 for distribution) and the Gauge System as well as sidechain MiniChefs, giving $DILL a share according to the formula: dill_emissions_share = dill.totalSupply/pickle.totalSupply
- Core team will develop auxiliary contracts or an off-chain scripting solution to transform
emissions into adjusted_emissions using the ve(3,3) formula: adjusted_emissions = emissions * ( 1 - ( dill.totalSupply/pickle.totalSupply
- Part II:
PickleToken.mint(_to, _amount) to be called by Governance via MasterChef.
_to will be the Treasury address.
_amount will be 100% of the number of $PICKLE locked in $DILL on the block this proposal passes.
- All $PICKLE tokens in possession of the Treasury address will then be locked directly or through a proxy contract (in order to support multiple locks) by calling
VotingEscrow.create_lock(_value, _unlock_time) with _value being the total amount of each lock and _unlock_time 4 years.