@lodestar/beacon-node 1.35.0-dev.39be8f0882 → 1.35.0-dev.3d8b04e1a0

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 (1105) 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.map +1 -1
  17. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  18. package/lib/chain/GetBlobsTracker.js +3 -3
  19. package/lib/chain/GetBlobsTracker.js.map +1 -1
  20. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -1
  21. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  22. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  23. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  24. package/lib/chain/archiveStore/index.d.ts +1 -1
  25. package/lib/chain/archiveStore/index.js +1 -1
  26. package/lib/chain/blocks/blockInput/index.d.ts +1 -1
  27. package/lib/chain/blocks/blockInput/index.js +1 -1
  28. package/lib/chain/blocks/importBlock.js +3 -4
  29. package/lib/chain/blocks/importBlock.js.map +1 -1
  30. package/lib/chain/blocks/index.d.ts +1 -1
  31. package/lib/chain/blocks/index.js.map +1 -1
  32. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  33. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  34. package/lib/chain/bls/multithread/index.js +0 -1
  35. package/lib/chain/bls/multithread/index.js.map +1 -1
  36. package/lib/chain/chain.d.ts +3 -3
  37. package/lib/chain/chain.js +5 -4
  38. package/lib/chain/chain.js.map +1 -1
  39. package/lib/chain/emitter.d.ts +2 -2
  40. package/lib/chain/emitter.js.map +1 -1
  41. package/lib/chain/errors/index.d.ts +2 -2
  42. package/lib/chain/errors/index.js +2 -2
  43. package/lib/chain/errors/index.js.map +1 -1
  44. package/lib/chain/forkChoice/index.js.map +1 -1
  45. package/lib/chain/index.d.ts +2 -2
  46. package/lib/chain/index.js +2 -2
  47. package/lib/chain/index.js.map +1 -1
  48. package/lib/chain/interface.d.ts +2 -2
  49. package/lib/chain/interface.js.map +1 -1
  50. package/lib/chain/lightClient/index.js.map +1 -1
  51. package/lib/chain/lightClient/proofs.js.map +1 -1
  52. package/lib/chain/opPools/aggregatedAttestationPool.js +1 -1
  53. package/lib/chain/opPools/attestationPool.d.ts +3 -2
  54. package/lib/chain/opPools/attestationPool.js +6 -4
  55. package/lib/chain/opPools/attestationPool.js.map +1 -1
  56. package/lib/chain/opPools/index.d.ts +1 -1
  57. package/lib/chain/opPools/index.js +1 -1
  58. package/lib/chain/opPools/index.js.map +1 -1
  59. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts +2 -3
  60. package/lib/chain/opPools/syncCommitteeMessagePool.js +5 -6
  61. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  62. package/lib/chain/opPools/types.d.ts +1 -1
  63. package/lib/chain/opPools/types.js +1 -1
  64. package/lib/chain/opPools/types.js.map +1 -1
  65. package/lib/chain/options.js +1 -1
  66. package/lib/chain/options.js.map +1 -1
  67. package/lib/chain/prepareNextSlot.d.ts +3 -3
  68. package/lib/chain/prepareNextSlot.js +8 -8
  69. package/lib/chain/prepareNextSlot.js.map +1 -1
  70. package/lib/chain/regen/index.d.ts +1 -1
  71. package/lib/chain/regen/index.js +1 -1
  72. package/lib/chain/regen/index.js.map +1 -1
  73. package/lib/chain/stateCache/datastore/index.d.ts +1 -1
  74. package/lib/chain/stateCache/datastore/index.js +1 -1
  75. package/lib/chain/stateCache/datastore/index.js.map +1 -1
  76. package/lib/chain/stateCache/index.d.ts +1 -1
  77. package/lib/chain/stateCache/index.js +1 -1
  78. package/lib/chain/stateCache/index.js.map +1 -1
  79. package/lib/chain/stateCache/persistentCheckpointsCache.js +10 -10
  80. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  81. package/lib/chain/validation/blobSidecar.js.map +1 -1
  82. package/lib/chain/validation/dataColumnSidecar.js +1 -1
  83. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  84. package/lib/chain/validation/index.d.ts +1 -1
  85. package/lib/chain/validation/index.js +1 -1
  86. package/lib/chain/validation/index.js.map +1 -1
  87. package/lib/chain/validation/lightClientFinalityUpdate.js +3 -4
  88. package/lib/chain/validation/lightClientFinalityUpdate.js.map +1 -1
  89. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts +4 -6
  90. package/lib/chain/validation/lightClientOptimisticUpdate.js +11 -11
  91. package/lib/chain/validation/lightClientOptimisticUpdate.js.map +1 -1
  92. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -1
  93. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  94. package/lib/chain/validatorMonitor.d.ts +3 -1
  95. package/lib/chain/validatorMonitor.js +14 -20
  96. package/lib/chain/validatorMonitor.js.map +1 -1
  97. package/lib/db/buckets.d.ts +4 -4
  98. package/lib/db/buckets.js +4 -4
  99. package/lib/db/buckets.js.map +1 -1
  100. package/lib/db/index.d.ts +1 -1
  101. package/lib/db/index.js.map +1 -1
  102. package/lib/db/repositories/blobSidecars.js +1 -1
  103. package/lib/db/repositories/blobSidecars.js.map +1 -1
  104. package/lib/db/repositories/blobSidecarsArchive.js +1 -1
  105. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  106. package/lib/db/repositories/blockArchive.js +3 -2
  107. package/lib/db/repositories/blockArchive.js.map +1 -1
  108. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  109. package/lib/db/repositories/dataColumnSidecar.js +2 -2
  110. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  111. package/lib/db/repositories/dataColumnSidecarArchive.js +2 -2
  112. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  113. package/lib/db/repositories/index.d.ts +10 -10
  114. package/lib/db/repositories/index.js +9 -9
  115. package/lib/db/repositories/index.js.map +1 -1
  116. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  117. package/lib/eth1/eth1DepositsCache.js.map +1 -1
  118. package/lib/eth1/provider/eth1Provider.d.ts +2 -1
  119. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  120. package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
  121. package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
  122. package/lib/eth1/provider/jwt.js.map +1 -1
  123. package/lib/eth1/utils/deposits.js.map +1 -1
  124. package/lib/execution/builder/index.js.map +1 -1
  125. package/lib/execution/engine/interface.js.map +1 -1
  126. package/lib/execution/engine/types.js.map +1 -1
  127. package/lib/execution/engine/utils.js +2 -1
  128. package/lib/execution/engine/utils.js.map +1 -1
  129. package/lib/execution/index.d.ts +2 -2
  130. package/lib/execution/index.js +2 -2
  131. package/lib/execution/index.js.map +1 -1
  132. package/lib/index.d.ts +6 -6
  133. package/lib/index.js +5 -5
  134. package/lib/index.js.map +1 -1
  135. package/lib/metrics/index.d.ts +1 -1
  136. package/lib/metrics/index.js +1 -1
  137. package/lib/metrics/index.js.map +1 -1
  138. package/lib/metrics/metrics/lodestar.d.ts +2 -2
  139. package/lib/metrics/metrics/lodestar.js +3 -3
  140. package/lib/metrics/metrics/lodestar.js.map +1 -1
  141. package/lib/metrics/metrics.d.ts +1 -1
  142. package/lib/metrics/metrics.js.map +1 -1
  143. package/lib/metrics/nodeJsMetrics.js +1 -1
  144. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  145. package/lib/metrics/server/http.d.ts +1 -1
  146. package/lib/metrics/utils/avgMinMax.d.ts +1 -1
  147. package/lib/metrics/utils/gauge.d.ts +1 -1
  148. package/lib/metrics/utils/gauge.js.map +1 -1
  149. package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
  150. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  151. package/lib/monitoring/service.js.map +1 -1
  152. package/lib/monitoring/system.js.map +1 -1
  153. package/lib/network/core/networkCore.d.ts +1 -1
  154. package/lib/network/core/networkCore.js +1 -1
  155. package/lib/network/core/networkCore.js.map +1 -1
  156. package/lib/network/core/networkCoreWorker.js +1 -1
  157. package/lib/network/core/networkCoreWorker.js.map +1 -1
  158. package/lib/network/core/networkCoreWorkerHandler.d.ts +1 -1
  159. package/lib/network/core/networkCoreWorkerHandler.js +4 -10
  160. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  161. package/lib/network/discv5/index.d.ts +2 -2
  162. package/lib/network/discv5/index.js +2 -5
  163. package/lib/network/discv5/index.js.map +1 -1
  164. package/lib/network/discv5/worker.js +3 -3
  165. package/lib/network/discv5/worker.js.map +1 -1
  166. package/lib/network/gossip/encoding.d.ts +1 -1
  167. package/lib/network/gossip/encoding.js +2 -2
  168. package/lib/network/gossip/encoding.js.map +1 -1
  169. package/lib/network/gossip/gossipsub.d.ts +1 -2
  170. package/lib/network/gossip/gossipsub.js +17 -36
  171. package/lib/network/gossip/gossipsub.js.map +1 -1
  172. package/lib/network/gossip/index.d.ts +2 -2
  173. package/lib/network/gossip/index.js +2 -2
  174. package/lib/network/gossip/index.js.map +1 -1
  175. package/lib/network/gossip/interface.d.ts +2 -2
  176. package/lib/network/gossip/metrics.d.ts +7 -15
  177. package/lib/network/gossip/metrics.js +6 -16
  178. package/lib/network/gossip/metrics.js.map +1 -1
  179. package/lib/network/gossip/topic.d.ts +60 -80
  180. package/lib/network/gossip/topic.js.map +1 -1
  181. package/lib/network/index.d.ts +3 -3
  182. package/lib/network/index.js +3 -3
  183. package/lib/network/index.js.map +1 -1
  184. package/lib/network/interface.d.ts +1 -1
  185. package/lib/network/libp2p/index.js +3 -11
  186. package/lib/network/libp2p/index.js.map +1 -1
  187. package/lib/network/metadata.js +1 -2
  188. package/lib/network/metadata.js.map +1 -1
  189. package/lib/network/network.d.ts +2 -2
  190. package/lib/network/network.js +13 -11
  191. package/lib/network/network.js.map +1 -1
  192. package/lib/network/peers/datastore.d.ts +2 -2
  193. package/lib/network/peers/datastore.js +2 -2
  194. package/lib/network/peers/datastore.js.map +1 -1
  195. package/lib/network/peers/discover.js +2 -1
  196. package/lib/network/peers/discover.js.map +1 -1
  197. package/lib/network/peers/peerManager.js.map +1 -1
  198. package/lib/network/peers/score/index.d.ts +1 -1
  199. package/lib/network/peers/score/index.js +1 -1
  200. package/lib/network/peers/score/index.js.map +1 -1
  201. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  202. package/lib/network/processor/gossipHandlers.js +1 -1
  203. package/lib/network/processor/index.d.ts +1 -1
  204. package/lib/network/processor/index.js +5 -3
  205. package/lib/network/processor/index.js.map +1 -1
  206. package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
  207. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  208. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  209. package/lib/network/reqresp/index.d.ts +1 -1
  210. package/lib/network/reqresp/index.js +1 -1
  211. package/lib/network/reqresp/index.js.map +1 -1
  212. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  213. package/lib/network/subnets/interface.js +1 -1
  214. package/lib/network/subnets/interface.js.map +1 -1
  215. package/lib/network/subnets/util.js +2 -1
  216. package/lib/network/subnets/util.js.map +1 -1
  217. package/lib/node/nodejs.d.ts +1 -1
  218. package/lib/node/nodejs.js.map +1 -1
  219. package/lib/node/notifier.js +2 -1
  220. package/lib/node/notifier.js.map +1 -1
  221. package/lib/node/options.js.map +1 -1
  222. package/lib/node/utils/interop/state.js +2 -1
  223. package/lib/node/utils/interop/state.js.map +1 -1
  224. package/lib/sync/backfill/backfill.d.ts +1 -1
  225. package/lib/sync/backfill/backfill.js +1 -1
  226. package/lib/sync/backfill/backfill.js.map +1 -1
  227. package/lib/sync/range/batch.d.ts +2 -2
  228. package/lib/sync/range/batch.js +1 -1
  229. package/lib/sync/range/batch.js.map +1 -1
  230. package/lib/sync/range/chain.d.ts +1 -1
  231. package/lib/sync/range/chain.js.map +1 -1
  232. package/lib/sync/range/range.d.ts +1 -1
  233. package/lib/sync/range/range.js.map +1 -1
  234. package/lib/sync/sync.d.ts +2 -1
  235. package/lib/sync/sync.js.map +1 -1
  236. package/lib/sync/types.d.ts +1 -0
  237. package/lib/sync/types.js.map +1 -1
  238. package/lib/sync/unknownBlock.d.ts +1 -0
  239. package/lib/sync/unknownBlock.js +20 -18
  240. package/lib/sync/unknownBlock.js.map +1 -1
  241. package/lib/sync/utils/downloadByRange.d.ts +1 -1
  242. package/lib/sync/utils/downloadByRoot.d.ts +2 -4
  243. package/lib/sync/utils/downloadByRoot.js +9 -36
  244. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  245. package/lib/util/blobs.js +3 -5
  246. package/lib/util/blobs.js.map +1 -1
  247. package/lib/util/clock.d.ts +1 -6
  248. package/lib/util/clock.js +0 -3
  249. package/lib/util/clock.js.map +1 -1
  250. package/lib/util/dataColumns.d.ts +2 -2
  251. package/lib/util/dataColumns.js +4 -4
  252. package/lib/util/dataColumns.js.map +1 -1
  253. package/lib/util/execution.d.ts +2 -2
  254. package/lib/util/execution.js +8 -25
  255. package/lib/util/execution.js.map +1 -1
  256. package/lib/util/queue/index.d.ts +1 -1
  257. package/lib/util/queue/index.js +1 -1
  258. package/lib/util/queue/index.js.map +1 -1
  259. package/package.json +22 -32
  260. package/lib/api/impl/api.d.ts.map +0 -1
  261. package/lib/api/impl/beacon/blocks/index.d.ts.map +0 -1
  262. package/lib/api/impl/beacon/blocks/utils.d.ts.map +0 -1
  263. package/lib/api/impl/beacon/index.d.ts.map +0 -1
  264. package/lib/api/impl/beacon/pool/index.d.ts.map +0 -1
  265. package/lib/api/impl/beacon/rewards/index.d.ts.map +0 -1
  266. package/lib/api/impl/beacon/state/index.d.ts.map +0 -1
  267. package/lib/api/impl/beacon/state/utils.d.ts.map +0 -1
  268. package/lib/api/impl/config/constants.d.ts.map +0 -1
  269. package/lib/api/impl/config/index.d.ts.map +0 -1
  270. package/lib/api/impl/debug/index.d.ts.map +0 -1
  271. package/lib/api/impl/errors.d.ts.map +0 -1
  272. package/lib/api/impl/events/index.d.ts.map +0 -1
  273. package/lib/api/impl/index.d.ts.map +0 -1
  274. package/lib/api/impl/lightclient/index.d.ts.map +0 -1
  275. package/lib/api/impl/lodestar/index.d.ts.map +0 -1
  276. package/lib/api/impl/node/index.d.ts.map +0 -1
  277. package/lib/api/impl/node/utils.d.ts.map +0 -1
  278. package/lib/api/impl/proof/index.d.ts.map +0 -1
  279. package/lib/api/impl/types.d.ts.map +0 -1
  280. package/lib/api/impl/utils.d.ts.map +0 -1
  281. package/lib/api/impl/validator/index.d.ts.map +0 -1
  282. package/lib/api/impl/validator/utils.d.ts.map +0 -1
  283. package/lib/api/index.d.ts.map +0 -1
  284. package/lib/api/options.d.ts.map +0 -1
  285. package/lib/api/rest/activeSockets.d.ts.map +0 -1
  286. package/lib/api/rest/base.d.ts.map +0 -1
  287. package/lib/api/rest/index.d.ts.map +0 -1
  288. package/lib/api/rest/swaggerUI.d.ts.map +0 -1
  289. package/lib/bun-wrappers/prometheus-gc-stats.d.ts.map +0 -1
  290. package/lib/chain/ColumnReconstructionTracker.d.ts.map +0 -1
  291. package/lib/chain/GetBlobsTracker.d.ts.map +0 -1
  292. package/lib/chain/archiveStore/archiveStore.d.ts.map +0 -1
  293. package/lib/chain/archiveStore/constants.d.ts.map +0 -1
  294. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +0 -1
  295. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +0 -1
  296. package/lib/chain/archiveStore/historicalState/metrics.d.ts.map +0 -1
  297. package/lib/chain/archiveStore/historicalState/types.d.ts.map +0 -1
  298. package/lib/chain/archiveStore/historicalState/worker.d.ts.map +0 -1
  299. package/lib/chain/archiveStore/index.d.ts.map +0 -1
  300. package/lib/chain/archiveStore/interface.d.ts.map +0 -1
  301. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +0 -1
  302. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +0 -1
  303. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +0 -1
  304. package/lib/chain/archiveStore/utils/updateBackfillRange.d.ts.map +0 -1
  305. package/lib/chain/balancesCache.d.ts.map +0 -1
  306. package/lib/chain/beaconProposerCache.d.ts.map +0 -1
  307. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +0 -1
  308. package/lib/chain/blocks/blockInput/errors.d.ts.map +0 -1
  309. package/lib/chain/blocks/blockInput/index.d.ts.map +0 -1
  310. package/lib/chain/blocks/blockInput/types.d.ts.map +0 -1
  311. package/lib/chain/blocks/blockInput/utils.d.ts.map +0 -1
  312. package/lib/chain/blocks/importBlock.d.ts.map +0 -1
  313. package/lib/chain/blocks/index.d.ts.map +0 -1
  314. package/lib/chain/blocks/types.d.ts.map +0 -1
  315. package/lib/chain/blocks/utils/blowfishBanner.d.ts.map +0 -1
  316. package/lib/chain/blocks/utils/chainSegment.d.ts.map +0 -1
  317. package/lib/chain/blocks/utils/checkpoint.d.ts.map +0 -1
  318. package/lib/chain/blocks/utils/giraffeBanner.d.ts.map +0 -1
  319. package/lib/chain/blocks/utils/ownBanner.d.ts.map +0 -1
  320. package/lib/chain/blocks/utils/pandaMergeTransitionBanner.d.ts.map +0 -1
  321. package/lib/chain/blocks/utils/zebraBanner.d.ts.map +0 -1
  322. package/lib/chain/blocks/verifyBlock.d.ts.map +0 -1
  323. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +0 -1
  324. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +0 -1
  325. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +0 -1
  326. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +0 -1
  327. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +0 -1
  328. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +0 -1
  329. package/lib/chain/bls/index.d.ts.map +0 -1
  330. package/lib/chain/bls/interface.d.ts.map +0 -1
  331. package/lib/chain/bls/maybeBatch.d.ts.map +0 -1
  332. package/lib/chain/bls/multithread/index.d.ts.map +0 -1
  333. package/lib/chain/bls/multithread/jobItem.d.ts.map +0 -1
  334. package/lib/chain/bls/multithread/poolSize.d.ts.map +0 -1
  335. package/lib/chain/bls/multithread/types.d.ts.map +0 -1
  336. package/lib/chain/bls/multithread/utils.d.ts.map +0 -1
  337. package/lib/chain/bls/multithread/worker.d.ts.map +0 -1
  338. package/lib/chain/bls/singleThread.d.ts.map +0 -1
  339. package/lib/chain/bls/utils.d.ts.map +0 -1
  340. package/lib/chain/chain.d.ts.map +0 -1
  341. package/lib/chain/emitter.d.ts.map +0 -1
  342. package/lib/chain/errors/attestationError.d.ts.map +0 -1
  343. package/lib/chain/errors/attesterSlashingError.d.ts.map +0 -1
  344. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  345. package/lib/chain/errors/blockError.d.ts.map +0 -1
  346. package/lib/chain/errors/blsToExecutionChangeError.d.ts.map +0 -1
  347. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +0 -1
  348. package/lib/chain/errors/gossipValidation.d.ts.map +0 -1
  349. package/lib/chain/errors/index.d.ts.map +0 -1
  350. package/lib/chain/errors/lightClientError.d.ts.map +0 -1
  351. package/lib/chain/errors/proposerSlashingError.d.ts.map +0 -1
  352. package/lib/chain/errors/syncCommitteeError.d.ts.map +0 -1
  353. package/lib/chain/errors/voluntaryExitError.d.ts.map +0 -1
  354. package/lib/chain/forkChoice/index.d.ts.map +0 -1
  355. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  356. package/lib/chain/genesis/interface.d.ts.map +0 -1
  357. package/lib/chain/index.d.ts.map +0 -1
  358. package/lib/chain/initState.d.ts.map +0 -1
  359. package/lib/chain/interface.d.ts.map +0 -1
  360. package/lib/chain/lightClient/index.d.ts.map +0 -1
  361. package/lib/chain/lightClient/proofs.d.ts.map +0 -1
  362. package/lib/chain/lightClient/types.d.ts.map +0 -1
  363. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +0 -1
  364. package/lib/chain/opPools/attestationPool.d.ts.map +0 -1
  365. package/lib/chain/opPools/index.d.ts.map +0 -1
  366. package/lib/chain/opPools/opPool.d.ts.map +0 -1
  367. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +0 -1
  368. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +0 -1
  369. package/lib/chain/opPools/types.d.ts.map +0 -1
  370. package/lib/chain/opPools/utils.d.ts.map +0 -1
  371. package/lib/chain/options.d.ts.map +0 -1
  372. package/lib/chain/prepareNextSlot.d.ts.map +0 -1
  373. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +0 -1
  374. package/lib/chain/produceBlock/index.d.ts.map +0 -1
  375. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +0 -1
  376. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts.map +0 -1
  377. package/lib/chain/regen/errors.d.ts.map +0 -1
  378. package/lib/chain/regen/index.d.ts.map +0 -1
  379. package/lib/chain/regen/interface.d.ts.map +0 -1
  380. package/lib/chain/regen/queued.d.ts.map +0 -1
  381. package/lib/chain/regen/regen.d.ts.map +0 -1
  382. package/lib/chain/reprocess.d.ts.map +0 -1
  383. package/lib/chain/rewards/attestationsRewards.d.ts.map +0 -1
  384. package/lib/chain/rewards/blockRewards.d.ts.map +0 -1
  385. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +0 -1
  386. package/lib/chain/seenCache/index.d.ts.map +0 -1
  387. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +0 -1
  388. package/lib/chain/seenCache/seenAttestationData.d.ts.map +0 -1
  389. package/lib/chain/seenCache/seenAttesters.d.ts.map +0 -1
  390. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +0 -1
  391. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +0 -1
  392. package/lib/chain/seenCache/seenCommittee.d.ts.map +0 -1
  393. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +0 -1
  394. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +0 -1
  395. package/lib/chain/serializeState.d.ts.map +0 -1
  396. package/lib/chain/shufflingCache.d.ts.map +0 -1
  397. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  398. package/lib/chain/stateCache/datastore/db.d.ts.map +0 -1
  399. package/lib/chain/stateCache/datastore/file.d.ts.map +0 -1
  400. package/lib/chain/stateCache/datastore/index.d.ts.map +0 -1
  401. package/lib/chain/stateCache/datastore/types.d.ts.map +0 -1
  402. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +0 -1
  403. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  404. package/lib/chain/stateCache/index.d.ts.map +0 -1
  405. package/lib/chain/stateCache/mapMetrics.d.ts.map +0 -1
  406. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +0 -1
  407. package/lib/chain/stateCache/types.d.ts.map +0 -1
  408. package/lib/chain/validation/aggregateAndProof.d.ts.map +0 -1
  409. package/lib/chain/validation/attestation.d.ts.map +0 -1
  410. package/lib/chain/validation/attesterSlashing.d.ts.map +0 -1
  411. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  412. package/lib/chain/validation/block.d.ts.map +0 -1
  413. package/lib/chain/validation/blsToExecutionChange.d.ts.map +0 -1
  414. package/lib/chain/validation/dataColumnSidecar.d.ts.map +0 -1
  415. package/lib/chain/validation/index.d.ts.map +0 -1
  416. package/lib/chain/validation/lightClientFinalityUpdate.d.ts.map +0 -1
  417. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts.map +0 -1
  418. package/lib/chain/validation/proposerSlashing.d.ts.map +0 -1
  419. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +0 -1
  420. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +0 -1
  421. package/lib/chain/validation/signatureSets/index.d.ts.map +0 -1
  422. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +0 -1
  423. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +0 -1
  424. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +0 -1
  425. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +0 -1
  426. package/lib/chain/validation/syncCommittee.d.ts.map +0 -1
  427. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +0 -1
  428. package/lib/chain/validation/voluntaryExit.d.ts.map +0 -1
  429. package/lib/chain/validatorMonitor.d.ts.map +0 -1
  430. package/lib/constants/constants.d.ts.map +0 -1
  431. package/lib/constants/index.d.ts.map +0 -1
  432. package/lib/constants/network.d.ts.map +0 -1
  433. package/lib/db/beacon.d.ts.map +0 -1
  434. package/lib/db/buckets.d.ts.map +0 -1
  435. package/lib/db/index.d.ts.map +0 -1
  436. package/lib/db/interface.d.ts.map +0 -1
  437. package/lib/db/options.d.ts.map +0 -1
  438. package/lib/db/repositories/attesterSlashing.d.ts.map +0 -1
  439. package/lib/db/repositories/backfilledRanges.d.ts.map +0 -1
  440. package/lib/db/repositories/blobSidecars.d.ts.map +0 -1
  441. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +0 -1
  442. package/lib/db/repositories/block.d.ts.map +0 -1
  443. package/lib/db/repositories/blockArchive.d.ts.map +0 -1
  444. package/lib/db/repositories/blockArchiveIndex.d.ts.map +0 -1
  445. package/lib/db/repositories/blsToExecutionChange.d.ts.map +0 -1
  446. package/lib/db/repositories/checkpointState.d.ts.map +0 -1
  447. package/lib/db/repositories/dataColumnSidecar.d.ts.map +0 -1
  448. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +0 -1
  449. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  450. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  451. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  452. package/lib/db/repositories/index.d.ts.map +0 -1
  453. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +0 -1
  454. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +0 -1
  455. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +0 -1
  456. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +0 -1
  457. package/lib/db/repositories/proposerSlashing.d.ts.map +0 -1
  458. package/lib/db/repositories/stateArchive.d.ts.map +0 -1
  459. package/lib/db/repositories/stateArchiveIndex.d.ts.map +0 -1
  460. package/lib/db/repositories/voluntaryExit.d.ts.map +0 -1
  461. package/lib/db/single/index.d.ts.map +0 -1
  462. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  463. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  464. package/lib/eth1/errors.d.ts.map +0 -1
  465. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  466. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  467. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  468. package/lib/eth1/eth1MergeBlockTracker.d.ts.map +0 -1
  469. package/lib/eth1/index.d.ts.map +0 -1
  470. package/lib/eth1/interface.d.ts.map +0 -1
  471. package/lib/eth1/options.d.ts.map +0 -1
  472. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  473. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  474. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  475. package/lib/eth1/provider/utils.d.ts.map +0 -1
  476. package/lib/eth1/stream.d.ts.map +0 -1
  477. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  478. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  479. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  480. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  481. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  482. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  483. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  484. package/lib/execution/builder/cache.d.ts.map +0 -1
  485. package/lib/execution/builder/http.d.ts.map +0 -1
  486. package/lib/execution/builder/index.d.ts.map +0 -1
  487. package/lib/execution/builder/interface.d.ts.map +0 -1
  488. package/lib/execution/builder/utils.d.ts.map +0 -1
  489. package/lib/execution/engine/disabled.d.ts.map +0 -1
  490. package/lib/execution/engine/http.d.ts.map +0 -1
  491. package/lib/execution/engine/index.d.ts.map +0 -1
  492. package/lib/execution/engine/interface.d.ts.map +0 -1
  493. package/lib/execution/engine/mock.d.ts.map +0 -1
  494. package/lib/execution/engine/payloadIdCache.d.ts.map +0 -1
  495. package/lib/execution/engine/types.d.ts.map +0 -1
  496. package/lib/execution/engine/utils.d.ts.map +0 -1
  497. package/lib/execution/index.d.ts.map +0 -1
  498. package/lib/index.d.ts.map +0 -1
  499. package/lib/metrics/index.d.ts.map +0 -1
  500. package/lib/metrics/metrics/beacon.d.ts.map +0 -1
  501. package/lib/metrics/metrics/lodestar.d.ts.map +0 -1
  502. package/lib/metrics/metrics.d.ts.map +0 -1
  503. package/lib/metrics/nodeJsMetrics.d.ts.map +0 -1
  504. package/lib/metrics/options.d.ts.map +0 -1
  505. package/lib/metrics/server/http.d.ts.map +0 -1
  506. package/lib/metrics/server/index.d.ts.map +0 -1
  507. package/lib/metrics/utils/avgMinMax.d.ts.map +0 -1
  508. package/lib/metrics/utils/gauge.d.ts.map +0 -1
  509. package/lib/metrics/utils/registryMetricCreator.d.ts.map +0 -1
  510. package/lib/monitoring/clientStats.d.ts.map +0 -1
  511. package/lib/monitoring/index.d.ts.map +0 -1
  512. package/lib/monitoring/options.d.ts.map +0 -1
  513. package/lib/monitoring/properties.d.ts.map +0 -1
  514. package/lib/monitoring/service.d.ts.map +0 -1
  515. package/lib/monitoring/system.d.ts.map +0 -1
  516. package/lib/monitoring/types.d.ts.map +0 -1
  517. package/lib/network/core/events.d.ts.map +0 -1
  518. package/lib/network/core/index.d.ts.map +0 -1
  519. package/lib/network/core/metrics.d.ts.map +0 -1
  520. package/lib/network/core/networkCore.d.ts.map +0 -1
  521. package/lib/network/core/networkCoreWorker.d.ts.map +0 -1
  522. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +0 -1
  523. package/lib/network/core/types.d.ts.map +0 -1
  524. package/lib/network/discv5/index.d.ts.map +0 -1
  525. package/lib/network/discv5/types.d.ts.map +0 -1
  526. package/lib/network/discv5/utils.d.ts.map +0 -1
  527. package/lib/network/discv5/worker.d.ts.map +0 -1
  528. package/lib/network/events.d.ts.map +0 -1
  529. package/lib/network/forks.d.ts.map +0 -1
  530. package/lib/network/gossip/constants.d.ts.map +0 -1
  531. package/lib/network/gossip/encoding.d.ts.map +0 -1
  532. package/lib/network/gossip/errors.d.ts.map +0 -1
  533. package/lib/network/gossip/gossipsub.d.ts.map +0 -1
  534. package/lib/network/gossip/index.d.ts.map +0 -1
  535. package/lib/network/gossip/interface.d.ts.map +0 -1
  536. package/lib/network/gossip/metrics.d.ts.map +0 -1
  537. package/lib/network/gossip/scoringParameters.d.ts.map +0 -1
  538. package/lib/network/gossip/topic.d.ts.map +0 -1
  539. package/lib/network/index.d.ts.map +0 -1
  540. package/lib/network/interface.d.ts.map +0 -1
  541. package/lib/network/libp2p/error.d.ts.map +0 -1
  542. package/lib/network/libp2p/index.d.ts.map +0 -1
  543. package/lib/network/metadata.d.ts.map +0 -1
  544. package/lib/network/network.d.ts.map +0 -1
  545. package/lib/network/networkConfig.d.ts.map +0 -1
  546. package/lib/network/options.d.ts.map +0 -1
  547. package/lib/network/peers/client.d.ts.map +0 -1
  548. package/lib/network/peers/datastore.d.ts.map +0 -1
  549. package/lib/network/peers/discover.d.ts.map +0 -1
  550. package/lib/network/peers/index.d.ts.map +0 -1
  551. package/lib/network/peers/peerManager.d.ts.map +0 -1
  552. package/lib/network/peers/peersData.d.ts.map +0 -1
  553. package/lib/network/peers/score/constants.d.ts.map +0 -1
  554. package/lib/network/peers/score/index.d.ts.map +0 -1
  555. package/lib/network/peers/score/interface.d.ts.map +0 -1
  556. package/lib/network/peers/score/score.d.ts.map +0 -1
  557. package/lib/network/peers/score/store.d.ts.map +0 -1
  558. package/lib/network/peers/score/utils.d.ts.map +0 -1
  559. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +0 -1
  560. package/lib/network/peers/utils/enrSubnetsDeserialize.d.ts.map +0 -1
  561. package/lib/network/peers/utils/getConnectedPeerIds.d.ts.map +0 -1
  562. package/lib/network/peers/utils/index.d.ts.map +0 -1
  563. package/lib/network/peers/utils/prioritizePeers.d.ts.map +0 -1
  564. package/lib/network/peers/utils/subnetMap.d.ts.map +0 -1
  565. package/lib/network/processor/aggregatorTracker.d.ts.map +0 -1
  566. package/lib/network/processor/extractSlotRootFns.d.ts.map +0 -1
  567. package/lib/network/processor/gossipHandlers.d.ts.map +0 -1
  568. package/lib/network/processor/gossipQueues/index.d.ts.map +0 -1
  569. package/lib/network/processor/gossipQueues/indexed.d.ts.map +0 -1
  570. package/lib/network/processor/gossipQueues/linear.d.ts.map +0 -1
  571. package/lib/network/processor/gossipQueues/types.d.ts.map +0 -1
  572. package/lib/network/processor/gossipValidatorFn.d.ts.map +0 -1
  573. package/lib/network/processor/index.d.ts.map +0 -1
  574. package/lib/network/processor/types.d.ts.map +0 -1
  575. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +0 -1
  576. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +0 -1
  577. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +0 -1
  578. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  579. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  580. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +0 -1
  581. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +0 -1
  582. package/lib/network/reqresp/handlers/index.d.ts.map +0 -1
  583. package/lib/network/reqresp/handlers/lightClientBootstrap.d.ts.map +0 -1
  584. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.d.ts.map +0 -1
  585. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.d.ts.map +0 -1
  586. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.d.ts.map +0 -1
  587. package/lib/network/reqresp/index.d.ts.map +0 -1
  588. package/lib/network/reqresp/interface.d.ts.map +0 -1
  589. package/lib/network/reqresp/protocols.d.ts.map +0 -1
  590. package/lib/network/reqresp/rateLimit.d.ts.map +0 -1
  591. package/lib/network/reqresp/score.d.ts.map +0 -1
  592. package/lib/network/reqresp/types.d.ts.map +0 -1
  593. package/lib/network/reqresp/utils/collect.d.ts.map +0 -1
  594. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts.map +0 -1
  595. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +0 -1
  596. package/lib/network/statusCache.d.ts.map +0 -1
  597. package/lib/network/subnets/attnetsService.d.ts.map +0 -1
  598. package/lib/network/subnets/index.d.ts.map +0 -1
  599. package/lib/network/subnets/interface.d.ts.map +0 -1
  600. package/lib/network/subnets/syncnetsService.d.ts.map +0 -1
  601. package/lib/network/subnets/util.d.ts.map +0 -1
  602. package/lib/network/util.d.ts.map +0 -1
  603. package/lib/node/index.d.ts.map +0 -1
  604. package/lib/node/nodejs.d.ts.map +0 -1
  605. package/lib/node/notifier.d.ts.map +0 -1
  606. package/lib/node/options.d.ts.map +0 -1
  607. package/lib/node/utils/interop/deposits.d.ts.map +0 -1
  608. package/lib/node/utils/interop/state.d.ts.map +0 -1
  609. package/lib/node/utils/lightclient.d.ts.map +0 -1
  610. package/lib/node/utils/state.d.ts.map +0 -1
  611. package/lib/sync/backfill/backfill.d.ts.map +0 -1
  612. package/lib/sync/backfill/errors.d.ts.map +0 -1
  613. package/lib/sync/backfill/index.d.ts.map +0 -1
  614. package/lib/sync/backfill/verify.d.ts.map +0 -1
  615. package/lib/sync/constants.d.ts.map +0 -1
  616. package/lib/sync/index.d.ts.map +0 -1
  617. package/lib/sync/interface.d.ts.map +0 -1
  618. package/lib/sync/options.d.ts.map +0 -1
  619. package/lib/sync/range/batch.d.ts.map +0 -1
  620. package/lib/sync/range/chain.d.ts.map +0 -1
  621. package/lib/sync/range/range.d.ts.map +0 -1
  622. package/lib/sync/range/utils/batches.d.ts.map +0 -1
  623. package/lib/sync/range/utils/chainTarget.d.ts.map +0 -1
  624. package/lib/sync/range/utils/hashBlocks.d.ts.map +0 -1
  625. package/lib/sync/range/utils/index.d.ts.map +0 -1
  626. package/lib/sync/range/utils/peerBalancer.d.ts.map +0 -1
  627. package/lib/sync/range/utils/updateChains.d.ts.map +0 -1
  628. package/lib/sync/sync.d.ts.map +0 -1
  629. package/lib/sync/types.d.ts.map +0 -1
  630. package/lib/sync/unknownBlock.d.ts.map +0 -1
  631. package/lib/sync/utils/downloadByRange.d.ts.map +0 -1
  632. package/lib/sync/utils/downloadByRoot.d.ts.map +0 -1
  633. package/lib/sync/utils/pendingBlocksTree.d.ts.map +0 -1
  634. package/lib/sync/utils/remoteSyncType.d.ts.map +0 -1
  635. package/lib/util/address.d.ts.map +0 -1
  636. package/lib/util/array.d.ts.map +0 -1
  637. package/lib/util/asyncIterableToEvents.d.ts.map +0 -1
  638. package/lib/util/binarySearch.d.ts.map +0 -1
  639. package/lib/util/bitArray.d.ts.map +0 -1
  640. package/lib/util/blobs.d.ts.map +0 -1
  641. package/lib/util/bufferPool.d.ts.map +0 -1
  642. package/lib/util/bytes.d.ts.map +0 -1
  643. package/lib/util/chunkify.d.ts.map +0 -1
  644. package/lib/util/clock.d.ts.map +0 -1
  645. package/lib/util/dataColumns.d.ts.map +0 -1
  646. package/lib/util/dependentRoot.d.ts.map +0 -1
  647. package/lib/util/enum.d.ts.map +0 -1
  648. package/lib/util/error.d.ts.map +0 -1
  649. package/lib/util/eventLoop.d.ts.map +0 -1
  650. package/lib/util/execution.d.ts.map +0 -1
  651. package/lib/util/file.d.ts.map +0 -1
  652. package/lib/util/forkChoice.d.ts.map +0 -1
  653. package/lib/util/forkName.d.ts.map +0 -1
  654. package/lib/util/graffiti.d.ts.map +0 -1
  655. package/lib/util/hex.d.ts.map +0 -1
  656. package/lib/util/index.d.ts.map +0 -1
  657. package/lib/util/ip.d.ts.map +0 -1
  658. package/lib/util/itTrigger.d.ts.map +0 -1
  659. package/lib/util/kzg.d.ts.map +0 -1
  660. package/lib/util/map.d.ts.map +0 -1
  661. package/lib/util/metadata.d.ts.map +0 -1
  662. package/lib/util/multifork.d.ts.map +0 -1
  663. package/lib/util/numpy.d.ts.map +0 -1
  664. package/lib/util/peerId.d.ts.map +0 -1
  665. package/lib/util/profile.d.ts.map +0 -1
  666. package/lib/util/promises.d.ts.map +0 -1
  667. package/lib/util/queue/errors.d.ts.map +0 -1
  668. package/lib/util/queue/fnQueue.d.ts.map +0 -1
  669. package/lib/util/queue/index.d.ts.map +0 -1
  670. package/lib/util/queue/itemQueue.d.ts.map +0 -1
  671. package/lib/util/queue/options.d.ts.map +0 -1
  672. package/lib/util/serializedCache.d.ts.map +0 -1
  673. package/lib/util/set.d.ts.map +0 -1
  674. package/lib/util/shuffle.d.ts.map +0 -1
  675. package/lib/util/sortBy.d.ts.map +0 -1
  676. package/lib/util/sszBytes.d.ts.map +0 -1
  677. package/lib/util/strictEvents.d.ts.map +0 -1
  678. package/lib/util/time.d.ts.map +0 -1
  679. package/lib/util/timeSeries.d.ts.map +0 -1
  680. package/lib/util/types.d.ts.map +0 -1
  681. package/lib/util/workerEvents.d.ts.map +0 -1
  682. package/lib/util/wrapError.d.ts.map +0 -1
  683. package/src/api/impl/api.ts +0 -26
  684. package/src/api/impl/beacon/blocks/index.ts +0 -744
  685. package/src/api/impl/beacon/blocks/utils.ts +0 -75
  686. package/src/api/impl/beacon/index.ts +0 -35
  687. package/src/api/impl/beacon/pool/index.ts +0 -314
  688. package/src/api/impl/beacon/rewards/index.ts +0 -30
  689. package/src/api/impl/beacon/state/index.ts +0 -406
  690. package/src/api/impl/beacon/state/utils.ts +0 -189
  691. package/src/api/impl/config/constants.ts +0 -127
  692. package/src/api/impl/config/index.ts +0 -59
  693. package/src/api/impl/debug/index.ts +0 -131
  694. package/src/api/impl/errors.ts +0 -50
  695. package/src/api/impl/events/index.ts +0 -33
  696. package/src/api/impl/index.ts +0 -6
  697. package/src/api/impl/lightclient/index.ts +0 -64
  698. package/src/api/impl/lodestar/index.ts +0 -257
  699. package/src/api/impl/node/index.ts +0 -88
  700. package/src/api/impl/node/utils.ts +0 -51
  701. package/src/api/impl/proof/index.ts +0 -60
  702. package/src/api/impl/types.ts +0 -17
  703. package/src/api/impl/utils.ts +0 -25
  704. package/src/api/impl/validator/index.ts +0 -1540
  705. package/src/api/impl/validator/utils.ts +0 -85
  706. package/src/api/index.ts +0 -2
  707. package/src/api/options.ts +0 -16
  708. package/src/api/rest/activeSockets.ts +0 -109
  709. package/src/api/rest/base.ts +0 -216
  710. package/src/api/rest/index.ts +0 -63
  711. package/src/api/rest/swaggerUI.ts +0 -80
  712. package/src/bun-wrappers/prometheus-gc-stats.ts +0 -7
  713. package/src/chain/ColumnReconstructionTracker.ts +0 -90
  714. package/src/chain/GetBlobsTracker.ts +0 -115
  715. package/src/chain/archiveStore/archiveStore.ts +0 -222
  716. package/src/chain/archiveStore/constants.ts +0 -5
  717. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +0 -116
  718. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +0 -68
  719. package/src/chain/archiveStore/historicalState/metrics.ts +0 -214
  720. package/src/chain/archiveStore/historicalState/types.ts +0 -41
  721. package/src/chain/archiveStore/historicalState/worker.ts +0 -77
  722. package/src/chain/archiveStore/index.ts +0 -3
  723. package/src/chain/archiveStore/interface.ts +0 -75
  724. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +0 -138
  725. package/src/chain/archiveStore/utils/archiveBlocks.ts +0 -437
  726. package/src/chain/archiveStore/utils/pruneHistory.ts +0 -56
  727. package/src/chain/archiveStore/utils/updateBackfillRange.ts +0 -50
  728. package/src/chain/balancesCache.ts +0 -52
  729. package/src/chain/beaconProposerCache.ts +0 -43
  730. package/src/chain/blocks/blockInput/blockInput.ts +0 -851
  731. package/src/chain/blocks/blockInput/errors.ts +0 -48
  732. package/src/chain/blocks/blockInput/index.ts +0 -4
  733. package/src/chain/blocks/blockInput/types.ts +0 -145
  734. package/src/chain/blocks/blockInput/utils.ts +0 -21
  735. package/src/chain/blocks/importBlock.ts +0 -597
  736. package/src/chain/blocks/index.ts +0 -179
  737. package/src/chain/blocks/types.ts +0 -101
  738. package/src/chain/blocks/utils/blowfishBanner.ts +0 -28
  739. package/src/chain/blocks/utils/chainSegment.ts +0 -29
  740. package/src/chain/blocks/utils/checkpoint.ts +0 -25
  741. package/src/chain/blocks/utils/giraffeBanner.ts +0 -30
  742. package/src/chain/blocks/utils/ownBanner.ts +0 -20
  743. package/src/chain/blocks/utils/pandaMergeTransitionBanner.ts +0 -43
  744. package/src/chain/blocks/utils/zebraBanner.ts +0 -45
  745. package/src/chain/blocks/verifyBlock.ts +0 -242
  746. package/src/chain/blocks/verifyBlocksDataAvailability.ts +0 -34
  747. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +0 -438
  748. package/src/chain/blocks/verifyBlocksSanityChecks.ts +0 -129
  749. package/src/chain/blocks/verifyBlocksSignatures.ts +0 -105
  750. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +0 -114
  751. package/src/chain/blocks/writeBlockInputToDb.ts +0 -128
  752. package/src/chain/bls/index.ts +0 -4
  753. package/src/chain/bls/interface.ts +0 -68
  754. package/src/chain/bls/maybeBatch.ts +0 -45
  755. package/src/chain/bls/multithread/index.ts +0 -582
  756. package/src/chain/bls/multithread/jobItem.ts +0 -119
  757. package/src/chain/bls/multithread/poolSize.ts +0 -16
  758. package/src/chain/bls/multithread/types.ts +0 -38
  759. package/src/chain/bls/multithread/utils.ts +0 -19
  760. package/src/chain/bls/multithread/worker.ts +0 -114
  761. package/src/chain/bls/singleThread.ts +0 -87
  762. package/src/chain/bls/utils.ts +0 -30
  763. package/src/chain/chain.ts +0 -1354
  764. package/src/chain/emitter.ts +0 -113
  765. package/src/chain/errors/attestationError.ts +0 -194
  766. package/src/chain/errors/attesterSlashingError.ts +0 -11
  767. package/src/chain/errors/blobSidecarError.ts +0 -60
  768. package/src/chain/errors/blockError.ts +0 -166
  769. package/src/chain/errors/blsToExecutionChangeError.ts +0 -13
  770. package/src/chain/errors/dataColumnSidecarError.ts +0 -80
  771. package/src/chain/errors/gossipValidation.ts +0 -20
  772. package/src/chain/errors/index.ts +0 -10
  773. package/src/chain/errors/lightClientError.ts +0 -30
  774. package/src/chain/errors/proposerSlashingError.ts +0 -11
  775. package/src/chain/errors/syncCommitteeError.ts +0 -36
  776. package/src/chain/errors/voluntaryExitError.ts +0 -13
  777. package/src/chain/forkChoice/index.ts +0 -112
  778. package/src/chain/genesis/genesis.ts +0 -190
  779. package/src/chain/genesis/interface.ts +0 -14
  780. package/src/chain/index.ts +0 -6
  781. package/src/chain/initState.ts +0 -221
  782. package/src/chain/interface.ts +0 -280
  783. package/src/chain/lightClient/index.ts +0 -764
  784. package/src/chain/lightClient/proofs.ts +0 -85
  785. package/src/chain/lightClient/types.ts +0 -33
  786. package/src/chain/opPools/aggregatedAttestationPool.ts +0 -1063
  787. package/src/chain/opPools/attestationPool.ts +0 -282
  788. package/src/chain/opPools/index.ts +0 -5
  789. package/src/chain/opPools/opPool.ts +0 -462
  790. package/src/chain/opPools/syncCommitteeMessagePool.ts +0 -169
  791. package/src/chain/opPools/syncContributionAndProofPool.ts +0 -240
  792. package/src/chain/opPools/types.ts +0 -35
  793. package/src/chain/opPools/utils.ts +0 -65
  794. package/src/chain/options.ts +0 -138
  795. package/src/chain/prepareNextSlot.ts +0 -277
  796. package/src/chain/produceBlock/computeNewStateRoot.ts +0 -55
  797. package/src/chain/produceBlock/index.ts +0 -2
  798. package/src/chain/produceBlock/produceBlockBody.ts +0 -797
  799. package/src/chain/produceBlock/validateBlobsAndKzgCommitments.ts +0 -54
  800. package/src/chain/regen/errors.ts +0 -30
  801. package/src/chain/regen/index.ts +0 -4
  802. package/src/chain/regen/interface.ts +0 -93
  803. package/src/chain/regen/queued.ts +0 -317
  804. package/src/chain/regen/regen.ts +0 -424
  805. package/src/chain/reprocess.ts +0 -161
  806. package/src/chain/rewards/attestationsRewards.ts +0 -196
  807. package/src/chain/rewards/blockRewards.ts +0 -150
  808. package/src/chain/rewards/syncCommitteeRewards.ts +0 -58
  809. package/src/chain/seenCache/index.ts +0 -5
  810. package/src/chain/seenCache/seenAggregateAndProof.ts +0 -120
  811. package/src/chain/seenCache/seenAttestationData.ts +0 -145
  812. package/src/chain/seenCache/seenAttesters.ts +0 -58
  813. package/src/chain/seenCache/seenBlockAttesters.ts +0 -18
  814. package/src/chain/seenCache/seenBlockProposers.ts +0 -48
  815. package/src/chain/seenCache/seenCommittee.ts +0 -43
  816. package/src/chain/seenCache/seenCommitteeContribution.ts +0 -104
  817. package/src/chain/seenCache/seenGossipBlockInput.ts +0 -373
  818. package/src/chain/serializeState.ts +0 -32
  819. package/src/chain/shufflingCache.ts +0 -238
  820. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  821. package/src/chain/stateCache/datastore/db.ts +0 -36
  822. package/src/chain/stateCache/datastore/file.ts +0 -53
  823. package/src/chain/stateCache/datastore/index.ts +0 -2
  824. package/src/chain/stateCache/datastore/types.ts +0 -13
  825. package/src/chain/stateCache/fifoBlockStateCache.ts +0 -208
  826. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  827. package/src/chain/stateCache/index.ts +0 -3
  828. package/src/chain/stateCache/mapMetrics.ts +0 -52
  829. package/src/chain/stateCache/persistentCheckpointsCache.ts +0 -837
  830. package/src/chain/stateCache/types.ts +0 -86
  831. package/src/chain/validation/aggregateAndProof.ts +0 -258
  832. package/src/chain/validation/attestation.ts +0 -885
  833. package/src/chain/validation/attesterSlashing.ts +0 -61
  834. package/src/chain/validation/blobSidecar.ts +0 -301
  835. package/src/chain/validation/block.ts +0 -188
  836. package/src/chain/validation/blsToExecutionChange.ts +0 -61
  837. package/src/chain/validation/dataColumnSidecar.ts +0 -381
  838. package/src/chain/validation/index.ts +0 -9
  839. package/src/chain/validation/lightClientFinalityUpdate.ts +0 -46
  840. package/src/chain/validation/lightClientOptimisticUpdate.ts +0 -68
  841. package/src/chain/validation/proposerSlashing.ts +0 -54
  842. package/src/chain/validation/signatureSets/aggregateAndProof.ts +0 -38
  843. package/src/chain/validation/signatureSets/contributionAndProof.ts +0 -27
  844. package/src/chain/validation/signatureSets/index.ts +0 -6
  845. package/src/chain/validation/signatureSets/selectionProof.ts +0 -27
  846. package/src/chain/validation/signatureSets/syncCommittee.ts +0 -22
  847. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +0 -18
  848. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +0 -27
  849. package/src/chain/validation/syncCommittee.ts +0 -165
  850. package/src/chain/validation/syncCommitteeContributionAndProof.ts +0 -122
  851. package/src/chain/validation/voluntaryExit.ts +0 -58
  852. package/src/chain/validatorMonitor.ts +0 -1309
  853. package/src/constants/constants.ts +0 -15
  854. package/src/constants/index.ts +0 -2
  855. package/src/constants/network.ts +0 -52
  856. package/src/db/beacon.ts +0 -113
  857. package/src/db/buckets.ts +0 -80
  858. package/src/db/index.ts +0 -2
  859. package/src/db/interface.ts +0 -76
  860. package/src/db/options.ts +0 -7
  861. package/src/db/repositories/attesterSlashing.ts +0 -38
  862. package/src/db/repositories/backfilledRanges.ts +0 -29
  863. package/src/db/repositories/blobSidecars.ts +0 -37
  864. package/src/db/repositories/blobSidecarsArchive.ts +0 -28
  865. package/src/db/repositories/block.ts +0 -33
  866. package/src/db/repositories/blockArchive.ts +0 -170
  867. package/src/db/repositories/blockArchiveIndex.ts +0 -45
  868. package/src/db/repositories/blsToExecutionChange.ts +0 -16
  869. package/src/db/repositories/checkpointState.ts +0 -31
  870. package/src/db/repositories/dataColumnSidecar.ts +0 -49
  871. package/src/db/repositories/dataColumnSidecarArchive.ts +0 -56
  872. package/src/db/repositories/depositDataRoot.ts +0 -80
  873. package/src/db/repositories/depositEvent.ts +0 -32
  874. package/src/db/repositories/eth1Data.ts +0 -33
  875. package/src/db/repositories/index.ts +0 -20
  876. package/src/db/repositories/lightclientBestUpdate.ts +0 -41
  877. package/src/db/repositories/lightclientCheckpointHeader.ts +0 -32
  878. package/src/db/repositories/lightclientSyncCommittee.ts +0 -16
  879. package/src/db/repositories/lightclientSyncCommitteeWitness.ts +0 -77
  880. package/src/db/repositories/proposerSlashing.ts +0 -15
  881. package/src/db/repositories/stateArchive.ts +0 -69
  882. package/src/db/repositories/stateArchiveIndex.ts +0 -18
  883. package/src/db/repositories/voluntaryExit.ts +0 -15
  884. package/src/db/single/index.ts +0 -2
  885. package/src/db/single/preGenesisState.ts +0 -37
  886. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  887. package/src/eth1/errors.ts +0 -40
  888. package/src/eth1/eth1DataCache.ts +0 -26
  889. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  890. package/src/eth1/eth1DepositsCache.ts +0 -141
  891. package/src/eth1/eth1MergeBlockTracker.ts +0 -328
  892. package/src/eth1/index.ts +0 -157
  893. package/src/eth1/interface.ts +0 -131
  894. package/src/eth1/options.ts +0 -28
  895. package/src/eth1/provider/eth1Provider.ts +0 -229
  896. package/src/eth1/provider/jsonRpcHttpClient.ts +0 -390
  897. package/src/eth1/provider/jwt.ts +0 -36
  898. package/src/eth1/provider/utils.ts +0 -136
  899. package/src/eth1/stream.ts +0 -75
  900. package/src/eth1/utils/depositContract.ts +0 -37
  901. package/src/eth1/utils/deposits.ts +0 -70
  902. package/src/eth1/utils/eth1Data.ts +0 -100
  903. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  904. package/src/eth1/utils/eth1Vote.ts +0 -142
  905. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  906. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  907. package/src/execution/builder/cache.ts +0 -39
  908. package/src/execution/builder/http.ts +0 -229
  909. package/src/execution/builder/index.ts +0 -27
  910. package/src/execution/builder/interface.ts +0 -49
  911. package/src/execution/builder/utils.ts +0 -19
  912. package/src/execution/engine/disabled.ts +0 -35
  913. package/src/execution/engine/http.ts +0 -644
  914. package/src/execution/engine/index.ts +0 -63
  915. package/src/execution/engine/interface.ts +0 -199
  916. package/src/execution/engine/mock.ts +0 -493
  917. package/src/execution/engine/payloadIdCache.ts +0 -54
  918. package/src/execution/engine/types.ts +0 -640
  919. package/src/execution/engine/utils.ts +0 -136
  920. package/src/execution/index.ts +0 -4
  921. package/src/index.ts +0 -20
  922. package/src/metrics/index.ts +0 -4
  923. package/src/metrics/metrics/beacon.ts +0 -390
  924. package/src/metrics/metrics/lodestar.ts +0 -1870
  925. package/src/metrics/metrics.ts +0 -43
  926. package/src/metrics/nodeJsMetrics.ts +0 -19
  927. package/src/metrics/options.ts +0 -22
  928. package/src/metrics/server/http.ts +0 -114
  929. package/src/metrics/server/index.ts +0 -1
  930. package/src/metrics/utils/avgMinMax.ts +0 -87
  931. package/src/metrics/utils/gauge.ts +0 -22
  932. package/src/metrics/utils/registryMetricCreator.ts +0 -41
  933. package/src/monitoring/clientStats.ts +0 -297
  934. package/src/monitoring/index.ts +0 -2
  935. package/src/monitoring/options.ts +0 -19
  936. package/src/monitoring/properties.ts +0 -152
  937. package/src/monitoring/service.ts +0 -235
  938. package/src/monitoring/system.ts +0 -146
  939. package/src/monitoring/types.ts +0 -21
  940. package/src/network/core/events.ts +0 -59
  941. package/src/network/core/index.ts +0 -3
  942. package/src/network/core/metrics.ts +0 -304
  943. package/src/network/core/networkCore.ts +0 -599
  944. package/src/network/core/networkCoreWorker.ts +0 -176
  945. package/src/network/core/networkCoreWorkerHandler.ts +0 -284
  946. package/src/network/core/types.ts +0 -119
  947. package/src/network/discv5/index.ts +0 -132
  948. package/src/network/discv5/types.ts +0 -74
  949. package/src/network/discv5/utils.ts +0 -50
  950. package/src/network/discv5/worker.ts +0 -137
  951. package/src/network/events.ts +0 -51
  952. package/src/network/forks.ts +0 -94
  953. package/src/network/gossip/constants.ts +0 -15
  954. package/src/network/gossip/encoding.ts +0 -111
  955. package/src/network/gossip/errors.ts +0 -7
  956. package/src/network/gossip/gossipsub.ts +0 -384
  957. package/src/network/gossip/index.ts +0 -4
  958. package/src/network/gossip/interface.ts +0 -215
  959. package/src/network/gossip/metrics.ts +0 -71
  960. package/src/network/gossip/scoringParameters.ts +0 -333
  961. package/src/network/gossip/topic.ts +0 -332
  962. package/src/network/index.ts +0 -8
  963. package/src/network/interface.ts +0 -134
  964. package/src/network/libp2p/error.ts +0 -55
  965. package/src/network/libp2p/index.ts +0 -153
  966. package/src/network/metadata.ts +0 -162
  967. package/src/network/network.ts +0 -767
  968. package/src/network/networkConfig.ts +0 -12
  969. package/src/network/options.ts +0 -70
  970. package/src/network/peers/client.ts +0 -29
  971. package/src/network/peers/datastore.ts +0 -188
  972. package/src/network/peers/discover.ts +0 -647
  973. package/src/network/peers/index.ts +0 -2
  974. package/src/network/peers/peerManager.ts +0 -899
  975. package/src/network/peers/peersData.ts +0 -65
  976. package/src/network/peers/score/constants.ts +0 -34
  977. package/src/network/peers/score/index.ts +0 -4
  978. package/src/network/peers/score/interface.ts +0 -74
  979. package/src/network/peers/score/score.ts +0 -200
  980. package/src/network/peers/score/store.ts +0 -95
  981. package/src/network/peers/score/utils.ts +0 -37
  982. package/src/network/peers/utils/assertPeerRelevance.ts +0 -99
  983. package/src/network/peers/utils/enrSubnetsDeserialize.ts +0 -27
  984. package/src/network/peers/utils/getConnectedPeerIds.ts +0 -33
  985. package/src/network/peers/utils/index.ts +0 -4
  986. package/src/network/peers/utils/prioritizePeers.ts +0 -627
  987. package/src/network/peers/utils/subnetMap.ts +0 -88
  988. package/src/network/processor/aggregatorTracker.ts +0 -38
  989. package/src/network/processor/extractSlotRootFns.ts +0 -64
  990. package/src/network/processor/gossipHandlers.ts +0 -951
  991. package/src/network/processor/gossipQueues/index.ts +0 -114
  992. package/src/network/processor/gossipQueues/indexed.ts +0 -219
  993. package/src/network/processor/gossipQueues/linear.ts +0 -162
  994. package/src/network/processor/gossipQueues/types.ts +0 -57
  995. package/src/network/processor/gossipValidatorFn.ts +0 -142
  996. package/src/network/processor/index.ts +0 -496
  997. package/src/network/processor/types.ts +0 -27
  998. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -373
  999. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +0 -101
  1000. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +0 -49
  1001. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -114
  1002. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -62
  1003. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +0 -144
  1004. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +0 -88
  1005. package/src/network/reqresp/handlers/index.ts +0 -78
  1006. package/src/network/reqresp/handlers/lightClientBootstrap.ts +0 -31
  1007. package/src/network/reqresp/handlers/lightClientFinalityUpdate.ts +0 -21
  1008. package/src/network/reqresp/handlers/lightClientOptimisticUpdate.ts +0 -21
  1009. package/src/network/reqresp/handlers/lightClientUpdatesByRange.ts +0 -39
  1010. package/src/network/reqresp/index.ts +0 -2
  1011. package/src/network/reqresp/interface.ts +0 -45
  1012. package/src/network/reqresp/protocols.ts +0 -146
  1013. package/src/network/reqresp/rateLimit.ts +0 -112
  1014. package/src/network/reqresp/score.ts +0 -70
  1015. package/src/network/reqresp/types.ts +0 -174
  1016. package/src/network/reqresp/utils/collect.ts +0 -84
  1017. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +0 -57
  1018. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +0 -99
  1019. package/src/network/statusCache.ts +0 -17
  1020. package/src/network/subnets/attnetsService.ts +0 -385
  1021. package/src/network/subnets/index.ts +0 -2
  1022. package/src/network/subnets/interface.ts +0 -66
  1023. package/src/network/subnets/syncnetsService.ts +0 -147
  1024. package/src/network/subnets/util.ts +0 -63
  1025. package/src/network/util.ts +0 -29
  1026. package/src/node/index.ts +0 -2
  1027. package/src/node/nodejs.ts +0 -349
  1028. package/src/node/notifier.ts +0 -206
  1029. package/src/node/options.ts +0 -51
  1030. package/src/node/utils/interop/deposits.ts +0 -53
  1031. package/src/node/utils/interop/state.ts +0 -59
  1032. package/src/node/utils/lightclient.ts +0 -7
  1033. package/src/node/utils/state.ts +0 -37
  1034. package/src/sync/backfill/backfill.ts +0 -893
  1035. package/src/sync/backfill/errors.ts +0 -23
  1036. package/src/sync/backfill/index.ts +0 -1
  1037. package/src/sync/backfill/verify.ts +0 -58
  1038. package/src/sync/constants.ts +0 -71
  1039. package/src/sync/index.ts +0 -2
  1040. package/src/sync/interface.ts +0 -55
  1041. package/src/sync/options.ts +0 -45
  1042. package/src/sync/range/batch.ts +0 -455
  1043. package/src/sync/range/chain.ts +0 -715
  1044. package/src/sync/range/range.ts +0 -354
  1045. package/src/sync/range/utils/batches.ts +0 -119
  1046. package/src/sync/range/utils/chainTarget.ts +0 -62
  1047. package/src/sync/range/utils/hashBlocks.ts +0 -27
  1048. package/src/sync/range/utils/index.ts +0 -5
  1049. package/src/sync/range/utils/peerBalancer.ts +0 -184
  1050. package/src/sync/range/utils/updateChains.ts +0 -66
  1051. package/src/sync/sync.ts +0 -290
  1052. package/src/sync/types.ts +0 -57
  1053. package/src/sync/unknownBlock.ts +0 -859
  1054. package/src/sync/utils/downloadByRange.ts +0 -808
  1055. package/src/sync/utils/downloadByRoot.ts +0 -560
  1056. package/src/sync/utils/pendingBlocksTree.ts +0 -97
  1057. package/src/sync/utils/remoteSyncType.ts +0 -144
  1058. package/src/util/address.ts +0 -3
  1059. package/src/util/array.ts +0 -311
  1060. package/src/util/asyncIterableToEvents.ts +0 -164
  1061. package/src/util/binarySearch.ts +0 -48
  1062. package/src/util/bitArray.ts +0 -84
  1063. package/src/util/blobs.ts +0 -210
  1064. package/src/util/bufferPool.ts +0 -95
  1065. package/src/util/bytes.ts +0 -11
  1066. package/src/util/chunkify.ts +0 -27
  1067. package/src/util/clock.ts +0 -212
  1068. package/src/util/dataColumns.ts +0 -415
  1069. package/src/util/dependentRoot.ts +0 -47
  1070. package/src/util/enum.ts +0 -17
  1071. package/src/util/error.ts +0 -56
  1072. package/src/util/eventLoop.ts +0 -22
  1073. package/src/util/execution.ts +0 -223
  1074. package/src/util/file.ts +0 -52
  1075. package/src/util/forkChoice.ts +0 -5
  1076. package/src/util/forkName.ts +0 -20
  1077. package/src/util/graffiti.ts +0 -39
  1078. package/src/util/hex.ts +0 -9
  1079. package/src/util/index.ts +0 -2
  1080. package/src/util/ip.ts +0 -6
  1081. package/src/util/itTrigger.ts +0 -49
  1082. package/src/util/kzg.ts +0 -3
  1083. package/src/util/map.ts +0 -77
  1084. package/src/util/metadata.ts +0 -22
  1085. package/src/util/multifork.ts +0 -69
  1086. package/src/util/numpy.ts +0 -8
  1087. package/src/util/peerId.ts +0 -16
  1088. package/src/util/profile.ts +0 -54
  1089. package/src/util/promises.ts +0 -14
  1090. package/src/util/queue/errors.ts +0 -14
  1091. package/src/util/queue/fnQueue.ts +0 -16
  1092. package/src/util/queue/index.ts +0 -4
  1093. package/src/util/queue/itemQueue.ts +0 -128
  1094. package/src/util/queue/options.ts +0 -37
  1095. package/src/util/serializedCache.ts +0 -20
  1096. package/src/util/set.ts +0 -62
  1097. package/src/util/shuffle.ts +0 -21
  1098. package/src/util/sortBy.ts +0 -19
  1099. package/src/util/sszBytes.ts +0 -481
  1100. package/src/util/strictEvents.ts +0 -8
  1101. package/src/util/time.ts +0 -13
  1102. package/src/util/timeSeries.ts +0 -118
  1103. package/src/util/types.ts +0 -31
  1104. package/src/util/workerEvents.ts +0 -142
  1105. package/src/util/wrapError.ts +0 -27
