Skip to main content

SettleDeployPublic

Struct SettleDeployPublic 

Source
pub struct SettleDeployPublic {
Show 23 fields pub authority: Address, pub satrush_config: Address, pub round: Address, pub board: Address, pub rent_recipient: Address, pub public_deployment: Address, pub miner: Address, pub public_automation: Address, pub automation_usd_ata: Address, pub miner_usd_ata: Address, pub affiliate: Option<Address>, pub sats_vault: Address, pub btc_mint: Address, pub usd_mint: Address, pub board_usd_ata: Address, pub board_btc_ata: Address, pub sats_vault_btc_ata: Address, pub token_vault: Address, pub token_program: Address, pub associated_token_program: Address, pub system_program: Address, pub event_authority: Address, pub program: Address,
}
Expand description

Accounts.

Fields§

§authority: Address

Settler: the deployment’s owner (manual claim) or the round authority (crank settling automated deployments).

§satrush_config: Address§round: Address

Round the deployment belongs to. Must be fully settled.

§board: Address

PDA that owns board_btc_ata; signs the deposit transfer into the vault.

§rent_recipient: Address

independent of the signer: the crank for automated deployments (it paid at execute), the user for manual ones.

§public_deployment: Address

The settled deployment; PDA re-keyed off its stored authority so a crank signer can settle it. Closed to rent_recipient.

§miner: Address

Miner profile of the deployment’s owner (not the signer).

§public_automation: Address

address is derived, so a client cannot dodge reload routing by omitting it); may be closed/empty, in which case winnings fall back to the miner profile. Deserialized manually in the handler when live.

§automation_usd_ata: Address

reload branch only (owner must be the automation PDA, mint the USD mint). May be closed/empty when the automation is gone.

§miner_usd_ata: Address

ATA address in the grubstake-winnings branch only (it necessarily exists there — the grubstake claim created it). Unused otherwise.

§affiliate: Option<Address>

The affiliate credited with the deployment’s frozen points. Required (and matched against the miner’s bound affiliate) whenever the deployment carries points; ignored otherwise. Required rather than forfeited: the backing USD was swept into the treasury at rotation, and skipping the credit would strand it with no points to redeem it. The account can never be closed and its address is stored on the miner, so a missing account is always a client slip a retry fixes.

§sats_vault: Address

The Sats Vault the winner’s BTC is deposited into for shares.

§btc_mint: Address

decimals byte are read. Unchecked for try_accounts stack headroom.

§usd_mint: Address

USD mint — read only to size hashrate points by the stake’s whole-USD unit and for the transfer decimals. decimals byte are read. Unchecked for try_accounts stack headroom.

§board_usd_ata: Address

Board’s USD pool — the reload transfer source (winnings sit there until claimed or reloaded). program validates mint and ownership on the transfer CPI. Unchecked for try_accounts stack headroom.

§board_btc_ata: Address

Board’s BTC reserves — the round’s post-swap BTC, source of the deposit. program validates mint and ownership on the transfer CPI. Unchecked for try_accounts stack headroom.

§sats_vault_btc_ata: Address

Vault’s BTC reserves — the deposit destination.

§token_vault: Address

The Token Vault the miner’s token rewards are deposited into for shares.

§token_program: Address§associated_token_program: Address§system_program: Address§event_authority: Address§program: Address

Implementations§

Trait Implementations§

Source§

impl Debug for SettleDeployPublic

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more