pub struct OperationProgress {Show 13 fields
pub phase: String,
pub completed: u64,
pub total: Option<u64>,
pub unit: Option<String>,
pub summary: String,
pub import_commits: Vec<ImportCommitProgress>,
pub failed_import_commit: Option<ImportCommitFailure>,
pub started_at: Option<Timestamp>,
pub phase_timings: Vec<PhaseTiming>,
pub native_bytes_written: Option<u64>,
pub source_pack_bytes: Option<u64>,
pub ref_summary: Option<RefSummary>,
pub object_writes: Option<u64>,
}Fields§
§phase: StringMachine-readable phase within the operation kind, such as “cloning” or “indexing”. It does not replace OperationState.
completed: u64§total: Option<u64>§unit: Option<String>Unit for completed and total, such as “bytes”, “objects”, or “commits”.
summary: StringSanitized human-safe summary; clients must not parse it for state.
import_commits: Vec<ImportCommitProgress>Full durable prefix of successfully converted source commits. This field is populated only for import operations. Snapshot-first watch reconnects repeat the prefix so clients do not depend on transient stream delivery.
failed_import_commit: Option<ImportCommitFailure>Present when an import failed while converting a known source commit.
started_at: Option<Timestamp>Wall-clock start of the operation, so elapsed is correct for any late subscriber. Populated from the durable job record, not stream subscribe time.
phase_timings: Vec<PhaseTiming>Durable per-phase timing for phases entered so far; snapshot-repeated on
reconnect. phase matches OperationProgress.phase values.
native_bytes_written: Option<u64>Byte values below are observed values: “so far” mid-flight and firm at terminal. Reduction percentage is client-derived at completion, not a wire field. Native store bytes durably written so far. ACTUAL, never projected/estimated.
source_pack_bytes: Option<u64>Source Git pack size in bytes (known once the fetch is sized).
ref_summary: Option<RefSummary>Advertised + published ref topology (see RefSummary). Emitted once early in cloning (advertised_*) and updated at Mirror once the published set is known. Counts only — not a per-poll list. Actual, never projected.
object_writes: Option<u64>Objects actually written to the store so far (vs completed = processed).
completed - object_writes = deduplicated (content already present). Actual, not projected.
Implementations§
Source§impl OperationProgress
impl OperationProgress
Sourcepub fn native_bytes_written(&self) -> u64
pub fn native_bytes_written(&self) -> u64
Returns the value of native_bytes_written, or the default value if native_bytes_written is unset.
Sourcepub fn source_pack_bytes(&self) -> u64
pub fn source_pack_bytes(&self) -> u64
Returns the value of source_pack_bytes, or the default value if source_pack_bytes is unset.
Sourcepub fn object_writes(&self) -> u64
pub fn object_writes(&self) -> u64
Returns the value of object_writes, or the default value if object_writes is unset.
Trait Implementations§
Source§impl Clone for OperationProgress
impl Clone for OperationProgress
Source§fn clone(&self) -> OperationProgress
fn clone(&self) -> OperationProgress
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OperationProgress
impl Debug for OperationProgress
Source§impl Default for OperationProgress
impl Default for OperationProgress
Source§impl Message for OperationProgress
impl Message for OperationProgress
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.