rebrand: kusama → dicle
- Replace all kusama/Kusama references with dicle/Dicle - Rename weight files from ksm_size to dcl_size - Update papi-tests files from ksm to dcl - Remove chain-specs/kusama.json files - cargo check --workspace successful (Finished output) - Update MAINNET_ROADMAP.md: FAZ 8 completed
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
# High-Level Bridge Documentation
|
||||
|
||||
This document gives a brief, abstract description of main components that may be found in this repository. If you want
|
||||
to see how we're using them to build Pezkuwichain <> Zagros (Kusama <> Pezkuwi) bridge, please refer to the [Pezkuwi <>
|
||||
Kusama Bridge](./pezkuwi-kusama-bridge-overview.md).
|
||||
to see how we're using them to build Pezkuwichain <> Zagros (Dicle <> Pezkuwi) bridge, please refer to the [Pezkuwi <>
|
||||
Dicle Bridge](./pezkuwi-dicle-bridge-overview.md).
|
||||
|
||||
## Purpose
|
||||
|
||||
@@ -11,7 +11,7 @@ using GRANDPA finality, their teyrchains or any combination of those. On top of
|
||||
pezpallet that provides means to organize messages exchange.
|
||||
|
||||
On top of that layered infrastructure, anyone may build their own bridge applications - e.g. [XCM
|
||||
messaging](./pezkuwi-kusama-bridge-overview.md), [encoded calls
|
||||
messaging](./pezkuwi-dicle-bridge-overview.md), [encoded calls
|
||||
messaging](https://github.com/paritytech/parity-bridges-common/releases/tag/encoded-calls-messaging) and so on.
|
||||
|
||||
## Terminology
|
||||
@@ -90,7 +90,7 @@ Many things are abstracted by the pezpallet:
|
||||
Outside of the messaging pezpallet, we have a set of adapters, where messages and delivery proofs are regular storage
|
||||
proofs. The proofs are generated at the bridged chain and require bridged chain finality. So messages pezpallet, in this
|
||||
case, depends on one of the finality pallets. The messages are XCM messages and we are using XCM executor to dispatch
|
||||
them on receival. You may find more info in [Pezkuwi <> Kusama Bridge](./pezkuwi-kusama-bridge-overview.md) document.
|
||||
them on receival. You may find more info in [Pezkuwi <> Dicle Bridge](./pezkuwi-dicle-bridge-overview.md) document.
|
||||
|
||||
More: [pezpallet level documentation and code](../modules/messages/).
|
||||
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
# Pezkuwi <> Kusama Bridge Overview
|
||||
# Pezkuwi <> Dicle Bridge Overview
|
||||
|
||||
This document describes how we use all components, described in the [High-Level Bridge
|
||||
Documentation](./high-level-overview.md), to build the XCM bridge between Kusama and Pezkuwi. In this case, our
|
||||
Documentation](./high-level-overview.md), to build the XCM bridge between Dicle and Pezkuwi. In this case, our
|
||||
components merely work as a XCM transport (like XCMP/UMP/HRMP), between chains that are not a part of the same consensus
|
||||
system.
|
||||
|
||||
The overall architecture may be seen in [this diagram](./pezkuwi-kusama-bridge.html).
|
||||
The overall architecture may be seen in [this diagram](./pezkuwi-dicle-bridge.html).
|
||||
|
||||
## Bridge Hubs
|
||||
|
||||
All operations at relay chain are expensive. Ideally all non-mandatory transactions must happen on teyrchains. That's
|
||||
why we are planning to have two teyrchains - Pezkuwi Bridge Hub under Pezkuwi consensus and Kusama Bridge Hub under
|
||||
Kusama consensus.
|
||||
why we are planning to have two teyrchains - Pezkuwi Bridge Hub under Pezkuwi consensus and Dicle Bridge Hub under
|
||||
Dicle consensus.
|
||||
|
||||
The Bridge Hub will have all required bridge pallets in its runtime. We hope that later, other teams will be able to use
|
||||
our bridge hubs too and have their pallets there.
|
||||
|
||||
The Bridge Hub will use the base token of the ecosystem - KSM at Kusama Bridge Hub and HEZ at Pezkuwi Bridge Hub. The
|
||||
The Bridge Hub will use the base token of the ecosystem - DCL at Dicle Bridge Hub and HEZ at Pezkuwi Bridge Hub. The
|
||||
runtime will have minimal set of non-bridge pallets, so there's not much you can do directly on bridge hubs.
|
||||
|
||||
## Connecting Teyrchains
|
||||
@@ -25,8 +25,8 @@ You won't be able to directly use bridge hub transactions to send XCM messages o
|
||||
use other teyrchains transactions, which will use HRMP to deliver messages to the Bridge Hub. The Bridge Hub will just
|
||||
queue these messages in its outbound lane, which is dedicated to deliver messages between two teyrchains.
|
||||
|
||||
Our first planned bridge will connect the Pezkuwi and Kusama Asset Hubs. A bridge between those two
|
||||
teyrchains would allow Asset Hub Pezkuwi accounts to hold wrapped KSM tokens and Asset Hub Kusama
|
||||
Our first planned bridge will connect the Pezkuwi and Dicle Asset Hubs. A bridge between those two
|
||||
teyrchains would allow Asset Hub Pezkuwi accounts to hold wrapped DCL tokens and Asset Hub Dicle
|
||||
accounts to hold wrapped HEZ tokens.
|
||||
|
||||
For that bridge (pair of teyrchains under different consensus systems) we'll be using the lane 00000000. Later, when
|
||||
@@ -34,8 +34,8 @@ other teyrchains will join the bridge, they will be using other lanes for their
|
||||
|
||||
## Running Relayers
|
||||
|
||||
We are planning to run our own complex relayer for the lane 00000000. The relayer will relay Kusama/Pezkuwi GRANDPA
|
||||
justifications to the bridge hubs at the other side. It'll also relay finalized Kusama Bridge Hub and Pezkuwi Bridge
|
||||
We are planning to run our own complex relayer for the lane 00000000. The relayer will relay Dicle/Pezkuwi GRANDPA
|
||||
justifications to the bridge hubs at the other side. It'll also relay finalized Dicle Bridge Hub and Pezkuwi Bridge
|
||||
Hub heads. This will only happen when messages will be queued at hubs. So most of time relayer will be idle.
|
||||
|
||||
There's no any active relayer sets, or something like that. Anyone may start its own relayer and relay queued messages.
|
||||
@@ -93,14 +93,14 @@ Obviously, there should be someone who is paying relayer rewards. We want bridge
|
||||
can't use fees for rewards. Instead, the teyrchains using the bridge, use sovereign accounts on both sides of the bridge
|
||||
to cover relayer rewards.
|
||||
|
||||
Bridged Teyrchains will have sovereign accounts at bridge hubs. For example, the Kusama Asset Hub will
|
||||
have an account at the Pezkuwi Bridge Hub. The Pezkuwi Asset Hub will have an account at the Kusama
|
||||
Bridged Teyrchains will have sovereign accounts at bridge hubs. For example, the Dicle Asset Hub will
|
||||
have an account at the Pezkuwi Bridge Hub. The Pezkuwi Asset Hub will have an account at the Dicle
|
||||
Bridge Hub. The sovereign accounts are used as a source of funds when the relayer is calling the
|
||||
`pallet_bridge_relayers::claim_rewards`.
|
||||
|
||||
Since messages lane is only used by the pair of teyrchains, there's no collision between different bridges. E.g.
|
||||
Kusama Asset Hub will only reward relayers that are delivering messages from Kusama Asset Hub.
|
||||
The Kusama Asset Hub sovereign account is not used to cover rewards of bridging with some other Pezkuwi Teyrchain.
|
||||
Dicle Asset Hub will only reward relayers that are delivering messages from Dicle Asset Hub.
|
||||
The Dicle Asset Hub sovereign account is not used to cover rewards of bridging with some other Pezkuwi Teyrchain.
|
||||
|
||||
### Multiple Relayers and Rewards
|
||||
|
||||
|
||||
@@ -24,8 +24,8 @@ of details behind that simple phrase - you could find more info in the
|
||||
[High-Level Bridge Overview](./high-level-overview.md) document.
|
||||
|
||||
Reward that is paid to relayer has two parts. The first part static and is controlled by the governance.
|
||||
It is rather small initially - e.g. you need to deliver `10_000` Kusama -> Pezkuwi messages to gain single
|
||||
KSM token.
|
||||
It is rather small initially - e.g. you need to deliver `10_000` Dicle -> Pezkuwi messages to gain single
|
||||
DCL token.
|
||||
|
||||
The other reward part is dynamic. So to deliver an XCM message from one BridgeHub to another, we'll need to
|
||||
submit two transactions on different chains. Every transaction has its cost, which is:
|
||||
@@ -45,7 +45,7 @@ information on how to deploy this software on your own node.
|
||||
## Relayers Concurrency
|
||||
|
||||
As it has been said above, we are not compensating cost of transactions that are not **useful**. For
|
||||
example, if message `100` has already been delivered from Kusama Bridge Hub to Pezkuwi Bridge Hub, then another
|
||||
example, if message `100` has already been delivered from Dicle Bridge Hub to Pezkuwi Bridge Hub, then another
|
||||
transaction that delivers the same message `100` won't be **useful**. Hence, no compensation to relayer that
|
||||
has submitted that second transaction.
|
||||
|
||||
@@ -74,8 +74,8 @@ That is planned for the future version of bridge and the progress is
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Let's focus on the bridge between Pezkuwi and Kusama Bridge Hubs. Let's also assume that we want to start
|
||||
a relayer that "serves" an initial lane [`0x00000001`](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-kusama/src/bridge_to_polkadot_config.rs#L54).
|
||||
Let's focus on the bridge between Pezkuwi and Dicle Bridge Hubs. Let's also assume that we want to start
|
||||
a relayer that "serves" an initial lane [`0x00000001`](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-dicle/src/bridge_to_polkadot_config.rs#L54).
|
||||
|
||||
<details>
|
||||
<summary>Lane?</summary>
|
||||
@@ -91,15 +91,15 @@ The same steps may be performed for other lanes and bridges as well - you'll jus
|
||||
|
||||
So to start your relayer instance, you'll need to prepare:
|
||||
|
||||
- an address of ws/wss RPC endpoint of the Kusama relay chain;
|
||||
- an address of ws/wss RPC endpoint of the Dicle relay chain;
|
||||
|
||||
- an address of ws/wss RPC endpoint of the Pezkuwi relay chain;
|
||||
|
||||
- an address of ws/wss RPC endpoint of the Kusama Bridge Hub chain;
|
||||
- an address of ws/wss RPC endpoint of the Dicle Bridge Hub chain;
|
||||
|
||||
- an address of ws/wss RPC endpoint of the Pezkuwi Bridge Hub chain;
|
||||
|
||||
- an account on Kusama Bridge Hub;
|
||||
- an account on Dicle Bridge Hub;
|
||||
|
||||
- an account on Pezkuwi Bridge Hub.
|
||||
|
||||
@@ -127,9 +127,9 @@ for his operations.
|
||||
Before registering, you should know several things about your funds:
|
||||
|
||||
- to register, you need to hold significant amount of funds on your relayer account. As of now, it is
|
||||
[100 KSM](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-kusama/src/bridge_to_polkadot_config.rs#L71C14-L71C43)
|
||||
for registration on Kusama Bridge Hub and
|
||||
[500 HEZ](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-polkadot/src/bridge_to_kusama_config.rs#L71C14-L71C43)
|
||||
[100 DCL](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-dicle/src/bridge_to_polkadot_config.rs#L71C14-L71C43)
|
||||
for registration on Dicle Bridge Hub and
|
||||
[500 HEZ](https://github.com/polkadot-fellows/runtimes/blob/9ce1bbbbcd7843b3c76ba4d43c036bc311959e9f/system-parachains/bridge-hubs/bridge-hub-polkadot/src/bridge_to_dicle_config.rs#L71C14-L71C43)
|
||||
for registration on Pezkuwi Bridge Hub;
|
||||
|
||||
- when you are registered, those funds are reserved on relayer account and you can't transfer them.
|
||||
@@ -162,8 +162,8 @@ than the `LEASE`.
|
||||
|
||||
So once you have enough funds on your account and have selected the `validTill` parameter value, you
|
||||
could use the Pezkuwi JS apps to submit an extrinsic. If you want priority boost for your transactions
|
||||
on the Kusama Bridge Hub, open the
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/extrinsics)
|
||||
on the Dicle Bridge Hub, open the
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fdicle-bridge-hub-rpc.polkadot.io#/extrinsics)
|
||||
and submit the `register` extrinsic from the `bridgeRelayers` pezpallet:
|
||||
|
||||

|
||||
@@ -202,14 +202,14 @@ this data.
|
||||
</details>
|
||||
|
||||
To deliver and get reward for a single message, the relayer needs to submit two transactions. One
|
||||
at the source Bridge Hub and one at the target Bridge Hub. Below are costs for Pezkuwi <> Kusama
|
||||
at the source Bridge Hub and one at the target Bridge Hub. Below are costs for Pezkuwi <> Dicle
|
||||
messages (as of today):
|
||||
|
||||
- to deliver a single Pezkuwi -> Kusama message, you would need to pay around `0.06 KSM` at Kusama
|
||||
- to deliver a single Pezkuwi -> Dicle message, you would need to pay around `0.06 DCL` at Dicle
|
||||
Bridge Hub and around `1.62 HEZ` at Pezkuwi Bridge Hub;
|
||||
|
||||
- to deliver a single Kusama -> Pezkuwi message, you would need to pay around `1.70 HEZ` at Pezkuwi
|
||||
Bridge Hub and around `0.05 KSM` at Kusama Bridge Hub.
|
||||
- to deliver a single Dicle -> Pezkuwi message, you would need to pay around `1.70 HEZ` at Pezkuwi
|
||||
Bridge Hub and around `0.05 DCL` at Dicle Bridge Hub.
|
||||
|
||||
Those values are not constants - they depend on call weights (that may change from release to release),
|
||||
on transaction sizes (that depends on message size and chain state) and congestion factor. In any
|
||||
@@ -221,9 +221,9 @@ Hopefully you have successfully delivered some messages and now can claim your c
|
||||
This requires submitting several transactions. But first, let's check that you actually have something to
|
||||
claim. For that, let's check the state of the pezpallet that tracks all rewards.
|
||||
|
||||
To check your rewards at the Kusama Bridge Hub, go to the
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/chainstate)
|
||||
targeting Kusama Bridge Hub, select the `bridgeRelayers` pezpallet, choose `relayerRewards` map and
|
||||
To check your rewards at the Dicle Bridge Hub, go to the
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fdicle-bridge-hub-rpc.polkadot.io#/chainstate)
|
||||
targeting Dicle Bridge Hub, select the `bridgeRelayers` pezpallet, choose `relayerRewards` map and
|
||||
your relayer account. Then:
|
||||
|
||||
- set the `laneId` to `0x00000001`
|
||||
@@ -235,7 +235,7 @@ your relayer account. Then:
|
||||
|
||||
If check shows that you have some rewards, you can craft the claim transaction, with similar parameters.
|
||||
For that, go to `Extrinsics` tab of the
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fkusama-bridge-hub-rpc.polkadot.io#/extrinsics)
|
||||
[Pezkuwi JS Apps](https://pezkuwichain.io/?rpc=wss%3A%2F%2Fdicle-bridge-hub-rpc.polkadot.io#/extrinsics)
|
||||
and submit the following transaction (make sure to change `owner` before):
|
||||
|
||||

|
||||
@@ -308,7 +308,7 @@ docker run \
|
||||
--lane 00000002
|
||||
```
|
||||
|
||||
### Starting your Pezkuwi <> Kusama Relayer
|
||||
### Starting your Pezkuwi <> Dicle Relayer
|
||||
|
||||
*Work in progress, coming soon*
|
||||
|
||||
@@ -340,4 +340,4 @@ Please find them in this folder:
|
||||
|
||||
- for Pezkuwichain <> Zagros bridge: [pezkuwichain-zagros](https://github.com/paritytech/parity-bridges-common/tree/master/deployments/bridges/rococo-westend).
|
||||
|
||||
- for Pezkuwi <> Kusama bridge: *work in progress, coming soon*
|
||||
- for Pezkuwi <> Dicle bridge: *work in progress, coming soon*
|
||||
|
||||
Reference in New Issue
Block a user