From 3b42131a8d8915c93485a31c1e1c31405f9d0c06 Mon Sep 17 00:00:00 2001 From: teor Date: Wed, 4 Dec 2024 10:48:27 +1000 Subject: [PATCH] Give fraud proofs explicit codec indexes --- crates/sp-domains-fraud-proof/src/fraud_proof.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/crates/sp-domains-fraud-proof/src/fraud_proof.rs b/crates/sp-domains-fraud-proof/src/fraud_proof.rs index c5fcbaec88..eb7a397e14 100644 --- a/crates/sp-domains-fraud-proof/src/fraud_proof.rs +++ b/crates/sp-domains-fraud-proof/src/fraud_proof.rs @@ -336,18 +336,23 @@ pub struct FraudProof { #[allow(clippy::large_enum_variant)] #[derive(Debug, Decode, Encode, TypeInfo, PartialEq, Eq, Clone)] pub enum FraudProofVariant { + #[codec(index = 0)] InvalidStateTransition(InvalidStateTransitionProof), + #[codec(index = 1)] ValidBundle(ValidBundleProof), + #[codec(index = 2)] InvalidExtrinsicsRoot(InvalidExtrinsicsRootProof), + #[codec(index = 3)] InvalidBundles(InvalidBundlesProof), + #[codec(index = 4)] InvalidDomainBlockHash(InvalidDomainBlockHashProof), + #[codec(index = 5)] InvalidBlockFees(InvalidBlockFeesProof), + #[codec(index = 6)] InvalidTransfers(InvalidTransfersProof), - // Dummy fraud proof only used in test and benchmark - // - // NOTE: the `Dummy` must be the last variant, because the `#[cfg(..)]` will apply to - // all the variants after it. + /// Dummy fraud proof only used in tests and benchmarks #[cfg(any(feature = "std", feature = "runtime-benchmarks"))] + #[codec(index = 100)] Dummy, }