Weekly Dev Update #74
THORChain Weekly Dev Update for Week 74, 15–21 Dec; Ethereum Support, ROUTER and SEEDSERVICE, Synthetics, Multichain Prep.
This update and the next will be light as part of the team take end-of-year breaks.
Summary
The team continues prep the chain for Multichain, significant progress has been made on Ethereum support. The Router contract is here:
The ROUTER simply manages allowances between vaults, whilst ETH is forwarded through the contract. This allows both ETH and ERC-20 assets to be managed by smart contract calls.The User deposits with a MEMO to the ROUTER, but gives an allowance to a desired ASGARD to spend. ASGARD can then fund Yggdrasil by transferring allowances to spend.YGG vaults can transfer out to Users, emitting an MEMO in the process.
YGG vaults can transfer all their assets back to the ASGARD (forwarding ETH and revoking allowances to spend) with a single contract call.
In addition, the team wrote a Draft SeedService, which can be reviewed by the community here:
The SeedService is designed to be a static entrypoint into the system.
The User should be able to connect to THORChain with just this contract address and a Web3 provider.
The SeedService allows any Asgard to report a list of IPs as a string.
The SeedService expects multiple Asgards, so is append-only.
A user can query to get "last seed" or "recent seed" or seeds from a specific Asgard.
Users should not trust any Asgard, so should query multiple times.
Paranoid users can check the balance of the Asgard address to see the presence of Asgard funds.
THORNode
Bug-fixes and improvements, as well as some changes for Ethereum. Synthetics was also added (this will be treated in a separate blog).
- Resolve “[FIX] Fix for ragnarok , related to gas , asymmetric add liquidity etc.
- update thornode to use tss v1.2.7
- add chain contract
- [refactor] rename NativeTx → Deposit
- [feature] synthetic assets
- Fix mocknet script after native/tx get changed to deposit
- Resolve “[ADD] add smart contract , and deploy it at genesis when it is mocknet”
- [bugfix] refactor gas manager
- Minor multichain tweaks
- fix unit tests
- [bugfix] accounting error when swapping from synth → rune
Midgard
Work continues to prep Midgard V2 to handle Multichain requirements.
- Update thornode api calls
- Refactor history/depths
- Differentiate errors and tests buckets
- Add count parameter for history endpoints.
- Documentation changes
- Add node address to the /nodes endpoint
- ROI / varchar
- add pool-legacy endpoint with some fields.
- exact from..to and pool-legacy swaps
Devops
Continual improvements, including now supporting Azure.
- Change permissions for lock files
- Resolve “Move logs from Elastic Search to Loki”
- Validate and check for standard style format in CI/CD
- Initialize with multiple nodes to prevent Digital Ocean provider volume constraint
Bridges
Actively-developed bridges will be reported here going forward. Bridges are commissioned once a team who can implement is identified and work begins.
- Bitcoin: Complete, edge case testing on live testnet
- Ethereum: Almost complete
- Gaia: Under review
- Haven: Under implementation
- BitcoinCash: Under implementation
- Polkadot: Under implementation
Clients
BEPSwap Client
Numerous UI/UX tweaks based on community feedback
ASGARDEX Client
Work continues to prepare the client for Multichain Chaosnet.
Community Work
The following tools receive regular updates:
Telegram Bot
Twitter Bot
Delphi Defi Dashboard
https://defi.delphidigital.io/thorchain/chaosnet/network
THORChain Network Explorer
Continual Improvements, now with custom sub-domains for each net:
https://testnet.thorchain.net/
https://multichain-testnet.thorchain.net/
THORChain Official Block Explorer
https://viewblock.io/thorchain
THORChain Dashboard (ViewBlock)
https://dash.viewblock.io/d/thorchain
RUNEData
View historical yield and simulate future yield in pools:
RUNEBalance
View current arbitrage opportunities in the pools
https://www.runebalance.com/#/pools
RUNEStake
RUNEStake can be used to see yield in THORChain liquidity pools.
Trading Leaderboard
View the current leaderboard for traders on THORChain
https://leaderboard.thornode.org/
GrassRootsCrypto Youtube
GrassRootsCrypto consistently puts out great educational videos on THORChain, users should subscribe and bookmark the channel.
https://www.youtube.com/channel/UCuC_PiCEsNIT6HH88r7vCsw/videos
Next Milestones
Multi-chain Testnet with Native Rune is deployed and being stabilised. The next milestone is to re-deploy with Ethereum and 0.40 update.
You can view the live network here:
http://18.198.92.45:1317/thorchain/doc/
Community
To keep up to date, please monitor community channels, particularly Telegram and Twitter:
- Twitter: https://twitter.com/thorchain_org
- Telegram Community: https://t.me/thorchain_org
- Telegram Announcements: https://t.me/thorchain
- Reddit: https://reddit.com/r/thorchain
- Github: https://github.com/thorchain
- Medium: https://medium.com/thorchain