Branislav Kontur
260dad5110
Bko cosmetics ( #1550 )
...
* Bump log version to 0.4.17
* Removed unnecesseray dependency + rename BridgeGrandpaMillauCall to BridgeGrandpaCall
2024-04-10 10:28:37 +02:00
Serban Iorga
050b12f3aa
Call To*InboundLaneApi::message_details() with batched messages ( #1545 )
...
* generated_message_details() -> Simplifications
- avoid using a HashMap for `messages_to_refine`. It seems that a vec is
enough
- minimize the number of conversions between `OutboundMessageDetails` and
`MessageDetails`
- use references where possible in order to minimize the number of
intermediary Vecs
- simplify `make_message_details_map()` logic, reduce its scope and rename
it to `validate_out_msgs_details()`
Signed-off-by: Serban Iorga <serban@parity.io >
* Define typed_state_call()
Signed-off-by: Serban Iorga <serban@parity.io >
* Call To*InboundLaneApi::message_details() with single messages
Signed-off-by: Serban Iorga <serban@parity.io >
* Call To*InboundLaneApi::message_details() with batched messages
Signed-off-by: Serban Iorga <serban@parity.io >
* validate_out_msgs_details() -> change check
* Define split_msgs_to_refine()
Signed-off-by: Serban Iorga <serban@parity.io >
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
1723c1e004
[Complex Relayers] Deduplicate l2r and r2l logic ( #1535 )
...
* [Complex Relayers] Deduplicate l2r and r2l logic
Signed-off-by: Serban Iorga <serban@parity.io >
* Renamings
2024-04-10 10:28:37 +02:00
Serban Iorga
77af92b17b
Follow-up on #1419 ( #1531 )
...
* Parachains source cosmetic changes
- Make `ParaHashAtSource` more generic
- Modify `on_chain_parachain_header` to return `HeaderId`
- Shortening variable names
Signed-off-by: Serban Iorga <serban@parity.io >
* Change ParachainsSource::max_head_id type
Change ParachainsSource::max_head_id to Arc<Mutex<NoopOption>>
Signed-off-by: Serban Iorga <serban@parity.io >
* code review changes
2024-04-10 10:28:37 +02:00
Serban Iorga
01a1cab815
Remove unneeded error conversion ( #1527 )
2024-04-10 10:28:37 +02:00
Serban Iorga
7969459d07
Change Runtime APIs best_finalized() signature
...
Change Runtime APIs best_finalized() signature to return Option<HeaderId>
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
f13211344b
Small cosmetic changes
...
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
b21790b769
Log error instead of returning it
...
Log error when `best_parachain_block_at_target` can't be updated instead
of propagating it.
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
cd36d1e15f
Define StorageDoubleMapKeyProvider
...
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
f9af3f2d6e
Remove unneeded variable
...
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
69809f8be4
Deduplicate parachains validation
...
Deduplicate the logic that validates the updated parachain heads.
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
1e0c2a6e02
Follow-up on #1487 ( #1511 )
...
* Remove unused trait implementations
Signed-off-by: Serban Iorga <serban@parity.io >
* Define encoded_size_hint_u32()
Signed-off-by: Serban Iorga <serban@parity.io >
* Define TransactionEstimationParams trait
Signed-off-by: Serban Iorga <serban@parity.io >
* Rework TransactionEstimation
Signed-off-by: Serban Iorga <serban@parity.io >
* Docs + Renamings
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
dc38e3d079
Define HeaderIdProvider trait
...
Define HeaderIdProvider trait
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ea1f46ff45
Add another condition to the reject-obsolete-parachain-heads extension ( #1505 )
...
* add another condition to the reject-obsolete-parachain-heads extension
* add tracing to obsolete-tx-extensions
* fix tests
* extension_rejects_header_from_new_relay_block_with_same_hash
* fmt
* fix benchmarks
2024-04-10 10:28:37 +02:00
Serban Iorga
e1fd877b80
CLI refactoring
...
* [CLI] Make bridge definitions more complete
* [CLI] Refactor relay_headers_and_messages
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
00f1225b19
Fix and update benchmarks ( #1494 )
...
* decrease parameters range in grandpa benchmarks
* fix messages benchmarks
* update all weights
* dealing with failed test (WiP)
* Revert "dealing with failed test (WiP)"
This reverts commit 0379d24bcf0692da5813968d83e0cbc918ac4691.
* proper tests fix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
88e95388bb
Remove obsolete bridges ( #1491 )
...
* remove Rococo<>Wococo bridge mentions
* remove Kusama <> Polkadot bridge mentions
* fmt
* remove unneeded mocked runtimes && trait impls for obsolete bridges
* remove unused deps
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7d97e576d0
Remove without_storage_info for messages pallet ( #1487 )
...
* draft: remove without_storage_info for messages pallet
* some cleanup
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d11d9fd0b7
Parachain loop metrics ( #1484 )
...
* parachain loop metrics
* some fixes
* mini refactoring
* add tests
2024-04-10 10:28:37 +02:00
Serban Iorga
f8ff3c9142
Unify the operating mode for bridge pallets ( #1483 )
...
Unify the operating mode for bridge pallets
- define the OperationMode trait and BasicOperatingMode enum
- use the OperationMode trait in all the bridge pallets
- use BasicOperatingMode instead of IsHalted for the Grandpa pallet
- use BasicOperatingMode as part of MessagesOperatingMode
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
ff342fafa9
Avoid duplicate function definitions
...
Avoid duplicate function definitions for:
- ensure_owner_or_root()
- ensure_not_halted()
- set_owner()
- set_operating_mode() / set_operational()
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a97dedb50f
Store both block number and hash in best finalized storage value ( #1475 )
...
* store both block number and hash in BestFinalized
* also fix relay code
* spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
31a2be845c
Fix on-different-forks metrics during initialization ( #1468 )
...
* fix on-different-forks metrics during initialization
* "initialize" parachain finality pallet in on-demand parachains relay
* decrease converstion rate requests count
* more error logging
* fix compilation
* clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
418942826d
Separate signers for different complex relay layers ( #1465 )
...
* separate accounts for different complex relay layers
* fix clippy issue
* cleanup + expose relay accounts balance metrics
* expose messages pallet owner balance metric
* use new metrics in maintenance dashboard
* tests + use separate accounts to sign RialtoHeaders -> Millau transactions in RialtoParachain<>Millau bridge
* clippy + fmt + spellcheck
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
19c73ce0b7
Signed extension for rejecting obsolete messages pallet transactions ( #1446 )
...
* BridgeRejectObsoleteMessages
* add obsolete confirmations verification to the BridgeRejectObsoleteMessages
* move tests where they belong
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
53780cfd1a
remove duplicate parachain heads exension ( #1444 )
...
* remove duplicate parachain heads exension
* fix benchmarks compilation
* actually fix it
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b870fe74f8
Parachains pallet benchmarks ( #1436 )
...
* added parachains pallet benchmarks
* deduplicate insertion of bridged header
* pruning weight
* fixes
* fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f0d05de080
Get dispatch weight from the target chain (when DispatchFeePayment::AtTargetChain is used) ( #1430 )
...
* reintroduce From<SourceChain>InboundLaneApi
* impl From<Chain>InboundLaneApi for testnet runtimes
* use inboundlaneapi in relay
* remove unused OutboundXcmWeigher
* spelling
* added the only test to messages pallet
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
78a43c561a
ensure that the bridge GRANDPA pallet is initialized in the finality relay ( #1423 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
4001cfb758
Add RialtoParachain <> Millau bridge to test deployments ( #1412 )
...
* add RialtoParachain <> Millau bridge to test deployments
* flush (still not working, but possible fix in comments)
* proper fix
* fixed on-demand parachains relay case: if better relay header is delivered, then we must select para header that may be proved using this relay header
* dashboards
* fmt
* removing debugging code
* more cleanup
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
0a3f8ace26
fixed on-demand parachains relay case: if better relay header is delivered, then we must select para header that may be proved using this relay header ( #1419 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
542ebb5654
Complex RialtoParachain <> Millau relay ( #1405 )
...
* complex parachain relay
* fix spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
03c2f06a27
Parachains finality relay ( #1199 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c538a39816
Switch to gav-xcm-v3 branch to be able to test bridges + XCMv3 integration ( #1378 )
...
* switch to gav-xcm-v3 branch (wip)
* add comment
* play with CI
* keep playing with CI
* play with CI
* trigger CI
* Revert "trigger CI"
This reverts commit fc35ac648fe6a3ea8e710a2e07dfee7d8762c6c4.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b3c8852bcf
FinalityEngine in substrate relay ( #1374 )
...
* introduce FinalityEngine in relay code
* add FinalityEngine to relay
* spelling
* fix test compilation
* Update relays/lib-substrate-relay/src/finality/source.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Adrian Catangiu
d04b018630
Few typos and clippy fixes ( #1362 )
...
* fix typos
* clippy fixes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
65c2c0ccce
Update Substrate/Polkadot/Cumulus references ( #1353 )
...
* cumulus: 4e95228291
polkadot: 975e780ae0d988dc033f400ba822d14b326ee5b9
substrate: 89fcb3e4f62d221d4e161a437768e77d6265889e
* fix refs
* sync changes from https://github.com/paritytech/polkadot/pull/3828
* sync changes from https://github.com/paritytech/polkadot/pull/4387
* sync changes from https://github.com/paritytech/polkadot/pull/3940
* sync with changes from https://github.com/paritytech/polkadot/pull/4493
* sync with changes from https://github.com/paritytech/polkadot/pull/4958
* sync with changes from https://github.com/paritytech/polkadot/pull/3889
* sync with changes from https://github.com/paritytech/polkadot/pull/5033
* sync with changes from https://github.com/paritytech/polkadot/pull/5065
* compilation fixes
* fixed prometheus endpoint startup (it now requires to be spawned within tokio context)
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f95456d4ea
replace From<>InboundLaneApi with direct storage reads ( #1348 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ba2b0b086c
Mortal conversion rate updater transactions ( #1257 )
...
* merge all similar update_conversion_rate functions
* stall timeout in conversion rate update loop
* fmt
* fix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2bf5b23262
edition = "2021" ( #1346 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e822bbf8ab
fixed mess with conversion rates ( #1338 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
cfdb9fe7f6
Override conversion rate when computing message fee ( #1261 )
...
* override conversion rate when message is sent
* spelling + fmt
* add --conversion-rate-override cli option
* try to read conversion rate from cmd output
* fix output
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
bc1dcb7548
fix clippy issues ( #1332 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e656e0089e
Reinitialize bridge relay subcommand ( #1331 )
...
* reinitialize bridge subcommand
* PolkadotToKusama in reinit-bridge
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e29b590785
Using-same-fork metric for finality and complex relay ( #1327 )
...
* using_same_fork metric in finality relay
* support `using_different_forks` in messages relay
* added dashboards and alerts
* lockfile
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
efa3e97210
Encode and estimate Rococo/Wococo/Kusama/Polkadot messages ( #1322 )
...
* encode and estimate Rococo/Wococo/Kusama/Polkadot messages
* allow send-message for non-bundled chains
* weight -> dispatch-weight
* fmt
* fix spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
214febc46a
expose fee multiplier metrics in messages relay ( #1312 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
145bce5f25
Fix mandatory headers scanning in on-demand relay ( #1306 )
...
* more logging in on-demand headerss
* remove `maximal_headers_difference` concept from on-demand-relay
* another leftover from previous on-demand version
* removed extra log
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e190c35c95
fix session length of Rococo and Wococo ( #1304 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
01ee74c949
Use raw balance value if tokenDecimals property is missing ( #1299 )
...
* use raw balance value if tokenDecimals property is missing
* fmt
2024-04-10 10:28:37 +02:00