Constants and parameters from EIP-8282.
Source code in tests/amsterdam/eip8282_builder_execution_requests/spec.py
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 | class Spec:
"""Constants and parameters from EIP-8282."""
BUILDER_DEPOSIT_CONTRACT_ADDRESS = (
0x0000BFF46984E3725691FA540A8C7589300D8282
)
BUILDER_EXIT_CONTRACT_ADDRESS = 0x000064D678505AD48F8CCB093BC65613800E8282
BUILDER_DEPOSIT_REQUEST_TYPE = 0x03
BUILDER_EXIT_REQUEST_TYPE = 0x04
SYSTEM_ADDRESS = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
SYSTEM_CALL_GAS_LIMIT = 30_000_000
# Request-bus parameters.
MAX_DEPOSIT_REQUESTS_PER_BLOCK = 64
TARGET_DEPOSIT_REQUESTS_PER_BLOCK = 8
MAX_EXIT_REQUESTS_PER_BLOCK = 16
TARGET_EXIT_REQUESTS_PER_BLOCK = 2
MIN_REQUEST_FEE = 1
REQUEST_FEE_UPDATE_FRACTION = 17
EXCESS_INHIBITOR = 2**256 - 1
# Storage layout shared by both predeploys (the EIP-7002 request-bus
# pattern): queued records are stored as 32-byte words from the queue
# offset onward. Seeding the excess slot with `EXCESS_INHIBITOR` disables
# the queue; the next system call resets it.
EXCESS_STORAGE_SLOT = 0
COUNT_STORAGE_SLOT = 1
QUEUE_HEAD_STORAGE_SLOT = 2
QUEUE_TAIL_STORAGE_SLOT = 3
QUEUE_STORAGE_OFFSET = 4
# Minimum credited stake for a builder deposit, in wei (1 ETH).
BUILDER_MIN_DEPOSIT = 1_000_000_000_000_000_000
# Calldata input sizes accepted by each predeploy.
DEPOSIT_REQUEST_INPUT_BYTES = 184
EXIT_REQUEST_INPUT_BYTES = 48
|