@lodestar/beacon-node 1.43.0-dev.5f9285892c → 1.43.0-dev.66d2c102e3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/impl/beacon/blocks/index.js +4 -6
- package/lib/api/impl/beacon/blocks/index.js.map +1 -1
- package/lib/api/impl/beacon/state/utils.d.ts +2 -2
- package/lib/api/impl/beacon/state/utils.d.ts.map +1 -1
- package/lib/api/impl/beacon/state/utils.js.map +1 -1
- package/lib/api/impl/lodestar/index.js +1 -1
- package/lib/api/impl/lodestar/index.js.map +1 -1
- package/lib/api/impl/validator/index.d.ts.map +1 -1
- package/lib/api/impl/validator/index.js +1 -4
- package/lib/api/impl/validator/index.js.map +1 -1
- package/lib/chain/GetBlobsTracker.d.ts +1 -1
- package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
- package/lib/chain/GetBlobsTracker.js +1 -2
- package/lib/chain/GetBlobsTracker.js.map +1 -1
- package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
- package/lib/chain/archiveStore/archiveStore.js.map +1 -1
- package/lib/chain/archiveStore/interface.d.ts +4 -4
- package/lib/chain/archiveStore/interface.d.ts.map +1 -1
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts +4 -4
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +1 -1
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +2 -4
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.d.ts +2 -2
- package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.js +110 -58
- package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
- package/lib/chain/blocks/importBlock.d.ts.map +1 -1
- package/lib/chain/blocks/importBlock.js +28 -33
- package/lib/chain/blocks/importBlock.js.map +1 -1
- package/lib/chain/blocks/importExecutionPayload.d.ts +25 -13
- package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -1
- package/lib/chain/blocks/importExecutionPayload.js +73 -84
- package/lib/chain/blocks/importExecutionPayload.js.map +1 -1
- package/lib/chain/blocks/index.d.ts +5 -3
- package/lib/chain/blocks/index.d.ts.map +1 -1
- package/lib/chain/blocks/index.js +29 -11
- package/lib/chain/blocks/index.js.map +1 -1
- package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts +3 -0
- package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts.map +1 -1
- package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js +20 -0
- package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js.map +1 -1
- package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts +5 -0
- package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts.map +1 -1
- package/lib/chain/blocks/payloadEnvelopeProcessor.js +7 -5
- package/lib/chain/blocks/payloadEnvelopeProcessor.js.map +1 -1
- package/lib/chain/blocks/types.d.ts +15 -21
- package/lib/chain/blocks/types.d.ts.map +1 -1
- package/lib/chain/blocks/utils/chainSegment.d.ts +23 -2
- package/lib/chain/blocks/utils/chainSegment.d.ts.map +1 -1
- package/lib/chain/blocks/utils/chainSegment.js +81 -12
- package/lib/chain/blocks/utils/chainSegment.js.map +1 -1
- package/lib/chain/blocks/verifyBlock.d.ts +3 -2
- package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
- package/lib/chain/blocks/verifyBlock.js +30 -5
- package/lib/chain/blocks/verifyBlock.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
- package/lib/chain/blocks/verifyBlocksSanityChecks.js +15 -4
- package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.d.ts +24 -0
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.d.ts.map +1 -0
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js +76 -0
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js.map +1 -0
- package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts +14 -0
- package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts.map +1 -0
- package/lib/chain/blocks/verifyPayloadsDataAvailability.js +25 -0
- package/lib/chain/blocks/verifyPayloadsDataAvailability.js.map +1 -0
- package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts +1 -1
- package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts.map +1 -1
- package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js +2 -11
- package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js.map +1 -1
- package/lib/chain/chain.d.ts +8 -6
- package/lib/chain/chain.d.ts.map +1 -1
- package/lib/chain/chain.js +33 -36
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/emitter.d.ts +16 -4
- package/lib/chain/emitter.d.ts.map +1 -1
- package/lib/chain/emitter.js +5 -0
- package/lib/chain/emitter.js.map +1 -1
- package/lib/chain/errors/blockError.d.ts +8 -1
- package/lib/chain/errors/blockError.d.ts.map +1 -1
- package/lib/chain/errors/blockError.js +2 -0
- package/lib/chain/errors/blockError.js.map +1 -1
- package/lib/chain/errors/executionPayloadBid.d.ts +5 -0
- package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -1
- package/lib/chain/errors/executionPayloadBid.js +1 -0
- package/lib/chain/errors/executionPayloadBid.js.map +1 -1
- package/lib/chain/errors/executionPayloadEnvelope.d.ts +5 -0
- package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
- package/lib/chain/errors/executionPayloadEnvelope.js +1 -0
- package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
- package/lib/chain/errors/index.d.ts +1 -0
- package/lib/chain/errors/index.d.ts.map +1 -1
- package/lib/chain/errors/index.js +1 -0
- package/lib/chain/errors/index.js.map +1 -1
- package/lib/chain/errors/proposerPreferences.d.ts +33 -0
- package/lib/chain/errors/proposerPreferences.d.ts.map +1 -0
- package/lib/chain/errors/proposerPreferences.js +13 -0
- package/lib/chain/errors/proposerPreferences.js.map +1 -0
- package/lib/chain/forkChoice/index.d.ts.map +1 -1
- package/lib/chain/forkChoice/index.js +11 -19
- package/lib/chain/forkChoice/index.js.map +1 -1
- package/lib/chain/interface.d.ts +7 -5
- package/lib/chain/interface.d.ts.map +1 -1
- package/lib/chain/interface.js.map +1 -1
- package/lib/chain/prepareNextSlot.d.ts.map +1 -1
- package/lib/chain/prepareNextSlot.js +48 -22
- package/lib/chain/prepareNextSlot.js.map +1 -1
- package/lib/chain/produceBlock/computeNewStateRoot.d.ts +3 -9
- package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +1 -1
- package/lib/chain/produceBlock/computeNewStateRoot.js +5 -32
- package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.d.ts +4 -8
- package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.js +55 -24
- package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
- package/lib/chain/regen/errors.d.ts +1 -11
- package/lib/chain/regen/errors.d.ts.map +1 -1
- package/lib/chain/regen/errors.js +0 -2
- package/lib/chain/regen/errors.js.map +1 -1
- package/lib/chain/regen/interface.d.ts +7 -11
- package/lib/chain/regen/interface.d.ts.map +1 -1
- package/lib/chain/regen/interface.js +1 -0
- package/lib/chain/regen/interface.js.map +1 -1
- package/lib/chain/regen/queued.d.ts +6 -10
- package/lib/chain/regen/queued.d.ts.map +1 -1
- package/lib/chain/regen/queued.js +3 -10
- package/lib/chain/regen/queued.js.map +1 -1
- package/lib/chain/regen/regen.d.ts +0 -5
- package/lib/chain/regen/regen.d.ts.map +1 -1
- package/lib/chain/regen/regen.js +0 -8
- package/lib/chain/regen/regen.js.map +1 -1
- package/lib/chain/seenCache/index.d.ts +1 -0
- package/lib/chain/seenCache/index.d.ts.map +1 -1
- package/lib/chain/seenCache/index.js +1 -0
- package/lib/chain/seenCache/index.js.map +1 -1
- package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts +11 -4
- package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts.map +1 -1
- package/lib/chain/seenCache/seenPayloadEnvelopeInput.js +20 -18
- package/lib/chain/seenCache/seenPayloadEnvelopeInput.js.map +1 -1
- package/lib/chain/seenCache/seenProposerPreferences.d.ts +15 -0
- package/lib/chain/seenCache/seenProposerPreferences.d.ts.map +1 -0
- package/lib/chain/seenCache/seenProposerPreferences.js +25 -0
- package/lib/chain/seenCache/seenProposerPreferences.js.map +1 -0
- package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +1 -7
- package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
- package/lib/chain/stateCache/persistentCheckpointsCache.js +4 -9
- package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
- package/lib/chain/stateCache/types.d.ts +0 -6
- package/lib/chain/stateCache/types.d.ts.map +1 -1
- package/lib/chain/stateCache/types.js.map +1 -1
- package/lib/chain/validation/block.d.ts.map +1 -1
- package/lib/chain/validation/block.js +1 -0
- package/lib/chain/validation/block.js.map +1 -1
- package/lib/chain/validation/executionPayloadBid.d.ts.map +1 -1
- package/lib/chain/validation/executionPayloadBid.js +13 -1
- package/lib/chain/validation/executionPayloadBid.js.map +1 -1
- package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -1
- package/lib/chain/validation/executionPayloadEnvelope.js +20 -10
- package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
- package/lib/chain/validation/payloadAttestationMessage.d.ts.map +1 -1
- package/lib/chain/validation/payloadAttestationMessage.js +4 -3
- package/lib/chain/validation/payloadAttestationMessage.js.map +1 -1
- package/lib/chain/validation/proposerPreferences.d.ts +8 -0
- package/lib/chain/validation/proposerPreferences.d.ts.map +1 -0
- package/lib/chain/validation/proposerPreferences.js +69 -0
- package/lib/chain/validation/proposerPreferences.js.map +1 -0
- package/lib/db/repositories/executionPayloadEnvelopeArchive.js +1 -1
- package/lib/db/repositories/executionPayloadEnvelopeArchive.js.map +1 -1
- package/lib/execution/engine/http.d.ts.map +1 -1
- package/lib/execution/engine/http.js +21 -14
- package/lib/execution/engine/http.js.map +1 -1
- package/lib/execution/engine/interface.d.ts +1 -0
- package/lib/execution/engine/interface.d.ts.map +1 -1
- package/lib/execution/engine/mock.d.ts.map +1 -1
- package/lib/execution/engine/mock.js +6 -0
- package/lib/execution/engine/mock.js.map +1 -1
- package/lib/execution/engine/types.d.ts +20 -0
- package/lib/execution/engine/types.d.ts.map +1 -1
- package/lib/execution/engine/types.js +18 -0
- package/lib/execution/engine/types.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +1 -0
- package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
- package/lib/metrics/metrics/lodestar.js +4 -0
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/network/gossip/interface.d.ts +7 -1
- package/lib/network/gossip/interface.d.ts.map +1 -1
- package/lib/network/gossip/interface.js +1 -0
- package/lib/network/gossip/interface.js.map +1 -1
- package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
- package/lib/network/gossip/scoringParameters.js +12 -1
- package/lib/network/gossip/scoringParameters.js.map +1 -1
- package/lib/network/gossip/topic.d.ts +11 -2
- package/lib/network/gossip/topic.d.ts.map +1 -1
- package/lib/network/gossip/topic.js +6 -0
- package/lib/network/gossip/topic.js.map +1 -1
- package/lib/network/network.js +1 -1
- package/lib/network/network.js.map +1 -1
- package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
- package/lib/network/processor/gossipHandlers.js +32 -12
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
- package/lib/network/processor/gossipQueues/index.js +5 -0
- package/lib/network/processor/gossipQueues/index.js.map +1 -1
- package/lib/network/processor/index.d.ts.map +1 -1
- package/lib/network/processor/index.js +1 -0
- package/lib/network/processor/index.js.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js +14 -6
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +1 -1
- package/lib/network/reqresp/handlers/blobSidecarsByRange.js +11 -5
- package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +17 -5
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.d.ts.map +1 -1
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.js +7 -4
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.js.map +1 -1
- package/lib/node/nodejs.d.ts.map +1 -1
- package/lib/node/nodejs.js +4 -2
- package/lib/node/nodejs.js.map +1 -1
- package/lib/node/notifier.js +7 -1
- package/lib/node/notifier.js.map +1 -1
- package/lib/sync/range/batch.d.ts +12 -2
- package/lib/sync/range/batch.d.ts.map +1 -1
- package/lib/sync/range/batch.js +56 -30
- package/lib/sync/range/batch.js.map +1 -1
- package/lib/sync/range/chain.d.ts +6 -2
- package/lib/sync/range/chain.d.ts.map +1 -1
- package/lib/sync/range/chain.js +4 -3
- package/lib/sync/range/chain.js.map +1 -1
- package/lib/sync/range/range.d.ts.map +1 -1
- package/lib/sync/range/range.js +17 -6
- package/lib/sync/range/range.js.map +1 -1
- package/lib/sync/types.d.ts +34 -0
- package/lib/sync/types.d.ts.map +1 -1
- package/lib/sync/types.js +34 -0
- package/lib/sync/types.js.map +1 -1
- package/lib/sync/unknownBlock.d.ts +24 -1
- package/lib/sync/unknownBlock.d.ts.map +1 -1
- package/lib/sync/unknownBlock.js +649 -53
- package/lib/sync/unknownBlock.js.map +1 -1
- package/lib/sync/utils/downloadByRange.d.ts +46 -10
- package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
- package/lib/sync/utils/downloadByRange.js +147 -24
- package/lib/sync/utils/downloadByRange.js.map +1 -1
- package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
- package/lib/sync/utils/downloadByRoot.js +6 -2
- package/lib/sync/utils/downloadByRoot.js.map +1 -1
- package/lib/sync/utils/pendingBlocksTree.d.ts +0 -1
- package/lib/sync/utils/pendingBlocksTree.d.ts.map +1 -1
- package/lib/sync/utils/pendingBlocksTree.js +0 -9
- package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
- package/lib/util/sszBytes.d.ts.map +1 -1
- package/lib/util/sszBytes.js +16 -3
- package/lib/util/sszBytes.js.map +1 -1
- package/package.json +17 -16
- package/src/api/impl/beacon/blocks/index.ts +6 -6
- package/src/api/impl/beacon/state/utils.ts +2 -2
- package/src/api/impl/lodestar/index.ts +1 -1
- package/src/api/impl/validator/index.ts +3 -6
- package/src/chain/GetBlobsTracker.ts +1 -2
- package/src/chain/archiveStore/archiveStore.ts +5 -5
- package/src/chain/archiveStore/interface.ts +4 -4
- package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +6 -8
- package/src/chain/archiveStore/utils/archiveBlocks.ts +153 -94
- package/src/chain/blocks/importBlock.ts +27 -38
- package/src/chain/blocks/importExecutionPayload.ts +93 -104
- package/src/chain/blocks/index.ts +45 -14
- package/src/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.ts +27 -0
- package/src/chain/blocks/payloadEnvelopeProcessor.ts +7 -6
- package/src/chain/blocks/types.ts +15 -26
- package/src/chain/blocks/utils/chainSegment.ts +106 -17
- package/src/chain/blocks/verifyBlock.ts +35 -6
- package/src/chain/blocks/verifyBlocksSanityChecks.ts +16 -7
- package/src/chain/blocks/verifyExecutionPayloadEnvelope.ts +129 -0
- package/src/chain/blocks/verifyPayloadsDataAvailability.ts +38 -0
- package/src/chain/blocks/writePayloadEnvelopeInputToDb.ts +9 -18
- package/src/chain/chain.ts +49 -51
- package/src/chain/emitter.ts +15 -3
- package/src/chain/errors/blockError.ts +4 -1
- package/src/chain/errors/executionPayloadBid.ts +6 -0
- package/src/chain/errors/executionPayloadEnvelope.ts +6 -0
- package/src/chain/errors/index.ts +1 -0
- package/src/chain/errors/proposerPreferences.ts +39 -0
- package/src/chain/forkChoice/index.ts +8 -24
- package/src/chain/interface.ts +11 -3
- package/src/chain/prepareNextSlot.ts +62 -23
- package/src/chain/produceBlock/computeNewStateRoot.ts +6 -43
- package/src/chain/produceBlock/produceBlockBody.ts +73 -27
- package/src/chain/regen/errors.ts +1 -6
- package/src/chain/regen/interface.ts +7 -11
- package/src/chain/regen/queued.ts +6 -14
- package/src/chain/regen/regen.ts +0 -8
- package/src/chain/seenCache/index.ts +1 -0
- package/src/chain/seenCache/seenPayloadEnvelopeInput.ts +22 -20
- package/src/chain/seenCache/seenProposerPreferences.ts +29 -0
- package/src/chain/stateCache/persistentCheckpointsCache.ts +5 -15
- package/src/chain/stateCache/types.ts +0 -3
- package/src/chain/validation/block.ts +1 -0
- package/src/chain/validation/executionPayloadBid.ts +14 -0
- package/src/chain/validation/executionPayloadEnvelope.ts +21 -11
- package/src/chain/validation/payloadAttestationMessage.ts +5 -3
- package/src/chain/validation/proposerPreferences.ts +91 -0
- package/src/db/repositories/executionPayloadEnvelopeArchive.ts +1 -1
- package/src/execution/engine/http.ts +21 -14
- package/src/execution/engine/interface.ts +1 -0
- package/src/execution/engine/mock.ts +8 -1
- package/src/execution/engine/types.ts +41 -0
- package/src/metrics/metrics/lodestar.ts +4 -0
- package/src/network/gossip/interface.ts +6 -0
- package/src/network/gossip/scoringParameters.ts +14 -1
- package/src/network/gossip/topic.ts +6 -0
- package/src/network/network.ts +1 -1
- package/src/network/processor/gossipHandlers.ts +41 -16
- package/src/network/processor/gossipQueues/index.ts +5 -0
- package/src/network/processor/index.ts +1 -0
- package/src/network/reqresp/handlers/beaconBlocksByRange.ts +14 -6
- package/src/network/reqresp/handlers/blobSidecarsByRange.ts +11 -5
- package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +17 -5
- package/src/network/reqresp/handlers/executionPayloadEnvelopesByRange.ts +7 -4
- package/src/node/nodejs.ts +4 -2
- package/src/node/notifier.ts +8 -1
- package/src/sync/range/batch.ts +90 -35
- package/src/sync/range/chain.ts +13 -5
- package/src/sync/range/range.ts +18 -6
- package/src/sync/types.ts +72 -0
- package/src/sync/unknownBlock.ts +810 -57
- package/src/sync/utils/downloadByRange.ts +256 -39
- package/src/sync/utils/downloadByRoot.ts +12 -2
- package/src/sync/utils/pendingBlocksTree.ts +0 -15
- package/src/util/sszBytes.ts +21 -3
package/lib/chain/chain.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { UpdateHeadOpt } from "@lodestar/fork-choice";
|
|
3
|
-
import {
|
|
4
|
-
import { computeEndSlotAtEpoch, computeEpochAtSlot, computeStartSlotAtEpoch, getEffectiveBalancesFromStateBytes, isStatePostAltair, isStatePostElectra,
|
|
3
|
+
import { EFFECTIVE_BALANCE_INCREMENT, GENESIS_SLOT, SLOTS_PER_EPOCH, isForkPostGloas, } from "@lodestar/params";
|
|
4
|
+
import { computeEndSlotAtEpoch, computeEpochAtSlot, computeStartSlotAtEpoch, getEffectiveBalancesFromStateBytes, isStatePostAltair, isStatePostElectra, } from "@lodestar/state-transition";
|
|
5
5
|
import { isBlindedBeaconBlock, ssz, sszTypesFor, } from "@lodestar/types";
|
|
6
6
|
import { fromHex, gweiToWei, isErrorAborted, pruneSetToMax, sleep, toRootHex } from "@lodestar/utils";
|
|
7
7
|
import { GENESIS_EPOCH, ZERO_HASH } from "../constants/index.js";
|
|
@@ -34,12 +34,12 @@ import { FindHeadFnName } from "./interface.js";
|
|
|
34
34
|
import { LightClientServer } from "./lightClient/index.js";
|
|
35
35
|
import { AggregatedAttestationPool, AttestationPool, ExecutionPayloadBidPool, OpPool, PayloadAttestationPool, SyncCommitteeMessagePool, SyncContributionAndProofPool, } from "./opPools/index.js";
|
|
36
36
|
import { PrepareNextSlotScheduler } from "./prepareNextSlot.js";
|
|
37
|
-
import { computeNewStateRoot
|
|
37
|
+
import { computeNewStateRoot } from "./produceBlock/computeNewStateRoot.js";
|
|
38
38
|
import { BlockType } from "./produceBlock/index.js";
|
|
39
39
|
import { produceBlockBody, produceCommonBlockBody } from "./produceBlock/produceBlockBody.js";
|
|
40
40
|
import { QueuedStateRegenerator, RegenCaller } from "./regen/index.js";
|
|
41
41
|
import { ReprocessController } from "./reprocess.js";
|
|
42
|
-
import { SeenAggregators, SeenAttesters, SeenBlockProposers, SeenContributionAndProof, SeenExecutionPayloadBids, SeenPayloadAttesters, SeenPayloadEnvelopeInput, SeenSyncCommitteeMessages, } from "./seenCache/index.js";
|
|
42
|
+
import { SeenAggregators, SeenAttesters, SeenBlockProposers, SeenContributionAndProof, SeenExecutionPayloadBids, SeenPayloadAttesters, SeenPayloadEnvelopeInput, SeenProposerPreferences, SeenSyncCommitteeMessages, } from "./seenCache/index.js";
|
|
43
43
|
import { SeenAggregatedAttestations } from "./seenCache/seenAggregateAndProof.js";
|
|
44
44
|
import { SeenAttestationDatas } from "./seenCache/seenAttestationData.js";
|
|
45
45
|
import { SeenBlockAttesters } from "./seenCache/seenBlockAttesters.js";
|
|
@@ -48,7 +48,7 @@ import { ShufflingCache } from "./shufflingCache.js";
|
|
|
48
48
|
import { DbCPStateDatastore, checkpointToDatastoreKey } from "./stateCache/datastore/db.js";
|
|
49
49
|
import { FileCPStateDatastore } from "./stateCache/datastore/file.js";
|
|
50
50
|
import { FIFOBlockStateCache } from "./stateCache/fifoBlockStateCache.js";
|
|
51
|
-
import { PersistentCheckpointStateCache
|
|
51
|
+
import { PersistentCheckpointStateCache } from "./stateCache/persistentCheckpointsCache.js";
|
|
52
52
|
/**
|
|
53
53
|
* The maximum number of cached produced results to keep in memory.
|
|
54
54
|
*
|
|
@@ -107,6 +107,7 @@ export class BeaconChain {
|
|
|
107
107
|
seenPayloadAttesters = new SeenPayloadAttesters();
|
|
108
108
|
seenAggregatedAttestations;
|
|
109
109
|
seenExecutionPayloadBids = new SeenExecutionPayloadBids();
|
|
110
|
+
seenProposerPreferences = new SeenProposerPreferences();
|
|
110
111
|
seenBlockProposers = new SeenBlockProposers();
|
|
111
112
|
seenSyncCommitteeMessages = new SeenSyncCommitteeMessages();
|
|
112
113
|
seenContributionAndProof;
|
|
@@ -464,8 +465,8 @@ export class BeaconChain {
|
|
|
464
465
|
}
|
|
465
466
|
getStateByCheckpoint(checkpoint) {
|
|
466
467
|
// finalized or justified checkpoint states maynot be available with PersistentCheckpointStateCache, use getCheckpointStateOrBytes() api to get Uint8Array
|
|
467
|
-
const
|
|
468
|
-
const cachedStateCtx = this.regen.getCheckpointStateSync(
|
|
468
|
+
const checkpointHex = { epoch: checkpoint.epoch, rootHex: checkpoint.rootHex };
|
|
469
|
+
const cachedStateCtx = this.regen.getCheckpointStateSync(checkpointHex);
|
|
469
470
|
if (cachedStateCtx) {
|
|
470
471
|
const block = this.forkChoice.getBlockDefaultStatus(ssz.phase0.BeaconBlockHeader.hashTreeRoot(cachedStateCtx.latestBlockHeader));
|
|
471
472
|
const finalizedEpoch = this.forkChoice.getFinalizedCheckpoint().epoch;
|
|
@@ -478,8 +479,8 @@ export class BeaconChain {
|
|
|
478
479
|
return null;
|
|
479
480
|
}
|
|
480
481
|
async getStateOrBytesByCheckpoint(checkpoint) {
|
|
481
|
-
const
|
|
482
|
-
const cachedStateCtx = await this.regen.getCheckpointStateOrBytes(
|
|
482
|
+
const checkpointHex = { epoch: checkpoint.epoch, rootHex: checkpoint.rootHex };
|
|
483
|
+
const cachedStateCtx = await this.regen.getCheckpointStateOrBytes(checkpointHex);
|
|
483
484
|
if (cachedStateCtx) {
|
|
484
485
|
const block = this.forkChoice.getBlockDefaultStatus(checkpoint.root);
|
|
485
486
|
const finalizedEpoch = this.forkChoice.getFinalizedCheckpoint().epoch;
|
|
@@ -635,6 +636,17 @@ export class BeaconChain {
|
|
|
635
636
|
(await this.db.executionPayloadEnvelopeArchive.get(blockSlot)) ??
|
|
636
637
|
null);
|
|
637
638
|
}
|
|
639
|
+
async getParentExecutionRequests(parentBlockSlot, parentBlockRootHex) {
|
|
640
|
+
// at the fork boundary, parent is pre-gloas
|
|
641
|
+
if (!isForkPostGloas(this.config.getForkName(parentBlockSlot))) {
|
|
642
|
+
return ssz.electra.ExecutionRequests.defaultValue();
|
|
643
|
+
}
|
|
644
|
+
const envelope = await this.getExecutionPayloadEnvelope(parentBlockSlot, parentBlockRootHex);
|
|
645
|
+
if (envelope === null) {
|
|
646
|
+
throw Error(`Parent execution payload envelope not found slot=${parentBlockSlot}, root=${parentBlockRootHex}`);
|
|
647
|
+
}
|
|
648
|
+
return envelope.message.executionRequests;
|
|
649
|
+
}
|
|
638
650
|
async getDataColumnSidecars(blockSlot, blockRootHex) {
|
|
639
651
|
const fork = this.config.getForkName(blockSlot);
|
|
640
652
|
if (isForkPostGloas(fork)) {
|
|
@@ -752,32 +764,16 @@ export class BeaconChain {
|
|
|
752
764
|
stateRoot: ZERO_HASH,
|
|
753
765
|
body,
|
|
754
766
|
};
|
|
755
|
-
const { newStateRoot, proposerReward
|
|
767
|
+
const { newStateRoot, proposerReward } = computeNewStateRoot(this.metrics, state, block);
|
|
756
768
|
block.stateRoot = newStateRoot;
|
|
757
769
|
const blockRoot = produceResult.type === BlockType.Full
|
|
758
770
|
? this.config.getForkTypes(slot).BeaconBlock.hashTreeRoot(block)
|
|
759
771
|
: this.config.getPostBellatrixForkTypes(slot).BlindedBeaconBlock.hashTreeRoot(block);
|
|
760
772
|
const blockRootHex = toRootHex(blockRoot);
|
|
761
773
|
const fork = this.config.getForkName(slot);
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
throw Error(`Unexpected block type=${produceResult.type} for post-gloas fork=${fork}`);
|
|
766
|
-
}
|
|
767
|
-
const gloasResult = produceResult;
|
|
768
|
-
const envelope = {
|
|
769
|
-
payload: gloasResult.executionPayload,
|
|
770
|
-
executionRequests: gloasResult.executionRequests,
|
|
771
|
-
builderIndex: BUILDER_INDEX_SELF_BUILD,
|
|
772
|
-
beaconBlockRoot: blockRoot,
|
|
773
|
-
slot,
|
|
774
|
-
stateRoot: ZERO_HASH,
|
|
775
|
-
};
|
|
776
|
-
if (!isStatePostGloas(postBlockState)) {
|
|
777
|
-
throw Error(`Expected gloas+ post-state for execution payload envelope, got fork=${postBlockState.forkName}`);
|
|
778
|
-
}
|
|
779
|
-
const payloadEnvelopeStateRoot = computePayloadEnvelopeStateRoot(this.metrics, postBlockState, envelope);
|
|
780
|
-
gloasResult.payloadEnvelopeStateRoot = payloadEnvelopeStateRoot;
|
|
774
|
+
// TODO GLOAS: we should retire BlockType post-gloas, may need a new enum for self vs non-self built
|
|
775
|
+
if (isForkPostGloas(fork) && produceResult.type !== BlockType.Full) {
|
|
776
|
+
throw Error(`Unexpected block type=${produceResult.type} for post-gloas fork=${fork}`);
|
|
781
777
|
}
|
|
782
778
|
// Track the produced block for consensus broadcast validations, later validation, etc.
|
|
783
779
|
this.blockProductionCache.set(blockRootHex, produceResult);
|
|
@@ -785,10 +781,10 @@ export class BeaconChain {
|
|
|
785
781
|
return { block, executionPayloadValue, consensusBlockValue: gweiToWei(proposerReward), shouldOverrideBuilder };
|
|
786
782
|
}
|
|
787
783
|
async processBlock(block, opts) {
|
|
788
|
-
return this.blockProcessor.processBlocksJob([block], opts);
|
|
784
|
+
return this.blockProcessor.processBlocksJob([block], null, opts);
|
|
789
785
|
}
|
|
790
|
-
async processChainSegment(blocks, opts) {
|
|
791
|
-
|
|
786
|
+
async processChainSegment(blocks, payloadEnvelopes, opts) {
|
|
787
|
+
await this.blockProcessor.processBlocksJob(blocks, payloadEnvelopes, opts);
|
|
792
788
|
}
|
|
793
789
|
async processExecutionPayload(payloadInput, opts) {
|
|
794
790
|
return this.payloadEnvelopeProcessor.processPayloadEnvelopeJob(payloadInput, opts);
|
|
@@ -979,8 +975,8 @@ export class BeaconChain {
|
|
|
979
975
|
* @param blockState state that declares justified checkpoint `checkpoint`
|
|
980
976
|
*/
|
|
981
977
|
closestJustifiedBalancesStateToCheckpoint(checkpoint, blockState) {
|
|
982
|
-
const
|
|
983
|
-
const state = this.regen.getCheckpointStateSync(
|
|
978
|
+
const checkpointHex = { epoch: checkpoint.epoch, rootHex: checkpoint.rootHex };
|
|
979
|
+
const state = this.regen.getCheckpointStateSync(checkpointHex);
|
|
984
980
|
if (state) {
|
|
985
981
|
return { state, stateId: "checkpoint_state", shouldWarn: false };
|
|
986
982
|
}
|
|
@@ -989,7 +985,7 @@ export class BeaconChain {
|
|
|
989
985
|
return { state: blockState, stateId: "block_state_same_epoch", shouldWarn: true };
|
|
990
986
|
}
|
|
991
987
|
// Find a state in the same branch of checkpoint at same epoch. Balances should exactly the same
|
|
992
|
-
for (const descendantBlock of this.forkChoice.
|
|
988
|
+
for (const descendantBlock of this.forkChoice.forwardIterateDescendantsDefaultStatus(checkpoint.rootHex)) {
|
|
993
989
|
if (computeEpochAtSlot(descendantBlock.slot) === checkpoint.epoch) {
|
|
994
990
|
const descendantBlockState = this.regen.getStateSync(descendantBlock.stateRoot);
|
|
995
991
|
if (descendantBlockState) {
|
|
@@ -1003,7 +999,7 @@ export class BeaconChain {
|
|
|
1003
999
|
}
|
|
1004
1000
|
// Find a state in the same branch of checkpoint at a latter epoch. Balances are not the same, but should be close
|
|
1005
1001
|
// Note: must call .forwardIterateDescendants() again since nodes are not sorted
|
|
1006
|
-
for (const descendantBlock of this.forkChoice.
|
|
1002
|
+
for (const descendantBlock of this.forkChoice.forwardIterateDescendantsDefaultStatus(checkpoint.rootHex)) {
|
|
1007
1003
|
if (computeEpochAtSlot(descendantBlock.slot) > checkpoint.epoch) {
|
|
1008
1004
|
const descendantBlockState = this.regen.getStateSync(descendantBlock.stateRoot);
|
|
1009
1005
|
if (descendantBlockState) {
|
|
@@ -1061,6 +1057,7 @@ export class BeaconChain {
|
|
|
1061
1057
|
this.payloadAttestationPool.prune(slot);
|
|
1062
1058
|
this.executionPayloadBidPool.prune(slot);
|
|
1063
1059
|
this.seenExecutionPayloadBids.prune(slot);
|
|
1060
|
+
this.seenProposerPreferences.prune(slot);
|
|
1064
1061
|
this.seenAttestationDatas.onSlot(slot);
|
|
1065
1062
|
this.reprocessController.onSlot(slot);
|
|
1066
1063
|
// Prune old cached block production artifacts, those are only useful on their slot
|
package/lib/chain/chain.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/chain/chain.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/chain/chain.ts"],"names":[],"mappings":"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"}
|
package/lib/chain/emitter.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { EventEmitter } from "node:events";
|
|
2
2
|
import { StrictEventEmitter } from "strict-event-emitter-types";
|
|
3
3
|
import { routes } from "@lodestar/api";
|
|
4
|
-
import {
|
|
4
|
+
import { CheckpointWithHex } from "@lodestar/fork-choice";
|
|
5
5
|
import { IBeaconStateView } from "@lodestar/state-transition";
|
|
6
6
|
import { DataColumnSidecar, RootHex, deneb, phase0 } from "@lodestar/types";
|
|
7
7
|
import { SignedExecutionPayloadEnvelope } from "@lodestar/types/gloas";
|
|
8
8
|
import { PeerIdStr } from "../util/peerId.js";
|
|
9
9
|
import { BlockInputSource, IBlockInput } from "./blocks/blockInput/types.js";
|
|
10
|
+
import { PayloadEnvelopeInput } from "./blocks/payloadEnvelopeInput/payloadEnvelopeInput.js";
|
|
10
11
|
/**
|
|
11
12
|
* Important chain events that occur during normal chain operation.
|
|
12
13
|
*
|
|
@@ -74,7 +75,12 @@ export declare enum ChainEvent {
|
|
|
74
75
|
* Trigger BlockInputSync for blocks that are partially received via gossip but are not complete by time the
|
|
75
76
|
* cut-off window passes for waiting on gossip
|
|
76
77
|
*/
|
|
77
|
-
incompleteBlockInput = "incompleteBlockInput"
|
|
78
|
+
incompleteBlockInput = "incompleteBlockInput",
|
|
79
|
+
/**
|
|
80
|
+
* Post-gloas: trigger BlockInputSync for payload envelopes whose envelope and/or sampled columns are partially
|
|
81
|
+
* received via gossip but are not complete by time the cut-off window passes for waiting on gossip
|
|
82
|
+
*/
|
|
83
|
+
incompletePayloadEnvelope = "incompletePayloadEnvelope"
|
|
78
84
|
}
|
|
79
85
|
export type HeadEventData = routes.events.EventData[routes.events.EventType.head];
|
|
80
86
|
export type ReorgEventData = routes.events.EventData[routes.events.EventType.chainReorg];
|
|
@@ -102,6 +108,11 @@ export type ChainEventData = {
|
|
|
102
108
|
peer: PeerIdStr;
|
|
103
109
|
source: BlockInputSource;
|
|
104
110
|
};
|
|
111
|
+
[ChainEvent.incompletePayloadEnvelope]: {
|
|
112
|
+
payloadInput: PayloadEnvelopeInput;
|
|
113
|
+
peer: PeerIdStr;
|
|
114
|
+
source: BlockInputSource;
|
|
115
|
+
};
|
|
105
116
|
[ChainEvent.unknownEnvelopeBlockRoot]: {
|
|
106
117
|
rootHex: RootHex;
|
|
107
118
|
peer?: PeerIdStr;
|
|
@@ -110,8 +121,8 @@ export type ChainEventData = {
|
|
|
110
121
|
};
|
|
111
122
|
export type IChainEvents = ApiEvents & {
|
|
112
123
|
[ChainEvent.checkpoint]: (checkpoint: phase0.Checkpoint, state: IBeaconStateView) => void;
|
|
113
|
-
[ChainEvent.forkChoiceJustified]: (checkpoint:
|
|
114
|
-
[ChainEvent.forkChoiceFinalized]: (checkpoint:
|
|
124
|
+
[ChainEvent.forkChoiceJustified]: (checkpoint: CheckpointWithHex) => void;
|
|
125
|
+
[ChainEvent.forkChoiceFinalized]: (checkpoint: CheckpointWithHex) => void;
|
|
115
126
|
[ChainEvent.updateTargetCustodyGroupCount]: (targetGroupCount: number) => void;
|
|
116
127
|
[ChainEvent.publishDataColumns]: (sidecars: DataColumnSidecar[]) => void;
|
|
117
128
|
[ChainEvent.publishBlobSidecars]: (sidecars: deneb.BlobSidecar[]) => void;
|
|
@@ -120,6 +131,7 @@ export type IChainEvents = ApiEvents & {
|
|
|
120
131
|
[ChainEvent.envelopeUnknownBlock]: (data: ChainEventData[ChainEvent.envelopeUnknownBlock]) => void;
|
|
121
132
|
[ChainEvent.unknownBlockRoot]: (data: ChainEventData[ChainEvent.unknownBlockRoot]) => void;
|
|
122
133
|
[ChainEvent.incompleteBlockInput]: (data: ChainEventData[ChainEvent.incompleteBlockInput]) => void;
|
|
134
|
+
[ChainEvent.incompletePayloadEnvelope]: (data: ChainEventData[ChainEvent.incompletePayloadEnvelope]) => void;
|
|
123
135
|
[ChainEvent.unknownEnvelopeBlockRoot]: (data: ChainEventData[ChainEvent.unknownEnvelopeBlockRoot]) => void;
|
|
124
136
|
};
|
|
125
137
|
declare const ChainEventEmitter_base: new () => StrictEventEmitter<EventEmitter<[never]>, IChainEvents>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"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"}
|
package/lib/chain/emitter.js
CHANGED
|
@@ -69,6 +69,11 @@ var ChainEvent;
|
|
|
69
69
|
* cut-off window passes for waiting on gossip
|
|
70
70
|
*/
|
|
71
71
|
ChainEvent["incompleteBlockInput"] = "incompleteBlockInput";
|
|
72
|
+
/**
|
|
73
|
+
* Post-gloas: trigger BlockInputSync for payload envelopes whose envelope and/or sampled columns are partially
|
|
74
|
+
* received via gossip but are not complete by time the cut-off window passes for waiting on gossip
|
|
75
|
+
*/
|
|
76
|
+
ChainEvent["incompletePayloadEnvelope"] = "incompletePayloadEnvelope";
|
|
72
77
|
})(ChainEvent || (ChainEvent = {}));
|
|
73
78
|
/**
|
|
74
79
|
* Emits important chain events that occur during normal chain operation.
|
package/lib/chain/emitter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;SAmB7B,UAAU;AARtB;;;;;;;GAOG;AACH,IAAY,UAiEX;AAjED,WAAY,UAAU;IACpB;;;;;OAKG;IACH,uCAAyB,CAAA;IACzB;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;OAEG;IACH,6EAA+D,CAAA;IAC/D;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;;OAGG;IACH,yDAA2C,CAAA;IAC3C;;OAEG;IACH,2CAA6B,CAAA;IAC7B;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;OAEG;IACH,2DAA6C,CAAA;IAC7C;;OAEG;IACH,mDAAqC,CAAA;IACrC;;OAEG;IACH,mEAAqD,CAAA;IACrD;;;OAGG;IACH,2DAA6C,CAAA;IAC7C;;;OAGG;IACH,qEAAuD,CAAA;AAAC,CAC1D,EAjEY,UAAU,KAAV,UAAU,QAiErB;AAiDD;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAkB,SAAS,YAAyE;CAAG"}
|
|
@@ -70,7 +70,9 @@ export declare enum BlockErrorCode {
|
|
|
70
70
|
/** The parent block's execution payload has been verified as invalid */
|
|
71
71
|
PARENT_EXECUTION_INVALID = "BLOCK_ERROR_PARENT_EXECUTION_INVALID",
|
|
72
72
|
/** The block's parent execution payload (defined by bid.parent_block_hash) has not been seen */
|
|
73
|
-
PARENT_PAYLOAD_UNKNOWN = "BLOCK_ERROR_PARENT_PAYLOAD_UNKNOWN"
|
|
73
|
+
PARENT_PAYLOAD_UNKNOWN = "BLOCK_ERROR_PARENT_PAYLOAD_UNKNOWN",
|
|
74
|
+
/** An execution payload envelope in the chain segment references a block root that does not match its slot's block */
|
|
75
|
+
ENVELOPE_BLOCK_ROOT_MISMATCH = "BLOCK_ERROR_ENVELOPE_BLOCK_ROOT_MISMATCH"
|
|
74
76
|
}
|
|
75
77
|
type ExecutionErrorStatus = Exclude<ExecutionPayloadStatus, ExecutionPayloadStatus.VALID | ExecutionPayloadStatus.ACCEPTED | ExecutionPayloadStatus.SYNCING>;
|
|
76
78
|
export type BlockErrorType = {
|
|
@@ -132,6 +134,10 @@ export type BlockErrorType = {
|
|
|
132
134
|
code: BlockErrorCode.NON_LINEAR_PARENT_ROOTS;
|
|
133
135
|
} | {
|
|
134
136
|
code: BlockErrorCode.NON_LINEAR_SLOTS;
|
|
137
|
+
} | {
|
|
138
|
+
code: BlockErrorCode.ENVELOPE_BLOCK_ROOT_MISMATCH;
|
|
139
|
+
envelopeBlockRoot: RootHex;
|
|
140
|
+
blockRoot: RootHex;
|
|
135
141
|
} | {
|
|
136
142
|
code: BlockErrorCode.PER_BLOCK_PROCESSING_ERROR;
|
|
137
143
|
error: Error;
|
|
@@ -176,6 +182,7 @@ export type BlockErrorType = {
|
|
|
176
182
|
parentRoot: RootHex;
|
|
177
183
|
} | {
|
|
178
184
|
code: BlockErrorCode.PARENT_PAYLOAD_UNKNOWN;
|
|
185
|
+
parentRoot: RootHex;
|
|
179
186
|
parentBlockHash: RootHex;
|
|
180
187
|
};
|
|
181
188
|
export declare class BlockGossipError extends GossipActionError<BlockErrorType> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockError.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/blockError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAC,aAAa,EAAY,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAC,sBAAsB,EAAC,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,cAAc;IACxB,qCAAqC;IACrC,gBAAgB,iCAAiC;IACjD,oCAAoC;IACpC,cAAc,+BAA+B;IAC7C,uDAAuD;IACvD,WAAW,4BAA4B;IACvC,+DAA+D;IAC/D,mBAAmB,oCAAoC;IACvD,yEAAyE;IACzE,aAAa,8BAA8B;IAC3C,gDAAgD;IAChD,2BAA2B,4CAA4C;IACvE,oDAAoD;IACpD,aAAa,8BAA8B;IAC3C,oEAAoE;IACpE,eAAe,gCAAgC;IAC/C,4DAA4D;IAC5D,wBAAwB,yCAAyC;IACjE,kGAAkG;IAClG,kBAAkB,mCAAmC;IACrD,yCAAyC;IACzC,0BAA0B,2CAA2C;IACrE,+CAA+C;IAC/C,gBAAgB,iCAAiC;IACjD,sEAAsE;IACtE,iBAAiB,kCAAkC;IACnD,mDAAmD;IACnD,kBAAkB,mCAAmC;IACrD,wEAAwE;IACxE,wBAAwB,yCAAyC;IACjE,gEAAgE;IAChE,qBAAqB,sCAAsC;IAC3D,gHAAgH;IAChH,uBAAuB,wCAAwC;IAC/D,iFAAiF;IACjF,gBAAgB,iCAAiC;IACjD,2FAA2F;IAC3F,0BAA0B,2CAA2C;IACrE,qFAAqF;IACrF,kBAAkB,mCAAmC;IACrD,6DAA6D;IAC7D,eAAe,gCAAgC;IAC/C,yDAAyD;IACzD,iBAAiB,kCAAkC;IAEnD,2DAA2D;IAC3D,mBAAmB,oCAAoC;IACvD,2DAA2D;IAC3D,iBAAiB,kCAAkC;IACnD,gEAAgE;IAChE,gBAAgB,iCAAiC;IACjD,6FAA6F;IAC7F,oBAAoB,qCAAqC;IACzD,+GAA+G;IAC/G,sBAAsB,gCAAgC;IACtD;gCAC4B;IAC5B,sBAAsB,2BAA2B;IACjD,gCAAgC;IAChC,gBAAgB,iCAAiC;IACjD,8CAA8C;IAC9C,wBAAwB,yCAAyC;IACjE,6DAA6D;IAC7D,wBAAwB,yCAAyC;IACjE,wEAAwE;IACxE,wBAAwB,yCAAyC;IACjE,gGAAgG;IAChG,sBAAsB,uCAAuC;
|
|
1
|
+
{"version":3,"file":"blockError.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/blockError.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,8 @@ var BlockErrorCode;
|
|
|
72
72
|
BlockErrorCode["PARENT_EXECUTION_INVALID"] = "BLOCK_ERROR_PARENT_EXECUTION_INVALID";
|
|
73
73
|
/** The block's parent execution payload (defined by bid.parent_block_hash) has not been seen */
|
|
74
74
|
BlockErrorCode["PARENT_PAYLOAD_UNKNOWN"] = "BLOCK_ERROR_PARENT_PAYLOAD_UNKNOWN";
|
|
75
|
+
/** An execution payload envelope in the chain segment references a block root that does not match its slot's block */
|
|
76
|
+
BlockErrorCode["ENVELOPE_BLOCK_ROOT_MISMATCH"] = "BLOCK_ERROR_ENVELOPE_BLOCK_ROOT_MISMATCH";
|
|
75
77
|
})(BlockErrorCode || (BlockErrorCode = {}));
|
|
76
78
|
export class BlockGossipError extends GossipActionError {
|
|
77
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockError.js","sourceRoot":"","sources":["../../../src/chain/errors/blockError.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;SAE5C,cAAc;AAA1B,IAAY,
|
|
1
|
+
{"version":3,"file":"blockError.js","sourceRoot":"","sources":["../../../src/chain/errors/blockError.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export declare enum ExecutionPayloadBidErrorCode {
|
|
|
6
6
|
BID_ALREADY_KNOWN = "EXECUTION_PAYLOAD_BID_ERROR_BID_ALREADY_KNOWN",
|
|
7
7
|
BID_TOO_LOW = "EXECUTION_PAYLOAD_BID_ERROR_BID_TOO_LOW",
|
|
8
8
|
BID_TOO_HIGH = "EXECUTION_PAYLOAD_BID_ERROR_BID_TOO_HIGH",
|
|
9
|
+
TOO_MANY_KZG_COMMITMENTS = "EXECUTION_PAYLOAD_BID_ERROR_TOO_MANY_KZG_COMMITMENTS",
|
|
9
10
|
UNKNOWN_BLOCK_ROOT = "EXECUTION_PAYLOAD_BID_ERROR_UNKNOWN_BLOCK_ROOT",
|
|
10
11
|
INVALID_SLOT = "EXECUTION_PAYLOAD_BID_ERROR_INVALID_SLOT",
|
|
11
12
|
INVALID_SIGNATURE = "EXECUTION_PAYLOAD_BID_ERROR_INVALID_SIGNATURE"
|
|
@@ -31,6 +32,10 @@ export type ExecutionPayloadBidErrorType = {
|
|
|
31
32
|
code: ExecutionPayloadBidErrorCode.BID_TOO_HIGH;
|
|
32
33
|
bidValue: number;
|
|
33
34
|
builderBalance: number;
|
|
35
|
+
} | {
|
|
36
|
+
code: ExecutionPayloadBidErrorCode.TOO_MANY_KZG_COMMITMENTS;
|
|
37
|
+
blobKzgCommitmentsLen: number;
|
|
38
|
+
commitmentLimit: number;
|
|
34
39
|
} | {
|
|
35
40
|
code: ExecutionPayloadBidErrorCode.UNKNOWN_BLOCK_ROOT;
|
|
36
41
|
parentBlockRoot: RootHex;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executionPayloadBid.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadBid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,4BAA4B;IACtC,oBAAoB,qDAAqD;IACzE,0BAA0B,2DAA2D;IACrF,iBAAiB,kDAAkD;IACnE,WAAW,4CAA4C;IACvD,YAAY,6CAA6C;IACzD,kBAAkB,mDAAmD;IACrE,YAAY,6CAA6C;IACzD,iBAAiB,kDAAkD;CACpE;AAED,MAAM,MAAM,4BAA4B,GACpC;IAAC,IAAI,EAAE,4BAA4B,CAAC,oBAAoB,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAC,GACrF;IACE,IAAI,EAAE,4BAA4B,CAAC,0BAA0B,CAAC;IAC9D,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GACD;IACE,IAAI,EAAE,4BAA4B,CAAC,iBAAiB,CAAC;IACrD,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACD;IAAC,IAAI,EAAE,4BAA4B,CAAC,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAC,GAC7F;IAAC,IAAI,EAAE,4BAA4B,CAAC,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAC,GAC3F;IAAC,IAAI,EAAE,4BAA4B,CAAC,kBAAkB,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAAC,GACjF;IAAC,IAAI,EAAE,4BAA4B,CAAC,YAAY,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GACzF;IAAC,IAAI,EAAE,4BAA4B,CAAC,iBAAiB,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,CAAC;AAEnG,qBAAa,wBAAyB,SAAQ,iBAAiB,CAAC,4BAA4B,CAAC;CAAG"}
|
|
1
|
+
{"version":3,"file":"executionPayloadBid.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadBid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,4BAA4B;IACtC,oBAAoB,qDAAqD;IACzE,0BAA0B,2DAA2D;IACrF,iBAAiB,kDAAkD;IACnE,WAAW,4CAA4C;IACvD,YAAY,6CAA6C;IACzD,wBAAwB,yDAAyD;IACjF,kBAAkB,mDAAmD;IACrE,YAAY,6CAA6C;IACzD,iBAAiB,kDAAkD;CACpE;AAED,MAAM,MAAM,4BAA4B,GACpC;IAAC,IAAI,EAAE,4BAA4B,CAAC,oBAAoB,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAC,GACrF;IACE,IAAI,EAAE,4BAA4B,CAAC,0BAA0B,CAAC;IAC9D,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GACD;IACE,IAAI,EAAE,4BAA4B,CAAC,iBAAiB,CAAC;IACrD,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACD;IAAC,IAAI,EAAE,4BAA4B,CAAC,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAC,GAC7F;IAAC,IAAI,EAAE,4BAA4B,CAAC,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAC,GAC3F;IACE,IAAI,EAAE,4BAA4B,CAAC,wBAAwB,CAAC;IAC5D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAC,IAAI,EAAE,4BAA4B,CAAC,kBAAkB,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAAC,GACjF;IAAC,IAAI,EAAE,4BAA4B,CAAC,YAAY,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GACzF;IAAC,IAAI,EAAE,4BAA4B,CAAC,iBAAiB,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,CAAC;AAEnG,qBAAa,wBAAyB,SAAQ,iBAAiB,CAAC,4BAA4B,CAAC;CAAG"}
|
|
@@ -7,6 +7,7 @@ var ExecutionPayloadBidErrorCode;
|
|
|
7
7
|
ExecutionPayloadBidErrorCode["BID_ALREADY_KNOWN"] = "EXECUTION_PAYLOAD_BID_ERROR_BID_ALREADY_KNOWN";
|
|
8
8
|
ExecutionPayloadBidErrorCode["BID_TOO_LOW"] = "EXECUTION_PAYLOAD_BID_ERROR_BID_TOO_LOW";
|
|
9
9
|
ExecutionPayloadBidErrorCode["BID_TOO_HIGH"] = "EXECUTION_PAYLOAD_BID_ERROR_BID_TOO_HIGH";
|
|
10
|
+
ExecutionPayloadBidErrorCode["TOO_MANY_KZG_COMMITMENTS"] = "EXECUTION_PAYLOAD_BID_ERROR_TOO_MANY_KZG_COMMITMENTS";
|
|
10
11
|
ExecutionPayloadBidErrorCode["UNKNOWN_BLOCK_ROOT"] = "EXECUTION_PAYLOAD_BID_ERROR_UNKNOWN_BLOCK_ROOT";
|
|
11
12
|
ExecutionPayloadBidErrorCode["INVALID_SLOT"] = "EXECUTION_PAYLOAD_BID_ERROR_INVALID_SLOT";
|
|
12
13
|
ExecutionPayloadBidErrorCode["INVALID_SIGNATURE"] = "EXECUTION_PAYLOAD_BID_ERROR_INVALID_SIGNATURE";
|