sp1_cc_host_executor/
errors.rs1use alloy_eips::{eip2718::Eip2718Error, BlockId};
2use alloy_transport::TransportError;
3use rsp_mpt::FromProofError;
4use thiserror::Error;
5
6#[derive(Error, Debug)]
8pub enum HostError {
9 #[error("Transport error: {0}")]
10 TransportError(#[from] TransportError),
11 #[error("Decoding error: {0}")]
12 DecodingError(#[from] Eip2718Error),
13 #[error("Trie from proof conversion error: {0}")]
14 TrieFromProofError(#[from] FromProofError),
15 #[error("Merkleization error: {0}")]
16 MerkleizationError(#[from] ethereum_consensus::ssz::prelude::MerkleizationError),
17 #[error("Beacon error: {0}")]
18 BeaconError(#[from] BeaconError),
19 #[error("Failed to convert the header for block {0}")]
20 HeaderConversionError(u64),
21 #[error("The block {0} don't exists")]
22 BlockNotFoundError(BlockId),
23 #[error("The parent beacon block root is missing in the header")]
24 ParentBeaconBlockRootMissing,
25}
26
27#[derive(Error, Debug)]
29pub enum BeaconError {
30 #[error("Reqwest error: {0}")]
31 Reqwest(#[from] reqwest::Error),
32 #[error("Serde error: {0}")]
33 Serde(#[from] serde_json::Error),
34 #[error("Execution payload missing")]
35 ExecutionPayloadMissing,
36}