@lodestar/beacon-node 1.41.0-dev.167a02a7b9 → 1.41.0-dev.1ddf8e46a9

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.
Files changed (732) hide show
  1. package/lib/api/impl/api.js.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.d.ts +1 -1
  3. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  4. package/lib/api/impl/beacon/blocks/index.js +3 -2
  5. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  6. package/lib/api/impl/beacon/blocks/utils.js.map +1 -1
  7. package/lib/api/impl/beacon/index.js.map +1 -1
  8. package/lib/api/impl/beacon/pool/index.d.ts +1 -1
  9. package/lib/api/impl/beacon/pool/index.d.ts.map +1 -1
  10. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  11. package/lib/api/impl/beacon/rewards/index.d.ts +1 -1
  12. package/lib/api/impl/beacon/rewards/index.d.ts.map +1 -1
  13. package/lib/api/impl/beacon/rewards/index.js.map +1 -1
  14. package/lib/api/impl/beacon/state/index.d.ts +1 -1
  15. package/lib/api/impl/beacon/state/index.d.ts.map +1 -1
  16. package/lib/api/impl/beacon/state/index.js.map +1 -1
  17. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  18. package/lib/api/impl/config/constants.js.map +1 -1
  19. package/lib/api/impl/config/index.js.map +1 -1
  20. package/lib/api/impl/debug/index.d.ts +1 -1
  21. package/lib/api/impl/debug/index.d.ts.map +1 -1
  22. package/lib/api/impl/debug/index.js.map +1 -1
  23. package/lib/api/impl/errors.d.ts.map +1 -1
  24. package/lib/api/impl/errors.js.map +1 -1
  25. package/lib/api/impl/events/index.d.ts +1 -1
  26. package/lib/api/impl/events/index.d.ts.map +1 -1
  27. package/lib/api/impl/events/index.js.map +1 -1
  28. package/lib/api/impl/lightclient/index.d.ts +1 -1
  29. package/lib/api/impl/lightclient/index.d.ts.map +1 -1
  30. package/lib/api/impl/lightclient/index.js.map +1 -1
  31. package/lib/api/impl/lodestar/index.d.ts +1 -1
  32. package/lib/api/impl/lodestar/index.d.ts.map +1 -1
  33. package/lib/api/impl/lodestar/index.js.map +1 -1
  34. package/lib/api/impl/node/index.js.map +1 -1
  35. package/lib/api/impl/node/utils.js.map +1 -1
  36. package/lib/api/impl/proof/index.js.map +1 -1
  37. package/lib/api/impl/utils.js.map +1 -1
  38. package/lib/api/impl/validator/index.d.ts.map +1 -1
  39. package/lib/api/impl/validator/index.js +30 -12
  40. package/lib/api/impl/validator/index.js.map +1 -1
  41. package/lib/api/impl/validator/utils.d.ts +1 -1
  42. package/lib/api/impl/validator/utils.d.ts.map +1 -1
  43. package/lib/api/impl/validator/utils.js.map +1 -1
  44. package/lib/api/rest/activeSockets.d.ts.map +1 -1
  45. package/lib/api/rest/activeSockets.js.map +1 -1
  46. package/lib/api/rest/base.d.ts.map +1 -1
  47. package/lib/api/rest/base.js.map +1 -1
  48. package/lib/api/rest/index.d.ts.map +1 -1
  49. package/lib/api/rest/index.js.map +1 -1
  50. package/lib/api/rest/swaggerUI.js.map +1 -1
  51. package/lib/bun-wrappers/prometheus-gc-stats.js.map +1 -1
  52. package/lib/chain/ColumnReconstructionTracker.d.ts.map +1 -1
  53. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  54. package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
  55. package/lib/chain/GetBlobsTracker.js.map +1 -1
  56. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  57. package/lib/chain/archiveStore/archiveStore.js +2 -1
  58. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  59. package/lib/chain/archiveStore/historicalState/getHistoricalState.js.map +1 -1
  60. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +1 -1
  61. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  62. package/lib/chain/archiveStore/historicalState/metrics.js.map +1 -1
  63. package/lib/chain/archiveStore/historicalState/types.js +2 -1
  64. package/lib/chain/archiveStore/historicalState/types.js.map +1 -1
  65. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  66. package/lib/chain/archiveStore/interface.js +2 -1
  67. package/lib/chain/archiveStore/interface.js.map +1 -1
  68. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts +1 -1
  69. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +1 -1
  70. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +2 -1
  71. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
  72. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts +3 -8
  73. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +1 -1
  74. package/lib/chain/archiveStore/utils/archiveBlocks.js +1 -1
  75. package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
  76. package/lib/chain/archiveStore/utils/archivePayloads.js.map +1 -1
  77. package/lib/chain/archiveStore/utils/pruneHistory.js.map +1 -1
  78. package/lib/chain/archiveStore/utils/updateBackfillRange.js +1 -1
  79. package/lib/chain/archiveStore/utils/updateBackfillRange.js.map +1 -1
  80. package/lib/chain/balancesCache.d.ts.map +1 -1
  81. package/lib/chain/balancesCache.js.map +1 -1
  82. package/lib/chain/beaconProposerCache.d.ts.map +1 -1
  83. package/lib/chain/beaconProposerCache.js.map +1 -1
  84. package/lib/chain/blocks/blockInput/blockInput.d.ts +5 -0
  85. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  86. package/lib/chain/blocks/blockInput/blockInput.js +24 -0
  87. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  88. package/lib/chain/blocks/blockInput/errors.js +2 -1
  89. package/lib/chain/blocks/blockInput/errors.js.map +1 -1
  90. package/lib/chain/blocks/blockInput/types.d.ts +16 -0
  91. package/lib/chain/blocks/blockInput/types.d.ts.map +1 -1
  92. package/lib/chain/blocks/blockInput/types.js +4 -2
  93. package/lib/chain/blocks/blockInput/types.js.map +1 -1
  94. package/lib/chain/blocks/blockInput/utils.js.map +1 -1
  95. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  96. package/lib/chain/blocks/importBlock.js +27 -4
  97. package/lib/chain/blocks/importBlock.js.map +1 -1
  98. package/lib/chain/blocks/index.d.ts.map +1 -1
  99. package/lib/chain/blocks/index.js.map +1 -1
  100. package/lib/chain/blocks/types.js +6 -3
  101. package/lib/chain/blocks/types.js.map +1 -1
  102. package/lib/chain/blocks/utils/chainSegment.js.map +1 -1
  103. package/lib/chain/blocks/utils/checkpoint.js.map +1 -1
  104. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  105. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  106. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  107. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
  108. package/lib/chain/blocks/verifyBlocksSanityChecks.js +4 -1
  109. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  110. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  111. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js.map +1 -1
  112. package/lib/chain/blocks/writeBlockInputToDb.d.ts +12 -3
  113. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +1 -1
  114. package/lib/chain/blocks/writeBlockInputToDb.js +92 -98
  115. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  116. package/lib/chain/bls/maybeBatch.js.map +1 -1
  117. package/lib/chain/bls/multithread/index.d.ts.map +1 -1
  118. package/lib/chain/bls/multithread/index.js.map +1 -1
  119. package/lib/chain/bls/multithread/jobItem.js +2 -1
  120. package/lib/chain/bls/multithread/jobItem.js.map +1 -1
  121. package/lib/chain/bls/multithread/types.js +2 -1
  122. package/lib/chain/bls/multithread/types.js.map +1 -1
  123. package/lib/chain/bls/multithread/utils.js.map +1 -1
  124. package/lib/chain/bls/multithread/worker.js.map +1 -1
  125. package/lib/chain/bls/singleThread.d.ts.map +1 -1
  126. package/lib/chain/bls/singleThread.js.map +1 -1
  127. package/lib/chain/bls/utils.js.map +1 -1
  128. package/lib/chain/chain.d.ts +4 -4
  129. package/lib/chain/chain.d.ts.map +1 -1
  130. package/lib/chain/chain.js +13 -12
  131. package/lib/chain/chain.js.map +1 -1
  132. package/lib/chain/emitter.d.ts +4 -6
  133. package/lib/chain/emitter.d.ts.map +1 -1
  134. package/lib/chain/emitter.js +2 -1
  135. package/lib/chain/emitter.js.map +1 -1
  136. package/lib/chain/errors/attestationError.d.ts.map +1 -1
  137. package/lib/chain/errors/attestationError.js +2 -1
  138. package/lib/chain/errors/attestationError.js.map +1 -1
  139. package/lib/chain/errors/attesterSlashingError.js +2 -1
  140. package/lib/chain/errors/attesterSlashingError.js.map +1 -1
  141. package/lib/chain/errors/blobSidecarError.js +2 -1
  142. package/lib/chain/errors/blobSidecarError.js.map +1 -1
  143. package/lib/chain/errors/blockError.d.ts.map +1 -1
  144. package/lib/chain/errors/blockError.js +2 -1
  145. package/lib/chain/errors/blockError.js.map +1 -1
  146. package/lib/chain/errors/blsToExecutionChangeError.js +2 -1
  147. package/lib/chain/errors/blsToExecutionChangeError.js.map +1 -1
  148. package/lib/chain/errors/dataColumnSidecarError.js +2 -1
  149. package/lib/chain/errors/dataColumnSidecarError.js.map +1 -1
  150. package/lib/chain/errors/executionPayloadBid.d.ts +1 -1
  151. package/lib/chain/errors/executionPayloadBid.js +2 -1
  152. package/lib/chain/errors/executionPayloadBid.js.map +1 -1
  153. package/lib/chain/errors/executionPayloadEnvelope.d.ts +2 -2
  154. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
  155. package/lib/chain/errors/executionPayloadEnvelope.js +2 -1
  156. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
  157. package/lib/chain/errors/gossipValidation.d.ts.map +1 -1
  158. package/lib/chain/errors/gossipValidation.js +4 -2
  159. package/lib/chain/errors/gossipValidation.js.map +1 -1
  160. package/lib/chain/errors/lightClientError.js +4 -2
  161. package/lib/chain/errors/lightClientError.js.map +1 -1
  162. package/lib/chain/errors/payloadAttestation.d.ts +1 -1
  163. package/lib/chain/errors/payloadAttestation.js +2 -1
  164. package/lib/chain/errors/payloadAttestation.js.map +1 -1
  165. package/lib/chain/errors/proposerSlashingError.js +2 -1
  166. package/lib/chain/errors/proposerSlashingError.js.map +1 -1
  167. package/lib/chain/errors/syncCommitteeError.js +2 -1
  168. package/lib/chain/errors/syncCommitteeError.js.map +1 -1
  169. package/lib/chain/errors/voluntaryExitError.js +2 -1
  170. package/lib/chain/errors/voluntaryExitError.js.map +1 -1
  171. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  172. package/lib/chain/forkChoice/index.js +32 -25
  173. package/lib/chain/forkChoice/index.js.map +1 -1
  174. package/lib/chain/initState.d.ts +1 -1
  175. package/lib/chain/initState.d.ts.map +1 -1
  176. package/lib/chain/initState.js.map +1 -1
  177. package/lib/chain/interface.js +2 -1
  178. package/lib/chain/interface.js.map +1 -1
  179. package/lib/chain/lightClient/index.d.ts +0 -29
  180. package/lib/chain/lightClient/index.d.ts.map +1 -1
  181. package/lib/chain/lightClient/index.js.map +1 -1
  182. package/lib/chain/lightClient/proofs.js.map +1 -1
  183. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  184. package/lib/chain/opPools/aggregatedAttestationPool.js +5 -3
  185. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  186. package/lib/chain/opPools/attestationPool.d.ts.map +1 -1
  187. package/lib/chain/opPools/attestationPool.js.map +1 -1
  188. package/lib/chain/opPools/executionPayloadBidPool.d.ts.map +1 -1
  189. package/lib/chain/opPools/executionPayloadBidPool.js.map +1 -1
  190. package/lib/chain/opPools/opPool.d.ts.map +1 -1
  191. package/lib/chain/opPools/opPool.js.map +1 -1
  192. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -1
  193. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -1
  194. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +1 -1
  195. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  196. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +1 -1
  197. package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
  198. package/lib/chain/opPools/types.js +4 -2
  199. package/lib/chain/opPools/types.js.map +1 -1
  200. package/lib/chain/opPools/utils.js.map +1 -1
  201. package/lib/chain/prepareNextSlot.d.ts +1 -2
  202. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  203. package/lib/chain/prepareNextSlot.js.map +1 -1
  204. package/lib/chain/produceBlock/computeNewStateRoot.d.ts +0 -1
  205. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +1 -1
  206. package/lib/chain/produceBlock/computeNewStateRoot.js +4 -3
  207. package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
  208. package/lib/chain/produceBlock/produceBlockBody.d.ts +1 -1
  209. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  210. package/lib/chain/produceBlock/produceBlockBody.js +7 -5
  211. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  212. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.js.map +1 -1
  213. package/lib/chain/regen/errors.d.ts.map +1 -1
  214. package/lib/chain/regen/errors.js +2 -1
  215. package/lib/chain/regen/errors.js.map +1 -1
  216. package/lib/chain/regen/interface.js +4 -2
  217. package/lib/chain/regen/interface.js.map +1 -1
  218. package/lib/chain/regen/queued.d.ts.map +1 -1
  219. package/lib/chain/regen/queued.js +4 -1
  220. package/lib/chain/regen/queued.js.map +1 -1
  221. package/lib/chain/regen/regen.d.ts.map +1 -1
  222. package/lib/chain/regen/regen.js +6 -2
  223. package/lib/chain/regen/regen.js.map +1 -1
  224. package/lib/chain/reprocess.d.ts.map +1 -1
  225. package/lib/chain/reprocess.js +2 -1
  226. package/lib/chain/reprocess.js.map +1 -1
  227. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +1 -1
  228. package/lib/chain/seenCache/seenAggregateAndProof.js.map +1 -1
  229. package/lib/chain/seenCache/seenAttestationData.d.ts.map +1 -1
  230. package/lib/chain/seenCache/seenAttestationData.js +2 -1
  231. package/lib/chain/seenCache/seenAttestationData.js.map +1 -1
  232. package/lib/chain/seenCache/seenAttesters.d.ts.map +1 -1
  233. package/lib/chain/seenCache/seenAttesters.js.map +1 -1
  234. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +1 -1
  235. package/lib/chain/seenCache/seenBlockAttesters.js.map +1 -1
  236. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +1 -1
  237. package/lib/chain/seenCache/seenBlockProposers.js.map +1 -1
  238. package/lib/chain/seenCache/seenCommittee.d.ts.map +1 -1
  239. package/lib/chain/seenCache/seenCommittee.js.map +1 -1
  240. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +1 -1
  241. package/lib/chain/seenCache/seenCommitteeContribution.js.map +1 -1
  242. package/lib/chain/seenCache/seenExecutionPayloadBids.d.ts.map +1 -1
  243. package/lib/chain/seenCache/seenExecutionPayloadBids.js.map +1 -1
  244. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts.map +1 -1
  245. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js.map +1 -1
  246. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +7 -3
  247. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  248. package/lib/chain/seenCache/seenGossipBlockInput.js +23 -9
  249. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  250. package/lib/chain/serializeState.js +1 -0
  251. package/lib/chain/serializeState.js.map +1 -1
  252. package/lib/chain/shufflingCache.d.ts.map +1 -1
  253. package/lib/chain/shufflingCache.js +2 -1
  254. package/lib/chain/shufflingCache.js.map +1 -1
  255. package/lib/chain/stateCache/datastore/db.d.ts.map +1 -1
  256. package/lib/chain/stateCache/datastore/db.js.map +1 -1
  257. package/lib/chain/stateCache/datastore/file.d.ts.map +1 -1
  258. package/lib/chain/stateCache/datastore/file.js.map +1 -1
  259. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +1 -1
  260. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  261. package/lib/chain/stateCache/mapMetrics.d.ts.map +1 -1
  262. package/lib/chain/stateCache/mapMetrics.js.map +1 -1
  263. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +1 -41
  264. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
  265. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  266. package/lib/chain/stateCache/types.js +2 -1
  267. package/lib/chain/stateCache/types.js.map +1 -1
  268. package/lib/chain/validation/aggregateAndProof.js +1 -1
  269. package/lib/chain/validation/aggregateAndProof.js.map +1 -1
  270. package/lib/chain/validation/attestation.d.ts.map +1 -1
  271. package/lib/chain/validation/attestation.js +10 -6
  272. package/lib/chain/validation/attestation.js.map +1 -1
  273. package/lib/chain/validation/attesterSlashing.d.ts.map +1 -1
  274. package/lib/chain/validation/attesterSlashing.js +8 -1
  275. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  276. package/lib/chain/validation/blobSidecar.js +2 -2
  277. package/lib/chain/validation/blobSidecar.js.map +1 -1
  278. package/lib/chain/validation/block.d.ts.map +1 -1
  279. package/lib/chain/validation/block.js +6 -3
  280. package/lib/chain/validation/block.js.map +1 -1
  281. package/lib/chain/validation/blsToExecutionChange.js.map +1 -1
  282. package/lib/chain/validation/dataColumnSidecar.js +1 -1
  283. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  284. package/lib/chain/validation/executionPayloadBid.js +1 -2
  285. package/lib/chain/validation/executionPayloadBid.js.map +1 -1
  286. package/lib/chain/validation/executionPayloadEnvelope.js +4 -4
  287. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
  288. package/lib/chain/validation/lightClientFinalityUpdate.js.map +1 -1
  289. package/lib/chain/validation/lightClientOptimisticUpdate.js.map +1 -1
  290. package/lib/chain/validation/payloadAttestationMessage.js +1 -2
  291. package/lib/chain/validation/payloadAttestationMessage.js.map +1 -1
  292. package/lib/chain/validation/proposerSlashing.js.map +1 -1
  293. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  294. package/lib/chain/validation/signatureSets/contributionAndProof.js.map +1 -1
  295. package/lib/chain/validation/signatureSets/selectionProof.js.map +1 -1
  296. package/lib/chain/validation/signatureSets/syncCommittee.js.map +1 -1
  297. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js.map +1 -1
  298. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js.map +1 -1
  299. package/lib/chain/validation/syncCommittee.js.map +1 -1
  300. package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
  301. package/lib/chain/validation/voluntaryExit.js.map +1 -1
  302. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  303. package/lib/chain/validatorMonitor.js +2 -1
  304. package/lib/chain/validatorMonitor.js.map +1 -1
  305. package/lib/constants/network.js +4 -2
  306. package/lib/constants/network.js.map +1 -1
  307. package/lib/db/beacon.d.ts.map +1 -1
  308. package/lib/db/beacon.js.map +1 -1
  309. package/lib/db/buckets.d.ts +23 -23
  310. package/lib/db/buckets.d.ts.map +1 -1
  311. package/lib/db/buckets.js +2 -1
  312. package/lib/db/buckets.js.map +1 -1
  313. package/lib/db/index.d.ts +1 -0
  314. package/lib/db/index.d.ts.map +1 -1
  315. package/lib/db/index.js +1 -0
  316. package/lib/db/index.js.map +1 -1
  317. package/lib/db/repositories/attesterSlashing.d.ts.map +1 -1
  318. package/lib/db/repositories/attesterSlashing.js.map +1 -1
  319. package/lib/db/repositories/backfilledRanges.d.ts.map +1 -1
  320. package/lib/db/repositories/backfilledRanges.js.map +1 -1
  321. package/lib/db/repositories/blobSidecars.d.ts.map +1 -1
  322. package/lib/db/repositories/blobSidecars.js.map +1 -1
  323. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +1 -1
  324. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  325. package/lib/db/repositories/block.d.ts.map +1 -1
  326. package/lib/db/repositories/block.js.map +1 -1
  327. package/lib/db/repositories/blockArchive.d.ts.map +1 -1
  328. package/lib/db/repositories/blockArchive.js.map +1 -1
  329. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  330. package/lib/db/repositories/blockArchiveIndex.js.map +1 -1
  331. package/lib/db/repositories/blsToExecutionChange.d.ts.map +1 -1
  332. package/lib/db/repositories/blsToExecutionChange.js.map +1 -1
  333. package/lib/db/repositories/checkpointState.d.ts.map +1 -1
  334. package/lib/db/repositories/checkpointState.js.map +1 -1
  335. package/lib/db/repositories/dataColumnSidecar.d.ts.map +1 -1
  336. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  337. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +1 -1
  338. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  339. package/lib/db/repositories/executionPayloadEnvelope.d.ts.map +1 -1
  340. package/lib/db/repositories/executionPayloadEnvelope.js.map +1 -1
  341. package/lib/db/repositories/executionPayloadEnvelopeArchive.d.ts.map +1 -1
  342. package/lib/db/repositories/executionPayloadEnvelopeArchive.js.map +1 -1
  343. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +1 -1
  344. package/lib/db/repositories/lightclientBestUpdate.js.map +1 -1
  345. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +1 -1
  346. package/lib/db/repositories/lightclientCheckpointHeader.js.map +1 -1
  347. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +1 -1
  348. package/lib/db/repositories/lightclientSyncCommittee.js.map +1 -1
  349. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +1 -1
  350. package/lib/db/repositories/lightclientSyncCommitteeWitness.js.map +1 -1
  351. package/lib/db/repositories/proposerSlashing.d.ts.map +1 -1
  352. package/lib/db/repositories/proposerSlashing.js.map +1 -1
  353. package/lib/db/repositories/stateArchive.d.ts.map +1 -1
  354. package/lib/db/repositories/stateArchive.js.map +1 -1
  355. package/lib/db/repositories/stateArchiveIndex.js.map +1 -1
  356. package/lib/db/repositories/voluntaryExit.d.ts.map +1 -1
  357. package/lib/db/repositories/voluntaryExit.js.map +1 -1
  358. package/lib/execution/builder/cache.d.ts.map +1 -1
  359. package/lib/execution/builder/cache.js.map +1 -1
  360. package/lib/execution/builder/http.d.ts.map +1 -1
  361. package/lib/execution/builder/http.js +2 -1
  362. package/lib/execution/builder/http.js.map +1 -1
  363. package/lib/execution/builder/index.js.map +1 -1
  364. package/lib/execution/builder/utils.js.map +1 -1
  365. package/lib/execution/engine/disabled.d.ts.map +1 -1
  366. package/lib/execution/engine/disabled.js.map +1 -1
  367. package/lib/execution/engine/http.d.ts.map +1 -1
  368. package/lib/execution/engine/http.js.map +1 -1
  369. package/lib/execution/engine/index.js.map +1 -1
  370. package/lib/execution/engine/interface.js +4 -2
  371. package/lib/execution/engine/interface.js.map +1 -1
  372. package/lib/execution/engine/jsonRpcHttpClient.d.ts +10 -15
  373. package/lib/execution/engine/jsonRpcHttpClient.d.ts.map +1 -1
  374. package/lib/execution/engine/jsonRpcHttpClient.js +2 -1
  375. package/lib/execution/engine/jsonRpcHttpClient.js.map +1 -1
  376. package/lib/execution/engine/jwt.js.map +1 -1
  377. package/lib/execution/engine/mock.d.ts.map +1 -1
  378. package/lib/execution/engine/mock.js.map +1 -1
  379. package/lib/execution/engine/payloadIdCache.d.ts.map +1 -1
  380. package/lib/execution/engine/payloadIdCache.js.map +1 -1
  381. package/lib/execution/engine/types.js.map +1 -1
  382. package/lib/execution/engine/utils.d.ts +1 -1
  383. package/lib/execution/engine/utils.d.ts.map +1 -1
  384. package/lib/execution/engine/utils.js.map +1 -1
  385. package/lib/metrics/metrics/beacon.d.ts.map +1 -1
  386. package/lib/metrics/metrics/beacon.js.map +1 -1
  387. package/lib/metrics/metrics/lodestar.d.ts +8 -6
  388. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  389. package/lib/metrics/metrics/lodestar.js +18 -10
  390. package/lib/metrics/metrics/lodestar.js.map +1 -1
  391. package/lib/metrics/metrics.js.map +1 -1
  392. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  393. package/lib/metrics/server/http.d.ts +1 -1
  394. package/lib/metrics/server/http.d.ts.map +1 -1
  395. package/lib/metrics/server/http.js.map +1 -1
  396. package/lib/metrics/utils/avgMinMax.d.ts.map +1 -1
  397. package/lib/metrics/utils/avgMinMax.js.map +1 -1
  398. package/lib/metrics/utils/gauge.d.ts.map +1 -1
  399. package/lib/metrics/utils/gauge.js.map +1 -1
  400. package/lib/metrics/utils/registryMetricCreator.d.ts.map +1 -1
  401. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  402. package/lib/monitoring/clientStats.js.map +1 -1
  403. package/lib/monitoring/properties.d.ts.map +1 -1
  404. package/lib/monitoring/properties.js.map +1 -1
  405. package/lib/monitoring/service.d.ts.map +1 -1
  406. package/lib/monitoring/service.js.map +1 -1
  407. package/lib/monitoring/system.d.ts.map +1 -1
  408. package/lib/monitoring/system.js.map +1 -1
  409. package/lib/monitoring/types.js +4 -2
  410. package/lib/monitoring/types.js.map +1 -1
  411. package/lib/network/core/events.d.ts +1 -3
  412. package/lib/network/core/events.d.ts.map +1 -1
  413. package/lib/network/core/events.js +4 -2
  414. package/lib/network/core/events.js.map +1 -1
  415. package/lib/network/core/metrics.d.ts +6 -7
  416. package/lib/network/core/metrics.d.ts.map +1 -1
  417. package/lib/network/core/metrics.js.map +1 -1
  418. package/lib/network/core/networkCore.d.ts +1 -1
  419. package/lib/network/core/networkCore.d.ts.map +1 -1
  420. package/lib/network/core/networkCore.js.map +1 -1
  421. package/lib/network/core/networkCoreWorker.js.map +1 -1
  422. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +1 -1
  423. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  424. package/lib/network/discv5/index.d.ts +1 -3
  425. package/lib/network/discv5/index.d.ts.map +1 -1
  426. package/lib/network/discv5/index.js.map +1 -1
  427. package/lib/network/discv5/utils.js +2 -1
  428. package/lib/network/discv5/utils.js.map +1 -1
  429. package/lib/network/discv5/worker.js.map +1 -1
  430. package/lib/network/events.d.ts +1 -3
  431. package/lib/network/events.d.ts.map +1 -1
  432. package/lib/network/events.js +4 -2
  433. package/lib/network/events.js.map +1 -1
  434. package/lib/network/forks.js.map +1 -1
  435. package/lib/network/gossip/encoding.d.ts.map +1 -1
  436. package/lib/network/gossip/encoding.js.map +1 -1
  437. package/lib/network/gossip/errors.d.ts.map +1 -1
  438. package/lib/network/gossip/errors.js.map +1 -1
  439. package/lib/network/gossip/gossipsub.d.ts.map +1 -1
  440. package/lib/network/gossip/gossipsub.js.map +1 -1
  441. package/lib/network/gossip/interface.js +4 -2
  442. package/lib/network/gossip/interface.js.map +1 -1
  443. package/lib/network/gossip/metrics.d.ts +12 -14
  444. package/lib/network/gossip/metrics.d.ts.map +1 -1
  445. package/lib/network/gossip/metrics.js.map +1 -1
  446. package/lib/network/gossip/scoringParameters.d.ts +1 -1
  447. package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
  448. package/lib/network/gossip/scoringParameters.js.map +1 -1
  449. package/lib/network/gossip/topic.d.ts +2867 -2920
  450. package/lib/network/gossip/topic.d.ts.map +1 -1
  451. package/lib/network/gossip/topic.js.map +1 -1
  452. package/lib/network/libp2p/error.js +2 -1
  453. package/lib/network/libp2p/error.js.map +1 -1
  454. package/lib/network/libp2p/index.d.ts.map +1 -1
  455. package/lib/network/libp2p/index.js +7 -22
  456. package/lib/network/libp2p/index.js.map +1 -1
  457. package/lib/network/metadata.d.ts.map +1 -1
  458. package/lib/network/metadata.js +4 -2
  459. package/lib/network/metadata.js.map +1 -1
  460. package/lib/network/network.d.ts +1 -1
  461. package/lib/network/network.d.ts.map +1 -1
  462. package/lib/network/network.js +1 -1
  463. package/lib/network/network.js.map +1 -1
  464. package/lib/network/peers/client.js +2 -1
  465. package/lib/network/peers/client.js.map +1 -1
  466. package/lib/network/peers/datastore.d.ts +0 -3
  467. package/lib/network/peers/datastore.d.ts.map +1 -1
  468. package/lib/network/peers/datastore.js.map +1 -1
  469. package/lib/network/peers/discover.d.ts +0 -7
  470. package/lib/network/peers/discover.d.ts.map +1 -1
  471. package/lib/network/peers/discover.js +4 -2
  472. package/lib/network/peers/discover.js.map +1 -1
  473. package/lib/network/peers/peerManager.d.ts +0 -1
  474. package/lib/network/peers/peerManager.d.ts.map +1 -1
  475. package/lib/network/peers/peerManager.js.map +1 -1
  476. package/lib/network/peers/peersData.d.ts.map +1 -1
  477. package/lib/network/peers/peersData.js +2 -1
  478. package/lib/network/peers/peersData.js.map +1 -1
  479. package/lib/network/peers/score/interface.js +4 -2
  480. package/lib/network/peers/score/interface.js.map +1 -1
  481. package/lib/network/peers/score/score.d.ts.map +1 -1
  482. package/lib/network/peers/score/score.js.map +1 -1
  483. package/lib/network/peers/score/store.d.ts.map +1 -1
  484. package/lib/network/peers/score/store.js.map +1 -1
  485. package/lib/network/peers/score/utils.js.map +1 -1
  486. package/lib/network/peers/utils/assertPeerRelevance.js +2 -1
  487. package/lib/network/peers/utils/assertPeerRelevance.js.map +1 -1
  488. package/lib/network/peers/utils/enrSubnetsDeserialize.js.map +1 -1
  489. package/lib/network/peers/utils/getConnectedPeerIds.js.map +1 -1
  490. package/lib/network/peers/utils/prioritizePeers.js +2 -1
  491. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  492. package/lib/network/peers/utils/subnetMap.d.ts.map +1 -1
  493. package/lib/network/peers/utils/subnetMap.js.map +1 -1
  494. package/lib/network/processor/aggregatorTracker.d.ts.map +1 -1
  495. package/lib/network/processor/aggregatorTracker.js.map +1 -1
  496. package/lib/network/processor/extractSlotRootFns.js.map +1 -1
  497. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  498. package/lib/network/processor/gossipHandlers.js +1 -0
  499. package/lib/network/processor/gossipHandlers.js.map +1 -1
  500. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  501. package/lib/network/processor/gossipQueues/indexed.d.ts.map +1 -1
  502. package/lib/network/processor/gossipQueues/indexed.js.map +1 -1
  503. package/lib/network/processor/gossipQueues/linear.d.ts.map +1 -1
  504. package/lib/network/processor/gossipQueues/linear.js.map +1 -1
  505. package/lib/network/processor/gossipQueues/types.js +4 -2
  506. package/lib/network/processor/gossipQueues/types.js.map +1 -1
  507. package/lib/network/processor/gossipValidatorFn.js.map +1 -1
  508. package/lib/network/processor/index.d.ts.map +1 -1
  509. package/lib/network/processor/index.js +4 -2
  510. package/lib/network/processor/index.js.map +1 -1
  511. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +1 -1
  512. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  513. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
  514. package/lib/network/reqresp/handlers/beaconBlocksByRange.js +3 -2
  515. package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
  516. package/lib/network/reqresp/handlers/beaconBlocksByRoot.js.map +1 -1
  517. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +1 -1
  518. package/lib/network/reqresp/handlers/blobSidecarsByRange.js +3 -2
  519. package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +1 -1
  520. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +1 -1
  521. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +1 -1
  522. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +1 -1
  523. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +3 -2
  524. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -1
  525. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js +1 -1
  526. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  527. package/lib/network/reqresp/handlers/index.js.map +1 -1
  528. package/lib/network/reqresp/handlers/lightClientBootstrap.js.map +1 -1
  529. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.js.map +1 -1
  530. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.js.map +1 -1
  531. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.js.map +1 -1
  532. package/lib/network/reqresp/interface.js +2 -1
  533. package/lib/network/reqresp/interface.js.map +1 -1
  534. package/lib/network/reqresp/protocols.d.ts.map +1 -1
  535. package/lib/network/reqresp/protocols.js.map +1 -1
  536. package/lib/network/reqresp/rateLimit.js.map +1 -1
  537. package/lib/network/reqresp/score.js.map +1 -1
  538. package/lib/network/reqresp/types.js +4 -2
  539. package/lib/network/reqresp/types.js.map +1 -1
  540. package/lib/network/reqresp/utils/collect.d.ts +1 -1
  541. package/lib/network/reqresp/utils/collect.js.map +1 -1
  542. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts +1 -1
  543. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.js +2 -1
  544. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.js.map +1 -1
  545. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts +1 -1
  546. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +1 -1
  547. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  548. package/lib/network/statusCache.d.ts.map +1 -1
  549. package/lib/network/statusCache.js.map +1 -1
  550. package/lib/network/subnets/attnetsService.d.ts.map +1 -1
  551. package/lib/network/subnets/attnetsService.js +2 -1
  552. package/lib/network/subnets/attnetsService.js.map +1 -1
  553. package/lib/network/subnets/interface.js.map +1 -1
  554. package/lib/network/subnets/syncnetsService.d.ts.map +1 -1
  555. package/lib/network/subnets/syncnetsService.js.map +1 -1
  556. package/lib/network/subnets/util.js.map +1 -1
  557. package/lib/network/util.js.map +1 -1
  558. package/lib/node/nodejs.d.ts +2 -2
  559. package/lib/node/nodejs.d.ts.map +1 -1
  560. package/lib/node/nodejs.js +2 -1
  561. package/lib/node/nodejs.js.map +1 -1
  562. package/lib/node/notifier.js.map +1 -1
  563. package/lib/node/utils/interop/deposits.js.map +1 -1
  564. package/lib/node/utils/interop/state.d.ts +1 -1
  565. package/lib/node/utils/interop/state.d.ts.map +1 -1
  566. package/lib/node/utils/interop/state.js.map +1 -1
  567. package/lib/node/utils/lightclient.js.map +1 -1
  568. package/lib/node/utils/state.js.map +1 -1
  569. package/lib/sync/backfill/backfill.d.ts +1 -10
  570. package/lib/sync/backfill/backfill.d.ts.map +1 -1
  571. package/lib/sync/backfill/backfill.js +6 -3
  572. package/lib/sync/backfill/backfill.js.map +1 -1
  573. package/lib/sync/backfill/errors.js +2 -1
  574. package/lib/sync/backfill/errors.js.map +1 -1
  575. package/lib/sync/backfill/verify.js.map +1 -1
  576. package/lib/sync/interface.js +2 -1
  577. package/lib/sync/interface.js.map +1 -1
  578. package/lib/sync/range/batch.d.ts.map +1 -1
  579. package/lib/sync/range/batch.js +4 -2
  580. package/lib/sync/range/batch.js.map +1 -1
  581. package/lib/sync/range/chain.d.ts +0 -10
  582. package/lib/sync/range/chain.d.ts.map +1 -1
  583. package/lib/sync/range/chain.js +2 -1
  584. package/lib/sync/range/chain.js.map +1 -1
  585. package/lib/sync/range/range.d.ts +1 -3
  586. package/lib/sync/range/range.d.ts.map +1 -1
  587. package/lib/sync/range/range.js +4 -2
  588. package/lib/sync/range/range.js.map +1 -1
  589. package/lib/sync/range/utils/batches.js.map +1 -1
  590. package/lib/sync/range/utils/chainTarget.js.map +1 -1
  591. package/lib/sync/range/utils/hashBlocks.js.map +1 -1
  592. package/lib/sync/range/utils/peerBalancer.d.ts.map +1 -1
  593. package/lib/sync/range/utils/peerBalancer.js.map +1 -1
  594. package/lib/sync/range/utils/updateChains.js.map +1 -1
  595. package/lib/sync/sync.d.ts.map +1 -1
  596. package/lib/sync/sync.js.map +1 -1
  597. package/lib/sync/types.js +4 -2
  598. package/lib/sync/types.js.map +1 -1
  599. package/lib/sync/unknownBlock.d.ts +0 -14
  600. package/lib/sync/unknownBlock.d.ts.map +1 -1
  601. package/lib/sync/unknownBlock.js.map +1 -1
  602. package/lib/sync/utils/downloadByRange.d.ts +4 -4
  603. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  604. package/lib/sync/utils/downloadByRange.js +2 -1
  605. package/lib/sync/utils/downloadByRange.js.map +1 -1
  606. package/lib/sync/utils/downloadByRoot.d.ts +8 -8
  607. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  608. package/lib/sync/utils/downloadByRoot.js +2 -1
  609. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  610. package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
  611. package/lib/sync/utils/remoteSyncType.d.ts +1 -1
  612. package/lib/sync/utils/remoteSyncType.d.ts.map +1 -1
  613. package/lib/sync/utils/remoteSyncType.js +4 -2
  614. package/lib/sync/utils/remoteSyncType.js.map +1 -1
  615. package/lib/util/address.js.map +1 -1
  616. package/lib/util/array.d.ts.map +1 -1
  617. package/lib/util/array.js.map +1 -1
  618. package/lib/util/asyncIterableToEvents.d.ts.map +1 -1
  619. package/lib/util/asyncIterableToEvents.js +2 -1
  620. package/lib/util/asyncIterableToEvents.js.map +1 -1
  621. package/lib/util/binarySearch.d.ts.map +1 -1
  622. package/lib/util/binarySearch.js.map +1 -1
  623. package/lib/util/bitArray.js +2 -1
  624. package/lib/util/bitArray.js.map +1 -1
  625. package/lib/util/blobs.js.map +1 -1
  626. package/lib/util/bufferPool.d.ts.map +1 -1
  627. package/lib/util/bufferPool.js +2 -1
  628. package/lib/util/bufferPool.js.map +1 -1
  629. package/lib/util/chunkify.js.map +1 -1
  630. package/lib/util/clock.d.ts.map +1 -1
  631. package/lib/util/clock.js +2 -1
  632. package/lib/util/clock.js.map +1 -1
  633. package/lib/util/dataColumns.d.ts.map +1 -1
  634. package/lib/util/dataColumns.js +4 -2
  635. package/lib/util/dataColumns.js.map +1 -1
  636. package/lib/util/dependentRoot.js.map +1 -1
  637. package/lib/util/enum.js.map +1 -1
  638. package/lib/util/error.js.map +1 -1
  639. package/lib/util/eventLoop.js.map +1 -1
  640. package/lib/util/execution.js +2 -1
  641. package/lib/util/execution.js.map +1 -1
  642. package/lib/util/file.js.map +1 -1
  643. package/lib/util/forkChoice.js.map +1 -1
  644. package/lib/util/forkName.js.map +1 -1
  645. package/lib/util/graffiti.js.map +1 -1
  646. package/lib/util/hex.js.map +1 -1
  647. package/lib/util/ip.js.map +1 -1
  648. package/lib/util/itTrigger.d.ts.map +1 -1
  649. package/lib/util/itTrigger.js.map +1 -1
  650. package/lib/util/map.d.ts.map +1 -1
  651. package/lib/util/map.js.map +1 -1
  652. package/lib/util/metadata.js.map +1 -1
  653. package/lib/util/multifork.js.map +1 -1
  654. package/lib/util/numpy.js.map +1 -1
  655. package/lib/util/peerId.js.map +1 -1
  656. package/lib/util/profile.js +2 -1
  657. package/lib/util/profile.js.map +1 -1
  658. package/lib/util/promises.js.map +1 -1
  659. package/lib/util/queue/errors.js +2 -1
  660. package/lib/util/queue/errors.js.map +1 -1
  661. package/lib/util/queue/fnQueue.d.ts.map +1 -1
  662. package/lib/util/queue/fnQueue.js.map +1 -1
  663. package/lib/util/queue/itemQueue.d.ts.map +1 -1
  664. package/lib/util/queue/itemQueue.js.map +1 -1
  665. package/lib/util/queue/options.js +2 -1
  666. package/lib/util/queue/options.js.map +1 -1
  667. package/lib/util/serializedCache.d.ts +4 -4
  668. package/lib/util/serializedCache.d.ts.map +1 -1
  669. package/lib/util/serializedCache.js +6 -4
  670. package/lib/util/serializedCache.js.map +1 -1
  671. package/lib/util/set.d.ts.map +1 -1
  672. package/lib/util/set.js.map +1 -1
  673. package/lib/util/shuffle.js.map +1 -1
  674. package/lib/util/sortBy.js.map +1 -1
  675. package/lib/util/sszBytes.js.map +1 -1
  676. package/lib/util/time.js.map +1 -1
  677. package/lib/util/timeSeries.d.ts.map +1 -1
  678. package/lib/util/timeSeries.js.map +1 -1
  679. package/lib/util/types.d.ts.map +1 -1
  680. package/lib/util/workerEvents.d.ts +1 -1
  681. package/lib/util/workerEvents.d.ts.map +1 -1
  682. package/lib/util/workerEvents.js.map +1 -1
  683. package/lib/util/wrapError.js.map +1 -1
  684. package/package.json +28 -28
  685. package/src/api/impl/beacon/blocks/index.ts +3 -2
  686. package/src/api/impl/validator/index.ts +26 -12
  687. package/src/chain/archiveStore/archiveStore.ts +5 -5
  688. package/src/chain/archiveStore/utils/archiveBlocks.ts +4 -5
  689. package/src/chain/archiveStore/utils/updateBackfillRange.ts +1 -1
  690. package/src/chain/blocks/blockInput/blockInput.ts +35 -0
  691. package/src/chain/blocks/blockInput/types.ts +17 -0
  692. package/src/chain/blocks/importBlock.ts +35 -4
  693. package/src/chain/blocks/verifyBlocksSanityChecks.ts +7 -2
  694. package/src/chain/blocks/writeBlockInputToDb.ts +105 -104
  695. package/src/chain/chain.ts +31 -19
  696. package/src/chain/emitter.ts +3 -3
  697. package/src/chain/errors/executionPayloadBid.ts +1 -1
  698. package/src/chain/errors/executionPayloadEnvelope.ts +6 -2
  699. package/src/chain/errors/payloadAttestation.ts +1 -1
  700. package/src/chain/forkChoice/index.ts +39 -21
  701. package/src/chain/opPools/aggregatedAttestationPool.ts +1 -1
  702. package/src/chain/produceBlock/computeNewStateRoot.ts +4 -3
  703. package/src/chain/produceBlock/produceBlockBody.ts +1 -2
  704. package/src/chain/regen/queued.ts +7 -2
  705. package/src/chain/regen/regen.ts +9 -3
  706. package/src/chain/seenCache/seenGossipBlockInput.ts +40 -11
  707. package/src/chain/validation/aggregateAndProof.ts +1 -1
  708. package/src/chain/validation/attestation.ts +10 -6
  709. package/src/chain/validation/attesterSlashing.ts +9 -0
  710. package/src/chain/validation/blobSidecar.ts +2 -2
  711. package/src/chain/validation/block.ts +9 -4
  712. package/src/chain/validation/dataColumnSidecar.ts +1 -1
  713. package/src/chain/validation/executionPayloadBid.ts +1 -2
  714. package/src/chain/validation/executionPayloadEnvelope.ts +4 -4
  715. package/src/chain/validation/payloadAttestationMessage.ts +1 -2
  716. package/src/db/index.ts +1 -0
  717. package/src/metrics/metrics/lodestar.ts +18 -10
  718. package/src/network/libp2p/index.ts +7 -25
  719. package/src/network/network.ts +2 -1
  720. package/src/network/processor/gossipHandlers.ts +6 -1
  721. package/src/network/processor/gossipValidatorFn.ts +1 -1
  722. package/src/network/reqresp/ReqRespBeaconNode.ts +1 -1
  723. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +4 -3
  724. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +3 -2
  725. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +1 -1
  726. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +4 -3
  727. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +2 -2
  728. package/src/network/reqresp/utils/collect.ts +1 -1
  729. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +1 -1
  730. package/src/sync/utils/downloadByRoot.ts +1 -1
  731. package/src/sync/utils/remoteSyncType.ts +1 -1
  732. package/src/util/serializedCache.ts +7 -5
