kona_protocol/
errors.rs

1//! Error types for protocol conversions.
2
3use crate::DecodeError;
4use alloy_primitives::B256;
5
6/// An error encountered during OP [Block](alloy_consensus::Block) conversion.
7#[derive(Debug, Eq, PartialEq, thiserror::Error)]
8pub enum OpBlockConversionError {
9    /// Invalid genesis hash.
10    #[error("Invalid genesis hash. Expected {0}, got {1}")]
11    InvalidGenesisHash(B256, B256),
12    /// Invalid transaction type.
13    #[error("First payload transaction has unexpected type: {0}")]
14    InvalidTxType(u8),
15    /// L1 Info error
16    #[error("Failed to decode L1 info: {0}")]
17    L1InfoError(#[from] DecodeError),
18    /// Missing system config in genesis block.
19    #[error("Missing system config in genesis block")]
20    MissingSystemConfigGenesis,
21    /// Empty transactions.
22    #[error("Empty transactions in payload. Block hash: {0}")]
23    EmptyTransactions(B256),
24    /// EIP-1559 parameter decoding error.
25    #[error("Failed to decode EIP-1559 parameters from header's `extraData` field.")]
26    Eip1559DecodeError,
27}