@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,114 +0,0 @@
1
- import {mapValues} from "@lodestar/utils";
2
- import {getBeaconAttestationGossipIndex} from "../../../util/sszBytes.js";
3
- import {BatchGossipType, GossipType, SequentialGossipType} from "../../gossip/interface.js";
4
- import {PendingGossipsubMessage} from "../types.js";
5
- import {IndexedGossipQueueMinSize} from "./indexed.js";
6
- import {LinearGossipQueue} from "./linear.js";
7
- import {DropType, GossipQueue, GossipQueueOpts, QueueType, isIndexedGossipQueueMinSizeOpts} from "./types.js";
8
-
9
- /**
10
- * In normal condition, the higher this value the more efficient the signature verification.
11
- * However, if at least 1 signature is invalid, we need to verify each signature separately.
12
- */
13
- const MAX_GOSSIP_ATTESTATION_BATCH_SIZE = 128;
14
-
15
- /**
16
- * Minimum signature sets to batch verify without waiting for 50ms.
17
- */
18
- export const MIN_SIGNATURE_SETS_TO_BATCH_VERIFY = 32;
19
-
20
- /**
21
- * Numbers from https://github.com/sigp/lighthouse/blob/b34a79dc0b02e04441ba01fd0f304d1e203d877d/beacon_node/network/src/beacon_processor/mod.rs#L69
22
- */
23
- const linearGossipQueueOpts: {
24
- [K in SequentialGossipType]: GossipQueueOpts<PendingGossipsubMessage>;
25
- } = {
26
- // validation gossip block asap
27
- [GossipType.beacon_block]: {maxLength: 1024, type: QueueType.FIFO, dropOpts: {type: DropType.count, count: 1}},
28
- // gossip length for blob is beacon block length * max blobs per block = 4096
29
- [GossipType.blob_sidecar]: {
30
- maxLength: 4096,
31
- type: QueueType.FIFO,
32
- dropOpts: {type: DropType.count, count: 1},
33
- },
34
- [GossipType.data_column_sidecar]: {
35
- maxLength: 4096,
36
- type: QueueType.FIFO,
37
- dropOpts: {type: DropType.count, count: 1},
38
- },
39
- // lighthoue has aggregate_queue 4096 and unknown_block_aggregate_queue 1024, we use single queue
40
- [GossipType.beacon_aggregate_and_proof]: {
41
- maxLength: 5120,
42
- type: QueueType.LIFO,
43
- dropOpts: {type: DropType.count, count: 1},
44
- },
45
- [GossipType.voluntary_exit]: {maxLength: 4096, type: QueueType.FIFO, dropOpts: {type: DropType.count, count: 1}},
46
- [GossipType.proposer_slashing]: {maxLength: 4096, type: QueueType.FIFO, dropOpts: {type: DropType.count, count: 1}},
47
- [GossipType.attester_slashing]: {maxLength: 4096, type: QueueType.FIFO, dropOpts: {type: DropType.count, count: 1}},
48
- [GossipType.sync_committee_contribution_and_proof]: {
49
- maxLength: 4096,
50
- type: QueueType.LIFO,
51
- dropOpts: {type: DropType.count, count: 1},
52
- },
53
- [GossipType.sync_committee]: {maxLength: 4096, type: QueueType.LIFO, dropOpts: {type: DropType.count, count: 1}},
54
- [GossipType.light_client_finality_update]: {
55
- maxLength: 1024,
56
- type: QueueType.FIFO,
57
- dropOpts: {type: DropType.count, count: 1},
58
- },
59
- [GossipType.light_client_optimistic_update]: {
60
- maxLength: 1024,
61
- type: QueueType.FIFO,
62
- dropOpts: {type: DropType.count, count: 1},
63
- },
64
- // lighthouse has bls changes queue set to their max 16384 to handle large spike at capella
65
- [GossipType.bls_to_execution_change]: {
66
- maxLength: 16384,
67
- type: QueueType.FIFO,
68
- dropOpts: {type: DropType.count, count: 1},
69
- },
70
- };
71
-
72
- const indexedGossipQueueOpts: {
73
- [K in BatchGossipType]: GossipQueueOpts<PendingGossipsubMessage>;
74
- } = {
75
- [GossipType.beacon_attestation]: {
76
- // lighthouse has attestation_queue 16384 and unknown_block_attestation_queue 8192, we use single queue
77
- // this topic may cause node to be overload and drop 100% of lower priority queues
78
- maxLength: 24576,
79
- indexFn: (item: PendingGossipsubMessage) => {
80
- return getBeaconAttestationGossipIndex(item.topic.boundary.fork, item.msg.data);
81
- },
82
- minChunkSize: MIN_SIGNATURE_SETS_TO_BATCH_VERIFY,
83
- maxChunkSize: MAX_GOSSIP_ATTESTATION_BATCH_SIZE,
84
- },
85
- };
86
-
87
- /**
88
- * Wraps a GossipValidatorFn with a queue, to limit the processing of gossip objects by type.
89
- *
90
- * A queue here is essential to protect against DOS attacks, where a peer may send many messages at once.
91
- * Queues also protect the node against overloading. If the node gets bussy with an expensive epoch transition,
92
- * it may buffer too many gossip objects causing an Out of memory (OOM) error. With a queue the node will reject
93
- * new objects to fit its current throughput.
94
- *
95
- * Queues may buffer objects by
96
- * - topic '/eth2/0011aabb/beacon_attestation_0/ssz_snappy'
97
- * - type `GossipType.beacon_attestation`
98
- * - all objects in one queue
99
- *
100
- * By topic is too specific, so by type groups all similar objects in the same queue. All in the same won't allow
101
- * to customize different queue behaviours per object type (see `gossipQueueOpts`).
102
- */
103
- export function createGossipQueues(): {
104
- [K in GossipType]: GossipQueue<PendingGossipsubMessage>;
105
- } {
106
- const gossipQueueOpts = {...linearGossipQueueOpts, ...indexedGossipQueueOpts};
107
-
108
- return mapValues(gossipQueueOpts, (opts) => {
109
- if (isIndexedGossipQueueMinSizeOpts(opts)) {
110
- return new IndexedGossipQueueMinSize(opts);
111
- }
112
- return new LinearGossipQueue<PendingGossipsubMessage>(opts);
113
- });
114
- }
@@ -1,219 +0,0 @@
1
- import {LinkedList} from "../../../util/array.js";
2
- import {OrderedSet} from "../../../util/set.js";
3
- import {GossipQueue, IndexedGossipQueueMinSizeOpts} from "./types.js";
4
-
5
- type QueueItem<T> = {
6
- listItems: LinkedList<T>;
7
- firstSeenMs: number;
8
- };
9
-
10
- /**
11
- * Enforce minimum wait time for each key. On a mainnet node, wait time for beacon_attestation
12
- * is more than 500ms, it's worth to take 1/10 of that to help batch more items.
13
- * This is only needed for key item < minChunkSize.
14
- */
15
- const MINIMUM_WAIT_TIME_MS = 50;
16
-
17
- /**
18
- * This implementation tries to get the most items with same key:
19
- * - index items by indexFn using a map
20
- * - store keys with at least minChunkSize
21
- * - on next, pick the last key with minChunkSize, pop up to maxChunkSize items
22
- * - on delete, pick the 1st key in the map and delete the 1st item in the list
23
- * Although it does not strictly follow LIFO, it tries to have that behavior:
24
- * - On delete, get the first key and the first item of respective list
25
- * - On next pick the last key with minChunksize
26
- * - if there is no key with minChunkSize, pop the last item of the last key
27
- *
28
- * This is a special gossip queue for beacon_attestation topic
29
- */
30
- export class IndexedGossipQueueMinSize<T extends {indexed?: string; queueAddedMs?: number}> implements GossipQueue<T> {
31
- private _length = 0;
32
- private indexedItems: Map<string, QueueItem<T>>;
33
- // keys with at least minChunkSize items
34
- // we want to process the last key with minChunkSize first, similar to LIFO
35
- private minChunkSizeKeys = new OrderedSet<string>();
36
- // wait time for the next() function to prevent having to search for items >=MINIMUM_WAIT_TIME_MS old repeatedly
37
- // this value is <= MINIMUM_WAIT_TIME_MS
38
- private nextWaitTimeMs: number | null = null;
39
- // the last time we checked for items >=MINIMUM_WAIT_TIME_MS old
40
- private lastWaitTimeCheckedMs = 0;
41
- constructor(private readonly opts: IndexedGossipQueueMinSizeOpts<T>) {
42
- const {minChunkSize, maxChunkSize} = opts;
43
- if (minChunkSize < 0 || maxChunkSize < 0 || minChunkSize > maxChunkSize) {
44
- throw Error(`Unexpected min chunk size ${minChunkSize}, max chunk size ${maxChunkSize}}`);
45
- }
46
- this.indexedItems = new Map<string, QueueItem<T>>();
47
- }
48
-
49
- get length(): number {
50
- return this._length;
51
- }
52
-
53
- get keySize(): number {
54
- return this.indexedItems.size;
55
- }
56
-
57
- clear(): void {
58
- this.indexedItems = new Map();
59
- this._length = 0;
60
- this.minChunkSizeKeys = new OrderedSet();
61
- }
62
-
63
- /**
64
- * Get age of each key in ms.
65
- */
66
- getDataAgeMs(): number[] {
67
- const now = Date.now();
68
- const result: number[] = [];
69
- for (const queueItem of this.indexedItems.values()) {
70
- result.push(now - queueItem.firstSeenMs);
71
- }
72
- return result;
73
- }
74
-
75
- /**
76
- * Add item to gossip queue. If queue is full, drop first item of first key.
77
- * Return number of items dropped
78
- */
79
- add(item: T): number {
80
- const key = this.opts.indexFn(item);
81
- if (key == null) {
82
- // this comes from getAttDataBase64FromAttestationSerialized() return type
83
- // should not happen
84
- return 0;
85
- }
86
- const now = Date.now();
87
- // here we mutate item, which is used for gossip validation later
88
- item.indexed = key;
89
- item.queueAddedMs = now;
90
- let queueItem = this.indexedItems.get(key);
91
- if (queueItem == null) {
92
- queueItem = {firstSeenMs: now, listItems: new LinkedList<T>()};
93
- this.indexedItems.set(key, queueItem);
94
- }
95
- queueItem.listItems.push(item);
96
- if (queueItem.listItems.length >= this.opts.minChunkSize) {
97
- this.minChunkSizeKeys.add(key);
98
- }
99
- this._length++;
100
- if (this._length <= this.opts.maxLength) {
101
- return 0;
102
- }
103
-
104
- // overload, need to drop more items
105
- const firstKey = this.indexedItems.keys().next().value as string | undefined;
106
- // there should be at least 1 key
107
- if (firstKey == null) {
108
- return 0;
109
- }
110
- const firstQueueItem = this.indexedItems.get(firstKey);
111
- // should not happen
112
- if (firstQueueItem == null) {
113
- return 0;
114
- }
115
- const deletedItem = firstQueueItem.listItems.shift();
116
- if (deletedItem != null) {
117
- this._length--;
118
- if (firstQueueItem.listItems.length === 0) {
119
- this.indexedItems.delete(firstKey);
120
- }
121
- if (firstQueueItem.listItems.length < this.opts.minChunkSize) {
122
- // it's faster to search for deleted item from the head in this case
123
- this.minChunkSizeKeys.delete(firstKey, true);
124
- }
125
- return 1;
126
- }
127
- return 0;
128
- }
129
-
130
- /**
131
- * Try to get items of last key with minChunkSize first.
132
- * If not, pick the last key with MINIMUM_WAIT_TIME_MS old
133
- */
134
- next(): T[] | null {
135
- let key: string | null = this.minChunkSizeKeys.last();
136
- if (key == null) {
137
- key = this.lastMinWaitKey();
138
- }
139
-
140
- if (key == null) {
141
- return null;
142
- }
143
-
144
- const queueItem = this.indexedItems.get(key);
145
- if (queueItem == null) {
146
- // should not happen
147
- return null;
148
- }
149
-
150
- const list = queueItem.listItems;
151
- const result: T[] = [];
152
- while (list.length > 0 && result.length < this.opts.maxChunkSize) {
153
- const t = list.pop();
154
- if (t != null) {
155
- result.push(t);
156
- }
157
- }
158
-
159
- if (list.length === 0) {
160
- this.indexedItems.delete(key);
161
- }
162
- if (list.length < this.opts.minChunkSize) {
163
- // it's faster to search for deleted item from the tail in this case
164
- this.minChunkSizeKeys.delete(key, false);
165
- }
166
- this._length = Math.max(0, this._length - result.length);
167
-
168
- return result;
169
- }
170
-
171
- getAll(): T[] {
172
- const result: T[] = [];
173
- for (const key of this.indexedItems.keys()) {
174
- const array = this.indexedItems.get(key)?.listItems.toArray();
175
- if (array) {
176
- result.push(...array);
177
- }
178
- }
179
-
180
- return result;
181
- }
182
-
183
- /**
184
- * `indexedItems` is already sorted by key, so we can just iterate through it
185
- * Search for the last key with >= MINIMUM_WAIT_TIME_MS old
186
- * Do not search again if we already searched recently
187
- */
188
- private lastMinWaitKey(): string | null {
189
- const now = Date.now();
190
- // searched recently, skip
191
- if (this.nextWaitTimeMs != null && now - this.lastWaitTimeCheckedMs < this.nextWaitTimeMs) {
192
- return null;
193
- }
194
-
195
- this.lastWaitTimeCheckedMs = now;
196
- this.nextWaitTimeMs = null;
197
- let resultedKey: string | null = null;
198
- for (const [key, queueItem] of this.indexedItems.entries()) {
199
- if (now - queueItem.firstSeenMs >= MINIMUM_WAIT_TIME_MS) {
200
- // found, do not return to find the last key with >= MINIMUM_WAIT_TIME_MS old
201
- this.nextWaitTimeMs = null;
202
- resultedKey = key;
203
- } else {
204
- // if a key is not at least MINIMUM_WAIT_TIME_MS old, all remaining keys are not either
205
- break;
206
- }
207
- }
208
-
209
- if (resultedKey == null) {
210
- // all items are not old enough, set nextWaitTimeMs to avoid searching again
211
- const firstValue = this.indexedItems.values().next().value as QueueItem<T> | undefined;
212
- if (firstValue != null) {
213
- this.nextWaitTimeMs = Math.max(0, MINIMUM_WAIT_TIME_MS - (now - firstValue.firstSeenMs));
214
- }
215
- }
216
-
217
- return resultedKey;
218
- }
219
- }
@@ -1,162 +0,0 @@
1
- import {LinkedList} from "../../../util/array.js";
2
- import {DropType, GossipQueue, LinearGossipQueueOpts, QueueType} from "./types.js";
3
-
4
- // Having a drop ratio of 1 will empty the queue which is too severe
5
- // Worse case drop 95% of the queue
6
- const MAX_DROP_RATIO = 0.95;
7
-
8
- /**
9
- * Default gossip queue for all topics except for beacon_attestation
10
- * Support LIFO and FIFO type.
11
- */
12
- export class LinearGossipQueue<T> implements GossipQueue<T> {
13
- private readonly list = new LinkedList<T>();
14
- // Increase _dropRatio gradually, retest its initial value if node is in good status
15
- private _dropRatio = 0;
16
- // this is to avoid the case we drop 90% of the queue, then queue is empty and we consider
17
- // node is in good status
18
- private recentDrop = false;
19
- // set recentDrop to false after we process up to maxLength items
20
- private processedCountSinceDrop = 0;
21
-
22
- constructor(private readonly opts: LinearGossipQueueOpts) {
23
- if (opts.dropOpts.type === DropType.ratio) {
24
- const {start, step} = opts.dropOpts;
25
- if (start <= 0 || start > 1) {
26
- throw Error(`Invalid drop ratio start ${start} step ${step}`);
27
- }
28
- this._dropRatio = opts.dropOpts.start;
29
- }
30
- }
31
-
32
- get length(): number {
33
- return this.list.length;
34
- }
35
-
36
- get keySize(): number {
37
- // this implementation doesn't support indexing
38
- return 1;
39
- }
40
-
41
- // not implemented for this gossip queue
42
- getDataAgeMs(): number[] {
43
- return [];
44
- }
45
-
46
- get dropRatio(): number {
47
- return this._dropRatio;
48
- }
49
-
50
- clear(): void {
51
- this.list.clear();
52
- }
53
-
54
- /**
55
- * Add item to gossip queue.
56
- * Return number of items dropped
57
- */
58
- add(item: T): number {
59
- // this signals the node is not overloaded anymore
60
- if (this.opts.dropOpts.type === DropType.ratio && !this.recentDrop && this.length === 0) {
61
- // reset drop ratio to see if node is comfortable with it
62
- this._dropRatio = this.opts.dropOpts.start;
63
- }
64
-
65
- this.list.push(item);
66
-
67
- if (this.list.length <= this.opts.maxLength) {
68
- return 0;
69
- }
70
-
71
- // overload, need to drop more items
72
- if (this.opts.dropOpts.type === DropType.count) {
73
- return this.dropByCount(this.opts.dropOpts.count);
74
- }
75
-
76
- this.recentDrop = true;
77
- const droppedCount = this.dropByRatio(this._dropRatio);
78
- // increase drop ratio the next time queue is full
79
- this._dropRatio = Math.min(MAX_DROP_RATIO, this._dropRatio + this.opts.dropOpts.step);
80
- return droppedCount;
81
- }
82
-
83
- next(): T | null {
84
- let item: T | null = null;
85
- // LIFO -> pop() remove last item, FIFO -> shift() remove first item
86
- switch (this.opts.type) {
87
- case QueueType.LIFO:
88
- item = this.list.pop();
89
- break;
90
- case QueueType.FIFO:
91
- item = this.list.shift();
92
- break;
93
- }
94
-
95
- // it's ok to mark recent drop as false if we dropped <50% of the queue the last time
96
- if (this.opts.dropOpts.type === DropType.ratio && this.recentDrop && item !== null) {
97
- this.processedCountSinceDrop++;
98
- if (this.processedCountSinceDrop >= this.opts.maxLength) {
99
- this.recentDrop = false;
100
- this.processedCountSinceDrop = 0;
101
- }
102
- }
103
-
104
- return item;
105
- }
106
-
107
- getAll(): T[] {
108
- return this.list.toArray();
109
- }
110
-
111
- /**
112
- * Drop up to some ratio of items from the queue
113
- * ratio is from 0 to 1 inclusive
114
- * Return number of items dropped
115
- */
116
- private dropByRatio(ratio: number): number {
117
- if (ratio < 0 || ratio > 1) {
118
- throw Error(`Invalid ratio ${ratio}`);
119
- }
120
-
121
- if (ratio === 0) {
122
- return 0;
123
- }
124
-
125
- if (ratio === 1) {
126
- const numDeleted = this.length;
127
- this.clear();
128
- return numDeleted;
129
- }
130
-
131
- const count = Math.floor(this.list.length * ratio);
132
- return this.dropByCount(count);
133
- }
134
-
135
- /**
136
- * Drop up to some number of items from the queue
137
- * Return number of items dropped
138
- */
139
- private dropByCount(count: number): number {
140
- if (count <= 0) {
141
- return 0;
142
- }
143
-
144
- if (count >= this.length) {
145
- const numDeleted = this.length;
146
- this.clear();
147
- return numDeleted;
148
- }
149
-
150
- let i = 0;
151
- while (i < count && this.length > 0) {
152
- if (this.opts.type === QueueType.LIFO) {
153
- this.list.shift();
154
- } else {
155
- this.list.pop();
156
- }
157
- i++;
158
- }
159
-
160
- return i;
161
- }
162
- }
@@ -1,57 +0,0 @@
1
- export type GossipQueueOpts<T> = LinearGossipQueueOpts | IndexedGossipQueueMinSizeOpts<T>;
2
-
3
- export type LinearGossipQueueOpts = {
4
- type: QueueType;
5
- maxLength: number;
6
- dropOpts: DropOpts;
7
- };
8
-
9
- export type IndexedGossipQueueOpts<T> = {
10
- maxLength: number;
11
- indexFn: (item: T) => string | null;
12
- };
13
-
14
- export type IndexedGossipQueueMinSizeOpts<T> = IndexedGossipQueueOpts<T> & {
15
- minChunkSize: number;
16
- maxChunkSize: number;
17
- };
18
-
19
- export function isIndexedGossipQueueMinSizeOpts<T>(opts: GossipQueueOpts<T>): opts is IndexedGossipQueueMinSizeOpts<T> {
20
- const minSizeOpts = opts as IndexedGossipQueueMinSizeOpts<T>;
21
- return (
22
- minSizeOpts.indexFn !== undefined &&
23
- minSizeOpts.minChunkSize !== undefined &&
24
- minSizeOpts.maxChunkSize !== undefined
25
- );
26
- }
27
-
28
- export interface GossipQueue<T> {
29
- length: number;
30
- keySize: number;
31
- getDataAgeMs(): number[];
32
- clear: () => void;
33
- next: () => T | T[] | null;
34
- add: (item: T) => number;
35
- getAll(): T[];
36
- }
37
-
38
- export enum QueueType {
39
- FIFO = "FIFO",
40
- LIFO = "LIFO",
41
- }
42
-
43
- export enum DropType {
44
- count = "count",
45
- ratio = "ratio",
46
- }
47
-
48
- export type DropOpts =
49
- | {
50
- type: DropType.count;
51
- count: number;
52
- }
53
- | {
54
- type: DropType.ratio;
55
- start: number;
56
- step: number;
57
- };
@@ -1,142 +0,0 @@
1
- import {TopicValidatorResult} from "@libp2p/interface";
2
- import {ChainForkConfig} from "@lodestar/config";
3
- import {Logger} from "@lodestar/utils";
4
- import {AttestationError, GossipAction, GossipActionError} from "../../chain/errors/index.js";
5
- import {Metrics} from "../../metrics/index.js";
6
- import {
7
- BatchGossipHandlerFn,
8
- GossipHandlerFn,
9
- GossipHandlers,
10
- GossipMessageInfo,
11
- GossipValidatorBatchFn,
12
- GossipValidatorFn,
13
- } from "../gossip/interface.js";
14
-
15
- export type ValidatorFnModules = {
16
- config: ChainForkConfig;
17
- logger: Logger;
18
- metrics: Metrics | null;
19
- };
20
-
21
- /**
22
- * Similar to getGossipValidatorFn but return a function to accept a batch of beacon_attestation messages
23
- * with the same attestation data
24
- */
25
- export function getGossipValidatorBatchFn(
26
- gossipHandlers: GossipHandlers,
27
- modules: ValidatorFnModules
28
- ): GossipValidatorBatchFn {
29
- const {logger, metrics} = modules;
30
-
31
- return async function gossipValidatorBatchFn(messageInfos: GossipMessageInfo[]) {
32
- // all messageInfos have same topic type
33
- const type = messageInfos[0].topic.type;
34
- try {
35
- const results = await (gossipHandlers[type] as BatchGossipHandlerFn)(
36
- messageInfos.map((messageInfo) => ({
37
- gossipData: {
38
- serializedData: messageInfo.msg.data,
39
- msgSlot: messageInfo.msgSlot,
40
- indexed: messageInfo.indexed,
41
- },
42
- topic: messageInfo.topic,
43
- peerIdStr: messageInfo.propagationSource,
44
- seenTimestampSec: messageInfo.seenTimestampSec,
45
- }))
46
- );
47
-
48
- return results.map((e) => {
49
- if (e == null) {
50
- return TopicValidatorResult.Accept;
51
- }
52
-
53
- if (!(e instanceof AttestationError)) {
54
- logger.debug(`Gossip batch validation ${type} threw a non-AttestationError`, {}, e as Error);
55
- metrics?.networkProcessor.gossipValidationIgnore.inc({topic: type});
56
- return TopicValidatorResult.Ignore;
57
- }
58
-
59
- switch (e.action) {
60
- case GossipAction.IGNORE:
61
- metrics?.networkProcessor.gossipValidationIgnore.inc({topic: type});
62
- // only beacon_attestation topic is validated in batch
63
- metrics?.networkProcessor.gossipAttestationIgnoreByReason.inc({reason: e.type.code});
64
- return TopicValidatorResult.Ignore;
65
- case GossipAction.REJECT:
66
- metrics?.networkProcessor.gossipValidationReject.inc({topic: type});
67
- // only beacon_attestation topic is validated in batch
68
- metrics?.networkProcessor.gossipAttestationRejectByReason.inc({reason: e.type.code});
69
- logger.debug(`Gossip validation ${type} rejected`, {}, e);
70
- return TopicValidatorResult.Reject;
71
- }
72
- });
73
- } catch (e) {
74
- // Don't expect error here
75
- logger.debug(`Gossip batch validation ${type} threw an error`, {}, e as Error);
76
- const results: TopicValidatorResult[] = [];
77
- for (let i = 0; i < messageInfos.length; i++) {
78
- results.push(TopicValidatorResult.Ignore);
79
- }
80
- return results;
81
- }
82
- };
83
- }
84
-
85
- /**
86
- * Returns a GossipSub validator function from a GossipHandlerFn. GossipHandlerFn may throw GossipActionError if one
87
- * or more validation conditions from the consensus-specs#p2p-interface are not satisfied.
88
- *
89
- * This function receives a string topic and a binary message `InMessage` and deserializes both using caches.
90
- * - The topic string should be known in advance and pre-computed
91
- * - The message.data should already by uncompressed when computing its msgID
92
- *
93
- * All logging and metrics associated with gossip object validation should happen in this function. We want to know
94
- * - In debug logs what objects are we processing, the result and some succint metadata
95
- * - In metrics what's the throughput and ratio of accept/ignore/reject per type
96
- *
97
- * @see getGossipHandlers for reasoning on why GossipHandlerFn are used for gossip validation.
98
- */
99
- export function getGossipValidatorFn(gossipHandlers: GossipHandlers, modules: ValidatorFnModules): GossipValidatorFn {
100
- const {logger, metrics} = modules;
101
-
102
- return async function gossipValidatorFn({topic, msg, propagationSource, seenTimestampSec, msgSlot}) {
103
- const type = topic.type;
104
-
105
- try {
106
- await (gossipHandlers[type] as GossipHandlerFn)({
107
- gossipData: {serializedData: msg.data, msgSlot},
108
- topic,
109
- peerIdStr: propagationSource,
110
- seenTimestampSec,
111
- });
112
-
113
- metrics?.networkProcessor.gossipValidationAccept.inc({topic: type});
114
-
115
- return TopicValidatorResult.Accept;
116
- } catch (e) {
117
- if (!(e instanceof GossipActionError)) {
118
- // not deserve to log error here, it looks too dangerous to users
119
- logger.debug(`Gossip validation ${type} threw a non-GossipActionError`, {}, e as Error);
120
- return TopicValidatorResult.Ignore;
121
- }
122
-
123
- // Metrics on specific error reason
124
- // Note: LodestarError.code are bounded pre-declared error messages, not from arbitrary error.message
125
- metrics?.networkProcessor.gossipValidationError.inc({
126
- topic: type,
127
- error: (e as GossipActionError<{code: string}>).type.code,
128
- });
129
-
130
- switch (e.action) {
131
- case GossipAction.IGNORE:
132
- metrics?.networkProcessor.gossipValidationIgnore.inc({topic: type});
133
- return TopicValidatorResult.Ignore;
134
-
135
- case GossipAction.REJECT:
136
- metrics?.networkProcessor.gossipValidationReject.inc({topic: type});
137
- logger.debug(`Gossip validation ${type} rejected`, {}, e);
138
- return TopicValidatorResult.Reject;
139
- }
140
- }
141
- };
142
- }