@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,196 +0,0 @@
1
- import {routes} from "@lodestar/api";
2
- import {BeaconConfig} from "@lodestar/config";
3
- import {
4
- EFFECTIVE_BALANCE_INCREMENT,
5
- ForkName,
6
- INACTIVITY_PENALTY_QUOTIENT_ALTAIR,
7
- MAX_EFFECTIVE_BALANCE,
8
- MAX_EFFECTIVE_BALANCE_ELECTRA,
9
- PARTICIPATION_FLAG_WEIGHTS,
10
- TIMELY_HEAD_FLAG_INDEX,
11
- TIMELY_SOURCE_FLAG_INDEX,
12
- TIMELY_TARGET_FLAG_INDEX,
13
- WEIGHT_DENOMINATOR,
14
- isForkPostElectra,
15
- } from "@lodestar/params";
16
- import {
17
- CachedBeaconStateAllForks,
18
- CachedBeaconStateAltair,
19
- EpochTransitionCache,
20
- FLAG_ELIGIBLE_ATTESTER,
21
- FLAG_PREV_HEAD_ATTESTER_UNSLASHED,
22
- FLAG_PREV_SOURCE_ATTESTER_UNSLASHED,
23
- FLAG_PREV_TARGET_ATTESTER_UNSLASHED,
24
- beforeProcessEpoch,
25
- hasMarkers,
26
- isInInactivityLeak,
27
- } from "@lodestar/state-transition";
28
- import {Epoch, ValidatorIndex} from "@lodestar/types";
29
- import {fromHex} from "@lodestar/utils";
30
-
31
- export type AttestationsRewards = routes.beacon.AttestationsRewards;
32
- type IdealAttestationsReward = routes.beacon.IdealAttestationsReward;
33
- type TotalAttestationsReward = routes.beacon.TotalAttestationsReward;
34
- /** Attestations penalty with respect to effective balance in Gwei */
35
- type AttestationsPenalty = {target: number; source: number; effectiveBalance: number};
36
-
37
- const defaultAttestationsReward = {head: 0, target: 0, source: 0, inclusionDelay: 0, inactivity: 0};
38
- const defaultAttestationsPenalty = {target: 0, source: 0};
39
-
40
- export async function computeAttestationsRewards(
41
- _epoch: Epoch,
42
- state: CachedBeaconStateAllForks,
43
- _config: BeaconConfig,
44
- validatorIds?: (ValidatorIndex | string)[]
45
- ): Promise<AttestationsRewards> {
46
- const fork = state.config.getForkName(state.slot);
47
- if (fork === ForkName.phase0) {
48
- throw Error("Unsupported fork. Attestations rewards calculation is not available in phase0");
49
- }
50
-
51
- const stateAltair = state as CachedBeaconStateAltair;
52
- const transitionCache = beforeProcessEpoch(stateAltair);
53
-
54
- const [idealRewards, penalties] = computeIdealAttestationsRewardsAndPenaltiesAltair(stateAltair, transitionCache);
55
- const totalRewards = computeTotalAttestationsRewardsAltair(
56
- stateAltair,
57
- transitionCache,
58
- idealRewards,
59
- penalties,
60
- validatorIds
61
- );
62
-
63
- return {idealRewards, totalRewards};
64
- }
65
-
66
- function computeIdealAttestationsRewardsAndPenaltiesAltair(
67
- state: CachedBeaconStateAllForks,
68
- transitionCache: EpochTransitionCache
69
- ): [IdealAttestationsReward[], AttestationsPenalty[]] {
70
- const baseRewardPerIncrement = transitionCache.baseRewardPerIncrement;
71
- const activeBalanceByIncrement = transitionCache.totalActiveStakeByIncrement;
72
- const fork = state.config.getForkName(state.slot);
73
- const maxEffectiveBalance = isForkPostElectra(fork) ? MAX_EFFECTIVE_BALANCE_ELECTRA : MAX_EFFECTIVE_BALANCE;
74
- const maxEffectiveBalanceByIncrement = Math.floor(maxEffectiveBalance / EFFECTIVE_BALANCE_INCREMENT);
75
-
76
- const idealRewards = Array.from({length: maxEffectiveBalanceByIncrement + 1}, (_, effectiveBalanceByIncrement) => ({
77
- ...defaultAttestationsReward,
78
- effectiveBalance: effectiveBalanceByIncrement * EFFECTIVE_BALANCE_INCREMENT,
79
- }));
80
-
81
- const attestationsPenalties: AttestationsPenalty[] = Array.from(
82
- {length: maxEffectiveBalanceByIncrement + 1},
83
- (_, effectiveBalanceByIncrement) => ({
84
- ...defaultAttestationsPenalty,
85
- effectiveBalance: effectiveBalanceByIncrement * EFFECTIVE_BALANCE_INCREMENT,
86
- })
87
- );
88
-
89
- for (let i = 0; i < PARTICIPATION_FLAG_WEIGHTS.length; i++) {
90
- const weight = PARTICIPATION_FLAG_WEIGHTS[i];
91
-
92
- let unslashedStakeByIncrement: number;
93
- let flagName: keyof IdealAttestationsReward;
94
-
95
- switch (i) {
96
- case TIMELY_SOURCE_FLAG_INDEX: {
97
- unslashedStakeByIncrement = transitionCache.prevEpochUnslashedStake.sourceStakeByIncrement;
98
- flagName = "source";
99
- break;
100
- }
101
- case TIMELY_TARGET_FLAG_INDEX: {
102
- unslashedStakeByIncrement = transitionCache.prevEpochUnslashedStake.targetStakeByIncrement;
103
- flagName = "target";
104
- break;
105
- }
106
- case TIMELY_HEAD_FLAG_INDEX: {
107
- unslashedStakeByIncrement = transitionCache.prevEpochUnslashedStake.headStakeByIncrement;
108
- flagName = "head";
109
- break;
110
- }
111
- default: {
112
- throw Error(`Unable to retrieve unslashed stake. Unknown participation flag index: ${i}`);
113
- }
114
- }
115
-
116
- for (
117
- let effectiveBalanceByIncrement = 0;
118
- effectiveBalanceByIncrement <= maxEffectiveBalanceByIncrement;
119
- effectiveBalanceByIncrement++
120
- ) {
121
- const baseReward = effectiveBalanceByIncrement * baseRewardPerIncrement;
122
- const rewardNumerator = baseReward * weight * unslashedStakeByIncrement;
123
- // Both idealReward and penalty are rounded to nearest integer. Loss of precision is minimal as unit is gwei
124
- const idealReward = Math.round(rewardNumerator / activeBalanceByIncrement / WEIGHT_DENOMINATOR);
125
- const penalty = Math.round((baseReward * weight) / WEIGHT_DENOMINATOR); // Positive number indicates penalty
126
-
127
- const idealAttestationsReward = idealRewards[effectiveBalanceByIncrement];
128
- idealAttestationsReward[flagName] = isInInactivityLeak(state) ? 0 : idealReward; // No attestations rewards during inactivity leak
129
-
130
- if (flagName !== "head") {
131
- const attestationPenalty = attestationsPenalties[effectiveBalanceByIncrement];
132
- attestationPenalty[flagName] = penalty;
133
- }
134
- }
135
- }
136
-
137
- return [idealRewards, attestationsPenalties];
138
- }
139
-
140
- // Same calculation as `getRewardsAndPenaltiesAltair` but returns the breakdown of rewards instead of aggregated
141
- function computeTotalAttestationsRewardsAltair(
142
- state: CachedBeaconStateAltair,
143
- transitionCache: EpochTransitionCache,
144
- idealRewards: IdealAttestationsReward[],
145
- penalties: AttestationsPenalty[],
146
- validatorIds: (ValidatorIndex | string)[] = []
147
- ): TotalAttestationsReward[] {
148
- const rewards = [];
149
- const {flags} = transitionCache;
150
- const {epochCtx, config} = state;
151
- const validatorIndices = validatorIds
152
- .map((id) => (typeof id === "number" ? id : epochCtx.pubkey2index.get(fromHex(id))))
153
- .filter((index) => index !== undefined); // Validator indices to include in the result
154
-
155
- const inactivityPenaltyDenominator = config.INACTIVITY_SCORE_BIAS * INACTIVITY_PENALTY_QUOTIENT_ALTAIR;
156
-
157
- for (let i = 0; i < flags.length; i++) {
158
- if (validatorIndices.length && !validatorIndices.includes(i)) {
159
- continue;
160
- }
161
-
162
- const flag = flags[i];
163
- if (!hasMarkers(flag, FLAG_ELIGIBLE_ATTESTER)) {
164
- continue;
165
- }
166
-
167
- const effectiveBalanceIncrement = epochCtx.effectiveBalanceIncrements[i];
168
-
169
- const currentRewards = {...defaultAttestationsReward, validatorIndex: i};
170
-
171
- if (hasMarkers(flag, FLAG_PREV_SOURCE_ATTESTER_UNSLASHED)) {
172
- currentRewards.source = idealRewards[effectiveBalanceIncrement].source;
173
- } else {
174
- currentRewards.source = penalties[effectiveBalanceIncrement].source * -1; // Negative reward to indicate penalty
175
- }
176
-
177
- if (hasMarkers(flag, FLAG_PREV_TARGET_ATTESTER_UNSLASHED)) {
178
- currentRewards.target = idealRewards[effectiveBalanceIncrement].target;
179
- } else {
180
- currentRewards.target = penalties[effectiveBalanceIncrement].target * -1;
181
-
182
- // Also incur inactivity penalty if not voting target correctly
183
- const inactivityPenaltyNumerator =
184
- effectiveBalanceIncrement * EFFECTIVE_BALANCE_INCREMENT * state.inactivityScores.get(i);
185
- currentRewards.inactivity = Math.floor(inactivityPenaltyNumerator / inactivityPenaltyDenominator) * -1;
186
- }
187
-
188
- if (hasMarkers(flag, FLAG_PREV_HEAD_ATTESTER_UNSLASHED)) {
189
- currentRewards.head = idealRewards[effectiveBalanceIncrement].head;
190
- }
191
-
192
- rewards.push(currentRewards);
193
- }
194
-
195
- return rewards;
196
- }
@@ -1,150 +0,0 @@
1
- import {routes} from "@lodestar/api";
2
- import {
3
- ForkName,
4
- WHISTLEBLOWER_REWARD_QUOTIENT,
5
- WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA,
6
- isForkPostElectra,
7
- } from "@lodestar/params";
8
- import {
9
- CachedBeaconStateAllForks,
10
- CachedBeaconStateAltair,
11
- CachedBeaconStatePhase0,
12
- getAttesterSlashableIndices,
13
- processAttestationsAltair,
14
- } from "@lodestar/state-transition";
15
- import {BeaconBlock, altair, phase0} from "@lodestar/types";
16
-
17
- export type BlockRewards = routes.beacon.BlockRewards;
18
- type SubRewardValue = number; // All reward values should be integer
19
-
20
- /**
21
- * Calculate total proposer block rewards given block and the beacon state of the same slot before the block is applied (preState)
22
- * postState can be passed in to read reward cache if available
23
- * Standard (Non MEV) rewards for proposing a block consists of:
24
- * 1) Including attestations from (beacon) committee
25
- * 2) Including attestations from sync committee
26
- * 3) Reporting slashable behaviours from proposer and attester
27
- */
28
- export async function computeBlockRewards(
29
- block: BeaconBlock,
30
- preState: CachedBeaconStateAllForks,
31
- postState?: CachedBeaconStateAllForks
32
- ): Promise<BlockRewards> {
33
- const fork = preState.config.getForkName(block.slot);
34
- const {attestations: cachedAttestationsReward = 0, syncAggregate: cachedSyncAggregateReward = 0} =
35
- postState?.proposerRewards ?? {};
36
- let blockAttestationReward = cachedAttestationsReward;
37
- let syncAggregateReward = cachedSyncAggregateReward;
38
-
39
- if (blockAttestationReward === 0) {
40
- blockAttestationReward =
41
- fork === ForkName.phase0
42
- ? computeBlockAttestationRewardPhase0(block as phase0.BeaconBlock, preState as CachedBeaconStatePhase0)
43
- : computeBlockAttestationRewardAltair(block as altair.BeaconBlock, preState as CachedBeaconStateAltair);
44
- }
45
-
46
- if (syncAggregateReward === 0) {
47
- syncAggregateReward = computeSyncAggregateReward(block as altair.BeaconBlock, preState as CachedBeaconStateAltair);
48
- }
49
-
50
- const blockProposerSlashingReward = computeBlockProposerSlashingReward(fork, block, preState);
51
- const blockAttesterSlashingReward = computeBlockAttesterSlashingReward(fork, block, preState);
52
-
53
- const total =
54
- blockAttestationReward + syncAggregateReward + blockProposerSlashingReward + blockAttesterSlashingReward;
55
-
56
- return {
57
- proposerIndex: block.proposerIndex,
58
- total,
59
- attestations: blockAttestationReward,
60
- syncAggregate: syncAggregateReward,
61
- proposerSlashings: blockProposerSlashingReward,
62
- attesterSlashings: blockAttesterSlashingReward,
63
- };
64
- }
65
-
66
- /**
67
- * TODO: Calculate rewards received by block proposer for including attestations.
68
- */
69
- function computeBlockAttestationRewardPhase0(
70
- _block: phase0.BeaconBlock,
71
- _preState: CachedBeaconStatePhase0
72
- ): SubRewardValue {
73
- throw new Error("Unsupported fork! Block attestation reward calculation is not available in phase0");
74
- }
75
-
76
- /**
77
- * Calculate rewards received by block proposer for including attestations since Altair.
78
- * Reuses `processAttestationsAltair()`. Has dependency on RewardCache
79
- */
80
- function computeBlockAttestationRewardAltair(
81
- block: altair.BeaconBlock,
82
- preState: CachedBeaconStateAltair
83
- ): SubRewardValue {
84
- const fork = preState.config.getForkSeq(block.slot);
85
- const {attestations} = block.body;
86
-
87
- processAttestationsAltair(fork, preState, attestations, false);
88
-
89
- return preState.proposerRewards.attestations;
90
- }
91
-
92
- function computeSyncAggregateReward(block: altair.BeaconBlock, preState: CachedBeaconStateAltair): SubRewardValue {
93
- if (block.body.syncAggregate !== undefined) {
94
- const {syncCommitteeBits} = block.body.syncAggregate;
95
- const {syncProposerReward} = preState.epochCtx;
96
-
97
- return syncCommitteeBits.getTrueBitIndexes().length * Math.floor(syncProposerReward); // syncProposerReward should already be integer
98
- }
99
-
100
- return 0; // phase0 block does not have syncAggregate
101
- }
102
-
103
- /**
104
- * Calculate rewards received by block proposer for including proposer slashings.
105
- * All proposer slashing rewards go to block proposer and none to whistleblower as of Deneb
106
- */
107
- function computeBlockProposerSlashingReward(
108
- fork: ForkName,
109
- block: BeaconBlock,
110
- state: CachedBeaconStateAllForks
111
- ): SubRewardValue {
112
- let proposerSlashingReward = 0;
113
-
114
- for (const proposerSlashing of block.body.proposerSlashings) {
115
- const offendingProposerIndex = proposerSlashing.signedHeader1.message.proposerIndex;
116
- const offendingProposerBalance = state.validators.getReadonly(offendingProposerIndex).effectiveBalance;
117
- const whistleblowerRewardQuotient = isForkPostElectra(fork)
118
- ? WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA
119
- : WHISTLEBLOWER_REWARD_QUOTIENT;
120
-
121
- proposerSlashingReward += Math.floor(offendingProposerBalance / whistleblowerRewardQuotient);
122
- }
123
-
124
- return proposerSlashingReward;
125
- }
126
-
127
- /**
128
- * Calculate rewards received by block proposer for including attester slashings.
129
- * All attester slashing rewards go to block proposer and none to whistleblower as of Deneb
130
- */
131
- function computeBlockAttesterSlashingReward(
132
- fork: ForkName,
133
- block: BeaconBlock,
134
- preState: CachedBeaconStateAllForks
135
- ): SubRewardValue {
136
- let attesterSlashingReward = 0;
137
-
138
- for (const attesterSlashing of block.body.attesterSlashings) {
139
- for (const offendingAttesterIndex of getAttesterSlashableIndices(attesterSlashing)) {
140
- const offendingAttesterBalance = preState.validators.getReadonly(offendingAttesterIndex).effectiveBalance;
141
- const whistleblowerRewardQuotient = isForkPostElectra(fork)
142
- ? WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA
143
- : WHISTLEBLOWER_REWARD_QUOTIENT;
144
-
145
- attesterSlashingReward += Math.floor(offendingAttesterBalance / whistleblowerRewardQuotient);
146
- }
147
- }
148
-
149
- return attesterSlashingReward;
150
- }
@@ -1,58 +0,0 @@
1
- import {routes} from "@lodestar/api";
2
- import {ForkName, SYNC_COMMITTEE_SIZE} from "@lodestar/params";
3
- import {CachedBeaconStateAllForks, CachedBeaconStateAltair} from "@lodestar/state-transition";
4
- import {BeaconBlock, ValidatorIndex, altair} from "@lodestar/types";
5
-
6
- export type SyncCommitteeRewards = routes.beacon.SyncCommitteeRewards;
7
- type BalanceRecord = {val: number}; // Use val for convenient way to increment/decrement balance
8
-
9
- export async function computeSyncCommitteeRewards(
10
- block: BeaconBlock,
11
- preState: CachedBeaconStateAllForks,
12
- validatorIds: (ValidatorIndex | string)[] = []
13
- ): Promise<SyncCommitteeRewards> {
14
- const fork = preState.config.getForkName(block.slot);
15
- if (fork === ForkName.phase0) {
16
- throw Error("Cannot get sync rewards as phase0 block does not have sync committee");
17
- }
18
-
19
- const altairBlock = block as altair.BeaconBlock;
20
- const preStateAltair = preState as CachedBeaconStateAltair;
21
- const {index2pubkey} = preStateAltair.epochCtx;
22
-
23
- // Bound syncCommitteeValidatorIndices in case it goes beyond SYNC_COMMITTEE_SIZE just to be safe
24
- const syncCommitteeValidatorIndices = preStateAltair.epochCtx.currentSyncCommitteeIndexed.validatorIndices.slice(
25
- 0,
26
- SYNC_COMMITTEE_SIZE
27
- );
28
- const {syncParticipantReward} = preStateAltair.epochCtx;
29
- const {syncCommitteeBits} = altairBlock.body.syncAggregate;
30
-
31
- // Use balance of each committee as starting point such that we cap the penalty to avoid balance dropping below 0
32
- const balances: Map<ValidatorIndex, BalanceRecord> = new Map();
33
- for (const i of syncCommitteeValidatorIndices) {
34
- balances.set(i, {val: preStateAltair.balances.get(i)});
35
- }
36
-
37
- for (const i of syncCommitteeValidatorIndices) {
38
- const balanceRecord = balances.get(i) as BalanceRecord;
39
- if (syncCommitteeBits.get(i)) {
40
- // Positive rewards for participants
41
- balanceRecord.val += syncParticipantReward;
42
- } else {
43
- // Negative rewards for non participants
44
- balanceRecord.val = Math.max(0, balanceRecord.val - syncParticipantReward);
45
- }
46
- }
47
-
48
- const rewards = Array.from(balances, ([validatorIndex, v]) => ({validatorIndex, reward: v.val}));
49
-
50
- if (validatorIds.length) {
51
- const filtersSet = new Set(validatorIds);
52
- return rewards.filter(
53
- (reward) => filtersSet.has(reward.validatorIndex) || filtersSet.has(index2pubkey[reward.validatorIndex].toHex())
54
- );
55
- }
56
-
57
- return rewards;
58
- }
@@ -1,5 +0,0 @@
1
- export {SeenAggregators, SeenAttesters} from "./seenAttesters.js";
2
- export {SeenBlockProposers} from "./seenBlockProposers.js";
3
- export {SeenSyncCommitteeMessages} from "./seenCommittee.js";
4
- export {SeenContributionAndProof} from "./seenCommitteeContribution.js";
5
- export {SeenBlockInput} from "./seenGossipBlockInput.js";
@@ -1,120 +0,0 @@
1
- import {BitArray} from "@chainsafe/ssz";
2
- import {CommitteeIndex, Epoch, RootHex} from "@lodestar/types";
3
- import {MapDef} from "@lodestar/utils";
4
- import {Metrics} from "../../metrics/index.js";
5
- import {isSuperSetOrEqual} from "../../util/bitArray.js";
6
-
7
- /**
8
- * With this gossip validation condition:
9
- * pre-deneb:
10
- * - [IGNORE] aggregate.data.slot is within the last ATTESTATION_PROPAGATION_SLOT_RANGE slots (with a MAXIMUM_GOSSIP_CLOCK_DISPARITY allowance)
11
- * post-deneb:
12
- * - [IGNORE] the epoch of `aggregate.data.slot` is either the current or previous epoch
13
- * - [IGNORE] `aggregate.data.slot` is equal to or earlier than the `current_slot` (with a `MAXIMUM_GOSSIP_CLOCK_DISPARITY` allowance)
14
- *
15
- * We keep seen AggregateAndProof in the last 2 epochs pre and post deneb.
16
- */
17
- const EPOCH_LOOKBACK_LIMIT = 2;
18
-
19
- export type AggregationInfo = {
20
- aggregationBits: BitArray;
21
- trueBitCount: number;
22
- };
23
-
24
- /**
25
- * Although there are up to TARGET_AGGREGATORS_PER_COMMITTEE (16 for mainnet) AggregateAndProof messages per slot,
26
- * they tend to have the same aggregate attestation, or one attestation is non-strict superset of another,
27
- * the gossipsub messages-ids are different because they are really different SignedAggregateAndProof object.
28
- * This is used to address the following spec in p2p-interface gossipsub:
29
- * _[IGNORE]_ A valid aggregate attestation defined by `hash_tree_root(aggregate.data)` whose `aggregation_bits` is a
30
- * non-strict superset has _not_ already been seen.
31
- *
32
- * We have AggregatedAttestationPool op pool, however aggregated attestations are not added to that place while this does.
33
- */
34
- export class SeenAggregatedAttestations {
35
- /**
36
- * Array of AttestingIndices by same attestation data root by epoch.
37
- * Note that there are at most TARGET_AGGREGATORS_PER_COMMITTEE (16) per attestation data.
38
- * */
39
- private readonly aggregateRootsByEpoch = new MapDef<
40
- Epoch,
41
- MapDef<CommitteeIndex, MapDef<RootHex, AggregationInfo[]>>
42
- >(
43
- () =>
44
- new MapDef<CommitteeIndex, MapDef<RootHex, AggregationInfo[]>>(
45
- () => new MapDef<RootHex, AggregationInfo[]>(() => [])
46
- )
47
- );
48
- private lowestPermissibleEpoch: Epoch = 0;
49
-
50
- constructor(private readonly metrics: Metrics | null) {}
51
-
52
- isKnown(
53
- targetEpoch: Epoch,
54
- committeeIndex: CommitteeIndex,
55
- attDataRoot: RootHex,
56
- aggregationBits: BitArray
57
- ): boolean {
58
- const seenAggregationInfoArr = this.aggregateRootsByEpoch
59
- .getOrDefault(targetEpoch)
60
- .getOrDefault(committeeIndex)
61
- .getOrDefault(attDataRoot);
62
- this.metrics?.seenCache.aggregatedAttestations.isKnownCalls.inc();
63
-
64
- for (let i = 0; i < seenAggregationInfoArr.length; i++) {
65
- if (isSuperSetOrEqual(seenAggregationInfoArr[i].aggregationBits, aggregationBits)) {
66
- this.metrics?.seenCache.aggregatedAttestations.superSetCheckTotal.observe(i + 1);
67
- this.metrics?.seenCache.aggregatedAttestations.isKnownHits.inc();
68
- return true;
69
- }
70
- }
71
-
72
- this.metrics?.seenCache.aggregatedAttestations.superSetCheckTotal.observe(seenAggregationInfoArr.length);
73
- return false;
74
- }
75
-
76
- add(
77
- targetEpoch: Epoch,
78
- committeeIndex: CommitteeIndex,
79
- attDataRoot: RootHex,
80
- newItem: AggregationInfo,
81
- checkIsKnown: boolean
82
- ): void {
83
- const {aggregationBits} = newItem;
84
- if (checkIsKnown && this.isKnown(targetEpoch, committeeIndex, attDataRoot, aggregationBits)) {
85
- return;
86
- }
87
-
88
- const seenAggregationInfoArr = this.aggregateRootsByEpoch
89
- .getOrDefault(targetEpoch)
90
- .getOrDefault(committeeIndex)
91
- .getOrDefault(attDataRoot);
92
- insertDesc(seenAggregationInfoArr, newItem);
93
- }
94
-
95
- prune(currentEpoch: Epoch): void {
96
- this.lowestPermissibleEpoch = Math.max(currentEpoch - EPOCH_LOOKBACK_LIMIT, 0);
97
- for (const epoch of this.aggregateRootsByEpoch.keys()) {
98
- if (epoch < this.lowestPermissibleEpoch) {
99
- this.aggregateRootsByEpoch.delete(epoch);
100
- }
101
- }
102
- }
103
- }
104
-
105
- /**
106
- * Make sure seenAggregationInfoArr is always in desc order based on trueBitCount so that isKnown can be faster
107
- */
108
- export function insertDesc(seenAggregationInfoArr: AggregationInfo[], newItem: AggregationInfo): void {
109
- const {trueBitCount} = newItem;
110
- let found = false;
111
- for (let i = 0; i < seenAggregationInfoArr.length; i++) {
112
- if (trueBitCount >= seenAggregationInfoArr[i].trueBitCount) {
113
- seenAggregationInfoArr.splice(i, 0, newItem);
114
- found = true;
115
- break;
116
- }
117
- }
118
-
119
- if (!found) seenAggregationInfoArr.push(newItem);
120
- }
@@ -1,145 +0,0 @@
1
- import {CommitteeIndex, RootHex, Slot, SubnetID, phase0} from "@lodestar/types";
2
- import {MapDef} from "@lodestar/utils";
3
- import {Metrics} from "../../metrics/metrics.js";
4
- import {InsertOutcome} from "../opPools/types.js";
5
-
6
- export type SeenAttDataKey = AttDataBase64;
7
- // AttestationData is used to cache attestations
8
- type AttDataBase64 = string;
9
-
10
- export type AttestationDataCacheEntry = {
11
- // part of shuffling data, so this does not take memory
12
- committeeValidatorIndices: Uint32Array;
13
- committeeIndex: CommitteeIndex;
14
- // IndexedAttestationData signing root, 32 bytes
15
- signingRoot: Uint8Array;
16
- // to be consumed by forkchoice and oppool
17
- attDataRootHex: RootHex;
18
- // caching this for 3 slots take 600 instances max, this is nothing compared to attestations processed per slot
19
- // for example in a mainnet node subscribing to all subnets, attestations are processed up to 20k per slot
20
- attestationData: phase0.AttestationData;
21
- subnet: SubnetID;
22
- };
23
-
24
- export enum RejectReason {
25
- // attestation data reaches MAX_CACHE_SIZE_PER_SLOT
26
- reached_limit = "reached_limit",
27
- // attestation data is too old
28
- too_old = "too_old",
29
- // attestation data is already known
30
- already_known = "already_known",
31
- }
32
-
33
- // For pre-electra, there is no committeeIndex in SingleAttestation, so we hard code it to 0
34
- // AttDataBase64 has committeeIndex instead
35
- export const PRE_ELECTRA_SINGLE_ATTESTATION_COMMITTEE_INDEX = 0;
36
-
37
- /**
38
- * There are maximum 64 committees per slot, assuming 1 committee may have up to 3 different data due to some nodes
39
- * are not up to date, we can have up to 192 different attestation data per slot.
40
- */
41
- const DEFAULT_MAX_CACHE_SIZE_PER_SLOT = 200;
42
-
43
- /**
44
- * It takes less than 300kb to cache 200 attestation data per slot, so we can cache 3 slots worth of attestation data.
45
- */
46
- const DEFAULT_CACHE_SLOT_DISTANCE = 2;
47
-
48
- /**
49
- * Cached seen AttestationData to improve gossip validation. For Electra, this still take into account attestationIndex
50
- * even through it is moved outside of AttestationData.
51
- * As of April 2023, validating gossip attestation takes ~12% of cpu time for a node subscribing to all subnets on mainnet.
52
- * Having this cache help saves a lot of cpu time since most of the gossip attestations are on the same slot.
53
- */
54
- export class SeenAttestationDatas {
55
- private cacheEntryByAttDataByIndexBySlot = new MapDef<
56
- Slot,
57
- MapDef<CommitteeIndex, Map<AttDataBase64, AttestationDataCacheEntry>>
58
- >(
59
- () =>
60
- new MapDef<CommitteeIndex, Map<AttDataBase64, AttestationDataCacheEntry>>(
61
- () => new Map<AttDataBase64, AttestationDataCacheEntry>()
62
- )
63
- );
64
- private lowestPermissibleSlot = 0;
65
-
66
- constructor(
67
- private readonly metrics: Metrics | null,
68
- private readonly cacheSlotDistance = DEFAULT_CACHE_SLOT_DISTANCE,
69
- // mainly for unit test
70
- private readonly maxCacheSizePerSlot = DEFAULT_MAX_CACHE_SIZE_PER_SLOT
71
- ) {
72
- metrics?.seenCache.attestationData.totalSlot.addCollect(() => this.onScrapeLodestarMetrics(metrics));
73
- }
74
-
75
- /**
76
- * Add an AttestationDataCacheEntry to the cache.
77
- * - preElectra: add(slot, PRE_ELECTRA_SINGLE_ATTESTATION_COMMITTEE_INDEX, attDataBase64, cacheEntry)
78
- * - electra: add(slot, committeeIndex, attDataBase64, cacheEntry)
79
- */
80
- add(
81
- slot: Slot,
82
- committeeIndex: CommitteeIndex,
83
- attDataBase64: AttDataBase64,
84
- cacheEntry: AttestationDataCacheEntry
85
- ): InsertOutcome {
86
- if (slot < this.lowestPermissibleSlot) {
87
- this.metrics?.seenCache.attestationData.reject.inc({reason: RejectReason.too_old});
88
- return InsertOutcome.Old;
89
- }
90
-
91
- const cacheEntryByAttDataByIndex = this.cacheEntryByAttDataByIndexBySlot.getOrDefault(slot);
92
- const cacheEntryByAttData = cacheEntryByAttDataByIndex.getOrDefault(committeeIndex);
93
- if (cacheEntryByAttData.has(attDataBase64)) {
94
- this.metrics?.seenCache.attestationData.reject.inc({reason: RejectReason.already_known});
95
- return InsertOutcome.AlreadyKnown;
96
- }
97
-
98
- if (cacheEntryByAttData.size >= this.maxCacheSizePerSlot) {
99
- this.metrics?.seenCache.attestationData.reject.inc({reason: RejectReason.reached_limit});
100
- return InsertOutcome.ReachLimit;
101
- }
102
-
103
- cacheEntryByAttData.set(attDataBase64, cacheEntry);
104
- return InsertOutcome.NewData;
105
- }
106
-
107
- /**
108
- * Get an AttestationDataCacheEntry from the cache.
109
- * - preElectra: get(slot, PRE_ELECTRA_SINGLE_ATTESTATION_COMMITTEE_INDEX, attDataBase64)
110
- * - electra: get(slot, committeeIndex, attDataBase64)
111
- */
112
- get(slot: Slot, committeeIndex: CommitteeIndex, attDataBase64: SeenAttDataKey): AttestationDataCacheEntry | null {
113
- const cacheEntryByAttDataByIndex = this.cacheEntryByAttDataByIndexBySlot.get(slot);
114
- const cacheEntryByAttData = cacheEntryByAttDataByIndex?.get(committeeIndex);
115
- const cacheEntry = cacheEntryByAttData?.get(attDataBase64);
116
- if (cacheEntry) {
117
- this.metrics?.seenCache.attestationData.hit.inc();
118
- } else {
119
- this.metrics?.seenCache.attestationData.miss.inc();
120
- }
121
- return cacheEntry ?? null;
122
- }
123
-
124
- onSlot(clockSlot: Slot): void {
125
- this.lowestPermissibleSlot = Math.max(clockSlot - this.cacheSlotDistance, 0);
126
- for (const slot of this.cacheEntryByAttDataByIndexBySlot.keys()) {
127
- if (slot < this.lowestPermissibleSlot) {
128
- this.cacheEntryByAttDataByIndexBySlot.delete(slot);
129
- }
130
- }
131
- }
132
-
133
- private onScrapeLodestarMetrics(metrics: Metrics): void {
134
- metrics?.seenCache.attestationData.totalSlot.set(this.cacheEntryByAttDataByIndexBySlot.size);
135
- // tracking number of attestation data at current slot may not be correct if scrape time is not at the end of slot
136
- // so we track it at the previous slot
137
- const previousSlot = this.lowestPermissibleSlot + this.cacheSlotDistance - 1;
138
- const cacheEntryByAttDataByIndex = this.cacheEntryByAttDataByIndexBySlot.get(previousSlot);
139
- let count = 0;
140
- for (const cacheEntryByAttDataBase64 of cacheEntryByAttDataByIndex?.values() ?? []) {
141
- count += cacheEntryByAttDataBase64.size;
142
- }
143
- metrics?.seenCache.attestationData.countPerSlot.set(count);
144
- }
145
- }