pub struct LateObservation {
pub id: EffectId,
pub effect_id: EffectId,
pub worker: WorkerId,
pub lease_epoch: u64,
pub attempt: u32,
pub attempt_started_at: Option<SystemTime>,
pub observed_at: SystemTime,
pub outcome: LateOutcome,
}Expand description
Append-only, untrusted evidence for operator reconciliation.
No input, output, response body, credential, or error message is retained. Neither this observation nor its timestamps authorize a state transition.
Fields§
§id: EffectIdUnique observation id, used for idempotent append and pagination.
effect_id: EffectIdThe effect this evidence concerns.
worker: WorkerIdThe reporting worker.
lease_epoch: u64The original fencing epoch, not the current holder’s epoch.
attempt: u32The action attempt, starting at 1.
attempt_started_at: Option<SystemTime>Start timestamp originally persisted by the store, if available.
observed_at: SystemTimeThe reporting worker’s observation time; not a lease clock authority.
outcome: LateOutcomeWhat the worker saw, without sensitive response data.
Implementations§
Source§impl LateObservation
impl LateObservation
Sourcepub fn new(
record: &EffectRecord,
lease: &Lease,
outcome: LateOutcome,
observed_at: SystemTime,
) -> Self
pub fn new( record: &EffectRecord, lease: &Lease, outcome: LateOutcome, observed_at: SystemTime, ) -> Self
Builds supplementary evidence about one attempted action.
Trait Implementations§
Source§impl Clone for LateObservation
impl Clone for LateObservation
Source§impl Debug for LateObservation
impl Debug for LateObservation
Source§impl<'de> Deserialize<'de> for LateObservation
impl<'de> Deserialize<'de> for LateObservation
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for LateObservation
Source§impl PartialEq for LateObservation
impl PartialEq for LateObservation
Source§impl Serialize for LateObservation
impl Serialize for LateObservation
impl StructuralPartialEq for LateObservation
Auto Trait Implementations§
impl Freeze for LateObservation
impl RefUnwindSafe for LateObservation
impl Send for LateObservation
impl Sync for LateObservation
impl Unpin for LateObservation
impl UnsafeUnpin for LateObservation
impl UnwindSafe for LateObservation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more