Action Reference

This page is a quick-reference list of transaction actions. Not all actions have proof statements, as only some actions perfom shielded state changes. Actions with proof statements are additionally listed separately for reference.

Actions by Proof Statement

ProofAction
Spendcore.component.shielded_pool.v1.Spend
Outputcore.component.shielded_pool.v1.Output
Convertcore.component.stake.v1.UndelegateClaim
Delegator Votecore.component.governance.v1.DelegatorVote
Swapcore.component.dex.v1.Swap
Swap Claimcore.component.dex.v1.SwapClaim
Nullifier DerivationNot used in actions, intended for verifiable transaction perspectives

All Actions

This table lists all actions, their high-level purpose, and their contributions to the transaction’s value balance. For ease of comprehension, shielded and transparent contributions to the transaction’s value balance are listed separately, though they are handled by the same mechanism: the chain forms commitments with a zero blinding factor to accumulate transparent and shielded contributions together.

ActionDescriptionShielded BalanceTransparent Balance
shielded_pool.v1.SpendSpends a note previously included on-chain, releasing its value into the transaction (value of spent note)
shielded_pool.v1.OutputProduces a new note controlled by a specified address and adds it to the chain state (value of new note)
dex.v1.SwapSubmits a swap intent to the chain for batch execution (prepaid claim fee) (swap inputs)
dex.v1.SwapClaimClaims the outputs of a swap once the clearing price is known, producing new output notes directly (prepaid claim fee)
stake.v1.ValidatorDefinitionUploads a new validator definition to the chain
stake.v1.DelegateDelegates stake to a validator, exchanging the staking token for that validator’s delegation token (staking token) (delegation token)
stake.v1.UndelegateUndelegates stake from a validator, exchanging delegation tokens for unbonding tokens (delegation token) (unbonding token)
stake.v1.UndelegateClaimConverts unbonding tokens to staking tokens after unbonding completes, at a 1:1 rate unless there are slashing penalties (unbonding token) (staking token)
ibc.v1.IbcRelayRelays IBC messages from a counterparty chain
ibc.v1.Ics20WithdrawalInitiates an outbound ICS-20 token transfer (transfer amount)
dex.v1.PositionOpenOpens a liquidity position (initial reserves) (opened LPNFT)
dex.v1.PositionCloseCloses a liquidity position (opened LPNFT) (closed LPNFT)
dex.v1.PositionWithdrawWithdraws reserves or rewards from a liquidity position, with sequence number (withdrawn seq LPNFT) (withdrawn seq LPNFT) (current position reserves)
dex.v1.PositionRewardClaimDeprecated and unused
governance.v1.ProposalSubmitSubmits a governance proposal for voting (deposit amount) (voting proposal NFT)
governance.v1.ProposalWithdrawWithdraws a governance proposal from voting (voting proposal NFT) (withdrawn proposal NFT)
governance.v1.ValidatorVotePerforms a governance vote as a validator
governance.v1.DelegatorVotePerforms a governance vote as a delegator (Voting Receipt Token)
governance.v1.ProposalDepositClaimClaims a proposal deposit once voting has finished (voting/withdrawn proposal NFT) (claimed proposal NFT) (deposit amount, if not slashed)
governance.v1.CommunityPoolSpendSpends funds from the community pool (spent value)
governance.v1.CommunityPoolOutputLike Output, but transparent (value of new note)
governance.v1.CommunityPoolDepositAllows deposits into the community pool (value of deposit)
auction.v1alpha1.ActionDutchAuctionScheduleSchedule a Dutch auction (initial reserves) (opened auction NFT)
auction.v1alpha1.ActionDutchAuctionEndTerminate a Dutch auction (opened auction NFT) (closed auction NFT)
auction.v1alpha1.ActionDutchAuctionWithdrawWithdraw a Dutch auction, with a sequence number (closed/withdrawn auction nft with sequence ) (withdrawn auction NFT with sequence ) (auction reserves)