Skip to content

Commit 24cbbe2

Browse files
authored
Merge pull request #3668 from ralexstokes/add-eip-7251-to-electra
Add EIP-7251 to Electra
2 parents 77ec547 + 0252e12 commit 24cbbe2

File tree

55 files changed

+1641
-1934
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1641
-1934
lines changed

.circleci/config.yml

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -168,19 +168,6 @@ jobs:
168168
command: make citest fork=electra
169169
- store_test_results:
170170
path: tests/core/pyspec/test-reports
171-
test-eip7251:
172-
docker:
173-
- image: circleci/python:3.9
174-
working_directory: ~/specs-repo
175-
steps:
176-
- restore_cache:
177-
key: v3-specs-repo-{{ .Branch }}-{{ .Revision }}
178-
- restore_pyspec_cached_venv
179-
- run:
180-
name: Run py-tests
181-
command: make citest fork=eip7251
182-
- store_test_results:
183-
path: tests/core/pyspec/test-reports
184171
test-whisk:
185172
docker:
186173
- image: circleci/python:3.9
@@ -330,9 +317,6 @@ workflows:
330317
- test-electra:
331318
requires:
332319
- install_pyspec_test
333-
- test-eip7251:
334-
requires:
335-
- install_pyspec_test
336320
- test-whisk:
337321
requires:
338322
- install_pyspec_test

.github/workflows/run-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ jobs:
7171
needs: [preclear,lint,codespell,table_of_contents]
7272
strategy:
7373
matrix:
74-
version: ["phase0", "altair", "bellatrix", "capella", "deneb", "electra", "eip7251", "whisk", "eip7594"]
74+
version: ["phase0", "altair", "bellatrix", "capella", "deneb", "electra", "whisk", "eip7594"]
7575
steps:
7676
- name: Checkout this repo
7777
uses: actions/[email protected]

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ tests/core/pyspec/eth2spec/capella/
2323
tests/core/pyspec/eth2spec/deneb/
2424
tests/core/pyspec/eth2spec/electra/
2525
tests/core/pyspec/eth2spec/whisk/
26-
tests/core/pyspec/eth2spec/eip7251/
2726
tests/core/pyspec/eth2spec/eip7594/
2827

