Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion beacon_chain.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Refer to [./consensus/config/gnosis.yaml](./consensus/config/gnosis.yaml) for th
Note that modified preset values will result in different SSZ data structures, such that a client compiled with the Ethereum mainnet preset can't deserialize a state from the Gnosis Beacon Chain.

```
ETHEREUM_SPEC_COMMIT: v1.5.0-alpha.3
ETHEREUM_SPEC_COMMIT: v1.5.0-alpha.8
```

### Preset diff
Expand All @@ -30,4 +30,5 @@ ETHEREUM_SPEC_COMMIT: v1.5.0-alpha.3
| `ETH1_FOLLOW_DISTANCE` | `2048` | `1024` |
| `MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT` | `8` | `2` | See https://github.com/gnosischain/specs/pull/22 for rationale |
| `MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS` | `4096` | `16384` | Increased to match the expected 2 weeks rollups consider today for Ethereum mainnet. The total disk requirement roughly equivalent to Ethereum mainnet since epochs are 4.8x faster |
| `MAX_BLOBS_PER_BLOCK` | `6` | `2` | See [/network-upgrades/dencun.md#eip-4844](/network-upgrades/dencun.md#eip-4844) for rationale on choosing 1/2 for the Dencun hard fork |

11 changes: 7 additions & 4 deletions consensus/config/gnosis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -137,16 +137,19 @@ MAX_REQUEST_BLOB_SIDECARS: 768
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 16384
# `6`
BLOB_SIDECAR_SUBNET_COUNT: 6
## `uint64(2)`
MAX_BLOBS_PER_BLOCK: 2

# EIP7594
NUMBER_OF_COLUMNS: 128
MAX_CELLS_IN_EXTENDED_MATRIX: 768
DATA_COLUMN_SIDECAR_SUBNET_COUNT: 32
DATA_COLUMN_SIDECAR_SUBNET_COUNT: 128
MAX_REQUEST_DATA_COLUMN_SIDECARS: 16384
SAMPLES_PER_SLOT: 8
CUSTODY_REQUIREMENT: 1
TARGET_NUMBER_OF_PEERS: 70
CUSTODY_REQUIREMENT: 4

# [New in Electra:EIP7251]
MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 128000000000 # 2**7 * 10**9 (= 128,000,000,000)
MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 256000000000 # 2**8 * 10**9 (= 256,000,000,000)

# EIP7732
MAX_REQUEST_PAYLOADS: 128
2 changes: 0 additions & 2 deletions consensus/preset/gnosis/deneb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,5 @@
FIELD_ELEMENTS_PER_BLOB: 4096
# `uint64(2**12)` (= 4096)
MAX_BLOB_COMMITMENTS_PER_BLOCK: 4096
# `uint64(6)`
MAX_BLOBS_PER_BLOCK: 6
# `floorlog2(get_generalized_index(BeaconBlockBody, 'blob_kzg_commitments')) + 1 + ceillog2(MAX_BLOB_COMMITMENTS_PER_BLOCK)` = 4 + 1 + 12 = 17
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: 17
7 changes: 6 additions & 1 deletion consensus/preset/gnosis/electra.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ MAX_EFFECTIVE_BALANCE_ELECTRA: 2048000000000
# State list lengths
# ---------------------------------------------------------------
# `uint64(2**27)` (= 134,217,728)
PENDING_BALANCE_DEPOSITS_LIMIT: 134217728
PENDING_DEPOSITS_LIMIT: 134217728
# `uint64(2**27)` (= 134,217,728)
PENDING_PARTIAL_WITHDRAWALS_LIMIT: 134217728
# `uint64(2**18)` (= 262,144)
Expand Down Expand Up @@ -43,3 +43,8 @@ MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: 16
# ---------------------------------------------------------------
# 2**3 ( = 8) pending withdrawals
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: 8

# Pending deposits processing
# ---------------------------------------------------------------
# 2**4 ( = 4) pending deposits
MAX_PENDING_DEPOSITS_PER_EPOCH: 16
5 changes: 3 additions & 2 deletions scripts/assert_declare_ethereum_vars.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
'EIP6110_FORK_',
'EIP7002_FORK_',
'EIP7594_FORK_',
'EIP7732_FORK_',
'WHISK_FORK_'
]

Expand Down Expand Up @@ -163,9 +164,9 @@ def extract_preset_diff_section(md_content):

print(local_file_path, commit, remote_url_path)
if new_keys:
raise Exception(f"New keys found in GitHub YAML not used in local YAML: {new_keys}")
raise Exception(f"New keys found in GitHub YAML {remote_url_path} not used in local YAML: {new_keys}")
elif missing_keys:
raise Exception(f"Keys in local YAML not found in GitHub YAML: {missing_keys}")
raise Exception(f"Keys in local YAML {local_file_path} not found in GitHub YAML: {missing_keys}")
else:
print("No differences in keys found.")

Expand Down