Clarifying How Burn Works

The supply is not dead-set exact, but there is a soft limit at 21 billion, which is enforced by the Throttle on ootle. It’s one of the more misunderstood parts of Tari tokenomics. But it is clearly stated on Tari / Tokenomics :

The Throttle has three priorities in decreasing order of importance: to i) maintain the XTM:XTR peg, ii) maintain a stable supply of XTR + XTM, and iii) maintain a total token supply of 21 billion tokens.

So this means that the supply should ultimately converge towards 21 billion tokens and then start fluctuating around that number.

Edit: And burning those XTMs won’t change the target to 21b-x at all. They were emitted and the emission function still works the same. It will just take longer to reach the 21b circulating supply, because it has to be reached with the 1% tail emission.

I want to clearly state this, this is incorrect. Ootle only enforces the burn rate going to ootle, remember that rate when burning tari is not 1-1, its 1 => 1-X where X = burn rate.

That X is controlled by consensus on the Ootle, but the Tari Tail emission is set in L1 consensus. Its calculated here: tari/base_layer/transaction_components/src/consensus/emission.rs at be124c3ed056304e490d70282b2198b51fc29435 · tari-project/tari · GitHub

This is incorrect.

And it directly contradicts, what I quoted about the Throttle above. Let me repeat it here: “The Throttle has three priorities in decreasing order of importance: to i) maintain the XTM:XTR peg, ii) maintain a stable supply of XTR + XTM, and iii) maintain a total token supply of 21 billion tokens.”

The highest priority of the Throttle is to maintain that 1:1 burn ratio of XTM:XTR !

The “-X” you are talking about is being added to the Ootle transaction costs as “exhaust”. It is not added to the burn rate for creating XTR from XTM. That would defeat the Throttle’s highest priority design goal of soft-pegging the XTM:XTR burn rate at 1:1.

The tail emission is a fixed 1%, that’s correct (so the total supply is unlimited). I might have been a bit unclear in my wording there. What I meant is that the Turbine powering transactions on Ootle constantly burns XTR to lower the circulating supply. And the Throttle adjusts this burn rate to soft-limit the circulating supply to 21B token.

Recomended Reading:

Look at the code, its not 1-1.
If no L1 is getting burned to L2, then L1 inflates by 1% per year.

The Ootle does not burn any Tari by it self. Its only when users burn L1 to claim L2, then it “burns” some value, thats the X I am talking about.

I’m sorry, but I’m not versed in the code and right now don’t have the time to get into it.

But if it’s true what you say, then the Tokenomics page has been advertising a completely wrong mechanism all the time — which would be a frickin’ disaster!

Let me quote from “Burn Baby Burn: The Turbine Model” on Tari / Tokenomics :

  • “In the Tari Turbine Model, the only way to create XTR tokens is to burn XTM tokens on the Layer 1 and redeem the XTR 1:1 on the Ootle network.”
  • “On the Ootle, a portion of the transaction fee is paid to validators, and a portion of the transaction fee is burned.” (also see the first picture in that section of the page)

That page clearly states that the X you are talking about is being burned on the Ootle. And that’s also what has been evaluated and simulated in great detail in RFC-0323: Tari throttle exploratory analysis - The Tari Network: RFC library . There is also RFC-0320: The turbine model - The Tari Network: RFC library , which talks generally about the Turbine Model and also states that the XTM:XTR burn rate is soft-pegged at 1:1.

I can’t imagine that all this work on RFCs (including developing a simulation suite) was done to then code something completely different without updating the RFCs.

But if you’re right and the code tells another story… I don’t envy the Council who will have to rectify and clean up this mess years after the fact… :confused:

I guess we need to wait for someone else to chime in, but as I understand it, there is no “transaction fee” for converting XTM to XTR. The transaction fee is being paid to the validators for transactions happening on the Ootle. No valiators are needed to oversee the burning of XTM to XTR.

That whole paragraph you are quoting is a bit misleading in its wording as it commingles two different processes: the minting of XTR and the transactions on Ootle. And both have a component of “burning”, though only one of those burns ultimately removes tokens from the supply.

I would also like to reference the image from the Tokenomics page again:

The “A % of all transaction fees is burned” happens between “Tari L2” and the Tapps, not between “Tari L1” and “Tari L2”.

Minting is still a transaction. You keep arguing with me, and I keep pointing out in the Docs how it is. If you don’t want to read the code, point an AI at it and ask it, maybe you will then believe me.

1 Like

Hi @blackwolfsa, nice to meet you and thank you for all the hard work on L1.

We are talking about the Ootle though.

As I mentioned earlier, that paragraph on the Tokenomics page is a bit unclearly written and can be interpreted in different ways. I did also reference some RFCs though, which support my reading of that paragraph.

This was an obviously stoopid statement of me. Claiming XTR is an Ootle transaction just like any other, so of course validators are involved! I started wondering right after posting. I apologize for rushing that post. Everything else I said is correct though as far as I can tell.

Nonetheless I do realize that the code is the authoritative source for how the Ootle works and not some RFCs. So I went looking around and found the following:

As far as I can tell this code runs for every transaction on the Ootle and as such it burns Tari (XTR) every time an Ootle transaction takes place.

If someone can show me that this code does only run for the minting of XTR, the RFCs are wrong and need to be updated.

If not, we should probably update the paragraph on the Tokenomics page to be clearer.

P.S.: Before we dilute this thread with this topic, we should probably open up another thread for this.

P.P.S.: While reading back this thread I started wondering, if the misunderstanding started by confusing XTM with XTR!?