pub fn fill_vote(
    program: &Program,
    retail_account_owner: Pubkey,
    nonce: u64,
    fill_nonce: u16,
    arbiter: Pubkey,
    vault_meta_account_auction_id: u64,
    vote: u8,
    arbiter_token_account: Pubkey
) -> Instruction
Expand description

This instruction is used to vote on the fairness of a fill

Arbiters vote on the fairness of a fill when the fill is open for voting. In order to vote on a fill, the arbiter must stake tokens on the accuracy of their vote. If the arbiter voted in the majority, they receive their tokens back. Otherwise the tokens are deposited into a DAO governed backstop fund for the protocol.

Arguments

  • retail_account_owner The public key of the retail_account_owner account.
  • nonce An unsigned 64 bit integer. The nonce used as a seed to generate the PDA for the vault meta account, taken from the retail trader’s account when the order in question was initially created.
  • fill_nonce An unsigned 16 bit integer. The fill nonce taken from the vault meta account at fill time, and used to generate the PDA for the fill record account.
  • arbiter The public key of the arbiter account.
  • vault_meta_account_auction_id The unsigned integer field named auction_id in the vault_meta_account account.
  • vote The vote value made by the retail trader. Must be populated with 0 for an unfair vote, and 1 for a fair vote.
  • arbiter_token_account The SPL token account associated with the arbiter used to vote on the fairness of the fill by the market maker. This account is expected to be mutable

Returns an instruction