@lodestar/beacon-node 1.35.0-dev.91dadf81de → 1.35.0-dev.955e9f89ed

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 (1276) hide show
  1. package/lib/api/impl/config/constants.d.ts +0 -5
  2. package/lib/api/impl/config/constants.js +1 -6
  3. package/lib/api/impl/config/constants.js.map +1 -1
  4. package/lib/api/impl/debug/index.js +1 -1
  5. package/lib/api/impl/debug/index.js.map +1 -1
  6. package/lib/api/impl/errors.js +0 -2
  7. package/lib/api/impl/errors.js.map +1 -1
  8. package/lib/api/impl/index.d.ts +3 -3
  9. package/lib/api/impl/index.js +3 -3
  10. package/lib/api/impl/index.js.map +1 -1
  11. package/lib/api/impl/validator/index.js +3 -5
  12. package/lib/api/impl/validator/index.js.map +1 -1
  13. package/lib/api/rest/activeSockets.js +2 -3
  14. package/lib/api/rest/activeSockets.js.map +1 -1
  15. package/lib/api/rest/base.d.ts +1 -1
  16. package/lib/api/rest/base.js +2 -6
  17. package/lib/api/rest/base.js.map +1 -1
  18. package/lib/api/rest/index.js +0 -2
  19. package/lib/api/rest/index.js.map +1 -1
  20. package/lib/api/rest/swaggerUI.js +2 -4
  21. package/lib/api/rest/swaggerUI.js.map +1 -1
  22. package/lib/chain/ColumnReconstructionTracker.d.ts +2 -2
  23. package/lib/chain/ColumnReconstructionTracker.js +12 -34
  24. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  25. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  26. package/lib/chain/GetBlobsTracker.js +8 -28
  27. package/lib/chain/GetBlobsTracker.js.map +1 -1
  28. package/lib/chain/archiveStore/archiveStore.js +38 -49
  29. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  30. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -3
  31. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  32. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  33. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  34. package/lib/chain/archiveStore/index.d.ts +1 -1
  35. package/lib/chain/archiveStore/index.js +1 -1
  36. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +0 -5
  37. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
  38. package/lib/chain/balancesCache.js +3 -1
  39. package/lib/chain/balancesCache.js.map +1 -1
  40. package/lib/chain/beaconProposerCache.js +0 -1
  41. package/lib/chain/beaconProposerCache.js.map +1 -1
  42. package/lib/chain/blocks/blockInput/blockInput.js +8 -19
  43. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  44. package/lib/chain/blocks/blockInput/index.d.ts +1 -1
  45. package/lib/chain/blocks/blockInput/index.js +1 -1
  46. package/lib/chain/blocks/importBlock.js +3 -4
  47. package/lib/chain/blocks/importBlock.js.map +1 -1
  48. package/lib/chain/blocks/index.d.ts +1 -1
  49. package/lib/chain/blocks/index.js +0 -1
  50. package/lib/chain/blocks/index.js.map +1 -1
  51. package/lib/chain/blocks/verifyBlocksDataAvailability.js +1 -8
  52. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  53. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  54. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  55. package/lib/chain/bls/multithread/index.js +163 -168
  56. package/lib/chain/bls/multithread/index.js.map +1 -1
  57. package/lib/chain/bls/singleThread.js +0 -1
  58. package/lib/chain/bls/singleThread.js.map +1 -1
  59. package/lib/chain/chain.d.ts +6 -6
  60. package/lib/chain/chain.js +20 -64
  61. package/lib/chain/chain.js.map +1 -1
  62. package/lib/chain/emitter.d.ts +2 -2
  63. package/lib/chain/emitter.js.map +1 -1
  64. package/lib/chain/errors/blockError.js +0 -1
  65. package/lib/chain/errors/blockError.js.map +1 -1
  66. package/lib/chain/errors/gossipValidation.js +0 -1
  67. package/lib/chain/errors/gossipValidation.js.map +1 -1
  68. package/lib/chain/errors/index.d.ts +2 -2
  69. package/lib/chain/errors/index.js +2 -2
  70. package/lib/chain/errors/index.js.map +1 -1
  71. package/lib/chain/forkChoice/index.js.map +1 -1
  72. package/lib/chain/genesis/genesis.js +5 -16
  73. package/lib/chain/genesis/genesis.js.map +1 -1
  74. package/lib/chain/index.d.ts +2 -2
  75. package/lib/chain/index.js +2 -2
  76. package/lib/chain/index.js.map +1 -1
  77. package/lib/chain/interface.d.ts +4 -4
  78. package/lib/chain/interface.js.map +1 -1
  79. package/lib/chain/lightClient/index.js +9 -16
  80. package/lib/chain/lightClient/index.js.map +1 -1
  81. package/lib/chain/lightClient/proofs.js.map +1 -1
  82. package/lib/chain/opPools/aggregatedAttestationPool.js +9 -14
  83. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  84. package/lib/chain/opPools/attestationPool.d.ts +3 -2
  85. package/lib/chain/opPools/attestationPool.js +7 -10
  86. package/lib/chain/opPools/attestationPool.js.map +1 -1
  87. package/lib/chain/opPools/index.d.ts +1 -1
  88. package/lib/chain/opPools/index.js +1 -1
  89. package/lib/chain/opPools/index.js.map +1 -1
  90. package/lib/chain/opPools/opPool.js +12 -10
  91. package/lib/chain/opPools/opPool.js.map +1 -1
  92. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts +2 -3
  93. package/lib/chain/opPools/syncCommitteeMessagePool.js +10 -14
  94. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  95. package/lib/chain/opPools/syncContributionAndProofPool.js +2 -5
  96. package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
  97. package/lib/chain/opPools/types.d.ts +1 -1
  98. package/lib/chain/opPools/types.js +1 -1
  99. package/lib/chain/opPools/types.js.map +1 -1
  100. package/lib/chain/options.js +1 -1
  101. package/lib/chain/options.js.map +1 -1
  102. package/lib/chain/prepareNextSlot.d.ts +3 -3
  103. package/lib/chain/prepareNextSlot.js +140 -145
  104. package/lib/chain/prepareNextSlot.js.map +1 -1
  105. package/lib/chain/produceBlock/produceBlockBody.d.ts +1 -1
  106. package/lib/chain/produceBlock/produceBlockBody.js +10 -3
  107. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  108. package/lib/chain/regen/errors.js +0 -1
  109. package/lib/chain/regen/errors.js.map +1 -1
  110. package/lib/chain/regen/index.d.ts +1 -1
  111. package/lib/chain/regen/index.js +1 -1
  112. package/lib/chain/regen/index.js.map +1 -1
  113. package/lib/chain/regen/queued.js +28 -35
  114. package/lib/chain/regen/queued.js.map +1 -1
  115. package/lib/chain/regen/regen.js +0 -1
  116. package/lib/chain/regen/regen.js.map +1 -1
  117. package/lib/chain/reprocess.js +1 -3
  118. package/lib/chain/reprocess.js.map +1 -1
  119. package/lib/chain/seenCache/seenAggregateAndProof.js +6 -7
  120. package/lib/chain/seenCache/seenAggregateAndProof.js.map +1 -1
  121. package/lib/chain/seenCache/seenAttestationData.js +2 -5
  122. package/lib/chain/seenCache/seenAttestationData.js.map +1 -1
  123. package/lib/chain/seenCache/seenAttesters.js +4 -2
  124. package/lib/chain/seenCache/seenAttesters.js.map +1 -1
  125. package/lib/chain/seenCache/seenBlockProposers.js +4 -2
  126. package/lib/chain/seenCache/seenBlockProposers.js.map +1 -1
  127. package/lib/chain/seenCache/seenCommittee.js +3 -1
  128. package/lib/chain/seenCache/seenCommittee.js.map +1 -1
  129. package/lib/chain/seenCache/seenCommitteeContribution.js +2 -3
  130. package/lib/chain/seenCache/seenCommitteeContribution.js.map +1 -1
  131. package/lib/chain/seenCache/seenGossipBlockInput.js +13 -20
  132. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  133. package/lib/chain/shufflingCache.js +2 -5
  134. package/lib/chain/shufflingCache.js.map +1 -1
  135. package/lib/chain/stateCache/blockStateCacheImpl.js +7 -13
  136. package/lib/chain/stateCache/blockStateCacheImpl.js.map +1 -1
  137. package/lib/chain/stateCache/datastore/db.js +0 -1
  138. package/lib/chain/stateCache/datastore/db.js.map +1 -1
  139. package/lib/chain/stateCache/datastore/file.js +0 -1
  140. package/lib/chain/stateCache/datastore/file.js.map +1 -1
  141. package/lib/chain/stateCache/datastore/index.d.ts +1 -1
  142. package/lib/chain/stateCache/datastore/index.js +1 -1
  143. package/lib/chain/stateCache/datastore/index.js.map +1 -1
  144. package/lib/chain/stateCache/fifoBlockStateCache.js +0 -10
  145. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  146. package/lib/chain/stateCache/inMemoryCheckpointsCache.js +4 -10
  147. package/lib/chain/stateCache/inMemoryCheckpointsCache.js.map +1 -1
  148. package/lib/chain/stateCache/index.d.ts +1 -1
  149. package/lib/chain/stateCache/index.js +1 -1
  150. package/lib/chain/stateCache/index.js.map +1 -1
  151. package/lib/chain/stateCache/mapMetrics.js +4 -4
  152. package/lib/chain/stateCache/mapMetrics.js.map +1 -1
  153. package/lib/chain/stateCache/persistentCheckpointsCache.js +14 -23
  154. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  155. package/lib/chain/validation/blobSidecar.js.map +1 -1
  156. package/lib/chain/validation/dataColumnSidecar.js +1 -1
  157. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  158. package/lib/chain/validation/index.d.ts +1 -1
  159. package/lib/chain/validation/index.js +1 -1
  160. package/lib/chain/validation/index.js.map +1 -1
  161. package/lib/chain/validation/lightClientFinalityUpdate.js +3 -4
  162. package/lib/chain/validation/lightClientFinalityUpdate.js.map +1 -1
  163. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts +4 -6
  164. package/lib/chain/validation/lightClientOptimisticUpdate.js +11 -11
  165. package/lib/chain/validation/lightClientOptimisticUpdate.js.map +1 -1
  166. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -1
  167. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  168. package/lib/chain/validatorMonitor.d.ts +3 -1
  169. package/lib/chain/validatorMonitor.js +15 -22
  170. package/lib/chain/validatorMonitor.js.map +1 -1
  171. package/lib/db/beacon.js +0 -24
  172. package/lib/db/beacon.js.map +1 -1
  173. package/lib/db/buckets.d.ts +4 -4
  174. package/lib/db/buckets.js +4 -4
  175. package/lib/db/buckets.js.map +1 -1
  176. package/lib/db/index.d.ts +1 -1
  177. package/lib/db/index.js.map +1 -1
  178. package/lib/db/repositories/blobSidecars.js +1 -1
  179. package/lib/db/repositories/blobSidecars.js.map +1 -1
  180. package/lib/db/repositories/blobSidecarsArchive.js +1 -1
  181. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  182. package/lib/db/repositories/blockArchive.js +3 -2
  183. package/lib/db/repositories/blockArchive.js.map +1 -1
  184. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  185. package/lib/db/repositories/dataColumnSidecar.js +2 -2
  186. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  187. package/lib/db/repositories/dataColumnSidecarArchive.js +2 -2
  188. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  189. package/lib/db/repositories/depositDataRoot.js +0 -1
  190. package/lib/db/repositories/depositDataRoot.js.map +1 -1
  191. package/lib/db/repositories/index.d.ts +10 -10
  192. package/lib/db/repositories/index.js +9 -9
  193. package/lib/db/repositories/index.js.map +1 -1
  194. package/lib/db/single/preGenesisState.js +0 -6
  195. package/lib/db/single/preGenesisState.js.map +1 -1
  196. package/lib/db/single/preGenesisStateLastProcessedBlock.js +0 -5
  197. package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +1 -1
  198. package/lib/eth1/eth1DataCache.js +0 -2
  199. package/lib/eth1/eth1DataCache.js.map +1 -1
  200. package/lib/eth1/eth1DepositDataTracker.js +5 -18
  201. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  202. package/lib/eth1/eth1DepositsCache.js +0 -3
  203. package/lib/eth1/eth1DepositsCache.js.map +1 -1
  204. package/lib/eth1/eth1MergeBlockTracker.js +4 -10
  205. package/lib/eth1/eth1MergeBlockTracker.js.map +1 -1
  206. package/lib/eth1/index.js +0 -2
  207. package/lib/eth1/index.js.map +1 -1
  208. package/lib/eth1/provider/eth1Provider.d.ts +2 -1
  209. package/lib/eth1/provider/eth1Provider.js +2 -6
  210. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  211. package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
  212. package/lib/eth1/provider/jsonRpcHttpClient.js +2 -16
  213. package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
  214. package/lib/eth1/provider/jwt.js.map +1 -1
  215. package/lib/eth1/utils/deposits.js.map +1 -1
  216. package/lib/execution/builder/cache.js +0 -6
  217. package/lib/execution/builder/cache.js.map +1 -1
  218. package/lib/execution/builder/http.js +8 -14
  219. package/lib/execution/builder/http.js.map +1 -1
  220. package/lib/execution/builder/index.js.map +1 -1
  221. package/lib/execution/engine/disabled.js +4 -2
  222. package/lib/execution/engine/disabled.js.map +1 -1
  223. package/lib/execution/engine/http.js +8 -23
  224. package/lib/execution/engine/http.js.map +1 -1
  225. package/lib/execution/engine/interface.js.map +1 -1
  226. package/lib/execution/engine/mock.d.ts +0 -1
  227. package/lib/execution/engine/mock.js +12 -16
  228. package/lib/execution/engine/mock.js.map +1 -1
  229. package/lib/execution/engine/payloadIdCache.js +3 -1
  230. package/lib/execution/engine/payloadIdCache.js.map +1 -1
  231. package/lib/execution/engine/types.d.ts +1 -0
  232. package/lib/execution/engine/types.js.map +1 -1
  233. package/lib/execution/engine/utils.js +3 -3
  234. package/lib/execution/engine/utils.js.map +1 -1
  235. package/lib/execution/index.d.ts +2 -2
  236. package/lib/execution/index.js +2 -2
  237. package/lib/execution/index.js.map +1 -1
  238. package/lib/index.d.ts +6 -6
  239. package/lib/index.js +5 -5
  240. package/lib/index.js.map +1 -1
  241. package/lib/metrics/index.d.ts +1 -1
  242. package/lib/metrics/index.js +1 -1
  243. package/lib/metrics/index.js.map +1 -1
  244. package/lib/metrics/metrics/lodestar.d.ts +2 -7
  245. package/lib/metrics/metrics/lodestar.js +4 -13
  246. package/lib/metrics/metrics/lodestar.js.map +1 -1
  247. package/lib/metrics/metrics.d.ts +1 -1
  248. package/lib/metrics/metrics.js.map +1 -1
  249. package/lib/metrics/nodeJsMetrics.js +1 -1
  250. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  251. package/lib/metrics/server/http.d.ts +1 -1
  252. package/lib/metrics/utils/avgMinMax.d.ts +1 -1
  253. package/lib/metrics/utils/avgMinMax.js +6 -10
  254. package/lib/metrics/utils/avgMinMax.js.map +1 -1
  255. package/lib/metrics/utils/gauge.d.ts +1 -1
  256. package/lib/metrics/utils/gauge.js +4 -1
  257. package/lib/metrics/utils/gauge.js.map +1 -1
  258. package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
  259. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  260. package/lib/monitoring/properties.js +0 -4
  261. package/lib/monitoring/properties.js.map +1 -1
  262. package/lib/monitoring/service.js +1 -13
  263. package/lib/monitoring/service.js.map +1 -1
  264. package/lib/monitoring/system.js +27 -25
  265. package/lib/monitoring/system.js.map +1 -1
  266. package/lib/network/core/networkCore.d.ts +2 -2
  267. package/lib/network/core/networkCore.js +50 -67
  268. package/lib/network/core/networkCore.js.map +1 -1
  269. package/lib/network/core/networkCoreWorker.js +1 -1
  270. package/lib/network/core/networkCoreWorker.js.map +1 -1
  271. package/lib/network/core/networkCoreWorkerHandler.d.ts +2 -2
  272. package/lib/network/core/networkCoreWorkerHandler.js +5 -14
  273. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  274. package/lib/network/discv5/index.d.ts +2 -2
  275. package/lib/network/discv5/index.js +3 -9
  276. package/lib/network/discv5/index.js.map +1 -1
  277. package/lib/network/discv5/worker.js +3 -3
  278. package/lib/network/discv5/worker.js.map +1 -1
  279. package/lib/network/gossip/encoding.d.ts +1 -1
  280. package/lib/network/gossip/encoding.js +2 -4
  281. package/lib/network/gossip/encoding.js.map +1 -1
  282. package/lib/network/gossip/errors.js +0 -1
  283. package/lib/network/gossip/errors.js.map +1 -1
  284. package/lib/network/gossip/gossipsub.d.ts +1 -2
  285. package/lib/network/gossip/gossipsub.js +17 -43
  286. package/lib/network/gossip/gossipsub.js.map +1 -1
  287. package/lib/network/gossip/index.d.ts +2 -2
  288. package/lib/network/gossip/index.js +2 -2
  289. package/lib/network/gossip/index.js.map +1 -1
  290. package/lib/network/gossip/interface.d.ts +2 -2
  291. package/lib/network/gossip/metrics.d.ts +7 -15
  292. package/lib/network/gossip/metrics.js +6 -16
  293. package/lib/network/gossip/metrics.js.map +1 -1
  294. package/lib/network/gossip/topic.d.ts +105 -125
  295. package/lib/network/gossip/topic.js +1 -2
  296. package/lib/network/gossip/topic.js.map +1 -1
  297. package/lib/network/index.d.ts +3 -3
  298. package/lib/network/index.js +3 -3
  299. package/lib/network/index.js.map +1 -1
  300. package/lib/network/interface.d.ts +1 -1
  301. package/lib/network/libp2p/index.js +3 -11
  302. package/lib/network/libp2p/index.js.map +1 -1
  303. package/lib/network/metadata.js +1 -6
  304. package/lib/network/metadata.js.map +1 -1
  305. package/lib/network/network.d.ts +2 -2
  306. package/lib/network/network.js +77 -89
  307. package/lib/network/network.js.map +1 -1
  308. package/lib/network/peers/datastore.d.ts +2 -2
  309. package/lib/network/peers/datastore.js +4 -10
  310. package/lib/network/peers/datastore.js.map +1 -1
  311. package/lib/network/peers/discover.js +66 -75
  312. package/lib/network/peers/discover.js.map +1 -1
  313. package/lib/network/peers/peerManager.js +125 -145
  314. package/lib/network/peers/peerManager.js.map +1 -1
  315. package/lib/network/peers/peersData.js +3 -1
  316. package/lib/network/peers/peersData.js.map +1 -1
  317. package/lib/network/peers/score/index.d.ts +1 -1
  318. package/lib/network/peers/score/index.js +1 -1
  319. package/lib/network/peers/score/index.js.map +1 -1
  320. package/lib/network/peers/score/score.js +0 -6
  321. package/lib/network/peers/score/score.js.map +1 -1
  322. package/lib/network/peers/score/store.js +0 -3
  323. package/lib/network/peers/score/store.js.map +1 -1
  324. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  325. package/lib/network/peers/utils/subnetMap.js +4 -2
  326. package/lib/network/peers/utils/subnetMap.js.map +1 -1
  327. package/lib/network/processor/aggregatorTracker.js +3 -1
  328. package/lib/network/processor/aggregatorTracker.js.map +1 -1
  329. package/lib/network/processor/gossipHandlers.js +7 -3
  330. package/lib/network/processor/gossipHandlers.js.map +1 -1
  331. package/lib/network/processor/gossipQueues/indexed.js +9 -11
  332. package/lib/network/processor/gossipQueues/indexed.js.map +1 -1
  333. package/lib/network/processor/gossipQueues/linear.js +8 -9
  334. package/lib/network/processor/gossipQueues/linear.js.map +1 -1
  335. package/lib/network/processor/index.d.ts +1 -1
  336. package/lib/network/processor/index.js +8 -18
  337. package/lib/network/processor/index.js.map +1 -1
  338. package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
  339. package/lib/network/reqresp/ReqRespBeaconNode.js +2 -11
  340. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  341. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  342. package/lib/network/reqresp/index.d.ts +1 -1
  343. package/lib/network/reqresp/index.js +1 -1
  344. package/lib/network/reqresp/index.js.map +1 -1
  345. package/lib/network/reqresp/rateLimit.js +2 -2
  346. package/lib/network/reqresp/rateLimit.js.map +1 -1
  347. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  348. package/lib/network/statusCache.js +0 -1
  349. package/lib/network/statusCache.js.map +1 -1
  350. package/lib/network/subnets/attnetsService.js +65 -73
  351. package/lib/network/subnets/attnetsService.js.map +1 -1
  352. package/lib/network/subnets/interface.js +1 -1
  353. package/lib/network/subnets/interface.js.map +1 -1
  354. package/lib/network/subnets/syncnetsService.js +22 -29
  355. package/lib/network/subnets/syncnetsService.js.map +1 -1
  356. package/lib/network/subnets/util.js +2 -1
  357. package/lib/network/subnets/util.js.map +1 -1
  358. package/lib/node/nodejs.d.ts +1 -1
  359. package/lib/node/nodejs.js +0 -15
  360. package/lib/node/nodejs.js.map +1 -1
  361. package/lib/node/notifier.js +2 -1
  362. package/lib/node/notifier.js.map +1 -1
  363. package/lib/node/options.js.map +1 -1
  364. package/lib/node/utils/interop/state.js +2 -1
  365. package/lib/node/utils/interop/state.js.map +1 -1
  366. package/lib/sync/backfill/backfill.d.ts +1 -1
  367. package/lib/sync/backfill/backfill.js +16 -58
  368. package/lib/sync/backfill/backfill.js.map +1 -1
  369. package/lib/sync/range/batch.d.ts +2 -2
  370. package/lib/sync/range/batch.js +11 -20
  371. package/lib/sync/range/batch.js.map +1 -1
  372. package/lib/sync/range/chain.d.ts +1 -1
  373. package/lib/sync/range/chain.js +8 -33
  374. package/lib/sync/range/chain.js.map +1 -1
  375. package/lib/sync/range/range.d.ts +1 -1
  376. package/lib/sync/range/range.js +70 -76
  377. package/lib/sync/range/range.js.map +1 -1
  378. package/lib/sync/range/utils/peerBalancer.js +1 -5
  379. package/lib/sync/range/utils/peerBalancer.js.map +1 -1
  380. package/lib/sync/sync.d.ts +2 -1
  381. package/lib/sync/sync.js +85 -93
  382. package/lib/sync/sync.js.map +1 -1
  383. package/lib/sync/types.d.ts +1 -0
  384. package/lib/sync/types.js.map +1 -1
  385. package/lib/sync/unknownBlock.d.ts +1 -0
  386. package/lib/sync/unknownBlock.js +172 -181
  387. package/lib/sync/unknownBlock.js.map +1 -1
  388. package/lib/sync/utils/downloadByRange.d.ts +1 -1
  389. package/lib/sync/utils/downloadByRoot.d.ts +2 -4
  390. package/lib/sync/utils/downloadByRoot.js +9 -36
  391. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  392. package/lib/util/array.js +3 -7
  393. package/lib/util/array.js.map +1 -1
  394. package/lib/util/asyncIterableToEvents.js +3 -6
  395. package/lib/util/asyncIterableToEvents.js.map +1 -1
  396. package/lib/util/binarySearch.js +0 -2
  397. package/lib/util/binarySearch.js.map +1 -1
  398. package/lib/util/blobs.js +3 -5
  399. package/lib/util/blobs.js.map +1 -1
  400. package/lib/util/bufferPool.js +2 -7
  401. package/lib/util/bufferPool.js.map +1 -1
  402. package/lib/util/clock.d.ts +1 -6
  403. package/lib/util/clock.js +18 -26
  404. package/lib/util/clock.js.map +1 -1
  405. package/lib/util/dataColumns.d.ts +15 -9
  406. package/lib/util/dataColumns.js +29 -50
  407. package/lib/util/dataColumns.js.map +1 -1
  408. package/lib/util/execution.d.ts +3 -12
  409. package/lib/util/execution.js +13 -47
  410. package/lib/util/execution.js.map +1 -1
  411. package/lib/util/itTrigger.js +4 -4
  412. package/lib/util/itTrigger.js.map +1 -1
  413. package/lib/util/map.js +0 -2
  414. package/lib/util/map.js.map +1 -1
  415. package/lib/util/queue/index.d.ts +1 -1
  416. package/lib/util/queue/index.js +1 -1
  417. package/lib/util/queue/index.js.map +1 -1
  418. package/lib/util/queue/itemQueue.js +49 -52
  419. package/lib/util/queue/itemQueue.js.map +1 -1
  420. package/lib/util/serializedCache.js +3 -1
  421. package/lib/util/serializedCache.js.map +1 -1
  422. package/lib/util/set.js +0 -2
  423. package/lib/util/set.js.map +1 -1
  424. package/lib/util/timeSeries.js +1 -3
  425. package/lib/util/timeSeries.js.map +1 -1
  426. package/lib/util/types.d.ts +1 -1
  427. package/package.json +23 -39
  428. package/lib/api/impl/api.d.ts.map +0 -1
  429. package/lib/api/impl/beacon/blocks/index.d.ts.map +0 -1
  430. package/lib/api/impl/beacon/blocks/utils.d.ts.map +0 -1
  431. package/lib/api/impl/beacon/index.d.ts.map +0 -1
  432. package/lib/api/impl/beacon/pool/index.d.ts.map +0 -1
  433. package/lib/api/impl/beacon/rewards/index.d.ts.map +0 -1
  434. package/lib/api/impl/beacon/state/index.d.ts.map +0 -1
  435. package/lib/api/impl/beacon/state/utils.d.ts.map +0 -1
  436. package/lib/api/impl/config/constants.d.ts.map +0 -1
  437. package/lib/api/impl/config/index.d.ts.map +0 -1
  438. package/lib/api/impl/debug/index.d.ts.map +0 -1
  439. package/lib/api/impl/errors.d.ts.map +0 -1
  440. package/lib/api/impl/events/index.d.ts.map +0 -1
  441. package/lib/api/impl/index.d.ts.map +0 -1
  442. package/lib/api/impl/lightclient/index.d.ts.map +0 -1
  443. package/lib/api/impl/lodestar/index.d.ts.map +0 -1
  444. package/lib/api/impl/node/index.d.ts.map +0 -1
  445. package/lib/api/impl/node/utils.d.ts.map +0 -1
  446. package/lib/api/impl/proof/index.d.ts.map +0 -1
  447. package/lib/api/impl/types.d.ts.map +0 -1
  448. package/lib/api/impl/utils.d.ts.map +0 -1
  449. package/lib/api/impl/validator/index.d.ts.map +0 -1
  450. package/lib/api/impl/validator/utils.d.ts.map +0 -1
  451. package/lib/api/index.d.ts.map +0 -1
  452. package/lib/api/options.d.ts.map +0 -1
  453. package/lib/api/rest/activeSockets.d.ts.map +0 -1
  454. package/lib/api/rest/base.d.ts.map +0 -1
  455. package/lib/api/rest/index.d.ts.map +0 -1
  456. package/lib/api/rest/swaggerUI.d.ts.map +0 -1
  457. package/lib/bun-wrappers/prometheus-gc-stats.d.ts +0 -2
  458. package/lib/bun-wrappers/prometheus-gc-stats.d.ts.map +0 -1
  459. package/lib/bun-wrappers/prometheus-gc-stats.js +0 -8
  460. package/lib/bun-wrappers/prometheus-gc-stats.js.map +0 -1
  461. package/lib/chain/ColumnReconstructionTracker.d.ts.map +0 -1
  462. package/lib/chain/GetBlobsTracker.d.ts.map +0 -1
  463. package/lib/chain/archiveStore/archiveStore.d.ts.map +0 -1
  464. package/lib/chain/archiveStore/constants.d.ts.map +0 -1
  465. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +0 -1
  466. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +0 -1
  467. package/lib/chain/archiveStore/historicalState/metrics.d.ts.map +0 -1
  468. package/lib/chain/archiveStore/historicalState/types.d.ts.map +0 -1
  469. package/lib/chain/archiveStore/historicalState/worker.d.ts.map +0 -1
  470. package/lib/chain/archiveStore/index.d.ts.map +0 -1
  471. package/lib/chain/archiveStore/interface.d.ts.map +0 -1
  472. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +0 -1
  473. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +0 -1
  474. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +0 -1
  475. package/lib/chain/archiveStore/utils/updateBackfillRange.d.ts.map +0 -1
  476. package/lib/chain/balancesCache.d.ts.map +0 -1
  477. package/lib/chain/beaconProposerCache.d.ts.map +0 -1
  478. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +0 -1
  479. package/lib/chain/blocks/blockInput/errors.d.ts.map +0 -1
  480. package/lib/chain/blocks/blockInput/index.d.ts.map +0 -1
  481. package/lib/chain/blocks/blockInput/types.d.ts.map +0 -1
  482. package/lib/chain/blocks/blockInput/utils.d.ts.map +0 -1
  483. package/lib/chain/blocks/importBlock.d.ts.map +0 -1
  484. package/lib/chain/blocks/index.d.ts.map +0 -1
  485. package/lib/chain/blocks/types.d.ts.map +0 -1
  486. package/lib/chain/blocks/utils/blowfishBanner.d.ts.map +0 -1
  487. package/lib/chain/blocks/utils/chainSegment.d.ts.map +0 -1
  488. package/lib/chain/blocks/utils/checkpoint.d.ts.map +0 -1
  489. package/lib/chain/blocks/utils/giraffeBanner.d.ts.map +0 -1
  490. package/lib/chain/blocks/utils/ownBanner.d.ts.map +0 -1
  491. package/lib/chain/blocks/utils/pandaMergeTransitionBanner.d.ts.map +0 -1
  492. package/lib/chain/blocks/utils/zebraBanner.d.ts.map +0 -1
  493. package/lib/chain/blocks/verifyBlock.d.ts.map +0 -1
  494. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +0 -1
  495. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +0 -1
  496. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +0 -1
  497. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +0 -1
  498. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +0 -1
  499. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +0 -1
  500. package/lib/chain/bls/index.d.ts.map +0 -1
  501. package/lib/chain/bls/interface.d.ts.map +0 -1
  502. package/lib/chain/bls/maybeBatch.d.ts.map +0 -1
  503. package/lib/chain/bls/multithread/index.d.ts.map +0 -1
  504. package/lib/chain/bls/multithread/jobItem.d.ts.map +0 -1
  505. package/lib/chain/bls/multithread/poolSize.d.ts.map +0 -1
  506. package/lib/chain/bls/multithread/types.d.ts.map +0 -1
  507. package/lib/chain/bls/multithread/utils.d.ts.map +0 -1
  508. package/lib/chain/bls/multithread/worker.d.ts.map +0 -1
  509. package/lib/chain/bls/singleThread.d.ts.map +0 -1
  510. package/lib/chain/bls/utils.d.ts.map +0 -1
  511. package/lib/chain/chain.d.ts.map +0 -1
  512. package/lib/chain/emitter.d.ts.map +0 -1
  513. package/lib/chain/errors/attestationError.d.ts.map +0 -1
  514. package/lib/chain/errors/attesterSlashingError.d.ts.map +0 -1
  515. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  516. package/lib/chain/errors/blockError.d.ts.map +0 -1
  517. package/lib/chain/errors/blsToExecutionChangeError.d.ts.map +0 -1
  518. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +0 -1
  519. package/lib/chain/errors/gossipValidation.d.ts.map +0 -1
  520. package/lib/chain/errors/index.d.ts.map +0 -1
  521. package/lib/chain/errors/lightClientError.d.ts.map +0 -1
  522. package/lib/chain/errors/proposerSlashingError.d.ts.map +0 -1
  523. package/lib/chain/errors/syncCommitteeError.d.ts.map +0 -1
  524. package/lib/chain/errors/voluntaryExitError.d.ts.map +0 -1
  525. package/lib/chain/forkChoice/index.d.ts.map +0 -1
  526. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  527. package/lib/chain/genesis/interface.d.ts.map +0 -1
  528. package/lib/chain/index.d.ts.map +0 -1
  529. package/lib/chain/initState.d.ts.map +0 -1
  530. package/lib/chain/interface.d.ts.map +0 -1
  531. package/lib/chain/lightClient/index.d.ts.map +0 -1
  532. package/lib/chain/lightClient/proofs.d.ts.map +0 -1
  533. package/lib/chain/lightClient/types.d.ts.map +0 -1
  534. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +0 -1
  535. package/lib/chain/opPools/attestationPool.d.ts.map +0 -1
  536. package/lib/chain/opPools/index.d.ts.map +0 -1
  537. package/lib/chain/opPools/opPool.d.ts.map +0 -1
  538. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +0 -1
  539. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +0 -1
  540. package/lib/chain/opPools/types.d.ts.map +0 -1
  541. package/lib/chain/opPools/utils.d.ts.map +0 -1
  542. package/lib/chain/options.d.ts.map +0 -1
  543. package/lib/chain/prepareNextSlot.d.ts.map +0 -1
  544. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +0 -1
  545. package/lib/chain/produceBlock/index.d.ts.map +0 -1
  546. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +0 -1
  547. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts.map +0 -1
  548. package/lib/chain/regen/errors.d.ts.map +0 -1
  549. package/lib/chain/regen/index.d.ts.map +0 -1
  550. package/lib/chain/regen/interface.d.ts.map +0 -1
  551. package/lib/chain/regen/queued.d.ts.map +0 -1
  552. package/lib/chain/regen/regen.d.ts.map +0 -1
  553. package/lib/chain/reprocess.d.ts.map +0 -1
  554. package/lib/chain/rewards/attestationsRewards.d.ts.map +0 -1
  555. package/lib/chain/rewards/blockRewards.d.ts.map +0 -1
  556. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +0 -1
  557. package/lib/chain/seenCache/index.d.ts.map +0 -1
  558. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +0 -1
  559. package/lib/chain/seenCache/seenAttestationData.d.ts.map +0 -1
  560. package/lib/chain/seenCache/seenAttesters.d.ts.map +0 -1
  561. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +0 -1
  562. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +0 -1
  563. package/lib/chain/seenCache/seenCommittee.d.ts.map +0 -1
  564. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +0 -1
  565. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +0 -1
  566. package/lib/chain/serializeState.d.ts.map +0 -1
  567. package/lib/chain/shufflingCache.d.ts.map +0 -1
  568. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  569. package/lib/chain/stateCache/datastore/db.d.ts.map +0 -1
  570. package/lib/chain/stateCache/datastore/file.d.ts.map +0 -1
  571. package/lib/chain/stateCache/datastore/index.d.ts.map +0 -1
  572. package/lib/chain/stateCache/datastore/types.d.ts.map +0 -1
  573. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +0 -1
  574. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  575. package/lib/chain/stateCache/index.d.ts.map +0 -1
  576. package/lib/chain/stateCache/mapMetrics.d.ts.map +0 -1
  577. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +0 -1
  578. package/lib/chain/stateCache/types.d.ts.map +0 -1
  579. package/lib/chain/validation/aggregateAndProof.d.ts.map +0 -1
  580. package/lib/chain/validation/attestation.d.ts.map +0 -1
  581. package/lib/chain/validation/attesterSlashing.d.ts.map +0 -1
  582. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  583. package/lib/chain/validation/block.d.ts.map +0 -1
  584. package/lib/chain/validation/blsToExecutionChange.d.ts.map +0 -1
  585. package/lib/chain/validation/dataColumnSidecar.d.ts.map +0 -1
  586. package/lib/chain/validation/index.d.ts.map +0 -1
  587. package/lib/chain/validation/lightClientFinalityUpdate.d.ts.map +0 -1
  588. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts.map +0 -1
  589. package/lib/chain/validation/proposerSlashing.d.ts.map +0 -1
  590. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +0 -1
  591. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +0 -1
  592. package/lib/chain/validation/signatureSets/index.d.ts.map +0 -1
  593. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +0 -1
  594. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +0 -1
  595. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +0 -1
  596. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +0 -1
  597. package/lib/chain/validation/syncCommittee.d.ts.map +0 -1
  598. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +0 -1
  599. package/lib/chain/validation/voluntaryExit.d.ts.map +0 -1
  600. package/lib/chain/validatorMonitor.d.ts.map +0 -1
  601. package/lib/constants/constants.d.ts.map +0 -1
  602. package/lib/constants/index.d.ts.map +0 -1
  603. package/lib/constants/network.d.ts.map +0 -1
  604. package/lib/db/beacon.d.ts.map +0 -1
  605. package/lib/db/buckets.d.ts.map +0 -1
  606. package/lib/db/index.d.ts.map +0 -1
  607. package/lib/db/interface.d.ts.map +0 -1
  608. package/lib/db/options.d.ts.map +0 -1
  609. package/lib/db/repositories/attesterSlashing.d.ts.map +0 -1
  610. package/lib/db/repositories/backfilledRanges.d.ts.map +0 -1
  611. package/lib/db/repositories/blobSidecars.d.ts.map +0 -1
  612. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +0 -1
  613. package/lib/db/repositories/block.d.ts.map +0 -1
  614. package/lib/db/repositories/blockArchive.d.ts.map +0 -1
  615. package/lib/db/repositories/blockArchiveIndex.d.ts.map +0 -1
  616. package/lib/db/repositories/blsToExecutionChange.d.ts.map +0 -1
  617. package/lib/db/repositories/checkpointState.d.ts.map +0 -1
  618. package/lib/db/repositories/dataColumnSidecar.d.ts.map +0 -1
  619. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +0 -1
  620. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  621. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  622. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  623. package/lib/db/repositories/index.d.ts.map +0 -1
  624. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +0 -1
  625. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +0 -1
  626. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +0 -1
  627. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +0 -1
  628. package/lib/db/repositories/proposerSlashing.d.ts.map +0 -1
  629. package/lib/db/repositories/stateArchive.d.ts.map +0 -1
  630. package/lib/db/repositories/stateArchiveIndex.d.ts.map +0 -1
  631. package/lib/db/repositories/voluntaryExit.d.ts.map +0 -1
  632. package/lib/db/single/index.d.ts.map +0 -1
  633. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  634. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  635. package/lib/eth1/errors.d.ts.map +0 -1
  636. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  637. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  638. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  639. package/lib/eth1/eth1MergeBlockTracker.d.ts.map +0 -1
  640. package/lib/eth1/index.d.ts.map +0 -1
  641. package/lib/eth1/interface.d.ts.map +0 -1
  642. package/lib/eth1/options.d.ts.map +0 -1
  643. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  644. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  645. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  646. package/lib/eth1/provider/utils.d.ts.map +0 -1
  647. package/lib/eth1/stream.d.ts.map +0 -1
  648. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  649. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  650. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  651. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  652. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  653. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  654. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  655. package/lib/execution/builder/cache.d.ts.map +0 -1
  656. package/lib/execution/builder/http.d.ts.map +0 -1
  657. package/lib/execution/builder/index.d.ts.map +0 -1
  658. package/lib/execution/builder/interface.d.ts.map +0 -1
  659. package/lib/execution/builder/utils.d.ts.map +0 -1
  660. package/lib/execution/engine/disabled.d.ts.map +0 -1
  661. package/lib/execution/engine/http.d.ts.map +0 -1
  662. package/lib/execution/engine/index.d.ts.map +0 -1
  663. package/lib/execution/engine/interface.d.ts.map +0 -1
  664. package/lib/execution/engine/mock.d.ts.map +0 -1
  665. package/lib/execution/engine/payloadIdCache.d.ts.map +0 -1
  666. package/lib/execution/engine/types.d.ts.map +0 -1
  667. package/lib/execution/engine/utils.d.ts.map +0 -1
  668. package/lib/execution/index.d.ts.map +0 -1
  669. package/lib/index.d.ts.map +0 -1
  670. package/lib/metrics/index.d.ts.map +0 -1
  671. package/lib/metrics/metrics/beacon.d.ts.map +0 -1
  672. package/lib/metrics/metrics/lodestar.d.ts.map +0 -1
  673. package/lib/metrics/metrics.d.ts.map +0 -1
  674. package/lib/metrics/nodeJsMetrics.d.ts.map +0 -1
  675. package/lib/metrics/options.d.ts.map +0 -1
  676. package/lib/metrics/server/http.d.ts.map +0 -1
  677. package/lib/metrics/server/index.d.ts.map +0 -1
  678. package/lib/metrics/utils/avgMinMax.d.ts.map +0 -1
  679. package/lib/metrics/utils/gauge.d.ts.map +0 -1
  680. package/lib/metrics/utils/registryMetricCreator.d.ts.map +0 -1
  681. package/lib/monitoring/clientStats.d.ts.map +0 -1
  682. package/lib/monitoring/index.d.ts.map +0 -1
  683. package/lib/monitoring/options.d.ts.map +0 -1
  684. package/lib/monitoring/properties.d.ts.map +0 -1
  685. package/lib/monitoring/service.d.ts.map +0 -1
  686. package/lib/monitoring/system.d.ts.map +0 -1
  687. package/lib/monitoring/types.d.ts.map +0 -1
  688. package/lib/network/core/events.d.ts.map +0 -1
  689. package/lib/network/core/index.d.ts.map +0 -1
  690. package/lib/network/core/metrics.d.ts.map +0 -1
  691. package/lib/network/core/networkCore.d.ts.map +0 -1
  692. package/lib/network/core/networkCoreWorker.d.ts.map +0 -1
  693. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +0 -1
  694. package/lib/network/core/types.d.ts.map +0 -1
  695. package/lib/network/discv5/index.d.ts.map +0 -1
  696. package/lib/network/discv5/types.d.ts.map +0 -1
  697. package/lib/network/discv5/utils.d.ts.map +0 -1
  698. package/lib/network/discv5/worker.d.ts.map +0 -1
  699. package/lib/network/events.d.ts.map +0 -1
  700. package/lib/network/forks.d.ts.map +0 -1
  701. package/lib/network/gossip/constants.d.ts.map +0 -1
  702. package/lib/network/gossip/encoding.d.ts.map +0 -1
  703. package/lib/network/gossip/errors.d.ts.map +0 -1
  704. package/lib/network/gossip/gossipsub.d.ts.map +0 -1
  705. package/lib/network/gossip/index.d.ts.map +0 -1
  706. package/lib/network/gossip/interface.d.ts.map +0 -1
  707. package/lib/network/gossip/metrics.d.ts.map +0 -1
  708. package/lib/network/gossip/scoringParameters.d.ts.map +0 -1
  709. package/lib/network/gossip/topic.d.ts.map +0 -1
  710. package/lib/network/index.d.ts.map +0 -1
  711. package/lib/network/interface.d.ts.map +0 -1
  712. package/lib/network/libp2p/error.d.ts.map +0 -1
  713. package/lib/network/libp2p/index.d.ts.map +0 -1
  714. package/lib/network/metadata.d.ts.map +0 -1
  715. package/lib/network/network.d.ts.map +0 -1
  716. package/lib/network/networkConfig.d.ts.map +0 -1
  717. package/lib/network/options.d.ts.map +0 -1
  718. package/lib/network/peers/client.d.ts.map +0 -1
  719. package/lib/network/peers/datastore.d.ts.map +0 -1
  720. package/lib/network/peers/discover.d.ts.map +0 -1
  721. package/lib/network/peers/index.d.ts.map +0 -1
  722. package/lib/network/peers/peerManager.d.ts.map +0 -1
  723. package/lib/network/peers/peersData.d.ts.map +0 -1
  724. package/lib/network/peers/score/constants.d.ts.map +0 -1
  725. package/lib/network/peers/score/index.d.ts.map +0 -1
  726. package/lib/network/peers/score/interface.d.ts.map +0 -1
  727. package/lib/network/peers/score/score.d.ts.map +0 -1
  728. package/lib/network/peers/score/store.d.ts.map +0 -1
  729. package/lib/network/peers/score/utils.d.ts.map +0 -1
  730. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +0 -1
  731. package/lib/network/peers/utils/enrSubnetsDeserialize.d.ts.map +0 -1
  732. package/lib/network/peers/utils/getConnectedPeerIds.d.ts.map +0 -1
  733. package/lib/network/peers/utils/index.d.ts.map +0 -1
  734. package/lib/network/peers/utils/prioritizePeers.d.ts.map +0 -1
  735. package/lib/network/peers/utils/subnetMap.d.ts.map +0 -1
  736. package/lib/network/processor/aggregatorTracker.d.ts.map +0 -1
  737. package/lib/network/processor/extractSlotRootFns.d.ts.map +0 -1
  738. package/lib/network/processor/gossipHandlers.d.ts.map +0 -1
  739. package/lib/network/processor/gossipQueues/index.d.ts.map +0 -1
  740. package/lib/network/processor/gossipQueues/indexed.d.ts.map +0 -1
  741. package/lib/network/processor/gossipQueues/linear.d.ts.map +0 -1
  742. package/lib/network/processor/gossipQueues/types.d.ts.map +0 -1
  743. package/lib/network/processor/gossipValidatorFn.d.ts.map +0 -1
  744. package/lib/network/processor/index.d.ts.map +0 -1
  745. package/lib/network/processor/types.d.ts.map +0 -1
  746. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +0 -1
  747. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +0 -1
  748. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +0 -1
  749. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  750. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  751. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +0 -1
  752. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +0 -1
  753. package/lib/network/reqresp/handlers/index.d.ts.map +0 -1
  754. package/lib/network/reqresp/handlers/lightClientBootstrap.d.ts.map +0 -1
  755. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.d.ts.map +0 -1
  756. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.d.ts.map +0 -1
  757. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.d.ts.map +0 -1
  758. package/lib/network/reqresp/index.d.ts.map +0 -1
  759. package/lib/network/reqresp/interface.d.ts.map +0 -1
  760. package/lib/network/reqresp/protocols.d.ts.map +0 -1
  761. package/lib/network/reqresp/rateLimit.d.ts.map +0 -1
  762. package/lib/network/reqresp/score.d.ts.map +0 -1
  763. package/lib/network/reqresp/types.d.ts.map +0 -1
  764. package/lib/network/reqresp/utils/collect.d.ts.map +0 -1
  765. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts.map +0 -1
  766. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +0 -1
  767. package/lib/network/statusCache.d.ts.map +0 -1
  768. package/lib/network/subnets/attnetsService.d.ts.map +0 -1
  769. package/lib/network/subnets/index.d.ts.map +0 -1
  770. package/lib/network/subnets/interface.d.ts.map +0 -1
  771. package/lib/network/subnets/syncnetsService.d.ts.map +0 -1
  772. package/lib/network/subnets/util.d.ts.map +0 -1
  773. package/lib/network/util.d.ts.map +0 -1
  774. package/lib/node/index.d.ts.map +0 -1
  775. package/lib/node/nodejs.d.ts.map +0 -1
  776. package/lib/node/notifier.d.ts.map +0 -1
  777. package/lib/node/options.d.ts.map +0 -1
  778. package/lib/node/utils/interop/deposits.d.ts.map +0 -1
  779. package/lib/node/utils/interop/state.d.ts.map +0 -1
  780. package/lib/node/utils/lightclient.d.ts.map +0 -1
  781. package/lib/node/utils/state.d.ts.map +0 -1
  782. package/lib/sync/backfill/backfill.d.ts.map +0 -1
  783. package/lib/sync/backfill/errors.d.ts.map +0 -1
  784. package/lib/sync/backfill/index.d.ts.map +0 -1
  785. package/lib/sync/backfill/verify.d.ts.map +0 -1
  786. package/lib/sync/constants.d.ts.map +0 -1
  787. package/lib/sync/index.d.ts.map +0 -1
  788. package/lib/sync/interface.d.ts.map +0 -1
  789. package/lib/sync/options.d.ts.map +0 -1
  790. package/lib/sync/range/batch.d.ts.map +0 -1
  791. package/lib/sync/range/chain.d.ts.map +0 -1
  792. package/lib/sync/range/range.d.ts.map +0 -1
  793. package/lib/sync/range/utils/batches.d.ts.map +0 -1
  794. package/lib/sync/range/utils/chainTarget.d.ts.map +0 -1
  795. package/lib/sync/range/utils/hashBlocks.d.ts.map +0 -1
  796. package/lib/sync/range/utils/index.d.ts.map +0 -1
  797. package/lib/sync/range/utils/peerBalancer.d.ts.map +0 -1
  798. package/lib/sync/range/utils/updateChains.d.ts.map +0 -1
  799. package/lib/sync/sync.d.ts.map +0 -1
  800. package/lib/sync/types.d.ts.map +0 -1
  801. package/lib/sync/unknownBlock.d.ts.map +0 -1
  802. package/lib/sync/utils/downloadByRange.d.ts.map +0 -1
  803. package/lib/sync/utils/downloadByRoot.d.ts.map +0 -1
  804. package/lib/sync/utils/pendingBlocksTree.d.ts.map +0 -1
  805. package/lib/sync/utils/remoteSyncType.d.ts.map +0 -1
  806. package/lib/util/address.d.ts.map +0 -1
  807. package/lib/util/array.d.ts.map +0 -1
  808. package/lib/util/asyncIterableToEvents.d.ts.map +0 -1
  809. package/lib/util/binarySearch.d.ts.map +0 -1
  810. package/lib/util/bitArray.d.ts.map +0 -1
  811. package/lib/util/blobs.d.ts.map +0 -1
  812. package/lib/util/bufferPool.d.ts.map +0 -1
  813. package/lib/util/bytes.d.ts.map +0 -1
  814. package/lib/util/chunkify.d.ts.map +0 -1
  815. package/lib/util/clock.d.ts.map +0 -1
  816. package/lib/util/dataColumns.d.ts.map +0 -1
  817. package/lib/util/dependentRoot.d.ts.map +0 -1
  818. package/lib/util/enum.d.ts.map +0 -1
  819. package/lib/util/error.d.ts.map +0 -1
  820. package/lib/util/eventLoop.d.ts.map +0 -1
  821. package/lib/util/execution.d.ts.map +0 -1
  822. package/lib/util/file.d.ts.map +0 -1
  823. package/lib/util/forkChoice.d.ts.map +0 -1
  824. package/lib/util/forkName.d.ts.map +0 -1
  825. package/lib/util/graffiti.d.ts.map +0 -1
  826. package/lib/util/hex.d.ts.map +0 -1
  827. package/lib/util/index.d.ts.map +0 -1
  828. package/lib/util/ip.d.ts.map +0 -1
  829. package/lib/util/itTrigger.d.ts.map +0 -1
  830. package/lib/util/kzg.d.ts.map +0 -1
  831. package/lib/util/map.d.ts.map +0 -1
  832. package/lib/util/metadata.d.ts.map +0 -1
  833. package/lib/util/multifork.d.ts.map +0 -1
  834. package/lib/util/numpy.d.ts.map +0 -1
  835. package/lib/util/peerId.d.ts.map +0 -1
  836. package/lib/util/profile.d.ts.map +0 -1
  837. package/lib/util/promises.d.ts.map +0 -1
  838. package/lib/util/queue/errors.d.ts.map +0 -1
  839. package/lib/util/queue/fnQueue.d.ts.map +0 -1
  840. package/lib/util/queue/index.d.ts.map +0 -1
  841. package/lib/util/queue/itemQueue.d.ts.map +0 -1
  842. package/lib/util/queue/options.d.ts.map +0 -1
  843. package/lib/util/serializedCache.d.ts.map +0 -1
  844. package/lib/util/set.d.ts.map +0 -1
  845. package/lib/util/shuffle.d.ts.map +0 -1
  846. package/lib/util/sortBy.d.ts.map +0 -1
  847. package/lib/util/sszBytes.d.ts.map +0 -1
  848. package/lib/util/strictEvents.d.ts.map +0 -1
  849. package/lib/util/time.d.ts.map +0 -1
  850. package/lib/util/timeSeries.d.ts.map +0 -1
  851. package/lib/util/types.d.ts.map +0 -1
  852. package/lib/util/workerEvents.d.ts.map +0 -1
  853. package/lib/util/wrapError.d.ts.map +0 -1
  854. package/src/api/impl/api.ts +0 -26
  855. package/src/api/impl/beacon/blocks/index.ts +0 -744
  856. package/src/api/impl/beacon/blocks/utils.ts +0 -75
  857. package/src/api/impl/beacon/index.ts +0 -35
  858. package/src/api/impl/beacon/pool/index.ts +0 -314
  859. package/src/api/impl/beacon/rewards/index.ts +0 -30
  860. package/src/api/impl/beacon/state/index.ts +0 -406
  861. package/src/api/impl/beacon/state/utils.ts +0 -189
  862. package/src/api/impl/config/constants.ts +0 -127
  863. package/src/api/impl/config/index.ts +0 -59
  864. package/src/api/impl/debug/index.ts +0 -131
  865. package/src/api/impl/errors.ts +0 -50
  866. package/src/api/impl/events/index.ts +0 -33
  867. package/src/api/impl/index.ts +0 -6
  868. package/src/api/impl/lightclient/index.ts +0 -64
  869. package/src/api/impl/lodestar/index.ts +0 -257
  870. package/src/api/impl/node/index.ts +0 -88
  871. package/src/api/impl/node/utils.ts +0 -51
  872. package/src/api/impl/proof/index.ts +0 -60
  873. package/src/api/impl/types.ts +0 -17
  874. package/src/api/impl/utils.ts +0 -25
  875. package/src/api/impl/validator/index.ts +0 -1540
  876. package/src/api/impl/validator/utils.ts +0 -85
  877. package/src/api/index.ts +0 -2
  878. package/src/api/options.ts +0 -16
  879. package/src/api/rest/activeSockets.ts +0 -109
  880. package/src/api/rest/base.ts +0 -216
  881. package/src/api/rest/index.ts +0 -63
  882. package/src/api/rest/swaggerUI.ts +0 -80
  883. package/src/bun-wrappers/prometheus-gc-stats.ts +0 -7
  884. package/src/chain/ColumnReconstructionTracker.ts +0 -90
  885. package/src/chain/GetBlobsTracker.ts +0 -115
  886. package/src/chain/archiveStore/archiveStore.ts +0 -222
  887. package/src/chain/archiveStore/constants.ts +0 -5
  888. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +0 -116
  889. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +0 -68
  890. package/src/chain/archiveStore/historicalState/metrics.ts +0 -214
  891. package/src/chain/archiveStore/historicalState/types.ts +0 -41
  892. package/src/chain/archiveStore/historicalState/worker.ts +0 -77
  893. package/src/chain/archiveStore/index.ts +0 -3
  894. package/src/chain/archiveStore/interface.ts +0 -75
  895. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +0 -138
  896. package/src/chain/archiveStore/utils/archiveBlocks.ts +0 -437
  897. package/src/chain/archiveStore/utils/pruneHistory.ts +0 -56
  898. package/src/chain/archiveStore/utils/updateBackfillRange.ts +0 -50
  899. package/src/chain/balancesCache.ts +0 -52
  900. package/src/chain/beaconProposerCache.ts +0 -43
  901. package/src/chain/blocks/blockInput/blockInput.ts +0 -852
  902. package/src/chain/blocks/blockInput/errors.ts +0 -48
  903. package/src/chain/blocks/blockInput/index.ts +0 -4
  904. package/src/chain/blocks/blockInput/types.ts +0 -145
  905. package/src/chain/blocks/blockInput/utils.ts +0 -21
  906. package/src/chain/blocks/importBlock.ts +0 -597
  907. package/src/chain/blocks/index.ts +0 -179
  908. package/src/chain/blocks/types.ts +0 -101
  909. package/src/chain/blocks/utils/blowfishBanner.ts +0 -28
  910. package/src/chain/blocks/utils/chainSegment.ts +0 -29
  911. package/src/chain/blocks/utils/checkpoint.ts +0 -25
  912. package/src/chain/blocks/utils/giraffeBanner.ts +0 -30
  913. package/src/chain/blocks/utils/ownBanner.ts +0 -20
  914. package/src/chain/blocks/utils/pandaMergeTransitionBanner.ts +0 -43
  915. package/src/chain/blocks/utils/zebraBanner.ts +0 -45
  916. package/src/chain/blocks/verifyBlock.ts +0 -242
  917. package/src/chain/blocks/verifyBlocksDataAvailability.ts +0 -42
  918. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +0 -438
  919. package/src/chain/blocks/verifyBlocksSanityChecks.ts +0 -129
  920. package/src/chain/blocks/verifyBlocksSignatures.ts +0 -105
  921. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +0 -114
  922. package/src/chain/blocks/writeBlockInputToDb.ts +0 -128
  923. package/src/chain/bls/index.ts +0 -4
  924. package/src/chain/bls/interface.ts +0 -68
  925. package/src/chain/bls/maybeBatch.ts +0 -45
  926. package/src/chain/bls/multithread/index.ts +0 -582
  927. package/src/chain/bls/multithread/jobItem.ts +0 -119
  928. package/src/chain/bls/multithread/poolSize.ts +0 -16
  929. package/src/chain/bls/multithread/types.ts +0 -38
  930. package/src/chain/bls/multithread/utils.ts +0 -19
  931. package/src/chain/bls/multithread/worker.ts +0 -114
  932. package/src/chain/bls/singleThread.ts +0 -87
  933. package/src/chain/bls/utils.ts +0 -30
  934. package/src/chain/chain.ts +0 -1354
  935. package/src/chain/emitter.ts +0 -113
  936. package/src/chain/errors/attestationError.ts +0 -194
  937. package/src/chain/errors/attesterSlashingError.ts +0 -11
  938. package/src/chain/errors/blobSidecarError.ts +0 -60
  939. package/src/chain/errors/blockError.ts +0 -166
  940. package/src/chain/errors/blsToExecutionChangeError.ts +0 -13
  941. package/src/chain/errors/dataColumnSidecarError.ts +0 -80
  942. package/src/chain/errors/gossipValidation.ts +0 -20
  943. package/src/chain/errors/index.ts +0 -10
  944. package/src/chain/errors/lightClientError.ts +0 -30
  945. package/src/chain/errors/proposerSlashingError.ts +0 -11
  946. package/src/chain/errors/syncCommitteeError.ts +0 -36
  947. package/src/chain/errors/voluntaryExitError.ts +0 -13
  948. package/src/chain/forkChoice/index.ts +0 -112
  949. package/src/chain/genesis/genesis.ts +0 -190
  950. package/src/chain/genesis/interface.ts +0 -14
  951. package/src/chain/index.ts +0 -6
  952. package/src/chain/initState.ts +0 -221
  953. package/src/chain/interface.ts +0 -280
  954. package/src/chain/lightClient/index.ts +0 -764
  955. package/src/chain/lightClient/proofs.ts +0 -85
  956. package/src/chain/lightClient/types.ts +0 -33
  957. package/src/chain/opPools/aggregatedAttestationPool.ts +0 -1063
  958. package/src/chain/opPools/attestationPool.ts +0 -282
  959. package/src/chain/opPools/index.ts +0 -5
  960. package/src/chain/opPools/opPool.ts +0 -462
  961. package/src/chain/opPools/syncCommitteeMessagePool.ts +0 -169
  962. package/src/chain/opPools/syncContributionAndProofPool.ts +0 -240
  963. package/src/chain/opPools/types.ts +0 -35
  964. package/src/chain/opPools/utils.ts +0 -65
  965. package/src/chain/options.ts +0 -138
  966. package/src/chain/prepareNextSlot.ts +0 -277
  967. package/src/chain/produceBlock/computeNewStateRoot.ts +0 -55
  968. package/src/chain/produceBlock/index.ts +0 -2
  969. package/src/chain/produceBlock/produceBlockBody.ts +0 -797
  970. package/src/chain/produceBlock/validateBlobsAndKzgCommitments.ts +0 -54
  971. package/src/chain/regen/errors.ts +0 -30
  972. package/src/chain/regen/index.ts +0 -4
  973. package/src/chain/regen/interface.ts +0 -93
  974. package/src/chain/regen/queued.ts +0 -317
  975. package/src/chain/regen/regen.ts +0 -424
  976. package/src/chain/reprocess.ts +0 -161
  977. package/src/chain/rewards/attestationsRewards.ts +0 -196
  978. package/src/chain/rewards/blockRewards.ts +0 -150
  979. package/src/chain/rewards/syncCommitteeRewards.ts +0 -58
  980. package/src/chain/seenCache/index.ts +0 -5
  981. package/src/chain/seenCache/seenAggregateAndProof.ts +0 -120
  982. package/src/chain/seenCache/seenAttestationData.ts +0 -145
  983. package/src/chain/seenCache/seenAttesters.ts +0 -58
  984. package/src/chain/seenCache/seenBlockAttesters.ts +0 -18
  985. package/src/chain/seenCache/seenBlockProposers.ts +0 -48
  986. package/src/chain/seenCache/seenCommittee.ts +0 -43
  987. package/src/chain/seenCache/seenCommitteeContribution.ts +0 -104
  988. package/src/chain/seenCache/seenGossipBlockInput.ts +0 -373
  989. package/src/chain/serializeState.ts +0 -32
  990. package/src/chain/shufflingCache.ts +0 -238
  991. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  992. package/src/chain/stateCache/datastore/db.ts +0 -36
  993. package/src/chain/stateCache/datastore/file.ts +0 -53
  994. package/src/chain/stateCache/datastore/index.ts +0 -2
  995. package/src/chain/stateCache/datastore/types.ts +0 -13
  996. package/src/chain/stateCache/fifoBlockStateCache.ts +0 -208
  997. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  998. package/src/chain/stateCache/index.ts +0 -3
  999. package/src/chain/stateCache/mapMetrics.ts +0 -52
  1000. package/src/chain/stateCache/persistentCheckpointsCache.ts +0 -837
  1001. package/src/chain/stateCache/types.ts +0 -86
  1002. package/src/chain/validation/aggregateAndProof.ts +0 -258
  1003. package/src/chain/validation/attestation.ts +0 -885
  1004. package/src/chain/validation/attesterSlashing.ts +0 -61
  1005. package/src/chain/validation/blobSidecar.ts +0 -301
  1006. package/src/chain/validation/block.ts +0 -188
  1007. package/src/chain/validation/blsToExecutionChange.ts +0 -61
  1008. package/src/chain/validation/dataColumnSidecar.ts +0 -381
  1009. package/src/chain/validation/index.ts +0 -9
  1010. package/src/chain/validation/lightClientFinalityUpdate.ts +0 -46
  1011. package/src/chain/validation/lightClientOptimisticUpdate.ts +0 -68
  1012. package/src/chain/validation/proposerSlashing.ts +0 -54
  1013. package/src/chain/validation/signatureSets/aggregateAndProof.ts +0 -38
  1014. package/src/chain/validation/signatureSets/contributionAndProof.ts +0 -27
  1015. package/src/chain/validation/signatureSets/index.ts +0 -6
  1016. package/src/chain/validation/signatureSets/selectionProof.ts +0 -27
  1017. package/src/chain/validation/signatureSets/syncCommittee.ts +0 -22
  1018. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +0 -18
  1019. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +0 -27
  1020. package/src/chain/validation/syncCommittee.ts +0 -165
  1021. package/src/chain/validation/syncCommitteeContributionAndProof.ts +0 -122
  1022. package/src/chain/validation/voluntaryExit.ts +0 -58
  1023. package/src/chain/validatorMonitor.ts +0 -1309
  1024. package/src/constants/constants.ts +0 -15
  1025. package/src/constants/index.ts +0 -2
  1026. package/src/constants/network.ts +0 -52
  1027. package/src/db/beacon.ts +0 -113
  1028. package/src/db/buckets.ts +0 -80
  1029. package/src/db/index.ts +0 -2
  1030. package/src/db/interface.ts +0 -76
  1031. package/src/db/options.ts +0 -7
  1032. package/src/db/repositories/attesterSlashing.ts +0 -38
  1033. package/src/db/repositories/backfilledRanges.ts +0 -29
  1034. package/src/db/repositories/blobSidecars.ts +0 -37
  1035. package/src/db/repositories/blobSidecarsArchive.ts +0 -28
  1036. package/src/db/repositories/block.ts +0 -33
  1037. package/src/db/repositories/blockArchive.ts +0 -170
  1038. package/src/db/repositories/blockArchiveIndex.ts +0 -45
  1039. package/src/db/repositories/blsToExecutionChange.ts +0 -16
  1040. package/src/db/repositories/checkpointState.ts +0 -31
  1041. package/src/db/repositories/dataColumnSidecar.ts +0 -49
  1042. package/src/db/repositories/dataColumnSidecarArchive.ts +0 -56
  1043. package/src/db/repositories/depositDataRoot.ts +0 -80
  1044. package/src/db/repositories/depositEvent.ts +0 -32
  1045. package/src/db/repositories/eth1Data.ts +0 -33
  1046. package/src/db/repositories/index.ts +0 -20
  1047. package/src/db/repositories/lightclientBestUpdate.ts +0 -41
  1048. package/src/db/repositories/lightclientCheckpointHeader.ts +0 -32
  1049. package/src/db/repositories/lightclientSyncCommittee.ts +0 -16
  1050. package/src/db/repositories/lightclientSyncCommitteeWitness.ts +0 -77
  1051. package/src/db/repositories/proposerSlashing.ts +0 -15
  1052. package/src/db/repositories/stateArchive.ts +0 -69
  1053. package/src/db/repositories/stateArchiveIndex.ts +0 -18
  1054. package/src/db/repositories/voluntaryExit.ts +0 -15
  1055. package/src/db/single/index.ts +0 -2
  1056. package/src/db/single/preGenesisState.ts +0 -37
  1057. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  1058. package/src/eth1/errors.ts +0 -40
  1059. package/src/eth1/eth1DataCache.ts +0 -26
  1060. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  1061. package/src/eth1/eth1DepositsCache.ts +0 -141
  1062. package/src/eth1/eth1MergeBlockTracker.ts +0 -328
  1063. package/src/eth1/index.ts +0 -157
  1064. package/src/eth1/interface.ts +0 -131
  1065. package/src/eth1/options.ts +0 -28
  1066. package/src/eth1/provider/eth1Provider.ts +0 -229
  1067. package/src/eth1/provider/jsonRpcHttpClient.ts +0 -390
  1068. package/src/eth1/provider/jwt.ts +0 -36
  1069. package/src/eth1/provider/utils.ts +0 -136
  1070. package/src/eth1/stream.ts +0 -75
  1071. package/src/eth1/utils/depositContract.ts +0 -37
  1072. package/src/eth1/utils/deposits.ts +0 -70
  1073. package/src/eth1/utils/eth1Data.ts +0 -100
  1074. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  1075. package/src/eth1/utils/eth1Vote.ts +0 -142
  1076. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  1077. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  1078. package/src/execution/builder/cache.ts +0 -39
  1079. package/src/execution/builder/http.ts +0 -229
  1080. package/src/execution/builder/index.ts +0 -27
  1081. package/src/execution/builder/interface.ts +0 -49
  1082. package/src/execution/builder/utils.ts +0 -19
  1083. package/src/execution/engine/disabled.ts +0 -35
  1084. package/src/execution/engine/http.ts +0 -644
  1085. package/src/execution/engine/index.ts +0 -63
  1086. package/src/execution/engine/interface.ts +0 -199
  1087. package/src/execution/engine/mock.ts +0 -493
  1088. package/src/execution/engine/payloadIdCache.ts +0 -54
  1089. package/src/execution/engine/types.ts +0 -640
  1090. package/src/execution/engine/utils.ts +0 -136
  1091. package/src/execution/index.ts +0 -4
  1092. package/src/index.ts +0 -20
  1093. package/src/metrics/index.ts +0 -4
  1094. package/src/metrics/metrics/beacon.ts +0 -390
  1095. package/src/metrics/metrics/lodestar.ts +0 -1870
  1096. package/src/metrics/metrics.ts +0 -43
  1097. package/src/metrics/nodeJsMetrics.ts +0 -19
  1098. package/src/metrics/options.ts +0 -22
  1099. package/src/metrics/server/http.ts +0 -114
  1100. package/src/metrics/server/index.ts +0 -1
  1101. package/src/metrics/utils/avgMinMax.ts +0 -87
  1102. package/src/metrics/utils/gauge.ts +0 -22
  1103. package/src/metrics/utils/registryMetricCreator.ts +0 -41
  1104. package/src/monitoring/clientStats.ts +0 -297
  1105. package/src/monitoring/index.ts +0 -2
  1106. package/src/monitoring/options.ts +0 -19
  1107. package/src/monitoring/properties.ts +0 -152
  1108. package/src/monitoring/service.ts +0 -235
  1109. package/src/monitoring/system.ts +0 -146
  1110. package/src/monitoring/types.ts +0 -21
  1111. package/src/network/core/events.ts +0 -59
  1112. package/src/network/core/index.ts +0 -3
  1113. package/src/network/core/metrics.ts +0 -304
  1114. package/src/network/core/networkCore.ts +0 -599
  1115. package/src/network/core/networkCoreWorker.ts +0 -176
  1116. package/src/network/core/networkCoreWorkerHandler.ts +0 -284
  1117. package/src/network/core/types.ts +0 -119
  1118. package/src/network/discv5/index.ts +0 -132
  1119. package/src/network/discv5/types.ts +0 -74
  1120. package/src/network/discv5/utils.ts +0 -50
  1121. package/src/network/discv5/worker.ts +0 -137
  1122. package/src/network/events.ts +0 -51
  1123. package/src/network/forks.ts +0 -94
  1124. package/src/network/gossip/constants.ts +0 -15
  1125. package/src/network/gossip/encoding.ts +0 -111
  1126. package/src/network/gossip/errors.ts +0 -7
  1127. package/src/network/gossip/gossipsub.ts +0 -384
  1128. package/src/network/gossip/index.ts +0 -4
  1129. package/src/network/gossip/interface.ts +0 -215
  1130. package/src/network/gossip/metrics.ts +0 -71
  1131. package/src/network/gossip/scoringParameters.ts +0 -333
  1132. package/src/network/gossip/topic.ts +0 -332
  1133. package/src/network/index.ts +0 -8
  1134. package/src/network/interface.ts +0 -134
  1135. package/src/network/libp2p/error.ts +0 -55
  1136. package/src/network/libp2p/index.ts +0 -153
  1137. package/src/network/metadata.ts +0 -162
  1138. package/src/network/network.ts +0 -767
  1139. package/src/network/networkConfig.ts +0 -12
  1140. package/src/network/options.ts +0 -70
  1141. package/src/network/peers/client.ts +0 -29
  1142. package/src/network/peers/datastore.ts +0 -188
  1143. package/src/network/peers/discover.ts +0 -647
  1144. package/src/network/peers/index.ts +0 -2
  1145. package/src/network/peers/peerManager.ts +0 -899
  1146. package/src/network/peers/peersData.ts +0 -65
  1147. package/src/network/peers/score/constants.ts +0 -34
  1148. package/src/network/peers/score/index.ts +0 -4
  1149. package/src/network/peers/score/interface.ts +0 -74
  1150. package/src/network/peers/score/score.ts +0 -200
  1151. package/src/network/peers/score/store.ts +0 -95
  1152. package/src/network/peers/score/utils.ts +0 -37
  1153. package/src/network/peers/utils/assertPeerRelevance.ts +0 -99
  1154. package/src/network/peers/utils/enrSubnetsDeserialize.ts +0 -27
  1155. package/src/network/peers/utils/getConnectedPeerIds.ts +0 -33
  1156. package/src/network/peers/utils/index.ts +0 -4
  1157. package/src/network/peers/utils/prioritizePeers.ts +0 -627
  1158. package/src/network/peers/utils/subnetMap.ts +0 -88
  1159. package/src/network/processor/aggregatorTracker.ts +0 -38
  1160. package/src/network/processor/extractSlotRootFns.ts +0 -64
  1161. package/src/network/processor/gossipHandlers.ts +0 -951
  1162. package/src/network/processor/gossipQueues/index.ts +0 -114
  1163. package/src/network/processor/gossipQueues/indexed.ts +0 -219
  1164. package/src/network/processor/gossipQueues/linear.ts +0 -162
  1165. package/src/network/processor/gossipQueues/types.ts +0 -57
  1166. package/src/network/processor/gossipValidatorFn.ts +0 -142
  1167. package/src/network/processor/index.ts +0 -496
  1168. package/src/network/processor/types.ts +0 -27
  1169. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -373
  1170. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +0 -101
  1171. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +0 -49
  1172. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -114
  1173. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -62
  1174. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +0 -144
  1175. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +0 -88
  1176. package/src/network/reqresp/handlers/index.ts +0 -78
  1177. package/src/network/reqresp/handlers/lightClientBootstrap.ts +0 -31
  1178. package/src/network/reqresp/handlers/lightClientFinalityUpdate.ts +0 -21
  1179. package/src/network/reqresp/handlers/lightClientOptimisticUpdate.ts +0 -21
  1180. package/src/network/reqresp/handlers/lightClientUpdatesByRange.ts +0 -39
  1181. package/src/network/reqresp/index.ts +0 -2
  1182. package/src/network/reqresp/interface.ts +0 -45
  1183. package/src/network/reqresp/protocols.ts +0 -146
  1184. package/src/network/reqresp/rateLimit.ts +0 -112
  1185. package/src/network/reqresp/score.ts +0 -70
  1186. package/src/network/reqresp/types.ts +0 -174
  1187. package/src/network/reqresp/utils/collect.ts +0 -84
  1188. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +0 -57
  1189. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +0 -99
  1190. package/src/network/statusCache.ts +0 -17
  1191. package/src/network/subnets/attnetsService.ts +0 -385
  1192. package/src/network/subnets/index.ts +0 -2
  1193. package/src/network/subnets/interface.ts +0 -66
  1194. package/src/network/subnets/syncnetsService.ts +0 -147
  1195. package/src/network/subnets/util.ts +0 -63
  1196. package/src/network/util.ts +0 -29
  1197. package/src/node/index.ts +0 -2
  1198. package/src/node/nodejs.ts +0 -349
  1199. package/src/node/notifier.ts +0 -206
  1200. package/src/node/options.ts +0 -51
  1201. package/src/node/utils/interop/deposits.ts +0 -53
  1202. package/src/node/utils/interop/state.ts +0 -59
  1203. package/src/node/utils/lightclient.ts +0 -7
  1204. package/src/node/utils/state.ts +0 -37
  1205. package/src/sync/backfill/backfill.ts +0 -893
  1206. package/src/sync/backfill/errors.ts +0 -23
  1207. package/src/sync/backfill/index.ts +0 -1
  1208. package/src/sync/backfill/verify.ts +0 -58
  1209. package/src/sync/constants.ts +0 -71
  1210. package/src/sync/index.ts +0 -2
  1211. package/src/sync/interface.ts +0 -55
  1212. package/src/sync/options.ts +0 -45
  1213. package/src/sync/range/batch.ts +0 -455
  1214. package/src/sync/range/chain.ts +0 -715
  1215. package/src/sync/range/range.ts +0 -354
  1216. package/src/sync/range/utils/batches.ts +0 -119
  1217. package/src/sync/range/utils/chainTarget.ts +0 -62
  1218. package/src/sync/range/utils/hashBlocks.ts +0 -27
  1219. package/src/sync/range/utils/index.ts +0 -5
  1220. package/src/sync/range/utils/peerBalancer.ts +0 -184
  1221. package/src/sync/range/utils/updateChains.ts +0 -66
  1222. package/src/sync/sync.ts +0 -290
  1223. package/src/sync/types.ts +0 -57
  1224. package/src/sync/unknownBlock.ts +0 -859
  1225. package/src/sync/utils/downloadByRange.ts +0 -808
  1226. package/src/sync/utils/downloadByRoot.ts +0 -560
  1227. package/src/sync/utils/pendingBlocksTree.ts +0 -97
  1228. package/src/sync/utils/remoteSyncType.ts +0 -144
  1229. package/src/util/address.ts +0 -3
  1230. package/src/util/array.ts +0 -311
  1231. package/src/util/asyncIterableToEvents.ts +0 -164
  1232. package/src/util/binarySearch.ts +0 -48
  1233. package/src/util/bitArray.ts +0 -84
  1234. package/src/util/blobs.ts +0 -210
  1235. package/src/util/bufferPool.ts +0 -95
  1236. package/src/util/bytes.ts +0 -11
  1237. package/src/util/chunkify.ts +0 -27
  1238. package/src/util/clock.ts +0 -212
  1239. package/src/util/dataColumns.ts +0 -415
  1240. package/src/util/dependentRoot.ts +0 -47
  1241. package/src/util/enum.ts +0 -17
  1242. package/src/util/error.ts +0 -56
  1243. package/src/util/eventLoop.ts +0 -22
  1244. package/src/util/execution.ts +0 -223
  1245. package/src/util/file.ts +0 -52
  1246. package/src/util/forkChoice.ts +0 -5
  1247. package/src/util/forkName.ts +0 -20
  1248. package/src/util/graffiti.ts +0 -39
  1249. package/src/util/hex.ts +0 -9
  1250. package/src/util/index.ts +0 -2
  1251. package/src/util/ip.ts +0 -6
  1252. package/src/util/itTrigger.ts +0 -49
  1253. package/src/util/kzg.ts +0 -3
  1254. package/src/util/map.ts +0 -77
  1255. package/src/util/metadata.ts +0 -22
  1256. package/src/util/multifork.ts +0 -69
  1257. package/src/util/numpy.ts +0 -8
  1258. package/src/util/peerId.ts +0 -16
  1259. package/src/util/profile.ts +0 -54
  1260. package/src/util/promises.ts +0 -14
  1261. package/src/util/queue/errors.ts +0 -14
  1262. package/src/util/queue/fnQueue.ts +0 -16
  1263. package/src/util/queue/index.ts +0 -4
  1264. package/src/util/queue/itemQueue.ts +0 -128
  1265. package/src/util/queue/options.ts +0 -37
  1266. package/src/util/serializedCache.ts +0 -20
  1267. package/src/util/set.ts +0 -62
  1268. package/src/util/shuffle.ts +0 -21
  1269. package/src/util/sortBy.ts +0 -19
  1270. package/src/util/sszBytes.ts +0 -481
  1271. package/src/util/strictEvents.ts +0 -8
  1272. package/src/util/time.ts +0 -13
  1273. package/src/util/timeSeries.ts +0 -118
  1274. package/src/util/types.ts +0 -31
  1275. package/src/util/workerEvents.ts +0 -142
  1276. package/src/util/wrapError.ts +0 -27
