pub struct DegradationEntry {
pub tool: String,
pub error: String,
pub fallback: String,
pub note: Option<String>,
pub step_ref: Option<String>,
pub attempt: Option<u32>,
pub at: u64,
}Expand description
One worker-reported degradation entry — a worker fell back to a
substitute behavior instead of failing outright (e.g. a tool call errored
and the worker used a cached/default value). Independent channel from
StepEntry/result_ref: degradations never flow through step OUTPUT
or the fold path (GH #32; sibling of the GH #34 audit sidecar — both
keep observational signal off the BP-chain value). Reported via POST /v1/worker/degradation; the server injects step_ref/attempt/at
before persisting.
Fields§
§tool: StringThe tool (or capability) the worker attempted to use.
error: StringThe error that triggered the fallback, in the worker’s own words.
fallback: StringWhat the worker substituted instead of failing.
note: Option<String>Optional free-form context from the worker.
step_ref: Option<String>The Blueprint step ref (Step.ref) this degradation was reported
under, if known. Server-injected metadata, not worker-supplied.
attempt: Option<u32>The attempt number this degradation was reported under, if known. Server-injected metadata, not worker-supplied.
at: u64Unix epoch seconds — when this entry was recorded. Server-injected.
Trait Implementations§
Source§impl Clone for DegradationEntry
impl Clone for DegradationEntry
Source§fn clone(&self) -> DegradationEntry
fn clone(&self) -> DegradationEntry
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 DegradationEntry
impl Debug for DegradationEntry
Source§impl<'de> Deserialize<'de> for DegradationEntry
impl<'de> Deserialize<'de> for DegradationEntry
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>,
Source§impl JsonSchema for DegradationEntry
impl JsonSchema for DegradationEntry
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for DegradationEntry
impl RefUnwindSafe for DegradationEntry
impl Send for DegradationEntry
impl Sync for DegradationEntry
impl Unpin for DegradationEntry
impl UnsafeUnpin for DegradationEntry
impl UnwindSafe for DegradationEntry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more