tokitai-operator 0.1.0

Verified DL kernel compiler: formally-checked GEMM, p-adic, sheaf, contract-carrying ops. Paper-artifact grade.
Documentation
//! Obligation types: source, severity, discharge status.
//!
//! `Obligation` is the per-plan obligation record. Each obligation
//! has a `source` (Operator, Rewrite, Planner, Backend), a
//! `condition` (a human-readable string), a `severity`
//! (Required, Warning, AuditOnly), and a `status` (Unresolved,
//! Discharged, Waived).
//!
//! `Obligation::is_blocking()` returns true iff the obligation is
//! `Required` and `Unresolved`. The GPU plan executor refuses to
//! execute a plan with blocking obligations.
//!
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum ObligationSource {
    Operator(String),
    Rewrite(String),
    Planner(String),
    Backend(String),
}

#[derive(Debug, Clone, PartialEq, Eq)]
pub enum ObligationSeverity {
    Required,
    Warning,
    AuditOnly,
}

#[derive(Debug, Clone, PartialEq, Eq)]
pub enum DischargeStatus {
    Unresolved,
    Discharged(String),
    Waived(String),
}

#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Obligation {
    pub source: ObligationSource,
    pub condition: String,
    pub severity: ObligationSeverity,
    pub status: DischargeStatus,
}

impl Obligation {
    pub fn is_blocking(&self) -> bool {
        matches!(self.severity, ObligationSeverity::Required)
            && matches!(self.status, DischargeStatus::Unresolved)
    }
}