mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 09:57:56 +00:00
[Feature] Part 1: add TargetList for validator ranking (#12034)
* [Feature] Part 1: add TargetList for validator ranking * remove redundant todo * remove typo * cleanup * implement score * more fixes * fix thresholds * fmt * Remove the stuff that has to come in the next PR, some fixes * extended balance import * Change all the references from VoteWeight to Self::Score * Add a migration for VoterBagsList * fix score * add targetList to nomination-pools tests * fix bench * address review comments * change get_npos_targets * address more comments * remove thresholds for the time being * fix instance reference * VoterBagsListInstance * reus * remove params that are not used yet * Introduced pre/post upgrade try-runtime checks * fix * fixes * fix migration * fix migration * fix post_upgrade * change * Fix * eloquent PhantomData * fix PD * more fixes * Update frame/staking/src/pallet/impls.rs Co-authored-by: Squirrel <gilescope@gmail.com> * is_nominator now works * fix test-staking * build fixes * fix remote-tests * Apply suggestions from code review Co-authored-by: parity-processbot <> Co-authored-by: kianenigma <kian@parity.io> Co-authored-by: Squirrel <gilescope@gmail.com> Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
This commit is contained in:
@@ -568,7 +568,9 @@ impl pallet_staking::Config for Runtime {
|
||||
type OffendingValidatorsThreshold = OffendingValidatorsThreshold;
|
||||
type ElectionProvider = ElectionProviderMultiPhase;
|
||||
type GenesisElectionProvider = onchain::UnboundedExecution<OnChainSeqPhragmen>;
|
||||
type VoterList = BagsList;
|
||||
type VoterList = VoterBagsList;
|
||||
// This a placeholder, to be introduced in the next PR as an instance of bags-list
|
||||
type TargetList = pallet_staking::UseValidatorsMap<Self>;
|
||||
type MaxUnlockingChunks = ConstU32<32>;
|
||||
type OnStakerSlash = NominationPools;
|
||||
type WeightInfo = pallet_staking::weights::SubstrateWeight<Runtime>;
|
||||
@@ -724,12 +726,15 @@ parameter_types! {
|
||||
pub const BagThresholds: &'static [u64] = &voter_bags::THRESHOLDS;
|
||||
}
|
||||
|
||||
impl pallet_bags_list::Config for Runtime {
|
||||
type VoterBagsListInstance = pallet_bags_list::Instance1;
|
||||
impl pallet_bags_list::Config<VoterBagsListInstance> for Runtime {
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
/// The voter bags-list is loosely kept up to date, and the real source of truth for the score
|
||||
/// of each node is the staking pallet.
|
||||
type ScoreProvider = Staking;
|
||||
type WeightInfo = pallet_bags_list::weights::SubstrateWeight<Runtime>;
|
||||
type BagThresholds = BagThresholds;
|
||||
type Score = VoteWeight;
|
||||
type WeightInfo = pallet_bags_list::weights::SubstrateWeight<Runtime>;
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
@@ -1637,7 +1642,7 @@ construct_runtime!(
|
||||
Gilt: pallet_gilt,
|
||||
Uniques: pallet_uniques,
|
||||
TransactionStorage: pallet_transaction_storage,
|
||||
BagsList: pallet_bags_list,
|
||||
VoterBagsList: pallet_bags_list::<Instance1>,
|
||||
StateTrieMigration: pallet_state_trie_migration,
|
||||
ChildBounties: pallet_child_bounties,
|
||||
Referenda: pallet_referenda,
|
||||
@@ -1723,7 +1728,7 @@ mod benches {
|
||||
[pallet_alliance, Alliance]
|
||||
[pallet_assets, Assets]
|
||||
[pallet_babe, Babe]
|
||||
[pallet_bags_list, BagsList]
|
||||
[pallet_bags_list, VoterBagsList]
|
||||
[pallet_balances, Balances]
|
||||
[pallet_bounties, Bounties]
|
||||
[pallet_child_bounties, ChildBounties]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// This file is part of Substrate.
|
||||
|
||||
// Copyright (C) 2021-2022 Parity Technologies (UK) Ltd.
|
||||
// Copyright (C) 2022 Parity Technologies (UK) Ltd.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
@@ -15,9 +15,12 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
//! Autogenerated voter bag thresholds.
|
||||
//! Autogenerated bag thresholds.
|
||||
//!
|
||||
//! Generated on 2021-07-05T09:17:40.469754927+00:00
|
||||
//! Generated on 2022-08-15T19:26:59.939787+00:00
|
||||
//! Arguments
|
||||
//! Total issuance: 100000000000000
|
||||
//! Minimum balance: 100000000000000
|
||||
//! for the node runtime.
|
||||
|
||||
/// Existential weight for this runtime.
|
||||
|
||||
Reference in New Issue
Block a user