Squashed 'bridges/' changes from b2099c5..23dda62 (#3369)

23dda62 Rococo <> Wococo messages relay (#1030)
bcde21d Update the wasm builder to substrate master (#1029)
a8318ce Make target signer optional when sending message. (#1018)
f8602e1 Fix insufficient balance when send message. (#1020)
d95c0a7 greedy relayer don't need message dispatch to be prepaid if dispatch is supposed to be paid at the target chain (#1016)
ad5876f Update types. (#1027)
116cbbc CI: fix starting the pipeline (#1022)
7e0fadd Add temporary `canary` job (#1019)
6787091 Update types to contain dispatch_fee_payment (#1017)
03f79ad Allow Root to assume SourceAccount. (#1011)
372d019 Return dispatch_fee_payment from message details RPC (#1014)
604eb1c Relay basic single-bit message dispatch results back to the source chain (#935)
bf52fff Use plain source_queue view when selecting nonces for delivery (#1010)
fc5cf7d pay dispatch fee at target chain (#911)
1e35477 Bump Substrate to `286d7ce` (#1006)
7ad07b3 Add --only-mandatory-headers mode (#1004)
5351dc9 Messages relayer operating mode (#995)
9bc29a7 Rococo <> Wococo relayer balance guard (#998)
bc17341 rename messages_dispatch_weight -> message_details (#996)
95be244 Bump Rococo and Wococo spec versions (#999)
c35567b Move ChainWithBalances::NativeBalance -> Chain::Balance (#990)
1bfece1 Fix some nits (#988)
334ea0f Increase pause before starting relays again (#989)
7fb8248 Fix clippy in test code (#993)
d60ae50 fix clippy issues (#991)
75ca813 Make sure GRANDPA shares state with RPC. (#987)
da2a38a Bump Substrate (#986)
5a9862f Update submit finality proof weight formula (#981)
69df513 Flag for rejecting all outbound messages (#982)
14d0506 Add script to setup bench machine. (#984)
e74e8ab Move CI from GitHub Actions to GitLab (#814)
c5ca5dd Custom justification verification (#979)
643f10d Always run on-demand headers relay in complex relay (#975)
a35b0ef Add JSON type definitions for Rococo<>Wococo bridge (#977)
0eb83f2 Update cargo.deny (#980)
e1d1f4c Bump Rococo/Wococo spec_version (#976)
deac90d increase pause before starting relays (#974)
68d6d79 Revert to use InspectCmd, bump substrate `6bef4f4` (#966)
66e1508 Avoid hashing headers twice in verify_justification (#973)
a31844f Bump `environmental` dependency (#972)
2a4c29a in auto-relays keep trying to connect to nodes until connection is established (#971)
0e767b3 removed stray file (#969)
b9545dc Serve multiple lanes with single complex relay instance (#964)
73419f4 Correct type error (#968)
bac256f Start finality relay spec-version guards for Rococo <> Wococo finality relays (#965)
bfd7037 pass source and target chain ids to account_ownership_proof (#963)
8436073 Upstream changes from Polkadot repo (#961)
e58d851 Increase account endowment amount (#960)

git-subtree-dir: bridges
git-subtree-split: 23dda6248236b27f20d76cbedc30e189cc6f736c
This commit is contained in:
Svyatoslav Nikolsky
2021-06-25 16:45:02 +03:00
committed by GitHub
parent 022e8bc11c
commit feefc34567
167 changed files with 7023 additions and 3239 deletions
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://poa-node-arthur:8545/api/health
curl -v http://poa-node-bertha:8545/api/health
curl -v http://poa-node-carlos:8545/api/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 10
sleep 20
curl -v http://rialto-node-bob:9933/health
curl -v http://poa-node-bertha:8545/api/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://poa-node-arthur:8545/api/health
curl -v http://poa-node-bertha:8545/api/health
curl -v http://poa-node-carlos:8545/api/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://millau-node-bob:9933/health
curl -v http://rialto-node-bob:9933/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://millau-node-bob:9933/health
curl -v http://rialto-node-bob:9933/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://millau-node-alice:9933/health
curl -v http://rialto-node-alice:9933/health
@@ -1,7 +1,7 @@
#!/bin/bash
set -xeu
sleep 3
sleep 20
curl -v http://millau-node-alice:9933/health
curl -v https://westend-rpc.polkadot.io:443/health
@@ -0,0 +1,24 @@
#!/bin/bash
#
# Run an instance of the Rococo -> Wococo header sync.
#
# Right now this relies on local Wococo and Rococo networks
# running (which include `pallet-bridge-grandpa` in their
# runtimes), but in the future it could use use public RPC nodes.
set -xeu
RUST_LOG=rpc=trace,bridge=trace ./target/debug/substrate-relay init-bridge RococoToWococo \
--source-host 127.0.0.1 \
--source-port 9955 \
--target-host 127.0.0.1 \
--target-port 9944 \
--target-signer //Alice
RUST_LOG=rpc=trace,bridge=trace ./target/debug/substrate-relay relay-headers RococoToWococo \
--source-host 127.0.0.1 \
--source-port 9955 \
--target-host 127.0.0.1 \
--target-port 9944 \
--target-signer //Bob \
--prometheus-host=0.0.0.0 \
@@ -0,0 +1,24 @@
#!/bin/bash
#
# Run an instance of the Wococo -> Rococo header sync.
#
# Right now this relies on local Wococo and Rococo networks
# running (which include `pallet-bridge-grandpa` in their
# runtimes), but in the future it could use use public RPC nodes.
set -xeu
RUST_LOG=rpc=trace,bridge=trace ./target/debug/substrate-relay init-bridge WococoToRococo \
--source-host 127.0.0.1 \
--source-port 9944 \
--target-host 127.0.0.1 \
--target-port 9955 \
--target-signer //Alice
RUST_LOG=rpc=trace,bridge=trace ./target/debug/substrate-relay relay-headers WococoToRococo \
--source-host 127.0.0.1 \
--source-port 9944 \
--target-host 127.0.0.1 \
--target-port 9955 \
--target-signer //Charlie \
--prometheus-host=0.0.0.0 \
@@ -1,14 +0,0 @@
#!/bin/bash
# Run a development instance of the Rococo Substrate bridge node.
# To override the default port just export ROCOCO_PORT=9966
#
# Note: This script will not work out of the box with the bridges
# repo since it relies on a Polkadot binary.
ROCOCO_BOB_PORT="${ROCOCO_BOB_PORT:-9966}"
RUST_LOG=runtime=trace,runtime::bridge=trace \
./target/debug/polkadot --chain=rococo-local --bob --tmp \
--rpc-cors=all --unsafe-rpc-external --unsafe-ws-external \
--port 33055 --rpc-port 9935 --ws-port $ROCOCO_BOB_PORT \
@@ -9,6 +9,6 @@
ROCOCO_PORT="${ROCOCO_PORT:-9955}"
RUST_LOG=runtime=trace,runtime::bridge=trace \
./target/debug/polkadot --chain=rococo-local --alice --tmp \
./target/debug/polkadot --chain=rococo-dev --alice --tmp \
--rpc-cors=all --unsafe-rpc-external --unsafe-ws-external \
--port 33044 --rpc-port 9934 --ws-port $ROCOCO_PORT \
@@ -0,0 +1,14 @@
#!/bin/bash
# Run a development instance of the Wococo Substrate bridge node.
# To override the default port just export WOCOCO_PORT=9955
#
# Note: This script will not work out of the box with the bridges
# repo since it relies on a Polkadot binary.
WOCOCO_PORT="${WOCOCO_PORT:-9944}"
RUST_LOG=runtime=trace,runtime::bridge=trace \
./target/debug/polkadot --chain=wococo-dev --alice --tmp \
--rpc-cors=all --unsafe-rpc-external --unsafe-ws-external \
--port 33033 --rpc-port 9933 --ws-port $WOCOCO_PORT \
+18 -2
View File
@@ -67,7 +67,7 @@
"set_id": "SetId"
},
"Id": "[u8; 4]",
"InstanceId": "Id",
"ChainId": "Id",
"LaneId": "Id",
"MessageNonce": "u64",
"MessageId": "(Id, u64)",
@@ -77,9 +77,18 @@
},
"InboundRelayer": "AccountId",
"InboundLaneData": {
"relayers": "Vec<(MessageNonce, MessageNonce, RelayerId)>",
"relayers": "Vec<UnrewardedRelayer>",
"last_confirmed_nonce": "MessageNonce"
},
"UnrewardedRelayer": {
"relayer": "RelayerId",
"messages": "DeliveredMessages"
},
"DeliveredMessages": {
"begin": "MessageNonce",
"end": "MessageNonce",
"dispatch_results": "BitVec"
},
"OutboundLaneData": {
"latest_generated_nonce": "MessageNonce",
"latest_received_nonce": "MessageNonce",
@@ -96,6 +105,7 @@
"spec_version": "SpecVersion",
"weight": "Weight",
"origin": "CallOrigin",
"dispatch_fee_payment": "DispatchFeePayment",
"call": "BridgedOpaqueCall"
},
"CallOrigin": {
@@ -105,6 +115,12 @@
"SourceAccount": "SourceAccountId"
}
},
"DispatchFeePayment": {
"_enum": {
"AtSourceChain": "()",
"AtTargetChain": "()"
}
},
"MultiSigner": {
"_enum": {
"Ed25519": "H256",
+18 -2
View File
@@ -67,7 +67,7 @@
"set_id": "SetId"
},
"Id": "[u8; 4]",
"InstanceId": "Id",
"ChainId": "Id",
"LaneId": "Id",
"MessageNonce": "u64",
"MessageId": "(Id, u64)",
@@ -77,9 +77,18 @@
},
"InboundRelayer": "AccountId",
"InboundLaneData": {
"relayers": "Vec<(MessageNonce, MessageNonce, RelayerId)>",
"relayers": "Vec<UnrewardedRelayer>",
"last_confirmed_nonce": "MessageNonce"
},
"UnrewardedRelayer": {
"relayer": "RelayerId",
"messages": "DeliveredMessages"
},
"DeliveredMessages": {
"begin": "MessageNonce",
"end": "MessageNonce",
"dispatch_results": "BitVec"
},
"OutboundLaneData": {
"latest_generated_nonce": "MessageNonce",
"latest_received_nonce": "MessageNonce",
@@ -96,6 +105,7 @@
"spec_version": "SpecVersion",
"weight": "Weight",
"origin": "CallOrigin",
"dispatch_fee_payment": "DispatchFeePayment",
"call": "BridgedOpaqueCall"
},
"CallOrigin": {
@@ -105,6 +115,12 @@
"SourceAccount": "SourceAccountId"
}
},
"DispatchFeePayment": {
"_enum": {
"AtSourceChain": "()",
"AtTargetChain": "()"
}
},
"MultiSigner": {
"_enum": {
"Ed25519": "H256",
@@ -0,0 +1,147 @@
{
"--1": "Rococo Types",
"RococoBalance": "u128",
"RococoBlockHash": "H256",
"RococoBlockNumber": "u32",
"RococoHeader": "Header",
"--2": "Wococo Types",
"WococoBalance": "RococoBalance",
"WococoBlockHash": "RococoBlockHash",
"WococoBlockNumber": "RococoBlockNumber",
"WococoHeader": "RococoHeader",
"--3": "Common types",
"Address": "AccountId",
"LookupSource": "AccountId",
"AccountSigner": "MultiSigner",
"SpecVersion": "u32",
"RelayerId": "AccountId",
"SourceAccountId": "AccountId",
"ImportedHeader": {
"header": "BridgedHeader",
"requires_justification": "bool",
"is_finalized": "bool",
"signal_hash": "Option<BridgedBlockHash>"
},
"AuthoritySet": {
"authorities": "AuthorityList",
"set_id": "SetId"
},
"Id": "[u8; 4]",
"ChainId": "Id",
"LaneId": "Id",
"MessageNonce": "u64",
"MessageId": "(Id, u64)",
"MessageKey": {
"lane_id": "LaneId",
"nonce:": "MessageNonce"
},
"InboundRelayer": "AccountId",
"InboundLaneData": {
"relayers": "Vec<UnrewardedRelayer>",
"last_confirmed_nonce": "MessageNonce"
},
"UnrewardedRelayer": {
"relayer": "RelayerId",
"messages": "DeliveredMessages"
},
"DeliveredMessages": {
"begin": "MessageNonce",
"end": "MessageNonce",
"dispatch_results": "BitVec"
},
"OutboundLaneData": {
"latest_generated_nonce": "MessageNonce",
"latest_received_nonce": "MessageNonce",
"oldest_unpruned_nonce": "MessageNonce"
},
"MessageData": {
"payload": "MessagePayload",
"fee": "Fee"
},
"MessagePayload": "Vec<u8>",
"BridgedOpaqueCall": "Vec<u8>",
"OutboundMessageFee": "Fee",
"OutboundPayload": {
"spec_version": "SpecVersion",
"weight": "Weight",
"origin": "CallOrigin",
"dispatch_fee_payment": "DispatchFeePayment",
"call": "BridgedOpaqueCall"
},
"CallOrigin": {
"_enum": {
"SourceRoot": "()",
"TargetAccount": "(SourceAccountId, MultiSigner, MultiSignature)",
"SourceAccount": "SourceAccountId"
}
},
"DispatchFeePayment": {
"_enum": {
"AtSourceChain": "()",
"AtTargetChain": "()"
}
},
"MultiSigner": {
"_enum": {
"Ed25519": "H256",
"Sr25519": "H256",
"Ecdsa": "[u8;33]"
}
},
"MessagesProofOf": {
"bridged_header_hash": "BridgedBlockHash",
"storage_proof": "Vec<StorageProofItem>",
"lane": "LaneId",
"nonces_start": "MessageNonce",
"nonces_end": "MessageNonce"
},
"StorageProofItem": "Vec<u8>",
"MessagesDeliveryProofOf": {
"bridged_header_hash": "BridgedBlockHash",
"storage_proof": "Vec<StorageProofItem>",
"lane": "LaneId"
},
"UnrewardedRelayersState": {
"unrewarded_relayer_entries": "MessageNonce",
"messages_in_oldest_entry": "MessageNonce",
"total_messages": "MessageNonce"
},
"AncestryProof": "()",
"MessageFeeData": {
"lane_id": "LaneId",
"payload": "OutboundPayload"
},
"Precommit": {
"target_hash": "BridgedBlockHash",
"target_number": "BridgedBlockNumber"
},
"AuthoritySignature": "[u8;64]",
"AuthorityId": "[u8;32]",
"SignedPrecommit": {
"precommit": "Precommit",
"signature": "AuthoritySignature",
"id": "AuthorityId"
},
"Commit": {
"target_hash": "BridgedBlockHash",
"target_number": "BridgedBlockNumber",
"precommits": "Vec<SignedPrecommit>"
},
"GrandpaJustification": {
"round": "u64",
"commit": "Commit",
"votes_ancestries": "Vec<BridgedHeader>"
},
"Fee": "RococoBalance",
"Balance": "RococoBalance",
"BlockHash": "RococoBlockHash",
"BlockNumber": "RococoBlockNumber",
"BridgedBlockHash": "WococoBlockHash",
"BridgedBlockNumber": "WococoBlockNumber",
"BridgedHeader": "WococoHeader",
"Parameter": {
"_enum": {
"RococoToWococoConversionRate": "u128"
}
}
}
@@ -0,0 +1,148 @@
{
"--1": "Rococo Types",
"RococoBalance": "u128",
"RococoBlockHash": "H256",
"RococoBlockNumber": "u32",
"RococoHeader": "Header",
"--2": "Wococo Types",
"WococoBalance": "RococoBalance",
"WococoBlockHash": "RococoBlockHash",
"WococoBlockNumber": "RococoBlockNumber",
"WococoHeader": "RococoHeader",
"--3": "Common types",
"Address": "AccountId",
"LookupSource": "AccountId",
"AccountSigner": "MultiSigner",
"SpecVersion": "u32",
"RelayerId": "AccountId",
"SourceAccountId": "AccountId",
"ImportedHeader": {
"header": "BridgedHeader",
"requires_justification": "bool",
"is_finalized": "bool",
"signal_hash": "Option<BridgedBlockHash>"
},
"AuthoritySet": {
"authorities": "AuthorityList",
"set_id": "SetId"
},
"Id": "[u8; 4]",
"ChainId": "Id",
"LaneId": "Id",
"MessageNonce": "u64",
"MessageId": "(Id, u64)",
"MessageKey": {
"lane_id": "LaneId",
"nonce:": "MessageNonce"
},
"InboundRelayer": "AccountId",
"InboundLaneData": {
"relayers": "Vec<UnrewardedRelayer>",
"last_confirmed_nonce": "MessageNonce"
},
"UnrewardedRelayer": {
"relayer": "RelayerId",
"messages": "DeliveredMessages"
},
"DeliveredMessages": {
"begin": "MessageNonce",
"end": "MessageNonce",
"dispatch_results": "BitVec"
},
"OutboundLaneData": {
"latest_generated_nonce": "MessageNonce",
"latest_received_nonce": "MessageNonce",
"oldest_unpruned_nonce": "MessageNonce"
},
"MessageData": {
"payload": "MessagePayload",
"fee": "Fee"
},
"MessagePayload": "Vec<u8>",
"BridgedOpaqueCall": "Vec<u8>",
"OutboundMessageFee": "Fee",
"OutboundPayload": {
"spec_version": "SpecVersion",
"weight": "Weight",
"origin": "CallOrigin",
"dispatch_fee_payment": "DispatchFeePayment",
"call": "BridgedOpaqueCall"
},
"CallOrigin": {
"_enum": {
"SourceRoot": "()",
"TargetAccount": "(SourceAccountId, MultiSigner, MultiSignature)",
"SourceAccount": "SourceAccountId"
}
},
"DispatchFeePayment": {
"_enum": {
"AtSourceChain": "()",
"AtTargetChain": "()"
}
},
"MultiSigner": {
"_enum": {
"Ed25519": "H256",
"Sr25519": "H256",
"Ecdsa": "[u8;33]"
}
},
"MessagesProofOf": {
"bridged_header_hash": "BridgedBlockHash",
"storage_proof": "Vec<StorageProofItem>",
"lane": "LaneId",
"nonces_start": "MessageNonce",
"nonces_end": "MessageNonce"
},
"StorageProofItem": "Vec<u8>",
"MessagesDeliveryProofOf": {
"bridged_header_hash": "BridgedBlockHash",
"storage_proof": "Vec<StorageProofItem>",
"lane": "LaneId"
},
"UnrewardedRelayersState": {
"unrewarded_relayer_entries": "MessageNonce",
"messages_in_oldest_entry": "MessageNonce",
"total_messages": "MessageNonce"
},
"AncestryProof": "()",
"MessageFeeData": {
"lane_id": "LaneId",
"payload": "OutboundPayload"
},
"Precommit": {
"target_hash": "BridgedBlockHash",
"target_number": "BridgedBlockNumber"
},
"AuthoritySignature": "[u8;64]",
"AuthorityId": "[u8;32]",
"SignedPrecommit": {
"precommit": "Precommit",
"signature": "AuthoritySignature",
"id": "AuthorityId"
},
"Commit": {
"target_hash": "BridgedBlockHash",
"target_number": "BridgedBlockNumber",
"precommits": "Vec<SignedPrecommit>"
},
"GrandpaJustification": {
"round": "u64",
"commit": "Commit",
"votes_ancestries": "Vec<BridgedHeader>"
},
"Fee": "WococoBalance",
"Balance": "WococoBalance",
"Hash": "WococoBlockHash",
"BlockHash": "WococoBlockHash",
"BlockNumber": "WococoBlockNumber",
"BridgedBlockHash": "RococoBlockHash",
"BridgedBlockNumber": "RococoBlockNumber",
"BridgedHeader": "RococoHeader",
"Parameter": {
"_enum": {
"WococoToRococoConversionRate": "u128"
}
}
}
+13 -6
View File
@@ -2,14 +2,21 @@
# The script generates JSON type definition files in `./deployment` directory to be used for
# JS clients.
# Both networks have a lot of common types, so to avoid duplication we merge `common.json` file with
# chain-specific definitions in `rialto|millau.json`.
#
# It works by creating definitions for each side of the different bridge pairs we support
# (Rialto<>Millau and Rococo<>Wococo at the moment).
#
# To avoid duplication each bridge pair has a JSON file with common definitions, as well as a
# general JSON file with common definitions regardless of the bridge pair. These files are then
# merged with chain-specific type definitions.
set -exu
set -eux
# Make sure we are in the right dir.
cd $(dirname $(realpath $0))
# Create rialto and millau types.
jq -s '.[0] * .[1]' common.json rialto.json > ../types-rialto.json
jq -s '.[0] * .[1]' common.json millau.json > ../types-millau.json
# Create types for our supported bridge pairs (Rialto<>Millau, Rococo<>Wococo)
jq -s '.[0] * .[1] * .[2]' rialto-millau.json common.json rialto.json > ../types-rialto.json
jq -s '.[0] * .[1] * .[2]' rialto-millau.json common.json millau.json > ../types-millau.json
jq -s '.[0] * .[1] * .[2]' rococo-wococo.json common.json rococo.json > ../types-rococo.json
jq -s '.[0] * .[1] * .[2]' rococo-wococo.json common.json wococo.json > ../types-wococo.json
+18 -52
View File
@@ -1,54 +1,4 @@
{
"--1": "Millau Types",
"MillauBalance": "u64",
"MillauBlockHash": "H512",
"MillauBlockNumber": "u64",
"MillauHeader": {
"parent_Hash": "MillauBlockHash",
"number": "Compact<MillauBlockNumber>",
"state_root": "MillauBlockHash",
"extrinsics_root": "MillauBlockHash",
"digest": "MillauDigest"
},
"MillauDigest": {
"logs": "Vec<MillauDigestItem>"
},
"MillauDigestItem": {
"_enum": {
"Other": "Vec<u8>",
"AuthoritiesChange": "Vec<AuthorityId>",
"ChangesTrieRoot": "MillauBlockHash",
"SealV0": "SealV0",
"Consensus": "Consensus",
"Seal": "Seal",
"PreRuntime": "PreRuntime"
}
},
"--2": "Rialto Types",
"RialtoBalance": "u128",
"RialtoBlockHash": "H256",
"RialtoBlockNumber": "u32",
"RialtoHeader": {
"parent_Hash": "RialtoBlockHash",
"number": "Compact<RialtoBlockNumber>",
"state_root": "RialtoBlockHash",
"extrinsics_root": "RialtoBlockHash",
"digest": "RialtoDigest"
},
"RialtoDigest": {
"logs": "Vec<RialtoDigestItem>"
},
"RialtoDigestItem": {
"_enum": {
"Other": "Vec<u8>",
"AuthoritiesChange": "Vec<AuthorityId>",
"ChangesTrieRoot": "RialtoBlockHash",
"SealV0": "SealV0",
"Consensus": "Consensus",
"Seal": "Seal",
"PreRuntime": "PreRuntime"
}
},
"--3": "Common types",
"Address": "AccountId",
"LookupSource": "AccountId",
@@ -67,7 +17,7 @@
"set_id": "SetId"
},
"Id": "[u8; 4]",
"InstanceId": "Id",
"ChainId": "Id",
"LaneId": "Id",
"MessageNonce": "u64",
"MessageId": "(Id, u64)",
@@ -77,9 +27,18 @@
},
"InboundRelayer": "AccountId",
"InboundLaneData": {
"relayers": "Vec<(MessageNonce, MessageNonce, RelayerId)>",
"relayers": "Vec<UnrewardedRelayer>",
"last_confirmed_nonce": "MessageNonce"
},
"UnrewardedRelayer": {
"relayer": "RelayerId",
"messages": "DeliveredMessages"
},
"DeliveredMessages": {
"begin": "MessageNonce",
"end": "MessageNonce",
"dispatch_results": "BitVec"
},
"OutboundLaneData": {
"latest_generated_nonce": "MessageNonce",
"latest_received_nonce": "MessageNonce",
@@ -96,6 +55,7 @@
"spec_version": "SpecVersion",
"weight": "Weight",
"origin": "CallOrigin",
"dispatch_fee_payment": "DispatchFeePayment",
"call": "BridgedOpaqueCall"
},
"CallOrigin": {
@@ -105,6 +65,12 @@
"SourceAccount": "SourceAccountId"
}
},
"DispatchFeePayment": {
"_enum": {
"AtSourceChain": "()",
"AtTargetChain": "()"
}
},
"MultiSigner": {
"_enum": {
"Ed25519": "H256",
@@ -12,5 +12,4 @@
"MillauToRialtoConversionRate": "u128"
}
}
}
@@ -0,0 +1,52 @@
{
"--1": "Millau Types",
"MillauBalance": "u64",
"MillauBlockHash": "H512",
"MillauBlockNumber": "u64",
"MillauHeader": {
"parent_Hash": "MillauBlockHash",
"number": "Compact<MillauBlockNumber>",
"state_root": "MillauBlockHash",
"extrinsics_root": "MillauBlockHash",
"digest": "MillauDigest"
},
"MillauDigest": {
"logs": "Vec<MillauDigestItem>"
},
"MillauDigestItem": {
"_enum": {
"Other": "Vec<u8>",
"AuthoritiesChange": "Vec<AuthorityId>",
"ChangesTrieRoot": "MillauBlockHash",
"SealV0": "SealV0",
"Consensus": "Consensus",
"Seal": "Seal",
"PreRuntime": "PreRuntime"
}
},
"--2": "Rialto Types",
"RialtoBalance": "u128",
"RialtoBlockHash": "H256",
"RialtoBlockNumber": "u32",
"RialtoHeader": {
"parent_Hash": "RialtoBlockHash",
"number": "Compact<RialtoBlockNumber>",
"state_root": "RialtoBlockHash",
"extrinsics_root": "RialtoBlockHash",
"digest": "RialtoDigest"
},
"RialtoDigest": {
"logs": "Vec<RialtoDigestItem>"
},
"RialtoDigestItem": {
"_enum": {
"Other": "Vec<u8>",
"AuthoritiesChange": "Vec<AuthorityId>",
"ChangesTrieRoot": "RialtoBlockHash",
"SealV0": "SealV0",
"Consensus": "Consensus",
"Seal": "Seal",
"PreRuntime": "PreRuntime"
}
}
}
@@ -0,0 +1,12 @@
{
"--1": "Rococo Types",
"RococoBalance": "u128",
"RococoBlockHash": "H256",
"RococoBlockNumber": "u32",
"RococoHeader": "Header",
"--2": "Wococo Types",
"WococoBalance": "RococoBalance",
"WococoBlockHash": "RococoBlockHash",
"WococoBlockNumber": "RococoBlockNumber",
"WococoHeader": "RococoHeader"
}
@@ -0,0 +1,14 @@
{
"Fee": "RococoBalance",
"Balance": "RococoBalance",
"BlockHash": "RococoBlockHash",
"BlockNumber": "RococoBlockNumber",
"BridgedBlockHash": "WococoBlockHash",
"BridgedBlockNumber": "WococoBlockNumber",
"BridgedHeader": "WococoHeader",
"Parameter": {
"_enum": {
"RococoToWococoConversionRate": "u128"
}
}
}
@@ -0,0 +1,15 @@
{
"Fee": "WococoBalance",
"Balance": "WococoBalance",
"Hash": "WococoBlockHash",
"BlockHash": "WococoBlockHash",
"BlockNumber": "WococoBlockNumber",
"BridgedBlockHash": "RococoBlockHash",
"BridgedBlockNumber": "RococoBlockNumber",
"BridgedHeader": "RococoHeader",
"Parameter": {
"_enum": {
"WococoToRococoConversionRate": "u128"
}
}
}