syntax = "proto3"; package ethereum.beacon.p2p.v1; import "github.com/gogo/protobuf/gogoproto/gogo.proto"; import "eth/v1alpha1/beacon_block.proto"; // 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 ethereum.eth.v1alpha1.VoluntaryExit voluntary_exits = 6; // Proposer slashing objects corresponding 1-to-1 to the slashed proposer indices // list in this same data structure. repeated ethereum.eth.v1alpha1.ProposerSlashing proposer_slashings = 7; // Attester slashing objects corresponding 1-to-1 to the slashed attester indices // list in this same data structure. repeated ethereum.eth.v1alpha1.AttesterSlashing attester_slashings = 8; } // ArchivedCommitteeInfo representing the minimal data required to reconstruct // validator committee assignments for an epoch N. message ArchivedCommitteeInfo { // Proposer seed represents the random seed used in shuffling proposers. bytes proposer_seed = 1 [(gogoproto.moretags) = "ssz-size:\"32\""]; // Attester seed represents the random seed used in shuffling attesters. bytes attester_seed = 2 [(gogoproto.moretags) = "ssz-size:\"32\""]; }