@@ -1,462 +0,0 @@
1
- import {Id, Repository} from "@lodestar/db";
2
- import {
3
- BLS_WITHDRAWAL_PREFIX,
4
- ForkName,
5
- ForkSeq,
6
- MAX_ATTESTER_SLASHINGS,
7
- MAX_ATTESTER_SLASHINGS_ELECTRA,
8
- MAX_BLS_TO_EXECUTION_CHANGES,
9
- MAX_PROPOSER_SLASHINGS,
10
- MAX_VOLUNTARY_EXITS,
11
- } from "@lodestar/params";
12
- import {
13
- CachedBeaconStateAllForks,
14
- computeEpochAtSlot,
15
- computeStartSlotAtEpoch,
16
- getAttesterSlashableIndices,
17
- isValidVoluntaryExit,
18
- } from "@lodestar/state-transition";
19
- import {
20
- AttesterSlashing,
21
- Epoch,
22
- SignedBeaconBlock,
23
- ValidatorIndex,
24
- capella,
25
- phase0,
26
- sszTypesFor,
27
- } from "@lodestar/types";
28
- import {fromHex, toHex, toRootHex} from "@lodestar/utils";
29
- import {IBeaconDb} from "../../db/index.js";
30
- import {Metrics} from "../../metrics/metrics.js";
31
- import {SignedBLSToExecutionChangeVersioned} from "../../util/types.js";
32
- import {BlockType} from "../interface.js";
33
- import {BlockProductionStep} from "../produceBlock/produceBlockBody.js";
34
- import {isValidBlsToExecutionChangeForBlockInclusion} from "./utils.js";
35
-
36
- type HexRoot = string;
37
- type AttesterSlashingCached = {
38
- attesterSlashing: AttesterSlashing;
39
- intersectingIndices: number[];
40
- };
41
-
42
- export class OpPool {
43
- /** Map of uniqueId(AttesterSlashing) -> AttesterSlashing */
44
- private readonly attesterSlashings = new Map<HexRoot, AttesterSlashingCached>();
45
- /** Map of to slash validator index -> ProposerSlashing */
46
- private readonly proposerSlashings = new Map<ValidatorIndex, phase0.ProposerSlashing>();
47
- /** Map of to exit validator index -> SignedVoluntaryExit */
48
- private readonly voluntaryExits = new Map<ValidatorIndex, phase0.SignedVoluntaryExit>();
49
- /** Set of seen attester slashing indexes. No need to prune */
50
- private readonly attesterSlashingIndexes = new Set<ValidatorIndex>();
51
- /** Map of validator index -> SignedBLSToExecutionChange */
52
- private readonly blsToExecutionChanges = new Map<ValidatorIndex, SignedBLSToExecutionChangeVersioned>();
53
-
54
- // Getters for metrics
55
-
56
- get attesterSlashingsSize(): number {
57
- return this.attesterSlashings.size;
58
- }
59
- get proposerSlashingsSize(): number {
60
- return this.proposerSlashings.size;
61
- }
62
- get voluntaryExitsSize(): number {
63
- return this.voluntaryExits.size;
64
- }
65
- get blsToExecutionChangeSize(): number {
66
- return this.blsToExecutionChanges.size;
67
- }
68
-
69
- async fromPersisted(db: IBeaconDb): Promise<void> {
70
- const [attesterSlashings, proposerSlashings, voluntaryExits, blsToExecutionChanges] = await Promise.all([
71
- db.attesterSlashing.entries(),
72
- db.proposerSlashing.values(),
73
- db.voluntaryExit.values(),
74
- db.blsToExecutionChange.values(),
75
- ]);
76
-
77
- for (const attesterSlashing of attesterSlashings) {
78
- this.insertAttesterSlashing(ForkName.electra, attesterSlashing.value, attesterSlashing.key);
79
- }
80
- for (const proposerSlashing of proposerSlashings) {
81
- this.insertProposerSlashing(proposerSlashing);
82
- }
83
- for (const voluntaryExit of voluntaryExits) {
84
- this.insertVoluntaryExit(voluntaryExit);
85
- }
86
- for (const item of blsToExecutionChanges) {
87
- this.insertBlsToExecutionChange(item.data, item.preCapella);
88
- }
89
- }
90
-
91
- async toPersisted(db: IBeaconDb): Promise<void> {
92
- await Promise.all([
93
- persistDiff(
94
- db.attesterSlashing,
95
- Array.from(this.attesterSlashings.entries()).map(([key, value]) => ({
96
- key: fromHex(key),
97
- value: value.attesterSlashing,
98
- })),
99
- toHex
100
- ),
101
- persistDiff(
102
- db.proposerSlashing,
103
- Array.from(this.proposerSlashings.entries()).map(([key, value]) => ({key, value})),
104
- (index) => index
105
- ),
106
- persistDiff(
107
- db.voluntaryExit,
108
- Array.from(this.voluntaryExits.entries()).map(([key, value]) => ({key, value})),
109
- (index) => index
110
- ),
111
- persistDiff(
112
- db.blsToExecutionChange,
113
- Array.from(this.blsToExecutionChanges.entries()).map(([key, value]) => ({key, value})),
114
- (index) => index
115
- ),
116
- ]);
117
- }
118
-
119
- // Use the opPool as seen cache for gossip validation
120
-
121
- /** Returns false if at least one intersecting index has not been seen yet */
122
- hasSeenAttesterSlashing(intersectingIndices: ValidatorIndex[]): boolean {
123
- for (const validatorIndex of intersectingIndices) {
124
- if (!this.attesterSlashingIndexes.has(validatorIndex)) {
125
- return false;
126
- }
127
- }
128
- return true;
129
- }
130
-
131
- hasSeenVoluntaryExit(validatorIndex: ValidatorIndex): boolean {
132
- return this.voluntaryExits.has(validatorIndex);
133
- }
134
-
135
- hasSeenBlsToExecutionChange(validatorIndex: ValidatorIndex): boolean {
136
- return this.blsToExecutionChanges.has(validatorIndex);
137
- }
138
-
139
- hasSeenProposerSlashing(validatorIndex: ValidatorIndex): boolean {
140
- return this.proposerSlashings.has(validatorIndex);
141
- }
142
-
143
- /** Must be validated beforehand */
144
- insertAttesterSlashing(fork: ForkName, attesterSlashing: AttesterSlashing, rootHash?: Uint8Array): void {
145
- if (!rootHash) {
146
- rootHash = sszTypesFor(fork).AttesterSlashing.hashTreeRoot(attesterSlashing);
147
- }
148
-
149
- // TODO: Do once and cache attached to the AttesterSlashing object
150
- const intersectingIndices = getAttesterSlashableIndices(attesterSlashing);
151
- this.attesterSlashings.set(toRootHex(rootHash), {
152
- attesterSlashing,
153
- intersectingIndices,
154
- });
155
- for (const index of intersectingIndices) {
156
- this.attesterSlashingIndexes.add(index);
157
- }
158
- }
159
-
160
- /** Must be validated beforehand */
161
- insertProposerSlashing(proposerSlashing: phase0.ProposerSlashing): void {
162
- this.proposerSlashings.set(proposerSlashing.signedHeader1.message.proposerIndex, proposerSlashing);
163
- }
164
-
165
- /** Must be validated beforehand */
166
- insertVoluntaryExit(voluntaryExit: phase0.SignedVoluntaryExit): void {
167
- this.voluntaryExits.set(voluntaryExit.message.validatorIndex, voluntaryExit);
168
- }
169
-
170
- /** Must be validated beforehand */
171
- insertBlsToExecutionChange(blsToExecutionChange: capella.SignedBLSToExecutionChange, preCapella = false): void {
172
- this.blsToExecutionChanges.set(blsToExecutionChange.message.validatorIndex, {
173
- data: blsToExecutionChange,
174
- preCapella,
175
- });
176
- }
177
-
178
- /**
179
- * Get proposer and attester slashings and voluntary exits and bls to execution change for inclusion in a block.
180
- *
181
- * This function computes both types of slashings and exits, because attester slashings and exits may be invalidated by
182
- * slashings included earlier in the block.
183
- */
184
- getSlashingsAndExits(
185
- state: CachedBeaconStateAllForks,
186
- blockType: BlockType,
187
- metrics: Metrics | null
188
- ): [
189
- AttesterSlashing[],
190
- phase0.ProposerSlashing[],
191
- phase0.SignedVoluntaryExit[],
192
- capella.SignedBLSToExecutionChange[],
193
- ] {
194
- const {config} = state;
195
- const stateEpoch = computeEpochAtSlot(state.slot);
196
- const stateFork = config.getForkSeq(state.slot);
197
- const toBeSlashedIndices = new Set<ValidatorIndex>();
198
- const proposerSlashings: phase0.ProposerSlashing[] = [];
199
-
200
- const stepsMetrics =
201
- blockType === BlockType.Full
202
- ? metrics?.executionBlockProductionTimeSteps
203
- : metrics?.builderBlockProductionTimeSteps;
204
-
205
- const endProposerSlashing = stepsMetrics?.startTimer();
206
- for (const proposerSlashing of this.proposerSlashings.values()) {
207
- const index = proposerSlashing.signedHeader1.message.proposerIndex;
208
- const validator = state.validators.getReadonly(index);
209
- if (!validator.slashed && validator.activationEpoch <= stateEpoch && stateEpoch < validator.withdrawableEpoch) {
210
- proposerSlashings.push(proposerSlashing);
211
- // Set of validators to be slashed, so we don't attempt to construct invalid attester slashings.
212
- toBeSlashedIndices.add(index);
213
- if (proposerSlashings.length >= MAX_PROPOSER_SLASHINGS) {
214
- break;
215
- }
216
- }
217
- }
218
- endProposerSlashing?.({
219
- step: BlockProductionStep.proposerSlashing,
220
- });
221
-
222
- const endAttesterSlashings = stepsMetrics?.startTimer();
223
- const attesterSlashings: AttesterSlashing[] = [];
224
- const maxAttesterSlashings = stateFork >= ForkSeq.electra ? MAX_ATTESTER_SLASHINGS_ELECTRA : MAX_ATTESTER_SLASHINGS;
225
- attesterSlashing: for (const attesterSlashing of this.attesterSlashings.values()) {
226
- /** Indices slashable in this attester slashing */
227
- const slashableIndices = new Set<ValidatorIndex>();
228
- for (let i = 0; i < attesterSlashing.intersectingIndices.length; i++) {
229
- const index = attesterSlashing.intersectingIndices[i];
230
- // If we already have a slashing for this index, we can continue on to the next slashing
231
- if (toBeSlashedIndices.has(index)) {
232
- continue attesterSlashing;
233
- }
234
-
235
- const validator = state.validators.getReadonly(index);
236
- if (isSlashableAtEpoch(validator, stateEpoch)) {
237
- slashableIndices.add(index);
238
- }
239
- if (attesterSlashings.length >= maxAttesterSlashings) {
240
- break attesterSlashing;
241
- }
242
- }
243
-
244
- // If there were slashable indices in this slashing
245
- // Then include the slashing and count the slashable indices
246
- if (slashableIndices.size > 0) {
247
- attesterSlashings.push(attesterSlashing.attesterSlashing);
248
- for (const index of slashableIndices) {
249
- toBeSlashedIndices.add(index);
250
- }
251
- }
252
- }
253
- endAttesterSlashings?.({
254
- step: BlockProductionStep.attesterSlashings,
255
- });
256
-
257
- const endVoluntaryExits = stepsMetrics?.startTimer();
258
- const voluntaryExits: phase0.SignedVoluntaryExit[] = [];
259
- for (const voluntaryExit of this.voluntaryExits.values()) {
260
- if (
261
- !toBeSlashedIndices.has(voluntaryExit.message.validatorIndex) &&
262
- isValidVoluntaryExit(stateFork, state, voluntaryExit, false) &&
263
- // Signature validation is skipped in `isValidVoluntaryExit(,,false)` since it was already validated in gossip
264
- // However we must make sure that the signature fork is the same, or it will become invalid if included through
265
- // a future fork.
266
- isVoluntaryExitSignatureIncludable(
267
- stateFork,
268
- config.getForkSeq(computeStartSlotAtEpoch(voluntaryExit.message.epoch))
269
- )
270
- ) {
271
- voluntaryExits.push(voluntaryExit);
272
- if (voluntaryExits.length >= MAX_VOLUNTARY_EXITS) {
273
- break;
274
- }
275
- }
276
- }
277
- endVoluntaryExits?.({
278
- step: BlockProductionStep.voluntaryExits,
279
- });
280
-
281
- const endBlsToExecutionChanges = stepsMetrics?.startTimer();
282
- const blsToExecutionChanges: capella.SignedBLSToExecutionChange[] = [];
283
- for (const blsToExecutionChange of this.blsToExecutionChanges.values()) {
284
- if (isValidBlsToExecutionChangeForBlockInclusion(state, blsToExecutionChange.data)) {
285
- blsToExecutionChanges.push(blsToExecutionChange.data);
286
- if (blsToExecutionChanges.length >= MAX_BLS_TO_EXECUTION_CHANGES) {
287
- break;
288
- }
289
- }
290
- }
291
- endBlsToExecutionChanges?.({
292
- step: BlockProductionStep.blsToExecutionChanges,
293
- });
294
-
295
- return [attesterSlashings, proposerSlashings, voluntaryExits, blsToExecutionChanges];
296
- }
297
-
298
- /** For beacon pool API */
299
- getAllAttesterSlashings(): AttesterSlashing[] {
300
- return Array.from(this.attesterSlashings.values()).map((attesterSlashings) => attesterSlashings.attesterSlashing);
301
- }
302
-
303
- /** For beacon pool API */
304
- getAllProposerSlashings(): phase0.ProposerSlashing[] {
305
- return Array.from(this.proposerSlashings.values());
306
- }
307
-
308
- /** For beacon pool API */
309
- getAllVoluntaryExits(): phase0.SignedVoluntaryExit[] {
310
- return Array.from(this.voluntaryExits.values());
311
- }
312
-
313
- /** For beacon pool API */
314
- getAllBlsToExecutionChanges(): SignedBLSToExecutionChangeVersioned[] {
315
- return Array.from(this.blsToExecutionChanges.values());
316
- }
317
-
318
- /**
319
- * Prune all types of transactions given the latest head state
320
- */
321
- pruneAll(headBlock: SignedBeaconBlock, headState: CachedBeaconStateAllForks): void {
322
- this.pruneAttesterSlashings(headState);
323
- this.pruneProposerSlashings(headState);
324
- this.pruneVoluntaryExits(headState);
325
- this.pruneBlsToExecutionChanges(headBlock, headState);
326
- }
327
-
328
- /**
329
- * Prune attester slashings for all slashed or withdrawn validators.
330
- */
331
- private pruneAttesterSlashings(headState: CachedBeaconStateAllForks): void {
332
- const finalizedEpoch = headState.finalizedCheckpoint.epoch;
333
- attesterSlashing: for (const [key, attesterSlashing] of this.attesterSlashings.entries()) {
334
- // Slashings that don't slash any validators can be dropped
335
- for (let i = 0; i < attesterSlashing.intersectingIndices.length; i++) {
336
- const index = attesterSlashing.intersectingIndices[i];
337
-
338
- // Declare that a validator is still slashable if they have not exited prior
339
- // to the finalized epoch.
340
- //
341
- // We cannot check the `slashed` field since the `head` is not finalized and
342
- // a fork could un-slash someone.
343
- if (headState.validators.getReadonly(index).exitEpoch > finalizedEpoch) {
344
- continue attesterSlashing;
345
- }
346
- }
347
-
348
- // All intersecting indices are not slashable
349
- this.attesterSlashings.delete(key);
350
- }
351
- }
352
-
353
- /**
354
- * Prune proposer slashings for validators which are exited in the finalized epoch.
355
- */
356
- private pruneProposerSlashings(headState: CachedBeaconStateAllForks): void {
357
- const finalizedEpoch = headState.finalizedCheckpoint.epoch;
358
- for (const [key, proposerSlashing] of this.proposerSlashings.entries()) {
359
- const index = proposerSlashing.signedHeader1.message.proposerIndex;
360
- if (headState.validators.getReadonly(index).exitEpoch <= finalizedEpoch) {
361
- this.proposerSlashings.delete(key);
362
- }
363
- }
364
- }
365
-
366
- /**
367
- * Call after finalizing
368
- * Prune if validator has already exited at or before the finalized checkpoint of the head.
369
- */
370
- private pruneVoluntaryExits(headState: CachedBeaconStateAllForks): void {
371
- const {config} = headState;
372
- const headStateFork = config.getForkSeq(headState.slot);
373
- const finalizedEpoch = headState.finalizedCheckpoint.epoch;
374
-
375
- for (const [key, voluntaryExit] of this.voluntaryExits.entries()) {
376
- // VoluntaryExit messages signed in the previous fork become invalid and can never be included in any future
377
- // block, so just drop as the head state advances into the next fork.
378
- if (config.getForkSeq(computeStartSlotAtEpoch(voluntaryExit.message.epoch)) < headStateFork) {
379
- this.voluntaryExits.delete(key);
380
- }
381
-
382
- // TODO: Improve this simplistic condition
383
- if (voluntaryExit.message.epoch <= finalizedEpoch) {
384
- this.voluntaryExits.delete(key);
385
- }
386
- }
387
- }
388
-
389
- /**
390
- * Prune BLS to execution changes that have been applied to the state more than 1 block ago.
391
- * In the worse case where head block is reorged, the same BlsToExecutionChange message can be re-added
392
- * to opPool once gossipsub seen cache TTL passes.
393
- */
394
- private pruneBlsToExecutionChanges(headBlock: SignedBeaconBlock, headState: CachedBeaconStateAllForks): void {
395
- const {config} = headState;
396
- const recentBlsToExecutionChanges =
397
- config.getForkSeq(headBlock.message.slot) >= ForkSeq.capella
398
- ? (headBlock as capella.SignedBeaconBlock).message.body.blsToExecutionChanges
399
- : [];
400
-
401
- const recentBlsToExecutionChangeIndexes = new Set(
402
- recentBlsToExecutionChanges.map((blsToExecutionChange) => blsToExecutionChange.message.validatorIndex)
403
- );
404
-
405
- for (const [key, blsToExecutionChange] of this.blsToExecutionChanges.entries()) {
406
- const {validatorIndex} = blsToExecutionChange.data.message;
407
- if (!recentBlsToExecutionChangeIndexes.has(validatorIndex)) {
408
- const validator = headState.validators.getReadonly(validatorIndex);
409
- if (validator.withdrawalCredentials[0] !== BLS_WITHDRAWAL_PREFIX) {
410
- this.blsToExecutionChanges.delete(key);
411
- }
412
- }
413
- }
414
- }
415
- }
416
-
417
- /**
418
- * Returns true if a pre-validated signature is still valid to be included in a specific block's fork
419
- */
420
- function isVoluntaryExitSignatureIncludable(stateFork: ForkSeq, voluntaryExitFork: ForkSeq): boolean {
421
- if (stateFork >= ForkSeq.deneb) {
422
- // Exists are perpetually valid https://eips.ethereum.org/EIPS/eip-7044
423
- return true;
424
- }
425
- // Can only include exits from the current and previous fork
426
- return voluntaryExitFork === stateFork || voluntaryExitFork === stateFork - 1;
427
- }
428
-
429
- function isSlashableAtEpoch(validator: phase0.Validator, epoch: Epoch): boolean {
430
- return !validator.slashed && validator.activationEpoch <= epoch && epoch < validator.withdrawableEpoch;
431
- }
432
-
433
- /**
434
- * Persist target items `items` in `dbRepo` doing minimum put and delete writes.
435
- * Reads all keys in repository to compute the diff between current persisted data and target data.
436
- */
437
- async function persistDiff<K extends Id, V>(
438
- dbRepo: Repository<K, V>,
439
- items: {key: K; value: V}[],
440
- serializeKey: (key: K) => number | string
441
- ): Promise<void> {
442
- const persistedKeys = await dbRepo.keys();
443
- const itemsToPut: {key: K; value: V}[] = [];
444
- const keysToDelete: K[] = [];
445
-
446
- const persistedKeysSerialized = new Set(persistedKeys.map(serializeKey));
447
- for (const item of items) {
448
- if (!persistedKeysSerialized.has(serializeKey(item.key))) {
449
- itemsToPut.push(item);
450
- }
451
- }
452
-
453
- const targetKeysSerialized = new Set(items.map((item) => serializeKey(item.key)));
454
- for (const persistedKey of persistedKeys) {
455
- if (!targetKeysSerialized.has(serializeKey(persistedKey))) {
456
- keysToDelete.push(persistedKey);
457
- }
458
- }
459
-
460
- if (itemsToPut.length > 0) await dbRepo.batchPut(itemsToPut);
461
- if (keysToDelete.length > 0) await dbRepo.batchDelete(keysToDelete);
462
- }
@@ -1,169 +0,0 @@
1
- import {Signature, aggregateSignatures} from "@chainsafe/blst";
2
- import {BitArray} from "@chainsafe/ssz";
3
- import {ChainForkConfig} from "@lodestar/config";
4
- import {SYNC_COMMITTEE_SIZE, SYNC_COMMITTEE_SUBNET_COUNT} from "@lodestar/params";
5
- import {Root, Slot, SubcommitteeIndex, SubnetID, altair} from "@lodestar/types";
6
- import {MapDef, toRootHex} from "@lodestar/utils";
7
- import {IClock} from "../../util/clock.js";
8
- import {InsertOutcome, OpPoolError, OpPoolErrorCode} from "./types.js";
9
- import {pruneBySlot, signatureFromBytesNoCheck} from "./utils.js";
10
-
11
- /**
12
- * SyncCommittee signatures are only useful during a single slot according to our peer's clocks
13
- */
14
- const SLOTS_RETAINED = 3;
15
-
16
- /**
17
- * The maximum number of distinct `ContributionFast` that will be stored in each slot.
18
- *
19
- * This is a DoS protection measure.
20
- */
21
- const MAX_ITEMS_PER_SLOT = 512;
22
-
23
- type ContributionFast = Omit<altair.SyncCommitteeContribution, "aggregationBits" | "signature"> & {
24
- aggregationBits: BitArray;
25
- signature: Signature;
26
- };
27
-
28
- /** Hex string of `contribution.beaconBlockRoot` */
29
- type BlockRootHex = string;
30
-
31
- /**
32
- * Preaggregate SyncCommitteeMessage into SyncCommitteeContribution
33
- * and cache seen SyncCommitteeMessage by slot + validator index.
34
- * This stays in-memory and should be pruned per slot.
35
- */
36
- export class SyncCommitteeMessagePool {
37
- /**
38
- * Each array item is respective to a subcommitteeIndex.
39
- * Preaggregate into SyncCommitteeContribution.
40
- * */
41
- private readonly contributionsByRootBySubnetBySlot = new MapDef<
42
- Slot,
43
- MapDef<SubnetID, Map<BlockRootHex, ContributionFast>>
44
- >(() => new MapDef<SubnetID, Map<BlockRootHex, ContributionFast>>(() => new Map<BlockRootHex, ContributionFast>()));
45
- private lowestPermissibleSlot = 0;
46
-
47
- constructor(
48
- private readonly config: ChainForkConfig,
49
- private readonly clock: IClock,
50
- private readonly preaggregateSlotDistance = 0
51
- ) {}
52
-
53
- /** Returns current count of unique ContributionFast by block root and subnet */
54
- get size(): number {
55
- let count = 0;
56
- for (const contributionsByRootBySubnet of this.contributionsByRootBySubnetBySlot.values()) {
57
- for (const contributionsByRoot of contributionsByRootBySubnet.values()) {
58
- count += contributionsByRoot.size;
59
- }
60
- }
61
- return count;
62
- }
63
-
64
- // TODO: indexInSubcommittee: number should be indicesInSyncCommittee
65
- add(
66
- subnet: SubnetID,
67
- signature: altair.SyncCommitteeMessage,
68
- indexInSubcommittee: number,
69
- priority?: boolean
70
- ): InsertOutcome {
71
- const {slot, beaconBlockRoot} = signature;
72
- const fork = this.config.getForkName(slot);
73
- const rootHex = toRootHex(beaconBlockRoot);
74
- const lowestPermissibleSlot = this.lowestPermissibleSlot;
75
-
76
- // Reject if too old.
77
- if (slot < lowestPermissibleSlot) {
78
- return InsertOutcome.Old;
79
- }
80
-
81
- // validator gets SyncCommitteeContribution at CONTRIBUTION_DUE_BPS of slot, it's no use to preaggregate later than that time
82
- if (!priority && this.clock.msFromSlot(slot) > this.config.getSyncContributionDueMs(fork)) {
83
- return InsertOutcome.Late;
84
- }
85
-
86
- // Limit object per slot
87
- const contributionsByRoot = this.contributionsByRootBySubnetBySlot.getOrDefault(slot).getOrDefault(subnet);
88
- if (contributionsByRoot.size >= MAX_ITEMS_PER_SLOT) {
89
- throw new OpPoolError({code: OpPoolErrorCode.REACHED_MAX_PER_SLOT});
90
- }
91
-
92
- // Pre-aggregate the contribution with existing items
93
- const contribution = contributionsByRoot.get(rootHex);
94
- if (contribution) {
95
- // Aggregate mutating
96
- return aggregateSignatureInto(contribution, signature, indexInSubcommittee);
97
- }
98
-
99
- // Create new aggregate
100
- contributionsByRoot.set(rootHex, signatureToAggregate(subnet, signature, indexInSubcommittee));
101
- return InsertOutcome.NewData;
102
- }
103
-
104
- /**
105
- * This is for the aggregator to produce ContributionAndProof.
106
- */
107
- getContribution(subnet: SubcommitteeIndex, slot: Slot, prevBlockRoot: Root): altair.SyncCommitteeContribution | null {
108
- const contribution = this.contributionsByRootBySubnetBySlot.get(slot)?.get(subnet)?.get(toRootHex(prevBlockRoot));
109
- if (!contribution) {
110
- return null;
111
- }
112
-
113
- return {
114
- ...contribution,
115
- aggregationBits: contribution.aggregationBits,
116
- signature: contribution.signature.toBytes(),
117
- };
118
- }
119
-
120
- /**
121
- * Prune per clock slot.
122
- * SyncCommittee signatures are only useful during a single slot according to our peer's clocks
123
- */
124
- prune(clockSlot: Slot): void {
125
- pruneBySlot(this.contributionsByRootBySubnetBySlot, clockSlot, SLOTS_RETAINED);
126
- // by default preaggregateSlotDistance is 0, i.e only accept SyncCommitteeMessage in the same clock slot.
127
- this.lowestPermissibleSlot = Math.max(clockSlot - this.preaggregateSlotDistance, 0);
128
- }
129
- }
130
-
131
- /**
132
- * Aggregate a new signature into `contribution` mutating it
133
- */
134
- function aggregateSignatureInto(
135
- contribution: ContributionFast,
136
- signature: altair.SyncCommitteeMessage,
137
- indexInSubcommittee: number
138
- ): InsertOutcome {
139
- if (contribution.aggregationBits.get(indexInSubcommittee) === true) {
140
- return InsertOutcome.AlreadyKnown;
141
- }
142
-
143
- contribution.aggregationBits.set(indexInSubcommittee, true);
144
- contribution.signature = aggregateSignatures([
145
- contribution.signature,
146
- signatureFromBytesNoCheck(signature.signature),
147
- ]);
148
- return InsertOutcome.Aggregated;
149
- }
150
-
151
- /**
152
- * Format `signature` into an efficient `contribution` to add more signatures in with aggregateSignatureInto()
153
- */
154
- function signatureToAggregate(
155
- subnet: SubnetID,
156
- signature: altair.SyncCommitteeMessage,
157
- indexInSubcommittee: number
158
- ): ContributionFast {
159
- const indexesPerSubnet = Math.floor(SYNC_COMMITTEE_SIZE / SYNC_COMMITTEE_SUBNET_COUNT);
160
- const aggregationBits = BitArray.fromSingleBit(indexesPerSubnet, indexInSubcommittee);
161
-
162
- return {
163
- slot: signature.slot,
164
- beaconBlockRoot: signature.beaconBlockRoot,
165
- subcommitteeIndex: subnet,
166
- aggregationBits,
167
- signature: signatureFromBytesNoCheck(signature.signature),
168
- };
169
- }