@lodestar/beacon-node 1.39.0-dev.882891d89c → 1.39.0-dev.b37f2bd1bd
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/utils.js +1 -1
- package/lib/api/impl/beacon/blocks/utils.js.map +1 -1
- package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
- package/lib/chain/blocks/verifyBlock.js +1 -1
- package/lib/chain/blocks/verifyBlock.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksSignatures.d.ts +1 -2
- package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
- package/lib/chain/blocks/verifyBlocksSignatures.js +2 -2
- package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
- package/lib/chain/chain.d.ts +4 -1
- package/lib/chain/chain.d.ts.map +1 -1
- package/lib/chain/chain.js +16 -8
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/genesis/genesis.d.ts +51 -0
- package/lib/chain/genesis/genesis.d.ts.map +1 -0
- package/lib/chain/genesis/genesis.js +123 -0
- package/lib/chain/genesis/genesis.js.map +1 -0
- package/lib/chain/genesis/interface.d.ts +13 -0
- package/lib/chain/genesis/interface.d.ts.map +1 -0
- package/lib/chain/genesis/interface.js +2 -0
- package/lib/chain/genesis/interface.js.map +1 -0
- package/lib/chain/initState.d.ts +14 -1
- package/lib/chain/initState.d.ts.map +1 -1
- package/lib/chain/initState.js +62 -1
- package/lib/chain/initState.js.map +1 -1
- package/lib/chain/interface.d.ts +2 -0
- package/lib/chain/interface.d.ts.map +1 -1
- package/lib/chain/interface.js.map +1 -1
- package/lib/chain/opPools/aggregatedAttestationPool.d.ts +4 -4
- package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
- package/lib/chain/opPools/aggregatedAttestationPool.js +4 -4
- package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
- package/lib/chain/opPools/opPool.d.ts +0 -3
- package/lib/chain/opPools/opPool.d.ts.map +1 -1
- package/lib/chain/opPools/opPool.js +8 -9
- package/lib/chain/opPools/opPool.js.map +1 -1
- package/lib/chain/prepareNextSlot.d.ts +4 -0
- package/lib/chain/prepareNextSlot.d.ts.map +1 -1
- package/lib/chain/prepareNextSlot.js +21 -1
- package/lib/chain/prepareNextSlot.js.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.d.ts +1 -0
- package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.js +11 -8
- package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
- package/lib/chain/rewards/attestationsRewards.d.ts +1 -2
- package/lib/chain/rewards/attestationsRewards.d.ts.map +1 -1
- package/lib/chain/rewards/attestationsRewards.js +8 -8
- package/lib/chain/rewards/attestationsRewards.js.map +1 -1
- package/lib/chain/rewards/blockRewards.d.ts +1 -2
- package/lib/chain/rewards/blockRewards.d.ts.map +1 -1
- package/lib/chain/rewards/blockRewards.js +5 -5
- package/lib/chain/rewards/blockRewards.js.map +1 -1
- package/lib/chain/rewards/syncCommitteeRewards.d.ts +1 -2
- package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +1 -1
- package/lib/chain/rewards/syncCommitteeRewards.js +2 -2
- package/lib/chain/rewards/syncCommitteeRewards.js.map +1 -1
- package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +1 -4
- package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
- package/lib/chain/stateCache/persistentCheckpointsCache.js +2 -4
- package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
- package/lib/chain/validation/attesterSlashing.js +1 -1
- package/lib/chain/validation/attesterSlashing.js.map +1 -1
- package/lib/chain/validation/block.js +1 -1
- package/lib/chain/validation/block.js.map +1 -1
- package/lib/chain/validation/blsToExecutionChange.js +1 -1
- package/lib/chain/validation/proposerSlashing.js +1 -1
- package/lib/chain/validation/proposerSlashing.js.map +1 -1
- package/lib/chain/validation/signatureSets/aggregateAndProof.js +1 -1
- package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
- package/lib/chain/validation/signatureSets/contributionAndProof.d.ts +1 -2
- package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +1 -1
- package/lib/chain/validation/signatureSets/contributionAndProof.js +2 -2
- package/lib/chain/validation/signatureSets/contributionAndProof.js.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommittee.d.ts +1 -2
- package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommittee.js +2 -2
- package/lib/chain/validation/signatureSets/syncCommittee.js.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts +1 -2
- package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommitteeContribution.js +2 -2
- package/lib/chain/validation/signatureSets/syncCommitteeContribution.js.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts +1 -2
- package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +1 -1
- package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js +2 -1
- package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js.map +1 -1
- package/lib/chain/validation/syncCommittee.js +1 -1
- package/lib/chain/validation/syncCommittee.js.map +1 -1
- package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +1 -1
- package/lib/chain/validation/syncCommitteeContributionAndProof.js +3 -3
- package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
- package/lib/chain/validation/voluntaryExit.js +1 -1
- package/lib/chain/validation/voluntaryExit.js.map +1 -1
- package/lib/db/beacon.d.ts +7 -3
- package/lib/db/beacon.d.ts.map +1 -1
- package/lib/db/beacon.js +12 -33
- package/lib/db/beacon.js.map +1 -1
- package/lib/db/buckets.d.ts +6 -12
- package/lib/db/buckets.d.ts.map +1 -1
- package/lib/db/buckets.js +1 -6
- package/lib/db/buckets.js.map +1 -1
- package/lib/db/interface.d.ts +7 -2
- package/lib/db/interface.d.ts.map +1 -1
- package/lib/db/repositories/depositDataRoot.d.ts +22 -0
- package/lib/db/repositories/depositDataRoot.d.ts.map +1 -0
- package/lib/db/repositories/depositDataRoot.js +62 -0
- package/lib/db/repositories/depositDataRoot.js.map +1 -0
- package/lib/db/repositories/depositEvent.d.ts +13 -0
- package/lib/db/repositories/depositEvent.d.ts.map +1 -0
- package/lib/db/repositories/depositEvent.js +27 -0
- package/lib/db/repositories/depositEvent.js.map +1 -0
- package/lib/db/repositories/eth1Data.d.ts +13 -0
- package/lib/db/repositories/eth1Data.d.ts.map +1 -0
- package/lib/db/repositories/eth1Data.js +26 -0
- package/lib/db/repositories/eth1Data.js.map +1 -0
- package/lib/db/repositories/index.d.ts +3 -0
- package/lib/db/repositories/index.d.ts.map +1 -1
- package/lib/db/repositories/index.js +3 -0
- package/lib/db/repositories/index.js.map +1 -1
- package/lib/db/single/index.d.ts +3 -0
- package/lib/db/single/index.d.ts.map +1 -0
- package/lib/db/single/index.js +3 -0
- package/lib/db/single/index.js.map +1 -0
- package/lib/db/single/preGenesisState.d.ts +16 -0
- package/lib/db/single/preGenesisState.d.ts.map +1 -0
- package/lib/db/single/preGenesisState.js +29 -0
- package/lib/db/single/preGenesisState.js.map +1 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts +14 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +1 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.js +27 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +1 -0
- package/lib/eth1/errors.d.ts +66 -0
- package/lib/eth1/errors.d.ts.map +1 -0
- package/lib/eth1/errors.js +27 -0
- package/lib/eth1/errors.js.map +1 -0
- package/lib/eth1/eth1DataCache.d.ts +19 -0
- package/lib/eth1/eth1DataCache.d.ts.map +1 -0
- package/lib/eth1/eth1DataCache.js +19 -0
- package/lib/eth1/eth1DataCache.js.map +1 -0
- package/lib/eth1/eth1DepositDataTracker.d.ts +80 -0
- package/lib/eth1/eth1DepositDataTracker.d.ts.map +1 -0
- package/lib/eth1/eth1DepositDataTracker.js +317 -0
- package/lib/eth1/eth1DepositDataTracker.js.map +1 -0
- package/lib/eth1/eth1DepositsCache.d.ts +42 -0
- package/lib/eth1/eth1DepositsCache.d.ts.map +1 -0
- package/lib/eth1/eth1DepositsCache.js +119 -0
- package/lib/eth1/eth1DepositsCache.js.map +1 -0
- package/lib/eth1/index.d.ts +31 -0
- package/lib/eth1/index.d.ts.map +1 -0
- package/lib/eth1/index.js +71 -0
- package/lib/eth1/index.js.map +1 -0
- package/lib/eth1/interface.d.ts +74 -0
- package/lib/eth1/interface.d.ts.map +1 -0
- package/lib/eth1/interface.js +8 -0
- package/lib/eth1/interface.js.map +1 -0
- package/lib/eth1/options.d.ts +22 -0
- package/lib/eth1/options.d.ts.map +1 -0
- package/lib/eth1/options.js +8 -0
- package/lib/eth1/options.js.map +1 -0
- package/lib/eth1/provider/eth1Provider.d.ts +39 -0
- package/lib/eth1/provider/eth1Provider.d.ts.map +1 -0
- package/lib/eth1/provider/eth1Provider.js +147 -0
- package/lib/eth1/provider/eth1Provider.js.map +1 -0
- package/lib/{execution/engine → eth1/provider}/jsonRpcHttpClient.d.ts +1 -1
- package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +1 -0
- package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -0
- package/lib/eth1/provider/jwt.d.ts.map +1 -0
- package/lib/eth1/provider/jwt.js.map +1 -0
- package/lib/eth1/provider/utils.d.ts +65 -0
- package/lib/eth1/provider/utils.d.ts.map +1 -0
- package/lib/eth1/provider/utils.js +120 -0
- package/lib/eth1/provider/utils.js.map +1 -0
- package/lib/eth1/stream.d.ts +15 -0
- package/lib/eth1/stream.d.ts.map +1 -0
- package/lib/eth1/stream.js +54 -0
- package/lib/eth1/stream.js.map +1 -0
- package/lib/eth1/utils/depositContract.d.ts +14 -0
- package/lib/eth1/utils/depositContract.d.ts.map +1 -0
- package/lib/eth1/utils/depositContract.js +33 -0
- package/lib/eth1/utils/depositContract.js.map +1 -0
- package/lib/eth1/utils/deposits.d.ts +8 -0
- package/lib/eth1/utils/deposits.d.ts.map +1 -0
- package/lib/eth1/utils/deposits.js +47 -0
- package/lib/eth1/utils/deposits.js.map +1 -0
- package/lib/eth1/utils/eth1Data.d.ts +22 -0
- package/lib/eth1/utils/eth1Data.d.ts.map +1 -0
- package/lib/eth1/utils/eth1Data.js +77 -0
- package/lib/eth1/utils/eth1Data.js.map +1 -0
- package/lib/eth1/utils/eth1DepositEvent.d.ts +7 -0
- package/lib/eth1/utils/eth1DepositEvent.d.ts.map +1 -0
- package/lib/eth1/utils/eth1DepositEvent.js +13 -0
- package/lib/eth1/utils/eth1DepositEvent.js.map +1 -0
- package/lib/eth1/utils/eth1Vote.d.ts +17 -0
- package/lib/eth1/utils/eth1Vote.d.ts.map +1 -0
- package/lib/eth1/utils/eth1Vote.js +111 -0
- package/lib/eth1/utils/eth1Vote.js.map +1 -0
- package/lib/eth1/utils/groupDepositEventsByBlock.d.ts +9 -0
- package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +1 -0
- package/lib/eth1/utils/groupDepositEventsByBlock.js +17 -0
- package/lib/eth1/utils/groupDepositEventsByBlock.js.map +1 -0
- package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts +10 -0
- package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +1 -0
- package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.js +14 -0
- package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.js.map +1 -0
- package/lib/execution/engine/http.d.ts +1 -1
- package/lib/execution/engine/http.d.ts.map +1 -1
- package/lib/execution/engine/http.js +3 -2
- package/lib/execution/engine/http.js.map +1 -1
- package/lib/execution/engine/index.d.ts.map +1 -1
- package/lib/execution/engine/index.js +1 -1
- package/lib/execution/engine/index.js.map +1 -1
- package/lib/execution/engine/interface.d.ts +1 -1
- package/lib/execution/engine/interface.d.ts.map +1 -1
- package/lib/execution/engine/interface.js.map +1 -1
- package/lib/execution/engine/mock.d.ts.map +1 -1
- package/lib/execution/engine/mock.js +1 -1
- package/lib/execution/engine/mock.js.map +1 -1
- package/lib/execution/engine/payloadIdCache.d.ts +1 -1
- package/lib/execution/engine/payloadIdCache.d.ts.map +1 -1
- package/lib/execution/engine/types.d.ts +1 -1
- package/lib/execution/engine/types.d.ts.map +1 -1
- package/lib/execution/engine/types.js +1 -1
- package/lib/execution/engine/types.js.map +1 -1
- package/lib/execution/engine/utils.d.ts +2 -64
- package/lib/execution/engine/utils.d.ts.map +1 -1
- package/lib/execution/engine/utils.js +2 -91
- package/lib/execution/engine/utils.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +35 -0
- package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
- package/lib/metrics/metrics/lodestar.js +90 -0
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/node/nodejs.d.ts.map +1 -1
- package/lib/node/nodejs.js +9 -10
- package/lib/node/nodejs.js.map +1 -1
- package/lib/node/options.d.ts +2 -0
- package/lib/node/options.d.ts.map +1 -1
- package/lib/node/options.js +2 -0
- package/lib/node/options.js.map +1 -1
- package/lib/node/utils/interop/deposits.d.ts +1 -2
- package/lib/node/utils/interop/deposits.d.ts.map +1 -1
- package/lib/node/utils/interop/deposits.js.map +1 -1
- package/lib/node/utils/interop/state.d.ts +1 -1
- package/lib/node/utils/interop/state.d.ts.map +1 -1
- package/lib/node/utils/state.d.ts +7 -1
- package/lib/node/utils/state.d.ts.map +1 -1
- package/lib/node/utils/state.js +14 -1
- package/lib/node/utils/state.js.map +1 -1
- package/lib/sync/backfill/backfill.d.ts.map +1 -1
- package/lib/sync/backfill/backfill.js +4 -2
- package/lib/sync/backfill/backfill.js.map +1 -1
- package/lib/sync/backfill/verify.d.ts +1 -1
- package/lib/sync/backfill/verify.d.ts.map +1 -1
- package/lib/sync/backfill/verify.js +2 -2
- package/lib/sync/backfill/verify.js.map +1 -1
- package/package.json +20 -14
- package/src/api/impl/beacon/blocks/utils.ts +1 -1
- package/src/chain/blocks/verifyBlock.ts +0 -1
- package/src/chain/blocks/verifyBlocksSignatures.ts +1 -3
- package/src/chain/chain.ts +19 -7
- package/src/chain/genesis/genesis.ts +190 -0
- package/src/chain/genesis/interface.ts +14 -0
- package/src/chain/initState.ts +97 -1
- package/src/chain/interface.ts +2 -0
- package/src/chain/opPools/aggregatedAttestationPool.ts +7 -7
- package/src/chain/opPools/opPool.ts +8 -8
- package/src/chain/prepareNextSlot.ts +28 -1
- package/src/chain/produceBlock/produceBlockBody.ts +12 -8
- package/src/chain/rewards/attestationsRewards.ts +4 -13
- package/src/chain/rewards/blockRewards.ts +3 -6
- package/src/chain/rewards/syncCommitteeRewards.ts +1 -3
- package/src/chain/stateCache/persistentCheckpointsCache.ts +2 -15
- package/src/chain/validation/attesterSlashing.ts +1 -1
- package/src/chain/validation/block.ts +1 -1
- package/src/chain/validation/blsToExecutionChange.ts +1 -1
- package/src/chain/validation/proposerSlashing.ts +1 -1
- package/src/chain/validation/signatureSets/aggregateAndProof.ts +1 -1
- package/src/chain/validation/signatureSets/contributionAndProof.ts +1 -3
- package/src/chain/validation/signatureSets/syncCommittee.ts +1 -3
- package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +1 -3
- package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +1 -2
- package/src/chain/validation/syncCommittee.ts +1 -1
- package/src/chain/validation/syncCommitteeContributionAndProof.ts +3 -8
- package/src/chain/validation/voluntaryExit.ts +1 -1
- package/src/db/beacon.ts +16 -38
- package/src/db/buckets.ts +7 -12
- package/src/db/interface.ts +13 -2
- package/src/db/repositories/depositDataRoot.ts +80 -0
- package/src/db/repositories/depositEvent.ts +32 -0
- package/src/db/repositories/eth1Data.ts +33 -0
- package/src/db/repositories/index.ts +3 -0
- package/src/db/single/index.ts +2 -0
- package/src/db/single/preGenesisState.ts +37 -0
- package/src/db/single/preGenesisStateLastProcessedBlock.ts +34 -0
- package/src/eth1/errors.ts +40 -0
- package/src/eth1/eth1DataCache.ts +26 -0
- package/src/eth1/eth1DepositDataTracker.ts +410 -0
- package/src/eth1/eth1DepositsCache.ts +141 -0
- package/src/eth1/index.ts +94 -0
- package/src/eth1/interface.ts +87 -0
- package/src/eth1/options.ts +28 -0
- package/src/eth1/provider/eth1Provider.ts +229 -0
- package/src/{execution/engine → eth1/provider}/jsonRpcHttpClient.ts +1 -1
- package/src/eth1/provider/utils.ts +136 -0
- package/src/eth1/stream.ts +75 -0
- package/src/eth1/utils/depositContract.ts +37 -0
- package/src/eth1/utils/deposits.ts +70 -0
- package/src/eth1/utils/eth1Data.ts +100 -0
- package/src/eth1/utils/eth1DepositEvent.ts +12 -0
- package/src/eth1/utils/eth1Vote.ts +142 -0
- package/src/eth1/utils/groupDepositEventsByBlock.ts +19 -0
- package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +18 -0
- package/src/execution/engine/http.ts +9 -8
- package/src/execution/engine/index.ts +1 -1
- package/src/execution/engine/interface.ts +1 -1
- package/src/execution/engine/mock.ts +2 -1
- package/src/execution/engine/payloadIdCache.ts +1 -1
- package/src/execution/engine/types.ts +9 -9
- package/src/execution/engine/utils.ts +5 -111
- package/src/index.ts +2 -1
- package/src/metrics/metrics/lodestar.ts +92 -0
- package/src/node/nodejs.ts +9 -11
- package/src/node/options.ts +3 -0
- package/src/node/utils/interop/deposits.ts +1 -3
- package/src/node/utils/interop/state.ts +1 -1
- package/src/node/utils/state.ts +18 -3
- package/src/sync/backfill/backfill.ts +3 -8
- package/src/sync/backfill/verify.ts +1 -3
- package/lib/execution/engine/jsonRpcHttpClient.d.ts.map +0 -1
- package/lib/execution/engine/jsonRpcHttpClient.js.map +0 -1
- package/lib/execution/engine/jwt.d.ts.map +0 -1
- package/lib/execution/engine/jwt.js.map +0 -1
- /package/lib/{execution/engine → eth1/provider}/jsonRpcHttpClient.js +0 -0
- /package/lib/{execution/engine → eth1/provider}/jwt.d.ts +0 -0
- /package/lib/{execution/engine → eth1/provider}/jwt.js +0 -0
- /package/src/{execution/engine → eth1/provider}/jwt.ts +0 -0
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
import {ExecutionPayload, RootHex, bellatrix, deneb, ssz} from "@lodestar/types";
|
|
12
12
|
import {fromHex, toRootHex} from "@lodestar/utils";
|
|
13
13
|
import {ZERO_HASH_HEX} from "../../constants/index.js";
|
|
14
|
+
import {quantityToNum} from "../../eth1/provider/utils.js";
|
|
14
15
|
import {INTEROP_BLOCK_HASH} from "../../node/utils/interop/state.js";
|
|
15
16
|
import {kzgCommitmentToVersionedHash} from "../../util/blobs.js";
|
|
16
17
|
import {kzg} from "../../util/kzg.js";
|
|
@@ -28,7 +29,7 @@ import {
|
|
|
28
29
|
serializeExecutionPayload,
|
|
29
30
|
serializeExecutionRequests,
|
|
30
31
|
} from "./types.js";
|
|
31
|
-
import {JsonRpcBackend
|
|
32
|
+
import {JsonRpcBackend} from "./utils.js";
|
|
32
33
|
|
|
33
34
|
const INTEROP_GAS_LIMIT = 30e6;
|
|
34
35
|
const PRUNE_PAYLOAD_ID_AFTER_MS = 5000;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {SLOTS_PER_EPOCH} from "@lodestar/params";
|
|
2
2
|
import {pruneSetToMax} from "@lodestar/utils";
|
|
3
|
+
import {DATA, QUANTITY} from "../../eth1/provider/utils.js";
|
|
3
4
|
import {PayloadAttributesRpc} from "./types.js";
|
|
4
|
-
import {DATA, QUANTITY} from "./utils.js";
|
|
5
5
|
|
|
6
6
|
// Idealy this only need to be set to the max head reorgs number
|
|
7
7
|
const MAX_PAYLOAD_IDS = SLOTS_PER_EPOCH;
|
|
@@ -23,14 +23,6 @@ import {
|
|
|
23
23
|
} from "@lodestar/types";
|
|
24
24
|
import {BlobAndProof} from "@lodestar/types/deneb";
|
|
25
25
|
import {BlobAndProofV2} from "@lodestar/types/fulu";
|
|
26
|
-
import {
|
|
27
|
-
ExecutionPayloadStatus,
|
|
28
|
-
ExecutionRequestType,
|
|
29
|
-
PayloadAttributes,
|
|
30
|
-
VersionedHashes,
|
|
31
|
-
isExecutionRequestType,
|
|
32
|
-
} from "./interface.js";
|
|
33
|
-
import {WithdrawalV1} from "./payloadIdCache.js";
|
|
34
26
|
import {
|
|
35
27
|
DATA,
|
|
36
28
|
QUANTITY,
|
|
@@ -40,7 +32,15 @@ import {
|
|
|
40
32
|
numToQuantity,
|
|
41
33
|
quantityToBigint,
|
|
42
34
|
quantityToNum,
|
|
43
|
-
} from "
|
|
35
|
+
} from "../../eth1/provider/utils.js";
|
|
36
|
+
import {
|
|
37
|
+
ExecutionPayloadStatus,
|
|
38
|
+
ExecutionRequestType,
|
|
39
|
+
PayloadAttributes,
|
|
40
|
+
VersionedHashes,
|
|
41
|
+
isExecutionRequestType,
|
|
42
|
+
} from "./interface.js";
|
|
43
|
+
import {WithdrawalV1} from "./payloadIdCache.js";
|
|
44
44
|
|
|
45
45
|
export type EngineApiRpcParamTypes = {
|
|
46
46
|
/**
|
|
@@ -1,120 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {ExecutionEngineState, ExecutionPayloadStatus} from "./interface.js";
|
|
1
|
+
import {isErrorAborted, isFetchError} from "@lodestar/utils";
|
|
2
|
+
import {IJson, RpcPayload} from "../../eth1/interface.js";
|
|
4
3
|
import {
|
|
5
4
|
ErrorJsonRpcResponse,
|
|
6
5
|
HttpRpcError,
|
|
7
6
|
IJsonRpcHttpClient,
|
|
8
7
|
JsonRpcHttpClientEvent,
|
|
9
8
|
JsonRpcHttpClientEventEmitter,
|
|
10
|
-
} from "
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export type QUANTITY = string;
|
|
14
|
-
/** DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API */
|
|
15
|
-
export type DATA = string;
|
|
16
|
-
|
|
17
|
-
export const rootHexRegex = /^0x[a-fA-F0-9]{64}$/;
|
|
18
|
-
|
|
19
|
-
export type IJson = string | number | boolean | undefined | IJson[] | {[key: string]: IJson};
|
|
20
|
-
|
|
21
|
-
export interface RpcPayload<P = IJson[]> {
|
|
22
|
-
method: string;
|
|
23
|
-
params: P;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
|
|
28
|
-
*
|
|
29
|
-
* When encoding QUANTITIES (integers, numbers): encode as hex, prefix with “0x”, the most compact representation (slight exception: zero should be represented as “0x0”). Examples:
|
|
30
|
-
* - 0x41 (65 in decimal)
|
|
31
|
-
* - 0x400 (1024 in decimal)
|
|
32
|
-
* - WRONG: 0x (should always have at least one digit - zero is “0x0”)
|
|
33
|
-
* - WRONG: 0x0400 (no leading zeroes allowed)
|
|
34
|
-
* - WRONG: ff (must be prefixed 0x)
|
|
35
|
-
*/
|
|
36
|
-
export function numToQuantity(num: number | bigint): QUANTITY {
|
|
37
|
-
return "0x" + num.toString(16);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
|
|
42
|
-
*/
|
|
43
|
-
export function quantityToNum(hex: QUANTITY, id = ""): number {
|
|
44
|
-
const num = parseInt(hex, 16);
|
|
45
|
-
if (Number.isNaN(num) || num < 0) throw Error(`Invalid hex decimal ${id} '${hex}'`);
|
|
46
|
-
return num;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
|
|
51
|
-
* Typesafe fn to convert hex string to bigint. The BigInt constructor param is any
|
|
52
|
-
*/
|
|
53
|
-
export function quantityToBigint(hex: QUANTITY, id = ""): bigint {
|
|
54
|
-
try {
|
|
55
|
-
return BigInt(hex);
|
|
56
|
-
} catch (e) {
|
|
57
|
-
throw Error(`Invalid hex bigint ${id} '${hex}': ${(e as Error).message}`);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
|
|
63
|
-
*/
|
|
64
|
-
export function quantityToBytes(hex: QUANTITY): Uint8Array {
|
|
65
|
-
const bn = quantityToBigint(hex);
|
|
66
|
-
return bigIntToBytes(bn, 32, "le");
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
|
|
71
|
-
* Compress a 32 ByteVector into a QUANTITY
|
|
72
|
-
*/
|
|
73
|
-
export function bytesToQuantity(bytes: Uint8Array): QUANTITY {
|
|
74
|
-
const bn = bytesToBigInt(bytes, "le");
|
|
75
|
-
return numToQuantity(bn);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
|
|
80
|
-
*
|
|
81
|
-
* When encoding UNFORMATTED DATA (byte arrays, account addresses, hashes, bytecode arrays): encode as hex, prefix with
|
|
82
|
-
* “0x”, two hex digits per byte. Examples:
|
|
83
|
-
*
|
|
84
|
-
* - 0x41 (size 1, “A”)
|
|
85
|
-
* - 0x004200 (size 3, “\0B\0”)
|
|
86
|
-
* - 0x (size 0, “”)
|
|
87
|
-
* - WRONG: 0xf0f0f (must be even number of digits)
|
|
88
|
-
* - WRONG: 004200 (must be prefixed 0x)
|
|
89
|
-
*/
|
|
90
|
-
export function bytesToData(bytes: Uint8Array): DATA {
|
|
91
|
-
return toHex(bytes);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
|
|
96
|
-
*/
|
|
97
|
-
export function dataToBytes(hex: DATA, fixedLength: number | null): Uint8Array {
|
|
98
|
-
try {
|
|
99
|
-
const bytes = fromHex(hex);
|
|
100
|
-
if (fixedLength != null && bytes.length !== fixedLength) {
|
|
101
|
-
throw Error(`Wrong data length ${bytes.length} expected ${fixedLength}`);
|
|
102
|
-
}
|
|
103
|
-
return bytes;
|
|
104
|
-
} catch (e) {
|
|
105
|
-
(e as Error).message = `Invalid hex string: ${(e as Error).message}`;
|
|
106
|
-
throw e;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* Convert DATA into a preallocated buffer
|
|
112
|
-
* fromHexInto will throw if buffer's length is not the same as the decoded hex length
|
|
113
|
-
*/
|
|
114
|
-
export function dataIntoBytes(hex: DATA, buffer: Uint8Array): Uint8Array {
|
|
115
|
-
fromHexInto(hex, buffer);
|
|
116
|
-
return buffer;
|
|
117
|
-
}
|
|
9
|
+
} from "../../eth1/provider/jsonRpcHttpClient.js";
|
|
10
|
+
import {isQueueErrorAborted} from "../../util/queue/errors.js";
|
|
11
|
+
import {ExecutionEngineState, ExecutionPayloadStatus} from "./interface.js";
|
|
118
12
|
|
|
119
13
|
export type JsonRpcBackend = {
|
|
120
14
|
// biome-ignore lint/suspicious/noExplicitAny: We need to use `any` type here
|
package/src/index.ts
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
export type {RestApiServerMetrics, RestApiServerModules, RestApiServerOpts} from "./api/rest/base.js";
|
|
4
4
|
export {RestApiServer} from "./api/rest/base.js";
|
|
5
|
-
export {checkAndPersistAnchorState, initStateFromDb} from "./chain/index.js";
|
|
5
|
+
export {checkAndPersistAnchorState, initStateFromDb, initStateFromEth1} from "./chain/index.js";
|
|
6
6
|
export {DbCPStateDatastore} from "./chain/stateCache/datastore/db.js";
|
|
7
7
|
export {FileCPStateDatastore} from "./chain/stateCache/datastore/file.js";
|
|
8
8
|
export {BeaconDb, type IBeaconDb} from "./db/index.js";
|
|
9
|
+
export {Eth1Provider, type IEth1Provider} from "./eth1/index.js";
|
|
9
10
|
// Export metrics utilities to de-duplicate validator metrics
|
|
10
11
|
export {
|
|
11
12
|
type HttpMetricsServer,
|
|
@@ -1619,6 +1619,98 @@ export function createLodestarMetrics(
|
|
|
1619
1619
|
}),
|
|
1620
1620
|
},
|
|
1621
1621
|
|
|
1622
|
+
eth1: {
|
|
1623
|
+
depositTrackerIsCaughtup: register.gauge({
|
|
1624
|
+
name: "lodestar_eth1_deposit_tracker_is_caughtup",
|
|
1625
|
+
help: "Eth1 deposit is caught up 0=false 1=true",
|
|
1626
|
+
}),
|
|
1627
|
+
depositTrackerUpdateErrors: register.gauge({
|
|
1628
|
+
name: "lodestar_eth1_deposit_tracker_update_errors_total",
|
|
1629
|
+
help: "Eth1 deposit update loop errors total",
|
|
1630
|
+
}),
|
|
1631
|
+
remoteHighestBlock: register.gauge({
|
|
1632
|
+
name: "lodestar_eth1_remote_highest_block",
|
|
1633
|
+
help: "Eth1 current highest block number",
|
|
1634
|
+
}),
|
|
1635
|
+
depositEventsFetched: register.gauge({
|
|
1636
|
+
name: "lodestar_eth1_deposit_events_fetched_total",
|
|
1637
|
+
help: "Eth1 deposit events fetched total",
|
|
1638
|
+
}),
|
|
1639
|
+
lastProcessedDepositBlockNumber: register.gauge({
|
|
1640
|
+
name: "lodestar_eth1_last_processed_deposit_block_number",
|
|
1641
|
+
help: "Eth1 deposit tracker lastProcessedDepositBlockNumber",
|
|
1642
|
+
}),
|
|
1643
|
+
blocksFetched: register.gauge({
|
|
1644
|
+
name: "lodestar_eth1_blocks_fetched_total",
|
|
1645
|
+
help: "Eth1 blocks fetched total",
|
|
1646
|
+
}),
|
|
1647
|
+
lastFetchedBlockBlockNumber: register.gauge({
|
|
1648
|
+
name: "lodestar_eth1_last_fetched_block_block_number",
|
|
1649
|
+
help: "Eth1 deposit tracker last fetched block's block number",
|
|
1650
|
+
}),
|
|
1651
|
+
lastFetchedBlockTimestamp: register.gauge({
|
|
1652
|
+
name: "lodestar_eth1_last_fetched_block_timestamp",
|
|
1653
|
+
help: "Eth1 deposit tracker last fetched block's timestamp",
|
|
1654
|
+
}),
|
|
1655
|
+
eth1FollowDistanceSecondsConfig: register.gauge({
|
|
1656
|
+
name: "lodestar_eth1_follow_distance_seconds_config",
|
|
1657
|
+
help: "Constant with value = SECONDS_PER_ETH1_BLOCK * ETH1_FOLLOW_DISTANCE",
|
|
1658
|
+
}),
|
|
1659
|
+
eth1FollowDistanceDynamic: register.gauge({
|
|
1660
|
+
name: "lodestar_eth1_follow_distance_dynamic",
|
|
1661
|
+
help: "Eth1 dynamic follow distance changed by the deposit tracker if blocks are slow",
|
|
1662
|
+
}),
|
|
1663
|
+
eth1GetBlocksBatchSizeDynamic: register.gauge({
|
|
1664
|
+
name: "lodestar_eth1_blocks_batch_size_dynamic",
|
|
1665
|
+
help: "Dynamic batch size to fetch blocks",
|
|
1666
|
+
}),
|
|
1667
|
+
eth1GetLogsBatchSizeDynamic: register.gauge({
|
|
1668
|
+
name: "lodestar_eth1_logs_batch_size_dynamic",
|
|
1669
|
+
help: "Dynamic batch size to fetch deposit logs",
|
|
1670
|
+
}),
|
|
1671
|
+
},
|
|
1672
|
+
|
|
1673
|
+
eth1HttpClient: {
|
|
1674
|
+
requestTime: register.histogram<{routeId: string}>({
|
|
1675
|
+
name: "lodestar_eth1_http_client_request_time_seconds",
|
|
1676
|
+
help: "eth1 JsonHttpClient - histogram or roundtrip request times",
|
|
1677
|
+
labelNames: ["routeId"],
|
|
1678
|
+
// Provide max resolution on problematic values around 1 second
|
|
1679
|
+
buckets: [0.1, 0.5, 1, 2, 5, 15],
|
|
1680
|
+
}),
|
|
1681
|
+
streamTime: register.histogram<{routeId: string}>({
|
|
1682
|
+
name: "lodestar_eth1_http_client_stream_time_seconds",
|
|
1683
|
+
help: "eth1 JsonHttpClient - streaming time by routeId",
|
|
1684
|
+
labelNames: ["routeId"],
|
|
1685
|
+
// Provide max resolution on problematic values around 1 second
|
|
1686
|
+
buckets: [0.1, 0.5, 1, 2, 5, 15],
|
|
1687
|
+
}),
|
|
1688
|
+
requestErrors: register.gauge<{routeId: string}>({
|
|
1689
|
+
name: "lodestar_eth1_http_client_request_errors_total",
|
|
1690
|
+
help: "eth1 JsonHttpClient - total count of request errors",
|
|
1691
|
+
labelNames: ["routeId"],
|
|
1692
|
+
}),
|
|
1693
|
+
retryCount: register.gauge<{routeId: string}>({
|
|
1694
|
+
name: "lodestar_eth1_http_client_request_retries_total",
|
|
1695
|
+
help: "eth1 JsonHttpClient - total count of request retries",
|
|
1696
|
+
labelNames: ["routeId"],
|
|
1697
|
+
}),
|
|
1698
|
+
requestUsedFallbackUrl: register.gauge<{routeId: string}>({
|
|
1699
|
+
name: "lodestar_eth1_http_client_request_used_fallback_url_total",
|
|
1700
|
+
help: "eth1 JsonHttpClient - total count of requests on fallback url(s)",
|
|
1701
|
+
labelNames: ["routeId"],
|
|
1702
|
+
}),
|
|
1703
|
+
activeRequests: register.gauge<{routeId: string}>({
|
|
1704
|
+
name: "lodestar_eth1_http_client_active_requests",
|
|
1705
|
+
help: "eth1 JsonHttpClient - current count of active requests",
|
|
1706
|
+
labelNames: ["routeId"],
|
|
1707
|
+
}),
|
|
1708
|
+
configUrlsCount: register.gauge({
|
|
1709
|
+
name: "lodestar_eth1_http_client_config_urls_count",
|
|
1710
|
+
help: "eth1 JsonHttpClient - static config urls count",
|
|
1711
|
+
}),
|
|
1712
|
+
},
|
|
1713
|
+
|
|
1622
1714
|
executionEnginerHttpClient: {
|
|
1623
1715
|
requestTime: register.histogram<{routeId: string}>({
|
|
1624
1716
|
name: "lodestar_execution_engine_http_client_request_time_seconds",
|
package/src/node/nodejs.ts
CHANGED
|
@@ -13,6 +13,7 @@ import {BeaconRestApiServer, getApi} from "../api/index.js";
|
|
|
13
13
|
import {BeaconChain, IBeaconChain, initBeaconMetrics} from "../chain/index.js";
|
|
14
14
|
import {ValidatorMonitor, createValidatorMonitor} from "../chain/validatorMonitor.js";
|
|
15
15
|
import {IBeaconDb} from "../db/index.js";
|
|
16
|
+
import {initializeEth1ForBlockProduction} from "../eth1/index.js";
|
|
16
17
|
import {initializeExecutionBuilder, initializeExecutionEngine} from "../execution/index.js";
|
|
17
18
|
import {HttpMetricsServer, Metrics, createMetrics, getHttpMetricsServer} from "../metrics/index.js";
|
|
18
19
|
import {MonitoringService} from "../monitoring/index.js";
|
|
@@ -67,6 +68,7 @@ enum LoggerModule {
|
|
|
67
68
|
api = "api",
|
|
68
69
|
backfill = "backfill",
|
|
69
70
|
chain = "chain",
|
|
71
|
+
eth1 = "eth1",
|
|
70
72
|
execution = "execution",
|
|
71
73
|
metrics = "metrics",
|
|
72
74
|
monitoring = "monitoring",
|
|
@@ -197,17 +199,6 @@ export class BeaconNode {
|
|
|
197
199
|
// TODO: Should this call be awaited?
|
|
198
200
|
await db.pruneHotDb();
|
|
199
201
|
|
|
200
|
-
// Delete deprecated eth1 data to free up disk space for users
|
|
201
|
-
logger.debug("Deleting deprecated eth1 data from database");
|
|
202
|
-
const startTime = Date.now();
|
|
203
|
-
db.deleteDeprecatedEth1Data()
|
|
204
|
-
.then(() => {
|
|
205
|
-
logger.debug("Deleted deprecated eth1 data", {durationMs: Date.now() - startTime});
|
|
206
|
-
})
|
|
207
|
-
.catch((e) => {
|
|
208
|
-
logger.error("Failed to delete deprecated eth1 data", {}, e);
|
|
209
|
-
});
|
|
210
|
-
|
|
211
202
|
const monitoring = opts.monitoring.endpoint
|
|
212
203
|
? new MonitoringService(
|
|
213
204
|
"beacon",
|
|
@@ -229,6 +220,13 @@ export class BeaconNode {
|
|
|
229
220
|
validatorMonitor,
|
|
230
221
|
anchorState,
|
|
231
222
|
isAnchorStateFinalized,
|
|
223
|
+
eth1: initializeEth1ForBlockProduction(opts.eth1, {
|
|
224
|
+
config,
|
|
225
|
+
db,
|
|
226
|
+
metrics,
|
|
227
|
+
logger: logger.child({module: LoggerModule.eth1}),
|
|
228
|
+
signal,
|
|
229
|
+
}),
|
|
232
230
|
executionEngine: initializeExecutionEngine(opts.executionEngine, {
|
|
233
231
|
metrics,
|
|
234
232
|
signal,
|
package/src/node/options.ts
CHANGED
|
@@ -2,6 +2,7 @@ import {ApiOptions, defaultApiOptions} from "../api/options.js";
|
|
|
2
2
|
import {ArchiveMode, DEFAULT_ARCHIVE_MODE, IChainOptions, defaultChainOptions} from "../chain/options.js";
|
|
3
3
|
import {ValidatorMonitorOpts, defaultValidatorMonitorOpts} from "../chain/validatorMonitor.js";
|
|
4
4
|
import {DatabaseOptions, defaultDbOptions} from "../db/options.js";
|
|
5
|
+
import {Eth1Options, defaultEth1Options} from "../eth1/options.js";
|
|
5
6
|
import {
|
|
6
7
|
ExecutionBuilderOpts,
|
|
7
8
|
ExecutionEngineOpts,
|
|
@@ -25,6 +26,7 @@ export interface IBeaconNodeOptions {
|
|
|
25
26
|
api: ApiOptions;
|
|
26
27
|
chain: IChainOptions;
|
|
27
28
|
db: DatabaseOptions;
|
|
29
|
+
eth1: Eth1Options;
|
|
28
30
|
executionEngine: ExecutionEngineOpts;
|
|
29
31
|
executionBuilder: ExecutionBuilderOpts;
|
|
30
32
|
metrics: MetricsOptions;
|
|
@@ -38,6 +40,7 @@ export const defaultOptions: IBeaconNodeOptions = {
|
|
|
38
40
|
api: defaultApiOptions,
|
|
39
41
|
chain: defaultChainOptions,
|
|
40
42
|
db: defaultDbOptions,
|
|
43
|
+
eth1: defaultEth1Options,
|
|
41
44
|
executionEngine: defaultExecutionEngineOpts,
|
|
42
45
|
executionBuilder: defaultExecutionBuilderOpts,
|
|
43
46
|
metrics: defaultMetricsOptions,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import {digest} from "@chainsafe/as-sha256";
|
|
2
2
|
import {Tree, toGindex} from "@chainsafe/persistent-merkle-tree";
|
|
3
|
-
import {ByteVectorType, CompositeViewDU, ListCompositeType} from "@chainsafe/ssz";
|
|
4
3
|
import {ChainConfig} from "@lodestar/config";
|
|
5
4
|
import {
|
|
6
5
|
BLS_WITHDRAWAL_PREFIX,
|
|
@@ -10,8 +9,7 @@ import {
|
|
|
10
9
|
} from "@lodestar/params";
|
|
11
10
|
import {ZERO_HASH, computeDomain, computeSigningRoot, interopSecretKeys} from "@lodestar/state-transition";
|
|
12
11
|
import {phase0, ssz} from "@lodestar/types";
|
|
13
|
-
|
|
14
|
-
export type DepositTree = CompositeViewDU<ListCompositeType<ByteVectorType>>;
|
|
12
|
+
import {DepositTree} from "../../../db/repositories/depositDataRoot.js";
|
|
15
13
|
|
|
16
14
|
/**
|
|
17
15
|
* Compute and return deposit data from other validators.
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
initializeBeaconStateFromEth1,
|
|
7
7
|
} from "@lodestar/state-transition";
|
|
8
8
|
import {Bytes32, TimeSeconds, phase0, ssz, sszTypesFor} from "@lodestar/types";
|
|
9
|
-
import {DepositTree} from "
|
|
9
|
+
import {DepositTree} from "../../../db/repositories/depositDataRoot.js";
|
|
10
10
|
|
|
11
11
|
export const INTEROP_BLOCK_HASH = Buffer.alloc(32, "B");
|
|
12
12
|
export const INTEROP_TIMESTAMP = Math.pow(2, 40);
|
package/src/node/utils/state.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import {ChainForkConfig} from "@lodestar/config";
|
|
2
2
|
import {BeaconStateAllForks} from "@lodestar/state-transition";
|
|
3
|
-
import {ssz} from "@lodestar/types";
|
|
3
|
+
import {phase0, ssz} from "@lodestar/types";
|
|
4
|
+
import {IBeaconDb} from "../../db/index.js";
|
|
4
5
|
import {interopDeposits} from "./interop/deposits.js";
|
|
5
6
|
import {InteropStateOpts, getInteropState} from "./interop/state.js";
|
|
6
7
|
|
|
@@ -11,12 +12,26 @@ export function initDevState(
|
|
|
11
12
|
config: ChainForkConfig,
|
|
12
13
|
validatorCount: number,
|
|
13
14
|
interopStateOpts: InteropStateOpts
|
|
14
|
-
): BeaconStateAllForks {
|
|
15
|
+
): {deposits: phase0.Deposit[]; state: BeaconStateAllForks} {
|
|
15
16
|
const deposits = interopDeposits(
|
|
16
17
|
config,
|
|
17
18
|
ssz.phase0.DepositDataRootList.defaultViewDU(),
|
|
18
19
|
validatorCount,
|
|
19
20
|
interopStateOpts
|
|
20
21
|
);
|
|
21
|
-
|
|
22
|
+
const state = getInteropState(config, interopStateOpts, deposits);
|
|
23
|
+
return {deposits, state};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export async function writeDeposits(db: IBeaconDb, deposits: phase0.Deposit[]): Promise<void> {
|
|
27
|
+
for (let i = 0; i < deposits.length; i++) {
|
|
28
|
+
await Promise.all([
|
|
29
|
+
db.depositEvent.put(i, {
|
|
30
|
+
blockNumber: i,
|
|
31
|
+
index: i,
|
|
32
|
+
depositData: deposits[i].data,
|
|
33
|
+
}),
|
|
34
|
+
db.depositDataRoot.put(i, ssz.phase0.DepositData.hashTreeRoot(deposits[i].data)),
|
|
35
|
+
]);
|
|
36
|
+
}
|
|
22
37
|
}
|
|
@@ -750,13 +750,9 @@ export class BackfillSync extends (EventEmitter as {new (): BackfillSyncEmitter}
|
|
|
750
750
|
|
|
751
751
|
// GENESIS_SLOT doesn't has valid signature
|
|
752
752
|
if (anchorBlock.message.slot === GENESIS_SLOT) return;
|
|
753
|
-
await verifyBlockProposerSignature(
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
this.chain.bls,
|
|
757
|
-
this.chain.getHeadState(),
|
|
758
|
-
[anchorBlock]
|
|
759
|
-
);
|
|
753
|
+
await verifyBlockProposerSignature(this.chain.index2pubkey, this.chain.bls, this.chain.getHeadState(), [
|
|
754
|
+
anchorBlock,
|
|
755
|
+
]);
|
|
760
756
|
|
|
761
757
|
// We can write to the disk if this is ahead of prevFinalizedCheckpointBlock otherwise
|
|
762
758
|
// we will need to go make checks on the top of sync loop before writing as it might
|
|
@@ -822,7 +818,6 @@ export class BackfillSync extends (EventEmitter as {new (): BackfillSyncEmitter}
|
|
|
822
818
|
// If any of the block's proposer signature fail, we can't trust this peer at all
|
|
823
819
|
if (verifiedBlocks.length > 0) {
|
|
824
820
|
await verifyBlockProposerSignature(
|
|
825
|
-
this.chain.config,
|
|
826
821
|
this.chain.index2pubkey,
|
|
827
822
|
this.chain.bls,
|
|
828
823
|
this.chain.getHeadState(),
|
|
@@ -46,7 +46,6 @@ export function verifyBlockSequence(
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
export async function verifyBlockProposerSignature(
|
|
49
|
-
config: BeaconConfig,
|
|
50
49
|
index2pubkey: Index2PubkeyCache,
|
|
51
50
|
bls: IBlsVerifier,
|
|
52
51
|
state: CachedBeaconStateAllForks,
|
|
@@ -55,8 +54,7 @@ export async function verifyBlockProposerSignature(
|
|
|
55
54
|
if (blocks.length === 1 && blocks[0].message.slot === GENESIS_SLOT) return;
|
|
56
55
|
const signatures = blocks.reduce((sigs: ISignatureSet[], block) => {
|
|
57
56
|
// genesis block doesn't have valid signature
|
|
58
|
-
if (block.message.slot !== GENESIS_SLOT)
|
|
59
|
-
sigs.push(getBlockProposerSignatureSet(config, index2pubkey, state, block));
|
|
57
|
+
if (block.message.slot !== GENESIS_SLOT) sigs.push(getBlockProposerSignatureSet(index2pubkey, state, block));
|
|
60
58
|
return sigs;
|
|
61
59
|
}, []);
|
|
62
60
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jsonRpcHttpClient.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jsonRpcHttpClient.js","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAC,YAAY,EAAoB,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAW,cAAc,EAAC,MAAM,UAAU,CAAC;AAGlD,MAAM,CAAN,IAAY,sBAWX;AAXD,WAAY,sBAAsB;IAChC;;;OAGG;IACH,2DAAiC,CAAA;IACjC;;;OAGG;IACH,iEAAuC,CAAA;AACzC,CAAC,EAXW,sBAAsB,KAAtB,sBAAsB,QAWjC;AAOD,MAAM,OAAO,6BAA8B,SAAS,YAElD;CAAG;AAEL;;GAEG;AACH,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AA0ClC,MAAM,OAAO,iBAAiB;IAeT;IACA;IAfX,EAAE,GAAG,CAAC,CAAC;IACf;;;;;OAKG;IACc,SAAS,CAAc;IACvB,KAAK,CAAU;IACf,UAAU,CAAU;IACpB,OAAO,CAAkC;IACjD,OAAO,GAAG,IAAI,6BAA6B,EAAE,CAAC;IAEvD,YACmB,IAAc,EACd,IAyBhB;QA1BgB,SAAI,GAAJ,IAAI,CAAU;QACd,SAAI,GAAJ,IAAI,CAyBpB;QAED,6FAA6F;QAC7F,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,KAAK,CAAC,0BAA0B,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,CAAC,0BAA0B,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,EAAE,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;QAErC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAiB,OAAsB,EAAE,IAAc;QAChE,OAAO,IAAI,CAAC,cAAc,CACxB,KAAK,IAAI,EAAE;YACT,MAAM,GAAG,GAAmB,MAAM,IAAI,CAAC,SAAS,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAC,EAAE,IAAI,CAAC,CAAC;YACpG,OAAO,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC,EACD,EAAC,OAAO,EAAC,CACV,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAiB,OAAsB,EAAE,IAAc;QAC3E,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,SAAS,CAAC;YAE3C,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAC,EAAE,IAAI,CAAC,CAAC;YAC3E,CAAC,EACD;gBACE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,CAAC;gBACjD,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU;gBACrD,WAAW,EAAE,IAAI,EAAE,WAAW;gBAC9B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM;gBACzB,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;gBAChD,CAAC;aACF,CACF,CAAC;YACF,OAAO,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAI,aAA2B,EAAE,IAAc;QAC7D,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAE1C,MAAM,MAAM,GAAqB,MAAM,IAAI,CAAC,SAAS,CACnD,aAAa,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAE,MAAM,EAAC,EAAE,EAAE,CAAC,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC,EAC1F,IAAI,CACL,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,8DAA8D;gBAC9D,IAAK,MAA2B,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACrD,MAAM,IAAI,oBAAoB,CAAC,MAA0B,EAAE,OAAO,CAAC,CAAC;gBACtE,CAAC;gBAED,MAAM,KAAK,CAAC,kCAAkC,MAAM,MAAM,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC;YAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAI,IAAsB,EAAE,OAAiB;QACvE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC,CAAC,CAAC;YACxE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,EAAC,OAAO,EAAE,KAAK,EAAE,KAAc,EAAC,CAAC,CAAC;YAClF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,SAAS,CAAiB,IAAO,EAAE,IAAc;QAC7D,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,SAAS,CAAC;QAC3C,IAAI,SAAS,GAAiB,IAAI,CAAC;QAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;YACtD,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,eAAe,CAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,SAAS,GAAG,CAAU,CAAC;gBACvB,IAAI,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAU,CAAC,EAAE,CAAC;oBAC/C,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,SAAS,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAiB,GAAW,EAAE,IAAO,EAAE,IAAc;QAChF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,eAAe,CAAC,CAAC;QAE7G,MAAM,mBAAmB,GAAG,GAAS,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;QAEhF,8DAA8D;QAC9D,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,SAAS,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,EAAE,CAAC,CAAC,CAAC;QAE/C,IAAI,CAAC;YACH,MAAM,OAAO,GAA2B,EAAC,cAAc,EAAE,kBAAkB,EAAC,CAAC;YAC7E,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB;;;;;;;mBAOG;gBACH,MAAM,QAAQ,GAAa;oBACzB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;oBAClC,EAAE,EAAE,IAAI,CAAC,KAAK;oBACd,GAAG,EAAE,IAAI,CAAC,UAAU;iBACrB,CAAC;gBAEF,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvD,OAAO,CAAC,aAAa,GAAG,UAAU,KAAK,EAAE,CAAC;YAC5C,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC3B,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,OAAO;gBACP,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,iBAAiB;gBACjB,kMAAkM;gBAClM,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAC;YACxG,CAAC;YAED,MAAM,QAAQ,GAAG,SAAS,CAAI,QAAQ,CAAC,CAAC;YACxC,WAAW,EAAE,EAAE,CAAC;YAEhB,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;YAC3C,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9B,uFAAuF;gBACvF,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBAC/B,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;gBACpC,CAAC;gBACD,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,KAAK,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,EAAE,CAAC,CAAC,CAAC;YAE/C,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;CACF;AAED,SAAS,gBAAgB,CAAO,GAAmB,EAAE,OAAsB;IACzE,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,MAAM,CAAC;IACpB,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,KAAK,CAAC,2DAA2D,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClG,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAI,IAAY;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,cAAc,CAAC,IAAI,EAAE,CAAU,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,IAAY,EAAE,CAAQ;QAChC,KAAK,CAAC,uBAAuB,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;CACF;AAED,iFAAiF;AACjF,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAmB;IAE3B,YAAY,GAAqB,EAAE,aAAqB;QACtD,MAAM,YAAY,GAChB,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;YAC3B,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACrC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO;gBACnB,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAClC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;oBACvC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExB,KAAK,CAAC,mBAAmB,YAAY,KAAK,aAAa,EAAE,CAAC,CAAC;QAE3D,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;IACtB,CAAC;CACF;AAED,oDAAoD;AACpD,MAAM,OAAO,YAAa,SAAQ,KAAK;IAE1B;IADX,YACW,MAAc,EACvB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,WAAM,GAAN,MAAM,CAAQ;IAIzB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,qBAAqB,CAAC;IAClD,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,wBAAwB,CAAC;IACrD,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,kBAAkB,CAAC;IAC/C,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,gBAAgB,CAAC;IAC7C,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,gBAAgB,CAAC;IAC7C,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,cAAc,CAAC;IAC5D,OAAO,sBAAsB,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAY;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,uBAAuB,MAAM,CAAC,GAAG,CAAC,KAAM,CAAW,CAAC,OAAO,EAAE,CAAC;IACvE,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/jwt.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AAK3C;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAE9E,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,EACvC,SAAS,GAAE,UAAoB,GAC9B,MAAM,CASR;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,EACvC,SAAS,GAAE,UAAoB,GAC9B,QAAQ,CAGV"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../src/execution/engine/jwt.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAG7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG,GAAG,CAAC;AAQ7B,MAAM,UAAU,cAAc,CAC5B,KAAe,EACf,SAAuC,EACvC,YAAwB,OAAO;IAE/B,MAAM,KAAK,GAAG,MAAM,CAClB,KAAK;IACL,sFAAsF;IACtF,4EAA4E;IAC5E,SAA8B,EAC9B,SAAS,CACV,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAa,EACb,SAAuC,EACvC,YAAwB,OAAO;IAE/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,SAA4B,EAAE,KAAK,EAAE,SAAS,CAAa,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|