Weekly Dev Update #13

THORChain Weekly Dev Update for Week 15–21 Oct 2019

Weekly Dev Update #13

Trading Page Removed

Trading Page was meant to be shipped last week, but the team has decided to remove it. This was done with lots of feedback from both developers and the support team. The following were the considerations:

Pros

  • Community would access 1-click arbitrage.
  • Traders could use the page to visually process the information.

Cons

  • Trading page was extremely complex and required a backend micro-service to field data.
  • Traders will more than likely use bots to process arbitrage.
  • Bots would adapt and iterate much faster than a visual interface so traders on the page would quickly get left behind.
  • Bots are much better at finding price differentials and manually scanning.

As such, the team have removed the trading page and will instead build and open-source a trading bot in both NodeJs and Golang/Python for the community. At least one bot will be available for the community prior to mainnet. Bots will iterate much faster and will help ensure the pools are correctly priced.

The work the team did into the trading page will be used as the foundations of the bot, since the rules-of-thumbs derived for it are the same.

BEPSwap Development

The team are working on 5 parallel streams of effort to deliver BEPSwap, which remains the primary focus.

  1. Cosmos-powered SDK StateChain
  2. Cross-chain infrastructure
  3. Threshold Signature Scheme implementation
  4. Front-end Integration for BEPSwap
  5. Other development activities

StateChain

A lot of new work was merged into the statechain. In summary the big feature was the ability for new service nodes to “bond” a large amount of RUNE in order to become Service Nodes on the network, as well as being able to leave. There is also a new mechanic to challenge-response new pool addresses, fund BNB in old pool addresses for refunds, and proving liveness for a new node. Additionally a scheme for versioning the statechain DB was added for hot-updates, as well as an API rate-limiter for nodes.

Cross-Chain Infrastructure

Work was done on the Observer to update where it was sourcing block-height information, checking to see if it had been whitelisted on start-up (which is part of the new churn mechanics) as well as observing outgoing churn transactions.

FrontEnd

More improvements to the staking and swap pages was completed, with now immediate feedback on transaction progress. Tests were specced out and implemented, as well as a refactor to remove unused code. The trade detail page was shipped, but it has now been removed.

Threshold Signature Scheme implementation

Work was done to allow nodes to converge to an unsigned transaction asynchronously, before signing and sending. The TSS code-base is now being prepared for peer-review.


Whats Next?

To ship mainnet, the team are aiming for this:

Frontend:

Feature complete with excellent swapping and staking experience.

Chain Service:

Feature complete public RESTFul API with potentially a stable GraphQL service.

Statechain:

Feature complete with 3 of 4 of 5 weekly rotation, with ability to upgrade client software and potentially KVStore with no hard forks or coordination, including TSS.


Timelines

The team are working for these milestones. These timelines are indicative, but it is important for the team to deliver with high productivity and constant community feedback.

Other Development:

  • RUNEVault: July 2019 shipped
  • Telegram Bot: August 2019 shipped
  • Bep2Bot: August 2019 shipped

BEPSwap:

  • Testnet: August 2019 shipped
  • Community Testing: shipped
  • Mainnet: Q4 2019 on-time

THORChain:

  • Testnet: Q1 2020 on-time
  • Mainnet: Q2-Q3 2020 on-time

Community

To keep up to date, please monitor community channels, particularly Telegram and Twitter: