@lodestar/beacon-node 1.35.0-dev.549f58dd39 → 1.35.0-dev.5c65fa3b36

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 (1117) 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/index.d.ts +3 -3
  7. package/lib/api/impl/index.js +3 -3
  8. package/lib/api/impl/index.js.map +1 -1
  9. package/lib/api/impl/validator/index.js +3 -5
  10. package/lib/api/impl/validator/index.js.map +1 -1
  11. package/lib/api/rest/base.d.ts +1 -1
  12. package/lib/api/rest/base.js +2 -2
  13. package/lib/api/rest/base.js.map +1 -1
  14. package/lib/api/rest/index.js.map +1 -1
  15. package/lib/chain/ColumnReconstructionTracker.d.ts +2 -2
  16. package/lib/chain/ColumnReconstructionTracker.js +3 -21
  17. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  18. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  19. package/lib/chain/GetBlobsTracker.js +3 -3
  20. package/lib/chain/GetBlobsTracker.js.map +1 -1
  21. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -1
  22. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  23. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  24. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  25. package/lib/chain/archiveStore/index.d.ts +1 -1
  26. package/lib/chain/archiveStore/index.js +1 -1
  27. package/lib/chain/blocks/blockInput/blockInput.js +1 -1
  28. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  29. package/lib/chain/blocks/blockInput/index.d.ts +1 -1
  30. package/lib/chain/blocks/blockInput/index.js +1 -1
  31. package/lib/chain/blocks/importBlock.js +3 -4
  32. package/lib/chain/blocks/importBlock.js.map +1 -1
  33. package/lib/chain/blocks/index.d.ts +1 -1
  34. package/lib/chain/blocks/index.js.map +1 -1
  35. package/lib/chain/blocks/verifyBlocksDataAvailability.js +1 -8
  36. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  37. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  38. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  39. package/lib/chain/blocks/writeBlockInputToDb.js +7 -1
  40. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  41. package/lib/chain/bls/multithread/index.js +0 -1
  42. package/lib/chain/bls/multithread/index.js.map +1 -1
  43. package/lib/chain/chain.d.ts +3 -3
  44. package/lib/chain/chain.js +5 -4
  45. package/lib/chain/chain.js.map +1 -1
  46. package/lib/chain/emitter.d.ts +2 -2
  47. package/lib/chain/emitter.js.map +1 -1
  48. package/lib/chain/errors/index.d.ts +2 -2
  49. package/lib/chain/errors/index.js +2 -2
  50. package/lib/chain/errors/index.js.map +1 -1
  51. package/lib/chain/forkChoice/index.js.map +1 -1
  52. package/lib/chain/index.d.ts +2 -2
  53. package/lib/chain/index.js +2 -2
  54. package/lib/chain/index.js.map +1 -1
  55. package/lib/chain/interface.d.ts +2 -2
  56. package/lib/chain/interface.js.map +1 -1
  57. package/lib/chain/lightClient/index.js.map +1 -1
  58. package/lib/chain/lightClient/proofs.js.map +1 -1
  59. package/lib/chain/opPools/aggregatedAttestationPool.js +1 -1
  60. package/lib/chain/opPools/attestationPool.d.ts +3 -2
  61. package/lib/chain/opPools/attestationPool.js +6 -4
  62. package/lib/chain/opPools/attestationPool.js.map +1 -1
  63. package/lib/chain/opPools/index.d.ts +1 -1
  64. package/lib/chain/opPools/index.js +1 -1
  65. package/lib/chain/opPools/index.js.map +1 -1
  66. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts +2 -3
  67. package/lib/chain/opPools/syncCommitteeMessagePool.js +5 -6
  68. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  69. package/lib/chain/opPools/types.d.ts +1 -1
  70. package/lib/chain/opPools/types.js +1 -1
  71. package/lib/chain/opPools/types.js.map +1 -1
  72. package/lib/chain/options.js +1 -1
  73. package/lib/chain/options.js.map +1 -1
  74. package/lib/chain/prepareNextSlot.d.ts +3 -3
  75. package/lib/chain/prepareNextSlot.js +8 -8
  76. package/lib/chain/prepareNextSlot.js.map +1 -1
  77. package/lib/chain/regen/index.d.ts +1 -1
  78. package/lib/chain/regen/index.js +1 -1
  79. package/lib/chain/regen/index.js.map +1 -1
  80. package/lib/chain/stateCache/datastore/index.d.ts +1 -1
  81. package/lib/chain/stateCache/datastore/index.js +1 -1
  82. package/lib/chain/stateCache/datastore/index.js.map +1 -1
  83. package/lib/chain/stateCache/index.d.ts +1 -1
  84. package/lib/chain/stateCache/index.js +1 -1
  85. package/lib/chain/stateCache/index.js.map +1 -1
  86. package/lib/chain/stateCache/persistentCheckpointsCache.js +10 -10
  87. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  88. package/lib/chain/validation/blobSidecar.js.map +1 -1
  89. package/lib/chain/validation/dataColumnSidecar.js +1 -1
  90. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  91. package/lib/chain/validation/index.d.ts +1 -1
  92. package/lib/chain/validation/index.js +1 -1
  93. package/lib/chain/validation/index.js.map +1 -1
  94. package/lib/chain/validation/lightClientFinalityUpdate.js +3 -4
  95. package/lib/chain/validation/lightClientFinalityUpdate.js.map +1 -1
  96. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts +4 -6
  97. package/lib/chain/validation/lightClientOptimisticUpdate.js +11 -11
  98. package/lib/chain/validation/lightClientOptimisticUpdate.js.map +1 -1
  99. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -1
  100. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  101. package/lib/chain/validatorMonitor.d.ts +3 -1
  102. package/lib/chain/validatorMonitor.js +14 -20
  103. package/lib/chain/validatorMonitor.js.map +1 -1
  104. package/lib/db/buckets.d.ts +4 -4
  105. package/lib/db/buckets.js +4 -4
  106. package/lib/db/buckets.js.map +1 -1
  107. package/lib/db/index.d.ts +1 -1
  108. package/lib/db/index.js.map +1 -1
  109. package/lib/db/repositories/blobSidecars.js +1 -1
  110. package/lib/db/repositories/blobSidecars.js.map +1 -1
  111. package/lib/db/repositories/blobSidecarsArchive.js +1 -1
  112. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  113. package/lib/db/repositories/blockArchive.js +3 -2
  114. package/lib/db/repositories/blockArchive.js.map +1 -1
  115. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  116. package/lib/db/repositories/dataColumnSidecar.js +2 -2
  117. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  118. package/lib/db/repositories/dataColumnSidecarArchive.js +2 -2
  119. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  120. package/lib/db/repositories/index.d.ts +10 -10
  121. package/lib/db/repositories/index.js +9 -9
  122. package/lib/db/repositories/index.js.map +1 -1
  123. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  124. package/lib/eth1/eth1DepositsCache.js.map +1 -1
  125. package/lib/eth1/provider/eth1Provider.d.ts +2 -1
  126. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  127. package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
  128. package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
  129. package/lib/eth1/provider/jwt.js.map +1 -1
  130. package/lib/eth1/utils/deposits.js.map +1 -1
  131. package/lib/execution/builder/index.js.map +1 -1
  132. package/lib/execution/engine/interface.js.map +1 -1
  133. package/lib/execution/engine/types.js.map +1 -1
  134. package/lib/execution/engine/utils.js +2 -1
  135. package/lib/execution/engine/utils.js.map +1 -1
  136. package/lib/execution/index.d.ts +2 -2
  137. package/lib/execution/index.js +2 -2
  138. package/lib/execution/index.js.map +1 -1
  139. package/lib/index.d.ts +6 -6
  140. package/lib/index.js +5 -5
  141. package/lib/index.js.map +1 -1
  142. package/lib/metrics/index.d.ts +1 -1
  143. package/lib/metrics/index.js +1 -1
  144. package/lib/metrics/index.js.map +1 -1
  145. package/lib/metrics/metrics/lodestar.d.ts +3 -3
  146. package/lib/metrics/metrics/lodestar.js +4 -4
  147. package/lib/metrics/metrics/lodestar.js.map +1 -1
  148. package/lib/metrics/metrics.d.ts +1 -1
  149. package/lib/metrics/metrics.js.map +1 -1
  150. package/lib/metrics/nodeJsMetrics.js +1 -1
  151. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  152. package/lib/metrics/server/http.d.ts +1 -1
  153. package/lib/metrics/utils/avgMinMax.d.ts +1 -1
  154. package/lib/metrics/utils/gauge.d.ts +1 -1
  155. package/lib/metrics/utils/gauge.js.map +1 -1
  156. package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
  157. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  158. package/lib/monitoring/service.js.map +1 -1
  159. package/lib/monitoring/system.js.map +1 -1
  160. package/lib/network/core/networkCore.d.ts +1 -1
  161. package/lib/network/core/networkCore.js +1 -1
  162. package/lib/network/core/networkCore.js.map +1 -1
  163. package/lib/network/core/networkCoreWorker.js +1 -1
  164. package/lib/network/core/networkCoreWorker.js.map +1 -1
  165. package/lib/network/core/networkCoreWorkerHandler.d.ts +1 -1
  166. package/lib/network/core/networkCoreWorkerHandler.js +4 -10
  167. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  168. package/lib/network/discv5/index.d.ts +2 -2
  169. package/lib/network/discv5/index.js +2 -5
  170. package/lib/network/discv5/index.js.map +1 -1
  171. package/lib/network/discv5/worker.js +3 -3
  172. package/lib/network/discv5/worker.js.map +1 -1
  173. package/lib/network/gossip/encoding.d.ts +1 -1
  174. package/lib/network/gossip/encoding.js +2 -2
  175. package/lib/network/gossip/encoding.js.map +1 -1
  176. package/lib/network/gossip/gossipsub.d.ts +1 -2
  177. package/lib/network/gossip/gossipsub.js +17 -36
  178. package/lib/network/gossip/gossipsub.js.map +1 -1
  179. package/lib/network/gossip/index.d.ts +2 -2
  180. package/lib/network/gossip/index.js +2 -2
  181. package/lib/network/gossip/index.js.map +1 -1
  182. package/lib/network/gossip/interface.d.ts +2 -2
  183. package/lib/network/gossip/metrics.d.ts +7 -15
  184. package/lib/network/gossip/metrics.js +6 -16
  185. package/lib/network/gossip/metrics.js.map +1 -1
  186. package/lib/network/gossip/topic.d.ts +60 -80
  187. package/lib/network/gossip/topic.js.map +1 -1
  188. package/lib/network/index.d.ts +3 -3
  189. package/lib/network/index.js +3 -3
  190. package/lib/network/index.js.map +1 -1
  191. package/lib/network/interface.d.ts +1 -1
  192. package/lib/network/libp2p/index.js +3 -11
  193. package/lib/network/libp2p/index.js.map +1 -1
  194. package/lib/network/metadata.js +1 -2
  195. package/lib/network/metadata.js.map +1 -1
  196. package/lib/network/network.d.ts +2 -2
  197. package/lib/network/network.js +13 -11
  198. package/lib/network/network.js.map +1 -1
  199. package/lib/network/peers/datastore.d.ts +2 -2
  200. package/lib/network/peers/datastore.js +2 -2
  201. package/lib/network/peers/datastore.js.map +1 -1
  202. package/lib/network/peers/discover.js +2 -1
  203. package/lib/network/peers/discover.js.map +1 -1
  204. package/lib/network/peers/peerManager.js.map +1 -1
  205. package/lib/network/peers/score/index.d.ts +1 -1
  206. package/lib/network/peers/score/index.js +1 -1
  207. package/lib/network/peers/score/index.js.map +1 -1
  208. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  209. package/lib/network/processor/gossipHandlers.js +1 -1
  210. package/lib/network/processor/index.d.ts +1 -1
  211. package/lib/network/processor/index.js +5 -3
  212. package/lib/network/processor/index.js.map +1 -1
  213. package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
  214. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  215. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  216. package/lib/network/reqresp/index.d.ts +1 -1
  217. package/lib/network/reqresp/index.js +1 -1
  218. package/lib/network/reqresp/index.js.map +1 -1
  219. package/lib/network/reqresp/rateLimit.js +2 -2
  220. package/lib/network/reqresp/rateLimit.js.map +1 -1
  221. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  222. package/lib/network/subnets/interface.js +1 -1
  223. package/lib/network/subnets/interface.js.map +1 -1
  224. package/lib/network/subnets/util.js +2 -1
  225. package/lib/network/subnets/util.js.map +1 -1
  226. package/lib/node/nodejs.d.ts +1 -1
  227. package/lib/node/nodejs.js.map +1 -1
  228. package/lib/node/notifier.js +2 -1
  229. package/lib/node/notifier.js.map +1 -1
  230. package/lib/node/options.js.map +1 -1
  231. package/lib/node/utils/interop/state.js +2 -1
  232. package/lib/node/utils/interop/state.js.map +1 -1
  233. package/lib/sync/backfill/backfill.d.ts +1 -1
  234. package/lib/sync/backfill/backfill.js +1 -1
  235. package/lib/sync/backfill/backfill.js.map +1 -1
  236. package/lib/sync/range/batch.d.ts +2 -2
  237. package/lib/sync/range/batch.js +1 -1
  238. package/lib/sync/range/batch.js.map +1 -1
  239. package/lib/sync/range/chain.d.ts +1 -1
  240. package/lib/sync/range/chain.js.map +1 -1
  241. package/lib/sync/range/range.d.ts +1 -1
  242. package/lib/sync/range/range.js.map +1 -1
  243. package/lib/sync/sync.d.ts +2 -1
  244. package/lib/sync/sync.js.map +1 -1
  245. package/lib/sync/types.d.ts +1 -0
  246. package/lib/sync/types.js.map +1 -1
  247. package/lib/sync/unknownBlock.d.ts +1 -0
  248. package/lib/sync/unknownBlock.js +20 -18
  249. package/lib/sync/unknownBlock.js.map +1 -1
  250. package/lib/sync/utils/downloadByRange.d.ts +1 -1
  251. package/lib/sync/utils/downloadByRoot.d.ts +2 -4
  252. package/lib/sync/utils/downloadByRoot.js +9 -36
  253. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  254. package/lib/util/blobs.js +3 -5
  255. package/lib/util/blobs.js.map +1 -1
  256. package/lib/util/clock.d.ts +1 -6
  257. package/lib/util/clock.js +0 -3
  258. package/lib/util/clock.js.map +1 -1
  259. package/lib/util/dataColumns.d.ts +15 -9
  260. package/lib/util/dataColumns.js +29 -16
  261. package/lib/util/dataColumns.js.map +1 -1
  262. package/lib/util/execution.d.ts +2 -2
  263. package/lib/util/execution.js +8 -25
  264. package/lib/util/execution.js.map +1 -1
  265. package/lib/util/queue/index.d.ts +1 -1
  266. package/lib/util/queue/index.js +1 -1
  267. package/lib/util/queue/index.js.map +1 -1
  268. package/package.json +21 -37
  269. package/lib/api/impl/api.d.ts.map +0 -1
  270. package/lib/api/impl/beacon/blocks/index.d.ts.map +0 -1
  271. package/lib/api/impl/beacon/blocks/utils.d.ts.map +0 -1
  272. package/lib/api/impl/beacon/index.d.ts.map +0 -1
  273. package/lib/api/impl/beacon/pool/index.d.ts.map +0 -1
  274. package/lib/api/impl/beacon/rewards/index.d.ts.map +0 -1
  275. package/lib/api/impl/beacon/state/index.d.ts.map +0 -1
  276. package/lib/api/impl/beacon/state/utils.d.ts.map +0 -1
  277. package/lib/api/impl/config/constants.d.ts.map +0 -1
  278. package/lib/api/impl/config/index.d.ts.map +0 -1
  279. package/lib/api/impl/debug/index.d.ts.map +0 -1
  280. package/lib/api/impl/errors.d.ts.map +0 -1
  281. package/lib/api/impl/events/index.d.ts.map +0 -1
  282. package/lib/api/impl/index.d.ts.map +0 -1
  283. package/lib/api/impl/lightclient/index.d.ts.map +0 -1
  284. package/lib/api/impl/lodestar/index.d.ts.map +0 -1
  285. package/lib/api/impl/node/index.d.ts.map +0 -1
  286. package/lib/api/impl/node/utils.d.ts.map +0 -1
  287. package/lib/api/impl/proof/index.d.ts.map +0 -1
  288. package/lib/api/impl/types.d.ts.map +0 -1
  289. package/lib/api/impl/utils.d.ts.map +0 -1
  290. package/lib/api/impl/validator/index.d.ts.map +0 -1
  291. package/lib/api/impl/validator/utils.d.ts.map +0 -1
  292. package/lib/api/index.d.ts.map +0 -1
  293. package/lib/api/options.d.ts.map +0 -1
  294. package/lib/api/rest/activeSockets.d.ts.map +0 -1
  295. package/lib/api/rest/base.d.ts.map +0 -1
  296. package/lib/api/rest/index.d.ts.map +0 -1
  297. package/lib/api/rest/swaggerUI.d.ts.map +0 -1
  298. package/lib/bun-wrappers/prometheus-gc-stats.d.ts +0 -2
  299. package/lib/bun-wrappers/prometheus-gc-stats.d.ts.map +0 -1
  300. package/lib/bun-wrappers/prometheus-gc-stats.js +0 -8
  301. package/lib/bun-wrappers/prometheus-gc-stats.js.map +0 -1
  302. package/lib/chain/ColumnReconstructionTracker.d.ts.map +0 -1
  303. package/lib/chain/GetBlobsTracker.d.ts.map +0 -1
  304. package/lib/chain/archiveStore/archiveStore.d.ts.map +0 -1
  305. package/lib/chain/archiveStore/constants.d.ts.map +0 -1
  306. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +0 -1
  307. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +0 -1
  308. package/lib/chain/archiveStore/historicalState/metrics.d.ts.map +0 -1
  309. package/lib/chain/archiveStore/historicalState/types.d.ts.map +0 -1
  310. package/lib/chain/archiveStore/historicalState/worker.d.ts.map +0 -1
  311. package/lib/chain/archiveStore/index.d.ts.map +0 -1
  312. package/lib/chain/archiveStore/interface.d.ts.map +0 -1
  313. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +0 -1
  314. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +0 -1
  315. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +0 -1
  316. package/lib/chain/archiveStore/utils/updateBackfillRange.d.ts.map +0 -1
  317. package/lib/chain/balancesCache.d.ts.map +0 -1
  318. package/lib/chain/beaconProposerCache.d.ts.map +0 -1
  319. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +0 -1
  320. package/lib/chain/blocks/blockInput/errors.d.ts.map +0 -1
  321. package/lib/chain/blocks/blockInput/index.d.ts.map +0 -1
  322. package/lib/chain/blocks/blockInput/types.d.ts.map +0 -1
  323. package/lib/chain/blocks/blockInput/utils.d.ts.map +0 -1
  324. package/lib/chain/blocks/importBlock.d.ts.map +0 -1
  325. package/lib/chain/blocks/index.d.ts.map +0 -1
  326. package/lib/chain/blocks/types.d.ts.map +0 -1
  327. package/lib/chain/blocks/utils/blowfishBanner.d.ts.map +0 -1
  328. package/lib/chain/blocks/utils/chainSegment.d.ts.map +0 -1
  329. package/lib/chain/blocks/utils/checkpoint.d.ts.map +0 -1
  330. package/lib/chain/blocks/utils/giraffeBanner.d.ts.map +0 -1
  331. package/lib/chain/blocks/utils/ownBanner.d.ts.map +0 -1
  332. package/lib/chain/blocks/utils/pandaMergeTransitionBanner.d.ts.map +0 -1
  333. package/lib/chain/blocks/utils/zebraBanner.d.ts.map +0 -1
  334. package/lib/chain/blocks/verifyBlock.d.ts.map +0 -1
  335. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +0 -1
  336. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +0 -1
  337. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +0 -1
  338. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +0 -1
  339. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +0 -1
  340. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +0 -1
  341. package/lib/chain/bls/index.d.ts.map +0 -1
  342. package/lib/chain/bls/interface.d.ts.map +0 -1
  343. package/lib/chain/bls/maybeBatch.d.ts.map +0 -1
  344. package/lib/chain/bls/multithread/index.d.ts.map +0 -1
  345. package/lib/chain/bls/multithread/jobItem.d.ts.map +0 -1
  346. package/lib/chain/bls/multithread/poolSize.d.ts.map +0 -1
  347. package/lib/chain/bls/multithread/types.d.ts.map +0 -1
  348. package/lib/chain/bls/multithread/utils.d.ts.map +0 -1
  349. package/lib/chain/bls/multithread/worker.d.ts.map +0 -1
  350. package/lib/chain/bls/singleThread.d.ts.map +0 -1
  351. package/lib/chain/bls/utils.d.ts.map +0 -1
  352. package/lib/chain/chain.d.ts.map +0 -1
  353. package/lib/chain/emitter.d.ts.map +0 -1
  354. package/lib/chain/errors/attestationError.d.ts.map +0 -1
  355. package/lib/chain/errors/attesterSlashingError.d.ts.map +0 -1
  356. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  357. package/lib/chain/errors/blockError.d.ts.map +0 -1
  358. package/lib/chain/errors/blsToExecutionChangeError.d.ts.map +0 -1
  359. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +0 -1
  360. package/lib/chain/errors/gossipValidation.d.ts.map +0 -1
  361. package/lib/chain/errors/index.d.ts.map +0 -1
  362. package/lib/chain/errors/lightClientError.d.ts.map +0 -1
  363. package/lib/chain/errors/proposerSlashingError.d.ts.map +0 -1
  364. package/lib/chain/errors/syncCommitteeError.d.ts.map +0 -1
  365. package/lib/chain/errors/voluntaryExitError.d.ts.map +0 -1
  366. package/lib/chain/forkChoice/index.d.ts.map +0 -1
  367. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  368. package/lib/chain/genesis/interface.d.ts.map +0 -1
  369. package/lib/chain/index.d.ts.map +0 -1
  370. package/lib/chain/initState.d.ts.map +0 -1
  371. package/lib/chain/interface.d.ts.map +0 -1
  372. package/lib/chain/lightClient/index.d.ts.map +0 -1
  373. package/lib/chain/lightClient/proofs.d.ts.map +0 -1
  374. package/lib/chain/lightClient/types.d.ts.map +0 -1
  375. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +0 -1
  376. package/lib/chain/opPools/attestationPool.d.ts.map +0 -1
  377. package/lib/chain/opPools/index.d.ts.map +0 -1
  378. package/lib/chain/opPools/opPool.d.ts.map +0 -1
  379. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +0 -1
  380. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +0 -1
  381. package/lib/chain/opPools/types.d.ts.map +0 -1
  382. package/lib/chain/opPools/utils.d.ts.map +0 -1
  383. package/lib/chain/options.d.ts.map +0 -1
  384. package/lib/chain/prepareNextSlot.d.ts.map +0 -1
  385. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +0 -1
  386. package/lib/chain/produceBlock/index.d.ts.map +0 -1
  387. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +0 -1
  388. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts.map +0 -1
  389. package/lib/chain/regen/errors.d.ts.map +0 -1
  390. package/lib/chain/regen/index.d.ts.map +0 -1
  391. package/lib/chain/regen/interface.d.ts.map +0 -1
  392. package/lib/chain/regen/queued.d.ts.map +0 -1
  393. package/lib/chain/regen/regen.d.ts.map +0 -1
  394. package/lib/chain/reprocess.d.ts.map +0 -1
  395. package/lib/chain/rewards/attestationsRewards.d.ts.map +0 -1
  396. package/lib/chain/rewards/blockRewards.d.ts.map +0 -1
  397. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +0 -1
  398. package/lib/chain/seenCache/index.d.ts.map +0 -1
  399. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +0 -1
  400. package/lib/chain/seenCache/seenAttestationData.d.ts.map +0 -1
  401. package/lib/chain/seenCache/seenAttesters.d.ts.map +0 -1
  402. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +0 -1
  403. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +0 -1
  404. package/lib/chain/seenCache/seenCommittee.d.ts.map +0 -1
  405. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +0 -1
  406. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +0 -1
  407. package/lib/chain/serializeState.d.ts.map +0 -1
  408. package/lib/chain/shufflingCache.d.ts.map +0 -1
  409. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  410. package/lib/chain/stateCache/datastore/db.d.ts.map +0 -1
  411. package/lib/chain/stateCache/datastore/file.d.ts.map +0 -1
  412. package/lib/chain/stateCache/datastore/index.d.ts.map +0 -1
  413. package/lib/chain/stateCache/datastore/types.d.ts.map +0 -1
  414. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +0 -1
  415. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  416. package/lib/chain/stateCache/index.d.ts.map +0 -1
  417. package/lib/chain/stateCache/mapMetrics.d.ts.map +0 -1
  418. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +0 -1
  419. package/lib/chain/stateCache/types.d.ts.map +0 -1
  420. package/lib/chain/validation/aggregateAndProof.d.ts.map +0 -1
  421. package/lib/chain/validation/attestation.d.ts.map +0 -1
  422. package/lib/chain/validation/attesterSlashing.d.ts.map +0 -1
  423. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  424. package/lib/chain/validation/block.d.ts.map +0 -1
  425. package/lib/chain/validation/blsToExecutionChange.d.ts.map +0 -1
  426. package/lib/chain/validation/dataColumnSidecar.d.ts.map +0 -1
  427. package/lib/chain/validation/index.d.ts.map +0 -1
  428. package/lib/chain/validation/lightClientFinalityUpdate.d.ts.map +0 -1
  429. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts.map +0 -1
  430. package/lib/chain/validation/proposerSlashing.d.ts.map +0 -1
  431. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +0 -1
  432. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +0 -1
  433. package/lib/chain/validation/signatureSets/index.d.ts.map +0 -1
  434. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +0 -1
  435. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +0 -1
  436. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +0 -1
  437. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +0 -1
  438. package/lib/chain/validation/syncCommittee.d.ts.map +0 -1
  439. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +0 -1
  440. package/lib/chain/validation/voluntaryExit.d.ts.map +0 -1
  441. package/lib/chain/validatorMonitor.d.ts.map +0 -1
  442. package/lib/constants/constants.d.ts.map +0 -1
  443. package/lib/constants/index.d.ts.map +0 -1
  444. package/lib/constants/network.d.ts.map +0 -1
  445. package/lib/db/beacon.d.ts.map +0 -1
  446. package/lib/db/buckets.d.ts.map +0 -1
  447. package/lib/db/index.d.ts.map +0 -1
  448. package/lib/db/interface.d.ts.map +0 -1
  449. package/lib/db/options.d.ts.map +0 -1
  450. package/lib/db/repositories/attesterSlashing.d.ts.map +0 -1
  451. package/lib/db/repositories/backfilledRanges.d.ts.map +0 -1
  452. package/lib/db/repositories/blobSidecars.d.ts.map +0 -1
  453. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +0 -1
  454. package/lib/db/repositories/block.d.ts.map +0 -1
  455. package/lib/db/repositories/blockArchive.d.ts.map +0 -1
  456. package/lib/db/repositories/blockArchiveIndex.d.ts.map +0 -1
  457. package/lib/db/repositories/blsToExecutionChange.d.ts.map +0 -1
  458. package/lib/db/repositories/checkpointState.d.ts.map +0 -1
  459. package/lib/db/repositories/dataColumnSidecar.d.ts.map +0 -1
  460. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +0 -1
  461. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  462. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  463. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  464. package/lib/db/repositories/index.d.ts.map +0 -1
  465. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +0 -1
  466. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +0 -1
  467. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +0 -1
  468. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +0 -1
  469. package/lib/db/repositories/proposerSlashing.d.ts.map +0 -1
  470. package/lib/db/repositories/stateArchive.d.ts.map +0 -1
  471. package/lib/db/repositories/stateArchiveIndex.d.ts.map +0 -1
  472. package/lib/db/repositories/voluntaryExit.d.ts.map +0 -1
  473. package/lib/db/single/index.d.ts.map +0 -1
  474. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  475. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  476. package/lib/eth1/errors.d.ts.map +0 -1
  477. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  478. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  479. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  480. package/lib/eth1/eth1MergeBlockTracker.d.ts.map +0 -1
  481. package/lib/eth1/index.d.ts.map +0 -1
  482. package/lib/eth1/interface.d.ts.map +0 -1
  483. package/lib/eth1/options.d.ts.map +0 -1
  484. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  485. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  486. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  487. package/lib/eth1/provider/utils.d.ts.map +0 -1
  488. package/lib/eth1/stream.d.ts.map +0 -1
  489. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  490. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  491. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  492. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  493. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  494. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  495. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  496. package/lib/execution/builder/cache.d.ts.map +0 -1
  497. package/lib/execution/builder/http.d.ts.map +0 -1
  498. package/lib/execution/builder/index.d.ts.map +0 -1
  499. package/lib/execution/builder/interface.d.ts.map +0 -1
  500. package/lib/execution/builder/utils.d.ts.map +0 -1
  501. package/lib/execution/engine/disabled.d.ts.map +0 -1
  502. package/lib/execution/engine/http.d.ts.map +0 -1
  503. package/lib/execution/engine/index.d.ts.map +0 -1
  504. package/lib/execution/engine/interface.d.ts.map +0 -1
  505. package/lib/execution/engine/mock.d.ts.map +0 -1
  506. package/lib/execution/engine/payloadIdCache.d.ts.map +0 -1
  507. package/lib/execution/engine/types.d.ts.map +0 -1
  508. package/lib/execution/engine/utils.d.ts.map +0 -1
  509. package/lib/execution/index.d.ts.map +0 -1
  510. package/lib/index.d.ts.map +0 -1
  511. package/lib/metrics/index.d.ts.map +0 -1
  512. package/lib/metrics/metrics/beacon.d.ts.map +0 -1
  513. package/lib/metrics/metrics/lodestar.d.ts.map +0 -1
  514. package/lib/metrics/metrics.d.ts.map +0 -1
  515. package/lib/metrics/nodeJsMetrics.d.ts.map +0 -1
  516. package/lib/metrics/options.d.ts.map +0 -1
  517. package/lib/metrics/server/http.d.ts.map +0 -1
  518. package/lib/metrics/server/index.d.ts.map +0 -1
  519. package/lib/metrics/utils/avgMinMax.d.ts.map +0 -1
  520. package/lib/metrics/utils/gauge.d.ts.map +0 -1
  521. package/lib/metrics/utils/registryMetricCreator.d.ts.map +0 -1
  522. package/lib/monitoring/clientStats.d.ts.map +0 -1
  523. package/lib/monitoring/index.d.ts.map +0 -1
  524. package/lib/monitoring/options.d.ts.map +0 -1
  525. package/lib/monitoring/properties.d.ts.map +0 -1
  526. package/lib/monitoring/service.d.ts.map +0 -1
  527. package/lib/monitoring/system.d.ts.map +0 -1
  528. package/lib/monitoring/types.d.ts.map +0 -1
  529. package/lib/network/core/events.d.ts.map +0 -1
  530. package/lib/network/core/index.d.ts.map +0 -1
  531. package/lib/network/core/metrics.d.ts.map +0 -1
  532. package/lib/network/core/networkCore.d.ts.map +0 -1
  533. package/lib/network/core/networkCoreWorker.d.ts.map +0 -1
  534. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +0 -1
  535. package/lib/network/core/types.d.ts.map +0 -1
  536. package/lib/network/discv5/index.d.ts.map +0 -1
  537. package/lib/network/discv5/types.d.ts.map +0 -1
  538. package/lib/network/discv5/utils.d.ts.map +0 -1
  539. package/lib/network/discv5/worker.d.ts.map +0 -1
  540. package/lib/network/events.d.ts.map +0 -1
  541. package/lib/network/forks.d.ts.map +0 -1
  542. package/lib/network/gossip/constants.d.ts.map +0 -1
  543. package/lib/network/gossip/encoding.d.ts.map +0 -1
  544. package/lib/network/gossip/errors.d.ts.map +0 -1
  545. package/lib/network/gossip/gossipsub.d.ts.map +0 -1
  546. package/lib/network/gossip/index.d.ts.map +0 -1
  547. package/lib/network/gossip/interface.d.ts.map +0 -1
  548. package/lib/network/gossip/metrics.d.ts.map +0 -1
  549. package/lib/network/gossip/scoringParameters.d.ts.map +0 -1
  550. package/lib/network/gossip/topic.d.ts.map +0 -1
  551. package/lib/network/index.d.ts.map +0 -1
  552. package/lib/network/interface.d.ts.map +0 -1
  553. package/lib/network/libp2p/error.d.ts.map +0 -1
  554. package/lib/network/libp2p/index.d.ts.map +0 -1
  555. package/lib/network/metadata.d.ts.map +0 -1
  556. package/lib/network/network.d.ts.map +0 -1
  557. package/lib/network/networkConfig.d.ts.map +0 -1
  558. package/lib/network/options.d.ts.map +0 -1
  559. package/lib/network/peers/client.d.ts.map +0 -1
  560. package/lib/network/peers/datastore.d.ts.map +0 -1
  561. package/lib/network/peers/discover.d.ts.map +0 -1
  562. package/lib/network/peers/index.d.ts.map +0 -1
  563. package/lib/network/peers/peerManager.d.ts.map +0 -1
  564. package/lib/network/peers/peersData.d.ts.map +0 -1
  565. package/lib/network/peers/score/constants.d.ts.map +0 -1
  566. package/lib/network/peers/score/index.d.ts.map +0 -1
  567. package/lib/network/peers/score/interface.d.ts.map +0 -1
  568. package/lib/network/peers/score/score.d.ts.map +0 -1
  569. package/lib/network/peers/score/store.d.ts.map +0 -1
  570. package/lib/network/peers/score/utils.d.ts.map +0 -1
  571. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +0 -1
  572. package/lib/network/peers/utils/enrSubnetsDeserialize.d.ts.map +0 -1
  573. package/lib/network/peers/utils/getConnectedPeerIds.d.ts.map +0 -1
  574. package/lib/network/peers/utils/index.d.ts.map +0 -1
  575. package/lib/network/peers/utils/prioritizePeers.d.ts.map +0 -1
  576. package/lib/network/peers/utils/subnetMap.d.ts.map +0 -1
  577. package/lib/network/processor/aggregatorTracker.d.ts.map +0 -1
  578. package/lib/network/processor/extractSlotRootFns.d.ts.map +0 -1
  579. package/lib/network/processor/gossipHandlers.d.ts.map +0 -1
  580. package/lib/network/processor/gossipQueues/index.d.ts.map +0 -1
  581. package/lib/network/processor/gossipQueues/indexed.d.ts.map +0 -1
  582. package/lib/network/processor/gossipQueues/linear.d.ts.map +0 -1
  583. package/lib/network/processor/gossipQueues/types.d.ts.map +0 -1
  584. package/lib/network/processor/gossipValidatorFn.d.ts.map +0 -1
  585. package/lib/network/processor/index.d.ts.map +0 -1
  586. package/lib/network/processor/types.d.ts.map +0 -1
  587. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +0 -1
  588. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +0 -1
  589. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +0 -1
  590. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  591. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  592. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +0 -1
  593. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +0 -1
  594. package/lib/network/reqresp/handlers/index.d.ts.map +0 -1
  595. package/lib/network/reqresp/handlers/lightClientBootstrap.d.ts.map +0 -1
  596. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.d.ts.map +0 -1
  597. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.d.ts.map +0 -1
  598. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.d.ts.map +0 -1
  599. package/lib/network/reqresp/index.d.ts.map +0 -1
  600. package/lib/network/reqresp/interface.d.ts.map +0 -1
  601. package/lib/network/reqresp/protocols.d.ts.map +0 -1
  602. package/lib/network/reqresp/rateLimit.d.ts.map +0 -1
  603. package/lib/network/reqresp/score.d.ts.map +0 -1
  604. package/lib/network/reqresp/types.d.ts.map +0 -1
  605. package/lib/network/reqresp/utils/collect.d.ts.map +0 -1
  606. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts.map +0 -1
  607. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +0 -1
  608. package/lib/network/statusCache.d.ts.map +0 -1
  609. package/lib/network/subnets/attnetsService.d.ts.map +0 -1
  610. package/lib/network/subnets/index.d.ts.map +0 -1
  611. package/lib/network/subnets/interface.d.ts.map +0 -1
  612. package/lib/network/subnets/syncnetsService.d.ts.map +0 -1
  613. package/lib/network/subnets/util.d.ts.map +0 -1
  614. package/lib/network/util.d.ts.map +0 -1
  615. package/lib/node/index.d.ts.map +0 -1
  616. package/lib/node/nodejs.d.ts.map +0 -1
  617. package/lib/node/notifier.d.ts.map +0 -1
  618. package/lib/node/options.d.ts.map +0 -1
  619. package/lib/node/utils/interop/deposits.d.ts.map +0 -1
  620. package/lib/node/utils/interop/state.d.ts.map +0 -1
  621. package/lib/node/utils/lightclient.d.ts.map +0 -1
  622. package/lib/node/utils/state.d.ts.map +0 -1
  623. package/lib/sync/backfill/backfill.d.ts.map +0 -1
  624. package/lib/sync/backfill/errors.d.ts.map +0 -1
  625. package/lib/sync/backfill/index.d.ts.map +0 -1
  626. package/lib/sync/backfill/verify.d.ts.map +0 -1
  627. package/lib/sync/constants.d.ts.map +0 -1
  628. package/lib/sync/index.d.ts.map +0 -1
  629. package/lib/sync/interface.d.ts.map +0 -1
  630. package/lib/sync/options.d.ts.map +0 -1
  631. package/lib/sync/range/batch.d.ts.map +0 -1
  632. package/lib/sync/range/chain.d.ts.map +0 -1
  633. package/lib/sync/range/range.d.ts.map +0 -1
  634. package/lib/sync/range/utils/batches.d.ts.map +0 -1
  635. package/lib/sync/range/utils/chainTarget.d.ts.map +0 -1
  636. package/lib/sync/range/utils/hashBlocks.d.ts.map +0 -1
  637. package/lib/sync/range/utils/index.d.ts.map +0 -1
  638. package/lib/sync/range/utils/peerBalancer.d.ts.map +0 -1
  639. package/lib/sync/range/utils/updateChains.d.ts.map +0 -1
  640. package/lib/sync/sync.d.ts.map +0 -1
  641. package/lib/sync/types.d.ts.map +0 -1
  642. package/lib/sync/unknownBlock.d.ts.map +0 -1
  643. package/lib/sync/utils/downloadByRange.d.ts.map +0 -1
  644. package/lib/sync/utils/downloadByRoot.d.ts.map +0 -1
  645. package/lib/sync/utils/pendingBlocksTree.d.ts.map +0 -1
  646. package/lib/sync/utils/remoteSyncType.d.ts.map +0 -1
  647. package/lib/util/address.d.ts.map +0 -1
  648. package/lib/util/array.d.ts.map +0 -1
  649. package/lib/util/asyncIterableToEvents.d.ts.map +0 -1
  650. package/lib/util/binarySearch.d.ts.map +0 -1
  651. package/lib/util/bitArray.d.ts.map +0 -1
  652. package/lib/util/blobs.d.ts.map +0 -1
  653. package/lib/util/bufferPool.d.ts.map +0 -1
  654. package/lib/util/bytes.d.ts.map +0 -1
  655. package/lib/util/chunkify.d.ts.map +0 -1
  656. package/lib/util/clock.d.ts.map +0 -1
  657. package/lib/util/dataColumns.d.ts.map +0 -1
  658. package/lib/util/dependentRoot.d.ts.map +0 -1
  659. package/lib/util/enum.d.ts.map +0 -1
  660. package/lib/util/error.d.ts.map +0 -1
  661. package/lib/util/eventLoop.d.ts.map +0 -1
  662. package/lib/util/execution.d.ts.map +0 -1
  663. package/lib/util/file.d.ts.map +0 -1
  664. package/lib/util/forkChoice.d.ts.map +0 -1
  665. package/lib/util/forkName.d.ts.map +0 -1
  666. package/lib/util/graffiti.d.ts.map +0 -1
  667. package/lib/util/hex.d.ts.map +0 -1
  668. package/lib/util/index.d.ts.map +0 -1
  669. package/lib/util/ip.d.ts.map +0 -1
  670. package/lib/util/itTrigger.d.ts.map +0 -1
  671. package/lib/util/kzg.d.ts.map +0 -1
  672. package/lib/util/map.d.ts.map +0 -1
  673. package/lib/util/metadata.d.ts.map +0 -1
  674. package/lib/util/multifork.d.ts.map +0 -1
  675. package/lib/util/numpy.d.ts.map +0 -1
  676. package/lib/util/peerId.d.ts.map +0 -1
  677. package/lib/util/profile.d.ts.map +0 -1
  678. package/lib/util/promises.d.ts.map +0 -1
  679. package/lib/util/queue/errors.d.ts.map +0 -1
  680. package/lib/util/queue/fnQueue.d.ts.map +0 -1
  681. package/lib/util/queue/index.d.ts.map +0 -1
  682. package/lib/util/queue/itemQueue.d.ts.map +0 -1
  683. package/lib/util/queue/options.d.ts.map +0 -1
  684. package/lib/util/serializedCache.d.ts.map +0 -1
  685. package/lib/util/set.d.ts.map +0 -1
  686. package/lib/util/shuffle.d.ts.map +0 -1
  687. package/lib/util/sortBy.d.ts.map +0 -1
  688. package/lib/util/sszBytes.d.ts.map +0 -1
  689. package/lib/util/strictEvents.d.ts.map +0 -1
  690. package/lib/util/time.d.ts.map +0 -1
  691. package/lib/util/timeSeries.d.ts.map +0 -1
  692. package/lib/util/types.d.ts.map +0 -1
  693. package/lib/util/workerEvents.d.ts.map +0 -1
  694. package/lib/util/wrapError.d.ts.map +0 -1
  695. package/src/api/impl/api.ts +0 -26
  696. package/src/api/impl/beacon/blocks/index.ts +0 -744
  697. package/src/api/impl/beacon/blocks/utils.ts +0 -75
  698. package/src/api/impl/beacon/index.ts +0 -35
  699. package/src/api/impl/beacon/pool/index.ts +0 -314
  700. package/src/api/impl/beacon/rewards/index.ts +0 -30
  701. package/src/api/impl/beacon/state/index.ts +0 -406
  702. package/src/api/impl/beacon/state/utils.ts +0 -189
  703. package/src/api/impl/config/constants.ts +0 -127
  704. package/src/api/impl/config/index.ts +0 -59
  705. package/src/api/impl/debug/index.ts +0 -131
  706. package/src/api/impl/errors.ts +0 -50
  707. package/src/api/impl/events/index.ts +0 -33
  708. package/src/api/impl/index.ts +0 -6
  709. package/src/api/impl/lightclient/index.ts +0 -64
  710. package/src/api/impl/lodestar/index.ts +0 -257
  711. package/src/api/impl/node/index.ts +0 -88
  712. package/src/api/impl/node/utils.ts +0 -51
  713. package/src/api/impl/proof/index.ts +0 -60
  714. package/src/api/impl/types.ts +0 -17
  715. package/src/api/impl/utils.ts +0 -25
  716. package/src/api/impl/validator/index.ts +0 -1540
  717. package/src/api/impl/validator/utils.ts +0 -85
  718. package/src/api/index.ts +0 -2
  719. package/src/api/options.ts +0 -16
  720. package/src/api/rest/activeSockets.ts +0 -109
  721. package/src/api/rest/base.ts +0 -216
  722. package/src/api/rest/index.ts +0 -63
  723. package/src/api/rest/swaggerUI.ts +0 -80
  724. package/src/bun-wrappers/prometheus-gc-stats.ts +0 -7
  725. package/src/chain/ColumnReconstructionTracker.ts +0 -90
  726. package/src/chain/GetBlobsTracker.ts +0 -115
  727. package/src/chain/archiveStore/archiveStore.ts +0 -222
  728. package/src/chain/archiveStore/constants.ts +0 -5
  729. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +0 -116
  730. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +0 -68
  731. package/src/chain/archiveStore/historicalState/metrics.ts +0 -214
  732. package/src/chain/archiveStore/historicalState/types.ts +0 -41
  733. package/src/chain/archiveStore/historicalState/worker.ts +0 -77
  734. package/src/chain/archiveStore/index.ts +0 -3
  735. package/src/chain/archiveStore/interface.ts +0 -75
  736. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +0 -138
  737. package/src/chain/archiveStore/utils/archiveBlocks.ts +0 -437
  738. package/src/chain/archiveStore/utils/pruneHistory.ts +0 -56
  739. package/src/chain/archiveStore/utils/updateBackfillRange.ts +0 -50
  740. package/src/chain/balancesCache.ts +0 -52
  741. package/src/chain/beaconProposerCache.ts +0 -43
  742. package/src/chain/blocks/blockInput/blockInput.ts +0 -852
  743. package/src/chain/blocks/blockInput/errors.ts +0 -48
  744. package/src/chain/blocks/blockInput/index.ts +0 -4
  745. package/src/chain/blocks/blockInput/types.ts +0 -145
  746. package/src/chain/blocks/blockInput/utils.ts +0 -21
  747. package/src/chain/blocks/importBlock.ts +0 -597
  748. package/src/chain/blocks/index.ts +0 -179
  749. package/src/chain/blocks/types.ts +0 -101
  750. package/src/chain/blocks/utils/blowfishBanner.ts +0 -28
  751. package/src/chain/blocks/utils/chainSegment.ts +0 -29
  752. package/src/chain/blocks/utils/checkpoint.ts +0 -25
  753. package/src/chain/blocks/utils/giraffeBanner.ts +0 -30
  754. package/src/chain/blocks/utils/ownBanner.ts +0 -20
  755. package/src/chain/blocks/utils/pandaMergeTransitionBanner.ts +0 -43
  756. package/src/chain/blocks/utils/zebraBanner.ts +0 -45
  757. package/src/chain/blocks/verifyBlock.ts +0 -242
  758. package/src/chain/blocks/verifyBlocksDataAvailability.ts +0 -42
  759. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +0 -438
  760. package/src/chain/blocks/verifyBlocksSanityChecks.ts +0 -129
  761. package/src/chain/blocks/verifyBlocksSignatures.ts +0 -105
  762. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +0 -114
  763. package/src/chain/blocks/writeBlockInputToDb.ts +0 -120
  764. package/src/chain/bls/index.ts +0 -4
  765. package/src/chain/bls/interface.ts +0 -68
  766. package/src/chain/bls/maybeBatch.ts +0 -45
  767. package/src/chain/bls/multithread/index.ts +0 -582
  768. package/src/chain/bls/multithread/jobItem.ts +0 -119
  769. package/src/chain/bls/multithread/poolSize.ts +0 -16
  770. package/src/chain/bls/multithread/types.ts +0 -38
  771. package/src/chain/bls/multithread/utils.ts +0 -19
  772. package/src/chain/bls/multithread/worker.ts +0 -114
  773. package/src/chain/bls/singleThread.ts +0 -87
  774. package/src/chain/bls/utils.ts +0 -30
  775. package/src/chain/chain.ts +0 -1354
  776. package/src/chain/emitter.ts +0 -113
  777. package/src/chain/errors/attestationError.ts +0 -194
  778. package/src/chain/errors/attesterSlashingError.ts +0 -11
  779. package/src/chain/errors/blobSidecarError.ts +0 -60
  780. package/src/chain/errors/blockError.ts +0 -166
  781. package/src/chain/errors/blsToExecutionChangeError.ts +0 -13
  782. package/src/chain/errors/dataColumnSidecarError.ts +0 -80
  783. package/src/chain/errors/gossipValidation.ts +0 -20
  784. package/src/chain/errors/index.ts +0 -10
  785. package/src/chain/errors/lightClientError.ts +0 -30
  786. package/src/chain/errors/proposerSlashingError.ts +0 -11
  787. package/src/chain/errors/syncCommitteeError.ts +0 -36
  788. package/src/chain/errors/voluntaryExitError.ts +0 -13
  789. package/src/chain/forkChoice/index.ts +0 -112
  790. package/src/chain/genesis/genesis.ts +0 -190
  791. package/src/chain/genesis/interface.ts +0 -14
  792. package/src/chain/index.ts +0 -6
  793. package/src/chain/initState.ts +0 -221
  794. package/src/chain/interface.ts +0 -280
  795. package/src/chain/lightClient/index.ts +0 -764
  796. package/src/chain/lightClient/proofs.ts +0 -85
  797. package/src/chain/lightClient/types.ts +0 -33
  798. package/src/chain/opPools/aggregatedAttestationPool.ts +0 -1063
  799. package/src/chain/opPools/attestationPool.ts +0 -282
  800. package/src/chain/opPools/index.ts +0 -5
  801. package/src/chain/opPools/opPool.ts +0 -462
  802. package/src/chain/opPools/syncCommitteeMessagePool.ts +0 -169
  803. package/src/chain/opPools/syncContributionAndProofPool.ts +0 -240
  804. package/src/chain/opPools/types.ts +0 -35
  805. package/src/chain/opPools/utils.ts +0 -65
  806. package/src/chain/options.ts +0 -138
  807. package/src/chain/prepareNextSlot.ts +0 -277
  808. package/src/chain/produceBlock/computeNewStateRoot.ts +0 -55
  809. package/src/chain/produceBlock/index.ts +0 -2
  810. package/src/chain/produceBlock/produceBlockBody.ts +0 -797
  811. package/src/chain/produceBlock/validateBlobsAndKzgCommitments.ts +0 -54
  812. package/src/chain/regen/errors.ts +0 -30
  813. package/src/chain/regen/index.ts +0 -4
  814. package/src/chain/regen/interface.ts +0 -93
  815. package/src/chain/regen/queued.ts +0 -317
  816. package/src/chain/regen/regen.ts +0 -424
  817. package/src/chain/reprocess.ts +0 -161
  818. package/src/chain/rewards/attestationsRewards.ts +0 -196
  819. package/src/chain/rewards/blockRewards.ts +0 -150
  820. package/src/chain/rewards/syncCommitteeRewards.ts +0 -58
  821. package/src/chain/seenCache/index.ts +0 -5
  822. package/src/chain/seenCache/seenAggregateAndProof.ts +0 -120
  823. package/src/chain/seenCache/seenAttestationData.ts +0 -145
  824. package/src/chain/seenCache/seenAttesters.ts +0 -58
  825. package/src/chain/seenCache/seenBlockAttesters.ts +0 -18
  826. package/src/chain/seenCache/seenBlockProposers.ts +0 -48
  827. package/src/chain/seenCache/seenCommittee.ts +0 -43
  828. package/src/chain/seenCache/seenCommitteeContribution.ts +0 -104
  829. package/src/chain/seenCache/seenGossipBlockInput.ts +0 -373
  830. package/src/chain/serializeState.ts +0 -32
  831. package/src/chain/shufflingCache.ts +0 -238
  832. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  833. package/src/chain/stateCache/datastore/db.ts +0 -36
  834. package/src/chain/stateCache/datastore/file.ts +0 -53
  835. package/src/chain/stateCache/datastore/index.ts +0 -2
  836. package/src/chain/stateCache/datastore/types.ts +0 -13
  837. package/src/chain/stateCache/fifoBlockStateCache.ts +0 -208
  838. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  839. package/src/chain/stateCache/index.ts +0 -3
  840. package/src/chain/stateCache/mapMetrics.ts +0 -52
  841. package/src/chain/stateCache/persistentCheckpointsCache.ts +0 -837
  842. package/src/chain/stateCache/types.ts +0 -86
  843. package/src/chain/validation/aggregateAndProof.ts +0 -258
  844. package/src/chain/validation/attestation.ts +0 -885
  845. package/src/chain/validation/attesterSlashing.ts +0 -61
  846. package/src/chain/validation/blobSidecar.ts +0 -301
  847. package/src/chain/validation/block.ts +0 -188
  848. package/src/chain/validation/blsToExecutionChange.ts +0 -61
  849. package/src/chain/validation/dataColumnSidecar.ts +0 -381
  850. package/src/chain/validation/index.ts +0 -9
  851. package/src/chain/validation/lightClientFinalityUpdate.ts +0 -46
  852. package/src/chain/validation/lightClientOptimisticUpdate.ts +0 -68
  853. package/src/chain/validation/proposerSlashing.ts +0 -54
  854. package/src/chain/validation/signatureSets/aggregateAndProof.ts +0 -38
  855. package/src/chain/validation/signatureSets/contributionAndProof.ts +0 -27
  856. package/src/chain/validation/signatureSets/index.ts +0 -6
  857. package/src/chain/validation/signatureSets/selectionProof.ts +0 -27
  858. package/src/chain/validation/signatureSets/syncCommittee.ts +0 -22
  859. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +0 -18
  860. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +0 -27
  861. package/src/chain/validation/syncCommittee.ts +0 -165
  862. package/src/chain/validation/syncCommitteeContributionAndProof.ts +0 -122
  863. package/src/chain/validation/voluntaryExit.ts +0 -58
  864. package/src/chain/validatorMonitor.ts +0 -1309
  865. package/src/constants/constants.ts +0 -15
  866. package/src/constants/index.ts +0 -2
  867. package/src/constants/network.ts +0 -52
  868. package/src/db/beacon.ts +0 -113
  869. package/src/db/buckets.ts +0 -80
  870. package/src/db/index.ts +0 -2
  871. package/src/db/interface.ts +0 -76
  872. package/src/db/options.ts +0 -7
  873. package/src/db/repositories/attesterSlashing.ts +0 -38
  874. package/src/db/repositories/backfilledRanges.ts +0 -29
  875. package/src/db/repositories/blobSidecars.ts +0 -37
  876. package/src/db/repositories/blobSidecarsArchive.ts +0 -28
  877. package/src/db/repositories/block.ts +0 -33
  878. package/src/db/repositories/blockArchive.ts +0 -170
  879. package/src/db/repositories/blockArchiveIndex.ts +0 -45
  880. package/src/db/repositories/blsToExecutionChange.ts +0 -16
  881. package/src/db/repositories/checkpointState.ts +0 -31
  882. package/src/db/repositories/dataColumnSidecar.ts +0 -49
  883. package/src/db/repositories/dataColumnSidecarArchive.ts +0 -56
  884. package/src/db/repositories/depositDataRoot.ts +0 -80
  885. package/src/db/repositories/depositEvent.ts +0 -32
  886. package/src/db/repositories/eth1Data.ts +0 -33
  887. package/src/db/repositories/index.ts +0 -20
  888. package/src/db/repositories/lightclientBestUpdate.ts +0 -41
  889. package/src/db/repositories/lightclientCheckpointHeader.ts +0 -32
  890. package/src/db/repositories/lightclientSyncCommittee.ts +0 -16
  891. package/src/db/repositories/lightclientSyncCommitteeWitness.ts +0 -77
  892. package/src/db/repositories/proposerSlashing.ts +0 -15
  893. package/src/db/repositories/stateArchive.ts +0 -69
  894. package/src/db/repositories/stateArchiveIndex.ts +0 -18
  895. package/src/db/repositories/voluntaryExit.ts +0 -15
  896. package/src/db/single/index.ts +0 -2
  897. package/src/db/single/preGenesisState.ts +0 -37
  898. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  899. package/src/eth1/errors.ts +0 -40
  900. package/src/eth1/eth1DataCache.ts +0 -26
  901. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  902. package/src/eth1/eth1DepositsCache.ts +0 -141
  903. package/src/eth1/eth1MergeBlockTracker.ts +0 -328
  904. package/src/eth1/index.ts +0 -157
  905. package/src/eth1/interface.ts +0 -131
  906. package/src/eth1/options.ts +0 -28
  907. package/src/eth1/provider/eth1Provider.ts +0 -229
  908. package/src/eth1/provider/jsonRpcHttpClient.ts +0 -390
  909. package/src/eth1/provider/jwt.ts +0 -36
  910. package/src/eth1/provider/utils.ts +0 -136
  911. package/src/eth1/stream.ts +0 -75
  912. package/src/eth1/utils/depositContract.ts +0 -37
  913. package/src/eth1/utils/deposits.ts +0 -70
  914. package/src/eth1/utils/eth1Data.ts +0 -100
  915. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  916. package/src/eth1/utils/eth1Vote.ts +0 -142
  917. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  918. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  919. package/src/execution/builder/cache.ts +0 -39
  920. package/src/execution/builder/http.ts +0 -229
  921. package/src/execution/builder/index.ts +0 -27
  922. package/src/execution/builder/interface.ts +0 -49
  923. package/src/execution/builder/utils.ts +0 -19
  924. package/src/execution/engine/disabled.ts +0 -35
  925. package/src/execution/engine/http.ts +0 -644
  926. package/src/execution/engine/index.ts +0 -63
  927. package/src/execution/engine/interface.ts +0 -199
  928. package/src/execution/engine/mock.ts +0 -493
  929. package/src/execution/engine/payloadIdCache.ts +0 -54
  930. package/src/execution/engine/types.ts +0 -640
  931. package/src/execution/engine/utils.ts +0 -136
  932. package/src/execution/index.ts +0 -4
  933. package/src/index.ts +0 -20
  934. package/src/metrics/index.ts +0 -4
  935. package/src/metrics/metrics/beacon.ts +0 -390
  936. package/src/metrics/metrics/lodestar.ts +0 -1870
  937. package/src/metrics/metrics.ts +0 -43
  938. package/src/metrics/nodeJsMetrics.ts +0 -19
  939. package/src/metrics/options.ts +0 -22
  940. package/src/metrics/server/http.ts +0 -114
  941. package/src/metrics/server/index.ts +0 -1
  942. package/src/metrics/utils/avgMinMax.ts +0 -87
  943. package/src/metrics/utils/gauge.ts +0 -22
  944. package/src/metrics/utils/registryMetricCreator.ts +0 -41
  945. package/src/monitoring/clientStats.ts +0 -297
  946. package/src/monitoring/index.ts +0 -2
  947. package/src/monitoring/options.ts +0 -19
  948. package/src/monitoring/properties.ts +0 -152
  949. package/src/monitoring/service.ts +0 -235
  950. package/src/monitoring/system.ts +0 -146
  951. package/src/monitoring/types.ts +0 -21
  952. package/src/network/core/events.ts +0 -59
  953. package/src/network/core/index.ts +0 -3
  954. package/src/network/core/metrics.ts +0 -304
  955. package/src/network/core/networkCore.ts +0 -599
  956. package/src/network/core/networkCoreWorker.ts +0 -176
  957. package/src/network/core/networkCoreWorkerHandler.ts +0 -284
  958. package/src/network/core/types.ts +0 -119
  959. package/src/network/discv5/index.ts +0 -132
  960. package/src/network/discv5/types.ts +0 -74
  961. package/src/network/discv5/utils.ts +0 -50
  962. package/src/network/discv5/worker.ts +0 -137
  963. package/src/network/events.ts +0 -51
  964. package/src/network/forks.ts +0 -94
  965. package/src/network/gossip/constants.ts +0 -15
  966. package/src/network/gossip/encoding.ts +0 -111
  967. package/src/network/gossip/errors.ts +0 -7
  968. package/src/network/gossip/gossipsub.ts +0 -384
  969. package/src/network/gossip/index.ts +0 -4
  970. package/src/network/gossip/interface.ts +0 -215
  971. package/src/network/gossip/metrics.ts +0 -71
  972. package/src/network/gossip/scoringParameters.ts +0 -333
  973. package/src/network/gossip/topic.ts +0 -332
  974. package/src/network/index.ts +0 -8
  975. package/src/network/interface.ts +0 -134
  976. package/src/network/libp2p/error.ts +0 -55
  977. package/src/network/libp2p/index.ts +0 -153
  978. package/src/network/metadata.ts +0 -162
  979. package/src/network/network.ts +0 -767
  980. package/src/network/networkConfig.ts +0 -12
  981. package/src/network/options.ts +0 -70
  982. package/src/network/peers/client.ts +0 -29
  983. package/src/network/peers/datastore.ts +0 -188
  984. package/src/network/peers/discover.ts +0 -647
  985. package/src/network/peers/index.ts +0 -2
  986. package/src/network/peers/peerManager.ts +0 -899
  987. package/src/network/peers/peersData.ts +0 -65
  988. package/src/network/peers/score/constants.ts +0 -34
  989. package/src/network/peers/score/index.ts +0 -4
  990. package/src/network/peers/score/interface.ts +0 -74
  991. package/src/network/peers/score/score.ts +0 -200
  992. package/src/network/peers/score/store.ts +0 -95
  993. package/src/network/peers/score/utils.ts +0 -37
  994. package/src/network/peers/utils/assertPeerRelevance.ts +0 -99
  995. package/src/network/peers/utils/enrSubnetsDeserialize.ts +0 -27
  996. package/src/network/peers/utils/getConnectedPeerIds.ts +0 -33
  997. package/src/network/peers/utils/index.ts +0 -4
  998. package/src/network/peers/utils/prioritizePeers.ts +0 -627
  999. package/src/network/peers/utils/subnetMap.ts +0 -88
  1000. package/src/network/processor/aggregatorTracker.ts +0 -38
  1001. package/src/network/processor/extractSlotRootFns.ts +0 -64
  1002. package/src/network/processor/gossipHandlers.ts +0 -951
  1003. package/src/network/processor/gossipQueues/index.ts +0 -114
  1004. package/src/network/processor/gossipQueues/indexed.ts +0 -219
  1005. package/src/network/processor/gossipQueues/linear.ts +0 -162
  1006. package/src/network/processor/gossipQueues/types.ts +0 -57
  1007. package/src/network/processor/gossipValidatorFn.ts +0 -142
  1008. package/src/network/processor/index.ts +0 -496
  1009. package/src/network/processor/types.ts +0 -27
  1010. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -373
  1011. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +0 -101
  1012. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +0 -49
  1013. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -114
  1014. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -62
  1015. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +0 -144
  1016. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +0 -88
  1017. package/src/network/reqresp/handlers/index.ts +0 -78
  1018. package/src/network/reqresp/handlers/lightClientBootstrap.ts +0 -31
  1019. package/src/network/reqresp/handlers/lightClientFinalityUpdate.ts +0 -21
  1020. package/src/network/reqresp/handlers/lightClientOptimisticUpdate.ts +0 -21
  1021. package/src/network/reqresp/handlers/lightClientUpdatesByRange.ts +0 -39
  1022. package/src/network/reqresp/index.ts +0 -2
  1023. package/src/network/reqresp/interface.ts +0 -45
  1024. package/src/network/reqresp/protocols.ts +0 -146
  1025. package/src/network/reqresp/rateLimit.ts +0 -112
  1026. package/src/network/reqresp/score.ts +0 -70
  1027. package/src/network/reqresp/types.ts +0 -174
  1028. package/src/network/reqresp/utils/collect.ts +0 -84
  1029. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +0 -57
  1030. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +0 -99
  1031. package/src/network/statusCache.ts +0 -17
  1032. package/src/network/subnets/attnetsService.ts +0 -385
  1033. package/src/network/subnets/index.ts +0 -2
  1034. package/src/network/subnets/interface.ts +0 -66
  1035. package/src/network/subnets/syncnetsService.ts +0 -147
  1036. package/src/network/subnets/util.ts +0 -63
  1037. package/src/network/util.ts +0 -29
  1038. package/src/node/index.ts +0 -2
  1039. package/src/node/nodejs.ts +0 -349
  1040. package/src/node/notifier.ts +0 -206
  1041. package/src/node/options.ts +0 -51
  1042. package/src/node/utils/interop/deposits.ts +0 -53
  1043. package/src/node/utils/interop/state.ts +0 -59
  1044. package/src/node/utils/lightclient.ts +0 -7
  1045. package/src/node/utils/state.ts +0 -37
  1046. package/src/sync/backfill/backfill.ts +0 -893
  1047. package/src/sync/backfill/errors.ts +0 -23
  1048. package/src/sync/backfill/index.ts +0 -1
  1049. package/src/sync/backfill/verify.ts +0 -58
  1050. package/src/sync/constants.ts +0 -71
  1051. package/src/sync/index.ts +0 -2
  1052. package/src/sync/interface.ts +0 -55
  1053. package/src/sync/options.ts +0 -45
  1054. package/src/sync/range/batch.ts +0 -455
  1055. package/src/sync/range/chain.ts +0 -715
  1056. package/src/sync/range/range.ts +0 -354
  1057. package/src/sync/range/utils/batches.ts +0 -119
  1058. package/src/sync/range/utils/chainTarget.ts +0 -62
  1059. package/src/sync/range/utils/hashBlocks.ts +0 -27
  1060. package/src/sync/range/utils/index.ts +0 -5
  1061. package/src/sync/range/utils/peerBalancer.ts +0 -184
  1062. package/src/sync/range/utils/updateChains.ts +0 -66
  1063. package/src/sync/sync.ts +0 -290
  1064. package/src/sync/types.ts +0 -57
  1065. package/src/sync/unknownBlock.ts +0 -859
  1066. package/src/sync/utils/downloadByRange.ts +0 -808
  1067. package/src/sync/utils/downloadByRoot.ts +0 -560
  1068. package/src/sync/utils/pendingBlocksTree.ts +0 -97
  1069. package/src/sync/utils/remoteSyncType.ts +0 -144
  1070. package/src/util/address.ts +0 -3
  1071. package/src/util/array.ts +0 -311
  1072. package/src/util/asyncIterableToEvents.ts +0 -164
  1073. package/src/util/binarySearch.ts +0 -48
  1074. package/src/util/bitArray.ts +0 -84
  1075. package/src/util/blobs.ts +0 -210
  1076. package/src/util/bufferPool.ts +0 -95
  1077. package/src/util/bytes.ts +0 -11
  1078. package/src/util/chunkify.ts +0 -27
  1079. package/src/util/clock.ts +0 -212
  1080. package/src/util/dataColumns.ts +0 -415
  1081. package/src/util/dependentRoot.ts +0 -47
  1082. package/src/util/enum.ts +0 -17
  1083. package/src/util/error.ts +0 -56
  1084. package/src/util/eventLoop.ts +0 -22
  1085. package/src/util/execution.ts +0 -223
  1086. package/src/util/file.ts +0 -52
  1087. package/src/util/forkChoice.ts +0 -5
  1088. package/src/util/forkName.ts +0 -20
  1089. package/src/util/graffiti.ts +0 -39
  1090. package/src/util/hex.ts +0 -9
  1091. package/src/util/index.ts +0 -2
  1092. package/src/util/ip.ts +0 -6
  1093. package/src/util/itTrigger.ts +0 -49
  1094. package/src/util/kzg.ts +0 -3
  1095. package/src/util/map.ts +0 -77
  1096. package/src/util/metadata.ts +0 -22
  1097. package/src/util/multifork.ts +0 -69
  1098. package/src/util/numpy.ts +0 -8
  1099. package/src/util/peerId.ts +0 -16
  1100. package/src/util/profile.ts +0 -54
  1101. package/src/util/promises.ts +0 -14
  1102. package/src/util/queue/errors.ts +0 -14
  1103. package/src/util/queue/fnQueue.ts +0 -16
  1104. package/src/util/queue/index.ts +0 -4
  1105. package/src/util/queue/itemQueue.ts +0 -128
  1106. package/src/util/queue/options.ts +0 -37
  1107. package/src/util/serializedCache.ts +0 -20
  1108. package/src/util/set.ts +0 -62
  1109. package/src/util/shuffle.ts +0 -21
  1110. package/src/util/sortBy.ts +0 -19
  1111. package/src/util/sszBytes.ts +0 -481
  1112. package/src/util/strictEvents.ts +0 -8
  1113. package/src/util/time.ts +0 -13
  1114. package/src/util/timeSeries.ts +0 -118
  1115. package/src/util/types.ts +0 -31
  1116. package/src/util/workerEvents.ts +0 -142
  1117. package/src/util/wrapError.ts +0 -27
