BAO unlocking distribution + migration to work with voting escrow (veBAO)

Abstract:

This proposal plans to layout a solution of how to fairly give out locked BAO that was promised to those that participated in bao liquidity farms (early bao users) without issues of over dilution/inflation and move BAO DAO to a voting escrow model for both sharing profits of our products and governance power over all aspects of the system. (reference BIP-6)

Summary:

The BAO smart contract galaxy has been looking at ways in which to safely and fairly move away from our original governance model using the Bao MasterFarmer contract and the accompanying Bao Token (both on main-net and xDAI/Gnosis chain). To briefly reiterate on previous discussion, this is because with the current state of how many locked tokens there are relative to circulating tokens as a result of the farming era that took place on both chains, the rate at which the original linear unlock was scheduled to happen would have caused too large of a dilution (inflation of the Bao token supply) for the protocol to safely handle, and to avoid potentially systemic governance attacks that would mis-align incentives for early participants (those who chose to farm with their liquidity tokens).

To explain further, this is given that we have not yet successfully scaled bao-markets (hard-synths on main-net), before the original unlock time was scheduled, which was/is necessary to help mitigate the dilution of our governance token. More details can be read in previous governance concepts and the proposal to delay the unlock (reference BIP-6).

Bao Distribution:

This brings me to how the smart contract galaxy plans to unlock the tokens that were promised to Bao liquidity farmers. The first proposed step is to define a migration to a new token (BAO v2) that reduces the supply by a factor of 1,000 relative to the original BAO token (~1.5 trillion → ~1.5 billion tokens). This is because the math used inside of the voting escrow contract implementation we will be using from curve finance’s contracts causes errors when using larger numbers for some operations.

The proposed distribution will take place over 2 years and allow anyone to claim their locked tokens before the 2 year period is over in the form of BAOv2 tokens, but at a slashed rate defined by a function of some kind that increases the number of tokens available the longer you wait to claim all the tokens. For example, if one were to wait for 1 year (half-way point of the distribution) to claim all their tokens, they would receive all the unlocked tokens from the first year of the distribution with no slash and the rest beyond the one year they waited to claim would be given to them at a slashed rate. Only after 2 years do you receive all the locked BAO tokens promised at no slash, given as the new BAOv2 token. We have yet to decide where the slashed balances will go, but most practically they would go to the protocol for future incentives to people who are long term invested in BAO. We also need to decide where bao that is never claimed (inactivity) goes and how long past 2 years we allow people with locked BAO to interact with the distribution contract before they are deemed inactive (3-6 months?).

Example:

-Here is the function the smart contract galaxy currently has proposed (weighted more heavily to the end)

-this is to make a larger slash for those that want to dilute the token faster and sell

-X in this piecewise function below is the number of days (the end being the 730th day, AKA 2 years)

-we have also graphed other example functions on the graphic below

The function we implemented is in purple, and the others are examples of some other options. The piecewise function we’ve defined so far is designed to weight distribution towards the end, but not as heavily as an e^((1/n)x) function (plus, the purple function is very gas efficient/cheaper on chain)

For BAOv1 that is already circulating, we will make a simple swapping function that converts the BAOv1 balance to the resultant BAOv2 balance factoring in the supply reduction as mentioned previously.

To summarize, all tokens whether unlocked/circulating or locked will be converted and given at a supply reduction of 1/1000 (.001) relative to the ~1.5 trillion BAOv1 tokens.

veBAO:

With the distribution proposed above, we will now have an unlocking process taking place over the 2 year time period that gives everyone a proportional weighting of the tokens they were promised in the original unlock of locked BAO balances and to already circulating BAOv1 tokens.

The smart contract galaxy plans to set minting privileges for the new BAOv2 token to the BAO voting escrow contract so the only source of new BAOv2 supply will be from emissions in the voting escrow model (as it is in curve finance). We will have to make a separate proposal/concept and discussion for what we want our emissions function to look like and how much our “pre-mine” will be, or in other words how much extra supply as a percentage will be used in the future mining epochs for BAO rewards to BAO liquidity gauges.

-here is curve’s token inflation schedule below for reference in the context of veCRV (pre-mine is 43%)