2928
# coverage reports

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ MARKDOWN_FILES = $(wildcard $(SPEC_DIR)/*/*.md) \
3535
$(wildcard $(SPEC_DIR)/_features/*/*/*.md) \
3636
$(wildcard $(SSZ_DIR)/*.md)
3737

38-
ALL_EXECUTABLE_SPEC_NAMES = phase0 altair bellatrix capella deneb electra eip7251 whisk
38+
ALL_EXECUTABLE_SPEC_NAMES = phase0 altair bellatrix capella deneb electra whisk
3939
# The parameters for commands. Use `foreach` to avoid listing specs again.
4040
COVERAGE_SCOPE := $(foreach S,$(ALL_EXECUTABLE_SPEC_NAMES), --cov=eth2spec.$S.$(TEST_PRESET_TYPE))
4141
PYLINT_SCOPE := $(foreach S,$(ALL_EXECUTABLE_SPEC_NAMES), ./eth2spec/$S)

configs/mainnet.yaml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,6 @@ DENEB_FORK_EPOCH: 269568 # March 13, 2024, 01:55:35pm UTC
5353
# Electra
5454
ELECTRA_FORK_VERSION: 0x05000000
5555
ELECTRA_FORK_EPOCH: 18446744073709551615
56-
# EIP7251
57-
EIP7251_FORK_VERSION: 0x06000000 # temporary stub
58-
EIP7251_FORK_EPOCH: 18446744073709551615
5956
# WHISK
6057
WHISK_FORK_VERSION: 0x08000000 # temporary stub
6158
WHISK_FORK_EPOCH: 18446744073709551615
@@ -163,6 +160,6 @@ NUMBER_OF_COLUMNS: 128
163160
DATA_COLUMN_SIDECAR_SUBNET_COUNT: 32
164161
MAX_REQUEST_DATA_COLUMN_SIDECARS: 16384
165162

166-
# [New in EIP7251]
167-
MIN_PER_EPOCH_CHURN_LIMIT_EIP7251: 128000000000 # 2**7 * 10**9 (= 128,000,000,000)
163+
# [New in Electra:EIP7251]
164+
MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 128000000000 # 2**7 * 10**9 (= 128,000,000,000)
168165
MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 256000000000 # 2**8 * 10**9 (= 256,000,000,000)

configs/minimal.yaml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,6 @@ DENEB_FORK_EPOCH: 18446744073709551615
5252
# Electra
5353
ELECTRA_FORK_VERSION: 0x05000001
5454
ELECTRA_FORK_EPOCH: 18446744073709551615
55-
# EIP7251
56-
EIP7251_FORK_VERSION: 0x06000001 # temporary stub
57-
EIP7251_FORK_EPOCH: 18446744073709551615
5855
# WHISK
5956
WHISK_FORK_VERSION: 0x08000001
6057
WHISK_FORK_EPOCH: 18446744073709551615
@@ -161,6 +158,6 @@ NUMBER_OF_COLUMNS: 128
161158
DATA_COLUMN_SIDECAR_SUBNET_COUNT: 32
162159
MAX_REQUEST_DATA_COLUMN_SIDECARS: 16384
163160

164-
# [New in EIP7251]
165-
MIN_PER_EPOCH_CHURN_LIMIT_EIP7251: 64000000000 # 2**6 * 10**9 (= 64,000,000,000)
161+
# [New in Electra:EIP7251]
162+
MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 64000000000 # 2**6 * 10**9 (= 64,000,000,000)
166163
MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 128000000000 # 2**7 * 10**9 (= 128,000,000,000)

presets/mainnet/eip7251.yaml

Lines changed: 0 additions & 28 deletions
This file was deleted.

presets/mainnet/electra.yaml

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,40 @@
11
# Mainnet preset - Electra
22

3+
# Gwei values
4+
# ---------------------------------------------------------------
5+
# 2**5 * 10**9 (= 32,000,000,000) Gwei
6+
MIN_ACTIVATION_BALANCE: 32000000000
7+
# 2**11 * 10**9 (= 2,048,000,000,000) Gwei
8+
MAX_EFFECTIVE_BALANCE_ELECTRA: 2048000000000
9+
10+
# State list lengths
11+
# ---------------------------------------------------------------
12+
# `uint64(2**27)` (= 134,217,728)
13+
PENDING_BALANCE_DEPOSITS_LIMIT: 134217728
14+
# `uint64(2**27)` (= 134,217,728)
15+
PENDING_PARTIAL_WITHDRAWALS_LIMIT: 134217728
16+
# `uint64(2**18)` (= 262,144)
17+
PENDING_CONSOLIDATIONS_LIMIT: 262144
18+
19+
# Reward and penalty quotients
20+
# ---------------------------------------------------------------
21+
# `uint64(2**12)` (= 4,096)
22+
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: 4096
23+
# `uint64(2**12)` (= 4,096)
24+
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: 4096
25+
326
# # Max operations per block
427
# ---------------------------------------------------------------
528
# `uint64(2**0)` (= 1)
629
MAX_ATTESTER_SLASHINGS_ELECTRA: 1
7-
# `uint64(2 * 3)` (= 8)
30+
# `uint64(2**3)` (= 8)
831
MAX_ATTESTATIONS_ELECTRA: 8
32+
# `uint64(2**0)` (= 1)
33+
MAX_CONSOLIDATIONS: 1
934

1035
# Execution
1136
# ---------------------------------------------------------------
1237
# 2**13 (= 8192) receipts
1338
MAX_DEPOSIT_RECEIPTS_PER_PAYLOAD: 8192
14-
# 2**4 (= 16) exits
15-
MAX_EXECUTION_LAYER_EXITS: 16
39+
# 2**4 (= 16) withdrawal requests
40+
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: 16

presets/minimal/eip7251.yaml

Lines changed: 0 additions & 30 deletions
This file was deleted.

presets/minimal/electra.yaml

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,40 @@
11
# Minimal preset - Electra
22

3+
# Gwei values
4+
# ---------------------------------------------------------------
5+
# 2**5 * 10**9 (= 32,000,000,000) Gwei
6+
MIN_ACTIVATION_BALANCE: 32000000000
7+
# 2**11 * 10**9 (= 2,048,000,000,000) Gwei
8+
MAX_EFFECTIVE_BALANCE_ELECTRA: 2048000000000
9+
10+
# State list lengths
11+
# ---------------------------------------------------------------
12+
# `uint64(2**27)` (= 134,217,728)
13+
PENDING_BALANCE_DEPOSITS_LIMIT: 134217728
14+
# [customized] `uint64(2**6)` (= 64)
15+
PENDING_PARTIAL_WITHDRAWALS_LIMIT: 64
16+
# [customized] `uint64(2**6)` (= 64)
17+
PENDING_CONSOLIDATIONS_LIMIT: 64
18+
19+
# Reward and penalty quotients
20+
# ---------------------------------------------------------------
21+
# `uint64(2**12)` (= 4,096)
22+
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: 4096
23+
# `uint64(2**12)` (= 4,096)
24+
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: 4096
25+
326
# # Max operations per block
427
# ---------------------------------------------------------------
528
# `uint64(2**0)` (= 1)
629
MAX_ATTESTER_SLASHINGS_ELECTRA: 1
7-
# `uint64(2 * 3)` (= 8)
30+
# `uint64(2**3)` (= 8)
831
MAX_ATTESTATIONS_ELECTRA: 8
32+
# `uint64(2**0)` (= 1)
33+
MAX_CONSOLIDATIONS: 1
934

1035
# Execution
1136
# ---------------------------------------------------------------
1237
# [customized]
1338
MAX_DEPOSIT_RECEIPTS_PER_PAYLOAD: 4
14-
# 2**4 (= 16) exits
15-
MAX_EXECUTION_LAYER_EXITS: 16
39+
# [customized] 2**1 (= 2) withdrawal requests
40+
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: 2

0 commit comments

Comments
 (0)