Open HRMP channels between Robonomics and Karura

TL:DR
Similarly to earlier proposals from Bifrost, Kintsugi, etc. this is to propose opening bi-directional HRMP tunnels, in order to support the cross-chain communication between the Robonomics and Karura parachains.

Motivation
As long term builders in both the Ethereum and Dotsama ecosystems, Robonomics believes in integrating decentralized means of exchange for Robonomics parachain native token (XRT). Listing XRT on Karura swap is the ideal way to allow our token community to swap parachain native tokens in a decentralized way, and opening these HRMP communication channels is the first step in achieving that goal.

Technical details:
The procedure for opening the channels should be carried out as follows:

  1. Request opening HRMP channels
    1a) Robonomics to request to open the Robonomics to Karura HRMP channel (via Governance).
    1b)Karura to request to open the Karura to Robonomics HRMP channel (via Governance).

  2. Wait until steps 1a & 1b are approved & enacted.

  3. Accept requests
    3a) Karura propose to accept Robonomics to Karura HRMP channel (via Governance).
    3b) Robonomics propose to accept Karura to Robonomics HRMP channel (via Governance).

  4. Wait until steps 3a & 3b are approved & enacted.

  5. Wait for another session on Kusama for the change to be effective

  6. Crosschain transfer of XRT will be possible at this stage.

The extrinsics that need to be executed on the relay chain are:

  • For step 1a: hrmp.hrmpInitOpenChannel(recipient: 2000, proposedMaxCapacity: 1000, proposedMaxMessageSize: 102400), which hex-encoded is 0x3c00d0070000e803000000900100
  • For step 1b: hrmp.hrmpInitOpenChannel(recipient: 2048, proposedMaxCapacity: 1000, proposedMaxMessageSize: 102400), which hex-encoded is 0x3c0000080000e803000000900100
  • For step 3a: hrmp.hrmpAcceptOpenChannel(sender: 2048), which hex-encoded is 0x3c0100080000
  • For step 3b: hrmp.hrmpAcceptOpenChannel(sender: 2000), which hex-encoded is 0x3c01d0070000

Note: The proposedMaxCapacity and proposedMaxMessageSize are set to the values of Kusama’s configuration.activeConfig.hrmpChannelMaxCapacity and configuration.activeConfig.hrmpChannelMaxMessageSize values.

These extrinsics need to be called from the respective parachain’s sovereign account as the originator. As a prerequisite, each parachain’s sovereign account must contain at least 10 KSM to be locked as collateral (5 for each channel direction), plus some KSM to pay for XCM execution fees.

19 Likes

Finally !! Let’s do it Robo :robot: !