Proposal: Carbon Vortex

To be posted to snapshot June 25, 2023

TL;DR

  • The Carbon FeeBurner (also referred to as the Carbon Vortex) has been part of Carbon since launch
  • The recent changes to the Fastlane require changes to the Carbon Vortex behavior
  • Whereas the contract currently holds no TKN but can be used to collect fees from the (CarbonController), this proposal suggests an additional process where it can also handle TKN that the contract itself holds (such as those it receives from the Fastlane).

CarbonVortex

Goal

To create a generic contract that can receive fees collected from multiple parts of the system in token format (BNT or TKN), and expose a public function that can be called by anyone and execute a trade and burn.

Contract

CarbonVortex contract will have access to the following:

  1. Carbon fees (vortex)

The CarbonVortex can access any collected fees that are available in the CarbonController in a given token.

  1. CarbonVortex’s own balances

Fastlane arb transactions will result in sending the protocol portion to the CarbonVortex contract. These fees will be available for the CarbonVortex to interact with.

Public write function

CarbonVortex will expose a public write function that can be called by anyone.

Function execute()

When calling the function:

  1. Caller needs to pass token address it would like to burn (it can be a list of tokens)
  2. The function will access token fees collected on CarbonController AND CarbonVortex balance
  3. The function will trade a portion (currently defined as 98%) of the token to BNT using Bancor v3 pool
  4. Caller receive the public incentive (currently set at 2%) at the end of the transaction in TKN

Public read functions

Users can find the available fee amounts in few places

  1. CarbonController, function accumulatedFees(token) will return the available fees collected on Carbon for the specified token
  2. CarbonVortex balance of the token
  3. CarbonVortex, function availableFees(token) will return the sum of available fees collected in both CarbonController and CarbonVortex.

Next Steps

If this proposal passes, we should expect a second version that will also know how to handle tokens that do not have liquidity on Bancor 3.

FOR

Update the Carbon Vortex as detailed above.

AGAINST

Take no action.

6 Likes

I support this proposal.

2 Likes

FOR

Update the Carbon Vortex as detailed above.

1 Like

We support this proposal.

1 Like

Totally support this.

1 Like

Very much support this!

1 Like