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§
Sourcefn checkpoint(&mut self, resume: &GithubJobResumeV1) -> RemoteBuildResult<()>
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".