chio_http_core/
evaluation.rs1use chio_kernel::SignedExecutionNonce;
4use serde::{Deserialize, Serialize};
5
6use crate::{GuardEvidence, HttpReceipt, Verdict};
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
16pub struct EvaluateResponse {
17 pub verdict: Verdict,
18 pub receipt: HttpReceipt,
19 #[serde(default)]
20 pub evidence: Vec<GuardEvidence>,
21 #[serde(default, skip_serializing_if = "Option::is_none")]
25 pub execution_nonce: Option<SignedExecutionNonce>,
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize)]
30pub struct VerifyReceiptResponse {
31 pub valid: bool,
32}
33
34#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
36#[serde(rename_all = "snake_case")]
37pub enum SidecarStatus {
38 Healthy,
39 Degraded,
40 Unhealthy,
41}
42
43#[derive(Debug, Clone, Serialize, Deserialize)]
45pub struct HealthResponse {
46 pub status: SidecarStatus,
47 pub version: String,
48}