snark/block_verify_effectful/
mod.rs

1//! # Block Verification Service Layer
2//!
3//! This module provides the effectful (side-effect) operations for block
4//! verification, separating the computations from the main state machine logic.
5
6mod snark_block_verify_effectful_actions;
7pub use snark_block_verify_effectful_actions::*;
8
9mod snark_block_verify_effects;
10
11mod snark_block_verify_service;
12pub use snark_block_verify_service::*;
13
14use serde::{Deserialize, Serialize};
15
16pub struct SnarkBlockVerifyIdType;
17impl mina_core::requests::RequestIdType for SnarkBlockVerifyIdType {
18    fn request_id_type() -> &'static str {
19        "SnarkBlockVerifyId"
20    }
21}
22
23pub type SnarkBlockVerifyId = mina_core::requests::RequestId<SnarkBlockVerifyIdType>;
24
25#[derive(Serialize, Deserialize, Debug, Clone)]
26pub enum SnarkBlockVerifyError {
27    AccumulatorCheckFailed,
28    VerificationFailed,
29    ValidatorThreadCrashed,
30}