#[non_exhaustive]pub enum ValueRejectReason {
OverPerOrderCap,
OverDailyCap,
NotANumber,
Infinite,
Negative,
}Expand description
金额拒绝的结构化原因(v1.4.106 codex 0538 F1 P1 SECURITY)
区分 fail-closed validation (NaN / inf / negative) 与 normal cap exceed, 便于 caller 决定是否 audit-log(fail-closed → 高优先级 audit)。display 消息仍是 backward-compat 字符串。
NaN / inf / negative 全归 fail-closed:金融场景不允许这些值流过
限额引擎 —— LLM agent / proto fuzz / unsanitized REST body 任一来源传
f64::NAN 都会让 value > cap + EPSILON 静默 false(NaN compare 总返
false),bypass per-order cap 与 daily counter;负数则把 daily counter
倒减让后续大单通过。三类全 fail-closed 拒。
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
OverPerOrderCap
单笔超过 max_order_value cap
OverDailyCap
日累计超过 max_daily_value cap
NotANumber
order_value 为 NaN(fail-closed)
Infinite
order_value 为 +inf / -inf(fail-closed)
Negative
order_value 为负数(fail-closed —— 负数会倒减 daily counter)
Implementations§
Source§impl ValueRejectReason
impl ValueRejectReason
Sourcepub fn is_fail_closed(&self) -> bool
pub fn is_fail_closed(&self) -> bool
是否为 fail-closed validation 拒绝(NaN / inf / negative)—— 高优先级 audit
Trait Implementations§
Source§impl Clone for ValueRejectReason
impl Clone for ValueRejectReason
Source§fn clone(&self) -> ValueRejectReason
fn clone(&self) -> ValueRejectReason
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 ValueRejectReason
impl Debug for ValueRejectReason
Source§impl PartialEq for ValueRejectReason
impl PartialEq for ValueRejectReason
impl Eq for ValueRejectReason
impl StructuralPartialEq for ValueRejectReason
Auto Trait Implementations§
impl Freeze for ValueRejectReason
impl RefUnwindSafe for ValueRejectReason
impl Send for ValueRejectReason
impl Sync for ValueRejectReason
impl Unpin for ValueRejectReason
impl UnsafeUnpin for ValueRejectReason
impl UnwindSafe for ValueRejectReason
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
Checks if this value is equivalent to the given key. Read more