Skip to main content

GithubJobCheckpointSink

Trait GithubJobCheckpointSink 

Source
pub trait GithubJobCheckpointSink: Send {
    // Required method
    fn checkpoint(
        &mut self,
        resume: &GithubJobResumeV1,
    ) -> RemoteBuildResult<()>;
}
Expand description

Injectable durable checkpoint boundary.

Each callback is a complete atomic replacement for the same job ID. Implementations must reject stale replacements with GithubJobResumeV1::validate_successor and complete the durable write before returning success. The callback is invoked while provider state is locked and therefore must not call back into the provider. Any error is treated as an ambiguous write acknowledgement: the provider retains the matching live intent and performs no following remote mutation. Durable job IDs are not implicitly retired or recycled.

Required Methods§

Source

fn checkpoint(&mut self, resume: &GithubJobResumeV1) -> RemoteBuildResult<()>

Persist one complete secret-free job record.

§Errors

Must return a typed failure when durable persistence cannot be proven.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§