@@ -1,136 +0,0 @@
1
- import {RootHex} from "@lodestar/types";
2
- import {bigIntToBytes, bytesToBigInt, fromHex, fromHexInto, toHex} from "@lodestar/utils";
3
- import {ErrorParseJson} from "./jsonRpcHttpClient.js";
4
-
5
- /** QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API */
6
- export type QUANTITY = string;
7
- /** DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API */
8
- export type DATA = string;
9
-
10
- export const rootHexRegex = /^0x[a-fA-F0-9]{64}$/;
11
-
12
- export function numberToHex(n: number | bigint): string {
13
- return "0x" + n.toString(16);
14
- }
15
-
16
- export function isJsonRpcTruncatedError(error: Error): boolean {
17
- return (
18
- // Truncated responses usually get as 200 but since it's truncated the JSON will be invalid
19
- error instanceof ErrorParseJson ||
20
- // Otherwise guess Infura error message of too many events
21
- (error instanceof Error && error.message.includes("query returned more than 10000 results")) ||
22
- // Nethermind enforces limits on JSON RPC batch calls
23
- (error instanceof Error && error.message.toLowerCase().includes("batch size limit exceeded"))
24
- );
25
- }
26
-
27
- export function bytesToHex(bytes: Uint8Array): string {
28
- // Handle special case in Ethereum hex formating where hex values may include a single letter
29
- // 0x0, 0x1 are valid values
30
- if (bytes.length === 1 && bytes[0] <= 0xf) {
31
- return "0x" + bytes[0].toString(16);
32
- }
33
-
34
- return toHex(bytes);
35
- }
36
-
37
- /**
38
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
39
- *
40
- * When encoding QUANTITIES (integers, numbers): encode as hex, prefix with “0x”, the most compact representation (slight exception: zero should be represented as “0x0”). Examples:
41
- * - 0x41 (65 in decimal)
42
- * - 0x400 (1024 in decimal)
43
- * - WRONG: 0x (should always have at least one digit - zero is “0x0”)
44
- * - WRONG: 0x0400 (no leading zeroes allowed)
45
- * - WRONG: ff (must be prefixed 0x)
46
- */
47
- export function numToQuantity(num: number | bigint): QUANTITY {
48
- return "0x" + num.toString(16);
49
- }
50
-
51
- /**
52
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
53
- */
54
- export function quantityToNum(hex: QUANTITY, id = ""): number {
55
- const num = parseInt(hex, 16);
56
- if (Number.isNaN(num) || num < 0) throw Error(`Invalid hex decimal ${id} '${hex}'`);
57
- return num;
58
- }
59
-
60
- /**
61
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
62
- * Typesafe fn to convert hex string to bigint. The BigInt constructor param is any
63
- */
64
- export function quantityToBigint(hex: QUANTITY, id = ""): bigint {
65
- try {
66
- return BigInt(hex);
67
- } catch (e) {
68
- throw Error(`Invalid hex bigint ${id} '${hex}': ${(e as Error).message}`);
69
- }
70
- }
71
-
72
- /**
73
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
74
- */
75
- export function quantityToBytes(hex: QUANTITY): Uint8Array {
76
- const bn = quantityToBigint(hex);
77
- return bigIntToBytes(bn, 32, "le");
78
- }
79
-
80
- /**
81
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
82
- * Compress a 32 ByteVector into a QUANTITY
83
- */
84
- export function bytesToQuantity(bytes: Uint8Array): QUANTITY {
85
- const bn = bytesToBigInt(bytes, "le");
86
- return numToQuantity(bn);
87
- }
88
-
89
- /**
90
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
91
- *
92
- * When encoding UNFORMATTED DATA (byte arrays, account addresses, hashes, bytecode arrays): encode as hex, prefix with
93
- * “0x”, two hex digits per byte. Examples:
94
- *
95
- * - 0x41 (size 1, “A”)
96
- * - 0x004200 (size 3, “\0B\0”)
97
- * - 0x (size 0, “”)
98
- * - WRONG: 0xf0f0f (must be even number of digits)
99
- * - WRONG: 004200 (must be prefixed 0x)
100
- */
101
- export function bytesToData(bytes: Uint8Array): DATA {
102
- return toHex(bytes);
103
- }
104
-
105
- /**
106
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
107
- */
108
- export function dataToBytes(hex: DATA, fixedLength: number | null): Uint8Array {
109
- try {
110
- const bytes = fromHex(hex);
111
- if (fixedLength != null && bytes.length !== fixedLength) {
112
- throw Error(`Wrong data length ${bytes.length} expected ${fixedLength}`);
113
- }
114
- return bytes;
115
- } catch (e) {
116
- (e as Error).message = `Invalid hex string: ${(e as Error).message}`;
117
- throw e;
118
- }
119
- }
120
-
121
- /**
122
- * Convert DATA into a preallocated buffer
123
- * fromHexInto will throw if buffer's length is not the same as the decoded hex length
124
- */
125
- export function dataIntoBytes(hex: DATA, buffer: Uint8Array): Uint8Array {
126
- fromHexInto(hex, buffer);
127
- return buffer;
128
- }
129
-
130
- /**
131
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
132
- */
133
- export function dataToRootHex(hex: DATA, id = ""): RootHex {
134
- if (!rootHexRegex.test(hex)) throw Error(`Invalid hex root ${id} '${hex}'`);
135
- return hex;
136
- }
@@ -1,75 +0,0 @@
1
- import {phase0} from "@lodestar/types";
2
- import {sleep} from "@lodestar/utils";
3
- import {BatchDepositEvents, Eth1Block, IEth1Provider, IEth1StreamParams} from "./interface.js";
4
- import {parseEth1Block} from "./provider/eth1Provider.js";
5
- import {groupDepositEventsByBlock} from "./utils/groupDepositEventsByBlock.js";
6
- import {optimizeNextBlockDiffForGenesis} from "./utils/optimizeNextBlockDiffForGenesis.js";
7
-
8
- /**
9
- * Phase 1 of genesis building.
10
- * Not enough validators, only stream deposits
11
- * @param signal Abort stream returning after a while loop cycle. Aborts internal sleep
12
- */
13
- export async function* getDepositsStream(
14
- fromBlock: number,
15
- provider: IEth1Provider,
16
- params: IEth1StreamParams,
17
- signal?: AbortSignal
18
- ): AsyncGenerator<BatchDepositEvents> {
19
- fromBlock = Math.max(fromBlock, provider.deployBlock);
20
-
21
- while (true) {
22
- const remoteFollowBlock = await getRemoteFollowBlock(provider, params);
23
- const toBlock = Math.min(remoteFollowBlock, fromBlock + params.maxBlocksPerPoll);
24
- const logs = await provider.getDepositEvents(fromBlock, toBlock);
25
- for (const batchedDeposits of groupDepositEventsByBlock(logs)) {
26
- yield batchedDeposits;
27
- }
28
-
29
- fromBlock = toBlock;
30
-
31
- // If reached head, sleep for an eth1 block. Throws if signal is aborted
32
- await sleep(toBlock >= remoteFollowBlock ? params.SECONDS_PER_ETH1_BLOCK * 1000 : 10, signal);
33
- }
34
- }
35
-
36
- /**
37
- * Phase 2 of genesis building.
38
- * There are enough validators, stream deposits and blocks
39
- * @param signal Abort stream returning after a while loop cycle. Aborts internal sleep
40
- */
41
- export async function* getDepositsAndBlockStreamForGenesis(
42
- fromBlock: number,
43
- provider: IEth1Provider,
44
- params: IEth1StreamParams,
45
- signal?: AbortSignal
46
- ): AsyncGenerator<[phase0.DepositEvent[], Eth1Block]> {
47
- fromBlock = Math.max(fromBlock, provider.deployBlock);
48
- fromBlock = Math.min(fromBlock, await getRemoteFollowBlock(provider, params));
49
- let toBlock = fromBlock; // First, fetch only the first block
50
-
51
- while (true) {
52
- const [logs, blockRaw] = await Promise.all([
53
- provider.getDepositEvents(fromBlock, toBlock),
54
- provider.getBlockByNumber(toBlock),
55
- ]);
56
-
57
- if (!blockRaw) throw Error(`No block found for number ${toBlock}`);
58
- const block = parseEth1Block(blockRaw);
59
-
60
- yield [logs, block];
61
-
62
- const remoteFollowBlock = await getRemoteFollowBlock(provider, params);
63
- const nextBlockDiff = optimizeNextBlockDiffForGenesis(block, params);
64
- fromBlock = toBlock;
65
- toBlock = Math.min(remoteFollowBlock, fromBlock + Math.min(nextBlockDiff, params.maxBlocksPerPoll));
66
-
67
- // If reached head, sleep for an eth1 block. Throws if signal is aborted
68
- await sleep(toBlock >= remoteFollowBlock ? params.SECONDS_PER_ETH1_BLOCK * 1000 : 10, signal);
69
- }
70
- }
71
-
72
- async function getRemoteFollowBlock(provider: IEth1Provider, params: IEth1StreamParams): Promise<number> {
73
- const remoteHighestBlock = await provider.getBlockNumber();
74
- return Math.max(remoteHighestBlock - params.ETH1_FOLLOW_DISTANCE, 0);
75
- }
@@ -1,37 +0,0 @@
1
- import {Interface} from "@ethersproject/abi";
2
- import {phase0, ssz} from "@lodestar/types";
3
- import {fromHex} from "@lodestar/utils";
4
-
5
- const depositEventFragment =
6
- "event DepositEvent(bytes pubkey, bytes withdrawal_credentials, bytes amount, bytes signature, bytes index)";
7
-
8
- const depositContractInterface = new Interface([depositEventFragment]);
9
-
10
- /**
11
- * Precomputed topics of DepositEvent logs
12
- */
13
- export const depositEventTopics = [depositContractInterface.getEventTopic("DepositEvent")];
14
-
15
- /**
16
- * Parse DepositEvent log
17
- */
18
- export function parseDepositLog(log: {blockNumber: number; data: string; topics: string[]}): phase0.DepositEvent {
19
- const event = depositContractInterface.parseLog(log);
20
- const values = event.args;
21
- if (values === undefined) throw Error(`DepositEvent at ${log.blockNumber} has no values`);
22
- return {
23
- blockNumber: log.blockNumber,
24
- index: parseHexNumLittleEndian(values.index),
25
- depositData: {
26
- pubkey: fromHex(values.pubkey),
27
- withdrawalCredentials: fromHex(values.withdrawal_credentials),
28
- amount: parseHexNumLittleEndian(values.amount),
29
- signature: fromHex(values.signature),
30
- },
31
- };
32
- }
33
-
34
- function parseHexNumLittleEndian(hex: string): number {
35
- // Can't use parseInt() because amount is a hex string in little endian
36
- return ssz.UintNum64.deserialize(fromHex(hex));
37
- }
@@ -1,70 +0,0 @@
1
- import {Tree, toGindex} from "@chainsafe/persistent-merkle-tree";
2
- import {FilterOptions} from "@lodestar/db";
3
- import {CachedBeaconStateAllForks, getEth1DepositCount} from "@lodestar/state-transition";
4
- import {phase0, ssz} from "@lodestar/types";
5
- import {toRootHex} from "@lodestar/utils";
6
- import {DepositTree} from "../../db/repositories/depositDataRoot.js";
7
- import {Eth1Error, Eth1ErrorCode} from "../errors.js";
8
-
9
- export type DepositGetter<T> = (indexRange: FilterOptions<number>, eth1Data: phase0.Eth1Data) => Promise<T[]>;
10
-
11
- export async function getDeposits<T>(
12
- // eth1_deposit_index represents the next deposit index to be added
13
- state: CachedBeaconStateAllForks,
14
- eth1Data: phase0.Eth1Data,
15
- depositsGetter: DepositGetter<T>
16
- ): Promise<T[]> {
17
- const depositIndex = state.eth1DepositIndex;
18
- const depositCount = eth1Data.depositCount;
19
-
20
- if (depositIndex > depositCount) {
21
- throw new Eth1Error({code: Eth1ErrorCode.DEPOSIT_INDEX_TOO_HIGH, depositIndex, depositCount});
22
- }
23
-
24
- const depositsLen = getEth1DepositCount(state, eth1Data);
25
-
26
- if (depositsLen === 0) {
27
- return []; // If depositsLen === 0, we can return early since no deposit with be returned from depositsGetter
28
- }
29
-
30
- const indexRange = {gte: depositIndex, lt: depositIndex + depositsLen};
31
- const deposits = await depositsGetter(indexRange, eth1Data);
32
-
33
- if (deposits.length < depositsLen) {
34
- throw new Eth1Error({code: Eth1ErrorCode.NOT_ENOUGH_DEPOSITS, len: deposits.length, expectedLen: depositsLen});
35
- }
36
-
37
- if (deposits.length > depositsLen) {
38
- throw new Eth1Error({code: Eth1ErrorCode.TOO_MANY_DEPOSITS, len: deposits.length, expectedLen: depositsLen});
39
- }
40
-
41
- return deposits;
42
- }
43
-
44
- export function getDepositsWithProofs(
45
- depositEvents: phase0.DepositEvent[],
46
- depositRootTree: DepositTree,
47
- eth1Data: phase0.Eth1Data
48
- ): phase0.Deposit[] {
49
- // Get tree at this particular depositCount to compute correct proofs
50
- const viewAtDepositCount = depositRootTree.sliceTo(eth1Data.depositCount - 1);
51
-
52
- const depositRoot = viewAtDepositCount.hashTreeRoot();
53
-
54
- if (!ssz.Root.equals(depositRoot, eth1Data.depositRoot)) {
55
- throw new Eth1Error({
56
- code: Eth1ErrorCode.WRONG_DEPOSIT_ROOT,
57
- root: toRootHex(depositRoot),
58
- expectedRoot: toRootHex(eth1Data.depositRoot),
59
- });
60
- }
61
-
62
- // Already commited for .hashTreeRoot()
63
- const treeAtDepositCount = new Tree(viewAtDepositCount.node);
64
- const depositTreeDepth = viewAtDepositCount.type.depth;
65
-
66
- return depositEvents.map((log) => ({
67
- proof: treeAtDepositCount.getSingleProof(toGindex(depositTreeDepth, BigInt(log.index))),
68
- data: log.depositData,
69
- }));
70
- }
@@ -1,100 +0,0 @@
1
- import {Root, phase0} from "@lodestar/types";
2
- import {DepositTree} from "../../db/repositories/depositDataRoot.js";
3
- import {binarySearchLte} from "../../util/binarySearch.js";
4
- import {Eth1Error, Eth1ErrorCode} from "../errors.js";
5
- import {Eth1Block} from "../interface.js";
6
-
7
- type BlockNumber = number;
8
-
9
- /**
10
- * Appends partial eth1 data (depositRoot, depositCount) in a sequence of blocks
11
- * eth1 data deposit is inferred from sparse eth1 data obtained from the deposit logs
12
- */
13
- export async function getEth1DataForBlocks(
14
- blocks: Eth1Block[],
15
- depositDescendingStream: AsyncIterable<phase0.DepositEvent>,
16
- depositRootTree: DepositTree,
17
- lastProcessedDepositBlockNumber: BlockNumber | null
18
- ): Promise<(phase0.Eth1Data & Eth1Block)[]> {
19
- // Exclude blocks for which there is no valid eth1 data deposit
20
- if (lastProcessedDepositBlockNumber !== null) {
21
- blocks = blocks.filter((block) => block.blockNumber <= lastProcessedDepositBlockNumber);
22
- }
23
-
24
- // A valid block can be constructed using previous `state.eth1Data`, don't throw
25
- if (blocks.length === 0) {
26
- return [];
27
- }
28
-
29
- // Collect the latest deposit of each blockNumber in a block number range
30
- const fromBlock = blocks[0].blockNumber;
31
- const toBlock = blocks.at(-1)?.blockNumber as number;
32
- const depositsByBlockNumber = await getDepositsByBlockNumber(fromBlock, toBlock, depositDescendingStream);
33
- if (depositsByBlockNumber.length === 0) {
34
- throw new Eth1Error({code: Eth1ErrorCode.NO_DEPOSITS_FOR_BLOCK_RANGE, fromBlock, toBlock});
35
- }
36
-
37
- // Precompute a map of depositCount => depositRoot (from depositRootTree)
38
- const depositCounts = depositsByBlockNumber.map((event) => event.index + 1);
39
- const depositRootByDepositCount = getDepositRootByDepositCount(depositCounts, depositRootTree);
40
-
41
- const eth1Datas: (phase0.Eth1Data & Eth1Block)[] = [];
42
- for (const block of blocks) {
43
- const deposit = binarySearchLte(depositsByBlockNumber, block.blockNumber, (event) => event.blockNumber);
44
- const depositCount = deposit.index + 1;
45
- const depositRoot = depositRootByDepositCount.get(depositCount);
46
- if (depositRoot === undefined) {
47
- throw new Eth1Error({code: Eth1ErrorCode.NO_DEPOSIT_ROOT, depositCount});
48
- }
49
- eth1Datas.push({...block, depositCount, depositRoot});
50
- }
51
- return eth1Datas;
52
- }
53
-
54
- /**
55
- * Collect depositCount by blockNumber from a stream matching a block number range
56
- * For a given blockNumber it's depositCount is equal to the index + 1 of the
57
- * closest deposit event whose deposit.blockNumber <= blockNumber
58
- * @returns array ascending by blockNumber
59
- */
60
- export async function getDepositsByBlockNumber(
61
- fromBlock: BlockNumber,
62
- toBlock: BlockNumber,
63
- depositEventDescendingStream: AsyncIterable<phase0.DepositEvent>
64
- ): Promise<phase0.DepositEvent[]> {
65
- const depositCountMap = new Map<BlockNumber, phase0.DepositEvent>();
66
- // Take blocks until the block under the range lower bound (included)
67
- for await (const deposit of depositEventDescendingStream) {
68
- if (deposit.blockNumber <= toBlock && !depositCountMap.has(deposit.blockNumber)) {
69
- depositCountMap.set(deposit.blockNumber, deposit);
70
- }
71
- if (deposit.blockNumber < fromBlock) {
72
- break;
73
- }
74
- }
75
-
76
- return Array.from(depositCountMap.values()).sort((a, b) => a.blockNumber - b.blockNumber);
77
- }
78
-
79
- /**
80
- * Precompute a map of depositCount => depositRoot from a depositRootTree filled beforehand
81
- */
82
- export function getDepositRootByDepositCount(depositCounts: number[], depositRootTree: DepositTree): Map<number, Root> {
83
- // Unique + sort numerically in descending order
84
- depositCounts = [...new Set(depositCounts)].sort((a, b) => b - a);
85
-
86
- if (depositCounts.length > 0) {
87
- const maxIndex = depositCounts[0] - 1;
88
- const treeLength = depositRootTree.length - 1;
89
- if (maxIndex > treeLength) {
90
- throw new Eth1Error({code: Eth1ErrorCode.NOT_ENOUGH_DEPOSIT_ROOTS, index: maxIndex, treeLength});
91
- }
92
- }
93
-
94
- const depositRootByDepositCount = new Map<number, Root>();
95
- for (const depositCount of depositCounts) {
96
- depositRootTree = depositRootTree.sliceTo(depositCount - 1);
97
- depositRootByDepositCount.set(depositCount, depositRootTree.hashTreeRoot());
98
- }
99
- return depositRootByDepositCount;
100
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * Assert that an array of deposits are consecutive and ascending
3
- */
4
- export function assertConsecutiveDeposits(depositEvents: {index: number}[]): void {
5
- for (let i = 0; i < depositEvents.length - 1; i++) {
6
- const indexLeft = depositEvents[i].index;
7
- const indexRight = depositEvents[i + 1].index;
8
- if (indexLeft !== indexRight - 1) {
9
- throw Error(`Non consecutive deposits. deposit[${i}] = ${indexLeft}, deposit[${i + 1}] ${indexRight}`);
10
- }
11
- }
12
- }
@@ -1,142 +0,0 @@
1
- import {ChainForkConfig} from "@lodestar/config";
2
- import {EPOCHS_PER_ETH1_VOTING_PERIOD, SLOTS_PER_EPOCH, isForkPostElectra} from "@lodestar/params";
3
- import {BeaconStateAllForks, BeaconStateElectra, computeTimeAtSlot} from "@lodestar/state-transition";
4
- import {RootHex, phase0} from "@lodestar/types";
5
- import {toRootHex} from "@lodestar/utils";
6
-
7
- export type Eth1DataGetter = ({
8
- timestampRange,
9
- }: {
10
- timestampRange: {gte: number; lte: number};
11
- }) => Promise<phase0.Eth1Data[]>;
12
-
13
- export async function getEth1VotesToConsider(
14
- config: ChainForkConfig,
15
- state: BeaconStateAllForks,
16
- eth1DataGetter: Eth1DataGetter
17
- ): Promise<phase0.Eth1Data[]> {
18
- const fork = config.getForkName(state.slot);
19
- if (isForkPostElectra(fork)) {
20
- const {eth1DepositIndex, depositRequestsStartIndex} = state as BeaconStateElectra;
21
- if (eth1DepositIndex === Number(depositRequestsStartIndex)) {
22
- return state.eth1DataVotes.getAllReadonly();
23
- }
24
- }
25
-
26
- const periodStart = votingPeriodStartTime(config, state);
27
- const {SECONDS_PER_ETH1_BLOCK, ETH1_FOLLOW_DISTANCE} = config;
28
-
29
- // Modified version of the spec function to fetch the required range directly from the DB
30
- return (
31
- await eth1DataGetter({
32
- timestampRange: {
33
- // Spec v0.12.2
34
- // is_candidate_block =
35
- // block.timestamp + SECONDS_PER_ETH1_BLOCK * ETH1_FOLLOW_DISTANCE <= period_start &&
36
- // block.timestamp + SECONDS_PER_ETH1_BLOCK * ETH1_FOLLOW_DISTANCE * 2 >= period_start
37
- lte: periodStart - SECONDS_PER_ETH1_BLOCK * ETH1_FOLLOW_DISTANCE,
38
- gte: periodStart - SECONDS_PER_ETH1_BLOCK * ETH1_FOLLOW_DISTANCE * 2,
39
- },
40
- })
41
- ).filter((eth1Data) => eth1Data.depositCount >= state.eth1Data.depositCount);
42
- }
43
-
44
- export function pickEth1Vote(state: BeaconStateAllForks, votesToConsider: phase0.Eth1Data[]): phase0.Eth1Data {
45
- const votesToConsiderKeys = new Set<string>();
46
- for (const eth1Data of votesToConsider) {
47
- votesToConsiderKeys.add(getEth1DataKey(eth1Data));
48
- }
49
-
50
- const eth1DataHashToEth1Data = new Map<RootHex, phase0.Eth1Data>();
51
- const eth1DataVoteCountByRoot = new Map<RootHex, number>();
52
- const eth1DataVotesOrder: RootHex[] = [];
53
-
54
- // BeaconStateAllForks is always represented as a tree with a hashing cache.
55
- // To check equality its cheaper to use hashTreeRoot as keys.
56
- // However `votesToConsider` is an array of values since those are read from DB.
57
- // TODO: Optimize cache of known votes, to prevent re-hashing stored values.
58
- // Note: for low validator counts it's not very important, since this runs once per proposal
59
- const eth1DataVotes = state.eth1DataVotes.getAllReadonly();
60
- for (const eth1DataVote of eth1DataVotes) {
61
- const rootHex = getEth1DataKey(eth1DataVote);
62
-
63
- if (votesToConsiderKeys.has(rootHex)) {
64
- const prevVoteCount = eth1DataVoteCountByRoot.get(rootHex);
65
- eth1DataVoteCountByRoot.set(rootHex, 1 + (prevVoteCount ?? 0));
66
-
67
- // Cache eth1DataVote to root Map only once per root
68
- if (prevVoteCount === undefined) {
69
- eth1DataHashToEth1Data.set(rootHex, eth1DataVote);
70
- eth1DataVotesOrder.push(rootHex);
71
- }
72
- }
73
- }
74
-
75
- const eth1DataRootsMaxVotes = getKeysWithMaxValue(eth1DataVoteCountByRoot);
76
-
77
- // No votes, vote for the last valid vote
78
- if (eth1DataRootsMaxVotes.length === 0) {
79
- return votesToConsider.at(-1) ?? state.eth1Data;
80
- }
81
-
82
- // If there's a single winning vote with a majority vote that one
83
- if (eth1DataRootsMaxVotes.length === 1) {
84
- return eth1DataHashToEth1Data.get(eth1DataRootsMaxVotes[0]) ?? state.eth1Data;
85
- }
86
-
87
- // If there are multiple winning votes, vote for the latest one
88
- const latestMostVotedRoot =
89
- eth1DataVotesOrder[Math.max(...eth1DataRootsMaxVotes.map((root) => eth1DataVotesOrder.indexOf(root)))];
90
- return eth1DataHashToEth1Data.get(latestMostVotedRoot) ?? state.eth1Data;
91
- }
92
-
93
- /**
94
- * Returns the array of keys with max value. May return 0, 1 or more keys
95
- */
96
- function getKeysWithMaxValue<T>(map: Map<T, number>): T[] {
97
- const entries = Array.from(map.entries());
98
- let keysMax: T[] = [];
99
- let valueMax = -Infinity;
100
-
101
- for (const [key, value] of entries) {
102
- if (value > valueMax) {
103
- keysMax = [key];
104
- valueMax = value;
105
- } else if (value === valueMax) {
106
- keysMax.push(key);
107
- }
108
- }
109
-
110
- return keysMax;
111
- }
112
-
113
- /**
114
- * Key-ed by fastSerializeEth1Data(). votesToConsider is read from DB as struct and always has a length of 2048.
115
- * `state.eth1DataVotes` has a length between 0 and ETH1_FOLLOW_DISTANCE with an equal probability of each value.
116
- * So to get the average faster time to key both votesToConsider and state.eth1DataVotes it's better to use
117
- * fastSerializeEth1Data(). However, a long term solution is to cache valid votes in memory and prevent having
118
- * to recompute their key on every proposal.
119
- *
120
- * With `fastSerializeEth1Data()`: avg time 20 ms/op
121
- * ✓ pickEth1Vote - no votes 233.0587 ops/s 4.290764 ms/op - 121 runs 1.02 s
122
- * ✓ pickEth1Vote - max votes 29.21546 ops/s 34.22845 ms/op - 25 runs 1.38 s
123
- *
124
- * With `toHexString(ssz.phase0.Eth1Data.hashTreeRoot(eth1Data))`: avg time 23 ms/op
125
- * ✓ pickEth1Vote - no votes 46.12341 ops/s 21.68096 ms/op - 133 runs 3.40 s
126
- * ✓ pickEth1Vote - max votes 37.89912 ops/s 26.38583 ms/op - 29 runs 1.27 s
127
- */
128
- function getEth1DataKey(eth1Data: phase0.Eth1Data): string {
129
- return fastSerializeEth1Data(eth1Data);
130
- }
131
-
132
- /**
133
- * Serialize eth1Data types to a unique string ID. It is only used for comparison.
134
- */
135
- export function fastSerializeEth1Data(eth1Data: phase0.Eth1Data): string {
136
- return toRootHex(eth1Data.blockHash) + eth1Data.depositCount.toString(16) + toRootHex(eth1Data.depositRoot);
137
- }
138
-
139
- export function votingPeriodStartTime(config: ChainForkConfig, state: BeaconStateAllForks): number {
140
- const eth1VotingPeriodStartSlot = state.slot - (state.slot % (EPOCHS_PER_ETH1_VOTING_PERIOD * SLOTS_PER_EPOCH));
141
- return computeTimeAtSlot(config, eth1VotingPeriodStartSlot, state.genesisTime);
142
- }
@@ -1,19 +0,0 @@
1
- import {phase0} from "@lodestar/types";
2
- import {BatchDepositEvents} from "../interface.js";
3
-
4
- /**
5
- * Return deposit events of blocks grouped/sorted by block number and deposit index
6
- * Blocks without events are omitted
7
- * @param depositEvents range deposit events
8
- */
9
- export function groupDepositEventsByBlock(depositEvents: phase0.DepositEvent[]): BatchDepositEvents[] {
10
- depositEvents.sort((event1, event2) => event1.index - event2.index);
11
- const depositsByBlockMap = new Map<number, phase0.DepositEvent[]>();
12
- for (const deposit of depositEvents) {
13
- depositsByBlockMap.set(deposit.blockNumber, [...(depositsByBlockMap.get(deposit.blockNumber) || []), deposit]);
14
- }
15
- return Array.from(depositsByBlockMap.entries()).map(([blockNumber, depositEvents]) => ({
16
- blockNumber,
17
- depositEvents,
18
- }));
19
- }
@@ -1,18 +0,0 @@
1
- import {ChainConfig} from "@lodestar/config";
2
-
3
- /**
4
- * Utility for fetching genesis min genesis time block
5
- * Returns an approximation of the next block diff to fetch to progressively
6
- * get closer to the block that satisfies min genesis time condition
7
- */
8
- export function optimizeNextBlockDiffForGenesis(
9
- lastFetchedBlock: {timestamp: number},
10
- params: Pick<ChainConfig, "MIN_GENESIS_TIME" | "GENESIS_DELAY" | "SECONDS_PER_ETH1_BLOCK">
11
- ): number {
12
- const timeToGenesis = params.MIN_GENESIS_TIME - params.GENESIS_DELAY - lastFetchedBlock.timestamp;
13
- const numBlocksToGenesis = Math.floor(timeToGenesis / params.SECONDS_PER_ETH1_BLOCK);
14
- if (numBlocksToGenesis <= 2) {
15
- return 1;
16
- }
17
- return Math.max(1, Math.floor(numBlocksToGenesis / 2));
18
- }
@@ -1,39 +0,0 @@
1
- import {BLSPubkey, Epoch, bellatrix} from "@lodestar/types";
2
- import {toPubkeyHex} from "@lodestar/utils";
3
-
4
- const REGISTRATION_PRESERVE_EPOCHS = 2;
5
-
6
- export type ValidatorRegistration = {
7
- epoch: Epoch;
8
- /** Preferred gas limit of validator */
9
- gasLimit: number;
10
- };
11
-
12
- export class ValidatorRegistrationCache {
13
- /**
14
- * Map to track registrations by validator pubkey which is used here instead of
15
- * validator index as `bellatrix.ValidatorRegistrationV1` does not contain the index
16
- * and builder flow in general prefers to use pubkey over index.
17
- */
18
- private readonly registrationByValidatorPubkey: Map<string, ValidatorRegistration>;
19
- constructor() {
20
- this.registrationByValidatorPubkey = new Map();
21
- }
22
-
23
- add(epoch: Epoch, {pubkey, gasLimit}: bellatrix.ValidatorRegistrationV1): void {
24
- this.registrationByValidatorPubkey.set(toPubkeyHex(pubkey), {epoch, gasLimit});
25
- }
26
-
27
- prune(epoch: Epoch): void {
28
- for (const [pubkeyHex, registration] of this.registrationByValidatorPubkey.entries()) {
29
- // We only retain an registrations for REGISTRATION_PRESERVE_EPOCHS epochs
30
- if (registration.epoch + REGISTRATION_PRESERVE_EPOCHS < epoch) {
31
- this.registrationByValidatorPubkey.delete(pubkeyHex);
32
- }
33
- }
34
- }
35
-
36
- get(pubkey: BLSPubkey): ValidatorRegistration | undefined {
37
- return this.registrationByValidatorPubkey.get(toPubkeyHex(pubkey));
38
- }
39
- }