pub struct GithubJobResumeV1 {Show 46 fields
pub schema_version: u32,
pub provider: String,
pub provider_config_sha256: String,
pub principal: GithubPrincipalIdentityV1,
pub execution_repository: String,
pub execution_repository_id: u64,
pub source_repository: String,
pub trusted_source_ref: String,
pub workflow_path: String,
pub workflow_sha256: String,
pub temporary_ref: String,
pub operation_id: String,
pub job_id: String,
pub request: IosDeviceBuildRequest,
pub request_sha256: String,
pub source_revision: String,
pub git_snapshot: Option<GithubGitSnapshotResumeV1>,
pub prepared_dispatch_commit: Option<String>,
pub dispatch_commit: Option<String>,
pub workflow_dispatch: Option<Box<GithubWorkflowDispatchResumeV1>>,
pub run: Option<GithubRunIdentityV1>,
pub created_at_ms: u64,
pub publication_started_at_ms: u64,
pub publication_quiescence_deadline_ms: u64,
pub state: JobState,
pub publication_intent: bool,
pub publication_uncertain: bool,
pub publication_absent: bool,
pub publication_not_attempted: bool,
pub publication_process_fenced: bool,
pub publication_lease_scope_sha256: Option<String>,
pub publication_absence_observations: u8,
pub publication_absence_first_observed_at_ms: u64,
pub cancellation_requested: bool,
pub cancellation_dispatched: bool,
pub cleanup_requested: bool,
pub remove_artifacts_requested: bool,
pub artifacts_removed: bool,
pub temporary_ref_deleted: bool,
pub verification_pending_event: bool,
pub run_discovery_attempts: u16,
pub run_discovery_deadline_ms: u64,
pub manifests: Vec<ArtifactManifest>,
pub compile_evidence: Option<CompilePhaseEvidence>,
pub signed_cleanup_evidence: Option<GithubSignedCleanupEvidenceV1>,
pub events: Vec<RemoteBuildEvent>,
}Expand description
Versioned, secret-free durable state for one GitHub provider job.
Fields§
§schema_version: u32Resume-record schema version; currently 1.
provider: StringStable provider identifier.
provider_config_sha256: StringDigest of security-relevant provider configuration.
principal: GithubPrincipalIdentityV1Authenticated principal kind and identity.
execution_repository: StringExact execution repository URL.
execution_repository_id: u64Stable GitHub database ID of the exact execution repository.
source_repository: StringExact source repository URL.
trusted_source_ref: StringExact trusted source ref.
workflow_path: StringExact approved workflow path.
workflow_sha256: StringExact approved workflow digest.
temporary_ref: StringExact full provider-owned temporary ref.
operation_id: StringCaller operation identifier.
job_id: StringProvider job identifier.
request: IosDeviceBuildRequestComplete declarative request; contains references, never secret values.
request_sha256: StringCanonical wire-request SHA-256.
source_revision: StringExact requested source commit.
git_snapshot: Option<GithubGitSnapshotResumeV1>Exact Git snapshot stage/ref checkpoint, absent for formal legacy Git jobs.
prepared_dispatch_commit: Option<String>Deterministic dispatch commit prepared after read-only trust preflight and before mutation.
dispatch_commit: Option<String>Exact published dispatch commit when publication was observed.
workflow_dispatch: Option<Box<GithubWorkflowDispatchResumeV1>>Explicit workflow-dispatch intent and optional exact run receipt.
Absence is canonical for every legacy or Push-triggered record.
run: Option<GithubRunIdentityV1>Last exact run identity and attempt observed through GET revalidation.
created_at_ms: u64Provider creation timestamp.
publication_started_at_ms: u64Durable push-boundary timestamp; zero means publication was prepared but never armed.
publication_quiescence_deadline_ms: u64Earliest safe absence-retirement time; u64::MAX while the boundary is unarmed.
state: JobStateCurrent protocol-v1 job state.
publication_intent: boolA durable checkpoint was written before temporary-ref publication began.
publication_uncertain: boolPublication may have completed without a conclusive response.
publication_absent: boolStrong external evidence proved publication absent; ref absence alone is insufficient.
publication_not_attempted: boolThis provider invocation ended before any remote mutation was attempted.
This does not assert that the deterministic ref name is globally absent or provider-owned.
publication_process_fenced: boolPublication held an exclusive process lease and its child tree was parent-lifetime fenced.
publication_lease_scope_sha256: Option<String>Digest of the canonical local lease directory; absent when leasing is unsupported.
publication_absence_observations: u8Capped independent observations that both the exact ref and exact run history were absent.
publication_absence_first_observed_at_ms: u64Timestamp of the first exact ref-and-run absence observation; zero before any observation.
cancellation_requested: boolCancellation intent was accepted locally.
cancellation_dispatched: boolRun-ID-wide cancellation was accepted by GitHub after exact identity/attempt revalidation.
cleanup_requested: boolCleanup intent was accepted locally.
remove_artifacts_requested: boolRemote artifact removal was requested.
artifacts_removed: boolExact-run artifact removal completed.
temporary_ref_deleted: boolExact lease-protected temporary-ref deletion completed.
verification_pending_event: boolThe verification-pending event has already been emitted.
run_discovery_attempts: u16Number of bounded exact-run discovery attempts already made.
run_discovery_deadline_ms: u64Absolute discovery deadline in Unix milliseconds.
manifests: Vec<ArtifactManifest>Independently verified artifact manifests retained by the provider.
compile_evidence: Option<CompilePhaseEvidence>Exact credential-free compile evidence retained after independent artifact verification.
signed_cleanup_evidence: Option<GithubSignedCleanupEvidenceV1>Attempt-scoped proof of protected signing-material cleanup, for signed builds only.
events: Vec<RemoteBuildEvent>Bounded validated protocol events retained by the provider.
Implementations§
Source§impl GithubJobResumeV1
impl GithubJobResumeV1
Sourcepub fn validate_trigger_binding(&self) -> RemoteBuildResult<()>
pub fn validate_trigger_binding(&self) -> RemoteBuildResult<()>
Validate the trigger-specific durable projection without live configuration or credentials.
§Errors
Rejects a forged or incomplete WorkflowDispatch intent, receipt, correlation title, run
identity, or a legacy Push record carrying repository-scoped identity.
Sourcepub fn encode(&self) -> RemoteBuildResult<Vec<u8>>
pub fn encode(&self) -> RemoteBuildResult<Vec<u8>>
Encode one complete compact JSON checkpoint followed by a newline.
§Errors
Returns a typed serialization or size-bound failure.
Sourcepub fn decode(bytes: &[u8]) -> RemoteBuildResult<Self>
pub fn decode(bytes: &[u8]) -> RemoteBuildResult<Self>
Decode one bounded JSON checkpoint, rejecting duplicate and unknown fields.
§Errors
Returns a secret-free typed failure for empty, oversized, duplicate-key, trailing, or
structurally invalid JSON. Provider identity is revalidated by restore_job_resumes.
Sourcepub fn validate_successor(&self, next: &Self) -> RemoteBuildResult<()>
pub fn validate_successor(&self, next: &Self) -> RemoteBuildResult<()>
Validate that next is a non-stale complete replacement for this checkpoint.
This validates revision ordering only. A decoded record still requires provider-specific
configuration and live identity validation through GithubBuildProvider::restore_job_resumes.
§Errors
Returns a secret-free typed failure when immutable identity changes or durable state, events, manifests, attempts, or mutation results regress.