mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-27 03:27:58 +00:00
Implement validation data refactor (#1585)
* update primitives * correct parent_head field * make hrmp field pub * refactor validation data: runtime * refactor validation data: messages * add arguments to full_validation_data runtime API * port runtime API * mostly port over candidate validation * remove some parameters from ValidationParams * guide: update candidate validation * update candidate outputs * update ValidationOutputs in primitives * port over candidate validation * add a new test for no-transient behavior * update util runtime API wrappers * candidate backing * fix missing imports * change some fields of validation data around * runtime API impl * update candidate validation * fix backing tests * grumbles from review * fix av-store tests * fix some more crates * fix provisioner tests * fix availability distribution tests * port collation-generation to new validation data * fix overseer tests * Update roadmap/implementers-guide/src/node/utility/candidate-validation.md Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com> Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
3395044402
commit
262574fc49
@@ -18,9 +18,9 @@ use super::*;
|
||||
use assert_matches::assert_matches;
|
||||
use polkadot_erasure_coding::{branches, obtain_chunks_v1 as obtain_chunks};
|
||||
use polkadot_primitives::v1::{
|
||||
AvailableData, BlockData, CandidateCommitments, CandidateDescriptor, GlobalValidationData,
|
||||
GroupIndex, GroupRotationInfo, HeadData, LocalValidationData, OccupiedCore,
|
||||
OmittedValidationData, PoV, ScheduledCore, ValidatorPair,
|
||||
AvailableData, BlockData, CandidateCommitments, CandidateDescriptor, GroupIndex,
|
||||
GroupRotationInfo, HeadData, PersistedValidationData, OccupiedCore,
|
||||
PoV, ScheduledCore, ValidatorPair,
|
||||
};
|
||||
use polkadot_subsystem_testhelpers as test_helpers;
|
||||
use polkadot_node_network_protocol::ObservedRole;
|
||||
@@ -148,8 +148,7 @@ struct TestState {
|
||||
relay_parent: Hash,
|
||||
ancestors: Vec<Hash>,
|
||||
availability_cores: Vec<CoreState>,
|
||||
global_validation_data: GlobalValidationData,
|
||||
local_validation_data: LocalValidationData,
|
||||
persisted_validation_data: PersistedValidationData,
|
||||
}
|
||||
|
||||
fn validator_pubkeys(val_ids: &[Sr25519Keyring]) -> Vec<ValidatorId> {
|
||||
@@ -210,17 +209,10 @@ impl Default for TestState {
|
||||
];
|
||||
let relay_parent = Hash::repeat_byte(0x05);
|
||||
|
||||
let local_validation_data = LocalValidationData {
|
||||
let persisted_validation_data = PersistedValidationData {
|
||||
parent_head: HeadData(vec![7, 8, 9]),
|
||||
balance: Default::default(),
|
||||
code_upgrade_allowed: None,
|
||||
validation_code_hash: Default::default(),
|
||||
};
|
||||
|
||||
let global_validation_data = GlobalValidationData {
|
||||
max_code_size: 1000,
|
||||
max_head_data_size: 1000,
|
||||
block_number: Default::default(),
|
||||
hrmp_mqc_heads: Vec::new(),
|
||||
};
|
||||
|
||||
let validator_index = Some((validators.len() - 1) as ValidatorIndex);
|
||||
@@ -233,8 +225,7 @@ impl Default for TestState {
|
||||
validator_groups,
|
||||
availability_cores,
|
||||
head_data,
|
||||
local_validation_data,
|
||||
global_validation_data,
|
||||
persisted_validation_data,
|
||||
relay_parent,
|
||||
ancestors,
|
||||
validator_index,
|
||||
@@ -243,13 +234,8 @@ impl Default for TestState {
|
||||
}
|
||||
|
||||
fn make_available_data(test: &TestState, pov: PoV) -> AvailableData {
|
||||
let omitted_validation = OmittedValidationData {
|
||||
global_validation: test.global_validation_data.clone(),
|
||||
local_validation: test.local_validation_data.clone(),
|
||||
};
|
||||
|
||||
AvailableData {
|
||||
omitted_validation,
|
||||
validation_data: test.persisted_validation_data.clone(),
|
||||
pov,
|
||||
}
|
||||
}
|
||||
@@ -434,8 +420,7 @@ fn reputation_verification() {
|
||||
validator_groups,
|
||||
availability_cores,
|
||||
head_data: _,
|
||||
local_validation_data: _,
|
||||
global_validation_data: _,
|
||||
persisted_validation_data: _,
|
||||
relay_parent: current,
|
||||
ancestors,
|
||||
validator_index: _,
|
||||
|
||||
Reference in New Issue
Block a user