@lodestar/beacon-node 1.35.0-dev.21ba2777a9 → 1.35.0-dev.365e071d8c

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 (1089) 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/rest/base.d.ts +1 -1
  10. package/lib/api/rest/base.js +2 -2
  11. package/lib/api/rest/base.js.map +1 -1
  12. package/lib/api/rest/index.js.map +1 -1
  13. package/lib/chain/ColumnReconstructionTracker.d.ts +2 -2
  14. package/lib/chain/ColumnReconstructionTracker.js +3 -21
  15. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  16. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  17. package/lib/chain/GetBlobsTracker.js +4 -19
  18. package/lib/chain/GetBlobsTracker.js.map +1 -1
  19. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -1
  20. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  21. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  22. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  23. package/lib/chain/archiveStore/index.d.ts +1 -1
  24. package/lib/chain/archiveStore/index.js +1 -1
  25. package/lib/chain/blocks/blockInput/index.d.ts +1 -1
  26. package/lib/chain/blocks/blockInput/index.js +1 -1
  27. package/lib/chain/blocks/index.d.ts +1 -1
  28. package/lib/chain/blocks/index.js.map +1 -1
  29. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  30. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  31. package/lib/chain/bls/multithread/index.js +0 -1
  32. package/lib/chain/bls/multithread/index.js.map +1 -1
  33. package/lib/chain/chain.d.ts +3 -3
  34. package/lib/chain/chain.js +2 -2
  35. package/lib/chain/chain.js.map +1 -1
  36. package/lib/chain/emitter.d.ts +2 -2
  37. package/lib/chain/emitter.js.map +1 -1
  38. package/lib/chain/errors/index.d.ts +2 -2
  39. package/lib/chain/errors/index.js +2 -2
  40. package/lib/chain/errors/index.js.map +1 -1
  41. package/lib/chain/forkChoice/index.js.map +1 -1
  42. package/lib/chain/index.d.ts +2 -2
  43. package/lib/chain/index.js +2 -2
  44. package/lib/chain/index.js.map +1 -1
  45. package/lib/chain/interface.d.ts +2 -2
  46. package/lib/chain/interface.js.map +1 -1
  47. package/lib/chain/lightClient/index.js.map +1 -1
  48. package/lib/chain/lightClient/proofs.js.map +1 -1
  49. package/lib/chain/opPools/aggregatedAttestationPool.js +1 -1
  50. package/lib/chain/opPools/attestationPool.js +1 -1
  51. package/lib/chain/opPools/index.d.ts +1 -1
  52. package/lib/chain/opPools/index.js +1 -1
  53. package/lib/chain/opPools/index.js.map +1 -1
  54. package/lib/chain/options.js +1 -1
  55. package/lib/chain/options.js.map +1 -1
  56. package/lib/chain/regen/index.d.ts +1 -1
  57. package/lib/chain/regen/index.js +1 -1
  58. package/lib/chain/regen/index.js.map +1 -1
  59. package/lib/chain/stateCache/datastore/index.d.ts +1 -1
  60. package/lib/chain/stateCache/datastore/index.js +1 -1
  61. package/lib/chain/stateCache/datastore/index.js.map +1 -1
  62. package/lib/chain/stateCache/index.d.ts +1 -1
  63. package/lib/chain/stateCache/index.js +1 -1
  64. package/lib/chain/stateCache/index.js.map +1 -1
  65. package/lib/chain/stateCache/persistentCheckpointsCache.js +2 -1
  66. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  67. package/lib/chain/validation/blobSidecar.js.map +1 -1
  68. package/lib/chain/validation/dataColumnSidecar.js +1 -1
  69. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  70. package/lib/chain/validation/index.d.ts +1 -1
  71. package/lib/chain/validation/index.js +1 -1
  72. package/lib/chain/validation/index.js.map +1 -1
  73. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -1
  74. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  75. package/lib/chain/validatorMonitor.d.ts +3 -1
  76. package/lib/chain/validatorMonitor.js.map +1 -1
  77. package/lib/db/buckets.d.ts +4 -4
  78. package/lib/db/buckets.js +4 -4
  79. package/lib/db/buckets.js.map +1 -1
  80. package/lib/db/index.d.ts +1 -1
  81. package/lib/db/index.js.map +1 -1
  82. package/lib/db/repositories/blobSidecars.js +1 -1
  83. package/lib/db/repositories/blobSidecars.js.map +1 -1
  84. package/lib/db/repositories/blobSidecarsArchive.js +1 -1
  85. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  86. package/lib/db/repositories/blockArchive.js +3 -2
  87. package/lib/db/repositories/blockArchive.js.map +1 -1
  88. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  89. package/lib/db/repositories/dataColumnSidecar.js +2 -2
  90. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  91. package/lib/db/repositories/dataColumnSidecarArchive.js +2 -2
  92. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  93. package/lib/db/repositories/index.d.ts +10 -10
  94. package/lib/db/repositories/index.js +9 -9
  95. package/lib/db/repositories/index.js.map +1 -1
  96. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  97. package/lib/eth1/eth1DepositsCache.js.map +1 -1
  98. package/lib/eth1/provider/eth1Provider.d.ts +2 -1
  99. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  100. package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
  101. package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
  102. package/lib/eth1/provider/jwt.js.map +1 -1
  103. package/lib/eth1/utils/deposits.js.map +1 -1
  104. package/lib/execution/builder/index.js.map +1 -1
  105. package/lib/execution/engine/interface.js.map +1 -1
  106. package/lib/execution/engine/types.js.map +1 -1
  107. package/lib/execution/engine/utils.js +2 -1
  108. package/lib/execution/engine/utils.js.map +1 -1
  109. package/lib/execution/index.d.ts +2 -2
  110. package/lib/execution/index.js +2 -2
  111. package/lib/execution/index.js.map +1 -1
  112. package/lib/index.d.ts +6 -6
  113. package/lib/index.js +5 -5
  114. package/lib/index.js.map +1 -1
  115. package/lib/metrics/index.d.ts +1 -1
  116. package/lib/metrics/index.js +1 -1
  117. package/lib/metrics/index.js.map +1 -1
  118. package/lib/metrics/metrics/lodestar.d.ts +1 -5
  119. package/lib/metrics/metrics/lodestar.js +1 -6
  120. package/lib/metrics/metrics/lodestar.js.map +1 -1
  121. package/lib/metrics/metrics.d.ts +1 -1
  122. package/lib/metrics/metrics.js.map +1 -1
  123. package/lib/metrics/nodeJsMetrics.js +1 -1
  124. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  125. package/lib/metrics/server/http.d.ts +1 -1
  126. package/lib/metrics/utils/avgMinMax.d.ts +1 -1
  127. package/lib/metrics/utils/gauge.d.ts +1 -1
  128. package/lib/metrics/utils/gauge.js.map +1 -1
  129. package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
  130. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  131. package/lib/monitoring/service.js.map +1 -1
  132. package/lib/monitoring/system.js.map +1 -1
  133. package/lib/network/core/networkCore.d.ts +1 -1
  134. package/lib/network/core/networkCore.js +1 -1
  135. package/lib/network/core/networkCore.js.map +1 -1
  136. package/lib/network/core/networkCoreWorker.js +1 -1
  137. package/lib/network/core/networkCoreWorker.js.map +1 -1
  138. package/lib/network/core/networkCoreWorkerHandler.d.ts +1 -1
  139. package/lib/network/core/networkCoreWorkerHandler.js +4 -10
  140. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  141. package/lib/network/discv5/index.d.ts +2 -2
  142. package/lib/network/discv5/index.js +2 -5
  143. package/lib/network/discv5/index.js.map +1 -1
  144. package/lib/network/discv5/worker.js +3 -3
  145. package/lib/network/discv5/worker.js.map +1 -1
  146. package/lib/network/gossip/encoding.d.ts +1 -1
  147. package/lib/network/gossip/encoding.js +2 -2
  148. package/lib/network/gossip/encoding.js.map +1 -1
  149. package/lib/network/gossip/gossipsub.d.ts +1 -2
  150. package/lib/network/gossip/gossipsub.js +17 -36
  151. package/lib/network/gossip/gossipsub.js.map +1 -1
  152. package/lib/network/gossip/index.d.ts +2 -2
  153. package/lib/network/gossip/index.js +2 -2
  154. package/lib/network/gossip/index.js.map +1 -1
  155. package/lib/network/gossip/interface.d.ts +2 -2
  156. package/lib/network/gossip/metrics.d.ts +7 -15
  157. package/lib/network/gossip/metrics.js +6 -16
  158. package/lib/network/gossip/metrics.js.map +1 -1
  159. package/lib/network/gossip/topic.d.ts +60 -80
  160. package/lib/network/gossip/topic.js.map +1 -1
  161. package/lib/network/index.d.ts +3 -3
  162. package/lib/network/index.js +3 -3
  163. package/lib/network/index.js.map +1 -1
  164. package/lib/network/interface.d.ts +1 -1
  165. package/lib/network/libp2p/index.js +3 -11
  166. package/lib/network/libp2p/index.js.map +1 -1
  167. package/lib/network/metadata.js +1 -2
  168. package/lib/network/metadata.js.map +1 -1
  169. package/lib/network/network.d.ts +1 -1
  170. package/lib/network/network.js +4 -2
  171. package/lib/network/network.js.map +1 -1
  172. package/lib/network/peers/datastore.d.ts +2 -2
  173. package/lib/network/peers/datastore.js +2 -2
  174. package/lib/network/peers/datastore.js.map +1 -1
  175. package/lib/network/peers/discover.js +2 -1
  176. package/lib/network/peers/discover.js.map +1 -1
  177. package/lib/network/peers/peerManager.js.map +1 -1
  178. package/lib/network/peers/score/index.d.ts +1 -1
  179. package/lib/network/peers/score/index.js +1 -1
  180. package/lib/network/peers/score/index.js.map +1 -1
  181. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  182. package/lib/network/processor/gossipHandlers.js +7 -3
  183. package/lib/network/processor/gossipHandlers.js.map +1 -1
  184. package/lib/network/processor/index.d.ts +1 -1
  185. package/lib/network/processor/index.js +5 -3
  186. package/lib/network/processor/index.js.map +1 -1
  187. package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
  188. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  189. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  190. package/lib/network/reqresp/index.d.ts +1 -1
  191. package/lib/network/reqresp/index.js +1 -1
  192. package/lib/network/reqresp/index.js.map +1 -1
  193. package/lib/network/reqresp/rateLimit.js +2 -2
  194. package/lib/network/reqresp/rateLimit.js.map +1 -1
  195. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  196. package/lib/network/subnets/interface.js +1 -1
  197. package/lib/network/subnets/interface.js.map +1 -1
  198. package/lib/network/subnets/util.js +2 -1
  199. package/lib/network/subnets/util.js.map +1 -1
  200. package/lib/node/nodejs.d.ts +1 -1
  201. package/lib/node/nodejs.js.map +1 -1
  202. package/lib/node/notifier.js +2 -1
  203. package/lib/node/notifier.js.map +1 -1
  204. package/lib/node/options.js.map +1 -1
  205. package/lib/node/utils/interop/state.js +2 -1
  206. package/lib/node/utils/interop/state.js.map +1 -1
  207. package/lib/sync/backfill/backfill.d.ts +1 -1
  208. package/lib/sync/backfill/backfill.js +1 -1
  209. package/lib/sync/backfill/backfill.js.map +1 -1
  210. package/lib/sync/range/batch.d.ts +2 -2
  211. package/lib/sync/range/batch.js +1 -1
  212. package/lib/sync/range/batch.js.map +1 -1
  213. package/lib/sync/range/chain.d.ts +1 -1
  214. package/lib/sync/range/chain.js.map +1 -1
  215. package/lib/sync/range/range.d.ts +1 -1
  216. package/lib/sync/range/range.js.map +1 -1
  217. package/lib/sync/sync.d.ts +2 -1
  218. package/lib/sync/sync.js.map +1 -1
  219. package/lib/sync/types.d.ts +1 -0
  220. package/lib/sync/types.js.map +1 -1
  221. package/lib/sync/unknownBlock.js +15 -13
  222. package/lib/sync/unknownBlock.js.map +1 -1
  223. package/lib/sync/utils/downloadByRange.d.ts +1 -1
  224. package/lib/sync/utils/downloadByRoot.d.ts +2 -4
  225. package/lib/sync/utils/downloadByRoot.js +9 -36
  226. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  227. package/lib/util/blobs.js +3 -5
  228. package/lib/util/blobs.js.map +1 -1
  229. package/lib/util/clock.d.ts +1 -1
  230. package/lib/util/clock.js.map +1 -1
  231. package/lib/util/dataColumns.d.ts +15 -9
  232. package/lib/util/dataColumns.js +29 -16
  233. package/lib/util/dataColumns.js.map +1 -1
  234. package/lib/util/execution.d.ts +3 -12
  235. package/lib/util/execution.js +13 -46
  236. package/lib/util/execution.js.map +1 -1
  237. package/lib/util/queue/index.d.ts +1 -1
  238. package/lib/util/queue/index.js +1 -1
  239. package/lib/util/queue/index.js.map +1 -1
  240. package/package.json +21 -37
  241. package/lib/api/impl/api.d.ts.map +0 -1
  242. package/lib/api/impl/beacon/blocks/index.d.ts.map +0 -1
  243. package/lib/api/impl/beacon/blocks/utils.d.ts.map +0 -1
  244. package/lib/api/impl/beacon/index.d.ts.map +0 -1
  245. package/lib/api/impl/beacon/pool/index.d.ts.map +0 -1
  246. package/lib/api/impl/beacon/rewards/index.d.ts.map +0 -1
  247. package/lib/api/impl/beacon/state/index.d.ts.map +0 -1
  248. package/lib/api/impl/beacon/state/utils.d.ts.map +0 -1
  249. package/lib/api/impl/config/constants.d.ts.map +0 -1
  250. package/lib/api/impl/config/index.d.ts.map +0 -1
  251. package/lib/api/impl/debug/index.d.ts.map +0 -1
  252. package/lib/api/impl/errors.d.ts.map +0 -1
  253. package/lib/api/impl/events/index.d.ts.map +0 -1
  254. package/lib/api/impl/index.d.ts.map +0 -1
  255. package/lib/api/impl/lightclient/index.d.ts.map +0 -1
  256. package/lib/api/impl/lodestar/index.d.ts.map +0 -1
  257. package/lib/api/impl/node/index.d.ts.map +0 -1
  258. package/lib/api/impl/node/utils.d.ts.map +0 -1
  259. package/lib/api/impl/proof/index.d.ts.map +0 -1
  260. package/lib/api/impl/types.d.ts.map +0 -1
  261. package/lib/api/impl/utils.d.ts.map +0 -1
  262. package/lib/api/impl/validator/index.d.ts.map +0 -1
  263. package/lib/api/impl/validator/utils.d.ts.map +0 -1
  264. package/lib/api/index.d.ts.map +0 -1
  265. package/lib/api/options.d.ts.map +0 -1
  266. package/lib/api/rest/activeSockets.d.ts.map +0 -1
  267. package/lib/api/rest/base.d.ts.map +0 -1
  268. package/lib/api/rest/index.d.ts.map +0 -1
  269. package/lib/api/rest/swaggerUI.d.ts.map +0 -1
  270. package/lib/bun-wrappers/prometheus-gc-stats.d.ts +0 -2
  271. package/lib/bun-wrappers/prometheus-gc-stats.d.ts.map +0 -1
  272. package/lib/bun-wrappers/prometheus-gc-stats.js +0 -8
  273. package/lib/bun-wrappers/prometheus-gc-stats.js.map +0 -1
  274. package/lib/chain/ColumnReconstructionTracker.d.ts.map +0 -1
  275. package/lib/chain/GetBlobsTracker.d.ts.map +0 -1
  276. package/lib/chain/archiveStore/archiveStore.d.ts.map +0 -1
  277. package/lib/chain/archiveStore/constants.d.ts.map +0 -1
  278. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +0 -1
  279. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +0 -1
  280. package/lib/chain/archiveStore/historicalState/metrics.d.ts.map +0 -1
  281. package/lib/chain/archiveStore/historicalState/types.d.ts.map +0 -1
  282. package/lib/chain/archiveStore/historicalState/worker.d.ts.map +0 -1
  283. package/lib/chain/archiveStore/index.d.ts.map +0 -1
  284. package/lib/chain/archiveStore/interface.d.ts.map +0 -1
  285. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +0 -1
  286. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +0 -1
  287. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +0 -1
  288. package/lib/chain/archiveStore/utils/updateBackfillRange.d.ts.map +0 -1
  289. package/lib/chain/balancesCache.d.ts.map +0 -1
  290. package/lib/chain/beaconProposerCache.d.ts.map +0 -1
  291. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +0 -1
  292. package/lib/chain/blocks/blockInput/errors.d.ts.map +0 -1
  293. package/lib/chain/blocks/blockInput/index.d.ts.map +0 -1
  294. package/lib/chain/blocks/blockInput/types.d.ts.map +0 -1
  295. package/lib/chain/blocks/blockInput/utils.d.ts.map +0 -1
  296. package/lib/chain/blocks/importBlock.d.ts.map +0 -1
  297. package/lib/chain/blocks/index.d.ts.map +0 -1
  298. package/lib/chain/blocks/types.d.ts.map +0 -1
  299. package/lib/chain/blocks/utils/blowfishBanner.d.ts.map +0 -1
  300. package/lib/chain/blocks/utils/chainSegment.d.ts.map +0 -1
  301. package/lib/chain/blocks/utils/checkpoint.d.ts.map +0 -1
  302. package/lib/chain/blocks/utils/giraffeBanner.d.ts.map +0 -1
  303. package/lib/chain/blocks/utils/ownBanner.d.ts.map +0 -1
  304. package/lib/chain/blocks/utils/pandaMergeTransitionBanner.d.ts.map +0 -1
  305. package/lib/chain/blocks/utils/zebraBanner.d.ts.map +0 -1
  306. package/lib/chain/blocks/verifyBlock.d.ts.map +0 -1
  307. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +0 -1
  308. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +0 -1
  309. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +0 -1
  310. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +0 -1
  311. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +0 -1
  312. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +0 -1
  313. package/lib/chain/bls/index.d.ts.map +0 -1
  314. package/lib/chain/bls/interface.d.ts.map +0 -1
  315. package/lib/chain/bls/maybeBatch.d.ts.map +0 -1
  316. package/lib/chain/bls/multithread/index.d.ts.map +0 -1
  317. package/lib/chain/bls/multithread/jobItem.d.ts.map +0 -1
  318. package/lib/chain/bls/multithread/poolSize.d.ts.map +0 -1
  319. package/lib/chain/bls/multithread/types.d.ts.map +0 -1
  320. package/lib/chain/bls/multithread/utils.d.ts.map +0 -1
  321. package/lib/chain/bls/multithread/worker.d.ts.map +0 -1
  322. package/lib/chain/bls/singleThread.d.ts.map +0 -1
  323. package/lib/chain/bls/utils.d.ts.map +0 -1
  324. package/lib/chain/chain.d.ts.map +0 -1
  325. package/lib/chain/emitter.d.ts.map +0 -1
  326. package/lib/chain/errors/attestationError.d.ts.map +0 -1
  327. package/lib/chain/errors/attesterSlashingError.d.ts.map +0 -1
  328. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  329. package/lib/chain/errors/blockError.d.ts.map +0 -1
  330. package/lib/chain/errors/blsToExecutionChangeError.d.ts.map +0 -1
  331. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +0 -1
  332. package/lib/chain/errors/gossipValidation.d.ts.map +0 -1
  333. package/lib/chain/errors/index.d.ts.map +0 -1
  334. package/lib/chain/errors/lightClientError.d.ts.map +0 -1
  335. package/lib/chain/errors/proposerSlashingError.d.ts.map +0 -1
  336. package/lib/chain/errors/syncCommitteeError.d.ts.map +0 -1
  337. package/lib/chain/errors/voluntaryExitError.d.ts.map +0 -1
  338. package/lib/chain/forkChoice/index.d.ts.map +0 -1
  339. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  340. package/lib/chain/genesis/interface.d.ts.map +0 -1
  341. package/lib/chain/index.d.ts.map +0 -1
  342. package/lib/chain/initState.d.ts.map +0 -1
  343. package/lib/chain/interface.d.ts.map +0 -1
  344. package/lib/chain/lightClient/index.d.ts.map +0 -1
  345. package/lib/chain/lightClient/proofs.d.ts.map +0 -1
  346. package/lib/chain/lightClient/types.d.ts.map +0 -1
  347. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +0 -1
  348. package/lib/chain/opPools/attestationPool.d.ts.map +0 -1
  349. package/lib/chain/opPools/index.d.ts.map +0 -1
  350. package/lib/chain/opPools/opPool.d.ts.map +0 -1
  351. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +0 -1
  352. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +0 -1
  353. package/lib/chain/opPools/types.d.ts.map +0 -1
  354. package/lib/chain/opPools/utils.d.ts.map +0 -1
  355. package/lib/chain/options.d.ts.map +0 -1
  356. package/lib/chain/prepareNextSlot.d.ts.map +0 -1
  357. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +0 -1
  358. package/lib/chain/produceBlock/index.d.ts.map +0 -1
  359. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +0 -1
  360. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts.map +0 -1
  361. package/lib/chain/regen/errors.d.ts.map +0 -1
  362. package/lib/chain/regen/index.d.ts.map +0 -1
  363. package/lib/chain/regen/interface.d.ts.map +0 -1
  364. package/lib/chain/regen/queued.d.ts.map +0 -1
  365. package/lib/chain/regen/regen.d.ts.map +0 -1
  366. package/lib/chain/reprocess.d.ts.map +0 -1
  367. package/lib/chain/rewards/attestationsRewards.d.ts.map +0 -1
  368. package/lib/chain/rewards/blockRewards.d.ts.map +0 -1
  369. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +0 -1
  370. package/lib/chain/seenCache/index.d.ts.map +0 -1
  371. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +0 -1
  372. package/lib/chain/seenCache/seenAttestationData.d.ts.map +0 -1
  373. package/lib/chain/seenCache/seenAttesters.d.ts.map +0 -1
  374. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +0 -1
  375. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +0 -1
  376. package/lib/chain/seenCache/seenCommittee.d.ts.map +0 -1
  377. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +0 -1
  378. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +0 -1
  379. package/lib/chain/serializeState.d.ts.map +0 -1
  380. package/lib/chain/shufflingCache.d.ts.map +0 -1
  381. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  382. package/lib/chain/stateCache/datastore/db.d.ts.map +0 -1
  383. package/lib/chain/stateCache/datastore/file.d.ts.map +0 -1
  384. package/lib/chain/stateCache/datastore/index.d.ts.map +0 -1
  385. package/lib/chain/stateCache/datastore/types.d.ts.map +0 -1
  386. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +0 -1
  387. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  388. package/lib/chain/stateCache/index.d.ts.map +0 -1
  389. package/lib/chain/stateCache/mapMetrics.d.ts.map +0 -1
  390. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +0 -1
  391. package/lib/chain/stateCache/types.d.ts.map +0 -1
  392. package/lib/chain/validation/aggregateAndProof.d.ts.map +0 -1
  393. package/lib/chain/validation/attestation.d.ts.map +0 -1
  394. package/lib/chain/validation/attesterSlashing.d.ts.map +0 -1
  395. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  396. package/lib/chain/validation/block.d.ts.map +0 -1
  397. package/lib/chain/validation/blsToExecutionChange.d.ts.map +0 -1
  398. package/lib/chain/validation/dataColumnSidecar.d.ts.map +0 -1
  399. package/lib/chain/validation/index.d.ts.map +0 -1
  400. package/lib/chain/validation/lightClientFinalityUpdate.d.ts.map +0 -1
  401. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts.map +0 -1
  402. package/lib/chain/validation/proposerSlashing.d.ts.map +0 -1
  403. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +0 -1
  404. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +0 -1
  405. package/lib/chain/validation/signatureSets/index.d.ts.map +0 -1
  406. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +0 -1
  407. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +0 -1
  408. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +0 -1
  409. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +0 -1
  410. package/lib/chain/validation/syncCommittee.d.ts.map +0 -1
  411. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +0 -1
  412. package/lib/chain/validation/voluntaryExit.d.ts.map +0 -1
  413. package/lib/chain/validatorMonitor.d.ts.map +0 -1
  414. package/lib/constants/constants.d.ts.map +0 -1
  415. package/lib/constants/index.d.ts.map +0 -1
  416. package/lib/constants/network.d.ts.map +0 -1
  417. package/lib/db/beacon.d.ts.map +0 -1
  418. package/lib/db/buckets.d.ts.map +0 -1
  419. package/lib/db/index.d.ts.map +0 -1
  420. package/lib/db/interface.d.ts.map +0 -1
  421. package/lib/db/options.d.ts.map +0 -1
  422. package/lib/db/repositories/attesterSlashing.d.ts.map +0 -1
  423. package/lib/db/repositories/backfilledRanges.d.ts.map +0 -1
  424. package/lib/db/repositories/blobSidecars.d.ts.map +0 -1
  425. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +0 -1
  426. package/lib/db/repositories/block.d.ts.map +0 -1
  427. package/lib/db/repositories/blockArchive.d.ts.map +0 -1
  428. package/lib/db/repositories/blockArchiveIndex.d.ts.map +0 -1
  429. package/lib/db/repositories/blsToExecutionChange.d.ts.map +0 -1
  430. package/lib/db/repositories/checkpointState.d.ts.map +0 -1
  431. package/lib/db/repositories/dataColumnSidecar.d.ts.map +0 -1
  432. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +0 -1
  433. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  434. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  435. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  436. package/lib/db/repositories/index.d.ts.map +0 -1
  437. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +0 -1
  438. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +0 -1
  439. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +0 -1
  440. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +0 -1
  441. package/lib/db/repositories/proposerSlashing.d.ts.map +0 -1
  442. package/lib/db/repositories/stateArchive.d.ts.map +0 -1
  443. package/lib/db/repositories/stateArchiveIndex.d.ts.map +0 -1
  444. package/lib/db/repositories/voluntaryExit.d.ts.map +0 -1
  445. package/lib/db/single/index.d.ts.map +0 -1
  446. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  447. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  448. package/lib/eth1/errors.d.ts.map +0 -1
  449. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  450. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  451. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  452. package/lib/eth1/eth1MergeBlockTracker.d.ts.map +0 -1
  453. package/lib/eth1/index.d.ts.map +0 -1
  454. package/lib/eth1/interface.d.ts.map +0 -1
  455. package/lib/eth1/options.d.ts.map +0 -1
  456. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  457. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  458. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  459. package/lib/eth1/provider/utils.d.ts.map +0 -1
  460. package/lib/eth1/stream.d.ts.map +0 -1
  461. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  462. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  463. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  464. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  465. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  466. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  467. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  468. package/lib/execution/builder/cache.d.ts.map +0 -1
  469. package/lib/execution/builder/http.d.ts.map +0 -1
  470. package/lib/execution/builder/index.d.ts.map +0 -1
  471. package/lib/execution/builder/interface.d.ts.map +0 -1
  472. package/lib/execution/builder/utils.d.ts.map +0 -1
  473. package/lib/execution/engine/disabled.d.ts.map +0 -1
  474. package/lib/execution/engine/http.d.ts.map +0 -1
  475. package/lib/execution/engine/index.d.ts.map +0 -1
  476. package/lib/execution/engine/interface.d.ts.map +0 -1
  477. package/lib/execution/engine/mock.d.ts.map +0 -1
  478. package/lib/execution/engine/payloadIdCache.d.ts.map +0 -1
  479. package/lib/execution/engine/types.d.ts.map +0 -1
  480. package/lib/execution/engine/utils.d.ts.map +0 -1
  481. package/lib/execution/index.d.ts.map +0 -1
  482. package/lib/index.d.ts.map +0 -1
  483. package/lib/metrics/index.d.ts.map +0 -1
  484. package/lib/metrics/metrics/beacon.d.ts.map +0 -1
  485. package/lib/metrics/metrics/lodestar.d.ts.map +0 -1
  486. package/lib/metrics/metrics.d.ts.map +0 -1
  487. package/lib/metrics/nodeJsMetrics.d.ts.map +0 -1
  488. package/lib/metrics/options.d.ts.map +0 -1
  489. package/lib/metrics/server/http.d.ts.map +0 -1
  490. package/lib/metrics/server/index.d.ts.map +0 -1
  491. package/lib/metrics/utils/avgMinMax.d.ts.map +0 -1
  492. package/lib/metrics/utils/gauge.d.ts.map +0 -1
  493. package/lib/metrics/utils/registryMetricCreator.d.ts.map +0 -1
  494. package/lib/monitoring/clientStats.d.ts.map +0 -1
  495. package/lib/monitoring/index.d.ts.map +0 -1
  496. package/lib/monitoring/options.d.ts.map +0 -1
  497. package/lib/monitoring/properties.d.ts.map +0 -1
  498. package/lib/monitoring/service.d.ts.map +0 -1
  499. package/lib/monitoring/system.d.ts.map +0 -1
  500. package/lib/monitoring/types.d.ts.map +0 -1
  501. package/lib/network/core/events.d.ts.map +0 -1
  502. package/lib/network/core/index.d.ts.map +0 -1
  503. package/lib/network/core/metrics.d.ts.map +0 -1
  504. package/lib/network/core/networkCore.d.ts.map +0 -1
  505. package/lib/network/core/networkCoreWorker.d.ts.map +0 -1
  506. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +0 -1
  507. package/lib/network/core/types.d.ts.map +0 -1
  508. package/lib/network/discv5/index.d.ts.map +0 -1
  509. package/lib/network/discv5/types.d.ts.map +0 -1
  510. package/lib/network/discv5/utils.d.ts.map +0 -1
  511. package/lib/network/discv5/worker.d.ts.map +0 -1
  512. package/lib/network/events.d.ts.map +0 -1
  513. package/lib/network/forks.d.ts.map +0 -1
  514. package/lib/network/gossip/constants.d.ts.map +0 -1
  515. package/lib/network/gossip/encoding.d.ts.map +0 -1
  516. package/lib/network/gossip/errors.d.ts.map +0 -1
  517. package/lib/network/gossip/gossipsub.d.ts.map +0 -1
  518. package/lib/network/gossip/index.d.ts.map +0 -1
  519. package/lib/network/gossip/interface.d.ts.map +0 -1
  520. package/lib/network/gossip/metrics.d.ts.map +0 -1
  521. package/lib/network/gossip/scoringParameters.d.ts.map +0 -1
  522. package/lib/network/gossip/topic.d.ts.map +0 -1
  523. package/lib/network/index.d.ts.map +0 -1
  524. package/lib/network/interface.d.ts.map +0 -1
  525. package/lib/network/libp2p/error.d.ts.map +0 -1
  526. package/lib/network/libp2p/index.d.ts.map +0 -1
  527. package/lib/network/metadata.d.ts.map +0 -1
  528. package/lib/network/network.d.ts.map +0 -1
  529. package/lib/network/networkConfig.d.ts.map +0 -1
  530. package/lib/network/options.d.ts.map +0 -1
  531. package/lib/network/peers/client.d.ts.map +0 -1
  532. package/lib/network/peers/datastore.d.ts.map +0 -1
  533. package/lib/network/peers/discover.d.ts.map +0 -1
  534. package/lib/network/peers/index.d.ts.map +0 -1
  535. package/lib/network/peers/peerManager.d.ts.map +0 -1
  536. package/lib/network/peers/peersData.d.ts.map +0 -1
  537. package/lib/network/peers/score/constants.d.ts.map +0 -1
  538. package/lib/network/peers/score/index.d.ts.map +0 -1
  539. package/lib/network/peers/score/interface.d.ts.map +0 -1
  540. package/lib/network/peers/score/score.d.ts.map +0 -1
  541. package/lib/network/peers/score/store.d.ts.map +0 -1
  542. package/lib/network/peers/score/utils.d.ts.map +0 -1
  543. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +0 -1
  544. package/lib/network/peers/utils/enrSubnetsDeserialize.d.ts.map +0 -1
  545. package/lib/network/peers/utils/getConnectedPeerIds.d.ts.map +0 -1
  546. package/lib/network/peers/utils/index.d.ts.map +0 -1
  547. package/lib/network/peers/utils/prioritizePeers.d.ts.map +0 -1
  548. package/lib/network/peers/utils/subnetMap.d.ts.map +0 -1
  549. package/lib/network/processor/aggregatorTracker.d.ts.map +0 -1
  550. package/lib/network/processor/extractSlotRootFns.d.ts.map +0 -1
  551. package/lib/network/processor/gossipHandlers.d.ts.map +0 -1
  552. package/lib/network/processor/gossipQueues/index.d.ts.map +0 -1
  553. package/lib/network/processor/gossipQueues/indexed.d.ts.map +0 -1
  554. package/lib/network/processor/gossipQueues/linear.d.ts.map +0 -1
  555. package/lib/network/processor/gossipQueues/types.d.ts.map +0 -1
  556. package/lib/network/processor/gossipValidatorFn.d.ts.map +0 -1
  557. package/lib/network/processor/index.d.ts.map +0 -1
  558. package/lib/network/processor/types.d.ts.map +0 -1
  559. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +0 -1
  560. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +0 -1
  561. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +0 -1
  562. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  563. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  564. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +0 -1
  565. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +0 -1
  566. package/lib/network/reqresp/handlers/index.d.ts.map +0 -1
  567. package/lib/network/reqresp/handlers/lightClientBootstrap.d.ts.map +0 -1
  568. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.d.ts.map +0 -1
  569. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.d.ts.map +0 -1
  570. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.d.ts.map +0 -1
  571. package/lib/network/reqresp/index.d.ts.map +0 -1
  572. package/lib/network/reqresp/interface.d.ts.map +0 -1
  573. package/lib/network/reqresp/protocols.d.ts.map +0 -1
  574. package/lib/network/reqresp/rateLimit.d.ts.map +0 -1
  575. package/lib/network/reqresp/score.d.ts.map +0 -1
  576. package/lib/network/reqresp/types.d.ts.map +0 -1
  577. package/lib/network/reqresp/utils/collect.d.ts.map +0 -1
  578. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts.map +0 -1
  579. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +0 -1
  580. package/lib/network/statusCache.d.ts.map +0 -1
  581. package/lib/network/subnets/attnetsService.d.ts.map +0 -1
  582. package/lib/network/subnets/index.d.ts.map +0 -1
  583. package/lib/network/subnets/interface.d.ts.map +0 -1
  584. package/lib/network/subnets/syncnetsService.d.ts.map +0 -1
  585. package/lib/network/subnets/util.d.ts.map +0 -1
  586. package/lib/network/util.d.ts.map +0 -1
  587. package/lib/node/index.d.ts.map +0 -1
  588. package/lib/node/nodejs.d.ts.map +0 -1
  589. package/lib/node/notifier.d.ts.map +0 -1
  590. package/lib/node/options.d.ts.map +0 -1
  591. package/lib/node/utils/interop/deposits.d.ts.map +0 -1
  592. package/lib/node/utils/interop/state.d.ts.map +0 -1
  593. package/lib/node/utils/lightclient.d.ts.map +0 -1
  594. package/lib/node/utils/state.d.ts.map +0 -1
  595. package/lib/sync/backfill/backfill.d.ts.map +0 -1
  596. package/lib/sync/backfill/errors.d.ts.map +0 -1
  597. package/lib/sync/backfill/index.d.ts.map +0 -1
  598. package/lib/sync/backfill/verify.d.ts.map +0 -1
  599. package/lib/sync/constants.d.ts.map +0 -1
  600. package/lib/sync/index.d.ts.map +0 -1
  601. package/lib/sync/interface.d.ts.map +0 -1
  602. package/lib/sync/options.d.ts.map +0 -1
  603. package/lib/sync/range/batch.d.ts.map +0 -1
  604. package/lib/sync/range/chain.d.ts.map +0 -1
  605. package/lib/sync/range/range.d.ts.map +0 -1
  606. package/lib/sync/range/utils/batches.d.ts.map +0 -1
  607. package/lib/sync/range/utils/chainTarget.d.ts.map +0 -1
  608. package/lib/sync/range/utils/hashBlocks.d.ts.map +0 -1
  609. package/lib/sync/range/utils/index.d.ts.map +0 -1
  610. package/lib/sync/range/utils/peerBalancer.d.ts.map +0 -1
  611. package/lib/sync/range/utils/updateChains.d.ts.map +0 -1
  612. package/lib/sync/sync.d.ts.map +0 -1
  613. package/lib/sync/types.d.ts.map +0 -1
  614. package/lib/sync/unknownBlock.d.ts.map +0 -1
  615. package/lib/sync/utils/downloadByRange.d.ts.map +0 -1
  616. package/lib/sync/utils/downloadByRoot.d.ts.map +0 -1
  617. package/lib/sync/utils/pendingBlocksTree.d.ts.map +0 -1
  618. package/lib/sync/utils/remoteSyncType.d.ts.map +0 -1
  619. package/lib/util/address.d.ts.map +0 -1
  620. package/lib/util/array.d.ts.map +0 -1
  621. package/lib/util/asyncIterableToEvents.d.ts.map +0 -1
  622. package/lib/util/binarySearch.d.ts.map +0 -1
  623. package/lib/util/bitArray.d.ts.map +0 -1
  624. package/lib/util/blobs.d.ts.map +0 -1
  625. package/lib/util/bufferPool.d.ts.map +0 -1
  626. package/lib/util/bytes.d.ts.map +0 -1
  627. package/lib/util/chunkify.d.ts.map +0 -1
  628. package/lib/util/clock.d.ts.map +0 -1
  629. package/lib/util/dataColumns.d.ts.map +0 -1
  630. package/lib/util/dependentRoot.d.ts.map +0 -1
  631. package/lib/util/enum.d.ts.map +0 -1
  632. package/lib/util/error.d.ts.map +0 -1
  633. package/lib/util/eventLoop.d.ts.map +0 -1
  634. package/lib/util/execution.d.ts.map +0 -1
  635. package/lib/util/file.d.ts.map +0 -1
  636. package/lib/util/forkChoice.d.ts.map +0 -1
  637. package/lib/util/forkName.d.ts.map +0 -1
  638. package/lib/util/graffiti.d.ts.map +0 -1
  639. package/lib/util/hex.d.ts.map +0 -1
  640. package/lib/util/index.d.ts.map +0 -1
  641. package/lib/util/ip.d.ts.map +0 -1
  642. package/lib/util/itTrigger.d.ts.map +0 -1
  643. package/lib/util/kzg.d.ts.map +0 -1
  644. package/lib/util/map.d.ts.map +0 -1
  645. package/lib/util/metadata.d.ts.map +0 -1
  646. package/lib/util/multifork.d.ts.map +0 -1
  647. package/lib/util/numpy.d.ts.map +0 -1
  648. package/lib/util/peerId.d.ts.map +0 -1
  649. package/lib/util/profile.d.ts.map +0 -1
  650. package/lib/util/promises.d.ts.map +0 -1
  651. package/lib/util/queue/errors.d.ts.map +0 -1
  652. package/lib/util/queue/fnQueue.d.ts.map +0 -1
  653. package/lib/util/queue/index.d.ts.map +0 -1
  654. package/lib/util/queue/itemQueue.d.ts.map +0 -1
  655. package/lib/util/queue/options.d.ts.map +0 -1
  656. package/lib/util/serializedCache.d.ts.map +0 -1
  657. package/lib/util/set.d.ts.map +0 -1
  658. package/lib/util/shuffle.d.ts.map +0 -1
  659. package/lib/util/sortBy.d.ts.map +0 -1
  660. package/lib/util/sszBytes.d.ts.map +0 -1
  661. package/lib/util/strictEvents.d.ts.map +0 -1
  662. package/lib/util/time.d.ts.map +0 -1
  663. package/lib/util/timeSeries.d.ts.map +0 -1
  664. package/lib/util/types.d.ts.map +0 -1
  665. package/lib/util/workerEvents.d.ts.map +0 -1
  666. package/lib/util/wrapError.d.ts.map +0 -1
  667. package/src/api/impl/api.ts +0 -26
  668. package/src/api/impl/beacon/blocks/index.ts +0 -744
  669. package/src/api/impl/beacon/blocks/utils.ts +0 -75
  670. package/src/api/impl/beacon/index.ts +0 -35
  671. package/src/api/impl/beacon/pool/index.ts +0 -314
  672. package/src/api/impl/beacon/rewards/index.ts +0 -30
  673. package/src/api/impl/beacon/state/index.ts +0 -406
  674. package/src/api/impl/beacon/state/utils.ts +0 -189
  675. package/src/api/impl/config/constants.ts +0 -127
  676. package/src/api/impl/config/index.ts +0 -59
  677. package/src/api/impl/debug/index.ts +0 -131
  678. package/src/api/impl/errors.ts +0 -50
  679. package/src/api/impl/events/index.ts +0 -33
  680. package/src/api/impl/index.ts +0 -6
  681. package/src/api/impl/lightclient/index.ts +0 -64
  682. package/src/api/impl/lodestar/index.ts +0 -257
  683. package/src/api/impl/node/index.ts +0 -88
  684. package/src/api/impl/node/utils.ts +0 -51
  685. package/src/api/impl/proof/index.ts +0 -60
  686. package/src/api/impl/types.ts +0 -17
  687. package/src/api/impl/utils.ts +0 -25
  688. package/src/api/impl/validator/index.ts +0 -1538
  689. package/src/api/impl/validator/utils.ts +0 -85
  690. package/src/api/index.ts +0 -2
  691. package/src/api/options.ts +0 -16
  692. package/src/api/rest/activeSockets.ts +0 -109
  693. package/src/api/rest/base.ts +0 -216
  694. package/src/api/rest/index.ts +0 -63
  695. package/src/api/rest/swaggerUI.ts +0 -80
  696. package/src/bun-wrappers/prometheus-gc-stats.ts +0 -7
  697. package/src/chain/ColumnReconstructionTracker.ts +0 -90
  698. package/src/chain/GetBlobsTracker.ts +0 -115
  699. package/src/chain/archiveStore/archiveStore.ts +0 -222
  700. package/src/chain/archiveStore/constants.ts +0 -5
  701. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +0 -116
  702. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +0 -68
  703. package/src/chain/archiveStore/historicalState/metrics.ts +0 -214
  704. package/src/chain/archiveStore/historicalState/types.ts +0 -41
  705. package/src/chain/archiveStore/historicalState/worker.ts +0 -77
  706. package/src/chain/archiveStore/index.ts +0 -3
  707. package/src/chain/archiveStore/interface.ts +0 -75
  708. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +0 -138
  709. package/src/chain/archiveStore/utils/archiveBlocks.ts +0 -437
  710. package/src/chain/archiveStore/utils/pruneHistory.ts +0 -56
  711. package/src/chain/archiveStore/utils/updateBackfillRange.ts +0 -50
  712. package/src/chain/balancesCache.ts +0 -52
  713. package/src/chain/beaconProposerCache.ts +0 -43
  714. package/src/chain/blocks/blockInput/blockInput.ts +0 -851
  715. package/src/chain/blocks/blockInput/errors.ts +0 -48
  716. package/src/chain/blocks/blockInput/index.ts +0 -4
  717. package/src/chain/blocks/blockInput/types.ts +0 -145
  718. package/src/chain/blocks/blockInput/utils.ts +0 -21
  719. package/src/chain/blocks/importBlock.ts +0 -603
  720. package/src/chain/blocks/index.ts +0 -179
  721. package/src/chain/blocks/types.ts +0 -101
  722. package/src/chain/blocks/utils/blowfishBanner.ts +0 -28
  723. package/src/chain/blocks/utils/chainSegment.ts +0 -29
  724. package/src/chain/blocks/utils/checkpoint.ts +0 -25
  725. package/src/chain/blocks/utils/giraffeBanner.ts +0 -30
  726. package/src/chain/blocks/utils/ownBanner.ts +0 -20
  727. package/src/chain/blocks/utils/pandaMergeTransitionBanner.ts +0 -43
  728. package/src/chain/blocks/utils/zebraBanner.ts +0 -45
  729. package/src/chain/blocks/verifyBlock.ts +0 -242
  730. package/src/chain/blocks/verifyBlocksDataAvailability.ts +0 -34
  731. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +0 -438
  732. package/src/chain/blocks/verifyBlocksSanityChecks.ts +0 -129
  733. package/src/chain/blocks/verifyBlocksSignatures.ts +0 -105
  734. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +0 -114
  735. package/src/chain/blocks/writeBlockInputToDb.ts +0 -128
  736. package/src/chain/bls/index.ts +0 -4
  737. package/src/chain/bls/interface.ts +0 -68
  738. package/src/chain/bls/maybeBatch.ts +0 -45
  739. package/src/chain/bls/multithread/index.ts +0 -582
  740. package/src/chain/bls/multithread/jobItem.ts +0 -119
  741. package/src/chain/bls/multithread/poolSize.ts +0 -16
  742. package/src/chain/bls/multithread/types.ts +0 -38
  743. package/src/chain/bls/multithread/utils.ts +0 -19
  744. package/src/chain/bls/multithread/worker.ts +0 -114
  745. package/src/chain/bls/singleThread.ts +0 -87
  746. package/src/chain/bls/utils.ts +0 -30
  747. package/src/chain/chain.ts +0 -1365
  748. package/src/chain/emitter.ts +0 -113
  749. package/src/chain/errors/attestationError.ts +0 -194
  750. package/src/chain/errors/attesterSlashingError.ts +0 -11
  751. package/src/chain/errors/blobSidecarError.ts +0 -60
  752. package/src/chain/errors/blockError.ts +0 -166
  753. package/src/chain/errors/blsToExecutionChangeError.ts +0 -13
  754. package/src/chain/errors/dataColumnSidecarError.ts +0 -80
  755. package/src/chain/errors/gossipValidation.ts +0 -20
  756. package/src/chain/errors/index.ts +0 -10
  757. package/src/chain/errors/lightClientError.ts +0 -30
  758. package/src/chain/errors/proposerSlashingError.ts +0 -11
  759. package/src/chain/errors/syncCommitteeError.ts +0 -36
  760. package/src/chain/errors/voluntaryExitError.ts +0 -13
  761. package/src/chain/forkChoice/index.ts +0 -112
  762. package/src/chain/genesis/genesis.ts +0 -190
  763. package/src/chain/genesis/interface.ts +0 -14
  764. package/src/chain/index.ts +0 -6
  765. package/src/chain/initState.ts +0 -221
  766. package/src/chain/interface.ts +0 -280
  767. package/src/chain/lightClient/index.ts +0 -764
  768. package/src/chain/lightClient/proofs.ts +0 -85
  769. package/src/chain/lightClient/types.ts +0 -33
  770. package/src/chain/opPools/aggregatedAttestationPool.ts +0 -1063
  771. package/src/chain/opPools/attestationPool.ts +0 -283
  772. package/src/chain/opPools/index.ts +0 -5
  773. package/src/chain/opPools/opPool.ts +0 -462
  774. package/src/chain/opPools/syncCommitteeMessagePool.ts +0 -167
  775. package/src/chain/opPools/syncContributionAndProofPool.ts +0 -240
  776. package/src/chain/opPools/types.ts +0 -35
  777. package/src/chain/opPools/utils.ts +0 -65
  778. package/src/chain/options.ts +0 -138
  779. package/src/chain/prepareNextSlot.ts +0 -277
  780. package/src/chain/produceBlock/computeNewStateRoot.ts +0 -55
  781. package/src/chain/produceBlock/index.ts +0 -2
  782. package/src/chain/produceBlock/produceBlockBody.ts +0 -797
  783. package/src/chain/produceBlock/validateBlobsAndKzgCommitments.ts +0 -54
  784. package/src/chain/regen/errors.ts +0 -30
  785. package/src/chain/regen/index.ts +0 -4
  786. package/src/chain/regen/interface.ts +0 -93
  787. package/src/chain/regen/queued.ts +0 -317
  788. package/src/chain/regen/regen.ts +0 -424
  789. package/src/chain/reprocess.ts +0 -161
  790. package/src/chain/rewards/attestationsRewards.ts +0 -196
  791. package/src/chain/rewards/blockRewards.ts +0 -150
  792. package/src/chain/rewards/syncCommitteeRewards.ts +0 -58
  793. package/src/chain/seenCache/index.ts +0 -5
  794. package/src/chain/seenCache/seenAggregateAndProof.ts +0 -120
  795. package/src/chain/seenCache/seenAttestationData.ts +0 -145
  796. package/src/chain/seenCache/seenAttesters.ts +0 -58
  797. package/src/chain/seenCache/seenBlockAttesters.ts +0 -18
  798. package/src/chain/seenCache/seenBlockProposers.ts +0 -48
  799. package/src/chain/seenCache/seenCommittee.ts +0 -43
  800. package/src/chain/seenCache/seenCommitteeContribution.ts +0 -104
  801. package/src/chain/seenCache/seenGossipBlockInput.ts +0 -373
  802. package/src/chain/serializeState.ts +0 -32
  803. package/src/chain/shufflingCache.ts +0 -238
  804. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  805. package/src/chain/stateCache/datastore/db.ts +0 -36
  806. package/src/chain/stateCache/datastore/file.ts +0 -53
  807. package/src/chain/stateCache/datastore/index.ts +0 -2
  808. package/src/chain/stateCache/datastore/types.ts +0 -13
  809. package/src/chain/stateCache/fifoBlockStateCache.ts +0 -208
  810. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  811. package/src/chain/stateCache/index.ts +0 -3
  812. package/src/chain/stateCache/mapMetrics.ts +0 -52
  813. package/src/chain/stateCache/persistentCheckpointsCache.ts +0 -835
  814. package/src/chain/stateCache/types.ts +0 -86
  815. package/src/chain/validation/aggregateAndProof.ts +0 -258
  816. package/src/chain/validation/attestation.ts +0 -885
  817. package/src/chain/validation/attesterSlashing.ts +0 -61
  818. package/src/chain/validation/blobSidecar.ts +0 -301
  819. package/src/chain/validation/block.ts +0 -188
  820. package/src/chain/validation/blsToExecutionChange.ts +0 -61
  821. package/src/chain/validation/dataColumnSidecar.ts +0 -381
  822. package/src/chain/validation/index.ts +0 -9
  823. package/src/chain/validation/lightClientFinalityUpdate.ts +0 -45
  824. package/src/chain/validation/lightClientOptimisticUpdate.ts +0 -67
  825. package/src/chain/validation/proposerSlashing.ts +0 -54
  826. package/src/chain/validation/signatureSets/aggregateAndProof.ts +0 -38
  827. package/src/chain/validation/signatureSets/contributionAndProof.ts +0 -27
  828. package/src/chain/validation/signatureSets/index.ts +0 -6
  829. package/src/chain/validation/signatureSets/selectionProof.ts +0 -27
  830. package/src/chain/validation/signatureSets/syncCommittee.ts +0 -22
  831. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +0 -18
  832. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +0 -27
  833. package/src/chain/validation/syncCommittee.ts +0 -165
  834. package/src/chain/validation/syncCommitteeContributionAndProof.ts +0 -122
  835. package/src/chain/validation/voluntaryExit.ts +0 -58
  836. package/src/chain/validatorMonitor.ts +0 -1299
  837. package/src/constants/constants.ts +0 -15
  838. package/src/constants/index.ts +0 -2
  839. package/src/constants/network.ts +0 -52
  840. package/src/db/beacon.ts +0 -113
  841. package/src/db/buckets.ts +0 -80
  842. package/src/db/index.ts +0 -2
  843. package/src/db/interface.ts +0 -76
  844. package/src/db/options.ts +0 -7
  845. package/src/db/repositories/attesterSlashing.ts +0 -38
  846. package/src/db/repositories/backfilledRanges.ts +0 -29
  847. package/src/db/repositories/blobSidecars.ts +0 -37
  848. package/src/db/repositories/blobSidecarsArchive.ts +0 -28
  849. package/src/db/repositories/block.ts +0 -33
  850. package/src/db/repositories/blockArchive.ts +0 -170
  851. package/src/db/repositories/blockArchiveIndex.ts +0 -45
  852. package/src/db/repositories/blsToExecutionChange.ts +0 -16
  853. package/src/db/repositories/checkpointState.ts +0 -31
  854. package/src/db/repositories/dataColumnSidecar.ts +0 -49
  855. package/src/db/repositories/dataColumnSidecarArchive.ts +0 -56
  856. package/src/db/repositories/depositDataRoot.ts +0 -80
  857. package/src/db/repositories/depositEvent.ts +0 -32
  858. package/src/db/repositories/eth1Data.ts +0 -33
  859. package/src/db/repositories/index.ts +0 -20
  860. package/src/db/repositories/lightclientBestUpdate.ts +0 -41
  861. package/src/db/repositories/lightclientCheckpointHeader.ts +0 -32
  862. package/src/db/repositories/lightclientSyncCommittee.ts +0 -16
  863. package/src/db/repositories/lightclientSyncCommitteeWitness.ts +0 -77
  864. package/src/db/repositories/proposerSlashing.ts +0 -15
  865. package/src/db/repositories/stateArchive.ts +0 -69
  866. package/src/db/repositories/stateArchiveIndex.ts +0 -18
  867. package/src/db/repositories/voluntaryExit.ts +0 -15
  868. package/src/db/single/index.ts +0 -2
  869. package/src/db/single/preGenesisState.ts +0 -37
  870. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  871. package/src/eth1/errors.ts +0 -40
  872. package/src/eth1/eth1DataCache.ts +0 -26
  873. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  874. package/src/eth1/eth1DepositsCache.ts +0 -141
  875. package/src/eth1/eth1MergeBlockTracker.ts +0 -328
  876. package/src/eth1/index.ts +0 -157
  877. package/src/eth1/interface.ts +0 -131
  878. package/src/eth1/options.ts +0 -28
  879. package/src/eth1/provider/eth1Provider.ts +0 -229
  880. package/src/eth1/provider/jsonRpcHttpClient.ts +0 -390
  881. package/src/eth1/provider/jwt.ts +0 -36
  882. package/src/eth1/provider/utils.ts +0 -136
  883. package/src/eth1/stream.ts +0 -75
  884. package/src/eth1/utils/depositContract.ts +0 -37
  885. package/src/eth1/utils/deposits.ts +0 -70
  886. package/src/eth1/utils/eth1Data.ts +0 -100
  887. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  888. package/src/eth1/utils/eth1Vote.ts +0 -142
  889. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  890. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  891. package/src/execution/builder/cache.ts +0 -39
  892. package/src/execution/builder/http.ts +0 -229
  893. package/src/execution/builder/index.ts +0 -27
  894. package/src/execution/builder/interface.ts +0 -49
  895. package/src/execution/builder/utils.ts +0 -19
  896. package/src/execution/engine/disabled.ts +0 -35
  897. package/src/execution/engine/http.ts +0 -644
  898. package/src/execution/engine/index.ts +0 -63
  899. package/src/execution/engine/interface.ts +0 -199
  900. package/src/execution/engine/mock.ts +0 -493
  901. package/src/execution/engine/payloadIdCache.ts +0 -54
  902. package/src/execution/engine/types.ts +0 -640
  903. package/src/execution/engine/utils.ts +0 -136
  904. package/src/execution/index.ts +0 -4
  905. package/src/index.ts +0 -20
  906. package/src/metrics/index.ts +0 -4
  907. package/src/metrics/metrics/beacon.ts +0 -390
  908. package/src/metrics/metrics/lodestar.ts +0 -1870
  909. package/src/metrics/metrics.ts +0 -43
  910. package/src/metrics/nodeJsMetrics.ts +0 -19
  911. package/src/metrics/options.ts +0 -22
  912. package/src/metrics/server/http.ts +0 -114
  913. package/src/metrics/server/index.ts +0 -1
  914. package/src/metrics/utils/avgMinMax.ts +0 -87
  915. package/src/metrics/utils/gauge.ts +0 -22
  916. package/src/metrics/utils/registryMetricCreator.ts +0 -41
  917. package/src/monitoring/clientStats.ts +0 -297
  918. package/src/monitoring/index.ts +0 -2
  919. package/src/monitoring/options.ts +0 -19
  920. package/src/monitoring/properties.ts +0 -152
  921. package/src/monitoring/service.ts +0 -235
  922. package/src/monitoring/system.ts +0 -146
  923. package/src/monitoring/types.ts +0 -21
  924. package/src/network/core/events.ts +0 -59
  925. package/src/network/core/index.ts +0 -3
  926. package/src/network/core/metrics.ts +0 -304
  927. package/src/network/core/networkCore.ts +0 -599
  928. package/src/network/core/networkCoreWorker.ts +0 -176
  929. package/src/network/core/networkCoreWorkerHandler.ts +0 -284
  930. package/src/network/core/types.ts +0 -119
  931. package/src/network/discv5/index.ts +0 -132
  932. package/src/network/discv5/types.ts +0 -74
  933. package/src/network/discv5/utils.ts +0 -50
  934. package/src/network/discv5/worker.ts +0 -137
  935. package/src/network/events.ts +0 -51
  936. package/src/network/forks.ts +0 -94
  937. package/src/network/gossip/constants.ts +0 -15
  938. package/src/network/gossip/encoding.ts +0 -111
  939. package/src/network/gossip/errors.ts +0 -7
  940. package/src/network/gossip/gossipsub.ts +0 -384
  941. package/src/network/gossip/index.ts +0 -4
  942. package/src/network/gossip/interface.ts +0 -215
  943. package/src/network/gossip/metrics.ts +0 -71
  944. package/src/network/gossip/scoringParameters.ts +0 -333
  945. package/src/network/gossip/topic.ts +0 -332
  946. package/src/network/index.ts +0 -8
  947. package/src/network/interface.ts +0 -134
  948. package/src/network/libp2p/error.ts +0 -55
  949. package/src/network/libp2p/index.ts +0 -153
  950. package/src/network/metadata.ts +0 -162
  951. package/src/network/network.ts +0 -767
  952. package/src/network/networkConfig.ts +0 -12
  953. package/src/network/options.ts +0 -70
  954. package/src/network/peers/client.ts +0 -29
  955. package/src/network/peers/datastore.ts +0 -188
  956. package/src/network/peers/discover.ts +0 -647
  957. package/src/network/peers/index.ts +0 -2
  958. package/src/network/peers/peerManager.ts +0 -899
  959. package/src/network/peers/peersData.ts +0 -65
  960. package/src/network/peers/score/constants.ts +0 -34
  961. package/src/network/peers/score/index.ts +0 -4
  962. package/src/network/peers/score/interface.ts +0 -74
  963. package/src/network/peers/score/score.ts +0 -200
  964. package/src/network/peers/score/store.ts +0 -95
  965. package/src/network/peers/score/utils.ts +0 -37
  966. package/src/network/peers/utils/assertPeerRelevance.ts +0 -99
  967. package/src/network/peers/utils/enrSubnetsDeserialize.ts +0 -27
  968. package/src/network/peers/utils/getConnectedPeerIds.ts +0 -33
  969. package/src/network/peers/utils/index.ts +0 -4
  970. package/src/network/peers/utils/prioritizePeers.ts +0 -627
  971. package/src/network/peers/utils/subnetMap.ts +0 -88
  972. package/src/network/processor/aggregatorTracker.ts +0 -38
  973. package/src/network/processor/extractSlotRootFns.ts +0 -64
  974. package/src/network/processor/gossipHandlers.ts +0 -951
  975. package/src/network/processor/gossipQueues/index.ts +0 -114
  976. package/src/network/processor/gossipQueues/indexed.ts +0 -219
  977. package/src/network/processor/gossipQueues/linear.ts +0 -162
  978. package/src/network/processor/gossipQueues/types.ts +0 -57
  979. package/src/network/processor/gossipValidatorFn.ts +0 -142
  980. package/src/network/processor/index.ts +0 -496
  981. package/src/network/processor/types.ts +0 -27
  982. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -373
  983. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +0 -101
  984. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +0 -49
  985. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -114
  986. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -62
  987. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +0 -144
  988. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +0 -88
  989. package/src/network/reqresp/handlers/index.ts +0 -78
  990. package/src/network/reqresp/handlers/lightClientBootstrap.ts +0 -31
  991. package/src/network/reqresp/handlers/lightClientFinalityUpdate.ts +0 -21
  992. package/src/network/reqresp/handlers/lightClientOptimisticUpdate.ts +0 -21
  993. package/src/network/reqresp/handlers/lightClientUpdatesByRange.ts +0 -39
  994. package/src/network/reqresp/index.ts +0 -2
  995. package/src/network/reqresp/interface.ts +0 -45
  996. package/src/network/reqresp/protocols.ts +0 -146
  997. package/src/network/reqresp/rateLimit.ts +0 -112
  998. package/src/network/reqresp/score.ts +0 -70
  999. package/src/network/reqresp/types.ts +0 -174
  1000. package/src/network/reqresp/utils/collect.ts +0 -84
  1001. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +0 -57
  1002. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +0 -99
  1003. package/src/network/statusCache.ts +0 -17
  1004. package/src/network/subnets/attnetsService.ts +0 -385
  1005. package/src/network/subnets/index.ts +0 -2
  1006. package/src/network/subnets/interface.ts +0 -66
  1007. package/src/network/subnets/syncnetsService.ts +0 -147
  1008. package/src/network/subnets/util.ts +0 -63
  1009. package/src/network/util.ts +0 -29
  1010. package/src/node/index.ts +0 -2
  1011. package/src/node/nodejs.ts +0 -349
  1012. package/src/node/notifier.ts +0 -206
  1013. package/src/node/options.ts +0 -51
  1014. package/src/node/utils/interop/deposits.ts +0 -53
  1015. package/src/node/utils/interop/state.ts +0 -59
  1016. package/src/node/utils/lightclient.ts +0 -7
  1017. package/src/node/utils/state.ts +0 -37
  1018. package/src/sync/backfill/backfill.ts +0 -893
  1019. package/src/sync/backfill/errors.ts +0 -23
  1020. package/src/sync/backfill/index.ts +0 -1
  1021. package/src/sync/backfill/verify.ts +0 -58
  1022. package/src/sync/constants.ts +0 -71
  1023. package/src/sync/index.ts +0 -2
  1024. package/src/sync/interface.ts +0 -55
  1025. package/src/sync/options.ts +0 -45
  1026. package/src/sync/range/batch.ts +0 -455
  1027. package/src/sync/range/chain.ts +0 -715
  1028. package/src/sync/range/range.ts +0 -354
  1029. package/src/sync/range/utils/batches.ts +0 -119
  1030. package/src/sync/range/utils/chainTarget.ts +0 -62
  1031. package/src/sync/range/utils/hashBlocks.ts +0 -27
  1032. package/src/sync/range/utils/index.ts +0 -5
  1033. package/src/sync/range/utils/peerBalancer.ts +0 -184
  1034. package/src/sync/range/utils/updateChains.ts +0 -66
  1035. package/src/sync/sync.ts +0 -290
  1036. package/src/sync/types.ts +0 -57
  1037. package/src/sync/unknownBlock.ts +0 -859
  1038. package/src/sync/utils/downloadByRange.ts +0 -808
  1039. package/src/sync/utils/downloadByRoot.ts +0 -560
  1040. package/src/sync/utils/pendingBlocksTree.ts +0 -97
  1041. package/src/sync/utils/remoteSyncType.ts +0 -144
  1042. package/src/util/address.ts +0 -3
  1043. package/src/util/array.ts +0 -311
  1044. package/src/util/asyncIterableToEvents.ts +0 -164
  1045. package/src/util/binarySearch.ts +0 -48
  1046. package/src/util/bitArray.ts +0 -84
  1047. package/src/util/blobs.ts +0 -210
  1048. package/src/util/bufferPool.ts +0 -95
  1049. package/src/util/bytes.ts +0 -11
  1050. package/src/util/chunkify.ts +0 -27
  1051. package/src/util/clock.ts +0 -204
  1052. package/src/util/dataColumns.ts +0 -415
  1053. package/src/util/dependentRoot.ts +0 -47
  1054. package/src/util/enum.ts +0 -17
  1055. package/src/util/error.ts +0 -56
  1056. package/src/util/eventLoop.ts +0 -22
  1057. package/src/util/execution.ts +0 -223
  1058. package/src/util/file.ts +0 -52
  1059. package/src/util/forkChoice.ts +0 -5
  1060. package/src/util/forkName.ts +0 -20
  1061. package/src/util/graffiti.ts +0 -39
  1062. package/src/util/hex.ts +0 -9
  1063. package/src/util/index.ts +0 -2
  1064. package/src/util/ip.ts +0 -6
  1065. package/src/util/itTrigger.ts +0 -49
  1066. package/src/util/kzg.ts +0 -3
  1067. package/src/util/map.ts +0 -77
  1068. package/src/util/metadata.ts +0 -22
  1069. package/src/util/multifork.ts +0 -69
  1070. package/src/util/numpy.ts +0 -8
  1071. package/src/util/peerId.ts +0 -16
  1072. package/src/util/profile.ts +0 -54
  1073. package/src/util/promises.ts +0 -14
  1074. package/src/util/queue/errors.ts +0 -14
  1075. package/src/util/queue/fnQueue.ts +0 -16
  1076. package/src/util/queue/index.ts +0 -4
  1077. package/src/util/queue/itemQueue.ts +0 -128
  1078. package/src/util/queue/options.ts +0 -37
  1079. package/src/util/serializedCache.ts +0 -20
  1080. package/src/util/set.ts +0 -62
  1081. package/src/util/shuffle.ts +0 -21
  1082. package/src/util/sortBy.ts +0 -19
  1083. package/src/util/sszBytes.ts +0 -481
  1084. package/src/util/strictEvents.ts +0 -8
  1085. package/src/util/time.ts +0 -13
  1086. package/src/util/timeSeries.ts +0 -118
  1087. package/src/util/types.ts +0 -31
  1088. package/src/util/workerEvents.ts +0 -142
  1089. package/src/util/wrapError.ts +0 -27
