diff --git a/specrefs/.ethspecify.yml b/specrefs/.ethspecify.yml
new file mode 100644
index 00000000000..cc06073cb05
--- /dev/null
+++ b/specrefs/.ethspecify.yml
@@ -0,0 +1,76 @@
+version: v1.6.0-alpha.3
+style: hash
+
+specrefs:
+ search_root: ..
+ files:
+ - configs.yml
+ # - constants.yml
+ # - containers.yml
+ # - dataclasses.yml
+ # - functions.yml
+ # - presets.yml
+
+exceptions:
+ configs:
+ # A mistake in the pyspec broke this
+ # Remove exception in the next release
+ - BLOB_SCHEDULE
+ constants: []
+ ssz_objects: []
+ dataclasses: []
+ functions:
+ # Functions implemented by KZG library for EIP-4844
+ - bit_reversal_permutation#deneb
+ - blob_to_kzg_commitment#deneb
+ - blob_to_polynomial#deneb
+ - bls_field_to_bytes#deneb
+ - bytes_to_bls_field#deneb
+ - bytes_to_kzg_commitment#deneb
+ - bytes_to_kzg_proof#deneb
+ - compute_blob_kzg_proof#deneb
+ - compute_challenge#deneb
+ - compute_kzg_proof#deneb
+ - compute_kzg_proof_impl#deneb
+ - compute_powers#deneb
+ - compute_quotient_eval_within_domain#deneb
+ - compute_roots_of_unity#deneb
+ - evaluate_polynomial_in_evaluation_form#deneb
+ - g1_lincomb#deneb
+ - hash_to_bls_field#deneb
+ - is_power_of_two#deneb
+ - multi_exp#deneb
+ - reverse_bits#deneb
+ - validate_kzg_g1#deneb
+ - verify_blob_kzg_proof#deneb
+ - verify_blob_kzg_proof_batch#deneb
+ - verify_kzg_proof#deneb
+ - verify_kzg_proof_batch#deneb
+ - verify_kzg_proof_impl#deneb
+
+ # Functions implemented by KZG library for EIP-7594
+ - _fft_field#fulu
+ - add_polynomialcoeff#fulu
+ - cell_to_coset_evals#fulu
+ - compute_cells#fulu
+ - compute_cells_and_kzg_proofs#fulu
+ - compute_cells_and_kzg_proofs_polynomialcoeff#fulu
+ - compute_kzg_proof_multi_impl#fulu
+ - compute_verify_cell_kzg_proof_batch_challenge#fulu
+ - construct_vanishing_polynomial#fulu
+ - coset_evals_to_cell#fulu
+ - coset_fft_field#fulu
+ - coset_for_cell#fulu
+ - coset_shift_for_cell#fulu
+ - divide_polynomialcoeff#fulu
+ - evaluate_polynomialcoeff#fulu
+ - fft_field#fulu
+ - interpolate_polynomialcoeff#fulu
+ - multiply_polynomialcoeff#fulu
+ - polynomial_eval_to_coeff#fulu
+ - recover_cells_and_kzg_proofs#fulu
+ - recover_polynomialcoeff#fulu
+ - vanishing_polynomialcoeff#fulu
+ - verify_cell_kzg_proof_batch#fulu
+ - verify_cell_kzg_proof_batch_impl#fulu
+
diff --git a/specrefs/configs.yml b/specrefs/configs.yml
new file mode 100644
index 00000000000..070cdf34f37
--- /dev/null
+++ b/specrefs/configs.yml
@@ -0,0 +1,454 @@
+- name: ALTAIR_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ALTAIR_FORK_EPOCH:
+ spec: |
+
+
+- name: ALTAIR_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ALTAIR_FORK_VERSION:
+ spec: |
+
+
+- name: ATTESTATION_PROPAGATION_SLOT_RANGE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ATTESTATION_PROPAGATION_SLOT_RANGE:
+ spec: |
+
+
+- name: ATTESTATION_SUBNET_COUNT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ATTESTATION_SUBNET_COUNT:
+ spec: |
+
+
+- name: ATTESTATION_SUBNET_EXTRA_BITS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ATTESTATION_SUBNET_EXTRA_BITS:
+ spec: |
+
+
+- name: ATTESTATION_SUBNET_PREFIX_BITS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ATTESTATION_SUBNET_PREFIX_BITS:
+ spec: |
+
+
+- name: BALANCE_PER_ADDITIONAL_CUSTODY_GROUP
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: BALANCE_PER_ADDITIONAL_CUSTODY_GROUP:
+ spec: |
+
+
+- name: BELLATRIX_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: BELLATRIX_FORK_EPOCH:
+ spec: |
+
+
+- name: BELLATRIX_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: BELLATRIX_FORK_VERSION:
+ spec: |
+
+
+- name: BLOB_SIDECAR_SUBNET_COUNT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: BLOB_SIDECAR_SUBNET_COUNT:
+ spec: |
+
+
+- name: BLOB_SIDECAR_SUBNET_COUNT_ELECTRA
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: BLOB_SIDECAR_SUBNET_COUNT_ELECTRA:
+ spec: |
+
+
+- name: CAPELLA_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: CAPELLA_FORK_EPOCH:
+ spec: |
+
+
+- name: CAPELLA_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: CAPELLA_FORK_VERSION:
+ spec: |
+
+
+- name: CHURN_LIMIT_QUOTIENT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: CHURN_LIMIT_QUOTIENT:
+ spec: |
+
+
+- name: CUSTODY_REQUIREMENT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: CUSTODY_REQUIREMENT: # To avoid ambiguous search we can use regex: ^\s*CUSTODY_REQUIREMENT:\s make sure to turn on regex mode
+ spec: |
+
+
+- name: DATA_COLUMN_SIDECAR_SUBNET_COUNT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: DATA_COLUMN_SIDECAR_SUBNET_COUNT:
+ spec: |
+
+
+- name: DENEB_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: DENEB_FORK_EPOCH:
+ spec: |
+
+
+- name: DENEB_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: DENEB_FORK_VERSION:
+ spec: |
+
+
+- name: EJECTION_BALANCE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: EJECTION_BALANCE:
+ spec: |
+
+
+- name: ELECTRA_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ELECTRA_FORK_EPOCH:
+ spec: |
+
+
+- name: ELECTRA_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ELECTRA_FORK_VERSION:
+ spec: |
+
+
+- name: EPOCHS_PER_SUBNET_SUBSCRIPTION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: EPOCHS_PER_SUBNET_SUBSCRIPTION:
+ spec: |
+
+
+- name: ETH1_FOLLOW_DISTANCE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: ETH1_FOLLOW_DISTANCE:
+ spec: |
+
+
+- name: FULU_FORK_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: FULU_FORK_EPOCH:
+ spec: |
+
+
+- name: FULU_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: FULU_FORK_VERSION:
+ spec: |
+
+
+- name: GENESIS_DELAY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: GENESIS_DELAY:
+ spec: |
+
+
+- name: GENESIS_FORK_VERSION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: GENESIS_FORK_VERSION:
+ spec: |
+
+
+- name: INACTIVITY_SCORE_BIAS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: INACTIVITY_SCORE_BIAS:
+ spec: |
+
+
+- name: INACTIVITY_SCORE_RECOVERY_RATE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: INACTIVITY_SCORE_RECOVERY_RATE:
+ spec: |
+
+
+- name: MAXIMUM_GOSSIP_CLOCK_DISPARITY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAXIMUM_GOSSIP_CLOCK_DISPARITY:
+ spec: |
+
+
+- name: MAX_BLOBS_PER_BLOCK
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_BLOBS_PER_BLOCK:
+ spec: |
+
+
+- name: MAX_BLOBS_PER_BLOCK_ELECTRA
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_BLOBS_PER_BLOCK_ELECTRA:
+ spec: |
+
+
+- name: MAX_PAYLOAD_SIZE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_PAYLOAD_SIZE:
+ spec: |
+
+
+- name: MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT:
+ spec: |
+
+
+- name: MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT:
+ spec: |
+
+
+- name: MAX_REQUEST_BLOB_SIDECARS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_REQUEST_BLOB_SIDECARS:
+ spec: |
+
+
+- name: MAX_REQUEST_BLOB_SIDECARS_ELECTRA
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_REQUEST_BLOB_SIDECARS_ELECTRA:
+ spec: |
+
+
+- name: MAX_REQUEST_BLOCKS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_REQUEST_BLOCKS:
+ spec: |
+
+
+- name: MAX_REQUEST_BLOCKS_DENEB
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_REQUEST_BLOCKS_DENEB:
+ spec: |
+
+
+- name: MAX_REQUEST_DATA_COLUMN_SIDECARS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MAX_REQUEST_DATA_COLUMN_SIDECARS:
+ spec: |
+
+
+- name: MESSAGE_DOMAIN_INVALID_SNAPPY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MESSAGE_DOMAIN_INVALID_SNAPPY:
+ spec: |
+
+
+- name: MESSAGE_DOMAIN_VALID_SNAPPY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MESSAGE_DOMAIN_VALID_SNAPPY:
+ spec: |
+
+
+- name: MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS:
+ spec: |
+
+
+- name: MIN_EPOCHS_FOR_BLOCK_REQUESTS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_EPOCHS_FOR_BLOCK_REQUESTS:
+ spec: |
+
+
+- name: MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS:
+ spec: |
+
+
+- name: MIN_GENESIS_ACTIVE_VALIDATOR_COUNT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_GENESIS_ACTIVE_VALIDATOR_COUNT:
+ spec: |
+
+
+- name: MIN_GENESIS_TIME
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_GENESIS_TIME:
+ spec: |
+
+
+- name: MIN_PER_EPOCH_CHURN_LIMIT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_PER_EPOCH_CHURN_LIMIT:
+ spec: |
+
+
+- name: MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA:
+ spec: |
+
+
+- name: MIN_VALIDATOR_WITHDRAWABILITY_DELAY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: MIN_VALIDATOR_WITHDRAWABILITY_DELAY:
+ spec: |
+
+
+- name: NUMBER_OF_COLUMNS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: NUMBER_OF_COLUMNS:
+ spec: |
+
+
+- name: NUMBER_OF_CUSTODY_GROUPS
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: NUMBER_OF_CUSTODY_GROUPS:
+ spec: |
+
+
+- name: PROPOSER_SCORE_BOOST
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: PROPOSER_SCORE_BOOST:
+ spec: |
+
+
+- name: REORG_HEAD_WEIGHT_THRESHOLD
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: REORG_HEAD_WEIGHT_THRESHOLD:
+ spec: |
+
+
+- name: REORG_MAX_EPOCHS_SINCE_FINALIZATION
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: REORG_MAX_EPOCHS_SINCE_FINALIZATION:
+ spec: |
+
+
+- name: REORG_PARENT_WEIGHT_THRESHOLD
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: REORG_PARENT_WEIGHT_THRESHOLD:
+ spec: |
+
+
+- name: SAMPLES_PER_SLOT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: SAMPLES_PER_SLOT:
+ spec: |
+
+
+- name: SECONDS_PER_ETH1_BLOCK
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: SECONDS_PER_ETH1_BLOCK:
+ spec: |
+
+
+- name: SECONDS_PER_SLOT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: SECONDS_PER_SLOT:
+ spec: |
+
+
+- name: SHARD_COMMITTEE_PERIOD
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: SHARD_COMMITTEE_PERIOD:
+ spec: |
+
+
+- name: SUBNETS_PER_NODE
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: SUBNETS_PER_NODE:
+ spec: |
+
+
+- name: TERMINAL_BLOCK_HASH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: TERMINAL_BLOCK_HASH:
+ spec: |
+
+
+- name: TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH:
+ spec: |
+
+
+- name: TERMINAL_TOTAL_DIFFICULTY
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: TERMINAL_TOTAL_DIFFICULTY:
+ spec: |
+
+
+- name: VALIDATOR_CUSTODY_REQUIREMENT
+ sources:
+ - file: common/eth2_network_config/built_in_network_configs/mainnet/config.yaml
+ search: VALIDATOR_CUSTODY_REQUIREMENT:
+ spec: |
+
diff --git a/specrefs/constants.yml b/specrefs/constants.yml
new file mode 100644
index 00000000000..aa5d1284915
--- /dev/null
+++ b/specrefs/constants.yml
@@ -0,0 +1,320 @@
+
+- name: BASE_REWARDS_PER_EPOCH
+ sources: []
+ spec: |
+
+
+- name: BLS_MODULUS
+ sources: []
+ spec: |
+
+
+- name: BLS_WITHDRAWAL_PREFIX
+ sources: []
+ spec: |
+
+
+- name: BYTES_PER_COMMITMENT
+ sources: []
+ spec: |
+
+
+- name: BYTES_PER_FIELD_ELEMENT
+ sources: []
+ spec: |
+
+
+- name: BYTES_PER_PROOF
+ sources: []
+ spec: |
+
+
+- name: COMPOUNDING_WITHDRAWAL_PREFIX
+ sources: []
+ spec: |
+
+
+- name: CONSOLIDATION_REQUEST_TYPE
+ sources: []
+ spec: |
+
+
+- name: DEPOSIT_CONTRACT_TREE_DEPTH
+ sources: []
+ spec: |
+
+
+- name: DEPOSIT_REQUEST_TYPE
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_AGGREGATE_AND_PROOF
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_APPLICATION_MASK
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_BEACON_ATTESTER
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_BEACON_PROPOSER
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_BLS_TO_EXECUTION_CHANGE
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_CONTRIBUTION_AND_PROOF
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_DEPOSIT
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_RANDAO
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_SELECTION_PROOF
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_SYNC_COMMITTEE
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF
+ sources: []
+ spec: |
+
+
+- name: DOMAIN_VOLUNTARY_EXIT
+ sources: []
+ spec: |
+
+
+- name: ENDIANNESS
+ sources: []
+ spec: |
+
+
+- name: ETH1_ADDRESS_WITHDRAWAL_PREFIX
+ sources: []
+ spec: |
+
+
+- name: ETH_TO_GWEI
+ sources: []
+ spec: |
+
+
+- name: FAR_FUTURE_EPOCH
+ sources: []
+ spec: |
+
+
+- name: FIAT_SHAMIR_PROTOCOL_DOMAIN
+ sources: []
+ spec: |
+
+
+- name: FULL_EXIT_REQUEST_AMOUNT
+ sources: []
+ spec: |
+
+
+- name: G1_POINT_AT_INFINITY
+ sources: []
+ spec: |
+
+
+- name: G2_POINT_AT_INFINITY
+ sources: []
+ spec: |
+
+
+- name: GENESIS_EPOCH
+ sources: []
+ spec: |
+
+
+- name: GENESIS_SLOT
+ sources: []
+ spec: |
+
+
+- name: INTERVALS_PER_SLOT
+ sources: []
+ spec: |
+
+
+- name: JUSTIFICATION_BITS_LENGTH
+ sources: []
+ spec: |
+
+
+- name: KZG_ENDIANNESS
+ sources: []
+ spec: |
+
+
+- name: KZG_SETUP_G2_LENGTH
+ sources: []
+ spec: |
+
+
+- name: KZG_SETUP_G2_MONOMIAL
+ sources: []
+ spec: |
+
+
+- name: MAX_CONCURRENT_REQUESTS
+ sources: []
+ spec: |
+
+
+- name: MAX_REQUEST_LIGHT_CLIENT_UPDATES
+ sources: []
+ spec: |
+
+
+- name: NODE_ID_BITS
+ sources: []
+ spec: |
+
+
+- name: PARTICIPATION_FLAG_WEIGHTS
+ sources: []
+ spec: |
+
+
+- name: PRIMITIVE_ROOT_OF_UNITY
+ sources: []
+ spec: |
+
+
+- name: PROPOSER_WEIGHT
+ sources: []
+ spec: |
+
+
+- name: RANDOM_CHALLENGE_KZG_BATCH_DOMAIN
+ sources: []
+ spec: |
+
+
+- name: RANDOM_CHALLENGE_KZG_CELL_BATCH_DOMAIN
+ sources: []
+ spec: |
+
+
+- name: SAFETY_DECAY
+ sources: []
+ spec: |
+
+
+- name: SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY
+ sources: []
+ spec: |
+
+
+- name: SYNC_COMMITTEE_SUBNET_COUNT
+ sources: []
+ spec: |
+
+
+- name: SYNC_REWARD_WEIGHT
+ sources: []
+ spec: |
+
+
+- name: TARGET_AGGREGATORS_PER_COMMITTEE
+ sources: []
+ spec: |
+
+
+- name: TARGET_AGGREGATORS_PER_SYNC_SUBCOMMITTEE
+ sources: []
+ spec: |
+
+
+- name: TIMELY_HEAD_FLAG_INDEX
+ sources: []
+ spec: |
+
+
+- name: TIMELY_HEAD_WEIGHT
+ sources: []
+ spec: |
+
+
+- name: TIMELY_SOURCE_FLAG_INDEX
+ sources: []
+ spec: |
+
+
+- name: TIMELY_SOURCE_WEIGHT
+ sources: []
+ spec: |
+
+
+- name: TIMELY_TARGET_FLAG_INDEX
+ sources: []
+ spec: |
+
+
+- name: TIMELY_TARGET_WEIGHT
+ sources: []
+ spec: |
+
+
+- name: UINT256_MAX
+ sources: []
+ spec: |
+
+
+- name: UINT64_MAX
+ sources: []
+ spec: |
+
+
+- name: UINT64_MAX_SQRT
+ sources: []
+ spec: |
+
+
+- name: UNSET_DEPOSIT_REQUESTS_START_INDEX
+ sources: []
+ spec: |
+
+
+- name: VERSIONED_HASH_VERSION_KZG
+ sources: []
+ spec: |
+
+
+- name: WEIGHT_DENOMINATOR
+ sources: []
+ spec: |
+
+
+- name: WITHDRAWAL_REQUEST_TYPE
+ sources: []
+ spec: |
+
diff --git a/specrefs/containers.yml b/specrefs/containers.yml
new file mode 100644
index 00000000000..5330f81cbfc
--- /dev/null
+++ b/specrefs/containers.yml
@@ -0,0 +1,399 @@
+- name: AggregateAndProof#phase0
+ sources: []
+ spec: |
+
+
+- name: AggregateAndProof#electra
+ sources: []
+ spec: |
+
+
+- name: Attestation#phase0
+ sources: []
+ spec: |
+
+
+- name: Attestation#electra
+ sources: []
+ spec: |
+
+
+- name: AttestationData
+ sources: []
+ spec: |
+
+
+- name: AttesterSlashing#phase0
+ sources: []
+ spec: |
+
+
+- name: AttesterSlashing#electra
+ sources: []
+ spec: |
+
+
+- name: BLSToExecutionChange
+ sources: []
+ spec: |
+
+
+- name: BeaconBlock
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#phase0
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#altair
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#bellatrix
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#capella
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#deneb
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockBody#electra
+ sources: []
+ spec: |
+
+
+- name: BeaconBlockHeader
+ sources: []
+ spec: |
+
+
+- name: BeaconState#phase0
+ sources: []
+ spec: |
+
+
+- name: BeaconState#altair
+ sources: []
+ spec: |
+
+
+- name: BeaconState#bellatrix
+ sources: []
+ spec: |
+
+
+- name: BeaconState#capella
+ sources: []
+ spec: |
+
+
+- name: BeaconState#deneb
+ sources: []
+ spec: |
+
+
+- name: BeaconState#electra
+ sources: []
+ spec: |
+
+
+- name: BeaconState#fulu
+ sources: []
+ spec: |
+
+
+- name: BlobIdentifier
+ sources: []
+ spec: |
+
+
+- name: BlobSidecar
+ sources: []
+ spec: |
+
+
+- name: Checkpoint
+ sources: []
+ spec: |
+
+
+- name: ConsolidationRequest
+ sources: []
+ spec: |
+
+
+- name: ContributionAndProof
+ sources: []
+ spec: |
+
+
+- name: DataColumnSidecar
+ sources: []
+ spec: |
+
+
+- name: DataColumnsByRootIdentifier
+ sources: []
+ spec: |
+
+
+- name: Deposit
+ sources: []
+ spec: |
+
+
+- name: DepositData
+ sources: []
+ spec: |
+
+
+- name: DepositMessage
+ sources: []
+ spec: |
+
+
+- name: DepositRequest
+ sources: []
+ spec: |
+
+
+- name: Eth1Block
+ sources: []
+ spec: |
+
+
+- name: Eth1Data
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayload#bellatrix
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayload#capella
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayload#deneb
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayloadHeader#bellatrix
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayloadHeader#capella
+ sources: []
+ spec: |
+
+
+- name: ExecutionPayloadHeader#deneb
+ sources: []
+ spec: |
+
+
+- name: ExecutionRequests
+ sources: []
+ spec: |
+
+
+- name: Fork
+ sources: []
+ spec: |
+
+
+- name: ForkData
+ sources: []
+ spec: |
+
+
+- name: HistoricalBatch
+ sources: []
+ spec: |
+
+
+- name: HistoricalSummary
+ sources: []
+ spec: |
+
+
+- name: IndexedAttestation#phase0
+ sources: []
+ spec: |
+
+
+- name: IndexedAttestation#electra
+ sources: []
+ spec: |
+
+
+- name: LightClientBootstrap
+ sources: []
+ spec: |
+
+
+- name: LightClientFinalityUpdate
+ sources: []
+ spec: |
+
+
+- name: LightClientHeader#altair
+ sources: []
+ spec: |
+
+
+- name: LightClientHeader#capella
+ sources: []
+ spec: |
+
+
+- name: LightClientOptimisticUpdate
+ sources: []
+ spec: |
+
+
+- name: LightClientUpdate
+ sources: []
+ spec: |
+
+
+- name: MatrixEntry
+ sources: []
+ spec: |
+
+
+- name: PendingAttestation
+ sources: []
+ spec: |
+
+
+- name: PendingConsolidation
+ sources: []
+ spec: |
+
+
+- name: PendingDeposit
+ sources: []
+ spec: |
+
+
+- name: PendingPartialWithdrawal
+ sources: []
+ spec: |
+
+
+- name: PowBlock
+ sources: []
+ spec: |
+
+
+- name: ProposerSlashing
+ sources: []
+ spec: |
+
+
+- name: SignedAggregateAndProof#phase0
+ sources: []
+ spec: |
+
+
+- name: SignedAggregateAndProof#electra
+ sources: []
+ spec: |
+
+
+- name: SignedBLSToExecutionChange
+ sources: []
+ spec: |
+
+
+- name: SignedBeaconBlock
+ sources: []
+ spec: |
+
+
+- name: SignedBeaconBlockHeader
+ sources: []
+ spec: |
+
+
+- name: SignedContributionAndProof
+ sources: []
+ spec: |
+
+
+- name: SignedVoluntaryExit
+ sources: []
+ spec: |
+
+
+- name: SigningData
+ sources: []
+ spec: |
+
+
+- name: SingleAttestation
+ sources: []
+ spec: |
+
+
+- name: SyncAggregate
+ sources: []
+ spec: |
+
+
+- name: SyncAggregatorSelectionData
+ sources: []
+ spec: |
+
+
+- name: SyncCommittee
+ sources: []
+ spec: |
+
+
+- name: SyncCommitteeContribution
+ sources: []
+ spec: |
+
+
+- name: SyncCommitteeMessage
+ sources: []
+ spec: |
+
+
+- name: Validator
+ sources: []
+ spec: |
+
+
+- name: VoluntaryExit
+ sources: []
+ spec: |
+
+
+- name: Withdrawal
+ sources: []
+ spec: |
+
+
+- name: WithdrawalRequest
+ sources: []
+ spec: |
+
diff --git a/specrefs/dataclasses.yml b/specrefs/dataclasses.yml
new file mode 100644
index 00000000000..63efbf79301
--- /dev/null
+++ b/specrefs/dataclasses.yml
@@ -0,0 +1,90 @@
+
+- name: BlobParameters
+ sources: []
+ spec: |
+
+
+- name: BlobsBundle#deneb
+ sources: []
+ spec: |
+
+
+- name: BlobsBundle#fulu
+ sources: []
+ spec: |
+
+
+- name: GetPayloadResponse#bellatrix
+ sources: []
+ spec: |
+
+
+- name: GetPayloadResponse#capella
+ sources: []
+ spec: |
+
+
+- name: GetPayloadResponse#deneb
+ sources: []
+ spec: |
+
+
+- name: GetPayloadResponse#electra
+ sources: []
+ spec: |
+
+
+- name: GetPayloadResponse#fulu
+ sources: []
+ spec: |
+
+
+- name: LatestMessage
+ sources: []
+ spec: |
+
+
+- name: LightClientStore
+ sources: []
+ spec: |
+
+
+- name: NewPayloadRequest#bellatrix
+ sources: []
+ spec: |
+
+
+- name: NewPayloadRequest#deneb
+ sources: []
+ spec: |
+
+
+- name: NewPayloadRequest#electra
+ sources: []
+ spec: |
+
+
+- name: OptimisticStore
+ sources: []
+ spec: |
+
+
+- name: PayloadAttributes#bellatrix
+ sources: []
+ spec: |
+
+
+- name: PayloadAttributes#capella
+ sources: []
+ spec: |
+
+
+- name: PayloadAttributes#deneb
+ sources: []
+ spec: |
+
+
+- name: Store
+ sources: []
+ spec: |
+
diff --git a/specrefs/functions.yml b/specrefs/functions.yml
new file mode 100644
index 00000000000..abad93f49df
--- /dev/null
+++ b/specrefs/functions.yml
@@ -0,0 +1,1856 @@
+- name: add_flag
+ sources: []
+ spec: |
+
+
+- name: add_validator_to_registry#phase0
+ sources: []
+ spec: |
+
+
+- name: add_validator_to_registry#altair
+ sources:
+ - file: consensus/types/src/beacon_state.rs
+ search: pub fn add_validator_to_registry(
+ spec: |
+
+
+- name: add_validator_to_registry#electra
+ sources: []
+ spec: |
+
+
+- name: apply_deposit#phase0
+ sources: []
+ spec: |
+
+
+- name: apply_deposit#electra
+ sources: []
+ spec: |
+
+
+- name: apply_light_client_update
+ sources: []
+ spec: |
+
+
+- name: apply_pending_deposit
+ sources: []
+ spec: |
+
+
+- name: block_to_light_client_header#altair
+ sources: []
+ spec: |
+
+
+- name: block_to_light_client_header#capella
+ sources: []
+ spec: |
+
+
+- name: block_to_light_client_header#deneb
+ sources: []
+ spec: |
+
+
+- name: bytes_to_uint64
+ sources: []
+ spec: |
+
+
+- name: calculate_committee_fraction
+ sources: []
+ spec: |
+
+
+- name: check_if_validator_active
+ sources: []
+ spec: |
+
+
+- name: compute_activation_exit_epoch
+ sources: []
+ spec: |
+
+
+- name: compute_columns_for_custody_group
+ sources: []
+ spec: |
+
+
+- name: compute_committee
+ sources: []
+ spec: |
+
+
+- name: compute_consolidation_epoch_and_update_churn
+ sources: []
+ spec: |
+
+
+- name: compute_domain
+ sources: []
+ spec: |
+
+
+- name: compute_epoch_at_slot
+ sources: []
+ spec: |
+
+
+- name: compute_exit_epoch_and_update_churn
+ sources: []
+ spec: |
+
+
+- name: compute_fork_data_root
+ sources: []
+ spec: |
+
+
+- name: compute_fork_digest#phase0
+ sources: []
+ spec: |
+
+
+- name: compute_fork_digest#fulu
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#altair
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#bellatrix
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#capella
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#deneb
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#electra
+ sources: []
+ spec: |
+
+
+- name: compute_fork_version#fulu
+ sources: []
+ spec: |
+
+
+- name: compute_matrix
+ sources: []
+ spec: |
+
+
+- name: compute_new_state_root
+ sources: []
+ spec: |
+
+
+- name: compute_on_chain_aggregate
+ sources: []
+ spec: |
+
+
+- name: compute_proposer_index#phase0
+ sources: []
+ spec: |
+
+
+- name: compute_proposer_index#electra
+ sources: []
+ spec: |
+
+
+- name: compute_proposer_indices
+ sources: []
+ spec: |
+
+
+- name: compute_pulled_up_tip
+ sources: []
+ spec: |
+
+
+- name: compute_shuffled_index
+ sources: []
+ spec: |
+
+
+- name: compute_signed_block_header
+ sources: []
+ spec: |
+
+
+- name: compute_signing_root
+ sources: []
+ spec: |
+
+
+- name: compute_slots_since_epoch_start
+ sources: []
+ spec: |
+
+
+- name: compute_start_slot_at_epoch
+ sources: []
+ spec: |
+
+
+- name: compute_subnet_for_attestation
+ sources: []
+ spec: |
+
+
+- name: compute_subnet_for_blob_sidecar#deneb
+ sources: []
+ spec: |
+
+
+- name: compute_subnet_for_blob_sidecar#electra
+ sources: []
+ spec: |
+
+
+- name: compute_subnet_for_data_column_sidecar
+ sources: []
+ spec: |
+
+
+- name: compute_subnets_for_sync_committee
+ sources: []
+ spec: |
+
+
+- name: compute_subscribed_subnet
+ sources: []
+ spec: |
+
+
+- name: compute_subscribed_subnets
+ sources: []
+ spec: |
+
+
+- name: compute_sync_committee_period
+ sources: []
+ spec: |
+
+
+- name: compute_sync_committee_period_at_slot
+ sources: []
+ spec: |
+
+
+- name: compute_time_at_slot
+ sources: []
+ spec: |
+
+
+- name: compute_weak_subjectivity_period#phase0
+ sources: []
+ spec: |
+
+
+- name: compute_weak_subjectivity_period#electra
+ sources: []
+ spec: |
+
+
+- name: create_light_client_bootstrap
+ sources: []
+ spec: |
+
+
+- name: create_light_client_finality_update
+ sources: []
+ spec: |
+
+
+- name: create_light_client_optimistic_update
+ sources: []
+ spec: |
+
+
+- name: create_light_client_update
+ sources: []
+ spec: |
+
+
+- name: current_sync_committee_gindex_at_slot#altair
+ sources: []
+ spec: |
+
+
+- name: current_sync_committee_gindex_at_slot#electra
+ sources: []
+ spec: |
+
+
+- name: decrease_balance
+ sources: []
+ spec: |
+
+
+- name: eth_aggregate_pubkeys
+ sources: []
+ spec: |
+
+
+- name: eth_fast_aggregate_verify
+ sources: []
+ spec: |
+
+
+- name: filter_block_tree
+ sources: []
+ spec: |
+
+
+- name: finalized_root_gindex_at_slot#altair
+ sources: []
+ spec: |
+
+
+- name: finalized_root_gindex_at_slot#electra
+ sources: []
+ spec: |
+
+
+- name: get_activation_exit_churn_limit
+ sources: []
+ spec: |
+
+
+- name: get_active_validator_indices
+ sources: []
+ spec: |
+
+
+- name: get_aggregate_and_proof
+ sources: []
+ spec: |
+
+
+- name: get_aggregate_and_proof_signature
+ sources: []
+ spec: |
+
+
+- name: get_aggregate_signature
+ sources: []
+ spec: |
+
+
+- name: get_ancestor
+ sources: []
+ spec: |
+
+
+- name: get_attestation_component_deltas
+ sources: []
+ spec: |
+
+
+- name: get_attestation_deltas
+ sources: []
+ spec: |
+
+
+- name: get_attestation_participation_flag_indices#altair
+ sources: []
+ spec: |
+
+
+- name: get_attestation_participation_flag_indices#deneb
+ sources: []
+ spec: |
+
+
+- name: get_attestation_signature
+ sources: []
+ spec: |
+
+
+- name: get_attesting_balance
+ sources: []
+ spec: |
+
+
+- name: get_attesting_indices#phase0
+ sources: []
+ spec: |
+
+
+- name: get_attesting_indices#electra
+ sources: []
+ spec: |
+
+
+- name: get_balance_churn_limit
+ sources: []
+ spec: |
+
+
+- name: get_base_reward#phase0
+ sources: []
+ spec: |
+
+
+- name: get_base_reward#altair
+ sources: []
+ spec: |
+
+
+- name: get_base_reward_per_increment
+ sources: []
+ spec: |
+
+
+- name: get_beacon_committee
+ sources: []
+ spec: |
+
+
+- name: get_beacon_proposer_index#phase0
+ sources: []
+ spec: |
+
+
+- name: get_beacon_proposer_index#fulu
+ sources: []
+ spec: |
+
+
+- name: get_beacon_proposer_indices
+ sources: []
+ spec: |
+
+
+- name: get_blob_parameters
+ sources: []
+ spec: |
+
+
+- name: get_blob_sidecars
+ sources: []
+ spec: |
+
+
+- name: get_block_root
+ sources: []
+ spec: |
+
+
+- name: get_block_root_at_slot
+ sources: []
+ spec: |
+
+
+- name: get_block_signature
+ sources: []
+ spec: |
+
+
+- name: get_checkpoint_block
+ sources: []
+ spec: |
+
+
+- name: get_committee_assignment
+ sources: []
+ spec: |
+
+
+- name: get_committee_count_per_slot
+ sources: []
+ spec: |
+
+
+- name: get_committee_indices
+ sources: []
+ spec: |
+
+
+- name: get_consolidation_churn_limit
+ sources: []
+ spec: |
+
+
+- name: get_contribution_and_proof
+ sources: []
+ spec: |
+
+
+- name: get_contribution_and_proof_signature
+ sources: []
+ spec: |
+
+
+- name: get_current_epoch
+ sources: []
+ spec: |
+
+
+- name: get_current_slot
+ sources: []
+ spec: |
+
+
+- name: get_current_store_epoch
+ sources: []
+ spec: |
+
+
+- name: get_custody_groups
+ sources: []
+ spec: |
+
+
+- name: get_data_column_sidecars
+ sources: []
+ spec: |
+
+
+- name: get_data_column_sidecars_from_block
+ sources: []
+ spec: |
+
+
+- name: get_data_column_sidecars_from_column_sidecar
+ sources: []
+ spec: |
+
+
+- name: get_domain
+ sources: []
+ spec: |
+
+
+- name: get_eligible_validator_indices
+ sources: []
+ spec: |
+
+
+- name: get_epoch_signature
+ sources: []
+ spec: |
+
+
+- name: get_eth1_pending_deposit_count
+ sources: []
+ spec: |
+
+
+- name: get_eth1_vote#phase0
+ sources: []
+ spec: |
+
+
+- name: get_eth1_vote#electra
+ sources: []
+ spec: |
+
+
+- name: get_execution_payload
+ sources: []
+ spec: |
+
+
+- name: get_execution_requests
+ sources: []
+ spec: |
+
+
+- name: get_execution_requests_list
+ sources: []
+ spec: |
+
+
+- name: get_expected_withdrawals#capella
+ sources: []
+ spec: |
+
+
+- name: get_expected_withdrawals#electra
+ sources: []
+ spec: |
+
+
+- name: get_filtered_block_tree
+ sources: []
+ spec: |
+
+
+- name: get_finality_delay
+ sources: []
+ spec: |
+
+
+- name: get_flag_index_deltas
+ sources: []
+ spec: |
+
+
+- name: get_forkchoice_store
+ sources: []
+ spec: |
+
+
+- name: get_head
+ sources: []
+ spec: |
+
+
+- name: get_head_deltas
+ sources: []
+ spec: |
+
+
+- name: get_inactivity_penalty_deltas#phase0
+ sources: []
+ spec: |
+
+
+- name: get_inactivity_penalty_deltas#altair
+ sources: []
+ spec: |
+
+
+- name: get_inactivity_penalty_deltas#bellatrix
+ sources: []
+ spec: |
+
+
+- name: get_inclusion_delay_deltas
+ sources: []
+ spec: |
+
+
+- name: get_index_for_new_validator
+ sources: []
+ spec: |
+
+
+- name: get_indexed_attestation
+ sources: []
+ spec: |
+
+
+- name: get_lc_execution_root#capella
+ sources: []
+ spec: |
+
+
+- name: get_lc_execution_root#deneb
+ sources: []
+ spec: |
+
+
+- name: get_lc_execution_root#electra
+ sources: []
+ spec: |
+
+
+- name: get_matching_head_attestations
+ sources: []
+ spec: |
+
+
+- name: get_matching_source_attestations
+ sources: []
+ spec: |
+
+
+- name: get_matching_target_attestations
+ sources: []
+ spec: |
+
+
+- name: get_max_effective_balance
+ sources: []
+ spec: |
+
+
+- name: get_next_sync_committee
+ sources: []
+ spec: |
+
+
+- name: get_next_sync_committee_indices#altair
+ sources: []
+ spec: |
+
+
+- name: get_next_sync_committee_indices#electra
+ sources: []
+ spec: |
+
+
+- name: get_pending_balance_to_withdraw
+ sources: []
+ spec: |
+
+
+- name: get_pow_block_at_terminal_total_difficulty
+ sources: []
+ spec: |
+
+
+- name: get_previous_epoch
+ sources: []
+ spec: |
+
+
+- name: get_proposer_head
+ sources: []
+ spec: |
+
+
+- name: get_proposer_reward
+ sources: []
+ spec: |
+
+
+- name: get_proposer_score
+ sources: []
+ spec: |
+
+
+- name: get_randao_mix
+ sources: []
+ spec: |
+
+
+- name: get_safety_threshold
+ sources: []
+ spec: |
+
+
+- name: get_seed
+ sources: []
+ spec: |
+
+
+- name: get_slot_signature
+ sources: []
+ spec: |
+
+
+- name: get_slots_since_genesis
+ sources: []
+ spec: |
+
+
+- name: get_source_deltas
+ sources: []
+ spec: |
+
+
+- name: get_subtree_index
+ sources: []
+ spec: |
+
+
+- name: get_sync_committee_message
+ sources: []
+ spec: |
+
+
+- name: get_sync_committee_selection_proof
+ sources: []
+ spec: |
+
+
+- name: get_sync_subcommittee_pubkeys
+ sources: []
+ spec: |
+
+
+- name: get_target_deltas
+ sources: []
+ spec: |
+
+
+- name: get_terminal_pow_block
+ sources: []
+ spec: |
+
+
+- name: get_total_active_balance
+ sources: []
+ spec: |
+
+
+- name: get_total_balance
+ sources: []
+ spec: |
+
+
+- name: get_unslashed_attesting_indices
+ sources: []
+ spec: |
+
+
+- name: get_unslashed_participating_indices
+ sources: []
+ spec: |
+
+
+- name: get_validator_activation_churn_limit
+ sources: []
+ spec: |
+
+
+- name: get_validator_churn_limit
+ sources: []
+ spec: |
+
+
+- name: get_validator_from_deposit#phase0
+ sources: []
+ spec: |
+
+
+- name: get_validator_from_deposit#electra
+ sources: []
+ spec: |
+
+
+- name: get_validators_custody_requirement
+ sources: []
+ spec: |
+
+
+- name: get_voting_source
+ sources: []
+ spec: |
+
+
+- name: get_weight
+ sources: []
+ spec: |
+
+
+- name: has_compounding_withdrawal_credential
+ sources: []
+ spec: |
+
+
+- name: has_eth1_withdrawal_credential
+ sources: []
+ spec: |
+
+
+- name: has_execution_withdrawal_credential
+ sources: []
+ spec: |
+
+
+- name: has_flag
+ sources: []
+ spec: |
+
+
+- name: increase_balance
+ sources: []
+ spec: |
+
+
+- name: initialize_beacon_state_from_eth1
+ sources: []
+ spec: |
+
+
+- name: initialize_light_client_store
+ sources: []
+ spec: |
+
+
+- name: initialize_proposer_lookahead
+ sources: []
+ spec: |
+
+
+- name: initiate_validator_exit#phase0
+ sources: []
+ spec: |
+
+
+- name: initiate_validator_exit#electra
+ sources: []
+ spec: |
+
+
+- name: integer_squareroot
+ sources: []
+ spec: |
+
+
+- name: is_active_validator
+ sources: []
+ spec: |
+
+
+- name: is_aggregator
+ sources: []
+ spec: |
+
+
+- name: is_assigned_to_sync_committee
+ sources: []
+ spec: |
+
+
+- name: is_better_update
+ sources: []
+ spec: |
+
+
+- name: is_candidate_block
+ sources: []
+ spec: |
+
+
+- name: is_compounding_withdrawal_credential
+ sources: []
+ spec: |
+
+
+- name: is_data_available#deneb
+ sources: []
+ spec: |
+
+
+- name: is_data_available#fulu
+ sources: []
+ spec: |
+
+
+- name: is_eligible_for_activation
+ sources: []
+ spec: |
+
+
+- name: is_eligible_for_activation_queue#phase0
+ sources: []
+ spec: |
+
+
+- name: is_eligible_for_activation_queue#electra
+ sources: []
+ spec: |
+
+
+- name: is_execution_block
+ sources: []
+ spec: |
+
+
+- name: is_execution_enabled
+ sources: []
+ spec: |
+
+
+- name: is_ffg_competitive
+ sources: []
+ spec: |
+
+
+- name: is_finality_update
+ sources: []
+ spec: |
+
+
+- name: is_finalization_ok
+ sources: []
+ spec: |
+
+
+- name: is_fully_withdrawable_validator#capella
+ sources: []
+ spec: |
+
+
+- name: is_fully_withdrawable_validator#electra
+ sources: []
+ spec: |
+
+
+- name: is_head_late
+ sources: []
+ spec: |
+
+
+- name: is_head_weak
+ sources: []
+ spec: |
+
+
+- name: is_in_inactivity_leak
+ sources: []
+ spec: |
+
+
+- name: is_merge_transition_block
+ sources: []
+ spec: |
+
+
+- name: is_merge_transition_complete
+ sources: []
+ spec: |
+
+
+- name: is_next_sync_committee_known
+ sources: []
+ spec: |
+
+
+- name: is_optimistic
+ sources: []
+ spec: |
+
+
+- name: is_optimistic_candidate_block
+ sources: []
+ spec: |
+
+
+- name: is_parent_strong
+ sources: []
+ spec: |
+
+
+- name: is_partially_withdrawable_validator#capella
+ sources: []
+ spec: |
+
+
+- name: is_partially_withdrawable_validator#electra
+ sources: []
+ spec: |
+
+
+- name: is_proposer
+ sources: []
+ spec: |
+
+
+- name: is_proposing_on_time
+ sources: []
+ spec: |
+
+
+- name: is_shuffling_stable
+ sources: []
+ spec: |
+
+
+- name: is_slashable_attestation_data
+ sources: []
+ spec: |
+
+
+- name: is_slashable_validator
+ sources: []
+ spec: |
+
+
+- name: is_sync_committee_aggregator
+ sources: []
+ spec: |
+
+
+- name: is_sync_committee_update
+ sources: []
+ spec: |
+
+
+- name: is_valid_deposit_signature
+ sources: []
+ spec: |
+
+
+- name: is_valid_genesis_state
+ sources: []
+ spec: |
+
+
+- name: is_valid_indexed_attestation
+ sources: []
+ spec: |
+
+
+- name: is_valid_light_client_header#altair
+ sources: []
+ spec: |
+
+
+- name: is_valid_light_client_header#capella
+ sources: []
+ spec: |
+
+
+- name: is_valid_light_client_header#deneb
+ sources: []
+ spec: |
+
+
+- name: is_valid_merkle_branch
+ sources: []
+ spec: |
+
+
+- name: is_valid_normalized_merkle_branch
+ sources: []
+ spec: |
+
+
+- name: is_valid_switch_to_compounding_request
+ sources: []
+ spec: |
+
+
+- name: is_valid_terminal_pow_block
+ sources: []
+ spec: |
+
+
+- name: is_within_weak_subjectivity_period#phase0
+ sources: []
+ spec: |
+
+
+- name: is_within_weak_subjectivity_period#electra
+ sources: []
+ spec: |
+
+
+- name: kzg_commitment_to_versioned_hash
+ sources: []
+ spec: |
+
+
+- name: latest_verified_ancestor
+ sources: []
+ spec: |
+
+
+- name: max_compressed_len
+ sources: []
+ spec: |
+
+
+- name: max_message_size
+ sources: []
+ spec: |
+
+
+- name: next_sync_committee_gindex_at_slot#altair
+ sources: []
+ spec: |
+
+
+- name: next_sync_committee_gindex_at_slot#electra
+ sources: []
+ spec: |
+
+
+- name: normalize_merkle_branch
+ sources: []
+ spec: |
+
+
+- name: on_attestation
+ sources: []
+ spec: |
+
+
+- name: on_attester_slashing
+ sources: []
+ spec: |
+
+
+- name: on_block#phase0
+ sources: []
+ spec: |
+
+
+- name: on_block#bellatrix
+ sources: []
+ spec: |
+
+
+- name: on_block#capella
+ sources: []
+ spec: |
+
+
+- name: on_block#deneb
+ sources: []
+ spec: |
+
+
+- name: on_block#fulu
+ sources: []
+ spec: |
+
+
+- name: on_tick
+ sources: []
+ spec: |
+
+
+- name: on_tick_per_slot
+ sources: []
+ spec: |
+
+
+- name: prepare_execution_payload#bellatrix
+ sources: []
+ spec: |
+
+
+- name: prepare_execution_payload#capella
+ sources: []
+ spec: |
+
+
+- name: prepare_execution_payload#deneb
+ sources: []
+ spec: |
+
+
+- name: prepare_execution_payload#electra
+ sources: []
+ spec: |
+
+
+- name: process_attestation#phase0
+ sources: []
+ spec: |
+
+
+- name: process_attestation#altair
+ sources: []
+ spec: |
+
+
+- name: process_attestation#deneb
+ sources: []
+ spec: |
+
+
+- name: process_attestation#electra
+ sources: []
+ spec: |
+
+
+- name: process_attester_slashing
+ sources: []
+ spec: |
+
+
+- name: process_block#phase0
+ sources: []
+ spec: |
+
+
+- name: process_block#altair
+ sources: []
+ spec: |
+
+
+- name: process_block#bellatrix
+ sources: []
+ spec: |
+
+
+- name: process_block#capella
+ sources: []
+ spec: |
+
+
+- name: process_block#electra
+ sources: []
+ spec: |
+
+
+- name: process_block_header
+ sources: []
+ spec: |
+
+
+- name: process_bls_to_execution_change
+ sources: []
+ spec: |
+
+
+- name: process_consolidation_request
+ sources: []
+ spec: |
+
+
+- name: process_deposit#phase0
+ sources: []
+ spec: |
+
+
+- name: process_deposit#electra
+ sources: []
+ spec: |
+
+
+- name: process_deposit_request
+ sources: []
+ spec: |
+
+
+- name: process_effective_balance_updates#phase0
+ sources: []
+ spec: |
+
+
+- name: process_effective_balance_updates#electra
+ sources: []
+ spec: |
+
+
+- name: process_epoch#phase0
+ sources: []
+ spec: |
+
+
+- name: process_epoch#altair
+ sources: []
+ spec: |
+
+
+- name: process_epoch#capella
+ sources: []
+ spec: |
+
+
+- name: process_epoch#electra
+ sources: []
+ spec: |
+
+
+- name: process_epoch#fulu
+ sources: []
+ spec: |
+
+
+- name: process_eth1_data
+ sources: []
+ spec: |
+
+
+- name: process_eth1_data_reset
+ sources: []
+ spec: |
+
+
+- name: process_execution_payload#bellatrix
+ sources: []
+ spec: |
+
+
+- name: process_execution_payload#capella
+ sources: []
+ spec: |
+
+
+- name: process_execution_payload#deneb
+ sources: []
+ spec: |
+
+
+- name: process_execution_payload#electra
+ sources: []
+ spec: |
+
+
+- name: process_execution_payload#fulu
+ sources: []
+ spec: |
+
+
+- name: process_historical_roots_update
+ sources: []
+ spec: |
+
+
+- name: process_historical_summaries_update
+ sources: []
+ spec: |
+
+
+- name: process_inactivity_updates
+ sources: []
+ spec: |
+
+
+- name: process_justification_and_finalization#phase0
+ sources: []
+ spec: |
+
+
+- name: process_justification_and_finalization#altair
+ sources: []
+ spec: |
+
+
+- name: process_light_client_finality_update
+ sources: []
+ spec: |
+
+
+- name: process_light_client_optimistic_update
+ sources: []
+ spec: |
+
+
+- name: process_light_client_store_force_update
+ sources: []
+ spec: |
+
+
+- name: process_light_client_update
+ sources: []
+ spec: |
+
+
+- name: process_operations#phase0
+ sources: []
+ spec: |
+
+
+- name: process_operations#capella
+ sources: []
+ spec: |
+
+
+- name: process_operations#electra
+ sources: []
+ spec: |
+
+
+- name: process_participation_flag_updates
+ sources: []
+ spec: |
+
+
+- name: process_participation_record_updates
+ sources: []
+ spec: |
+
+
+- name: process_pending_consolidations
+ sources: []
+ spec: |
+
+
+- name: process_pending_deposits
+ sources: []
+ spec: |
+
+
+- name: process_proposer_lookahead
+ sources: []
+ spec: |
+
+
+- name: process_proposer_slashing
+ sources: []
+ spec: |
+
+
+- name: process_randao
+ sources: []
+ spec: |
+
+
+- name: process_randao_mixes_reset
+ sources: []
+ spec: |
+
+
+- name: process_registry_updates#phase0
+ sources: []
+ spec: |
+
+
+- name: process_registry_updates#deneb
+ sources: []
+ spec: |
+
+
+- name: process_registry_updates#electra
+ sources: []
+ spec: |
+
+
+- name: process_rewards_and_penalties#phase0
+ sources: []
+ spec: |
+
+
+- name: process_rewards_and_penalties#altair
+ sources: []
+ spec: |
+
+
+- name: process_slashings#phase0
+ sources: []
+ spec: |
+
+
+- name: process_slashings#altair
+ sources: []
+ spec: |
+
+
+- name: process_slashings#bellatrix
+ sources: []
+ spec: |
+
+
+- name: process_slashings#electra
+ sources: []
+ spec: |
+
+
+- name: process_slashings_reset
+ sources: []
+ spec: |
+
+
+- name: process_slot
+ sources: []
+ spec: |
+
+
+- name: process_slots
+ sources: []
+ spec: |
+
+
+- name: process_sync_aggregate
+ sources: []
+ spec: |
+
+
+- name: process_sync_committee_contributions
+ sources: []
+ spec: |
+
+
+- name: process_sync_committee_updates
+ sources: []
+ spec: |
+
+
+- name: process_voluntary_exit#phase0
+ sources: []
+ spec: |
+
+
+- name: process_voluntary_exit#deneb
+ sources: []
+ spec: |
+
+
+- name: process_voluntary_exit#electra
+ sources: []
+ spec: |
+
+
+- name: process_withdrawal_request
+ sources: []
+ spec: |
+
+
+- name: process_withdrawals#capella
+ sources: []
+ spec: |
+
+
+- name: process_withdrawals#electra
+ sources: []
+ spec: |
+
+
+- name: queue_excess_active_balance
+ sources: []
+ spec: |
+
+
+- name: recover_matrix
+ sources: []
+ spec: |
+
+
+- name: saturating_sub
+ sources: []
+ spec: |
+
+
+- name: set_or_append_list
+ sources: []
+ spec: |
+
+
+- name: should_override_forkchoice_update
+ sources: []
+ spec: |
+
+
+- name: slash_validator#phase0
+ sources: []
+ spec: |
+
+
+- name: slash_validator#altair
+ sources: []
+ spec: |
+
+
+- name: slash_validator#bellatrix
+ sources: []
+ spec: |
+
+
+- name: slash_validator#electra
+ sources: []
+ spec: |
+
+
+- name: state_transition
+ sources: []
+ spec: |
+
+
+- name: store_target_checkpoint_state
+ sources: []
+ spec: |
+
+
+- name: switch_to_compounding_validator
+ sources: []
+ spec: |
+
+
+- name: translate_participation
+ sources: []
+ spec: |
+
+
+- name: update_checkpoints
+ sources: []
+ spec: |
+
+
+- name: update_latest_messages
+ sources: []
+ spec: |
+
+
+- name: update_unrealized_checkpoints
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_bootstrap_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_bootstrap_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_bootstrap_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_finality_update_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_finality_update_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_finality_update_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_header_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_header_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_header_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_optimistic_update_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_optimistic_update_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_optimistic_update_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_store_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_store_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_store_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_update_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_update_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_lc_update_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_altair
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_bellatrix
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_capella
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_deneb
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_electra
+ sources: []
+ spec: |
+
+
+- name: upgrade_to_fulu
+ sources: []
+ spec: |
+
+
+- name: validate_light_client_update
+ sources: []
+ spec: |
+
+
+- name: validate_merge_block
+ sources: []
+ spec: |
+
+
+- name: validate_on_attestation
+ sources: []
+ spec: |
+
+
+- name: validate_target_epoch_against_current_time
+ sources: []
+ spec: |
+
+
+- name: verify_blob_sidecar_inclusion_proof
+ sources: []
+ spec: |
+
+
+- name: verify_block_signature
+ sources: []
+ spec: |
+
+
+- name: verify_data_column_sidecar
+ sources: []
+ spec: |
+
+
+- name: verify_data_column_sidecar_inclusion_proof
+ sources: []
+ spec: |
+
+
+- name: verify_data_column_sidecar_kzg_proofs
+ sources: []
+ spec: |
+
+
+- name: voting_period_start_time
+ sources: []
+ spec: |
+
+
+- name: weigh_justification_and_finalization
+ sources: []
+ spec: |
+
+
+- name: xor
+ sources: []
+ spec: |
+
diff --git a/specrefs/presets.yml b/specrefs/presets.yml
new file mode 100644
index 00000000000..151723c177f
--- /dev/null
+++ b/specrefs/presets.yml
@@ -0,0 +1,354 @@
+- name: BASE_REWARD_FACTOR
+ sources: []
+ spec: |
+
+
+- name: BYTES_PER_LOGS_BLOOM
+ sources: []
+ spec: |
+
+
+- name: EFFECTIVE_BALANCE_INCREMENT
+ sources: []
+ spec: |
+
+
+- name: EPOCHS_PER_ETH1_VOTING_PERIOD
+ sources: []
+ spec: |
+
+
+- name: EPOCHS_PER_HISTORICAL_VECTOR
+ sources: []
+ spec: |
+
+
+- name: EPOCHS_PER_SLASHINGS_VECTOR
+ sources: []
+ spec: |
+
+
+- name: EPOCHS_PER_SYNC_COMMITTEE_PERIOD
+ sources: []
+ spec: |
+
+
+- name: FIELD_ELEMENTS_PER_BLOB
+ sources: []
+ spec: |
+
+
+- name: FIELD_ELEMENTS_PER_CELL
+ sources: []
+ spec: |
+
+
+- name: FIELD_ELEMENTS_PER_EXT_BLOB
+ sources: []
+ spec: |
+
+
+- name: HISTORICAL_ROOTS_LIMIT
+ sources: []
+ spec: |
+
+
+- name: HYSTERESIS_DOWNWARD_MULTIPLIER
+ sources: []
+ spec: |
+
+
+- name: HYSTERESIS_QUOTIENT
+ sources: []
+ spec: |
+
+
+- name: HYSTERESIS_UPWARD_MULTIPLIER
+ sources: []
+ spec: |
+
+
+- name: INACTIVITY_PENALTY_QUOTIENT
+ sources: []
+ spec: |
+
+
+- name: INACTIVITY_PENALTY_QUOTIENT_ALTAIR
+ sources: []
+ spec: |
+
+
+- name: INACTIVITY_PENALTY_QUOTIENT_BELLATRIX
+ sources: []
+ spec: |
+
+
+- name: KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH
+ sources: []
+ spec: |
+
+
+- name: KZG_COMMITMENT_INCLUSION_PROOF_DEPTH
+ sources: []
+ spec: |
+
+
+- name: MAX_ATTESTATIONS
+ sources: []
+ spec: |
+
+
+- name: MAX_ATTESTATIONS_ELECTRA
+ sources: []
+ spec: |
+
+
+- name: MAX_ATTESTER_SLASHINGS
+ sources: []
+ spec: |
+
+
+- name: MAX_ATTESTER_SLASHINGS_ELECTRA
+ sources: []
+ spec: |
+
+
+- name: MAX_BLOB_COMMITMENTS_PER_BLOCK
+ sources: []
+ spec: |
+
+
+- name: MAX_BLS_TO_EXECUTION_CHANGES
+ sources: []
+ spec: |
+
+
+- name: MAX_BYTES_PER_TRANSACTION
+ sources: []
+ spec: |
+
+
+- name: MAX_COMMITTEES_PER_SLOT#phase0
+ sources: []
+ spec: |
+
+
+- name: MAX_COMMITTEES_PER_SLOT#electra
+ sources: []
+ spec: |
+
+
+- name: MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD
+ sources: []
+ spec: |
+
+
+- name: MAX_DEPOSITS
+ sources: []
+ spec: |
+
+
+- name: MAX_DEPOSIT_REQUESTS_PER_PAYLOAD
+ sources: []
+ spec: |
+
+
+- name: MAX_EFFECTIVE_BALANCE
+ sources: []
+ spec: |
+
+
+- name: MAX_EFFECTIVE_BALANCE_ELECTRA
+ sources: []
+ spec: |
+
+
+- name: MAX_EXTRA_DATA_BYTES
+ sources: []
+ spec: |
+
+
+- name: MAX_PENDING_DEPOSITS_PER_EPOCH
+ sources: []
+ spec: |
+
+
+- name: MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP
+ sources: []
+ spec: |
+
+
+- name: MAX_PROPOSER_SLASHINGS
+ sources: []
+ spec: |
+
+
+- name: MAX_SEED_LOOKAHEAD
+ sources: []
+ spec: |
+
+
+- name: MAX_TRANSACTIONS_PER_PAYLOAD
+ sources: []
+ spec: |
+
+
+- name: MAX_VALIDATORS_PER_COMMITTEE#phase0
+ sources: []
+ spec: |
+
+
+- name: MAX_VALIDATORS_PER_COMMITTEE#electra
+ sources: []
+ spec: |
+
+
+- name: MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP
+ sources: []
+ spec: |
+
+
+- name: MAX_VOLUNTARY_EXITS
+ sources: []
+ spec: |
+
+
+- name: MAX_WITHDRAWALS_PER_PAYLOAD
+ sources: []
+ spec: |
+
+
+- name: MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD
+ sources: []
+ spec: |
+
+
+- name: MIN_ACTIVATION_BALANCE
+ sources: []
+ spec: |
+
+
+- name: MIN_ATTESTATION_INCLUSION_DELAY
+ sources: []
+ spec: |
+
+
+- name: MIN_DEPOSIT_AMOUNT
+ sources: []
+ spec: |
+
+
+- name: MIN_EPOCHS_TO_INACTIVITY_PENALTY
+ sources: []
+ spec: |
+
+
+- name: MIN_SEED_LOOKAHEAD
+ sources: []
+ spec: |
+
+
+- name: MIN_SLASHING_PENALTY_QUOTIENT
+ sources: []
+ spec: |
+
+
+- name: MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR
+ sources: []
+ spec: |
+
+
+- name: MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX
+ sources: []
+ spec: |
+
+
+- name: MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA
+ sources: []
+ spec: |
+
+
+- name: MIN_SYNC_COMMITTEE_PARTICIPANTS
+ sources: []
+ spec: |
+
+
+- name: PENDING_CONSOLIDATIONS_LIMIT
+ sources: []
+ spec: |
+
+
+- name: PENDING_DEPOSITS_LIMIT
+ sources: []
+ spec: |
+
+
+- name: PENDING_PARTIAL_WITHDRAWALS_LIMIT
+ sources: []
+ spec: |
+
+
+- name: PROPORTIONAL_SLASHING_MULTIPLIER
+ sources: []
+ spec: |
+
+
+- name: PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR
+ sources: []
+ spec: |
+
+
+- name: PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX
+ sources: []
+ spec: |
+
+
+- name: PROPOSER_REWARD_QUOTIENT
+ sources: []
+ spec: |
+
+
+- name: SHUFFLE_ROUND_COUNT
+ sources: []
+ spec: |
+
+
+- name: SLOTS_PER_EPOCH
+ sources: []
+ spec: |
+
+
+- name: SLOTS_PER_HISTORICAL_ROOT
+ sources: []
+ spec: |
+
+
+- name: SYNC_COMMITTEE_SIZE
+ sources: []
+ spec: |
+
+
+- name: TARGET_COMMITTEE_SIZE
+ sources: []
+ spec: |
+
+
+- name: UPDATE_TIMEOUT
+ sources: []
+ spec: |
+
+
+- name: VALIDATOR_REGISTRY_LIMIT
+ sources: []
+ spec: |
+
+
+- name: WHISTLEBLOWER_REWARD_QUOTIENT
+ sources: []
+ spec: |
+
+
+- name: WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA
+ sources: []
+ spec: |
+