$GCD: Development Completed, Testing In Progress
0x8c8b
July 1st, 2022

GTON Capital starts public testing of GTON Capital Money protocol ($GCD)

Roadmap 2022 sets the pace for the development of GTON Capital. Finally, we’re happy to share that the development of the GTON Money protocol has been completed and the team is currently running tests on Ropsten/Goerli and GTON Network testnet.

We are grateful to the students of the Computer Science Faculty of Hochschule Ruhr West for supporting us along the way and conducting the initial tests of GTON Capital products. This time the student team graciously agreed to help with GCD testing.

The student testing is curated by GTON Capital contributor, Dr Marc Jansen, Computer Science Faculty of Hochschule Ruhr West, who provided the opportunity to invite the students.

Although we have an agreement with Hochschule Ruhr West to conduct the testing, anyone can participate because the scope is public.

The authors of the best reports with the most detailed description of the UX, possible bugs. and suggestions for improvement will receive rewards which will be determined by the GTON Capital team after reviewing all reports.

We plan to complete testing no later than July 10, implement all the fixes and suggestions within three days and begin auditing by one of the authorised auditing companies.

The scope

  • GCD minting with ETH as collateral,
  • GCD minting with GTON as collateral,
  • GTON Money (GCD protocol) deployment on GTON Network testnet & script optimization.

Objectives

  • Examine the current user flow from the perspectives of a developer and a regular user, suggest improvements.
  • Analyse the execution of all functions.
  • Conduct the tests: performance test, system test, etc.
  • Detect and describe errors, determine the priority and propose fixes.

Instructions

Minting with ETH as collateral

First, contact @drinkius to get some test GTON to use as collateral.

Example transaction of GCD mint with Eth collateral on Ropsten:
https://ropsten.etherscan.io/tx/0x9bbed531817293dc13779292a34bb4db1ef017d008fa93a9b71fb1fba1f4d35e

To mint, you must first approve wETH:
https://ropsten.etherscan.io/address/0xc778417e063141139fce010982780140aa0cd5ab#writeContract

To the Vault’s address: 0x097f64be4e8de6608b1d28b3732ad480d8d45823
Amount for 1 Eth: 1000000000000000000

Then call join_Eth method here:
https://ropsten.etherscan.io/address/0x7023401be71E1D8C8c9548933A2716aB3234E754#writeContract

Eth value: 1
usdpAmount (renaming will be done later): 894000000000000000000 (about 894 GCD for 1 Eth with the current price of 1.78k+ in the mock oracle aggregator, collateralization rate 50%)

Minting with GTON as collateral

Minting with GTON collateral:
https://ropsten.etherscan.io/tx/0x26c7e91a3361915037cec805454c2f5403b8d3371c26abda6886070a824b7b28

To mint, approve tGTON:
https://ropsten.etherscan.io/token/0xaab9f76100e3332dc559878b0ebbf31cc4ab72e6#writeContract

To the same Vault address: 0x097f64be4e8de6608b1d28b3732ad480d8d45823
Amount (500 tGTON): 500000000000000000000

Then go to the same CDPManager:
https://ropsten.etherscan.io/address/0x7023401be71E1D8C8c9548933A2716aB3234E754#writeContract

And call the join method:
Asset: 0xaab9f76100e3332dc559878b0ebbf31cc4ab72e6
Asset amount: 500000000000000000000 (500 tGTON)
usdpAmount: 127700000000000000000 (about 127.7 GCD for 500 gton given price and collateralization ratio of 30 percent. The price can change.

Keep in mind that it is better to mint less GCD because otherwise the liquidation price is basically just a little bit lower than current oracle price, and if it fails, your position will be liquidated).

After minting GCD, you can bridge it to the GTON Network using this bridge:
0xd23CBBCDBB88302cD2f4dFe3fE62fE27Ec5762fF

First, approve the required amount of GCD in the GCD token contract (0x1ef834d6d3694a932a2082678edd543e3eb3412b) to the bridge’s contract address

Method: depositERC20ToByChainId
Params:
0.002 - ether
50021
0x1ef834d6d3694a932a2082678edd543e3eb3412b
0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000
your address
1000000000000000000000 - 1000 GCD
0
0x00

Deployment of GTON Money protocol (GCD) on GTON Network

Using the main GCD repo:
https://github.com/GTON-capital/gcd-protocol

Deploy the entire token infrastructure on the GTON Network. This is an exercise to figure out the correct steps to deploy the entire GCD setup and be able to mint the token using different ERC-20 tokens as collateral. For help - there are implementations of tokens you can use and deploy:
https://github.com/GTON-capital/gcd-oracles/tree/92404509e2ae4aa2a9c2c23e3dad137d7531276c/contracts/tokens

Deployment scripts can be found here:
https://github.com/GTON-capital/gcd-protocol/tree/master/scripts (GCD as well as oracles, which are integrated into the repo as submodules, so that you can call the whole script setup from the main repo).

Then you need to work on interaction scripts in order to implement all the necessary functions for the protocol’s functioning: setting up new collaterals (bonus points for using oracles from the ones implemented by Unit protocol but not used in the deployment scripts yet. For popular tokens, not some rare ones), minting/burning GCD, liquidations (these smart contracts aren’t in the deploy scripts yet so this also needs to be added to the scripts). Also take a look at Unit’s liquidator - this is a big part of the protocol which needs automation and can also be done as part of this exercise.

You can easily run scripts from the file using such command, for example:
npm run deploy:gcd:gton

The scripts should be written in a separate file to avoid merge issues, file name - gcdInteractions_yourNick.js, please work out of your own fork of the GCD repository.

Reporting

The reports should be submitted as pull requests with a detailed explanation of the fix or suggestion in the main repo: https://github.com/GTON-capital/gcd-protocol.

Throughout the campaign the GTON team will be assisting the testers in the public Discord channel: https://discord.gg/kMrkshGK2d

Follow us:

Website | Twitter | Telegram chat | Telegram channel | Discord | Github | Forum | Blog |

Arweave TX
tp7z7UER14hZiSjPiJ9e47b_XuVgDb8ychtJ1I7Cepk
Ethereum Address
0x8c8b81208C7B7F71CD3279A31F48F1A37bda5df0
Content Digest
6vW4iT21G8d2pVp-KWLX4isxaIbzhckxMa_twAYHoIU