From 13d6448d116a3e95a47865a48328366a9c943b82 Mon Sep 17 00:00:00 2001 From: NC <17676176+ensi321@users.noreply.github.com> Date: Mon, 16 Dec 2024 13:50:03 -0800 Subject: [PATCH] Init --- packages/config/src/chainConfig/configs/mainnet.ts | 6 +++++- packages/config/src/chainConfig/configs/minimal.ts | 4 ++++ packages/config/src/chainConfig/types.ts | 6 ++++++ packages/params/src/presets/minimal.ts | 4 ++-- .../state-transition/src/block/processExecutionPayload.ts | 6 ++++-- packages/validator/src/util/params.ts | 3 +++ 6 files changed, 24 insertions(+), 5 deletions(-) diff --git a/packages/config/src/chainConfig/configs/mainnet.ts b/packages/config/src/chainConfig/configs/mainnet.ts index a4adc04a175..7b332f94b1a 100644 --- a/packages/config/src/chainConfig/configs/mainnet.ts +++ b/packages/config/src/chainConfig/configs/mainnet.ts @@ -109,6 +109,10 @@ export const chainConfig: ChainConfig = { // Electra // 2**8 * 10**9 (= 256,000,000,000) MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 256000000000, - // 2*7 * 10**9 (= 128,000,000,000) + // 2**7 * 10**9 (= 128,000,000,000) MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 128000000000, + BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: 9, + MAX_BLOBS_PER_BLOCK_ELECTRA: 9, + // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK_ELECTRA + MAX_REQUEST_BLOB_SIDECARS_ELECTRA: 1152, }; diff --git a/packages/config/src/chainConfig/configs/minimal.ts b/packages/config/src/chainConfig/configs/minimal.ts index d16b03e82c2..0902742277e 100644 --- a/packages/config/src/chainConfig/configs/minimal.ts +++ b/packages/config/src/chainConfig/configs/minimal.ts @@ -108,4 +108,8 @@ export const chainConfig: ChainConfig = { MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 128000000000, // 2**6 * 10**9 (= 64,000,000,000) MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 64000000000, + BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: 9, + MAX_BLOBS_PER_BLOCK_ELECTRA: 9, + // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK_ELECTRA + MAX_REQUEST_BLOB_SIDECARS_ELECTRA: 1152, }; diff --git a/packages/config/src/chainConfig/types.ts b/packages/config/src/chainConfig/types.ts index 291dcc8601a..8ca338c89a2 100644 --- a/packages/config/src/chainConfig/types.ts +++ b/packages/config/src/chainConfig/types.ts @@ -75,6 +75,9 @@ export type ChainConfig = { BLOB_SIDECAR_SUBNET_COUNT: number; MAX_BLOBS_PER_BLOCK: number; MAX_REQUEST_BLOB_SIDECARS: number; + BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: number; + MAX_BLOBS_PER_BLOCK_ELECTRA: number; + MAX_REQUEST_BLOB_SIDECARS_ELECTRA: number; }; export const chainConfigTypes: SpecTypes = { @@ -142,6 +145,9 @@ export const chainConfigTypes: SpecTypes = { BLOB_SIDECAR_SUBNET_COUNT: "number", MAX_BLOBS_PER_BLOCK: "number", MAX_REQUEST_BLOB_SIDECARS: "number", + BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: "number", + MAX_BLOBS_PER_BLOCK_ELECTRA: "number", + MAX_REQUEST_BLOB_SIDECARS_ELECTRA: "number", }; /** Allows values in a Spec file */ diff --git a/packages/params/src/presets/minimal.ts b/packages/params/src/presets/minimal.ts index 4c2a56a11d8..4595ee9ee87 100644 --- a/packages/params/src/presets/minimal.ts +++ b/packages/params/src/presets/minimal.ts @@ -115,8 +115,8 @@ export const minimalPreset: BeaconPreset = { // DENEB /////////// FIELD_ELEMENTS_PER_BLOB: 4096, - MAX_BLOB_COMMITMENTS_PER_BLOCK: 16, - KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: 9, + MAX_BLOB_COMMITMENTS_PER_BLOCK: 32, + KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: 10, // ELECTRA MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: 4, diff --git a/packages/state-transition/src/block/processExecutionPayload.ts b/packages/state-transition/src/block/processExecutionPayload.ts index 0ea2fc7a16f..628c5b28831 100644 --- a/packages/state-transition/src/block/processExecutionPayload.ts +++ b/packages/state-transition/src/block/processExecutionPayload.ts @@ -48,9 +48,11 @@ export function processExecutionPayload( } if (fork >= ForkSeq.deneb) { + const maxBlobsPerBlock = + fork >= ForkSeq.electra ? state.config.MAX_BLOBS_PER_BLOCK_ELECTRA : state.config.MAX_BLOBS_PER_BLOCK; const blobKzgCommitmentsLen = (body as deneb.BeaconBlockBody).blobKzgCommitments?.length ?? 0; - if (blobKzgCommitmentsLen > state.config.MAX_BLOBS_PER_BLOCK) { - throw Error(`blobKzgCommitmentsLen exceeds limit=${state.config.MAX_BLOBS_PER_BLOCK}`); + if (blobKzgCommitmentsLen > maxBlobsPerBlock) { + throw Error(`blobKzgCommitmentsLen exceeds limit=${maxBlobsPerBlock}`); } } diff --git a/packages/validator/src/util/params.ts b/packages/validator/src/util/params.ts index 825f60e8c7f..ea19bb3a90c 100644 --- a/packages/validator/src/util/params.ts +++ b/packages/validator/src/util/params.ts @@ -138,6 +138,7 @@ function getSpecCriticalParams(localConfig: ChainConfig): Record