Skip to content

Commit

Permalink
docs: rfc-323 tari throttle (#130)
Browse files Browse the repository at this point in the history
TariThrottle is a simple process controller designed to modulate the
layer two burn rate in order to achieve two
goals:

* Primarily, keep the emission and burn rate roughly balanced (ensuring
long-term sustainability of Tari), and
* Secondarily, to maintain the total circulating supply at a target
value (satisfying an implicit assumption in
  cryptocurrencies that token supplies are finite).

A proof-of-concept controller has been implemented and tested in a
simulation environment ([repo]). As the results
below attest, the controller logic is sufficient to achieve these goals,
even under highly volatile layer two fee
conditions. 

However, the controller achieves the goals at the expense of a rapidly
changing layer two burn rate, which may be
detrimental to the sustainability of validator nodes. 

At the risk of the tail wagging the dog, the primary conclusion of this
study is that the TariThrottle controller
should likely _not_ aim to maintain a supply target, but instead to
ensure a sustainable layer two ecosystem, to
whit:

* maintain a constant demand gradient so that under normal circumstances
there is _always_ a demand for new Tari and
  thus Minotari are constantly being burnt to satisfy this demand,
* marginal Validator Nodes are able to operate at or near break-even
rates, while maintaining a healthy reserve of
  capacity for surge demand, and 
* the supply of Minotari is sustainable over the long-term.

Therefore, the conclusion of this study is not to abandon the original
targets of the TariThrottle completely,
but to adjust the priority of the primary goal (a sustainable long-term
balance), and make it subservient to the
primary goal of ensuring a constant demand gradient.

A modified Tari throttle model that seeks to achieve these aims is
outside of the scope of this RFC and is left for
a follow-up study.
  • Loading branch information
CjS77 committed Mar 21, 2024
1 parent c27f51f commit e12f9ba
Show file tree
Hide file tree
Showing 54 changed files with 35,526 additions and 0 deletions.
721 changes: 721 additions & 0 deletions src/RFC-0323_TariThrottle.md

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
- [RFC-8002: Transaction protocol](RFC-8002_TransactionProtocol.md)
- [RFC-8003: Tari Use Cases](RFC-8003_TariUseCases.md)
- [RFC-0385: Privacy-enabled Stablecoin contract design](RFC-0385_StableCoins.md)
- [RFC-0323: Tari throttle exploratory analysis](RFC-0323_TariThrottle.md)

- [Deprecated RFCs](deprecated.md)

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

0 comments on commit e12f9ba

Please sign in to comment.