MessageStake is the Validator registration message, locking up a certain amount of tokens. Staking as a non-delegate is registering for active participation in the committee(s) consensus process(es), whereas delegate is passive participation that acts as a contribution to which committees are subsid
| 109 | // protocol. Either the operator or the sender may originate the stake transaction, but the funds are removed from |
| 110 | // the sender's account |
| 111 | type MessageStake struct { |
| 112 | state protoimpl.MessageState `protogen:"open.v1"` |
| 113 | // public_key: the public cryptographic identity of the Validator operator that is unique to a users |
| 114 | // secret private key |
| 115 | PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"publicKey"` // @gotags: json:"publicKey" |
| 116 | // amount: is the amount of tokens to be removed from the sender account and locked as a surety bond against bad |
| 117 | // behavior |
| 118 | Amount uint64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` |
| 119 | // committees: is the list of committees the validator is restaking their tokens towards |
| 120 | Committees []uint64 `protobuf:"varint,3,rep,packed,name=committees,proto3" json:"committees,omitempty"` |
| 121 | // net_address: is the tcp peer-to-peer address of the peer |
| 122 | NetAddress string `protobuf:"bytes,4,opt,name=net_address,json=netAddress,proto3" json:"netAddress"` // @gotags: json:"netAddress" |
| 123 | // output_address: is the short version of the public key where reward and unstaking funds will be distributed to |
| 124 | OutputAddress []byte `protobuf:"bytes,5,opt,name=output_address,json=outputAddress,proto3" json:"outputAddress"` // @gotags: json:"outputAddress" |
| 125 | // delegate: signals whether the Validator is a delegate or not |
| 126 | Delegate bool `protobuf:"varint,6,opt,name=delegate,proto3" json:"delegate,omitempty"` |
| 127 | // compound: signals whether the Validator is auto-compounding or not |
| 128 | Compound bool `protobuf:"varint,7,opt,name=compound,proto3" json:"compound,omitempty"` |
| 129 | // signer: auto-populated by the state machine to assign the authorized signer who executed the transaction |
| 130 | Signer []byte `protobuf:"bytes,8,opt,name=signer,proto3" json:"signer,omitempty"` |
| 131 | unknownFields protoimpl.UnknownFields |
| 132 | sizeCache protoimpl.SizeCache |
| 133 | } |
| 134 | |
| 135 | func (x *MessageStake) Reset() { |
| 136 | *x = MessageStake{} |
nothing calls this directly
no outgoing calls
no test coverage detected