mirror of
https://github.com/status-im/eth2.0-specs.git
synced 2025-01-09 18:25:47 +00:00
93dddd15f2
wip Add `TARGET_NUMBER_OF_PEERS` Add networking spec draft fix simplification Rename `DoYouHave` to `GetCustodyStatus` Add DataLineSidecar design Apply suggestions from code review Co-authored-by: dankrad <mail@dankradfeist.de> Co-authored-by: danny <dannyjryan@gmail.com> Revamp after reviews and discussion Remove `CustodyStatus` minor fix Change`DataColumn` to `List[DataCell, MAX_BLOBS_PER_BLOCK]` Move folder Replace `DataColumnByRootAndIndex` with `DataColumnSidecarByRoot` message. Add extended data description Remove `DataRow` Apply suggestions from @jacobkaufmann code review Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com> Represent matrix in `BLSFieldElement` form Add `assert time >= store.time` to `on_tick` Revert the spec. Only handle it in tests Remove extra tick cleanup leftover Add randomized block cases Specify RPC byRoot blocks-sidecars elegibility fix typo Update specs/phase0/p2p-interface.md Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com> Update specs/deneb/p2p-interface.md Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com> add failed on_block condition rephrase Update specs/phase0/p2p-interface.md Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com> apply suggestion Update specs/deneb/p2p-interface.md Co-authored-by: danny <dannyjryan@gmail.com> Update specs/deneb/p2p-interface.md Co-authored-by: danny <dannyjryan@gmail.com> remove the last consider from on_block to state_transition simplify and add a new rule Update specs/phase0/p2p-interface.md Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com> Update specs/deneb/p2p-interface.md Co-authored-by: Mikhail Kalinin <noblesse.knight@gmail.com> Update specs/deneb/p2p-interface.md Co-authored-by: danny <dannyjryan@gmail.com> remove gossip failure rules Apply suggestions from code review bump version to v1.4.0-beta.5 Move `blob_sidecar_{subnet_id}` to `Blob subnets` section Misc minor fix Add linter support Add column subnet validation. Split `verify_column_sidecar` into two functions Fix `get_data_column_sidecars` by using `compute_samples_and_proofs` Apply suggestions from code review Co-authored-by: danny <dannyjryan@gmail.com> Do not assign row custody Apply suggestions from code review Co-authored-by: danny <dannyjryan@gmail.com> Revamp reconstruction section Use depth as the primary preset for inclusion proof. Fix `get_data_column_sidecars` and add tests for merkle proof Change `SAMPLES_PER_SLOT` to 8 and add tests (requirement TBD) Apply PR feedback from @ppopth and @jtraglia Fix `get_data_column_sidecars` Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com> Apply suggestions from code review Co-authored-by: Pop Chunhapanya <haxx.pop@gmail.com> Apply suggestions from code review Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com> Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com> Fix `get_data_column_sidecars` and `get_custody_lines` Apply suggestions from code review Co-authored-by: Jacob Kaufmann <jacobkaufmann18@gmail.com> Enhance tests fix typo Co-authored-by: fradamt <104826920+fradamt@users.noreply.github.com> Remove `epoch` from `get_custody_lines` fix fix
159 lines
4.6 KiB
YAML
159 lines
4.6 KiB
YAML
# Minimal config
|
|
|
|
# Extends the minimal preset
|
|
PRESET_BASE: 'minimal'
|
|
|
|
# Free-form short name of the network that this configuration applies to - known
|
|
# canonical network names include:
|
|
# * 'mainnet' - there can be only one
|
|
# * 'prater' - testnet
|
|
# Must match the regex: [a-z0-9\-]
|
|
CONFIG_NAME: 'minimal'
|
|
|
|
# Transition
|
|
# ---------------------------------------------------------------
|
|
# 2**256-2**10 for testing minimal network
|
|
TERMINAL_TOTAL_DIFFICULTY: 115792089237316195423570985008687907853269984665640564039457584007913129638912
|
|
# By default, don't use these params
|
|
TERMINAL_BLOCK_HASH: 0x0000000000000000000000000000000000000000000000000000000000000000
|
|
TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: 18446744073709551615
|
|
|
|
|
|
|
|
# Genesis
|
|
# ---------------------------------------------------------------
|
|
# [customized]
|
|
MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: 64
|
|
# Jan 3, 2020
|
|
MIN_GENESIS_TIME: 1578009600
|
|
# Highest byte set to 0x01 to avoid collisions with mainnet versioning
|
|
GENESIS_FORK_VERSION: 0x00000001
|
|
# [customized] Faster to spin up testnets, but does not give validator reasonable warning time for genesis
|
|
GENESIS_DELAY: 300
|
|
|
|
|
|
# Forking
|
|
# ---------------------------------------------------------------
|
|
# Values provided for illustrative purposes.
|
|
# Individual tests/testnets may set different values.
|
|
|
|
# Altair
|
|
ALTAIR_FORK_VERSION: 0x01000001
|
|
ALTAIR_FORK_EPOCH: 18446744073709551615
|
|
# Bellatrix
|
|
BELLATRIX_FORK_VERSION: 0x02000001
|
|
BELLATRIX_FORK_EPOCH: 18446744073709551615
|
|
# Capella
|
|
CAPELLA_FORK_VERSION: 0x03000001
|
|
CAPELLA_FORK_EPOCH: 18446744073709551615
|
|
# DENEB
|
|
DENEB_FORK_VERSION: 0x04000001
|
|
DENEB_FORK_EPOCH: 18446744073709551615
|
|
# EIP6110
|
|
EIP6110_FORK_VERSION: 0x05000001
|
|
EIP6110_FORK_EPOCH: 18446744073709551615
|
|
# EIP7002
|
|
EIP7002_FORK_VERSION: 0x05000001
|
|
EIP7002_FORK_EPOCH: 18446744073709551615
|
|
# WHISK
|
|
WHISK_FORK_VERSION: 0x06000001
|
|
WHISK_FORK_EPOCH: 18446744073709551615
|
|
# EIP7594
|
|
EIP7594_FORK_VERSION: 0x06000001
|
|
EIP7594_FORK_EPOCH: 18446744073709551615
|
|
|
|
|
|
# Time parameters
|
|
# ---------------------------------------------------------------
|
|
# [customized] Faster for testing purposes
|
|
SECONDS_PER_SLOT: 6
|
|
# 14 (estimate from Eth1 mainnet)
|
|
SECONDS_PER_ETH1_BLOCK: 14
|
|
# 2**8 (= 256) epochs
|
|
MIN_VALIDATOR_WITHDRAWABILITY_DELAY: 256
|
|
# [customized] higher frequency of committee turnover and faster time to acceptable voluntary exit
|
|
SHARD_COMMITTEE_PERIOD: 64
|
|
# [customized] process deposits more quickly, but insecure
|
|
ETH1_FOLLOW_DISTANCE: 16
|
|
|
|
|
|
# Validator cycle
|
|
# ---------------------------------------------------------------
|
|
# 2**2 (= 4)
|
|
INACTIVITY_SCORE_BIAS: 4
|
|
# 2**4 (= 16)
|
|
INACTIVITY_SCORE_RECOVERY_RATE: 16
|
|
# 2**4 * 10**9 (= 16,000,000,000) Gwei
|
|
EJECTION_BALANCE: 16000000000
|
|
# [customized] more easily demonstrate the difference between this value and the activation churn limit
|
|
MIN_PER_EPOCH_CHURN_LIMIT: 2
|
|
# [customized] scale queue churn at much lower validator counts for testing
|
|
CHURN_LIMIT_QUOTIENT: 32
|
|
# [New in Deneb:EIP7514] [customized]
|
|
MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: 4
|
|
|
|
|
|
# Fork choice
|
|
# ---------------------------------------------------------------
|
|
# 40%
|
|
PROPOSER_SCORE_BOOST: 40
|
|
# 20%
|
|
REORG_HEAD_WEIGHT_THRESHOLD: 20
|
|
# 160%
|
|
REORG_PARENT_WEIGHT_THRESHOLD: 160
|
|
# `2` epochs
|
|
REORG_MAX_EPOCHS_SINCE_FINALIZATION: 2
|
|
|
|
|
|
# Deposit contract
|
|
# ---------------------------------------------------------------
|
|
# Ethereum Goerli testnet
|
|
DEPOSIT_CHAIN_ID: 5
|
|
DEPOSIT_NETWORK_ID: 5
|
|
# Configured on a per testnet basis
|
|
DEPOSIT_CONTRACT_ADDRESS: 0x1234567890123456789012345678901234567890
|
|
|
|
|
|
# Networking
|
|
# ---------------------------------------------------------------
|
|
# `10 * 2**20` (= 10485760, 10 MiB)
|
|
GOSSIP_MAX_SIZE: 10485760
|
|
# `2**10` (= 1024)
|
|
MAX_REQUEST_BLOCKS: 1024
|
|
# `2**8` (= 256)
|
|
EPOCHS_PER_SUBNET_SUBSCRIPTION: 256
|
|
# [customized] `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 272)
|
|
MIN_EPOCHS_FOR_BLOCK_REQUESTS: 272
|
|
# `10 * 2**20` (=10485760, 10 MiB)
|
|
MAX_CHUNK_SIZE: 10485760
|
|
# 5s
|
|
TTFB_TIMEOUT: 5
|
|
# 10s
|
|
RESP_TIMEOUT: 10
|
|
ATTESTATION_PROPAGATION_SLOT_RANGE: 32
|
|
# 500ms
|
|
MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500
|
|
MESSAGE_DOMAIN_INVALID_SNAPPY: 0x00000000
|
|
MESSAGE_DOMAIN_VALID_SNAPPY: 0x01000000
|
|
# 2 subnets per node
|
|
SUBNETS_PER_NODE: 2
|
|
# 2**8 (= 64)
|
|
ATTESTATION_SUBNET_COUNT: 64
|
|
ATTESTATION_SUBNET_EXTRA_BITS: 0
|
|
# ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS
|
|
ATTESTATION_SUBNET_PREFIX_BITS: 6
|
|
|
|
# Deneb
|
|
# `2**7` (=128)
|
|
MAX_REQUEST_BLOCKS_DENEB: 128
|
|
# MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
|
|
MAX_REQUEST_BLOB_SIDECARS: 768
|
|
# `2**12` (= 4096 epochs, ~18 days)
|
|
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096
|
|
# `6`
|
|
BLOB_SIDECAR_SUBNET_COUNT: 6
|
|
|
|
# Whisk
|
|
WHISK_EPOCHS_PER_SHUFFLING_PHASE: 4
|
|
WHISK_PROPOSER_SELECTION_GAP: 1
|