@@ -1,437 +0,0 @@
1
- import path from "node:path";
2
- import {ChainForkConfig} from "@lodestar/config";
3
- import {KeyValue} from "@lodestar/db";
4
- import {IForkChoice} from "@lodestar/fork-choice";
5
- import {ForkSeq, SLOTS_PER_EPOCH} from "@lodestar/params";
6
- import {computeEpochAtSlot, computeStartSlotAtEpoch} from "@lodestar/state-transition";
7
- import {Epoch, RootHex, Slot} from "@lodestar/types";
8
- import {Logger, fromAsync, fromHex, prettyPrintIndices, toRootHex} from "@lodestar/utils";
9
- import {IBeaconDb} from "../../../db/index.js";
10
- import {BlockArchiveBatchPutBinaryItem} from "../../../db/repositories/index.js";
11
- import {ensureDir, writeIfNotExist} from "../../../util/file.js";
12
- import {BlockRootHex} from "../../../util/sszBytes.js";
13
- import {LightClientServer} from "../../lightClient/index.js";
14
-
15
- // Process in chunks to avoid OOM
16
- // this number of blocks per chunk is tested in e2e test blockArchive.test.ts
17
- // TODO: Review after merge since the size of blocks will increase significantly
18
- const BLOCK_BATCH_SIZE = 256;
19
- const BLOB_SIDECAR_BATCH_SIZE = 32;
20
-
21
- type BlockRootSlot = {slot: Slot; root: Uint8Array};
22
- type CheckpointHex = {epoch: Epoch; rootHex: RootHex};
23
-
24
- /**
25
- * Persist orphaned block to disk
26
- */
27
- async function persistOrphanedBlock(
28
- slot: Slot,
29
- blockRoot: BlockRootHex,
30
- bytes: Uint8Array,
31
- opts: {
32
- persistOrphanedBlocksDir: string;
33
- }
34
- ) {
35
- const dirpath = path.join(opts.persistOrphanedBlocksDir ?? "orphaned_blocks");
36
- const filepath = path.join(dirpath, `${slot}_${blockRoot}.ssz`);
37
- await ensureDir(dirpath);
38
- await writeIfNotExist(filepath, bytes);
39
- }
40
-
41
- /**
42
- * Archives finalized blocks from active bucket to archive bucket.
43
- *
44
- * Only archive blocks on the same chain to the finalized checkpoint.
45
- * Each run should move all finalized blocks to blockArhive db to make it consistent
46
- * to stateArchive, so that the node always work well when we restart.
47
- * Note that the finalized block still stay in forkchoice to check finalize checkpoint of next onBlock calls,
48
- * the next run should not reprocess finalzied block of this run.
49
- */
50
- export async function archiveBlocks(
51
- config: ChainForkConfig,
52
- db: IBeaconDb,
53
- forkChoice: IForkChoice,
54
- lightclientServer: LightClientServer | undefined,
55
- logger: Logger,
56
- finalizedCheckpoint: CheckpointHex,
57
- currentEpoch: Epoch,
58
- archiveDataEpochs?: number,
59
- persistOrphanedBlocks?: boolean,
60
- persistOrphanedBlocksDir?: string
61
- ): Promise<void> {
62
- // Use fork choice to determine the blocks to archive and delete
63
- // getAllAncestorBlocks response includes the finalized block, so it's also moved to the cold db
64
- const {ancestors: finalizedCanonicalBlocks, nonAncestors: finalizedNonCanonicalBlocks} =
65
- forkChoice.getAllAncestorAndNonAncestorBlocks(finalizedCheckpoint.rootHex);
66
-
67
- // NOTE: The finalized block will be exactly the first block of `epoch` or previous
68
- const finalizedPostDeneb = finalizedCheckpoint.epoch >= config.DENEB_FORK_EPOCH;
69
- const finalizedPostFulu = finalizedCheckpoint.epoch >= config.FULU_FORK_EPOCH;
70
-
71
- const finalizedCanonicalBlockRoots: BlockRootSlot[] = finalizedCanonicalBlocks.map((block) => ({
72
- slot: block.slot,
73
- root: fromHex(block.blockRoot),
74
- }));
75
-
76
- if (finalizedCanonicalBlockRoots.length > 0) {
77
- await migrateBlocksFromHotToColdDb(db, finalizedCanonicalBlockRoots);
78
- logger.verbose("Migrated blocks from hot DB to cold DB", {
79
- fromSlot: finalizedCanonicalBlockRoots[0].slot,
80
- toSlot: finalizedCanonicalBlockRoots.at(-1)?.slot,
81
- size: finalizedCanonicalBlockRoots.length,
82
- });
83
-
84
- if (finalizedPostDeneb) {
85
- const migratedEntries = await migrateBlobSidecarsFromHotToColdDb(
86
- config,
87
- db,
88
- finalizedCanonicalBlockRoots,
89
- currentEpoch
90
- );
91
- logger.verbose("Migrated blobSidecars from hot DB to cold DB", {migratedEntries});
92
- }
93
-
94
- if (finalizedPostFulu) {
95
- const migratedEntries = await migrateDataColumnSidecarsFromHotToColdDb(
96
- config,
97
- db,
98
- logger,
99
- finalizedCanonicalBlockRoots,
100
- currentEpoch
101
- );
102
- logger.verbose("Migrated dataColumnSidecars from hot DB to cold DB", {migratedEntries});
103
- }
104
- }
105
-
106
- // deleteNonCanonicalBlocks
107
- // loop through forkchoice single time
108
-
109
- const nonCanonicalBlockRoots = finalizedNonCanonicalBlocks.map((summary) => fromHex(summary.blockRoot));
110
- if (nonCanonicalBlockRoots.length > 0) {
111
- if (persistOrphanedBlocks) {
112
- // Persist orphaned blocks to disk before deleting them from hot db
113
- await Promise.all(
114
- nonCanonicalBlockRoots.map(async (root, index) => {
115
- const block = finalizedNonCanonicalBlocks[index];
116
- const blockBytes = await db.block.getBinary(root);
117
- const logCtx = {slot: block.slot, root: block.blockRoot};
118
- if (blockBytes) {
119
- await persistOrphanedBlock(block.slot, block.blockRoot, blockBytes, {
120
- persistOrphanedBlocksDir: persistOrphanedBlocksDir ?? "orphaned_blocks",
121
- });
122
- logger.verbose("Persisted orphaned block", logCtx);
123
- } else {
124
- logger.warn("Tried to persist orphaned block but no block found", logCtx);
125
- }
126
- })
127
- );
128
- }
129
-
130
- await db.block.batchDelete(nonCanonicalBlockRoots);
131
- logger.verbose("Deleted non canonical blocks from hot DB", {
132
- slots: finalizedNonCanonicalBlocks.map((summary) => summary.slot).join(","),
133
- });
134
-
135
- if (finalizedPostDeneb) {
136
- await db.blobSidecars.batchDelete(nonCanonicalBlockRoots);
137
- logger.verbose("Deleted non canonical blobSidecars from hot DB");
138
- }
139
-
140
- if (finalizedPostFulu) {
141
- await db.dataColumnSidecar.deleteMany(nonCanonicalBlockRoots);
142
- logger.verbose("Deleted non canonical dataColumnSidecars from hot DB");
143
- }
144
- }
145
-
146
- // Delete expired blobs
147
- // Keep only `[current_epoch - max(MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, archiveDataEpochs)]`
148
- // if archiveDataEpochs set to Infinity do not prune`
149
- if (finalizedPostDeneb) {
150
- if (archiveDataEpochs !== Infinity) {
151
- const blobsArchiveWindow = Math.max(config.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, archiveDataEpochs ?? 0);
152
- const blobSidecarsMinEpoch = currentEpoch - blobsArchiveWindow;
153
- if (blobSidecarsMinEpoch >= config.DENEB_FORK_EPOCH) {
154
- const slotsToDelete = await db.blobSidecarsArchive.keys({lt: computeStartSlotAtEpoch(blobSidecarsMinEpoch)});
155
- if (slotsToDelete.length > 0) {
156
- await db.blobSidecarsArchive.batchDelete(slotsToDelete);
157
- logger.verbose(`blobSidecars prune: batchDelete range ${slotsToDelete[0]}..${slotsToDelete.at(-1)}`);
158
- } else {
159
- logger.verbose(`blobSidecars prune: no entries before epoch ${blobSidecarsMinEpoch}`);
160
- }
161
- }
162
- } else {
163
- logger.verbose("blobSidecars pruning skipped: archiveDataEpochs set to Infinity");
164
- }
165
- }
166
-
167
- // Delete expired data column sidecars
168
- // Keep only `[current_epoch - max(MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS, archiveDataEpochs)]`
169
- if (finalizedPostFulu) {
170
- if (archiveDataEpochs !== Infinity) {
171
- const dataColumnSidecarsArchiveWindow = Math.max(
172
- config.MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS,
173
- archiveDataEpochs ?? 0
174
- );
175
- const dataColumnSidecarsMinEpoch = currentEpoch - dataColumnSidecarsArchiveWindow;
176
- if (dataColumnSidecarsMinEpoch >= config.FULU_FORK_EPOCH) {
177
- const prefixedKeys = await db.dataColumnSidecarArchive.keys({
178
- // The `id` value `0` refers to the column index. So we want to fetch all sidecars less than zero column of `dataColumnSidecarsMinEpoch`
179
- lt: {prefix: computeStartSlotAtEpoch(dataColumnSidecarsMinEpoch), id: 0},
180
- });
181
- // for each slot there could be multiple dataColumnSidecar, so we need to deduplicate it
182
- const slotsToDelete = [...new Set(prefixedKeys.map(({prefix}) => prefix))].sort((a, b) => a - b);
183
-
184
- if (slotsToDelete.length > 0) {
185
- await db.dataColumnSidecarArchive.deleteMany(slotsToDelete);
186
- logger.verbose("dataColumnSidecars prune", {
187
- slotRange: prettyPrintIndices(slotsToDelete),
188
- numOfSlots: slotsToDelete.length,
189
- totalNumOfSidecars: prefixedKeys.length,
190
- });
191
- } else {
192
- logger.verbose(`dataColumnSidecars prune: no entries before epoch ${dataColumnSidecarsMinEpoch}`);
193
- }
194
- } else {
195
- logger.verbose(
196
- `dataColumnSidecars pruning skipped: ${dataColumnSidecarsMinEpoch} is before fulu fork epoch ${config.FULU_FORK_EPOCH}`
197
- );
198
- }
199
- } else {
200
- logger.verbose("dataColumnSidecars pruning skipped: archiveDataEpochs set to Infinity");
201
- }
202
- }
203
-
204
- // Prunning potential checkpoint data
205
- const finalizedCanonicalNonCheckpointBlocks = getNonCheckpointBlocks(finalizedCanonicalBlockRoots);
206
- const nonCheckpointBlockRoots: Uint8Array[] = [...nonCanonicalBlockRoots];
207
- for (const block of finalizedCanonicalNonCheckpointBlocks) {
208
- nonCheckpointBlockRoots.push(block.root);
209
- }
210
-
211
- if (lightclientServer) {
212
- await lightclientServer.pruneNonCheckpointData(nonCheckpointBlockRoots);
213
- }
214
-
215
- logger.verbose("Archiving of finalized blocks complete", {
216
- totalArchived: finalizedCanonicalBlocks.length,
217
- finalizedEpoch: finalizedCheckpoint.epoch,
218
- });
219
- }
220
-
221
- async function migrateBlocksFromHotToColdDb(db: IBeaconDb, blocks: BlockRootSlot[]): Promise<void> {
222
- // Start from `i=0`: 1st block in iterateAncestorBlocks() is the finalized block itself
223
- // we move it to blockArchive but forkchoice still have it to check next onBlock calls
224
- // the next iterateAncestorBlocks call does not return this block
225
- for (let i = 0; i < blocks.length; i += BLOCK_BATCH_SIZE) {
226
- const toIdx = Math.min(i + BLOCK_BATCH_SIZE, blocks.length);
227
- const canonicalBlocks = blocks.slice(i, toIdx);
228
-
229
- // processCanonicalBlocks
230
- if (canonicalBlocks.length === 0) return;
231
-
232
- // load Buffer instead of SignedBeaconBlock to improve performance
233
- const canonicalBlockEntries: BlockArchiveBatchPutBinaryItem[] = await Promise.all(
234
- canonicalBlocks.map(async (block) => {
235
- const blockBuffer = await db.block.getBinary(block.root);
236
- if (!blockBuffer) {
237
- throw Error(`Block not found for slot ${block.slot} root ${toRootHex(block.root)}`);
238
- }
239
- return {
240
- key: block.slot,
241
- value: blockBuffer,
242
- slot: block.slot,
243
- blockRoot: block.root,
244
- // TODO: Benchmark if faster to slice Buffer or fromHex()
245
- parentRoot: getParentRootFromSignedBlock(blockBuffer),
246
- };
247
- })
248
- );
249
-
250
- // put to blockArchive db and delete block db
251
- await Promise.all([
252
- db.blockArchive.batchPutBinary(canonicalBlockEntries),
253
- db.block.batchDelete(canonicalBlocks.map((block) => block.root)),
254
- ]);
255
- }
256
- }
257
-
258
- /**
259
- * Migrate blobSidecars from hot db to cold db.
260
- * @returns true if we do that, false if block is out of range data.
261
- */
262
- async function migrateBlobSidecarsFromHotToColdDb(
263
- config: ChainForkConfig,
264
- db: IBeaconDb,
265
- blocks: BlockRootSlot[],
266
- currentEpoch: Epoch
267
- ): Promise<number> {
268
- let migratedWrappedBlobSidecars = 0;
269
- for (let i = 0; i < blocks.length; i += BLOB_SIDECAR_BATCH_SIZE) {
270
- const toIdx = Math.min(i + BLOB_SIDECAR_BATCH_SIZE, blocks.length);
271
- const canonicalBlocks = blocks.slice(i, toIdx);
272
-
273
- // processCanonicalBlocks
274
- if (canonicalBlocks.length === 0) break;
275
-
276
- // load Buffer instead of ssz deserialized to improve performance
277
- const canonicalBlobSidecarsEntries: KeyValue<Slot, Uint8Array>[] = await Promise.all(
278
- canonicalBlocks
279
- .filter((block) => {
280
- const blockSlot = block.slot;
281
- const blockEpoch = computeEpochAtSlot(blockSlot);
282
- const forkSeq = config.getForkSeq(blockSlot);
283
- return (
284
- forkSeq >= ForkSeq.deneb &&
285
- forkSeq < ForkSeq.fulu &&
286
- // if block is out of ${config.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS}, skip this step
287
- blockEpoch >= currentEpoch - config.MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS
288
- );
289
- })
290
- .map(async (block) => {
291
- const bytes = await db.blobSidecars.getBinary(block.root);
292
- if (!bytes) {
293
- throw Error(`No blobSidecars found for slot ${block.slot} root ${toRootHex(block.root)}`);
294
- }
295
- return {key: block.slot, value: bytes};
296
- })
297
- );
298
-
299
- // put to blockArchive db and delete block db
300
- await Promise.all([
301
- db.blobSidecarsArchive.batchPutBinary(canonicalBlobSidecarsEntries),
302
- db.blobSidecars.batchDelete(canonicalBlocks.map((block) => block.root)),
303
- ]);
304
- migratedWrappedBlobSidecars += canonicalBlobSidecarsEntries.length;
305
- }
306
-
307
- return migratedWrappedBlobSidecars;
308
- }
309
-
310
- // TODO: This function can be simplified further by reducing layers of promises in a loop
311
- async function migrateDataColumnSidecarsFromHotToColdDb(
312
- config: ChainForkConfig,
313
- db: IBeaconDb,
314
- logger: Logger,
315
- blocks: BlockRootSlot[],
316
- currentEpoch: Epoch
317
- ): Promise<number> {
318
- let migratedWrappedDataColumns = 0;
319
- for (let i = 0; i < blocks.length; i += BLOB_SIDECAR_BATCH_SIZE) {
320
- const toIdx = Math.min(i + BLOB_SIDECAR_BATCH_SIZE, blocks.length);
321
- const canonicalBlocks = blocks.slice(i, toIdx);
322
-
323
- // processCanonicalBlocks
324
- if (canonicalBlocks.length === 0) break;
325
- const promises = [];
326
-
327
- // load Buffer instead of ssz deserialized to improve performance
328
- for (const block of canonicalBlocks) {
329
- const blockSlot = block.slot;
330
- const blockEpoch = computeEpochAtSlot(blockSlot);
331
-
332
- if (
333
- config.getForkSeq(blockSlot) < ForkSeq.fulu ||
334
- // if block is out of ${config.MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS}, skip this step
335
- blockEpoch < currentEpoch - config.MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS
336
- ) {
337
- continue;
338
- }
339
-
340
- const dataColumnSidecarBytes = await fromAsync(db.dataColumnSidecar.valuesStreamBinary(block.root));
341
- // there could be 0 dataColumnSidecarBytes if block has no blob
342
- logger.verbose("migrateDataColumnSidecarsFromHotToColdDb", {
343
- slot: block.slot,
344
- root: toRootHex(block.root),
345
- numSidecars: dataColumnSidecarBytes.length,
346
- });
347
- promises.push(
348
- db.dataColumnSidecarArchive.putManyBinary(
349
- block.slot,
350
- dataColumnSidecarBytes.map((p) => ({key: p.id, value: p.value}))
351
- )
352
- );
353
- migratedWrappedDataColumns += dataColumnSidecarBytes.length;
354
- }
355
-
356
- promises.push(db.dataColumnSidecar.deleteMany(canonicalBlocks.map((block) => block.root)));
357
-
358
- // put to blockArchive db and delete block db
359
- await Promise.all(promises);
360
- }
361
-
362
- return migratedWrappedDataColumns;
363
- }
364
-
365
- /**
366
- * ```
367
- * class SignedBeaconBlock(Container):
368
- * message: BeaconBlock [offset - 4 bytes]
369
- * signature: BLSSignature [fixed - 96 bytes]
370
- *
371
- * class BeaconBlock(Container):
372
- * slot: Slot [fixed - 8 bytes]
373
- * proposer_index: ValidatorIndex [fixed - 8 bytes]
374
- * parent_root: Root [fixed - 32 bytes]
375
- * state_root: Root
376
- * body: BeaconBlockBody
377
- * ```
378
- * From byte: `4 + 96 + 8 + 8 = 116`
379
- * To byte: `116 + 32 = 148`
380
- */
381
- export function getParentRootFromSignedBlock(bytes: Uint8Array): Uint8Array {
382
- return bytes.slice(116, 148);
383
- }
384
-
385
- /**
386
- *
387
- * @param blocks sequence of linear blocks, from child to ancestor.
388
- * In ProtoArray.getAllAncestorNodes child nodes are pushed first to the returned array.
389
- */
390
- export function getNonCheckpointBlocks<T extends {slot: Slot}>(blocks: T[]): T[] {
391
- // Iterate from lowest child to highest ancestor
392
- // Look for the checkpoint of the lowest epoch
393
- // If block at `epoch * SLOTS_PER_EPOCH`, it's a checkpoint.
394
- // - Then for the previous epoch all blocks but the 0 are NOT checkpoints
395
- // - Otherwise for the previous epoch the last block is a checkpoint
396
-
397
- if (blocks.length < 1) {
398
- return [];
399
- }
400
-
401
- const nonCheckpointBlocks: T[] = [];
402
- // Start with Infinity to always trigger `blockEpoch < epochPtr` in the first loop
403
- let epochPtr = Infinity;
404
- // Assume worst case, since it's unknown if a future epoch will skip the first slot or not.
405
- // This function must return only blocks that are guaranteed to never become checkpoints.
406
- let epochPtrHasFirstSlot = false;
407
-
408
- // blocks order: from child to ancestor, decreasing slot
409
- for (let i = 0; i < blocks.length; i++) {
410
- let isCheckpoint = false;
411
- const block = blocks[i];
412
- const blockEpoch = computeEpochAtSlot(block.slot);
413
-
414
- if (blockEpoch < epochPtr) {
415
- // If future epoch has skipped the first slot, the last block in the previous epoch is a checkpoint
416
- if (!epochPtrHasFirstSlot) {
417
- isCheckpoint = true;
418
- }
419
-
420
- // Reset epoch pointer
421
- epochPtr = blockEpoch;
422
- epochPtrHasFirstSlot = false;
423
- }
424
-
425
- // The block in the first slot of an epoch is always a checkpoint slot
426
- if (block.slot % SLOTS_PER_EPOCH === 0) {
427
- epochPtrHasFirstSlot = true;
428
- isCheckpoint = true;
429
- }
430
-
431
- if (!isCheckpoint) {
432
- nonCheckpointBlocks.push(block);
433
- }
434
- }
435
-
436
- return nonCheckpointBlocks;
437
- }
@@ -1,56 +0,0 @@
1
- import {ChainConfig} from "@lodestar/config";
2
- import {computeStartSlotAtEpoch} from "@lodestar/state-transition";
3
- import {Epoch} from "@lodestar/types";
4
- import {Logger} from "@lodestar/utils";
5
- import {IBeaconDb} from "../../../db/interface.js";
6
- import {Metrics} from "../../../metrics/index.js";
7
-
8
- export async function pruneHistory(
9
- config: ChainConfig,
10
- db: IBeaconDb,
11
- logger: Logger,
12
- metrics: Metrics | null | undefined,
13
- finalizedEpoch: Epoch,
14
- currentEpoch: Epoch
15
- ): Promise<void> {
16
- const blockCutoffEpoch = Math.min(
17
- // set by config, with underflow protection
18
- Math.max(currentEpoch - config.MIN_EPOCHS_FOR_BLOCK_REQUESTS, 0),
19
- // ensure that during (extremely lol) long periods of non-finality we don't delete unfinalized epoch data
20
- finalizedEpoch
21
- );
22
- const blockCutoffSlot = computeStartSlotAtEpoch(blockCutoffEpoch);
23
-
24
- logger.debug("Preparing to prune history", {
25
- currentEpoch,
26
- finalizedEpoch,
27
- blockCutoffEpoch,
28
- });
29
-
30
- const step0 = metrics?.pruneHistory.fetchKeys.startTimer();
31
- const [blocks, states] = await Promise.all([
32
- db.blockArchive.keys({gte: 0, lt: blockCutoffSlot}),
33
- db.stateArchive.keys({gte: 0, lt: finalizedEpoch}),
34
- ]);
35
- step0?.();
36
-
37
- logger.debug("Pruning history", {
38
- currentEpoch,
39
- blocksToPrune: blocks.length,
40
- statesToPrune: states.length,
41
- });
42
-
43
- const step1 = metrics?.pruneHistory.pruneKeys.startTimer();
44
- await Promise.all([
45
- // ->
46
- db.blockArchive.batchDelete(blocks),
47
- db.stateArchive.batchDelete(states),
48
- ]);
49
- step1?.();
50
-
51
- logger.debug("Pruned history", {
52
- currentEpoch,
53
- });
54
-
55
- metrics?.pruneHistory.pruneCount.inc();
56
- }
@@ -1,50 +0,0 @@
1
- import {CheckpointWithHex} from "@lodestar/fork-choice";
2
- import {Logger} from "@lodestar/logger";
3
- import {IBeaconDb} from "../../../db/interface.js";
4
- import {IBeaconChain} from "../../interface.js";
5
-
6
- /**
7
- * Backfill sync relies on verified connected ranges (which are represented as key,value
8
- * with a verified jump from a key back to value). Since the node could have progressed
9
- * ahead from, we need to save the forward progress of this node as another backfill
10
- * range entry, that backfill sync will use to jump back if this node is restarted
11
- * for any reason.
12
- * The current backfill has its own backfill entry from anchor slot to last backfilled
13
- * slot. And this would create the entry from the current finalized slot to the anchor
14
- * slot.
15
- */
16
- export async function updateBackfillRange(
17
- {chain, db, logger}: {chain: IBeaconChain; db: IBeaconDb; logger: Logger},
18
- finalized: CheckpointWithHex
19
- ): Promise<void> {
20
- try {
21
- // Mark the sequence in backfill db from finalized block's slot till anchor slot as
22
- // filled.
23
- const finalizedBlockFC = chain.forkChoice.getBlockHex(finalized.rootHex);
24
- if (finalizedBlockFC && finalizedBlockFC.slot > chain.anchorStateLatestBlockSlot) {
25
- await db.backfilledRanges.put(finalizedBlockFC.slot, chain.anchorStateLatestBlockSlot);
26
-
27
- // Clear previously marked sequence till anchorStateLatestBlockSlot, without
28
- // touching backfill sync process sequence which are at
29
- // <=anchorStateLatestBlockSlot i.e. clear >anchorStateLatestBlockSlot
30
- // and < currentSlot
31
- const filteredSeqs = await db.backfilledRanges.entries({
32
- gt: chain.anchorStateLatestBlockSlot,
33
- lt: finalizedBlockFC.slot,
34
- });
35
- logger.debug("updated backfilledRanges", {
36
- key: finalizedBlockFC.slot,
37
- value: chain.anchorStateLatestBlockSlot,
38
- });
39
- if (filteredSeqs.length > 0) {
40
- await db.backfilledRanges.batchDelete(filteredSeqs.map((entry) => entry.key));
41
- logger.debug(
42
- `Forward Sync - cleaned up backfilledRanges between ${finalizedBlockFC.slot},${chain.anchorStateLatestBlockSlot}`,
43
- {seqs: JSON.stringify(filteredSeqs)}
44
- );
45
- }
46
- }
47
- } catch (e) {
48
- logger.error("Error updating backfilledRanges on finalization", {epoch: finalized.epoch}, e as Error);
49
- }
50
- }
@@ -1,52 +0,0 @@
1
- import {CheckpointWithHex} from "@lodestar/fork-choice";
2
- import {
3
- CachedBeaconStateAllForks,
4
- EffectiveBalanceIncrements,
5
- computeStartSlotAtEpoch,
6
- getBlockRootAtSlot,
7
- getEffectiveBalanceIncrementsZeroInactive,
8
- } from "@lodestar/state-transition";
9
- import {Epoch, RootHex} from "@lodestar/types";
10
- import {toRootHex} from "@lodestar/utils";
11
-
12
- /** The number of validator balance sets that are cached within `CheckpointBalancesCache`. */
13
- const MAX_BALANCE_CACHE_SIZE = 4;
14
-
15
- type BalancesCacheItem = {
16
- rootHex: RootHex;
17
- epoch: Epoch;
18
- balances: EffectiveBalanceIncrements;
19
- };
20
-
21
- /**
22
- * Cache EffectiveBalanceIncrements of checkpoint blocks
23
- */
24
- export class CheckpointBalancesCache {
25
- private readonly items: BalancesCacheItem[] = [];
26
-
27
- /**
28
- * Inspect the given `state` and determine the root of the block at the first slot of
29
- * `state.current_epoch`. If there is not already some entry for the given block root, then
30
- * add the effective balances from the `state` to the cache.
31
- */
32
- processState(blockRootHex: RootHex, state: CachedBeaconStateAllForks): void {
33
- const epoch = state.epochCtx.epoch;
34
- const epochBoundarySlot = computeStartSlotAtEpoch(epoch);
35
- const epochBoundaryRoot =
36
- epochBoundarySlot === state.slot ? blockRootHex : toRootHex(getBlockRootAtSlot(state, epochBoundarySlot));
37
-
38
- const index = this.items.findIndex((item) => item.epoch === epoch && item.rootHex === epochBoundaryRoot);
39
- if (index === -1) {
40
- if (this.items.length === MAX_BALANCE_CACHE_SIZE) {
41
- this.items.shift();
42
- }
43
- // expect to reach this once per epoch
44
- this.items.push({epoch, rootHex: epochBoundaryRoot, balances: getEffectiveBalanceIncrementsZeroInactive(state)});
45
- }
46
- }
47
-
48
- get(checkpoint: CheckpointWithHex): EffectiveBalanceIncrements | undefined {
49
- const {rootHex, epoch} = checkpoint;
50
- return this.items.find((item) => item.epoch === epoch && item.rootHex === rootHex)?.balances;
51
- }
52
- }
@@ -1,43 +0,0 @@
1
- import {routes} from "@lodestar/api";
2
- import {Epoch} from "@lodestar/types";
3
- import {MapDef} from "@lodestar/utils";
4
-
5
- const PROPOSER_PRESERVE_EPOCHS = 2;
6
-
7
- export type ProposerPreparationData = routes.validator.ProposerPreparationData;
8
-
9
- export class BeaconProposerCache {
10
- private readonly feeRecipientByValidatorIndex: MapDef<number, {epoch: Epoch; feeRecipient: string}>;
11
- constructor(opts: {suggestedFeeRecipient: string}) {
12
- this.feeRecipientByValidatorIndex = new MapDef(() => ({
13
- epoch: 0,
14
- feeRecipient: opts.suggestedFeeRecipient,
15
- }));
16
- }
17
-
18
- add(epoch: Epoch, {validatorIndex, feeRecipient}: ProposerPreparationData): void {
19
- this.feeRecipientByValidatorIndex.set(validatorIndex, {epoch, feeRecipient});
20
- }
21
-
22
- prune(epoch: Epoch): void {
23
- // This is not so optimized function, but could maintain a 2d array may be?
24
- for (const [validatorIndex, feeRecipientEntry] of this.feeRecipientByValidatorIndex.entries()) {
25
- // We only retain an entry for PROPOSER_PRESERVE_EPOCHS epochs
26
- if (feeRecipientEntry.epoch + PROPOSER_PRESERVE_EPOCHS < epoch) {
27
- this.feeRecipientByValidatorIndex.delete(validatorIndex);
28
- }
29
- }
30
- }
31
-
32
- getOrDefault(proposerIndex: number): string {
33
- return this.feeRecipientByValidatorIndex.getOrDefault(proposerIndex).feeRecipient;
34
- }
35
-
36
- get(proposerIndex: number): string | undefined {
37
- return this.feeRecipientByValidatorIndex.get(proposerIndex)?.feeRecipient;
38
- }
39
-
40
- getValidatorIndices(): number[] {
41
- return Array.from(this.feeRecipientByValidatorIndex.keys());
42
- }
43
- }