mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-25 21:07:18 +00:00
b8bdf71d5b
* archive participation begin implementation * validator participation compute * comments * compute participation common func * full test for archiving data * gazelle * complete tests * gaz * define archived validator assignment method * archived assign logic * need to use compute committee next * compute archival assignments helper func * properly compute committee using current shard * modify the assignments request to take in a query filter item * more intuitive implementation of list assignments * utilize the query filter * complete implementation * revamp tests * fixing current tests before adding archive tests * test now passes using len filtered indices for total size * include prop index in test * revert bad change * use ethapis * add necessary tests * comments
52 lines
1.8 KiB
Protocol Buffer
52 lines
1.8 KiB
Protocol Buffer
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;
|
|
|
|
// Proposer index assigned to propose a beacon block during epoch N.
|
|
uint64 proposer_index = 4;
|
|
}
|