pub enum ServeEconomicsRegime {
Warming,
Amortized,
}Expand description
Which buy-ceiling regime an ADR 041 serve-economics refusal was decided
under, dispatched to the matching sibling counter by
Metrics::serve_economics_refused.
Not a metric label: per adr/appendix-observability.md § Reason splits the
convention is sibling counters, and the two regimes have distinct operator
remedies. Warming means the source still had allowance, so the ceiling was
the market price max(sell, amortized) and the market itself is above it —
the market is too hot to relay into. Amortized means the source’s warming
allowance is spent (or warming is off), so the ceiling had already dropped
to the grief-proof floor — the node’s own sell rate or margin config is too
tight. The regime is also emitted as a structured debug! field at the
refusal site so a single event carries the candidate rate and ceiling.
Variants§
Warming
The source had warming allowance: the ceiling was the market price and the market is above it.
Amortized
The source’s warming allowance is spent (or warming is off): the ceiling was the amortized floor and this node’s serve economics are too tight.
Trait Implementations§
Source§impl Clone for ServeEconomicsRegime
impl Clone for ServeEconomicsRegime
impl Copy for ServeEconomicsRegime
Source§impl Debug for ServeEconomicsRegime
impl Debug for ServeEconomicsRegime
impl Eq for ServeEconomicsRegime
Source§impl PartialEq for ServeEconomicsRegime
impl PartialEq for ServeEconomicsRegime
impl StructuralPartialEq for ServeEconomicsRegime
Auto Trait Implementations§
impl Freeze for ServeEconomicsRegime
impl RefUnwindSafe for ServeEconomicsRegime
impl Send for ServeEconomicsRegime
impl Sync for ServeEconomicsRegime
impl Unpin for ServeEconomicsRegime
impl UnsafeUnpin for ServeEconomicsRegime
impl UnwindSafe for ServeEconomicsRegime
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request