Skip to content

AcalaNetwork/asset-router

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2cb9be8 · Nov 7, 2024

History

74 Commits
Jul 6, 2023
Mar 25, 2023
Apr 5, 2023
Jul 12, 2023
Dec 4, 2023
Nov 5, 2024
Nov 7, 2024
Nov 5, 2024
Sep 3, 2024
Nov 8, 2023
Apr 11, 2023
Jan 11, 2024
Apr 5, 2023
Nov 8, 2023
Feb 22, 2023
Nov 5, 2024
Nov 7, 2024
Jan 11, 2024
Nov 15, 2023
Mar 25, 2023
Nov 5, 2024

Repository files navigation

asset-router

Develop with Foundry

  • install foundry if you haven't.

  • install deps

foundryup
  • build
forge build
  • test
forge test

Run with Hardhat

  • install deps
yarn
  • build
yarn build

wormhole router

$ yarn hardhat run scripts/deploy-fee.ts --network karuraTestnet
feeRegistry address: 0x109FdB5a8f3EC051C21B3482ac89599e7D76561C

$ yarn hardhat run scripts/deploy-factory.ts --network karuraTestnet
factory address: 0x6e29385677E28eE3Df7d0E87e285291F197A6FF3
remember to publish it!
// then manually publish factory contract
  • run the wormhole routing flow on karura testnet
$ yarn hardhat run scripts/route-wormhole.ts --network karuraTestnet

setup finished
{
  deployerAddr: '0x75E480dB528101a381Ce68544611C169Ad7EB342',
  userAddr: '0x0085560b24769dAC4ed057F1B2ae40746AA9aAb6',
  relayerAddr: '0x0294350d7cF2C145446358B6461C1610927B3A87',
  factoryAddr: '0x6e29385677E28eE3Df7d0E87e285291F197A6FF3',
  usdtAddr: '0x478dEFc2Fc2be13a505dafBDF1e5400847E2efF6',
  feeRegistryAddr: '0x109FdB5a8f3EC051C21B3482ac89599e7D76561C',
  routerFee: '0.0002'
}

{ predictedRouterAddr: '0x694BaB061e5eBa2ad91F870f0304E471f7a237EC' }
init state { deployer: '0.7327', user: '0.096', relayer: '0.0', router: '0.0' }
user xcming token to router ...
after user xcm to router { deployer: '0.7327', user: '0.095', relayer: '0.0', router: '0.001' }
deploying router and route ...
after router deposit to wormhole { deployer: '0.7327', user: '0.095', relayer: '0.0002', router: '0.0' }
token bridged to wormhole!
Redeem at https://wormhole-foundation.github.io/example-token-bridge-ui/#/redeem with txHash 0xc3a811f9d6302f0e9a3ccd0f432acb2de84d6ab9d687ff984881493b6bae23cd

xcm router

  • run the xcm routing flow on karura testnet
$ yarn hardhat test test/xcm-route.test.ts --network karuraTestnet

  XcmRouter
usdc address: 0xE5BA1e8E6BBbdC8BbC72A58d68E74B13FcD6e4c7
feeRegistry address: 0x8dA2DebebFE5cCe133a80e7114621192780765BB
factory address: 0xfa62f1874aec14f7ba37723a65ca89a710c80f6c
xTokens address: 0x0000000000000000000000000000000000000809
token decimals: 6
router fee: 0.0002
{ predictedRouterAddr: '0x8cE61c252eCC083751f29FB13E452879307022d2' }
    ✔ predict router address (113ms)

-------------------- init state --------------------
{ deployerBal: 1.837, relayerBal: 0.0014, routerBal: 0, userBal: 0 }
    ✔ init state (338ms)

-------------------- after wormhole withdraw to router --------------------
{ deployerBal: 1.827, relayerBal: 0.0014, routerBal: 0.01, userBal: 0 }
    ✔ after wormhole withdraw to router (12927ms)

-------------------- after router xcm to user --------------------
{ deployerBal: 1.827, relayerBal: 0.0016, routerBal: 0, userBal: 0 }
    ✔ after router xcm to user (49972ms)

homa router

  • start a local acala fork
npx @acala-network/chopsticks@latest -c chopsticks/configs/acala.yml
  • start a local rpc adapter
npx @acala-network/eth-rpc-adapter@latest -e ws://localhost:8000
  • upgrade predeployed contracts with sudo (temp)

  • run tests

yarn hardhat test test/homa-router.test.ts --network acalaFork