@@ -1,132 +0,0 @@
1
- import EventEmitter from "node:events";
2
- import {privateKeyToProtobuf} from "@libp2p/crypto/keys";
3
- import {PrivateKey} from "@libp2p/interface";
4
- import {StrictEventEmitter} from "strict-event-emitter-types";
5
- import {ENR, ENRData, SignableENR} from "@chainsafe/enr";
6
- import {Thread, Worker, spawn} from "@chainsafe/threads";
7
- import {BeaconConfig, chainConfigFromJson, chainConfigToJson} from "@lodestar/config";
8
- import {LoggerNode} from "@lodestar/logger/node";
9
- import {NetworkCoreMetrics} from "../core/metrics.js";
10
- import {Discv5WorkerApi, Discv5WorkerData, LodestarDiscv5Opts} from "./types.js";
11
-
12
- export type Discv5Opts = {
13
- privateKey: PrivateKey;
14
- discv5: LodestarDiscv5Opts;
15
- logger: LoggerNode;
16
- config: BeaconConfig;
17
- genesisTime: number;
18
- metrics?: NetworkCoreMetrics;
19
- };
20
-
21
- export type Discv5Events = {
22
- discovered: (enr: ENR) => void;
23
- };
24
-
25
- /**
26
- * Wrapper class abstracting the details of discv5 worker instantiation and message-passing
27
- */
28
- export class Discv5Worker extends (EventEmitter as {new (): StrictEventEmitter<EventEmitter, Discv5Events>}) {
29
- private readonly subscription: {unsubscribe: () => void};
30
- private closed = false;
31
-
32
- constructor(
33
- private readonly opts: Discv5Opts,
34
- private readonly workerApi: Discv5WorkerApi
35
- ) {
36
- super();
37
-
38
- this.subscription = workerApi.discovered().subscribe((enrObj) => this.onDiscovered(enrObj));
39
- }
40
-
41
- static async init(opts: Discv5Opts): Promise<Discv5Worker> {
42
- const workerData: Discv5WorkerData = {
43
- enr: opts.discv5.enr,
44
- privateKeyProto: privateKeyToProtobuf(opts.privateKey),
45
- bindAddrs: opts.discv5.bindAddrs,
46
- config: opts.discv5.config ?? {},
47
- bootEnrs: opts.discv5.bootEnrs,
48
- metrics: Boolean(opts.metrics),
49
- chainConfig: chainConfigFromJson(chainConfigToJson(opts.config)),
50
- genesisValidatorsRoot: opts.config.genesisValidatorsRoot,
51
- loggerOpts: opts.logger.toOpts(),
52
- genesisTime: opts.genesisTime,
53
- };
54
- const worker = new Worker("./worker.js", {
55
- suppressTranspileTS: Boolean(globalThis.Bun),
56
- workerData,
57
- } as ConstructorParameters<typeof Worker>[1]);
58
-
59
- const workerApi = await spawn<Discv5WorkerApi>(worker, {
60
- // A Lodestar Node may do very expensive task at start blocking the event loop and causing
61
- // the initialization to timeout. The number below is big enough to almost disable the timeout
62
- timeout: 5 * 60 * 1000,
63
- });
64
-
65
- return new Discv5Worker(opts, workerApi);
66
- }
67
-
68
- async close(): Promise<void> {
69
- if (this.closed) return;
70
- this.closed = true;
71
-
72
- this.subscription.unsubscribe();
73
- await this.workerApi.close();
74
- await Thread.terminate(this.workerApi as unknown as Thread);
75
- }
76
-
77
- onDiscovered(obj: ENRData): void {
78
- const enr = this.decodeEnr(obj);
79
- if (enr) {
80
- this.emit("discovered", enr);
81
- }
82
- }
83
-
84
- async enr(): Promise<SignableENR> {
85
- const obj = await this.workerApi.enr();
86
- return new SignableENR(obj.kvs, obj.seq, this.opts.privateKey.raw);
87
- }
88
-
89
- setEnrValue(key: string, value: Uint8Array): Promise<void> {
90
- return this.workerApi.setEnrValue(key, value);
91
- }
92
-
93
- async kadValues(): Promise<ENR[]> {
94
- return this.decodeEnrs(await this.workerApi.kadValues());
95
- }
96
-
97
- discoverKadValues(): Promise<void> {
98
- return this.workerApi.discoverKadValues();
99
- }
100
-
101
- async findRandomNode(): Promise<ENR[]> {
102
- return this.decodeEnrs(await this.workerApi.findRandomNode());
103
- }
104
-
105
- scrapeMetrics(): Promise<string> {
106
- return this.workerApi.scrapeMetrics();
107
- }
108
-
109
- async writeProfile(durationMs: number, dirpath: string): Promise<string> {
110
- return this.workerApi.writeProfile(durationMs, dirpath);
111
- }
112
-
113
- async writeHeapSnapshot(prefix: string, dirpath: string): Promise<string> {
114
- return this.workerApi.writeHeapSnapshot(prefix, dirpath);
115
- }
116
-
117
- private decodeEnrs(objs: ENRData[]): ENR[] {
118
- const enrs: ENR[] = [];
119
- for (const obj of objs) {
120
- const enr = this.decodeEnr(obj);
121
- if (enr) {
122
- enrs.push(enr);
123
- }
124
- }
125
- return enrs;
126
- }
127
-
128
- private decodeEnr(obj: ENRData): ENR | null {
129
- this.opts.metrics?.discv5.decodeEnrAttemptCount.inc(1);
130
- return new ENR(obj.kvs, obj.seq, obj.signature);
131
- }
132
- }
@@ -1,74 +0,0 @@
1
- import {Discv5} from "@chainsafe/discv5";
2
- import {ENRData, SignableENRData} from "@chainsafe/enr";
3
- import {Observable} from "@chainsafe/threads/observable";
4
- import {ChainConfig} from "@lodestar/config";
5
- import {LoggerNodeOpts} from "@lodestar/logger/node";
6
-
7
- // TODO export IDiscv5Config so we don't need this convoluted type
8
- type Discv5Config = Parameters<(typeof Discv5)["create"]>[0]["config"];
9
-
10
- type BindAddrs =
11
- | {
12
- ip4: string;
13
- ip6?: string;
14
- }
15
- | {
16
- ip4?: string;
17
- ip6: string;
18
- }
19
- | {
20
- ip4: string;
21
- ip6: string;
22
- };
23
-
24
- export type LodestarDiscv5Opts = {
25
- config?: Discv5Config;
26
- enr: string;
27
- bindAddrs: BindAddrs;
28
- bootEnrs: string[];
29
- };
30
-
31
- /** discv5 worker constructor data */
32
- export interface Discv5WorkerData {
33
- enr: string;
34
- privateKeyProto: Uint8Array;
35
- bindAddrs: BindAddrs;
36
- config: Discv5Config;
37
- bootEnrs: string[];
38
- metrics: boolean;
39
- chainConfig: ChainConfig;
40
- genesisValidatorsRoot: Uint8Array;
41
- loggerOpts: LoggerNodeOpts;
42
- genesisTime: number;
43
- }
44
-
45
- /**
46
- * API exposed by the discv5 worker
47
- *
48
- * Note: ENRs are represented as bytes to facilitate message-passing
49
- */
50
- export type Discv5WorkerApi = {
51
- /** The current host ENR */
52
- enr(): Promise<SignableENRData>;
53
- /** Set a key-value of the current host ENR */
54
- setEnrValue(key: string, value: Uint8Array): Promise<void>;
55
-
56
- /** Return the ENRs currently in the kad table */
57
- kadValues(): Promise<ENRData[]>;
58
- /** emit the ENRs currently in the kad table */
59
- discoverKadValues(): Promise<void>;
60
- /** Begin a random search through the DHT, return discovered ENRs */
61
- findRandomNode(): Promise<ENRData[]>;
62
- /** Stream of discovered ENRs */
63
- discovered(): Observable<ENRData>;
64
-
65
- /** Prometheus metrics string */
66
- scrapeMetrics(): Promise<string>;
67
-
68
- /** write profile to disc */
69
- writeProfile(durationMs: number, dirpath: string): Promise<string>;
70
- /** write heap snapshot to disc */
71
- writeHeapSnapshot(prefix: string, dirpath: string): Promise<string>;
72
- /** tear down discv5 resources */
73
- close(): Promise<void>;
74
- };
@@ -1,50 +0,0 @@
1
- import {ENR} from "@chainsafe/enr";
2
- import {BeaconConfig} from "@lodestar/config";
3
- import {MAXIMUM_GOSSIP_CLOCK_DISPARITY} from "../../constants/constants.js";
4
- import {IClock} from "../../util/clock.js";
5
- import {ENRKey} from "../metadata.js";
6
-
7
- export enum ENRRelevance {
8
- no_tcp = "no_tcp",
9
- no_eth2 = "no_eth2",
10
- // biome-ignore lint/style/useNamingConvention: Need to use the this name for network convention
11
- unknown_forkDigest = "unknown_forkDigest",
12
- current_fork_mismatch = "current_fork_mismatch",
13
- relevant = "relevant",
14
- }
15
-
16
- export function enrRelevance(enr: ENR, config: BeaconConfig, clock: IClock): ENRRelevance {
17
- // We are not interested in peers that don't advertise their tcp addr
18
- const multiaddrTCP = enr.getLocationMultiaddr(ENRKey.tcp);
19
- if (!multiaddrTCP) {
20
- return ENRRelevance.no_tcp;
21
- }
22
-
23
- // Check if the ENR.eth2 field matches and is of interest
24
- const eth2 = enr.kvs.get(ENRKey.eth2);
25
- if (!eth2) {
26
- return ENRRelevance.no_eth2;
27
- }
28
-
29
- // Fast de-serialization without SSZ
30
- const forkDigest = eth2.slice(0, 4);
31
- // Check if forkDigest matches any of our known forks.
32
- const {fork: forkName} = config.forkDigest2ForkBoundaryOption(forkDigest) ?? {};
33
- if (forkName === undefined) {
34
- return ENRRelevance.unknown_forkDigest;
35
- }
36
-
37
- // Check if fork digest's fork matches ours
38
- const currentSlot = clock.slotWithFutureTolerance(MAXIMUM_GOSSIP_CLOCK_DISPARITY);
39
- const localForkInfo = config.getForkInfo(currentSlot);
40
- // We only connect if the ENR's fork matches our current fork.
41
- // We also allow it to be the previous fork due to delay and infrequent update of DHT.
42
- if (forkName !== localForkInfo.name && forkName !== localForkInfo.prevForkName) {
43
- return ENRRelevance.current_fork_mismatch;
44
- }
45
-
46
- // TODO: If we have next fork scheduled, check if next fork info matches ours
47
- // const enrForkId = ssz.phase0.ENRForkID.deserialize(eth2);
48
-
49
- return ENRRelevance.relevant;
50
- }
@@ -1,137 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import worker from "node:worker_threads";
4
- import {privateKeyFromProtobuf} from "@libp2p/crypto/keys";
5
- import {peerIdFromPrivateKey} from "@libp2p/peer-id";
6
- import {Multiaddr, multiaddr} from "@multiformats/multiaddr";
7
- import {Discv5, Discv5EventEmitter} from "@chainsafe/discv5";
8
- import {ENR, ENRData, SignableENR, SignableENRData} from "@chainsafe/enr";
9
- import {Observable, Subject} from "@chainsafe/threads/observable";
10
- import {expose} from "@chainsafe/threads/worker";
11
- import {createBeaconConfig} from "@lodestar/config";
12
- import {getNodeLogger} from "@lodestar/logger/node";
13
- import {Gauge} from "@lodestar/utils";
14
- import {RegistryMetricCreator} from "../../metrics/index.js";
15
- import {collectNodeJSMetrics} from "../../metrics/nodeJsMetrics.js";
16
- import {Clock} from "../../util/clock.js";
17
- import {profileNodeJS, writeHeapSnapshot} from "../../util/profile.js";
18
- import {Discv5WorkerApi, Discv5WorkerData} from "./types.js";
19
- import {ENRRelevance, enrRelevance} from "./utils.js";
20
-
21
- // This discv5 worker will start discv5 on initialization (there is no `start` function to call)
22
- // A consumer _should_ call `close` before terminating the worker to cleanly exit discv5 before destroying the thread
23
- // A `setEnrValue` function is also provided to update the host ENR key-values shared in the discv5 network.
24
-
25
- // Cloned data from instatiation
26
- const workerData = worker.workerData as Discv5WorkerData;
27
- if (!workerData) throw Error("workerData must be defined");
28
-
29
- const logger = getNodeLogger(workerData.loggerOpts);
30
-
31
- // Set up metrics, nodejs and discv5-specific
32
- let metricsRegistry: RegistryMetricCreator | undefined;
33
- let enrRelevanceMetric: Gauge<{status: string}> | undefined;
34
- let closeMetrics: () => void | undefined;
35
- if (workerData.metrics) {
36
- metricsRegistry = new RegistryMetricCreator();
37
- closeMetrics = collectNodeJSMetrics(metricsRegistry, "discv5_worker_");
38
-
39
- // add enr relevance metric
40
- enrRelevanceMetric = metricsRegistry.gauge<{status: string}>({
41
- name: "lodestar_discv5_discovered_status_total_count",
42
- help: "Total count of status results of enrRelevance() function",
43
- labelNames: ["status"],
44
- });
45
- }
46
-
47
- const privateKey = privateKeyFromProtobuf(workerData.privateKeyProto);
48
- const peerId = peerIdFromPrivateKey(privateKey);
49
-
50
- const config = createBeaconConfig(workerData.chainConfig, workerData.genesisValidatorsRoot);
51
-
52
- // Initialize discv5
53
- const discv5 = Discv5.create({
54
- enr: SignableENR.decodeTxt(workerData.enr, privateKey.raw),
55
- privateKey,
56
- bindAddrs: {
57
- ip4: (workerData.bindAddrs.ip4 ? multiaddr(workerData.bindAddrs.ip4) : undefined) as Multiaddr,
58
- ip6: workerData.bindAddrs.ip6 ? multiaddr(workerData.bindAddrs.ip6) : undefined,
59
- },
60
- config: workerData.config,
61
- metricsRegistry,
62
- }) as Discv5 & Discv5EventEmitter;
63
-
64
- // Load boot enrs
65
- for (const bootEnr of workerData.bootEnrs) {
66
- discv5.addEnr(bootEnr);
67
- }
68
-
69
- /** Used to push discovered ENRs */
70
- const subject = new Subject<ENRData>();
71
-
72
- /** Define a new clock */
73
- const abortController = new AbortController();
74
- const clock = new Clock({config, genesisTime: workerData.genesisTime, signal: abortController.signal});
75
-
76
- const onDiscovered = (enr: ENR): void => {
77
- const status = enrRelevance(enr, config, clock);
78
- enrRelevanceMetric?.inc({status});
79
- if (status === ENRRelevance.relevant) {
80
- subject.next(enr.toObject());
81
- }
82
- };
83
- discv5.addListener("discovered", onDiscovered);
84
-
85
- // Discv5 will now begin accepting request/responses
86
- await discv5.start();
87
-
88
- const module: Discv5WorkerApi = {
89
- async enr(): Promise<SignableENRData> {
90
- return discv5.enr.toObject();
91
- },
92
- async setEnrValue(key: string, value: Uint8Array): Promise<void> {
93
- discv5.enr.set(key, value);
94
- },
95
- async kadValues(): Promise<ENRData[]> {
96
- return discv5.kadValues().map((enr: ENR) => enr.toObject());
97
- },
98
- async discoverKadValues(): Promise<void> {
99
- discv5.kadValues().map(onDiscovered);
100
- },
101
- async findRandomNode(): Promise<ENRData[]> {
102
- return (await discv5.findRandomNode()).map((enr: ENR) => enr.toObject());
103
- },
104
- discovered() {
105
- return Observable.from(subject);
106
- },
107
- async scrapeMetrics(): Promise<string> {
108
- return (await metricsRegistry?.metrics()) ?? "";
109
- },
110
- writeProfile: async (durationMs: number, dirpath: string) => {
111
- const profile = await profileNodeJS(durationMs);
112
- const filePath = path.join(dirpath, `discv5_thread_${new Date().toISOString()}.cpuprofile`);
113
- fs.writeFileSync(filePath, profile);
114
- return filePath;
115
- },
116
- writeHeapSnapshot: async (prefix: string, dirpath: string) => {
117
- return writeHeapSnapshot(prefix, dirpath);
118
- },
119
- async close() {
120
- closeMetrics?.();
121
- discv5.removeListener("discovered", onDiscovered);
122
- subject.complete();
123
- await discv5.stop();
124
- },
125
- };
126
-
127
- expose(module);
128
-
129
- const logData: Record<string, string> = {
130
- peerId: peerId.toString(),
131
- initialENR: workerData.enr,
132
- };
133
-
134
- if (workerData.bindAddrs.ip4) logData.bindAddr4 = workerData.bindAddrs.ip4;
135
- if (workerData.bindAddrs.ip6) logData.bindAddr6 = workerData.bindAddrs.ip6;
136
-
137
- logger.info("discv5 worker started", logData);
@@ -1,51 +0,0 @@
1
- import {EventEmitter} from "node:events";
2
- import {PeerId, TopicValidatorResult} from "@libp2p/interface";
3
- import {CustodyIndex, Status} from "@lodestar/types";
4
- import {PeerIdStr} from "../util/peerId.js";
5
- import {StrictEventEmitterSingleArg} from "../util/strictEvents.js";
6
- import {EventDirection} from "../util/workerEvents.js";
7
- import {PendingGossipsubMessage} from "./processor/types.js";
8
- import {RequestTypedContainer} from "./reqresp/ReqRespBeaconNode.js";
9
-
10
- export enum NetworkEvent {
11
- /** A relevant peer has connected or has been re-STATUS'd */
12
- peerConnected = "peer-manager.peer-connected",
13
- /** A peer has been disconnected */
14
- peerDisconnected = "peer-manager.peer-disconnected",
15
- reqRespRequest = "req-resp.request",
16
-
17
- // Network processor events
18
- /** (Network -> App) A gossip message is ready for validation */
19
- pendingGossipsubMessage = "gossip.pendingGossipsubMessage",
20
- /** (App -> Network) A gossip message has been validated */
21
- gossipMessageValidationResult = "gossip.messageValidationResult",
22
- }
23
-
24
- export type NetworkEventData = {
25
- [NetworkEvent.peerConnected]: {
26
- peer: PeerIdStr;
27
- status: Status;
28
- custodyColumns: CustodyIndex[];
29
- clientAgent: string;
30
- };
31
- [NetworkEvent.peerDisconnected]: {peer: PeerIdStr};
32
- [NetworkEvent.reqRespRequest]: {request: RequestTypedContainer; peer: PeerId};
33
- [NetworkEvent.pendingGossipsubMessage]: PendingGossipsubMessage;
34
- [NetworkEvent.gossipMessageValidationResult]: {
35
- msgId: string;
36
- propagationSource: PeerIdStr;
37
- acceptance: TopicValidatorResult;
38
- };
39
- };
40
-
41
- export const networkEventDirection: Record<NetworkEvent, EventDirection> = {
42
- [NetworkEvent.peerConnected]: EventDirection.workerToMain,
43
- [NetworkEvent.peerDisconnected]: EventDirection.workerToMain,
44
- [NetworkEvent.reqRespRequest]: EventDirection.none, // Only used internally in NetworkCore
45
- [NetworkEvent.pendingGossipsubMessage]: EventDirection.workerToMain,
46
- [NetworkEvent.gossipMessageValidationResult]: EventDirection.mainToWorker,
47
- };
48
-
49
- export type INetworkEventBus = StrictEventEmitterSingleArg<NetworkEventData>;
50
-
51
- export class NetworkEventBus extends (EventEmitter as {new (): INetworkEventBus}) {}
@@ -1,94 +0,0 @@
1
- import {ChainForkConfig, ForkBoundary} from "@lodestar/config";
2
- import {Epoch} from "@lodestar/types";
3
-
4
- /**
5
- * Subscribe topics to the new fork N epochs before the fork. Remove all subscriptions N epochs after the fork
6
- *
7
- * This lookahead ensures a smooth fork transition. During `FORK_EPOCH_LOOKAHEAD` both forks will be active.
8
- *
9
- * ```
10
- * phase0 phase0 phase0 -
11
- * - altair altair altair
12
- * |----------|----------|----------|----------|
13
- * 0 fork-2 fork fork+2 oo
14
- * ```
15
- *
16
- * It the fork epochs are very close to each other there may more than two active at once
17
- *
18
- * ```
19
- * f0 f0 f0 f0 f0 -
20
- * - fa fa fa fa fa -
21
- * - - fb fb fb fb fb
22
- *
23
- * forka-2 forka forka+2
24
- * | | | |
25
- * |----------|----------|----------|----------|
26
- * 0 forkb-2 forkb forkb+2 oo
27
- * ```
28
- */
29
- export const FORK_EPOCH_LOOKAHEAD = 2;
30
-
31
- /**
32
- * Return the list of `ForkBoundary`s meant to be active at `epoch`
33
- * @see FORK_EPOCH_LOOKAHEAD for details on when fork boundaries are considered 'active'
34
- */
35
- export function getActiveForkBoundaries(config: ChainForkConfig, epoch: Epoch): ForkBoundary[] {
36
- const activeBoundaries: ForkBoundary[] = [];
37
- const {forkBoundariesAscendingEpochOrder} = config;
38
-
39
- for (let i = 0; i < forkBoundariesAscendingEpochOrder.length; i++) {
40
- const currentForkBoundary = forkBoundariesAscendingEpochOrder[i];
41
- const nextForkBoundary = forkBoundariesAscendingEpochOrder[i + 1];
42
-
43
- const currentEpoch = currentForkBoundary.epoch;
44
- const nextEpoch = nextForkBoundary !== undefined ? nextForkBoundary.epoch : Infinity;
45
-
46
- // Edge case: If multiple fork boundaries start at the same epoch, only consider the latest one
47
- if (currentEpoch === nextEpoch) {
48
- continue;
49
- }
50
-
51
- if (epoch >= currentEpoch - FORK_EPOCH_LOOKAHEAD && epoch <= nextEpoch + FORK_EPOCH_LOOKAHEAD) {
52
- activeBoundaries.push(currentForkBoundary);
53
- }
54
- }
55
-
56
- return activeBoundaries;
57
- }
58
-
59
- /**
60
- * Return the currentBoundary and nextBoundary given a fork/BPO schedule and `epoch`
61
- */
62
- export function getCurrentAndNextForkBoundary(
63
- config: ChainForkConfig,
64
- epoch: Epoch
65
- ): {currentBoundary: ForkBoundary; nextBoundary: ForkBoundary | undefined} {
66
- if (epoch < 0) {
67
- epoch = 0;
68
- }
69
-
70
- // NOTE: fork boundaries are sorted by ascending epoch
71
- const boundaries = config.forkBoundariesAscendingEpochOrder;
72
- let currentBoundaryIdx = -1;
73
- // findLastIndex
74
- for (let i = 0; i < boundaries.length; i++) {
75
- if (epoch >= boundaries[i].epoch) currentBoundaryIdx = i;
76
- }
77
-
78
- let nextBoundaryIdx = currentBoundaryIdx + 1;
79
- const hasNextBoundary = boundaries[nextBoundaryIdx] !== undefined && boundaries[nextBoundaryIdx].epoch !== Infinity;
80
- // Keep moving the needle of nextBoundaryIdx if there the higher boundary also exists on same epoch
81
- // for e.g. altair and bellatrix are on same epoch 6, next boundary should be bellatrix
82
- if (hasNextBoundary) {
83
- for (let i = nextBoundaryIdx + 1; i < boundaries.length; i++) {
84
- // If the boundary's epoch is same as nextBoundaryIdx (which is not equal to infinity),
85
- // update nextBoundaryIdx to the same
86
- if (boundaries[i].epoch === boundaries[nextBoundaryIdx].epoch) nextBoundaryIdx = i;
87
- }
88
- }
89
-
90
- return {
91
- currentBoundary: boundaries[currentBoundaryIdx] || boundaries[0],
92
- nextBoundary: hasNextBoundary ? boundaries[nextBoundaryIdx] : undefined,
93
- };
94
- }
@@ -1,15 +0,0 @@
1
- import {GossipEncoding} from "./interface.js";
2
-
3
- export const GOSSIP_MSGID_LENGTH = 20;
4
-
5
- /**
6
- * 4-byte domain for gossip message-id isolation of *valid* snappy messages
7
- */
8
- export const MESSAGE_DOMAIN_VALID_SNAPPY = Buffer.from("01000000", "hex");
9
-
10
- /**
11
- * 4-byte domain for gossip message-id isolation of *invalid* snappy messages
12
- */
13
- export const MESSAGE_DOMAIN_INVALID_SNAPPY = Buffer.from("00000000", "hex");
14
-
15
- export const DEFAULT_ENCODING = GossipEncoding.ssz_snappy;
@@ -1,111 +0,0 @@
1
- import {Message} from "@libp2p/interface";
2
- import {compress, uncompress} from "snappyjs";
3
- import xxhashFactory from "xxhash-wasm";
4
- import {digest} from "@chainsafe/as-sha256";
5
- import {RPC} from "@chainsafe/libp2p-gossipsub/message";
6
- import {DataTransform} from "@chainsafe/libp2p-gossipsub/types";
7
- import {ForkName} from "@lodestar/params";
8
- import {intToBytes} from "@lodestar/utils";
9
- import {MESSAGE_DOMAIN_VALID_SNAPPY} from "./constants.js";
10
- import {GossipTopicCache, getGossipSSZType} from "./topic.js";
11
-
12
- // Load WASM
13
- const xxhash = await xxhashFactory();
14
-
15
- // Use salt to prevent msgId from being mined for collisions
16
- const h64Seed = BigInt(Math.floor(Math.random() * 1e9));
17
-
18
- // Shared buffer to convert msgId to string
19
- const sharedMsgIdBuf = Buffer.alloc(20);
20
-
21
- /**
22
- * The function used to generate a gossipsub message id
23
- * We use the first 8 bytes of SHA256(data) for content addressing
24
- */
25
- export function fastMsgIdFn(rpcMsg: RPC.Message): string {
26
- if (rpcMsg.data) {
27
- return xxhash.h64Raw(rpcMsg.data, h64Seed).toString(16);
28
- }
29
- return "0000000000000000";
30
- }
31
-
32
- export function msgIdToStrFn(msgId: Uint8Array): string {
33
- // this is the same logic to `toHex(msgId)` with better performance
34
- sharedMsgIdBuf.set(msgId);
35
- return `0x${sharedMsgIdBuf.toString("hex")}`;
36
- }
37
-
38
- /**
39
- * Only valid msgId. Messages that fail to snappy_decompress() are not tracked
40
- */
41
- export function msgIdFn(gossipTopicCache: GossipTopicCache, msg: Message): Uint8Array {
42
- const topic = gossipTopicCache.getTopic(msg.topic);
43
-
44
- let vec: Uint8Array[];
45
-
46
- if (topic.boundary.fork === ForkName.phase0) {
47
- // message id for phase0.
48
- // ```
49
- // SHA256(MESSAGE_DOMAIN_VALID_SNAPPY + snappy_decompress(message.data))[:20]
50
- // ```
51
- vec = [MESSAGE_DOMAIN_VALID_SNAPPY, msg.data];
52
- } else {
53
- // message id for altair and subsequent future forks.
54
- // ```
55
- // SHA256(
56
- // MESSAGE_DOMAIN_VALID_SNAPPY +
57
- // uint_to_bytes(uint64(len(message.topic))) +
58
- // message.topic +
59
- // snappy_decompress(message.data)
60
- // )[:20]
61
- // ```
62
- // https://github.com/ethereum/eth2.0-specs/blob/v1.1.0-alpha.7/specs/altair/p2p-interface.md#topics-and-messages
63
- vec = [MESSAGE_DOMAIN_VALID_SNAPPY, intToBytes(msg.topic.length, 8), Buffer.from(msg.topic), msg.data];
64
- }
65
-
66
- return digest(Buffer.concat(vec)).subarray(0, 20);
67
- }
68
-
69
- export class DataTransformSnappy implements DataTransform {
70
- constructor(
71
- private readonly gossipTopicCache: GossipTopicCache,
72
- private readonly maxSizePerMessage: number
73
- ) {}
74
-
75
- /**
76
- * Takes the data published by peers on a topic and transforms the data.
77
- * Should be the reverse of outboundTransform(). Example:
78
- * - `inboundTransform()`: decompress snappy payload
79
- * - `outboundTransform()`: compress snappy payload
80
- */
81
- inboundTransform(topicStr: string, data: Uint8Array): Uint8Array {
82
- const uncompressedData = uncompress(data, this.maxSizePerMessage);
83
-
84
- // check uncompressed data length before we extract beacon block root, slot or
85
- // attestation data at later steps
86
- const uncompressedDataLength = uncompressedData.length;
87
- const topic = this.gossipTopicCache.getTopic(topicStr);
88
- const sszType = getGossipSSZType(topic);
89
-
90
- if (uncompressedDataLength < sszType.minSize) {
91
- throw Error(`ssz_snappy decoded data length ${uncompressedDataLength} < ${sszType.minSize}`);
92
- }
93
- if (uncompressedDataLength > sszType.maxSize) {
94
- throw Error(`ssz_snappy decoded data length ${uncompressedDataLength} > ${sszType.maxSize}`);
95
- }
96
-
97
- return uncompressedData;
98
- }
99
-
100
- /**
101
- * Takes the data to be published (a topic and associated data) transforms the data. The
102
- * transformed data will then be used to create a `RawGossipsubMessage` to be sent to peers.
103
- */
104
- outboundTransform(_topicStr: string, data: Uint8Array): Uint8Array {
105
- if (data.length > this.maxSizePerMessage) {
106
- throw Error(`ssz_snappy encoded data length ${data.length} > ${this.maxSizePerMessage}`);
107
- }
108
- // No need to parse topic, everything is snappy compressed
109
- return compress(data);
110
- }
111
- }
@@ -1,7 +0,0 @@
1
- export class GossipValidationError extends Error {
2
- code: string;
3
- constructor(code: string, message?: string) {
4
- super(message);
5
- this.code = code;
6
- }
7
- }