Skip to main content
Version: pre-release (v0.79)

validator_commands.proto

path vega/commands/v1/validator_commands.proto

package vega.commands.v1


Messages

AnnounceNode

A command that allows a new node operator to announce themselves to the network as a new validator.

NameTypeDescription
vega_pub_keystringVega public key of the node being announced.
ethereum_addressstringEthereum public key of the node being announced.
chain_pub_keystringPublic key for the blockchain, currently the node's CometBFT key.
info_urlstringURL to the node operators homepage allowing stake holders to make an informed decision when delegating.
countrystringCountry code (ISO 3166-1 alpha-2) for the location of the node.
idstringNode ID of the validator, which is the node's public master key.
namestringHuman-readable name of the node.
avatar_urlstringURL to the node operator's avatar.
vega_pub_key_indexuint32Vega public key derivation index.
from_epochuint64Epoch from which the node is expected to be ready to validate blocks.
ethereum_signatureSignatureSignature from the node made using the ethereum wallet.
vega_signatureSignatureSignature from the node made using the Vega wallet.
submitter_addressstringEthereum public key to use as a submitter to allow automatic signature generation.

ChainEvent

A validator command sent automatically that provides information of events that have happened on foreign chains.

NameTypeDescription
tx_idstringID of the transaction on the foreign chain that caused the event.
nonceuint64Arbitrary one-time integer used to prevent replay attacks.
builtinvega.BuiltinAssetEventBuilt-in asset event.
erc20vega.ERC20EventEthereum ERC20 event.
staking_eventvega.StakingEventEthereum Staking event.
erc20_multisigvega.ERC20MultiSigEventEthereum ERC20 multisig event.
contract_callvega.EthContractCallEventEthereum contract call event.
heartbeatvega.ERC20HeartbeatHeartbeat showing evidence that a contract is being listened to.

EthereumKeyRotateSubmission

A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.

NameTypeDescription
target_blockuint64Block height at which the key rotation will take effect.
new_addressstringEthereum address that is being rotated to.
current_addressstringEthereum address of the node's current Ethereum keys.
submitter_addressstringEthereum public key to use as a submitter to allow automatic signature generation.
ethereum_signatureSignatureSignature signed by the new Ethereum key that can be verified to prove ownership.

KeyRotateSubmission

A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.

NameTypeDescription
new_pub_key_indexuint32New Vega public key derivation index.
target_blockuint64Block height at which the key rotation will take effect.
new_pub_keystringVega public key that would be rotated to.
current_pub_key_hashstringHash of the node's current Vega public key.

NodeSignature

A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.

NameTypeDescription
idstringID of the resource that the signature relates to.
sigbytesSignature generated by the node.
kindNodeSignatureKindKind of resource being signed.

NodeVote

A validator command which is sent automatically by a node when it has verified a resource external to the network.

NameTypeDescription
referencestringReference identifying the resource that has been verified.
typeNodeVote.TypeType of external event that has been verified.

ProtocolUpgradeProposal

A validator command sent manually by a node operator to propose a protocol upgrade.

NameTypeDescription
upgrade_block_heightuint64Block height at which to perform the upgrade.
vega_release_tagstringRelease tag for the Vega binary.

StateVariableProposal

A validator command sent automatically to reach consensus on floating point values.

NameTypeDescription
proposalvega.StateValueProposalDetails of the state variable being proposed.

ValidatorHeartbeat

A validator command which is sent automatically at regular intervals by any validator participating in the network. It is used to allow the network to know whether a validator is active, or if they have shut down.

NameTypeDescription
node_idstringNode ID of the validator emitting the heartbeat.
ethereum_signatureSignatureSignature from the validator made using their Ethereum wallet.
vega_signatureSignatureSignature from the validator made using their Vega wallet.
messagestringMessage which has been signed.

Enums

NodeSignatureKind

Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc

NameNumberDescription
NODE_SIGNATURE_KIND_UNSPECIFIED0Represents an unspecified or missing value from the input.
NODE_SIGNATURE_KIND_ASSET_NEW1Represents a signature for a new asset allow-listing.
NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL2Represents a signature for an asset withdrawal.
NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED3Represents a signature for a new signer added to the erc20 multisig contract.
NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED4Represents a signature for a signer removed from the erc20 multisig contract.
NODE_SIGNATURE_KIND_ASSET_UPDATE5Represents a signature for an asset update allow-listing.

NodeVote.Type

NameNumberDescription
TYPE_UNSPECIFIED0Represents an unspecified or missing value from the input
TYPE_STAKE_DEPOSITED1Node vote for a new stake deposit
TYPE_STAKE_REMOVED2Node vote for a new stake removed event
TYPE_FUNDS_DEPOSITED3Node vote for a new collateral deposit
TYPE_SIGNER_ADDED4Node vote for a new signer added to the erc20 bridge
TYPE_SIGNER_REMOVED5Node vote for a signer removed from the erc20 bridge
TYPE_BRIDGE_STOPPED6Node vote for a bridge stopped event
TYPE_BRIDGE_RESUMED7Node vote for a bridge resumed event
TYPE_ASSET_LISTED8Node vote for a newly listed asset
TYPE_LIMITS_UPDATED9Node vote for an asset limits update
TYPE_STAKE_TOTAL_SUPPLY10Node vote to share the total supply of the staking token
TYPE_SIGNER_THRESHOLD_SET11Node vote to update the threshold of the signer set for the multisig contract
TYPE_GOVERNANCE_VALIDATE_ASSET12Node vote to validate a new assert governance proposal
TYPE_ETHEREUM_CONTRACT_CALL_RESULT13Node vote for an Ethereum contract call result
TYPE_ETHEREUM_HEARTBEAT14Node vote for an Ethereum chain event heartbeat.