Make `pallet-bridge-rewards` generic over `RewardKind` (#7492)
Closes: https://github.com/paritytech/polkadot-sdk/issues/7272 Relates to: https://github.com/paritytech/polkadot-sdk/pull/6578 Relates to: https://github.com/paritytech/polkadot-sdk/issues/7274 ## Description The PR enhances the `pallet-bridge-rewards` by making it generic over the `RewardKind` type (previously hardcoded as `RewardsAccountParams`). This modification allows the pallet to support multiple reward types (e.g., P/K bridge, Snowbridge), increasing its flexibility and applicability across various bridge scenarios. Other pallets can register rewards using `bp_relayers::RewardLedger`, which is implemented by the rewards pallet. The runtime can then be configured with different mechanisms for paying/claiming rewards via `bp_relayers::PaymentProcedure` (e.g., see the `pub struct BridgeRewardPayer;` implementation for BridgeHubWestend). ## Follow-up The removed balances/rewards statistics from the complex relay (no longer used) will eventually be reintroduced or fixed in the standalone relayers via https://github.com/paritytech/parity-bridges-common/issues/3004#issuecomment-2401634589. --------- Co-authored-by:cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by:
Francisco Aguirre <franciscoaguirreperez@gmail.com> Co-authored-by:
Serban Iorga <serban@parity.io>
parent
0c258c66
Pipeline
#516077
waiting for manual action
with stages
in
20 minutes and 37 seconds
Stage:
Stage:
Stage:
Stage:
Stage:
Showing
- .github/workflows/runtimes-matrix.json 1 addition, 1 deletion.github/workflows/runtimes-matrix.json
- Cargo.lock 0 additions, 1 deletionCargo.lock
- bridges/bin/runtime-common/src/extensions.rs 2 additions, 2 deletionsbridges/bin/runtime-common/src/extensions.rs
- bridges/bin/runtime-common/src/mock.rs 9 additions, 5 deletionsbridges/bin/runtime-common/src/mock.rs
- bridges/modules/relayers/Cargo.toml 0 additions, 2 deletionsbridges/modules/relayers/Cargo.toml
- bridges/modules/relayers/src/benchmarking.rs 64 additions, 29 deletionsbridges/modules/relayers/src/benchmarking.rs
- bridges/modules/relayers/src/extension/grandpa_adapter.rs 1 addition, 1 deletionbridges/modules/relayers/src/extension/grandpa_adapter.rs
- bridges/modules/relayers/src/extension/messages_adapter.rs 1 addition, 1 deletionbridges/modules/relayers/src/extension/messages_adapter.rs
- bridges/modules/relayers/src/extension/mod.rs 44 additions, 40 deletionsbridges/modules/relayers/src/extension/mod.rs
- bridges/modules/relayers/src/extension/parachain_adapter.rs 1 addition, 1 deletionbridges/modules/relayers/src/extension/parachain_adapter.rs
- bridges/modules/relayers/src/lib.rs 178 additions, 124 deletionsbridges/modules/relayers/src/lib.rs
- bridges/modules/relayers/src/migration.rs 246 additions, 38 deletionsbridges/modules/relayers/src/migration.rs
- bridges/modules/relayers/src/mock.rs 41 additions, 17 deletionsbridges/modules/relayers/src/mock.rs
- bridges/modules/relayers/src/payment_adapter.rs 81 additions, 17 deletionsbridges/modules/relayers/src/payment_adapter.rs
- bridges/modules/relayers/src/stake_adapter.rs 12 additions, 15 deletionsbridges/modules/relayers/src/stake_adapter.rs
- bridges/modules/relayers/src/weights.rs 48 additions, 1 deletionbridges/modules/relayers/src/weights.rs
- bridges/modules/relayers/src/weights_ext.rs 2 additions, 2 deletionsbridges/modules/relayers/src/weights_ext.rs
- bridges/primitives/relayers/src/lib.rs 53 additions, 34 deletionsbridges/primitives/relayers/src/lib.rs
- bridges/primitives/relayers/src/registration.rs 20 additions, 6 deletionsbridges/primitives/relayers/src/registration.rs
- bridges/relays/client-substrate/src/chain.rs 19 additions, 9 deletionsbridges/relays/client-substrate/src/chain.rs
Please register or sign in to comment