Forum

Disable CHAI token support to safe gas for deposit and withdrawal operations

Hi xDai bridge governance participants!

We disturb you this time for another important decision.

Last winter the xDai bridge contract was changed to keep some amount of funds in Chai tokens. Chai tokens is a mechanism that allowed to interact DSR (Dai Savings Rate) feature of MakerDAO. The idea was to accumulate the interest received from the locked DAI tokens as so distribute it among the xDAI consensus validators. But, as you prabably know, DSR is 0.0% almost all the time last monthes. At the same time the xDai bridge users and the bridge oracles are spending gas to swap DAI to Chai (it happens automatically if the DAI tokens balance is greater some threshold). We even received a complaint from a user about this waste of gas. That is why we suggest to disable support of the Chai token in the xDai bridge. As part of the action to disable the support all Chai tokens will be swapped back to the Dai tokens automatically.

If you agree with this proposal, please perform the following:

  1. Visit the xDai bridge governance Gnosis Safe: https://gnosis-safe.io/app/#/safes/0x42F38ec5A75acCEc50054671233dfAC9C0E7A3F6/transactions.

  2. Connect to the Safe with the key that corresponds to the address you specified on the call to register in the governance account.

  3. Choose the transaction with ID 16. The transaction nonce is 14.

  4. Check that the data of this transaction corresponds to the method removeChaiToken() and that the contract to execute this method is the bridge contract 0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016.

  5. Confirm (or confirm and execute) the transaction.

If you have any question or issues appeared during the described steps, write a note below this forum post. As soon as you send a transaction with confirmation, reply to this message.

In order to verify correctness of the ABI-encoded method call represented in the data field of the transaction, take the ABI of the call:

[
  {
    "constant":false,
    "inputs":[
      
    ],
    "name":"removeChaiToken",
    "outputs":[
      
    ],
    "payable":false,
    "stateMutability":"nonpayable",
    "type":"function"
  }
]

By using the service https://emn178.github.io/online-tools/keccak_256.html, make sure that the call removeChaiToken() matches with the sequence 0xda2cd029 set in the transaction. For this, apply “keccak256” function to the string “removeChaiToken()” and consider first 8 hexadecimal nibbles.

Existence of the method removeChaiToken in the bridge contract could be checked on Etherscan: https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016#writeProxyContract.

@d10r, @StefanGeorge, @pet3rpan_notfake, @AdmREQ, @oovg, @austintgriffith, @Freddy_Zwanzger, @GriffGreen, @mgarcia, @igorbarinov please consider the proposal and confirm the transaction in the the xDai bridge governance Gnosis Safe.

@akolotov will there be another proposal to swap out the Chai token with something else? Maybe something using Aave / Yearn?

I think earning interest for locking up Dai was a great incentive for validators and end-users.

Sure. We have such plans. Aave is one of the option. But it will take time to implement this for the current bridge code base.

1 Like

Signed on behalf of @StefanGeorge with account 0xD2b3D480Db9Fb08Ea55c349C0299b81892F31544

1 Like

In support of this proposal!

1 Like

Thanks everyone! All CHAI tokens were converted to DAI:

Further conversion to CHAI tokens during deposits is disabled:

2 Likes