Skip to main content Link Search Menu Expand Document (external link)

WIP

Vault Proposal Contract Executes

Table of contents
  1. Vault Proposal Contract Executes
    1. Fund Proposal
    2. Finalize Proposal
    3. Pay Developer
    4. Mint NFT
    5. Claim Stake
    6. Emergency Cancel
    7. Release Vault

Fund Proposal

Execute this command on the YFD contract address to fund a proposal. The YFD contract will then execute the funding message on the proposal contract.


        
  
{
  send: {
    contract: "[proposal_address]",
    amount: "[amount]",
    msg: encodeBase64({ 
      stake: {} 
    })
  }
}


      

        
  
{
  "send": {
    "contract": "[proposal_address]",
    "amount": "[amount]",
    "msg": "eyJzdGFrZSI6e319"
  }
}


      

        
      

Finalize Proposal

For this and the rest of the commands, go to Contract in Terra Station, enter the proposal address, and click Execute.


        
  
{
  finalize_proposal: {} 
}


      

        
  
{
  "finalize_proposal": {}
}


      

        
      

Pay Developer

Release funds to the developer based on the funding schedule in the proposal.


        
  
{
  pay_developer: {
    amount: "[amount]"
  }
}


      

        
  
{
  "pay_developer": {
    "amount": "[amount]"
  }
}


      

        
      

Mint NFT

Execute to mint NFTs.


        
  
{
  mint_nft: {
    metadata: {
      strategist_uri: "ifps.example.com/strategist.json",
      booster_uri: "ifps.example.com/booster.json",
      treasury_uri: "ifps.example.com/treasury.json",
    }
  }
}


      

        
  
{
  "mint_nft": {
    "metadata": {
      "strategist_uri": "ifps.example.com/strategist.json",
      "booster_uri": "ifps.example.com/booster.json",
      "treasury_uri": "ifps.example.com/treasury.json",
    }
  }
}


      

        
      

Claim Stake

Execute to claim stakes once proposal voting ended and it failed.


        
  
{
  claim_stake: {}
}


      

        
  
{
  "claim_stake": {}
}


      

        
      

Emergency Cancel

Execute to initiate emergency cancellation of proposal.


        
  
{
  emergency_cancel: {
    with_penalty: true
  }
}


      

        
  
{
  "emergency_cancel": {
    "with_penalty": true
  }
}


      

        
      

Release Vault

Execute to deploy vault.


        
  
{
  release_vault: {
    github_commit: "www.github.com",
    code_hash: "nothing here",
    code_id: "[stub vault address]",
    instantiate_msg: encodeBase64({
      claim_contract: "[claim contract address]",
      proposal_id: "[vault proposal index]",
      fund_addr: "[YFD token address]",
    }),
    justification_link: "example.com",
  },
}


      

        
  
{
  "release_vault": {
    "github_commit": "www.github.com",
    "code_hash": "nothing here",
    "code_id": "[stub vault address]",
    "instantiate_msg": "[base 64 encoded message]",
    "justification_link": "example.com"
  }
}