@@ -30,6 +30,7 @@ pub fn processExecutionPayload(
3030 external_data : BlockExternalData ,
3131) ! void {
3232 const state = cached_state .state ;
33+ const beacon_config = cached_state .config ;
3334 const epoch_cache = cached_state .getEpochCache ();
3435 var partial_payload = PartialPayload {};
3536 switch (body ) {
@@ -72,12 +73,12 @@ pub fn processExecutionPayload(
7273 // def compute_timestamp_at_slot(state: BeaconState, slot: Slot) -> uint64:
7374 // slots_since_genesis = slot - GENESIS_SLOT
7475 // return uint64(state.genesis_time + slots_since_genesis * SECONDS_PER_SLOT)
75- if (partial_payload .timestamp != try state .genesisTime () + try state .slot () * config . mainnet . chain_config . SECONDS_PER_SLOT ) {
76+ if (partial_payload .timestamp != ( try state .genesisTime () + try state .slot () * beacon_config . chain . SECONDS_PER_SLOT ) ) {
7677 return error .InvalidExecutionPayloadTimestamp ;
7778 }
7879
7980 if (state .forkSeq ().gte (.deneb )) {
80- const max_blobs_per_block = config . mainnet . config .getMaxBlobsPerBlock (computeEpochAtSlot (try state .slot ()));
81+ const max_blobs_per_block = beacon_config .getMaxBlobsPerBlock (computeEpochAtSlot (try state .slot ()));
8182 if (body .blobKzgCommitmentsLen () > max_blobs_per_block ) {
8283 return error .BlobKzgCommitmentsExceedsLimit ;
8384 }
@@ -121,7 +122,8 @@ test "process execution payload - sanity" {
121122 defer test_state .deinit ();
122123
123124 var execution_payload : types.electra.ExecutionPayload.Type = types .electra .ExecutionPayload .default_value ;
124- execution_payload .timestamp = try test_state .cached_state .state .genesisTime () + try test_state .cached_state .state .slot () * config .mainnet .chain_config .SECONDS_PER_SLOT ;
125+ const beacon_config = test_state .cached_state .config ;
126+ execution_payload .timestamp = try test_state .cached_state .state .genesisTime () + try test_state .cached_state .state .slot () * beacon_config .chain .SECONDS_PER_SLOT ;
125127 var body : types.electra.BeaconBlockBody.Type = types .electra .BeaconBlockBody .default_value ;
126128 body .execution_payload = execution_payload ;
127129
0 commit comments