@lodestar/beacon-node 1.35.0-dev.fcf8d024ea → 1.35.0-dev.feed916580

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 (945) 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/validator/index.js +3 -5
  5. package/lib/api/impl/validator/index.js.map +1 -1
  6. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -1
  7. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  8. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  9. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  10. package/lib/chain/blocks/blockInput/blockInput.js +1 -1
  11. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  12. package/lib/chain/blocks/importBlock.js +3 -4
  13. package/lib/chain/blocks/importBlock.js.map +1 -1
  14. package/lib/chain/blocks/verifyBlocksDataAvailability.js +1 -8
  15. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  16. package/lib/chain/blocks/writeBlockInputToDb.js +7 -1
  17. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  18. package/lib/chain/bls/multithread/index.js +0 -1
  19. package/lib/chain/bls/multithread/index.js.map +1 -1
  20. package/lib/chain/chain.js +3 -2
  21. package/lib/chain/chain.js.map +1 -1
  22. package/lib/chain/emitter.d.ts +2 -2
  23. package/lib/chain/opPools/attestationPool.d.ts +3 -2
  24. package/lib/chain/opPools/attestationPool.js +5 -3
  25. package/lib/chain/opPools/attestationPool.js.map +1 -1
  26. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts +2 -3
  27. package/lib/chain/opPools/syncCommitteeMessagePool.js +5 -6
  28. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  29. package/lib/chain/opPools/types.d.ts +1 -1
  30. package/lib/chain/opPools/types.js +1 -1
  31. package/lib/chain/opPools/types.js.map +1 -1
  32. package/lib/chain/prepareNextSlot.d.ts +3 -3
  33. package/lib/chain/prepareNextSlot.js +8 -8
  34. package/lib/chain/prepareNextSlot.js.map +1 -1
  35. package/lib/chain/stateCache/persistentCheckpointsCache.js +8 -9
  36. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  37. package/lib/chain/validation/lightClientFinalityUpdate.js +3 -4
  38. package/lib/chain/validation/lightClientFinalityUpdate.js.map +1 -1
  39. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts +4 -6
  40. package/lib/chain/validation/lightClientOptimisticUpdate.js +11 -11
  41. package/lib/chain/validation/lightClientOptimisticUpdate.js.map +1 -1
  42. package/lib/chain/validatorMonitor.js +14 -20
  43. package/lib/chain/validatorMonitor.js.map +1 -1
  44. package/lib/db/buckets.d.ts +4 -4
  45. package/lib/db/buckets.js +4 -4
  46. package/lib/db/buckets.js.map +1 -1
  47. package/lib/db/repositories/blobSidecars.js +1 -1
  48. package/lib/db/repositories/blobSidecars.js.map +1 -1
  49. package/lib/db/repositories/blobSidecarsArchive.js +1 -1
  50. package/lib/db/repositories/blobSidecarsArchive.js.map +1 -1
  51. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  52. package/lib/db/repositories/dataColumnSidecar.js +1 -1
  53. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  54. package/lib/db/repositories/dataColumnSidecarArchive.js +1 -1
  55. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  56. package/lib/metrics/metrics/lodestar.d.ts +1 -1
  57. package/lib/metrics/metrics/lodestar.js +3 -3
  58. package/lib/metrics/metrics/lodestar.js.map +1 -1
  59. package/lib/network/core/networkCoreWorkerHandler.js +3 -9
  60. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  61. package/lib/network/discv5/index.js +1 -4
  62. package/lib/network/discv5/index.js.map +1 -1
  63. package/lib/network/gossip/gossipsub.d.ts +0 -1
  64. package/lib/network/gossip/gossipsub.js +16 -35
  65. package/lib/network/gossip/gossipsub.js.map +1 -1
  66. package/lib/network/gossip/metrics.d.ts +7 -15
  67. package/lib/network/gossip/metrics.js +6 -16
  68. package/lib/network/gossip/metrics.js.map +1 -1
  69. package/lib/network/libp2p/index.js +1 -9
  70. package/lib/network/libp2p/index.js.map +1 -1
  71. package/lib/network/metadata.js +1 -2
  72. package/lib/network/metadata.js.map +1 -1
  73. package/lib/network/network.d.ts +1 -1
  74. package/lib/network/network.js +13 -11
  75. package/lib/network/network.js.map +1 -1
  76. package/lib/network/peers/datastore.d.ts +2 -2
  77. package/lib/network/peers/datastore.js +2 -2
  78. package/lib/network/peers/datastore.js.map +1 -1
  79. package/lib/network/processor/index.d.ts +1 -1
  80. package/lib/network/processor/index.js +3 -2
  81. package/lib/network/processor/index.js.map +1 -1
  82. package/lib/sync/types.d.ts +1 -0
  83. package/lib/sync/types.js.map +1 -1
  84. package/lib/sync/unknownBlock.d.ts +1 -0
  85. package/lib/sync/unknownBlock.js +19 -17
  86. package/lib/sync/unknownBlock.js.map +1 -1
  87. package/lib/sync/utils/downloadByRoot.d.ts +1 -3
  88. package/lib/sync/utils/downloadByRoot.js +9 -36
  89. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  90. package/lib/util/blobs.js +3 -5
  91. package/lib/util/blobs.js.map +1 -1
  92. package/lib/util/clock.d.ts +0 -5
  93. package/lib/util/clock.js +0 -3
  94. package/lib/util/clock.js.map +1 -1
  95. package/lib/util/dataColumns.js +1 -1
  96. package/lib/util/dataColumns.js.map +1 -1
  97. package/lib/util/execution.js +2 -19
  98. package/lib/util/execution.js.map +1 -1
  99. package/package.json +22 -32
  100. package/lib/api/impl/api.d.ts.map +0 -1
  101. package/lib/api/impl/beacon/blocks/index.d.ts.map +0 -1
  102. package/lib/api/impl/beacon/blocks/utils.d.ts.map +0 -1
  103. package/lib/api/impl/beacon/index.d.ts.map +0 -1
  104. package/lib/api/impl/beacon/pool/index.d.ts.map +0 -1
  105. package/lib/api/impl/beacon/rewards/index.d.ts.map +0 -1
  106. package/lib/api/impl/beacon/state/index.d.ts.map +0 -1
  107. package/lib/api/impl/beacon/state/utils.d.ts.map +0 -1
  108. package/lib/api/impl/config/constants.d.ts.map +0 -1
  109. package/lib/api/impl/config/index.d.ts.map +0 -1
  110. package/lib/api/impl/debug/index.d.ts.map +0 -1
  111. package/lib/api/impl/errors.d.ts.map +0 -1
  112. package/lib/api/impl/events/index.d.ts.map +0 -1
  113. package/lib/api/impl/index.d.ts.map +0 -1
  114. package/lib/api/impl/lightclient/index.d.ts.map +0 -1
  115. package/lib/api/impl/lodestar/index.d.ts.map +0 -1
  116. package/lib/api/impl/node/index.d.ts.map +0 -1
  117. package/lib/api/impl/node/utils.d.ts.map +0 -1
  118. package/lib/api/impl/proof/index.d.ts.map +0 -1
  119. package/lib/api/impl/types.d.ts.map +0 -1
  120. package/lib/api/impl/utils.d.ts.map +0 -1
  121. package/lib/api/impl/validator/index.d.ts.map +0 -1
  122. package/lib/api/impl/validator/utils.d.ts.map +0 -1
  123. package/lib/api/index.d.ts.map +0 -1
  124. package/lib/api/options.d.ts.map +0 -1
  125. package/lib/api/rest/activeSockets.d.ts.map +0 -1
  126. package/lib/api/rest/base.d.ts.map +0 -1
  127. package/lib/api/rest/index.d.ts.map +0 -1
  128. package/lib/api/rest/swaggerUI.d.ts.map +0 -1
  129. package/lib/bun-wrappers/prometheus-gc-stats.d.ts.map +0 -1
  130. package/lib/chain/ColumnReconstructionTracker.d.ts.map +0 -1
  131. package/lib/chain/GetBlobsTracker.d.ts.map +0 -1
  132. package/lib/chain/archiveStore/archiveStore.d.ts.map +0 -1
  133. package/lib/chain/archiveStore/constants.d.ts.map +0 -1
  134. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +0 -1
  135. package/lib/chain/archiveStore/historicalState/historicalStateRegen.d.ts.map +0 -1
  136. package/lib/chain/archiveStore/historicalState/metrics.d.ts.map +0 -1
  137. package/lib/chain/archiveStore/historicalState/types.d.ts.map +0 -1
  138. package/lib/chain/archiveStore/historicalState/worker.d.ts.map +0 -1
  139. package/lib/chain/archiveStore/index.d.ts.map +0 -1
  140. package/lib/chain/archiveStore/interface.d.ts.map +0 -1
  141. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +0 -1
  142. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +0 -1
  143. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +0 -1
  144. package/lib/chain/archiveStore/utils/updateBackfillRange.d.ts.map +0 -1
  145. package/lib/chain/balancesCache.d.ts.map +0 -1
  146. package/lib/chain/beaconProposerCache.d.ts.map +0 -1
  147. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +0 -1
  148. package/lib/chain/blocks/blockInput/errors.d.ts.map +0 -1
  149. package/lib/chain/blocks/blockInput/index.d.ts.map +0 -1
  150. package/lib/chain/blocks/blockInput/types.d.ts.map +0 -1
  151. package/lib/chain/blocks/blockInput/utils.d.ts.map +0 -1
  152. package/lib/chain/blocks/importBlock.d.ts.map +0 -1
  153. package/lib/chain/blocks/index.d.ts.map +0 -1
  154. package/lib/chain/blocks/types.d.ts.map +0 -1
  155. package/lib/chain/blocks/utils/blowfishBanner.d.ts.map +0 -1
  156. package/lib/chain/blocks/utils/chainSegment.d.ts.map +0 -1
  157. package/lib/chain/blocks/utils/checkpoint.d.ts.map +0 -1
  158. package/lib/chain/blocks/utils/giraffeBanner.d.ts.map +0 -1
  159. package/lib/chain/blocks/utils/ownBanner.d.ts.map +0 -1
  160. package/lib/chain/blocks/utils/pandaMergeTransitionBanner.d.ts.map +0 -1
  161. package/lib/chain/blocks/utils/zebraBanner.d.ts.map +0 -1
  162. package/lib/chain/blocks/verifyBlock.d.ts.map +0 -1
  163. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +0 -1
  164. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +0 -1
  165. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +0 -1
  166. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +0 -1
  167. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +0 -1
  168. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +0 -1
  169. package/lib/chain/bls/index.d.ts.map +0 -1
  170. package/lib/chain/bls/interface.d.ts.map +0 -1
  171. package/lib/chain/bls/maybeBatch.d.ts.map +0 -1
  172. package/lib/chain/bls/multithread/index.d.ts.map +0 -1
  173. package/lib/chain/bls/multithread/jobItem.d.ts.map +0 -1
  174. package/lib/chain/bls/multithread/poolSize.d.ts.map +0 -1
  175. package/lib/chain/bls/multithread/types.d.ts.map +0 -1
  176. package/lib/chain/bls/multithread/utils.d.ts.map +0 -1
  177. package/lib/chain/bls/multithread/worker.d.ts.map +0 -1
  178. package/lib/chain/bls/singleThread.d.ts.map +0 -1
  179. package/lib/chain/bls/utils.d.ts.map +0 -1
  180. package/lib/chain/chain.d.ts.map +0 -1
  181. package/lib/chain/emitter.d.ts.map +0 -1
  182. package/lib/chain/errors/attestationError.d.ts.map +0 -1
  183. package/lib/chain/errors/attesterSlashingError.d.ts.map +0 -1
  184. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  185. package/lib/chain/errors/blockError.d.ts.map +0 -1
  186. package/lib/chain/errors/blsToExecutionChangeError.d.ts.map +0 -1
  187. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +0 -1
  188. package/lib/chain/errors/gossipValidation.d.ts.map +0 -1
  189. package/lib/chain/errors/index.d.ts.map +0 -1
  190. package/lib/chain/errors/lightClientError.d.ts.map +0 -1
  191. package/lib/chain/errors/proposerSlashingError.d.ts.map +0 -1
  192. package/lib/chain/errors/syncCommitteeError.d.ts.map +0 -1
  193. package/lib/chain/errors/voluntaryExitError.d.ts.map +0 -1
  194. package/lib/chain/forkChoice/index.d.ts.map +0 -1
  195. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  196. package/lib/chain/genesis/interface.d.ts.map +0 -1
  197. package/lib/chain/index.d.ts.map +0 -1
  198. package/lib/chain/initState.d.ts.map +0 -1
  199. package/lib/chain/interface.d.ts.map +0 -1
  200. package/lib/chain/lightClient/index.d.ts.map +0 -1
  201. package/lib/chain/lightClient/proofs.d.ts.map +0 -1
  202. package/lib/chain/lightClient/types.d.ts.map +0 -1
  203. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +0 -1
  204. package/lib/chain/opPools/attestationPool.d.ts.map +0 -1
  205. package/lib/chain/opPools/index.d.ts.map +0 -1
  206. package/lib/chain/opPools/opPool.d.ts.map +0 -1
  207. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +0 -1
  208. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +0 -1
  209. package/lib/chain/opPools/types.d.ts.map +0 -1
  210. package/lib/chain/opPools/utils.d.ts.map +0 -1
  211. package/lib/chain/options.d.ts.map +0 -1
  212. package/lib/chain/prepareNextSlot.d.ts.map +0 -1
  213. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +0 -1
  214. package/lib/chain/produceBlock/index.d.ts.map +0 -1
  215. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +0 -1
  216. package/lib/chain/produceBlock/validateBlobsAndKzgCommitments.d.ts.map +0 -1
  217. package/lib/chain/regen/errors.d.ts.map +0 -1
  218. package/lib/chain/regen/index.d.ts.map +0 -1
  219. package/lib/chain/regen/interface.d.ts.map +0 -1
  220. package/lib/chain/regen/queued.d.ts.map +0 -1
  221. package/lib/chain/regen/regen.d.ts.map +0 -1
  222. package/lib/chain/reprocess.d.ts.map +0 -1
  223. package/lib/chain/rewards/attestationsRewards.d.ts.map +0 -1
  224. package/lib/chain/rewards/blockRewards.d.ts.map +0 -1
  225. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +0 -1
  226. package/lib/chain/seenCache/index.d.ts.map +0 -1
  227. package/lib/chain/seenCache/seenAggregateAndProof.d.ts.map +0 -1
  228. package/lib/chain/seenCache/seenAttestationData.d.ts.map +0 -1
  229. package/lib/chain/seenCache/seenAttesters.d.ts.map +0 -1
  230. package/lib/chain/seenCache/seenBlockAttesters.d.ts.map +0 -1
  231. package/lib/chain/seenCache/seenBlockProposers.d.ts.map +0 -1
  232. package/lib/chain/seenCache/seenCommittee.d.ts.map +0 -1
  233. package/lib/chain/seenCache/seenCommitteeContribution.d.ts.map +0 -1
  234. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +0 -1
  235. package/lib/chain/serializeState.d.ts.map +0 -1
  236. package/lib/chain/shufflingCache.d.ts.map +0 -1
  237. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  238. package/lib/chain/stateCache/datastore/db.d.ts.map +0 -1
  239. package/lib/chain/stateCache/datastore/file.d.ts.map +0 -1
  240. package/lib/chain/stateCache/datastore/index.d.ts.map +0 -1
  241. package/lib/chain/stateCache/datastore/types.d.ts.map +0 -1
  242. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +0 -1
  243. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  244. package/lib/chain/stateCache/index.d.ts.map +0 -1
  245. package/lib/chain/stateCache/mapMetrics.d.ts.map +0 -1
  246. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +0 -1
  247. package/lib/chain/stateCache/types.d.ts.map +0 -1
  248. package/lib/chain/validation/aggregateAndProof.d.ts.map +0 -1
  249. package/lib/chain/validation/attestation.d.ts.map +0 -1
  250. package/lib/chain/validation/attesterSlashing.d.ts.map +0 -1
  251. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  252. package/lib/chain/validation/block.d.ts.map +0 -1
  253. package/lib/chain/validation/blsToExecutionChange.d.ts.map +0 -1
  254. package/lib/chain/validation/dataColumnSidecar.d.ts.map +0 -1
  255. package/lib/chain/validation/index.d.ts.map +0 -1
  256. package/lib/chain/validation/lightClientFinalityUpdate.d.ts.map +0 -1
  257. package/lib/chain/validation/lightClientOptimisticUpdate.d.ts.map +0 -1
  258. package/lib/chain/validation/proposerSlashing.d.ts.map +0 -1
  259. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +0 -1
  260. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +0 -1
  261. package/lib/chain/validation/signatureSets/index.d.ts.map +0 -1
  262. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +0 -1
  263. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +0 -1
  264. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +0 -1
  265. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +0 -1
  266. package/lib/chain/validation/syncCommittee.d.ts.map +0 -1
  267. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +0 -1
  268. package/lib/chain/validation/voluntaryExit.d.ts.map +0 -1
  269. package/lib/chain/validatorMonitor.d.ts.map +0 -1
  270. package/lib/constants/constants.d.ts.map +0 -1
  271. package/lib/constants/index.d.ts.map +0 -1
  272. package/lib/constants/network.d.ts.map +0 -1
  273. package/lib/db/beacon.d.ts.map +0 -1
  274. package/lib/db/buckets.d.ts.map +0 -1
  275. package/lib/db/index.d.ts.map +0 -1
  276. package/lib/db/interface.d.ts.map +0 -1
  277. package/lib/db/options.d.ts.map +0 -1
  278. package/lib/db/repositories/attesterSlashing.d.ts.map +0 -1
  279. package/lib/db/repositories/backfilledRanges.d.ts.map +0 -1
  280. package/lib/db/repositories/blobSidecars.d.ts.map +0 -1
  281. package/lib/db/repositories/blobSidecarsArchive.d.ts.map +0 -1
  282. package/lib/db/repositories/block.d.ts.map +0 -1
  283. package/lib/db/repositories/blockArchive.d.ts.map +0 -1
  284. package/lib/db/repositories/blockArchiveIndex.d.ts.map +0 -1
  285. package/lib/db/repositories/blsToExecutionChange.d.ts.map +0 -1
  286. package/lib/db/repositories/checkpointState.d.ts.map +0 -1
  287. package/lib/db/repositories/dataColumnSidecar.d.ts.map +0 -1
  288. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +0 -1
  289. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  290. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  291. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  292. package/lib/db/repositories/index.d.ts.map +0 -1
  293. package/lib/db/repositories/lightclientBestUpdate.d.ts.map +0 -1
  294. package/lib/db/repositories/lightclientCheckpointHeader.d.ts.map +0 -1
  295. package/lib/db/repositories/lightclientSyncCommittee.d.ts.map +0 -1
  296. package/lib/db/repositories/lightclientSyncCommitteeWitness.d.ts.map +0 -1
  297. package/lib/db/repositories/proposerSlashing.d.ts.map +0 -1
  298. package/lib/db/repositories/stateArchive.d.ts.map +0 -1
  299. package/lib/db/repositories/stateArchiveIndex.d.ts.map +0 -1
  300. package/lib/db/repositories/voluntaryExit.d.ts.map +0 -1
  301. package/lib/db/single/index.d.ts.map +0 -1
  302. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  303. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  304. package/lib/eth1/errors.d.ts.map +0 -1
  305. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  306. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  307. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  308. package/lib/eth1/eth1MergeBlockTracker.d.ts.map +0 -1
  309. package/lib/eth1/index.d.ts.map +0 -1
  310. package/lib/eth1/interface.d.ts.map +0 -1
  311. package/lib/eth1/options.d.ts.map +0 -1
  312. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  313. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  314. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  315. package/lib/eth1/provider/utils.d.ts.map +0 -1
  316. package/lib/eth1/stream.d.ts.map +0 -1
  317. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  318. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  319. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  320. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  321. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  322. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  323. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  324. package/lib/execution/builder/cache.d.ts.map +0 -1
  325. package/lib/execution/builder/http.d.ts.map +0 -1
  326. package/lib/execution/builder/index.d.ts.map +0 -1
  327. package/lib/execution/builder/interface.d.ts.map +0 -1
  328. package/lib/execution/builder/utils.d.ts.map +0 -1
  329. package/lib/execution/engine/disabled.d.ts.map +0 -1
  330. package/lib/execution/engine/http.d.ts.map +0 -1
  331. package/lib/execution/engine/index.d.ts.map +0 -1
  332. package/lib/execution/engine/interface.d.ts.map +0 -1
  333. package/lib/execution/engine/mock.d.ts.map +0 -1
  334. package/lib/execution/engine/payloadIdCache.d.ts.map +0 -1
  335. package/lib/execution/engine/types.d.ts.map +0 -1
  336. package/lib/execution/engine/utils.d.ts.map +0 -1
  337. package/lib/execution/index.d.ts.map +0 -1
  338. package/lib/index.d.ts.map +0 -1
  339. package/lib/metrics/index.d.ts.map +0 -1
  340. package/lib/metrics/metrics/beacon.d.ts.map +0 -1
  341. package/lib/metrics/metrics/lodestar.d.ts.map +0 -1
  342. package/lib/metrics/metrics.d.ts.map +0 -1
  343. package/lib/metrics/nodeJsMetrics.d.ts.map +0 -1
  344. package/lib/metrics/options.d.ts.map +0 -1
  345. package/lib/metrics/server/http.d.ts.map +0 -1
  346. package/lib/metrics/server/index.d.ts.map +0 -1
  347. package/lib/metrics/utils/avgMinMax.d.ts.map +0 -1
  348. package/lib/metrics/utils/gauge.d.ts.map +0 -1
  349. package/lib/metrics/utils/registryMetricCreator.d.ts.map +0 -1
  350. package/lib/monitoring/clientStats.d.ts.map +0 -1
  351. package/lib/monitoring/index.d.ts.map +0 -1
  352. package/lib/monitoring/options.d.ts.map +0 -1
  353. package/lib/monitoring/properties.d.ts.map +0 -1
  354. package/lib/monitoring/service.d.ts.map +0 -1
  355. package/lib/monitoring/system.d.ts.map +0 -1
  356. package/lib/monitoring/types.d.ts.map +0 -1
  357. package/lib/network/core/events.d.ts.map +0 -1
  358. package/lib/network/core/index.d.ts.map +0 -1
  359. package/lib/network/core/metrics.d.ts.map +0 -1
  360. package/lib/network/core/networkCore.d.ts.map +0 -1
  361. package/lib/network/core/networkCoreWorker.d.ts.map +0 -1
  362. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +0 -1
  363. package/lib/network/core/types.d.ts.map +0 -1
  364. package/lib/network/discv5/index.d.ts.map +0 -1
  365. package/lib/network/discv5/types.d.ts.map +0 -1
  366. package/lib/network/discv5/utils.d.ts.map +0 -1
  367. package/lib/network/discv5/worker.d.ts.map +0 -1
  368. package/lib/network/events.d.ts.map +0 -1
  369. package/lib/network/forks.d.ts.map +0 -1
  370. package/lib/network/gossip/constants.d.ts.map +0 -1
  371. package/lib/network/gossip/encoding.d.ts.map +0 -1
  372. package/lib/network/gossip/errors.d.ts.map +0 -1
  373. package/lib/network/gossip/gossipsub.d.ts.map +0 -1
  374. package/lib/network/gossip/index.d.ts.map +0 -1
  375. package/lib/network/gossip/interface.d.ts.map +0 -1
  376. package/lib/network/gossip/metrics.d.ts.map +0 -1
  377. package/lib/network/gossip/scoringParameters.d.ts.map +0 -1
  378. package/lib/network/gossip/topic.d.ts.map +0 -1
  379. package/lib/network/index.d.ts.map +0 -1
  380. package/lib/network/interface.d.ts.map +0 -1
  381. package/lib/network/libp2p/error.d.ts.map +0 -1
  382. package/lib/network/libp2p/index.d.ts.map +0 -1
  383. package/lib/network/metadata.d.ts.map +0 -1
  384. package/lib/network/network.d.ts.map +0 -1
  385. package/lib/network/networkConfig.d.ts.map +0 -1
  386. package/lib/network/options.d.ts.map +0 -1
  387. package/lib/network/peers/client.d.ts.map +0 -1
  388. package/lib/network/peers/datastore.d.ts.map +0 -1
  389. package/lib/network/peers/discover.d.ts.map +0 -1
  390. package/lib/network/peers/index.d.ts.map +0 -1
  391. package/lib/network/peers/peerManager.d.ts.map +0 -1
  392. package/lib/network/peers/peersData.d.ts.map +0 -1
  393. package/lib/network/peers/score/constants.d.ts.map +0 -1
  394. package/lib/network/peers/score/index.d.ts.map +0 -1
  395. package/lib/network/peers/score/interface.d.ts.map +0 -1
  396. package/lib/network/peers/score/score.d.ts.map +0 -1
  397. package/lib/network/peers/score/store.d.ts.map +0 -1
  398. package/lib/network/peers/score/utils.d.ts.map +0 -1
  399. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +0 -1
  400. package/lib/network/peers/utils/enrSubnetsDeserialize.d.ts.map +0 -1
  401. package/lib/network/peers/utils/getConnectedPeerIds.d.ts.map +0 -1
  402. package/lib/network/peers/utils/index.d.ts.map +0 -1
  403. package/lib/network/peers/utils/prioritizePeers.d.ts.map +0 -1
  404. package/lib/network/peers/utils/subnetMap.d.ts.map +0 -1
  405. package/lib/network/processor/aggregatorTracker.d.ts.map +0 -1
  406. package/lib/network/processor/extractSlotRootFns.d.ts.map +0 -1
  407. package/lib/network/processor/gossipHandlers.d.ts.map +0 -1
  408. package/lib/network/processor/gossipQueues/index.d.ts.map +0 -1
  409. package/lib/network/processor/gossipQueues/indexed.d.ts.map +0 -1
  410. package/lib/network/processor/gossipQueues/linear.d.ts.map +0 -1
  411. package/lib/network/processor/gossipQueues/types.d.ts.map +0 -1
  412. package/lib/network/processor/gossipValidatorFn.d.ts.map +0 -1
  413. package/lib/network/processor/index.d.ts.map +0 -1
  414. package/lib/network/processor/types.d.ts.map +0 -1
  415. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +0 -1
  416. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +0 -1
  417. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +0 -1
  418. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  419. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  420. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +0 -1
  421. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +0 -1
  422. package/lib/network/reqresp/handlers/index.d.ts.map +0 -1
  423. package/lib/network/reqresp/handlers/lightClientBootstrap.d.ts.map +0 -1
  424. package/lib/network/reqresp/handlers/lightClientFinalityUpdate.d.ts.map +0 -1
  425. package/lib/network/reqresp/handlers/lightClientOptimisticUpdate.d.ts.map +0 -1
  426. package/lib/network/reqresp/handlers/lightClientUpdatesByRange.d.ts.map +0 -1
  427. package/lib/network/reqresp/index.d.ts.map +0 -1
  428. package/lib/network/reqresp/interface.d.ts.map +0 -1
  429. package/lib/network/reqresp/protocols.d.ts.map +0 -1
  430. package/lib/network/reqresp/rateLimit.d.ts.map +0 -1
  431. package/lib/network/reqresp/score.d.ts.map +0 -1
  432. package/lib/network/reqresp/types.d.ts.map +0 -1
  433. package/lib/network/reqresp/utils/collect.d.ts.map +0 -1
  434. package/lib/network/reqresp/utils/collectSequentialBlocksInRange.d.ts.map +0 -1
  435. package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts.map +0 -1
  436. package/lib/network/statusCache.d.ts.map +0 -1
  437. package/lib/network/subnets/attnetsService.d.ts.map +0 -1
  438. package/lib/network/subnets/index.d.ts.map +0 -1
  439. package/lib/network/subnets/interface.d.ts.map +0 -1
  440. package/lib/network/subnets/syncnetsService.d.ts.map +0 -1
  441. package/lib/network/subnets/util.d.ts.map +0 -1
  442. package/lib/network/util.d.ts.map +0 -1
  443. package/lib/node/index.d.ts.map +0 -1
  444. package/lib/node/nodejs.d.ts.map +0 -1
  445. package/lib/node/notifier.d.ts.map +0 -1
  446. package/lib/node/options.d.ts.map +0 -1
  447. package/lib/node/utils/interop/deposits.d.ts.map +0 -1
  448. package/lib/node/utils/interop/state.d.ts.map +0 -1
  449. package/lib/node/utils/lightclient.d.ts.map +0 -1
  450. package/lib/node/utils/state.d.ts.map +0 -1
  451. package/lib/sync/backfill/backfill.d.ts.map +0 -1
  452. package/lib/sync/backfill/errors.d.ts.map +0 -1
  453. package/lib/sync/backfill/index.d.ts.map +0 -1
  454. package/lib/sync/backfill/verify.d.ts.map +0 -1
  455. package/lib/sync/constants.d.ts.map +0 -1
  456. package/lib/sync/index.d.ts.map +0 -1
  457. package/lib/sync/interface.d.ts.map +0 -1
  458. package/lib/sync/options.d.ts.map +0 -1
  459. package/lib/sync/range/batch.d.ts.map +0 -1
  460. package/lib/sync/range/chain.d.ts.map +0 -1
  461. package/lib/sync/range/range.d.ts.map +0 -1
  462. package/lib/sync/range/utils/batches.d.ts.map +0 -1
  463. package/lib/sync/range/utils/chainTarget.d.ts.map +0 -1
  464. package/lib/sync/range/utils/hashBlocks.d.ts.map +0 -1
  465. package/lib/sync/range/utils/index.d.ts.map +0 -1
  466. package/lib/sync/range/utils/peerBalancer.d.ts.map +0 -1
  467. package/lib/sync/range/utils/updateChains.d.ts.map +0 -1
  468. package/lib/sync/sync.d.ts.map +0 -1
  469. package/lib/sync/types.d.ts.map +0 -1
  470. package/lib/sync/unknownBlock.d.ts.map +0 -1
  471. package/lib/sync/utils/downloadByRange.d.ts.map +0 -1
  472. package/lib/sync/utils/downloadByRoot.d.ts.map +0 -1
  473. package/lib/sync/utils/pendingBlocksTree.d.ts.map +0 -1
  474. package/lib/sync/utils/remoteSyncType.d.ts.map +0 -1
  475. package/lib/util/address.d.ts.map +0 -1
  476. package/lib/util/array.d.ts.map +0 -1
  477. package/lib/util/asyncIterableToEvents.d.ts.map +0 -1
  478. package/lib/util/binarySearch.d.ts.map +0 -1
  479. package/lib/util/bitArray.d.ts.map +0 -1
  480. package/lib/util/blobs.d.ts.map +0 -1
  481. package/lib/util/bufferPool.d.ts.map +0 -1
  482. package/lib/util/bytes.d.ts.map +0 -1
  483. package/lib/util/chunkify.d.ts.map +0 -1
  484. package/lib/util/clock.d.ts.map +0 -1
  485. package/lib/util/dataColumns.d.ts.map +0 -1
  486. package/lib/util/dependentRoot.d.ts.map +0 -1
  487. package/lib/util/enum.d.ts.map +0 -1
  488. package/lib/util/error.d.ts.map +0 -1
  489. package/lib/util/eventLoop.d.ts.map +0 -1
  490. package/lib/util/execution.d.ts.map +0 -1
  491. package/lib/util/file.d.ts.map +0 -1
  492. package/lib/util/forkChoice.d.ts.map +0 -1
  493. package/lib/util/forkName.d.ts.map +0 -1
  494. package/lib/util/graffiti.d.ts.map +0 -1
  495. package/lib/util/hex.d.ts.map +0 -1
  496. package/lib/util/index.d.ts.map +0 -1
  497. package/lib/util/ip.d.ts.map +0 -1
  498. package/lib/util/itTrigger.d.ts.map +0 -1
  499. package/lib/util/kzg.d.ts.map +0 -1
  500. package/lib/util/map.d.ts.map +0 -1
  501. package/lib/util/metadata.d.ts.map +0 -1
  502. package/lib/util/multifork.d.ts.map +0 -1
  503. package/lib/util/numpy.d.ts.map +0 -1
  504. package/lib/util/peerId.d.ts.map +0 -1
  505. package/lib/util/profile.d.ts.map +0 -1
  506. package/lib/util/promises.d.ts.map +0 -1
  507. package/lib/util/queue/errors.d.ts.map +0 -1
  508. package/lib/util/queue/fnQueue.d.ts.map +0 -1
  509. package/lib/util/queue/index.d.ts.map +0 -1
  510. package/lib/util/queue/itemQueue.d.ts.map +0 -1
  511. package/lib/util/queue/options.d.ts.map +0 -1
  512. package/lib/util/serializedCache.d.ts.map +0 -1
  513. package/lib/util/set.d.ts.map +0 -1
  514. package/lib/util/shuffle.d.ts.map +0 -1
  515. package/lib/util/sortBy.d.ts.map +0 -1
  516. package/lib/util/sszBytes.d.ts.map +0 -1
  517. package/lib/util/strictEvents.d.ts.map +0 -1
  518. package/lib/util/time.d.ts.map +0 -1
  519. package/lib/util/timeSeries.d.ts.map +0 -1
  520. package/lib/util/types.d.ts.map +0 -1
  521. package/lib/util/workerEvents.d.ts.map +0 -1
  522. package/lib/util/wrapError.d.ts.map +0 -1
  523. package/src/api/impl/api.ts +0 -26
  524. package/src/api/impl/beacon/blocks/index.ts +0 -744
  525. package/src/api/impl/beacon/blocks/utils.ts +0 -75
  526. package/src/api/impl/beacon/index.ts +0 -35
  527. package/src/api/impl/beacon/pool/index.ts +0 -314
  528. package/src/api/impl/beacon/rewards/index.ts +0 -30
  529. package/src/api/impl/beacon/state/index.ts +0 -406
  530. package/src/api/impl/beacon/state/utils.ts +0 -189
  531. package/src/api/impl/config/constants.ts +0 -127
  532. package/src/api/impl/config/index.ts +0 -59
  533. package/src/api/impl/debug/index.ts +0 -131
  534. package/src/api/impl/errors.ts +0 -50
  535. package/src/api/impl/events/index.ts +0 -33
  536. package/src/api/impl/index.ts +0 -6
  537. package/src/api/impl/lightclient/index.ts +0 -64
  538. package/src/api/impl/lodestar/index.ts +0 -257
  539. package/src/api/impl/node/index.ts +0 -88
  540. package/src/api/impl/node/utils.ts +0 -51
  541. package/src/api/impl/proof/index.ts +0 -60
  542. package/src/api/impl/types.ts +0 -17
  543. package/src/api/impl/utils.ts +0 -25
  544. package/src/api/impl/validator/index.ts +0 -1540
  545. package/src/api/impl/validator/utils.ts +0 -85
  546. package/src/api/index.ts +0 -2
  547. package/src/api/options.ts +0 -16
  548. package/src/api/rest/activeSockets.ts +0 -109
  549. package/src/api/rest/base.ts +0 -216
  550. package/src/api/rest/index.ts +0 -63
  551. package/src/api/rest/swaggerUI.ts +0 -80
  552. package/src/bun-wrappers/prometheus-gc-stats.ts +0 -7
  553. package/src/chain/ColumnReconstructionTracker.ts +0 -90
  554. package/src/chain/GetBlobsTracker.ts +0 -115
  555. package/src/chain/archiveStore/archiveStore.ts +0 -222
  556. package/src/chain/archiveStore/constants.ts +0 -5
  557. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +0 -116
  558. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +0 -68
  559. package/src/chain/archiveStore/historicalState/metrics.ts +0 -214
  560. package/src/chain/archiveStore/historicalState/types.ts +0 -41
  561. package/src/chain/archiveStore/historicalState/worker.ts +0 -77
  562. package/src/chain/archiveStore/index.ts +0 -3
  563. package/src/chain/archiveStore/interface.ts +0 -75
  564. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +0 -138
  565. package/src/chain/archiveStore/utils/archiveBlocks.ts +0 -437
  566. package/src/chain/archiveStore/utils/pruneHistory.ts +0 -56
  567. package/src/chain/archiveStore/utils/updateBackfillRange.ts +0 -50
  568. package/src/chain/balancesCache.ts +0 -52
  569. package/src/chain/beaconProposerCache.ts +0 -43
  570. package/src/chain/blocks/blockInput/blockInput.ts +0 -852
  571. package/src/chain/blocks/blockInput/errors.ts +0 -48
  572. package/src/chain/blocks/blockInput/index.ts +0 -4
  573. package/src/chain/blocks/blockInput/types.ts +0 -145
  574. package/src/chain/blocks/blockInput/utils.ts +0 -21
  575. package/src/chain/blocks/importBlock.ts +0 -597
  576. package/src/chain/blocks/index.ts +0 -179
  577. package/src/chain/blocks/types.ts +0 -101
  578. package/src/chain/blocks/utils/blowfishBanner.ts +0 -28
  579. package/src/chain/blocks/utils/chainSegment.ts +0 -29
  580. package/src/chain/blocks/utils/checkpoint.ts +0 -25
  581. package/src/chain/blocks/utils/giraffeBanner.ts +0 -30
  582. package/src/chain/blocks/utils/ownBanner.ts +0 -20
  583. package/src/chain/blocks/utils/pandaMergeTransitionBanner.ts +0 -43
  584. package/src/chain/blocks/utils/zebraBanner.ts +0 -45
  585. package/src/chain/blocks/verifyBlock.ts +0 -242
  586. package/src/chain/blocks/verifyBlocksDataAvailability.ts +0 -42
  587. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +0 -438
  588. package/src/chain/blocks/verifyBlocksSanityChecks.ts +0 -129
  589. package/src/chain/blocks/verifyBlocksSignatures.ts +0 -105
  590. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +0 -114
  591. package/src/chain/blocks/writeBlockInputToDb.ts +0 -120
  592. package/src/chain/bls/index.ts +0 -4
  593. package/src/chain/bls/interface.ts +0 -68
  594. package/src/chain/bls/maybeBatch.ts +0 -45
  595. package/src/chain/bls/multithread/index.ts +0 -582
  596. package/src/chain/bls/multithread/jobItem.ts +0 -119
  597. package/src/chain/bls/multithread/poolSize.ts +0 -16
  598. package/src/chain/bls/multithread/types.ts +0 -38
  599. package/src/chain/bls/multithread/utils.ts +0 -19
  600. package/src/chain/bls/multithread/worker.ts +0 -114
  601. package/src/chain/bls/singleThread.ts +0 -87
  602. package/src/chain/bls/utils.ts +0 -30
  603. package/src/chain/chain.ts +0 -1354
  604. package/src/chain/emitter.ts +0 -113
  605. package/src/chain/errors/attestationError.ts +0 -194
  606. package/src/chain/errors/attesterSlashingError.ts +0 -11
  607. package/src/chain/errors/blobSidecarError.ts +0 -60
  608. package/src/chain/errors/blockError.ts +0 -166
  609. package/src/chain/errors/blsToExecutionChangeError.ts +0 -13
  610. package/src/chain/errors/dataColumnSidecarError.ts +0 -80
  611. package/src/chain/errors/gossipValidation.ts +0 -20
  612. package/src/chain/errors/index.ts +0 -10
  613. package/src/chain/errors/lightClientError.ts +0 -30
  614. package/src/chain/errors/proposerSlashingError.ts +0 -11
  615. package/src/chain/errors/syncCommitteeError.ts +0 -36
  616. package/src/chain/errors/voluntaryExitError.ts +0 -13
  617. package/src/chain/forkChoice/index.ts +0 -112
  618. package/src/chain/genesis/genesis.ts +0 -190
  619. package/src/chain/genesis/interface.ts +0 -14
  620. package/src/chain/index.ts +0 -6
  621. package/src/chain/initState.ts +0 -221
  622. package/src/chain/interface.ts +0 -280
  623. package/src/chain/lightClient/index.ts +0 -764
  624. package/src/chain/lightClient/proofs.ts +0 -85
  625. package/src/chain/lightClient/types.ts +0 -33
  626. package/src/chain/opPools/aggregatedAttestationPool.ts +0 -1063
  627. package/src/chain/opPools/attestationPool.ts +0 -282
  628. package/src/chain/opPools/index.ts +0 -5
  629. package/src/chain/opPools/opPool.ts +0 -462
  630. package/src/chain/opPools/syncCommitteeMessagePool.ts +0 -169
  631. package/src/chain/opPools/syncContributionAndProofPool.ts +0 -240
  632. package/src/chain/opPools/types.ts +0 -35
  633. package/src/chain/opPools/utils.ts +0 -65
  634. package/src/chain/options.ts +0 -138
  635. package/src/chain/prepareNextSlot.ts +0 -277
  636. package/src/chain/produceBlock/computeNewStateRoot.ts +0 -55
  637. package/src/chain/produceBlock/index.ts +0 -2
  638. package/src/chain/produceBlock/produceBlockBody.ts +0 -797
  639. package/src/chain/produceBlock/validateBlobsAndKzgCommitments.ts +0 -54
  640. package/src/chain/regen/errors.ts +0 -30
  641. package/src/chain/regen/index.ts +0 -4
  642. package/src/chain/regen/interface.ts +0 -93
  643. package/src/chain/regen/queued.ts +0 -317
  644. package/src/chain/regen/regen.ts +0 -424
  645. package/src/chain/reprocess.ts +0 -161
  646. package/src/chain/rewards/attestationsRewards.ts +0 -196
  647. package/src/chain/rewards/blockRewards.ts +0 -150
  648. package/src/chain/rewards/syncCommitteeRewards.ts +0 -58
  649. package/src/chain/seenCache/index.ts +0 -5
  650. package/src/chain/seenCache/seenAggregateAndProof.ts +0 -120
  651. package/src/chain/seenCache/seenAttestationData.ts +0 -145
  652. package/src/chain/seenCache/seenAttesters.ts +0 -58
  653. package/src/chain/seenCache/seenBlockAttesters.ts +0 -18
  654. package/src/chain/seenCache/seenBlockProposers.ts +0 -48
  655. package/src/chain/seenCache/seenCommittee.ts +0 -43
  656. package/src/chain/seenCache/seenCommitteeContribution.ts +0 -104
  657. package/src/chain/seenCache/seenGossipBlockInput.ts +0 -373
  658. package/src/chain/serializeState.ts +0 -32
  659. package/src/chain/shufflingCache.ts +0 -238
  660. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  661. package/src/chain/stateCache/datastore/db.ts +0 -36
  662. package/src/chain/stateCache/datastore/file.ts +0 -53
  663. package/src/chain/stateCache/datastore/index.ts +0 -2
  664. package/src/chain/stateCache/datastore/types.ts +0 -13
  665. package/src/chain/stateCache/fifoBlockStateCache.ts +0 -208
  666. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  667. package/src/chain/stateCache/index.ts +0 -3
  668. package/src/chain/stateCache/mapMetrics.ts +0 -52
  669. package/src/chain/stateCache/persistentCheckpointsCache.ts +0 -837
  670. package/src/chain/stateCache/types.ts +0 -86
  671. package/src/chain/validation/aggregateAndProof.ts +0 -258
  672. package/src/chain/validation/attestation.ts +0 -885
  673. package/src/chain/validation/attesterSlashing.ts +0 -61
  674. package/src/chain/validation/blobSidecar.ts +0 -301
  675. package/src/chain/validation/block.ts +0 -188
  676. package/src/chain/validation/blsToExecutionChange.ts +0 -61
  677. package/src/chain/validation/dataColumnSidecar.ts +0 -381
  678. package/src/chain/validation/index.ts +0 -9
  679. package/src/chain/validation/lightClientFinalityUpdate.ts +0 -46
  680. package/src/chain/validation/lightClientOptimisticUpdate.ts +0 -68
  681. package/src/chain/validation/proposerSlashing.ts +0 -54
  682. package/src/chain/validation/signatureSets/aggregateAndProof.ts +0 -38
  683. package/src/chain/validation/signatureSets/contributionAndProof.ts +0 -27
  684. package/src/chain/validation/signatureSets/index.ts +0 -6
  685. package/src/chain/validation/signatureSets/selectionProof.ts +0 -27
  686. package/src/chain/validation/signatureSets/syncCommittee.ts +0 -22
  687. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +0 -18
  688. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +0 -27
  689. package/src/chain/validation/syncCommittee.ts +0 -165
  690. package/src/chain/validation/syncCommitteeContributionAndProof.ts +0 -122
  691. package/src/chain/validation/voluntaryExit.ts +0 -58
  692. package/src/chain/validatorMonitor.ts +0 -1309
  693. package/src/constants/constants.ts +0 -15
  694. package/src/constants/index.ts +0 -2
  695. package/src/constants/network.ts +0 -52
  696. package/src/db/beacon.ts +0 -113
  697. package/src/db/buckets.ts +0 -80
  698. package/src/db/index.ts +0 -2
  699. package/src/db/interface.ts +0 -76
  700. package/src/db/options.ts +0 -7
  701. package/src/db/repositories/attesterSlashing.ts +0 -38
  702. package/src/db/repositories/backfilledRanges.ts +0 -29
  703. package/src/db/repositories/blobSidecars.ts +0 -37
  704. package/src/db/repositories/blobSidecarsArchive.ts +0 -28
  705. package/src/db/repositories/block.ts +0 -33
  706. package/src/db/repositories/blockArchive.ts +0 -170
  707. package/src/db/repositories/blockArchiveIndex.ts +0 -45
  708. package/src/db/repositories/blsToExecutionChange.ts +0 -16
  709. package/src/db/repositories/checkpointState.ts +0 -31
  710. package/src/db/repositories/dataColumnSidecar.ts +0 -49
  711. package/src/db/repositories/dataColumnSidecarArchive.ts +0 -56
  712. package/src/db/repositories/depositDataRoot.ts +0 -80
  713. package/src/db/repositories/depositEvent.ts +0 -32
  714. package/src/db/repositories/eth1Data.ts +0 -33
  715. package/src/db/repositories/index.ts +0 -20
  716. package/src/db/repositories/lightclientBestUpdate.ts +0 -41
  717. package/src/db/repositories/lightclientCheckpointHeader.ts +0 -32
  718. package/src/db/repositories/lightclientSyncCommittee.ts +0 -16
  719. package/src/db/repositories/lightclientSyncCommitteeWitness.ts +0 -77
  720. package/src/db/repositories/proposerSlashing.ts +0 -15
  721. package/src/db/repositories/stateArchive.ts +0 -69
  722. package/src/db/repositories/stateArchiveIndex.ts +0 -18
  723. package/src/db/repositories/voluntaryExit.ts +0 -15
  724. package/src/db/single/index.ts +0 -2
  725. package/src/db/single/preGenesisState.ts +0 -37
  726. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  727. package/src/eth1/errors.ts +0 -40
  728. package/src/eth1/eth1DataCache.ts +0 -26
  729. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  730. package/src/eth1/eth1DepositsCache.ts +0 -141
  731. package/src/eth1/eth1MergeBlockTracker.ts +0 -328
  732. package/src/eth1/index.ts +0 -157
  733. package/src/eth1/interface.ts +0 -131
  734. package/src/eth1/options.ts +0 -28
  735. package/src/eth1/provider/eth1Provider.ts +0 -229
  736. package/src/eth1/provider/jsonRpcHttpClient.ts +0 -390
  737. package/src/eth1/provider/jwt.ts +0 -36
  738. package/src/eth1/provider/utils.ts +0 -136
  739. package/src/eth1/stream.ts +0 -75
  740. package/src/eth1/utils/depositContract.ts +0 -37
  741. package/src/eth1/utils/deposits.ts +0 -70
  742. package/src/eth1/utils/eth1Data.ts +0 -100
  743. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  744. package/src/eth1/utils/eth1Vote.ts +0 -142
  745. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  746. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  747. package/src/execution/builder/cache.ts +0 -39
  748. package/src/execution/builder/http.ts +0 -229
  749. package/src/execution/builder/index.ts +0 -27
  750. package/src/execution/builder/interface.ts +0 -49
  751. package/src/execution/builder/utils.ts +0 -19
  752. package/src/execution/engine/disabled.ts +0 -35
  753. package/src/execution/engine/http.ts +0 -644
  754. package/src/execution/engine/index.ts +0 -63
  755. package/src/execution/engine/interface.ts +0 -199
  756. package/src/execution/engine/mock.ts +0 -493
  757. package/src/execution/engine/payloadIdCache.ts +0 -54
  758. package/src/execution/engine/types.ts +0 -640
  759. package/src/execution/engine/utils.ts +0 -136
  760. package/src/execution/index.ts +0 -4
  761. package/src/index.ts +0 -20
  762. package/src/metrics/index.ts +0 -4
  763. package/src/metrics/metrics/beacon.ts +0 -390
  764. package/src/metrics/metrics/lodestar.ts +0 -1870
  765. package/src/metrics/metrics.ts +0 -43
  766. package/src/metrics/nodeJsMetrics.ts +0 -19
  767. package/src/metrics/options.ts +0 -22
  768. package/src/metrics/server/http.ts +0 -114
  769. package/src/metrics/server/index.ts +0 -1
  770. package/src/metrics/utils/avgMinMax.ts +0 -87
  771. package/src/metrics/utils/gauge.ts +0 -22
  772. package/src/metrics/utils/registryMetricCreator.ts +0 -41
  773. package/src/monitoring/clientStats.ts +0 -297
  774. package/src/monitoring/index.ts +0 -2
  775. package/src/monitoring/options.ts +0 -19
  776. package/src/monitoring/properties.ts +0 -152
  777. package/src/monitoring/service.ts +0 -235
  778. package/src/monitoring/system.ts +0 -146
  779. package/src/monitoring/types.ts +0 -21
  780. package/src/network/core/events.ts +0 -59
  781. package/src/network/core/index.ts +0 -3
  782. package/src/network/core/metrics.ts +0 -304
  783. package/src/network/core/networkCore.ts +0 -599
  784. package/src/network/core/networkCoreWorker.ts +0 -176
  785. package/src/network/core/networkCoreWorkerHandler.ts +0 -284
  786. package/src/network/core/types.ts +0 -119
  787. package/src/network/discv5/index.ts +0 -132
  788. package/src/network/discv5/types.ts +0 -74
  789. package/src/network/discv5/utils.ts +0 -50
  790. package/src/network/discv5/worker.ts +0 -137
  791. package/src/network/events.ts +0 -51
  792. package/src/network/forks.ts +0 -94
  793. package/src/network/gossip/constants.ts +0 -15
  794. package/src/network/gossip/encoding.ts +0 -111
  795. package/src/network/gossip/errors.ts +0 -7
  796. package/src/network/gossip/gossipsub.ts +0 -384
  797. package/src/network/gossip/index.ts +0 -4
  798. package/src/network/gossip/interface.ts +0 -215
  799. package/src/network/gossip/metrics.ts +0 -71
  800. package/src/network/gossip/scoringParameters.ts +0 -333
  801. package/src/network/gossip/topic.ts +0 -332
  802. package/src/network/index.ts +0 -8
  803. package/src/network/interface.ts +0 -134
  804. package/src/network/libp2p/error.ts +0 -55
  805. package/src/network/libp2p/index.ts +0 -153
  806. package/src/network/metadata.ts +0 -162
  807. package/src/network/network.ts +0 -767
  808. package/src/network/networkConfig.ts +0 -12
  809. package/src/network/options.ts +0 -70
  810. package/src/network/peers/client.ts +0 -29
  811. package/src/network/peers/datastore.ts +0 -188
  812. package/src/network/peers/discover.ts +0 -647
  813. package/src/network/peers/index.ts +0 -2
  814. package/src/network/peers/peerManager.ts +0 -899
  815. package/src/network/peers/peersData.ts +0 -65
  816. package/src/network/peers/score/constants.ts +0 -34
  817. package/src/network/peers/score/index.ts +0 -4
  818. package/src/network/peers/score/interface.ts +0 -74
  819. package/src/network/peers/score/score.ts +0 -200
  820. package/src/network/peers/score/store.ts +0 -95
  821. package/src/network/peers/score/utils.ts +0 -37
  822. package/src/network/peers/utils/assertPeerRelevance.ts +0 -99
  823. package/src/network/peers/utils/enrSubnetsDeserialize.ts +0 -27
  824. package/src/network/peers/utils/getConnectedPeerIds.ts +0 -33
  825. package/src/network/peers/utils/index.ts +0 -4
  826. package/src/network/peers/utils/prioritizePeers.ts +0 -627
  827. package/src/network/peers/utils/subnetMap.ts +0 -88
  828. package/src/network/processor/aggregatorTracker.ts +0 -38
  829. package/src/network/processor/extractSlotRootFns.ts +0 -64
  830. package/src/network/processor/gossipHandlers.ts +0 -951
  831. package/src/network/processor/gossipQueues/index.ts +0 -114
  832. package/src/network/processor/gossipQueues/indexed.ts +0 -219
  833. package/src/network/processor/gossipQueues/linear.ts +0 -162
  834. package/src/network/processor/gossipQueues/types.ts +0 -57
  835. package/src/network/processor/gossipValidatorFn.ts +0 -142
  836. package/src/network/processor/index.ts +0 -496
  837. package/src/network/processor/types.ts +0 -27
  838. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -373
  839. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +0 -101
  840. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +0 -49
  841. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -114
  842. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -62
  843. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +0 -144
  844. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +0 -88
  845. package/src/network/reqresp/handlers/index.ts +0 -78
  846. package/src/network/reqresp/handlers/lightClientBootstrap.ts +0 -31
  847. package/src/network/reqresp/handlers/lightClientFinalityUpdate.ts +0 -21
  848. package/src/network/reqresp/handlers/lightClientOptimisticUpdate.ts +0 -21
  849. package/src/network/reqresp/handlers/lightClientUpdatesByRange.ts +0 -39
  850. package/src/network/reqresp/index.ts +0 -2
  851. package/src/network/reqresp/interface.ts +0 -45
  852. package/src/network/reqresp/protocols.ts +0 -146
  853. package/src/network/reqresp/rateLimit.ts +0 -112
  854. package/src/network/reqresp/score.ts +0 -70
  855. package/src/network/reqresp/types.ts +0 -174
  856. package/src/network/reqresp/utils/collect.ts +0 -84
  857. package/src/network/reqresp/utils/collectSequentialBlocksInRange.ts +0 -57
  858. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +0 -99
  859. package/src/network/statusCache.ts +0 -17
  860. package/src/network/subnets/attnetsService.ts +0 -385
  861. package/src/network/subnets/index.ts +0 -2
  862. package/src/network/subnets/interface.ts +0 -66
  863. package/src/network/subnets/syncnetsService.ts +0 -147
  864. package/src/network/subnets/util.ts +0 -63
  865. package/src/network/util.ts +0 -29
  866. package/src/node/index.ts +0 -2
  867. package/src/node/nodejs.ts +0 -349
  868. package/src/node/notifier.ts +0 -206
  869. package/src/node/options.ts +0 -51
  870. package/src/node/utils/interop/deposits.ts +0 -53
  871. package/src/node/utils/interop/state.ts +0 -59
  872. package/src/node/utils/lightclient.ts +0 -7
  873. package/src/node/utils/state.ts +0 -37
  874. package/src/sync/backfill/backfill.ts +0 -893
  875. package/src/sync/backfill/errors.ts +0 -23
  876. package/src/sync/backfill/index.ts +0 -1
  877. package/src/sync/backfill/verify.ts +0 -58
  878. package/src/sync/constants.ts +0 -71
  879. package/src/sync/index.ts +0 -2
  880. package/src/sync/interface.ts +0 -55
  881. package/src/sync/options.ts +0 -45
  882. package/src/sync/range/batch.ts +0 -455
  883. package/src/sync/range/chain.ts +0 -715
  884. package/src/sync/range/range.ts +0 -354
  885. package/src/sync/range/utils/batches.ts +0 -119
  886. package/src/sync/range/utils/chainTarget.ts +0 -62
  887. package/src/sync/range/utils/hashBlocks.ts +0 -27
  888. package/src/sync/range/utils/index.ts +0 -5
  889. package/src/sync/range/utils/peerBalancer.ts +0 -184
  890. package/src/sync/range/utils/updateChains.ts +0 -66
  891. package/src/sync/sync.ts +0 -290
  892. package/src/sync/types.ts +0 -57
  893. package/src/sync/unknownBlock.ts +0 -859
  894. package/src/sync/utils/downloadByRange.ts +0 -808
  895. package/src/sync/utils/downloadByRoot.ts +0 -560
  896. package/src/sync/utils/pendingBlocksTree.ts +0 -97
  897. package/src/sync/utils/remoteSyncType.ts +0 -144
  898. package/src/util/address.ts +0 -3
  899. package/src/util/array.ts +0 -311
  900. package/src/util/asyncIterableToEvents.ts +0 -164
  901. package/src/util/binarySearch.ts +0 -48
  902. package/src/util/bitArray.ts +0 -84
  903. package/src/util/blobs.ts +0 -210
  904. package/src/util/bufferPool.ts +0 -95
  905. package/src/util/bytes.ts +0 -11
  906. package/src/util/chunkify.ts +0 -27
  907. package/src/util/clock.ts +0 -212
  908. package/src/util/dataColumns.ts +0 -415
  909. package/src/util/dependentRoot.ts +0 -47
  910. package/src/util/enum.ts +0 -17
  911. package/src/util/error.ts +0 -56
  912. package/src/util/eventLoop.ts +0 -22
  913. package/src/util/execution.ts +0 -223
  914. package/src/util/file.ts +0 -52
  915. package/src/util/forkChoice.ts +0 -5
  916. package/src/util/forkName.ts +0 -20
  917. package/src/util/graffiti.ts +0 -39
  918. package/src/util/hex.ts +0 -9
  919. package/src/util/index.ts +0 -2
  920. package/src/util/ip.ts +0 -6
  921. package/src/util/itTrigger.ts +0 -49
  922. package/src/util/kzg.ts +0 -3
  923. package/src/util/map.ts +0 -77
  924. package/src/util/metadata.ts +0 -22
  925. package/src/util/multifork.ts +0 -69
  926. package/src/util/numpy.ts +0 -8
  927. package/src/util/peerId.ts +0 -16
  928. package/src/util/profile.ts +0 -54
  929. package/src/util/promises.ts +0 -14
  930. package/src/util/queue/errors.ts +0 -14
  931. package/src/util/queue/fnQueue.ts +0 -16
  932. package/src/util/queue/index.ts +0 -4
  933. package/src/util/queue/itemQueue.ts +0 -128
  934. package/src/util/queue/options.ts +0 -37
  935. package/src/util/serializedCache.ts +0 -20
  936. package/src/util/set.ts +0 -62
  937. package/src/util/shuffle.ts +0 -21
  938. package/src/util/sortBy.ts +0 -19
  939. package/src/util/sszBytes.ts +0 -481
  940. package/src/util/strictEvents.ts +0 -8
  941. package/src/util/time.ts +0 -13
  942. package/src/util/timeSeries.ts +0 -118
  943. package/src/util/types.ts +0 -31
  944. package/src/util/workerEvents.ts +0 -142
  945. package/src/util/wrapError.ts +0 -27