-this means curve liquidity gauges will receive ~57% of the future curve token supply as time => infinity

-a 43% BAO pre-mine as an example leaves ~57% of the total supply that will exist as time => infinity to the veBAO/BAO liquidity gauges

As for veBAO with regards to the distribution, the smart contract galaxy proposes we allow for 3 possible outcomes for those with locked BAO.

  1. Collect/claim all tokens available before 2 years at a slashed rate depending on how soon they are claimed (in the form of BAOv2 tokens) (tokens are now in circulation after this function call)

  2. Collect/claim all tokens at 2 years (or sometime after) to receive 100% of the locked balance (in the form of the BAOv2 token) into the account address that farmed BAOv1 (now circulating)

  3. Choose to lock your balance in the BAOv2 distribution into voting escrow for a minimum of 2 years and a maximum of 4 years to get into veBAO as early as possible (your tokens will not be circulating but you will get the benefits of having veBAO.

This is meant to be a rough concept of how we could provide a solution for allowing several options (the 3 listed above) to those that participated in BAO early on when it first launched, while still preserving long term incentives for those that continue to support the DAO looking into the future.

The smart contract galaxy has been working on this both in writing code/testing it and giving constructive feedback so hopefully the rest of the community thinks this is a reasonable solution to move forward as it fairly moves us into the voting escrow system we want to use for our product suite on Ethereum Main-net, while also allowing people to decide what they will do with locked Bao they are owed without over inflating/diluting Bao token holders. Let me know what you guys think

With Love,

nox

8 Likes

Supply will be decreased by a factor of 1,000 or 10,000?

1 Like

lol brainfart on my part, In the contract it will be written to scale the supply down by 1000 or in other words ~1.5 billion Baov2 tokens…I have edited the post to reflect that :)

1 Like

I’d like to have this clarified, we would be voting on approving all three outcomes at once? Or would we be voting for three separate options?

2 Likes

This seems to be a very well thought out proposal team - well done.

I support the concept of filtering out the mercenary farmers from the longer term supporters of the project. The function put forward achieves a good balance.

It would be interesting to get an update on how the curve aligns with the current roadmap that will further create a sink for $BAO.

1 Like

@Jester
veBAO is relevant to the distribution in that it lays out what people who still invest/support BAO after the fact can do with the tokens they receive as more gets unlocked/circulating…hence the 3 options at the bottom

That being said I believe we should still split them up (token migration and veBAO related stuff) in terms of voting to make things as simple as they can be, to avoid over involving one super complex BIP when we could have made 2 BIPs with a lot less going on to get a more accurate vote…the first vote, imo, should focused on the distribution itself and its respective parameters in an official BIP, but that will also ultimately decide what is possible for the voting escrow piece moving forward…whether it is the same as I propose or different

1 Like

Did you mean supply reduction/burn by the term sink?

1 Like

What are the benefits of veBAO?

I’m ok waiting how ever long it takes for hard synths so I’m most likely locking up or just waiting till the 2 year mark

2 Likes

@RichAndCreamy
That has yet to be defined 100% at this point, as I think that is something we should vote on in more detail after we agree upon the token unlocking/distribution in its own vote.