@@ -2,6 +2,7 @@ import {
2
2
  assertValidAttesterSlashing,
3
3
  getAttesterSlashableIndices,
4
4
  getAttesterSlashingSignatureSets,
5
+ isSlashableValidator,
5
6
  } from "@lodestar/state-transition";
6
7
  import {AttesterSlashing} from "@lodestar/types";
7
8
  import {AttesterSlashingError, AttesterSlashingErrorCode, GossipAction} from "../errors/index.js";
@@ -58,6 +59,14 @@ export async function validateAttesterSlashing(
58
59
  });
59
60
  }
60
61
 
62
+ const currentEpoch = state.epochCtx.epoch;
63
+ if (!intersectingIndices.some((index) => isSlashableValidator(state.validators.getReadonly(index), currentEpoch))) {
64
+ throw new AttesterSlashingError(GossipAction.REJECT, {
65
+ code: AttesterSlashingErrorCode.INVALID,
66
+ error: Error("AttesterSlashing has no slashable validators"),
67
+ });
68
+ }
69
+
61
70
  const signatureSets = getAttesterSlashingSignatureSets(chain.config, state.slot, attesterSlashing);
62
71
  if (!(await chain.bls.verifySignatureSets(signatureSets, {batchable: true, priority: prioritizeBls}))) {
63
72
  throw new AttesterSlashingError(GossipAction.REJECT, {
@@ -78,7 +78,7 @@ export async function validateGossipBlobSidecar(
78
78
  // already know this block.
79
79
  const blockRoot = ssz.phase0.BeaconBlockHeader.hashTreeRoot(blobSidecar.signedBlockHeader.message);
80
80
  const blockHex = toRootHex(blockRoot);
81
- if (chain.forkChoice.getBlockHex(blockHex) !== null) {
81
+ if (chain.forkChoice.getBlockHexDefaultStatus(blockHex) !== null) {
82
82
  throw new BlobSidecarGossipError(GossipAction.IGNORE, {code: BlobSidecarErrorCode.ALREADY_KNOWN, root: blockHex});
83
83
  }
84
84
 
@@ -89,7 +89,7 @@ export async function validateGossipBlobSidecar(
89
89
  // gossip and non-gossip sources) (a client MAY queue blocks for processing once the parent block is
90
90
  // retrieved).
91
91
  const parentRoot = toRootHex(blobSidecar.signedBlockHeader.message.parentRoot);
92
- const parentBlock = chain.forkChoice.getBlockHex(parentRoot);
92
+ const parentBlock = chain.forkChoice.getBlockHexDefaultStatus(parentRoot);
93
93
  if (parentBlock === null) {
94
94
  // If fork choice does *not* consider the parent to be a descendant of the finalized block,
95
95
  // then there are two more cases:
@@ -9,7 +9,7 @@ import {
9
9
  isExecutionEnabled,
10
10
  isExecutionStateType,
11
11
  } from "@lodestar/state-transition";
12
- import {SignedBeaconBlock, deneb, gloas} from "@lodestar/types";
12
+ import {SignedBeaconBlock, deneb, gloas, isGloasBeaconBlock} from "@lodestar/types";
13
13
  import {byteArrayEquals, sleep, toRootHex} from "@lodestar/utils";
14
14
  import {BlockErrorCode, BlockGossipError, GossipAction} from "../errors/index.js";
15
15
  import {IBeaconChain} from "../interface.js";
@@ -56,7 +56,7 @@ export async function validateGossipBlock(
56
56
  // check, we will load the parent and state from disk only to find out later that we
57
57
  // already know this block.
58
58
  const blockRoot = toRootHex(config.getForkTypes(blockSlot).BeaconBlock.hashTreeRoot(block));
59
- if (chain.forkChoice.getBlockHex(blockRoot) !== null) {
59
+ if (chain.forkChoice.getBlockHexDefaultStatus(blockRoot) !== null) {
60
60
  throw new BlockGossipError(GossipAction.IGNORE, {code: BlockErrorCode.ALREADY_KNOWN, root: blockRoot});
61
61
  }
62
62
 
@@ -72,7 +72,12 @@ export async function validateGossipBlock(
72
72
  // [REJECT] The current finalized_checkpoint is an ancestor of block -- i.e.
73
73
  // get_ancestor(store, block.parent_root, compute_start_slot_at_epoch(store.finalized_checkpoint.epoch)) == store.finalized_checkpoint.root
74
74
  const parentRoot = toRootHex(block.parentRoot);
75
- const parentBlock = chain.forkChoice.getBlockHex(parentRoot);
75
+ const parentBlock = isGloasBeaconBlock(block)
76
+ ? chain.forkChoice.getBlockHexAndBlockHash(
77
+ parentRoot,
78
+ toRootHex(block.body.signedExecutionPayloadBid.message.parentBlockHash)
79
+ )
80
+ : chain.forkChoice.getBlockHexDefaultStatus(parentRoot);
76
81
  if (parentBlock === null) {
77
82
  // If fork choice does *not* consider the parent to be a descendant of the finalized block,
78
83
  // then there are two more cases:
@@ -104,7 +109,7 @@ export async function validateGossipBlock(
104
109
 
105
110
  // [REJECT] The block is from a higher slot than its parent.
106
111
  if (parentBlock.slot >= blockSlot) {
107
- throw new BlockGossipError(GossipAction.IGNORE, {
112
+ throw new BlockGossipError(GossipAction.REJECT, {
108
113
  code: BlockErrorCode.NOT_LATER_THAN_PARENT,
109
114
  parentSlot: parentBlock.slot,
110
115
  slot: blockSlot,
@@ -73,7 +73,7 @@ export async function validateGossipDataColumnSidecar(
73
73
  // 6) [IGNORE] The sidecar's block's parent (defined by block_header.parent_root) has been seen (via gossip
74
74
  // or non-gossip sources)
75
75
  const parentRoot = toRootHex(blockHeader.parentRoot);
76
- const parentBlock = chain.forkChoice.getBlockHex(parentRoot);
76
+ const parentBlock = chain.forkChoice.getBlockHexDefaultStatus(parentRoot);
77
77
  if (parentBlock === null) {
78
78
  // If fork choice does *not* consider the parent to be a descendant of the finalized block,
79
79
  // then there are two more cases:
@@ -113,8 +113,7 @@ async function validateExecutionPayloadBid(
113
113
 
114
114
  // [IGNORE] `bid.parent_block_root` is the hash tree root of a known beacon
115
115
  // block in fork choice.
116
- const block = chain.forkChoice.getBlock(bid.parentBlockRoot);
117
- if (block === null) {
116
+ if (!chain.forkChoice.hasBlock(bid.parentBlockRoot)) {
118
117
  throw new ExecutionPayloadBidError(GossipAction.IGNORE, {
119
118
  code: ExecutionPayloadBidErrorCode.UNKNOWN_BLOCK_ROOT,
120
119
  parentBlockRoot: parentBlockRootHex,
@@ -37,7 +37,7 @@ async function validateExecutionPayloadEnvelope(
37
37
  // the block is retrieved).
38
38
  // TODO GLOAS: Need to review this, we should queue the envelope for later
39
39
  // processing if the block is not yet known, otherwise we would ignore it here
40
- const block = chain.forkChoice.getBlock(envelope.beaconBlockRoot);
40
+ const block = chain.forkChoice.getBlockDefaultStatus(envelope.beaconBlockRoot);
41
41
  if (block === null) {
42
42
  throw new ExecutionPayloadEnvelopeError(GossipAction.IGNORE, {
43
43
  code: ExecutionPayloadEnvelopeErrorCode.BLOCK_ROOT_UNKNOWN,
@@ -79,7 +79,7 @@ async function validateExecutionPayloadEnvelope(
79
79
  });
80
80
  }
81
81
 
82
- if (block.builderIndex === undefined || block.blockHashHex === undefined) {
82
+ if (block.builderIndex == null || block.blockHashFromBid == null) {
83
83
  // This indicates this block is a pre-gloas block which is wrong
84
84
  throw new ExecutionPayloadEnvelopeError(GossipAction.IGNORE, {
85
85
  code: ExecutionPayloadEnvelopeErrorCode.CACHE_FAIL,
@@ -97,11 +97,11 @@ async function validateExecutionPayloadEnvelope(
97
97
  }
98
98
 
99
99
  // [REJECT] `payload.block_hash == bid.block_hash`
100
- if (toRootHex(payload.blockHash) !== block.blockHashHex) {
100
+ if (toRootHex(payload.blockHash) !== block.blockHashFromBid) {
101
101
  throw new ExecutionPayloadEnvelopeError(GossipAction.REJECT, {
102
102
  code: ExecutionPayloadEnvelopeErrorCode.BLOCK_HASH_MISMATCH,
103
103
  envelopeBlockHash: toRootHex(payload.blockHash),
104
- bidBlockHash: block.blockHashHex,
104
+ bidBlockHash: block.blockHashFromBid,
105
105
  });
106
106
  }
107
107
 
@@ -59,8 +59,7 @@ async function validatePayloadAttestationMessage(
59
59
  // [IGNORE] The message's block `data.beacon_block_root` has been seen (via
60
60
  // gossip or non-gossip sources) (a client MAY queue attestation for processing
61
61
  // once the block is retrieved. Note a client might want to request payload after).
62
- const block = chain.forkChoice.getBlock(data.beaconBlockRoot);
63
- if (block === null) {
62
+ if (!chain.forkChoice.hasBlock(data.beaconBlockRoot)) {
64
63
  throw new PayloadAttestationError(GossipAction.IGNORE, {
65
64
  code: PayloadAttestationErrorCode.UNKNOWN_BLOCK_ROOT,
66
65
  blockRoot: toRootHex(data.beaconBlockRoot),
package/src/db/index.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export {BeaconDb} from "./beacon.js";
2
+ export {Bucket} from "./buckets.js";
2
3
  export type {IBeaconDb} from "./interface.js";
@@ -1461,29 +1461,37 @@ export function createLodestarMetrics(
1461
1461
  name: "lodestar_seen_block_input_cache_size",
1462
1462
  help: "Number of cached BlockInputs",
1463
1463
  }),
1464
- duplicateBlockCount: register.gauge<{source: BlockInputSource}>({
1465
- name: "lodestar_seen_block_input_cache_duplicate_block_count",
1464
+ serializedObjectRefs: register.gauge({
1465
+ name: "lodestar_seen_block_input_cache_serialized_object_refs",
1466
+ help: "Number of serialized-cache object refs retained by cached BlockInputs",
1467
+ }),
1468
+ duplicateBlockCount: register.counter<{source: BlockInputSource}>({
1469
+ name: "lodestar_seen_block_input_cache_duplicate_block_total",
1466
1470
  help: "Total number of duplicate blocks that pass validation and attempt to be cached but are known",
1467
1471
  labelNames: ["source"],
1468
1472
  }),
1469
- duplicateBlobCount: register.gauge<{source: BlockInputSource}>({
1470
- name: "lodestar_seen_block_input_cache_duplicate_blob_count",
1473
+ duplicateBlobCount: register.counter<{source: BlockInputSource}>({
1474
+ name: "lodestar_seen_block_input_cache_duplicate_blob_total",
1471
1475
  help: "Total number of duplicate blobs that pass validation and attempt to be cached but are known",
1472
1476
  labelNames: ["source"],
1473
1477
  }),
1474
- duplicateColumnCount: register.gauge<{source: BlockInputSource}>({
1475
- name: "lodestar_seen_block_input_cache_duplicate_column_count",
1478
+ duplicateColumnCount: register.counter<{source: BlockInputSource}>({
1479
+ name: "lodestar_seen_block_input_cache_duplicate_column_total",
1476
1480
  help: "Total number of duplicate columns that pass validation and attempt to be cached but are known",
1477
1481
  labelNames: ["source"],
1478
1482
  }),
1479
- createdByBlock: register.gauge({
1480
- name: "lodestar_seen_block_input_cache_items_created_by_block",
1483
+ createdByBlock: register.counter({
1484
+ name: "lodestar_seen_block_input_cache_items_created_by_block_total",
1481
1485
  help: "Number of BlockInputs created via a block being seen first",
1482
1486
  }),
1483
- createdByBlob: register.gauge({
1484
- name: "lodestar_seen_block_input_cache_items_created_by_blob",
1487
+ createdByBlob: register.counter({
1488
+ name: "lodestar_seen_block_input_cache_items_created_by_blob_total",
1485
1489
  help: "Number of BlockInputs created via a blob being seen first",
1486
1490
  }),
1491
+ createdByColumn: register.counter({
1492
+ name: "lodestar_seen_block_input_cache_items_created_by_column_total",
1493
+ help: "Number of BlockInputs created via a data column being seen first",
1494
+ }),
1487
1495
  },
1488
1496
  },
1489
1497
 
@@ -73,30 +73,6 @@ export async function createNodeJsLibp2p(
73
73
  noiseCrypto.chaCha20Poly1305Encrypt = asCrypto.chaCha20Poly1305Encrypt;
74
74
  }
75
75
 
76
- const libp2pMetrics = nodeJsLibp2pOpts.metrics
77
- ? (components: LodestarComponents) => {
78
- const metrics = prometheusMetrics({
79
- collectDefaultMetrics: false,
80
- preserveExistingMetrics: true,
81
- registry: nodeJsLibp2pOpts.metricsRegistry,
82
- })(components);
83
-
84
- // Work around identify EOF race:
85
- // `trackProtocolStream` attaches a `message` listener immediately after protocol
86
- // negotiation. For `/ipfs/id/1.0.0`, identify() adds its own reader later and can
87
- // miss the first response frame when metrics listener drains events first.
88
- const originalTrackProtocolStream = metrics.trackProtocolStream.bind(metrics);
89
- metrics.trackProtocolStream = ((stream) => {
90
- if (stream.protocol === "/ipfs/id/1.0.0") {
91
- return;
92
- }
93
- originalTrackProtocolStream(stream);
94
- }) as typeof metrics.trackProtocolStream;
95
-
96
- return metrics;
97
- }
98
- : undefined;
99
-
100
76
  return createLibp2p({
101
77
  privateKey,
102
78
  nodeInfo: {
@@ -125,7 +101,13 @@ export async function createNodeJsLibp2p(
125
101
  ],
126
102
  streamMuxers: [mplex({disconnectThreshold})],
127
103
  peerDiscovery,
128
- metrics: libp2pMetrics,
104
+ metrics: nodeJsLibp2pOpts.metrics
105
+ ? prometheusMetrics({
106
+ collectDefaultMetrics: false,
107
+ preserveExistingMetrics: true,
108
+ registry: nodeJsLibp2pOpts.metricsRegistry,
109
+ })
110
+ : undefined,
129
111
  connectionManager: {
130
112
  // dialer config
131
113
  maxParallelDials: 100,
@@ -539,7 +539,8 @@ export class Network implements INetwork {
539
539
  this.config.getForkSeq(this.clock.currentSlot) >= ForkSeq.altair ? [Version.V2] : [Version.V2, Version.V1],
540
540
  request
541
541
  ),
542
- request
542
+ request,
543
+ this.chain.serializedCache
543
544
  );
544
545
  }
545
546
 
@@ -71,7 +71,7 @@ import {validateGossipPayloadAttestationMessage} from "../../chain/validation/pa
71
71
  import {OpSource} from "../../chain/validatorMonitor.js";
72
72
  import {Metrics} from "../../metrics/index.js";
73
73
  import {kzgCommitmentToVersionedHash} from "../../util/blobs.js";
74
- import {getBlobKzgCommitments} from "../../util/dataColumns.ts";
74
+ import {getBlobKzgCommitments} from "../../util/dataColumns.js";
75
75
  import {INetworkCore} from "../core/index.js";
76
76
  import {NetworkEventBus} from "../events.js";
77
77
  import {
@@ -856,6 +856,11 @@ function getSequentialHandlers(modules: ValidatorFnsModules, options: GossipHand
856
856
  } catch (e) {
857
857
  logger.error("Error adding to payloadAttestation pool", {}, e as Error);
858
858
  }
859
+ chain.forkChoice.notifyPtcMessages(
860
+ toRootHex(payloadAttestationMessage.data.beaconBlockRoot),
861
+ [validationResult.validatorCommitteeIndex],
862
+ payloadAttestationMessage.data.payloadPresent
863
+ );
859
864
  },
860
865
  [GossipType.execution_payload_bid]: async ({
861
866
  gossipData,
@@ -11,7 +11,7 @@ import {
11
11
  GossipValidatorBatchFn,
12
12
  GossipValidatorFn,
13
13
  } from "../gossip/interface.js";
14
- import {prettyPrintPeerIdStr} from "../util.ts";
14
+ import {prettyPrintPeerIdStr} from "../util.js";
15
15
 
16
16
  export type ValidatorFnModules = {
17
17
  config: ChainForkConfig;
@@ -19,7 +19,7 @@ import {callInNextEventLoop} from "../../util/eventLoop.js";
19
19
  import {NetworkCoreMetrics} from "../core/metrics.js";
20
20
  import {INetworkEventBus, NetworkEvent} from "../events.js";
21
21
  import {MetadataController} from "../metadata.js";
22
- import {ClientKind} from "../peers/client.ts";
22
+ import {ClientKind} from "../peers/client.js";
23
23
  import {PeersData} from "../peers/peersData.js";
24
24
  import {IPeerRpcScoreStore, PeerAction} from "../peers/score/index.js";
25
25
  import {StatusCache} from "../statusCache.js";
@@ -6,7 +6,7 @@ import {computeEpochAtSlot} from "@lodestar/state-transition";
6
6
  import {deneb, phase0} from "@lodestar/types";
7
7
  import {IBeaconChain} from "../../../chain/index.js";
8
8
  import {IBeaconDb} from "../../../db/index.js";
9
- import {prettyPrintPeerId} from "../../util.ts";
9
+ import {prettyPrintPeerId} from "../../util.js";
10
10
 
11
11
  // TODO: Unit test
12
12
 
@@ -47,9 +47,10 @@ export async function* onBeaconBlocksByRange(
47
47
 
48
48
  // Non-finalized range of blocks
49
49
  if (endSlot > finalizedSlot) {
50
- const headRoot = chain.forkChoice.getHeadRoot();
50
+ const headBlock = chain.forkChoice.getHead();
51
+ const headRoot = headBlock.blockRoot;
51
52
  // TODO DENEB: forkChoice should mantain an array of canonical blocks, and change only on reorg
52
- const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot);
53
+ const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot, headBlock.payloadStatus);
53
54
  // getAllAncestorBlocks response includes the head node, so it's the full chain.
54
55
 
55
56
  // Iterate head chain with ascending block numbers
@@ -34,9 +34,10 @@ export async function* onBlobSidecarsByRange(
34
34
 
35
35
  // Non-finalized range of blobs
36
36
  if (endSlot > finalizedSlot) {
37
- const headRoot = chain.forkChoice.getHeadRoot();
37
+ const headBlock = chain.forkChoice.getHead();
38
+ const headRoot = headBlock.blockRoot;
38
39
  // TODO DENEB: forkChoice should mantain an array of canonical blocks, and change only on reorg
39
- const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot);
40
+ const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot, headBlock.payloadStatus);
40
41
 
41
42
  // Iterate head chain with ascending block numbers
42
43
  for (let i = headChain.length - 1; i >= 0; i--) {
@@ -20,7 +20,7 @@ export async function* onBlobSidecarsByRoot(
20
20
  for (const blobIdentifier of requestBody) {
21
21
  const {blockRoot, index} = blobIdentifier;
22
22
  const blockRootHex = toRootHex(blockRoot);
23
- const block = chain.forkChoice.getBlockHex(blockRootHex);
23
+ const block = chain.forkChoice.getBlockHexDefaultStatus(blockRootHex);
24
24
 
25
25
  // NOTE: Only support non-finalized blocks.
26
26
  // SPEC: Clients MUST support requesting blocks and sidecars since the latest finalized epoch.
@@ -7,7 +7,7 @@ import {ColumnIndex, fulu} from "@lodestar/types";
7
7
  import {fromHex} from "@lodestar/utils";
8
8
  import {IBeaconChain} from "../../../chain/index.js";
9
9
  import {IBeaconDb} from "../../../db/index.js";
10
- import {prettyPrintPeerId} from "../../util.ts";
10
+ import {prettyPrintPeerId} from "../../util.js";
11
11
  import {
12
12
  handleColumnSidecarUnavailability,
13
13
  validateRequestedDataColumns,
@@ -78,8 +78,9 @@ export async function* onDataColumnSidecarsByRange(
78
78
 
79
79
  // Non-finalized range of columns
80
80
  if (endSlot > finalizedSlot) {
81
- const headRoot = chain.forkChoice.getHeadRoot();
82
- const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot);
81
+ const headBlock = chain.forkChoice.getHead();
82
+ const headRoot = headBlock.blockRoot;
83
+ const headChain = chain.forkChoice.getAllAncestorBlocks(headRoot, headBlock.payloadStatus);
83
84
 
84
85
  // Iterate head chain with ascending block numbers
85
86
  for (let i = headChain.length - 1; i >= 0; i--) {
@@ -6,7 +6,7 @@ import {toRootHex} from "@lodestar/utils";
6
6
  import {IBeaconChain} from "../../../chain/index.js";
7
7
  import {IBeaconDb} from "../../../db/index.js";
8
8
  import {DataColumnSidecarsByRootRequest} from "../../../util/types.js";
9
- import {prettyPrintPeerId} from "../../util.ts";
9
+ import {prettyPrintPeerId} from "../../util.js";
10
10
  import {
11
11
  handleColumnSidecarUnavailability,
12
12
  validateRequestedDataColumns,
@@ -34,7 +34,7 @@ export async function* onDataColumnSidecarsByRoot(
34
34
  }
35
35
 
36
36
  const blockRootHex = toRootHex(blockRoot);
37
- const block = chain.forkChoice.getBlockHex(blockRootHex);
37
+ const block = chain.forkChoice.getBlockHexDefaultStatus(blockRootHex);
38
38
  // If the block is not in fork choice, it may be finalized. Attempt to find its slot in block archive
39
39
  const slot = block ? block.slot : await db.blockArchive.getSlotByRoot(blockRoot);
40
40
 
@@ -1,6 +1,6 @@
1
1
  import {Type} from "@chainsafe/ssz";
2
2
  import {RequestError, RequestErrorCode, ResponseIncoming} from "@lodestar/reqresp";
3
- import {SerializedCache} from "../../../util/serializedCache.ts";
3
+ import {SerializedCache} from "../../../util/serializedCache.js";
4
4
  import {ResponseTypeGetter} from "../types.js";
5
5
 
6
6
  /**
@@ -1,7 +1,7 @@
1
1
  import {ResponseIncoming} from "@lodestar/reqresp";
2
2
  import {SignedBeaconBlock, phase0} from "@lodestar/types";
3
3
  import {LodestarError} from "@lodestar/utils";
4
- import {SerializedCache} from "../../../util/serializedCache.ts";
4
+ import {SerializedCache} from "../../../util/serializedCache.js";
5
5
  import {ReqRespMethod, responseSszTypeByMethod} from "../types.js";
6
6
  import {sszDeserializeResponse} from "./collect.js";
7
7
 
@@ -6,7 +6,7 @@ import {LodestarError, byteArrayEquals, fromHex, prettyPrintIndices, toHex, toRo
6
6
  import {isBlockInputBlobs, isBlockInputColumns} from "../../chain/blocks/blockInput/blockInput.js";
7
7
  import {BlockInputSource, IBlockInput} from "../../chain/blocks/blockInput/types.js";
8
8
  import {ChainEventEmitter} from "../../chain/emitter.js";
9
- import {IBeaconChain} from "../../chain/interface.ts";
9
+ import {IBeaconChain} from "../../chain/interface.js";
10
10
  import {validateBlockBlobSidecars} from "../../chain/validation/blobSidecar.js";
11
11
  import {validateBlockDataColumnSidecars} from "../../chain/validation/dataColumnSidecar.js";
12
12
  import {INetwork} from "../../network/interface.js";
@@ -1,7 +1,7 @@
1
1
  import {IForkChoice} from "@lodestar/fork-choice";
2
2
  import {computeEpochAtSlot, computeStartSlotAtEpoch} from "@lodestar/state-transition";
3
3
  import {Slot, Status} from "@lodestar/types";
4
- import {IBeaconChain} from "../../chain/interface.ts";
4
+ import {IBeaconChain} from "../../chain/interface.js";
5
5
  import {ChainTarget} from "../range/utils/index.js";
6
6
 
7
7
  /** The type of peer relative to our current state */
@@ -4,7 +4,7 @@
4
4
  * This is a thin wrapper around WeakMap
5
5
  */
6
6
  export class SerializedCache {
7
- map: WeakMap<object, Uint8Array> = new WeakMap();
7
+ private map: WeakMap<object, Uint8Array> = new WeakMap();
8
8
 
9
9
  get(obj: object): Uint8Array | undefined {
10
10
  return this.map.get(obj);
@@ -15,11 +15,13 @@ export class SerializedCache {
15
15
  }
16
16
 
17
17
  /**
18
- * Replace the internal WeakMap to force GC of all cached entries.
19
- * Must only be called after all DB writes that may read from this cache have completed,
18
+ * Delete cached serialized entries for the provided object references.
19
+ * Must only be called after all DB writes that read from this cache for these objects have completed,
20
20
  * otherwise cached serialized bytes will be unavailable and data will be re-serialized unnecessarily.
21
21
  */
22
- clear(): void {
23
- this.map = new WeakMap();
22
+ delete(objs: object[]): void {
23
+ for (const obj of objs) {
24
+ this.map.delete(obj);
25
+ }
24
26
  }
25
27
  }