pub struct PowCapabilitySample {
pub solved: bool,
pub latency_ms: Option<u64>,
pub retries: u32,
pub failure_mode: Option<PowFailureMode>,
}Expand description
One raw observation row used to build a
PowCapabilityProfile.
A sample is the single-attempt view: did the solve succeed, how long did it take, how many retries were needed, and (if it failed) which mode terminated the attempt. The store aggregates samples into a profile.
§Example
use stygian_charon::pow_profile::{PowCapabilitySample, PowFailureMode};
let solved = PowCapabilitySample::solved(1_500, 0);
assert!(solved.solved);
assert_eq!(solved.latency_ms, Some(1_500));
let failed = PowCapabilitySample::failed(2_000, 1, PowFailureMode::Timeout);
assert!(!failed.solved);
assert_eq!(failed.failure_mode, Some(PowFailureMode::Timeout));Fields§
§solved: booltrue if the challenge was solved; false if it
terminated in a failure mode.
latency_ms: Option<u64>Solve latency in milliseconds. None for failed
samples that never produced a measurable solve time.
retries: u32Number of retries the attempt consumed before reaching its terminal state.
failure_mode: Option<PowFailureMode>Failure mode for unsuccessful attempts; None for
solved samples.
Implementations§
Trait Implementations§
Source§impl Clone for PowCapabilitySample
impl Clone for PowCapabilitySample
Source§fn clone(&self) -> PowCapabilitySample
fn clone(&self) -> PowCapabilitySample
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PowCapabilitySample
impl Debug for PowCapabilitySample
Source§impl<'de> Deserialize<'de> for PowCapabilitySample
impl<'de> Deserialize<'de> for PowCapabilitySample
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
Source§impl PartialEq for PowCapabilitySample
impl PartialEq for PowCapabilitySample
Source§impl Serialize for PowCapabilitySample
impl Serialize for PowCapabilitySample
impl Eq for PowCapabilitySample
impl StructuralPartialEq for PowCapabilitySample
Auto Trait Implementations§
impl Freeze for PowCapabilitySample
impl RefUnwindSafe for PowCapabilitySample
impl Send for PowCapabilitySample
impl Sync for PowCapabilitySample
impl Unpin for PowCapabilitySample
impl UnsafeUnpin for PowCapabilitySample
impl UnwindSafe for PowCapabilitySample
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.