If we were to fork curve finance’s voting escrow governance contract directly that would mean veBAO is used to calculate voting power for new BAO proposals, changing the weightings of each BAO liquidity gauge (or in other words the LP tokens we want to incentivize (add/remove) and which one’s are weighted the heaviest/receive the most emissions and lastly, collecting half of all fees generated by the DAO’s products

We would have the same setup as curve finance only instead of all the curve pools and veCRV working in tandem it will be liquidity pools/tokens we need to incentivize for BAO products to work and veBAO working in tandem with those BAO liquidity providers

Very nice. Regarding veBAO distribution can we have the option of choosing between 1, 2, and 3 or do we have to stick to one? I think most people will fall into 1 and 3.

The concept makes sense, but wow, 2 years is a long time - especially since we have already been forced to wait while you deploy hard synths and so on. I am concerned the whole crypto space will have moved on/changed significantly, and what Bao is building, will be totally redundant by that point (or atleast built by someone else, a lot faster).

1 Like

The official Max Total Supply BAO
979,818,838,089.753020493021753894 BAO Increasing this sum to 1.5 trillion and denomination by 1000 factor will automatically reduce the current value of the project by 40% -50%. What in the absence of a real product can practically kill the project. This is only a speculative and comparative analysis in relation to similar projects and their supply. An interesting pattern seems to be the locking approach taken by Hex. A denomination based on a factor of 100 seems more appropriate to me.
There is also a quite radical approach. Copy the project and move it to layer zero.

I was hoping for a slashing component to be added to the claim of locked BAO, so it’s great to see it being proposed with the token migration.

It’s clear that there are some who would prefer to cash out and move on, and that’s fine. It just can’t come at the expense of governance, and the security of the protocol.

This will also allow some of the token supply to be fairly redistributed back into usage incentives, and to users who want to interact with the protocol.

5 Likes

Me and Vex are writing the contract to where you can choose a specific amount you want slashed at a given time, and a particular amount you want locked in veBAO (min 2yrs) and if you want a specific amount streamed normally over the curve with no slash as well, you can…all simultaneously as the 2 year migration moves forward but only with the total balance you have to play with based on how much locked bao you have

no new tokens will be created/destroyed as a percentage of your current amount of the supply in the current Bao token, just scaled down by 1000 as I said, that is unless we vote to burn the slashed tokens instead of giving that back to protocol for more liquidity farming incentives that will help scale Bao markets and Bao baskets using those emissions to give to people who mint the liquidity we need…but I will be making a very technical dive in another concept post in next few days but this was a lot more simple initial idea

3 Likes

That would be the supply number for main-net only…there are also bao coupons on xDAI. The total supply we will actually stop farms at to do the migration accounting for both chains will be my guess is 1.2T<X<1.5T tokens…so we will in pure technicality on the contract side of things only be using Bao main-net circulatingSupply() + lockedSupply() and xDAI circualtingSupply() + lockedSupply() all put together as our total supply number. This means there will perhaps be 1.2B-1.5B Baov2 tokens

I will be making a full technical dive in the next few days for everyone to read everything that will be involved in this process including things like what we will tell CEXs to do with their circulating tokens. This was simply a quick rough idea of how we could unlock…all the numbers will be in that new post I/smart contract galaxy will post

2 Likes

Got you. Awesome. Sounds like giving the tokens back to the protocol would be the preferred move, right? Any downsides?

Thanks for the explanation. Much appreciated.

Well done. Regarding slashing, is there opposition to burning the slashed tokens? The mechanics of burning would benefit all holders of bao making it more attractive from a tokenomics perspective whereas just rewarding stakers and community doesn’t directly onboard more participants.

I disagree with you in some aspects but that’s a fair point. Do you think curve finance is obsolete for example? There governance started in the same way we are proposing and they are still going strong since early 2020 as an example. Also something to note is that the products launching/scaling and veBAO governance and liquidity incentives can start before the distribution is finished and we will not be stopping development of baskets and markets on main-net just to wait for the tokens to unlock (those products will be are ways in which to generate fees for those in veBAO). So all those things will be done before 2 years is over with and those with locked bao that chose to lock for a minimum 2 years as was stated in this concept will be the first to benefit from all those things as they will be the first aquire veBAO if they want and have access to possible extra incentives from the slashed balances being redirected perhaps…we can also vote to burn all the slashes though

Yeah that was my thinking but I think we should still vote specifically whether we want to burn or redirect slashed balances to those more long term people that make liquidity that help scale our products (so community wide choice between the 2)…even so I lean towards making people have to provide value/liquidity for the dao rather than simply hold the token passively in order to benefit and scale the products more but other might disagree

2 Likes

I lean more towards using those slashed balances to help scale bao markets specifically because we need liquidity pools above a certain size for those synths to work.

But I also think that should be left to the community to decide so if we vote to simply burn the slashes so be it…Its still positive for the DAO members (token becomes more valuable) but it makes scaling bao markets to success harder and potentially other things in the future not possible to provide benefits for those that continue to invest long term and support bao

1 Like