pub trait SemanticTaskProgram:
Debug
+ Send
+ Sync {
// Required method
fn observe(
&self,
provider: Arc<CudaKernelProvider>,
) -> Result<SemanticTaskObservation, SemanticTransitionError>;
// Provided method
fn editable_program(&self) -> Option<&SemanticProgramAdmission> { ... }
}Expand description
A native observer executed during cold task binding. Implementations belong to the program executor, not the CUDA substrate. Python accepts executable XLOG source through that executor, never caller-provided answers or receipts. A successful observation must complete all submitted work before returning host results. An error may follow device submission, so the calling session is poisoned and cannot reuse its previous task binding.
Required Methods§
fn observe( &self, provider: Arc<CudaKernelProvider>, ) -> Result<SemanticTaskObservation, SemanticTransitionError>
Provided Methods§
Sourcefn editable_program(&self) -> Option<&SemanticProgramAdmission>
fn editable_program(&self) -> Option<&SemanticProgramAdmission>
A cold, independently admitted mutable source bank. The observer may report expected truth but never chooses editable rules or fact order.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".