use thiserror::Error;
#[derive(Debug, Error)]
pub enum EngineError {
#[error("SESSION_NOT_FOUND: no session '{0}'")]
SessionNotFound(String),
#[error("BAD_SESSION_ID: {0}")]
BadSessionId(String),
#[error("INVALID_CLAIM: {0}")]
InvalidClaim(String),
#[error("INVALID_EVIDENCE: {0}")]
InvalidEvidence(String),
#[error("INVALID_REMEDIATION: {0}")]
InvalidRemediation(String),
#[error("CLAIM_NOT_FOUND: no claim '{0}'")]
ClaimNotFound(String),
#[error("CONTRADICTION_NOT_FOUND: no contradiction '{0}'")]
ContradictionNotFound(String),
#[error("DUPLICATE_ID: {0}")]
DuplicateId(String),
#[error("STORE_ERROR: {0}")]
StoreError(String),
}
pub type Result<T> = std::result::Result<T, EngineError>;