pub struct MigrationLegReport {
pub settle_txid: Option<Txid>,
pub migrated: Vec<MigrationVtxoRef>,
pub deferred: Vec<MigrationVtxoRef>,
pub oversized: Vec<MigrationVtxoRef>,
pub skipped: Option<MigrationSkipReason>,
pub error: Option<String>,
}Expand description
Outcome of one Client::migrate_deprecated_signer_vtxos leg.
Each leg owns its full sizing pipeline and reports independently — a failure or skip in one leg never suppresses the other. The pipeline is:
- inputs whose individual amount exceeds the server’s per-output ceiling (
vtxo_max_amount) are split out asSelf::oversized— they can never form a<= ceilingoutput and must exit unilaterally; - the remainder is selected highest-value-first, bounded by both
MAX_VTXOS_PER_SETTLEMENTand a running aggregate within the ceiling — the overflow lands inSelf::deferredfor a later cycle; - if the selected aggregate is below the dust floor, the leg is
Self::skippedand nothing is submitted.
Fields§
§settle_txid: Option<Txid>The settlement TXID, when this leg submitted a batch. None on skip.
migrated: Vec<MigrationVtxoRef>Inputs submitted in this leg’s settlement; empty on skip.
deferred: Vec<MigrationVtxoRef>Migratable inputs deferred to a later cycle by this leg’s count or amount caps.
oversized: Vec<MigrationVtxoRef>Inputs whose value alone exceeds the per-output ceiling; they require a unilateral exit and never migrate cooperatively.
skipped: Option<MigrationSkipReason>Why this leg submitted nothing; None when a settlement was attempted.
error: Option<String>The settlement error, if this leg’s settle_vtxos call failed. Set independently of the
other leg — a failure here does not prevent the other leg from running.
Implementations§
Trait Implementations§
Source§impl Clone for MigrationLegReport
impl Clone for MigrationLegReport
Source§fn clone(&self) -> MigrationLegReport
fn clone(&self) -> MigrationLegReport
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MigrationLegReport
impl RefUnwindSafe for MigrationLegReport
impl Send for MigrationLegReport
impl Sync for MigrationLegReport
impl Unpin for MigrationLegReport
impl UnsafeUnpin for MigrationLegReport
impl UnwindSafe for MigrationLegReport
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T behind Arc pointerSource§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
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,
Source§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request