pub trait Check: Send + Sync {
// Required methods
fn category(&self) -> &'static str;
fn run<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 dyn AuditContext,
opts: &'life2 AuditOptions,
) -> Pin<Box<dyn Future<Output = Vec<AuditFinding>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
}Expand description
One audit category. Implementors live in secureops-checks.
Required Methods§
Sourcefn category(&self) -> &'static str
fn category(&self) -> &'static str
Stable category id (e.g. "gateway"), used for logging/diagnostics.
Sourcefn run<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 dyn AuditContext,
opts: &'life2 AuditOptions,
) -> Pin<Box<dyn Future<Output = Vec<AuditFinding>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn run<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 dyn AuditContext,
opts: &'life2 AuditOptions,
) -> Pin<Box<dyn Future<Output = Vec<AuditFinding>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Run the category against the context, returning zero or more findings.
A check must never panic the run: the orchestrator isolates failures, but checks should also degrade to an INFO finding on missing inputs (mirrors the TS “the run never aborts” guarantee, PRODUCT.md B.2).
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".