@@ -1,384 +0,0 @@
1
- import {GossipSub, GossipsubEvents} from "@chainsafe/libp2p-gossipsub";
2
- import {MetricsRegister, TopicLabel, TopicStrToLabel} from "@chainsafe/libp2p-gossipsub/metrics";
3
- import {PeerScoreParams} from "@chainsafe/libp2p-gossipsub/score";
4
- import {SignaturePolicy, TopicStr} from "@chainsafe/libp2p-gossipsub/types";
5
- import {BeaconConfig, ForkBoundary} from "@lodestar/config";
6
- import {ATTESTATION_SUBNET_COUNT, SLOTS_PER_EPOCH, SYNC_COMMITTEE_SUBNET_COUNT} from "@lodestar/params";
7
- import {SubnetID} from "@lodestar/types";
8
- import {Logger, Map2d, Map2dArr} from "@lodestar/utils";
9
- import {GOSSIP_MAX_SIZE, GOSSIP_MAX_SIZE_BELLATRIX} from "../../constants/network.js";
10
- import {RegistryMetricCreator} from "../../metrics/index.js";
11
- import {callInNextEventLoop} from "../../util/eventLoop.js";
12
- import {NetworkEvent, NetworkEventBus, NetworkEventData} from "../events.js";
13
- import {Libp2p} from "../interface.js";
14
- import {NetworkConfig} from "../networkConfig.js";
15
- import {ClientKind} from "../peers/client.js";
16
- import {PeersData} from "../peers/peersData.js";
17
- import {DataTransformSnappy, fastMsgIdFn, msgIdFn, msgIdToStrFn} from "./encoding.js";
18
- import {GossipTopic, GossipType} from "./interface.js";
19
- import {Eth2GossipsubMetrics, createEth2GossipsubMetrics} from "./metrics.js";
20
- import {
21
- GOSSIP_D,
22
- GOSSIP_D_HIGH,
23
- GOSSIP_D_LOW,
24
- computeGossipPeerScoreParams,
25
- gossipScoreThresholds,
26
- } from "./scoringParameters.js";
27
- import {GossipTopicCache, getCoreTopicsAtFork, stringifyGossipTopic} from "./topic.js";
28
-
29
- /** As specified in https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md */
30
- const GOSSIPSUB_HEARTBEAT_INTERVAL = 0.7 * 1000;
31
-
32
- const MAX_OUTBOUND_BUFFER_SIZE = 2 ** 24; // 16MB
33
-
34
- export type Eth2Context = {
35
- activeValidatorCount: number;
36
- currentSlot: number;
37
- currentEpoch: number;
38
- };
39
-
40
- export type Eth2GossipsubModules = {
41
- networkConfig: NetworkConfig;
42
- libp2p: Libp2p;
43
- logger: Logger;
44
- metricsRegister: RegistryMetricCreator | null;
45
- eth2Context: Eth2Context;
46
- peersData: PeersData;
47
- events: NetworkEventBus;
48
- };
49
-
50
- export type Eth2GossipsubOpts = {
51
- allowPublishToZeroPeers?: boolean;
52
- gossipsubD?: number;
53
- gossipsubDLow?: number;
54
- gossipsubDHigh?: number;
55
- gossipsubAwaitHandler?: boolean;
56
- disableFloodPublish?: boolean;
57
- skipParamsLog?: boolean;
58
- disableLightClientServer?: boolean;
59
- };
60
-
61
- export type ForkBoundaryLabel = string;
62
-
63
- /**
64
- * Wrapper around js-libp2p-gossipsub with the following extensions:
65
- * - Eth2 message id
66
- * - Emits `GossipObject`, not `InMessage`
67
- * - Provides convenience interface:
68
- * - `publishObject`
69
- * - `subscribeTopic`
70
- * - `unsubscribeTopic`
71
- * - `handleTopic`
72
- * - `unhandleTopic`
73
- *
74
- * See https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md#the-gossip-domain-gossipsub
75
- */
76
- export class Eth2Gossipsub extends GossipSub {
77
- readonly scoreParams: Partial<PeerScoreParams>;
78
- private readonly config: BeaconConfig;
79
- private readonly logger: Logger;
80
- private readonly peersData: PeersData;
81
- private readonly events: NetworkEventBus;
82
-
83
- // Internal caches
84
- private readonly gossipTopicCache: GossipTopicCache;
85
-
86
- constructor(opts: Eth2GossipsubOpts, modules: Eth2GossipsubModules) {
87
- const {allowPublishToZeroPeers, gossipsubD, gossipsubDLow, gossipsubDHigh} = opts;
88
- const {networkConfig, logger, metricsRegister, peersData, events} = modules;
89
- const {config} = networkConfig;
90
- const gossipTopicCache = new GossipTopicCache(config);
91
-
92
- const scoreParams = computeGossipPeerScoreParams({config, eth2Context: modules.eth2Context});
93
-
94
- // Gossipsub parameters defined here:
95
- // https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md#the-gossip-domain-gossipsub
96
- super(modules.libp2p.services.components, {
97
- globalSignaturePolicy: SignaturePolicy.StrictNoSign,
98
- allowPublishToZeroTopicPeers: allowPublishToZeroPeers,
99
- D: gossipsubD ?? GOSSIP_D,
100
- Dlo: gossipsubDLow ?? GOSSIP_D_LOW,
101
- Dhi: gossipsubDHigh ?? GOSSIP_D_HIGH,
102
- Dlazy: 6,
103
- heartbeatInterval: GOSSIPSUB_HEARTBEAT_INTERVAL,
104
- fanoutTTL: 60 * 1000,
105
- mcacheLength: 6,
106
- mcacheGossip: 3,
107
- // this should be in ms
108
- seenTTL: config.SECONDS_PER_SLOT * SLOTS_PER_EPOCH * 2 * 1000,
109
- scoreParams,
110
- scoreThresholds: gossipScoreThresholds,
111
- // For a single stream, await processing each RPC before processing the next
112
- awaitRpcHandler: opts.gossipsubAwaitHandler,
113
- // For a single RPC, await processing each message before processing the next
114
- awaitRpcMessageHandler: opts.gossipsubAwaitHandler,
115
- // the default in gossipsub is 3s is not enough since lodestar suffers from I/O lag
116
- gossipsubIWantFollowupMs: 12 * 1000, // 12s
117
- fastMsgIdFn: fastMsgIdFn,
118
- msgIdFn: msgIdFn.bind(msgIdFn, gossipTopicCache),
119
- msgIdToStrFn: msgIdToStrFn,
120
- // Use the bellatrix max size if the merge is configured. pre-merge using this size
121
- // could only be an issue on outgoing payloads, its highly unlikely we will send out
122
- // a chunk bigger than GOSSIP_MAX_SIZE pre merge even on mainnet network.
123
- //
124
- // TODO: figure out a way to dynamically transition to the size
125
- dataTransform: new DataTransformSnappy(
126
- gossipTopicCache,
127
- Number.isFinite(config.BELLATRIX_FORK_EPOCH) ? GOSSIP_MAX_SIZE_BELLATRIX : GOSSIP_MAX_SIZE
128
- ),
129
- metricsRegister: metricsRegister as MetricsRegister | null,
130
- metricsTopicStrToLabel: metricsRegister
131
- ? getMetricsTopicStrToLabel(networkConfig, {disableLightClientServer: opts.disableLightClientServer ?? false})
132
- : undefined,
133
- asyncValidation: true,
134
-
135
- maxOutboundBufferSize: MAX_OUTBOUND_BUFFER_SIZE,
136
- // serialize message once and send to all peers when publishing
137
- batchPublish: true,
138
- // if this is false, only publish to mesh peers. If there is not enough GOSSIP_D mesh peers,
139
- // publish to some more topic peers to make sure we always publish to at least GOSSIP_D peers
140
- floodPublish: !opts?.disableFloodPublish,
141
- // Only send IDONTWANT messages if the message size is larger than this
142
- // This should be large enough to not send IDONTWANT for "small" messages
143
- // See https://github.com/ChainSafe/lodestar/pull/7077#issuecomment-2383679472
144
- idontwantMinDataSize: 16829,
145
- });
146
- this.scoreParams = scoreParams;
147
- this.config = config;
148
- this.logger = logger;
149
- this.peersData = peersData;
150
- this.events = events;
151
- this.gossipTopicCache = gossipTopicCache;
152
-
153
- if (metricsRegister) {
154
- const metrics = createEth2GossipsubMetrics(metricsRegister);
155
- metrics.gossipMesh.peersByType.addCollect(() => this.onScrapeLodestarMetrics(metrics, networkConfig));
156
- }
157
-
158
- this.addEventListener("gossipsub:message", this.onGossipsubMessage.bind(this));
159
- this.events.on(NetworkEvent.gossipMessageValidationResult, this.onValidationResult.bind(this));
160
-
161
- // Having access to this data is CRUCIAL for debugging. While this is a massive log, it must not be deleted.
162
- // Scoring issues require this dump + current peer score stats to re-calculate scores.
163
- if (!opts.skipParamsLog) {
164
- this.logger.debug("Gossipsub score params", {params: JSON.stringify(scoreParams)});
165
- }
166
- }
167
-
168
- /**
169
- * Subscribe to a `GossipTopic`
170
- */
171
- subscribeTopic(topic: GossipTopic): void {
172
- const topicStr = stringifyGossipTopic(this.config, topic);
173
- // Register known topicStr
174
- this.gossipTopicCache.setTopic(topicStr, topic);
175
-
176
- this.logger.verbose("Subscribe to gossipsub topic", {topic: topicStr});
177
- this.subscribe(topicStr);
178
- }
179
-
180
- /**
181
- * Unsubscribe to a `GossipTopic`
182
- */
183
- unsubscribeTopic(topic: GossipTopic): void {
184
- const topicStr = stringifyGossipTopic(this.config, topic);
185
- this.logger.verbose("Unsubscribe to gossipsub topic", {topic: topicStr});
186
- this.unsubscribe(topicStr);
187
- }
188
-
189
- private onScrapeLodestarMetrics(metrics: Eth2GossipsubMetrics, networkConfig: NetworkConfig): void {
190
- const mesh = this.mesh;
191
- // biome-ignore lint/complexity/useLiteralKeys: `topics` is a private attribute
192
- const topics = this["topics"] as Map<string, Set<string>>;
193
- const peers = this.peers;
194
- const score = this.score;
195
- const meshPeersByClient = new Map<string, number>();
196
- const meshPeerIdStrs = new Set<string>();
197
-
198
- for (const {peersMap, metricsGossip, type} of [
199
- {peersMap: mesh, metricsGossip: metrics.gossipMesh, type: "mesh"},
200
- {peersMap: topics, metricsGossip: metrics.gossipTopic, type: "topics"},
201
- ]) {
202
- // Pre-aggregate results by fork so we can fill the remaining metrics with 0
203
- const peersByTypeByBoundary = new Map2d<ForkBoundaryLabel, GossipType, number>();
204
- const peersByBeaconAttSubnetByBoundary = new Map2dArr<ForkBoundaryLabel, number>();
205
- const peersByBeaconSyncSubnetByBoundary = new Map2dArr<ForkBoundaryLabel, number>();
206
- const peersByDataColumnSubnetByBoundary = new Map2dArr<ForkBoundaryLabel, number>();
207
-
208
- // loop through all mesh entries, count each set size
209
- for (const [topicString, peers] of peersMap) {
210
- // Ignore topics with 0 peers. May prevent overriding after a fork
211
- if (peers.size === 0) continue;
212
-
213
- // there are some new topics in the network so `getKnownTopic()` returns undefined
214
- // for example in prater: /eth2/82f4a72b/optimistic_light_client_update_v0/ssz_snappy
215
- const topic = this.gossipTopicCache.getKnownTopic(topicString);
216
- if (topic !== undefined) {
217
- const boundary = getForkBoundaryLabel(topic.boundary);
218
- if (topic.type === GossipType.beacon_attestation) {
219
- peersByBeaconAttSubnetByBoundary.set(boundary, topic.subnet, peers.size);
220
- } else if (topic.type === GossipType.sync_committee) {
221
- peersByBeaconSyncSubnetByBoundary.set(boundary, topic.subnet, peers.size);
222
- } else if (topic.type === GossipType.data_column_sidecar) {
223
- peersByDataColumnSubnetByBoundary.set(boundary, topic.subnet, peers.size);
224
- } else {
225
- peersByTypeByBoundary.set(boundary, topic.type, peers.size);
226
- }
227
- }
228
-
229
- if (type === "mesh") {
230
- for (const peer of peers) {
231
- if (!meshPeerIdStrs.has(peer)) {
232
- meshPeerIdStrs.add(peer);
233
- const client = this.peersData.connectedPeers.get(peer)?.agentClient?.toString() ?? ClientKind.Unknown;
234
- meshPeersByClient.set(client, (meshPeersByClient.get(client) ?? 0) + 1);
235
- }
236
- }
237
- }
238
- }
239
-
240
- // beacon attestation mesh gets counted separately so we can track mesh peers by subnet
241
- // zero out all gossip type & subnet choices, so the dashboard will register them
242
- for (const [boundary, peersByType] of peersByTypeByBoundary.map) {
243
- for (const type of Object.values(GossipType)) {
244
- metricsGossip.peersByType.set({boundary, type}, peersByType.get(type) ?? 0);
245
- }
246
- }
247
- for (const [boundary, peersByBeaconAttSubnet] of peersByBeaconAttSubnetByBoundary.map) {
248
- for (let subnet = 0; subnet < ATTESTATION_SUBNET_COUNT; subnet++) {
249
- metricsGossip.peersByBeaconAttestationSubnet.set(
250
- {boundary, subnet: attSubnetLabel(subnet)},
251
- peersByBeaconAttSubnet[subnet] ?? 0
252
- );
253
- }
254
- }
255
- for (const [boundary, peersByBeaconSyncSubnet] of peersByBeaconSyncSubnetByBoundary.map) {
256
- for (let subnet = 0; subnet < SYNC_COMMITTEE_SUBNET_COUNT; subnet++) {
257
- // SYNC_COMMITTEE_SUBNET_COUNT is < 9, no need to prepend a 0 to the label
258
- metricsGossip.peersBySyncCommitteeSubnet.set({boundary, subnet}, peersByBeaconSyncSubnet[subnet] ?? 0);
259
- }
260
- }
261
- for (const [boundary, peersByDataColumnSubnet] of peersByDataColumnSubnetByBoundary.map) {
262
- for (const subnet of networkConfig.custodyConfig.sampleGroups) {
263
- metricsGossip.peersByDataColumnSubnet.set({boundary, subnet}, peersByDataColumnSubnet[subnet] ?? 0);
264
- }
265
- }
266
- }
267
-
268
- for (const [client, peers] of meshPeersByClient.entries()) {
269
- metrics.gossipPeer.meshPeersByClient.set({client}, peers);
270
- }
271
-
272
- // track gossip peer score
273
- let peerCountScoreGraylist = 0;
274
- let peerCountScorePublish = 0;
275
- let peerCountScoreGossip = 0;
276
- let peerCountScoreMesh = 0;
277
- const {graylistThreshold, publishThreshold, gossipThreshold} = gossipScoreThresholds;
278
- const gossipScores: number[] = [];
279
-
280
- for (const peerIdStr of peers.keys()) {
281
- const s = score.score(peerIdStr);
282
- if (s >= graylistThreshold) peerCountScoreGraylist++;
283
- if (s >= publishThreshold) peerCountScorePublish++;
284
- if (s >= gossipThreshold) peerCountScoreGossip++;
285
- if (s >= 0) peerCountScoreMesh++;
286
- gossipScores.push(s);
287
- }
288
-
289
- // Access once for all calls below
290
- metrics.gossipPeer.scoreByThreshold.set({threshold: "graylist"}, peerCountScoreGraylist);
291
- metrics.gossipPeer.scoreByThreshold.set({threshold: "publish"}, peerCountScorePublish);
292
- metrics.gossipPeer.scoreByThreshold.set({threshold: "gossip"}, peerCountScoreGossip);
293
- metrics.gossipPeer.scoreByThreshold.set({threshold: "mesh"}, peerCountScoreMesh);
294
-
295
- // Register full score too
296
- metrics.gossipPeer.score.set(gossipScores);
297
- }
298
-
299
- private onGossipsubMessage(event: GossipsubEvents["gossipsub:message"]): void {
300
- const {propagationSource, msgId, msg} = event.detail;
301
-
302
- // Also validates that the topicStr is known
303
- const topic = this.gossipTopicCache.getTopic(msg.topic);
304
-
305
- // Get seenTimestamp before adding the message to the queue or add async delays
306
- const seenTimestampSec = Date.now() / 1000;
307
-
308
- // Use setTimeout to yield to the macro queue
309
- // Without this we'll have huge event loop lag
310
- // See https://github.com/ChainSafe/lodestar/issues/5604
311
- callInNextEventLoop(() => {
312
- this.events.emit(NetworkEvent.pendingGossipsubMessage, {
313
- topic,
314
- msg,
315
- msgId,
316
- // Hot path, use cached .toString() version
317
- propagationSource: propagationSource.toString(),
318
- seenTimestampSec,
319
- startProcessUnixSec: null,
320
- });
321
- });
322
- }
323
-
324
- private onValidationResult(data: NetworkEventData[NetworkEvent.gossipMessageValidationResult]): void {
325
- // Use setTimeout to yield to the macro queue
326
- // Without this we'll have huge event loop lag
327
- // See https://github.com/ChainSafe/lodestar/issues/5604
328
- callInNextEventLoop(() => {
329
- this.reportMessageValidationResult(data.msgId, data.propagationSource, data.acceptance);
330
- });
331
- }
332
- }
333
-
334
- /**
335
- * Left pad subnets to two characters. Assumes ATTESTATION_SUBNET_COUNT < 99
336
- * Otherwise grafana sorts the mesh peers chart as: [1,11,12,13,...]
337
- */
338
- function attSubnetLabel(subnet: SubnetID): string {
339
- if (subnet > 9) return String(subnet);
340
-
341
- return `0${subnet}`;
342
- }
343
-
344
- function getMetricsTopicStrToLabel(
345
- networkConfig: NetworkConfig,
346
- opts: {disableLightClientServer: boolean}
347
- ): TopicStrToLabel {
348
- const {config} = networkConfig;
349
- const metricsTopicStrToLabel = new Map<TopicStr, TopicLabel>();
350
- const {forkBoundariesAscendingEpochOrder} = config;
351
-
352
- for (let i = 0; i < forkBoundariesAscendingEpochOrder.length; i++) {
353
- const currentForkBoundary = forkBoundariesAscendingEpochOrder[i];
354
- const nextForkBoundary = forkBoundariesAscendingEpochOrder[i + 1];
355
-
356
- // Edge case: If multiple fork boundaries start at the same epoch, only consider the latest one
357
- if (nextForkBoundary && currentForkBoundary.epoch === nextForkBoundary.epoch) {
358
- continue;
359
- }
360
-
361
- const topics = getCoreTopicsAtFork(networkConfig, currentForkBoundary.fork, {
362
- subscribeAllSubnets: true,
363
- disableLightClientServer: opts.disableLightClientServer,
364
- });
365
- for (const topic of topics) {
366
- metricsTopicStrToLabel.set(stringifyGossipTopic(config, {...topic, boundary: currentForkBoundary}), topic.type);
367
- }
368
- }
369
-
370
- return metricsTopicStrToLabel;
371
- }
372
-
373
- // Topics of the same ForkBoundary should have the same ForkBoundary object
374
- // we don't want to create a new string for every topic
375
- const boundaryLabelMap = new Map<ForkBoundary, ForkBoundaryLabel>();
376
- function getForkBoundaryLabel(boundary: ForkBoundary): ForkBoundaryLabel {
377
- let label = boundaryLabelMap.get(boundary);
378
- if (label === undefined) {
379
- label = `${boundary.fork}_${boundary.epoch}`;
380
- boundaryLabelMap.set(boundary, label);
381
- }
382
-
383
- return label;
384
- }
@@ -1,4 +0,0 @@
1
- export {getGossipHandlers} from "../processor/gossipHandlers.js";
2
- export * from "./gossipsub.js";
3
- export * from "./interface.js";
4
- export {getCoreTopicsAtFork} from "./topic.js";
@@ -1,215 +0,0 @@
1
- import {Message, TopicValidatorResult} from "@libp2p/interface";
2
- import {Libp2p} from "libp2p";
3
- import {PeerIdStr} from "@chainsafe/libp2p-gossipsub/types";
4
- import {BeaconConfig, ForkBoundary} from "@lodestar/config";
5
- import {
6
- AttesterSlashing,
7
- LightClientFinalityUpdate,
8
- LightClientOptimisticUpdate,
9
- SignedAggregateAndProof,
10
- SignedBeaconBlock,
11
- SingleAttestation,
12
- Slot,
13
- SubnetID,
14
- altair,
15
- capella,
16
- deneb,
17
- fulu,
18
- phase0,
19
- } from "@lodestar/types";
20
- import {Logger} from "@lodestar/utils";
21
- import {AttestationError, AttestationErrorType} from "../../chain/errors/attestationError.js";
22
- import {GossipActionError} from "../../chain/errors/gossipValidation.js";
23
- import {IBeaconChain} from "../../chain/index.js";
24
- import {JobItemQueue} from "../../util/queue/index.js";
25
-
26
- export enum GossipType {
27
- beacon_block = "beacon_block",
28
- blob_sidecar = "blob_sidecar",
29
- data_column_sidecar = "data_column_sidecar",
30
- beacon_aggregate_and_proof = "beacon_aggregate_and_proof",
31
- beacon_attestation = "beacon_attestation",
32
- voluntary_exit = "voluntary_exit",
33
- proposer_slashing = "proposer_slashing",
34
- attester_slashing = "attester_slashing",
35
- sync_committee_contribution_and_proof = "sync_committee_contribution_and_proof",
36
- sync_committee = "sync_committee",
37
- light_client_finality_update = "light_client_finality_update",
38
- light_client_optimistic_update = "light_client_optimistic_update",
39
- bls_to_execution_change = "bls_to_execution_change",
40
- }
41
-
42
- export type SequentialGossipType = Exclude<GossipType, GossipType.beacon_attestation>;
43
- export type BatchGossipType = GossipType.beacon_attestation;
44
-
45
- export enum GossipEncoding {
46
- ssz_snappy = "ssz_snappy",
47
- }
48
-
49
- /**
50
- * Note: `IGossipTopic`s are all relative to the local `genesisValidatorsRoot`
51
- */
52
- export interface IGossipTopic {
53
- type: GossipType;
54
- boundary: ForkBoundary;
55
- encoding?: GossipEncoding;
56
- }
57
-
58
- export type GossipTopicTypeMap = {
59
- [GossipType.beacon_block]: {type: GossipType.beacon_block};
60
- [GossipType.blob_sidecar]: {type: GossipType.blob_sidecar; subnet: SubnetID};
61
- [GossipType.data_column_sidecar]: {type: GossipType.data_column_sidecar; subnet: SubnetID};
62
- [GossipType.beacon_aggregate_and_proof]: {type: GossipType.beacon_aggregate_and_proof};
63
- [GossipType.beacon_attestation]: {type: GossipType.beacon_attestation; subnet: SubnetID};
64
- [GossipType.voluntary_exit]: {type: GossipType.voluntary_exit};
65
- [GossipType.proposer_slashing]: {type: GossipType.proposer_slashing};
66
- [GossipType.attester_slashing]: {type: GossipType.attester_slashing};
67
- [GossipType.sync_committee_contribution_and_proof]: {
68
- type: GossipType.sync_committee_contribution_and_proof;
69
- };
70
- [GossipType.sync_committee]: {type: GossipType.sync_committee; subnet: SubnetID};
71
- [GossipType.light_client_finality_update]: {type: GossipType.light_client_finality_update};
72
- [GossipType.light_client_optimistic_update]: {type: GossipType.light_client_optimistic_update};
73
- [GossipType.bls_to_execution_change]: {type: GossipType.bls_to_execution_change};
74
- };
75
-
76
- export type GossipTopicMap = {
77
- [K in keyof GossipTopicTypeMap]: GossipTopicTypeMap[K] & IGossipTopic;
78
- };
79
-
80
- /**
81
- * Gossip topic split into a struct
82
- */
83
- export type GossipTopic = GossipTopicMap[keyof GossipTopicMap];
84
-
85
- export type SSZTypeOfGossipTopic<T extends GossipTopic> = T extends {type: infer K extends GossipType}
86
- ? GossipTypeMap[K]
87
- : never;
88
-
89
- export type GossipTypeMap = {
90
- [GossipType.beacon_block]: SignedBeaconBlock;
91
- [GossipType.blob_sidecar]: deneb.BlobSidecar;
92
- [GossipType.beacon_aggregate_and_proof]: SignedAggregateAndProof;
93
- [GossipType.beacon_attestation]: SingleAttestation;
94
- [GossipType.data_column_sidecar]: fulu.DataColumnSidecar;
95
- [GossipType.voluntary_exit]: phase0.SignedVoluntaryExit;
96
- [GossipType.proposer_slashing]: phase0.ProposerSlashing;
97
- [GossipType.attester_slashing]: AttesterSlashing;
98
- [GossipType.sync_committee_contribution_and_proof]: altair.SignedContributionAndProof;
99
- [GossipType.sync_committee]: altair.SyncCommitteeMessage;
100
- [GossipType.light_client_finality_update]: LightClientFinalityUpdate;
101
- [GossipType.light_client_optimistic_update]: LightClientOptimisticUpdate;
102
- [GossipType.bls_to_execution_change]: capella.SignedBLSToExecutionChange;
103
- };
104
-
105
- export type GossipFnByType = {
106
- [GossipType.beacon_block]: (signedBlock: SignedBeaconBlock) => Promise<void> | void;
107
- [GossipType.blob_sidecar]: (blobSidecar: deneb.BlobSidecar) => Promise<void> | void;
108
- [GossipType.beacon_aggregate_and_proof]: (aggregateAndProof: SignedAggregateAndProof) => Promise<void> | void;
109
- [GossipType.beacon_attestation]: (attestation: SingleAttestation) => Promise<void> | void;
110
- [GossipType.data_column_sidecar]: (dataColumnSidecar: fulu.DataColumnSidecar) => Promise<void> | void;
111
- [GossipType.voluntary_exit]: (voluntaryExit: phase0.SignedVoluntaryExit) => Promise<void> | void;
112
- [GossipType.proposer_slashing]: (proposerSlashing: phase0.ProposerSlashing) => Promise<void> | void;
113
- [GossipType.attester_slashing]: (attesterSlashing: AttesterSlashing) => Promise<void> | void;
114
- [GossipType.sync_committee_contribution_and_proof]: (
115
- signedContributionAndProof: altair.SignedContributionAndProof
116
- ) => Promise<void> | void;
117
- [GossipType.sync_committee]: (syncCommittee: altair.SyncCommitteeMessage) => Promise<void> | void;
118
- [GossipType.light_client_finality_update]: (
119
- lightClientFinalityUpdate: LightClientFinalityUpdate
120
- ) => Promise<void> | void;
121
- [GossipType.light_client_optimistic_update]: (
122
- lightClientOptimisticUpdate: LightClientOptimisticUpdate
123
- ) => Promise<void> | void;
124
- [GossipType.bls_to_execution_change]: (
125
- blsToExecutionChange: capella.SignedBLSToExecutionChange
126
- ) => Promise<void> | void;
127
- };
128
-
129
- export type GossipFn = GossipFnByType[keyof GossipFnByType];
130
-
131
- export type GossipModules = {
132
- config: BeaconConfig;
133
- libp2p: Libp2p;
134
- logger: Logger;
135
- chain: IBeaconChain;
136
- };
137
-
138
- /**
139
- * Contains various methods for validation of incoming gossip topic data.
140
- * The conditions for valid gossip topics and how they are handled are specified here:
141
- * https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md#global-topics
142
- */
143
-
144
- /**
145
- * Top-level type for gossip validation functions
146
- *
147
- * js-libp2p-gossipsub expects validation functions that look like this
148
- */
149
- export type GossipMessageInfo = {
150
- topic: GossipTopic;
151
- msg: Message;
152
- propagationSource: PeerIdStr;
153
- seenTimestampSec: number;
154
- msgSlot: Slot | null;
155
- indexed?: string;
156
- };
157
-
158
- export type GossipValidatorFn = (messageInfo: GossipMessageInfo) => Promise<TopicValidatorResult>;
159
-
160
- export type GossipValidatorBatchFn = (messageInfos: GossipMessageInfo[]) => Promise<TopicValidatorResult[]>;
161
-
162
- export type ValidatorFnsByType = {[K in GossipType]: GossipValidatorFn};
163
-
164
- export type GossipJobQueues = {
165
- [K in GossipType]: JobItemQueue<Parameters<GossipValidatorFn>, ResolvedType<GossipValidatorFn>>;
166
- };
167
-
168
- export type GossipData = {
169
- serializedData: Uint8Array;
170
- msgSlot?: Slot | null;
171
- indexed?: string;
172
- };
173
-
174
- export type GossipHandlerParam = {
175
- gossipData: GossipData;
176
- topic: GossipTopicMap[GossipType];
177
- peerIdStr: string;
178
- seenTimestampSec: number;
179
- };
180
-
181
- export type GossipHandlerFn = (gossipHandlerParam: GossipHandlerParam) => Promise<void>;
182
-
183
- export type BatchGossipHandlerFn = (gossipHandlerParam: GossipHandlerParam[]) => Promise<(null | AttestationError)[]>;
184
-
185
- export type GossipHandlerParamGeneric<T extends GossipType> = {
186
- gossipData: GossipData;
187
- topic: GossipTopicMap[T];
188
- peerIdStr: string;
189
- seenTimestampSec: number;
190
- };
191
-
192
- export type GossipHandlers = {
193
- [K in GossipType]: SequentialGossipHandler<K> | BatchGossipHandler<K>;
194
- };
195
-
196
- export type SequentialGossipHandler<K extends GossipType> = (
197
- gossipHandlerParam: GossipHandlerParamGeneric<K>
198
- ) => Promise<void>;
199
-
200
- export type SequentialGossipHandlers = {
201
- [K in SequentialGossipType]: SequentialGossipHandler<K>;
202
- };
203
-
204
- export type BatchGossipHandlers = {
205
- [K in BatchGossipType]: BatchGossipHandler<K>;
206
- };
207
-
208
- export type BatchGossipHandler<K extends GossipType> = (
209
- gossipHandlerParams: GossipHandlerParamGeneric<K>[]
210
- ) => Promise<(null | GossipActionError<AttestationErrorType>)[]>;
211
-
212
- // biome-ignore lint/suspicious/noExplicitAny: Need the usage of `any` here to infer any type
213
- export type ResolvedType<F extends (...args: any) => Promise<any>> = F extends (...args: any) => Promise<infer T>
214
- ? T
215
- : never;
@@ -1,71 +0,0 @@
1
- import {SubnetID} from "@lodestar/types";
2
- import {RegistryMetricCreator} from "../../metrics/index.js";
3
- import {ForkBoundaryLabel} from "./gossipsub.js";
4
- import {GossipType} from "./interface.js";
5
-
6
- export type Eth2GossipsubMetrics = ReturnType<typeof createEth2GossipsubMetrics>;
7
-
8
- export function createEth2GossipsubMetrics(register: RegistryMetricCreator) {
9
- return {
10
- gossipPeer: {
11
- scoreByThreshold: register.gauge<{threshold: string}>({
12
- name: "lodestar_gossip_peer_score_by_threshold_count",
13
- help: "Gossip peer score by threshold",
14
- labelNames: ["threshold"],
15
- }),
16
- meshPeersByClient: register.gauge<{client: string}>({
17
- name: "lodestar_gossip_mesh_peers_by_client_count",
18
- help: "number of mesh peers, labeled by client",
19
- labelNames: ["client"],
20
- }),
21
- score: register.avgMinMax({
22
- name: "lodestar_gossip_score_avg_min_max",
23
- help: "Avg min max of all gossip peer scores",
24
- }),
25
- },
26
- gossipMesh: {
27
- peersByType: register.gauge<{type: GossipType; boundary: ForkBoundaryLabel}>({
28
- name: "lodestar_gossip_mesh_peers_by_type_count",
29
- help: "Number of connected mesh peers per gossip type",
30
- labelNames: ["type", "boundary"],
31
- }),
32
- peersByBeaconAttestationSubnet: register.gauge<{subnet: string; boundary: ForkBoundaryLabel}>({
33
- name: "lodestar_gossip_mesh_peers_by_beacon_attestation_subnet_count",
34
- help: "Number of connected mesh peers per beacon attestation subnet",
35
- labelNames: ["subnet", "boundary"],
36
- }),
37
- peersBySyncCommitteeSubnet: register.gauge<{subnet: SubnetID; boundary: ForkBoundaryLabel}>({
38
- name: "lodestar_gossip_mesh_peers_by_sync_committee_subnet_count",
39
- help: "Number of connected mesh peers per sync committee subnet",
40
- labelNames: ["subnet", "boundary"],
41
- }),
42
- peersByDataColumnSubnet: register.gauge<{subnet: SubnetID; boundary: ForkBoundaryLabel}>({
43
- name: "lodestar_gossip_mesh_peers_by_data_column_subnet_count",
44
- help: "Number of connected mesh peers per data column subnet",
45
- labelNames: ["subnet", "boundary"],
46
- }),
47
- },
48
- gossipTopic: {
49
- peersByType: register.gauge<{type: GossipType; boundary: ForkBoundaryLabel}>({
50
- name: "lodestar_gossip_topic_peers_by_type_count",
51
- help: "Number of connected topic peers per gossip type",
52
- labelNames: ["type", "boundary"],
53
- }),
54
- peersByBeaconAttestationSubnet: register.gauge<{subnet: string; boundary: ForkBoundaryLabel}>({
55
- name: "lodestar_gossip_topic_peers_by_beacon_attestation_subnet_count",
56
- help: "Number of connected topic peers per beacon attestation subnet",
57
- labelNames: ["subnet", "boundary"],
58
- }),
59
- peersBySyncCommitteeSubnet: register.gauge<{subnet: SubnetID; boundary: ForkBoundaryLabel}>({
60
- name: "lodestar_gossip_topic_peers_by_sync_committee_subnet_count",
61
- help: "Number of connected topic peers per sync committee subnet",
62
- labelNames: ["subnet", "boundary"],
63
- }),
64
- peersByDataColumnSubnet: register.gauge<{subnet: SubnetID; boundary: ForkBoundaryLabel}>({
65
- name: "lodestar_gossip_topic_peers_by_data_column_subnet_count",
66
- help: "Number of connected topic peers per data column subnet",
67
- labelNames: ["subnet", "boundary"],
68
- }),
69
- },
70
- };
71
- }