pub struct BondPayoutRequest {
pub order: SmallOrder,
pub slashed_at: i64,
}Expand description
Outbound side of the bond payout invoice request carried by
Action::AddBondInvoice (Mostro → winning counterparty).
Asks the recipient for a bolt11 sized at order.amount (= the
counterparty share of a slashed bond) and ships the slash anchor
slashed_at so the client can compute the forfeit deadline as
slashed_at + bond_payout_claim_window_days * 86_400 — accurate even
when the message lands days late because the recipient or their relay
was offline.
The reply (counterparty → Mostro) reuses Payload::PaymentRequest
with the actual bolt11 in the second tuple slot, so the two
directions of the same action are wire-distinguishable by payload
shape rather than by message ordering.
Fields§
§order: SmallOrderOrder context (id, kind, amount = counterparty share in sats,
fiat metadata, etc.). Same SmallOrder shape the client
already renders for other order-bearing actions.
slashed_at: i64Unix timestamp (seconds, UTC) at which Mostro recorded the slash
decision. Frozen at the Locked → PendingPayout CAS and shipped
verbatim on every cadence retry of this request — clients can
rely on it as a fixed anchor.
Trait Implementations§
Source§impl Clone for BondPayoutRequest
impl Clone for BondPayoutRequest
Source§fn clone(&self) -> BondPayoutRequest
fn clone(&self) -> BondPayoutRequest
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 BondPayoutRequest
impl Debug for BondPayoutRequest
Source§impl<'de> Deserialize<'de> for BondPayoutRequest
impl<'de> Deserialize<'de> for BondPayoutRequest
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>,
Auto Trait Implementations§
impl Freeze for BondPayoutRequest
impl RefUnwindSafe for BondPayoutRequest
impl Send for BondPayoutRequest
impl Sync for BondPayoutRequest
impl Unpin for BondPayoutRequest
impl UnsafeUnpin for BondPayoutRequest
impl UnwindSafe for BondPayoutRequest
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<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