prysm-pulse/proto/eth/v1alpha1/archive.proto

49 lines
1.7 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package ethereum.eth.v1alpha1;
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
import "proto/eth/v1alpha1/beacon_block.proto";
option go_package = "github.com/prysmaticlabs/prysm/proto/eth/v1alpha1;eth";
// ArchivedActiveSetChanges represents the changes to the active validator registry
// between epoch N and N-1. In particular, it keeps track of validator indices
// which were newly activated, exited, or slashed, along with those particular
// block operations.
message ArchivedActiveSetChanges {
// Activated validator indices.
repeated uint64 activated = 1;
// Exited validator indices.
repeated uint64 exited = 2;
// Proposer indices slashed.
repeated uint64 slashed = 4;
// Voluntary exit objects corresponding 1-to-1 to the exited indices
// list in this same data structure.
repeated VoluntaryExit voluntary_exits = 6;
// Proposer slashing objects corresponding 1-to-1 to the slashed proposer indices
// list in this same data structure.
repeated ProposerSlashing proposer_slashings = 7;
// Attester slashing objects corresponding 1-to-1 to the slashed attester indices
// list in this same data structure.
repeated AttesterSlashing attester_slashings = 8;
}
// ArchivedCommitteeInfo representing the minimal data required to reconstruct
// validator committee assignments for an epoch N.
message ArchivedCommitteeInfo {
// Seed represents the random seed used in shuffling validators.
bytes seed = 1 [(gogoproto.moretags) = "ssz-size:\"32\""];
// Start shard for the shuffling at epoch N.
uint64 start_shard = 2;
// Committee count is the size the committees during epoch N.
uint64 committee_count = 3;
}