pub struct ConsultReport {
pub req: ConsultRequest,
pub proposed_selection: Vec<LotPick>,
pub st_gain: Usd,
pub lt_gain: Usd,
pub total_federal_tax_attributable: Usd,
pub marginal_tax: Usd,
pub timing: Option<TimingInsight>,
pub approximate: bool,
}Expand description
Mode-2 read-only what-if result.
Fields§
§req: ConsultRequest§proposed_selection: Vec<LotPick>§st_gain: Usd§lt_gain: Usd§total_federal_tax_attributable: UsdThe WHOLE-YEAR crypto-attributable federal tax WITH this hypothetical sale (real disposals +
hyp, vs no crypto). On a year that ALREADY has real disposals this OVER-states the hypothetical’s
own effect — read marginal_tax for the sale’s incremental cost. Kept + relabeled, not removed.
marginal_tax: UsdThe EXACT marginal federal tax THIS hypothetical sale causes = withhyp.total − baseline.total
(baseline = the real projection WITHOUT the synthetic sale). The shared no-crypto term cancels,
so this is the sale’s own effect — the figure to headline (the identity the old report violated).
timing: Option<TimingInsight>§approximate: booltrue when the available pool exceeded LOT_ENUM_BOUND (12) and candidate_selections
returned a deterministic but INCOMPLETE heuristic subset — the proposed selection may not be
the true tax-minimum for large pools. false for pools ≤ 12 (complete vertex enumeration).
Symmetric with Mode-1’s PoolHeuristic banner; carried out of core so the CLI renderer can
show the disclosure note (core has no renderer — C-M2).
Trait Implementations§
Source§impl Clone for ConsultReport
impl Clone for ConsultReport
Source§fn clone(&self) -> ConsultReport
fn clone(&self) -> ConsultReport
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 ConsultReport
impl Debug for ConsultReport
impl Eq for ConsultReport
Source§impl PartialEq for ConsultReport
impl PartialEq for ConsultReport
impl StructuralPartialEq for ConsultReport
Auto Trait Implementations§
impl Freeze for ConsultReport
impl RefUnwindSafe for ConsultReport
impl Send for ConsultReport
impl Sync for ConsultReport
impl Unpin for ConsultReport
impl UnsafeUnpin for ConsultReport
impl UnwindSafe for ConsultReport
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.