@lodestar/beacon-node 1.35.0-dev.47c570ab76 → 1.35.0-dev.56313c7299

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 (500) hide show
  1. package/lib/api/impl/beacon/blocks/index.js +46 -58
  2. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  3. package/lib/api/impl/config/constants.d.ts +0 -5
  4. package/lib/api/impl/config/constants.js +1 -6
  5. package/lib/api/impl/config/constants.js.map +1 -1
  6. package/lib/api/impl/debug/index.js +1 -1
  7. package/lib/api/impl/debug/index.js.map +1 -1
  8. package/lib/api/impl/errors.js +0 -2
  9. package/lib/api/impl/errors.js.map +1 -1
  10. package/lib/api/impl/index.d.ts +3 -3
  11. package/lib/api/impl/index.js +3 -3
  12. package/lib/api/impl/index.js.map +1 -1
  13. package/lib/api/impl/lodestar/index.js +1 -1
  14. package/lib/api/impl/lodestar/index.js.map +1 -1
  15. package/lib/api/impl/validator/index.js +1 -2
  16. package/lib/api/impl/validator/index.js.map +1 -1
  17. package/lib/api/rest/activeSockets.js +2 -3
  18. package/lib/api/rest/activeSockets.js.map +1 -1
  19. package/lib/api/rest/base.d.ts +1 -1
  20. package/lib/api/rest/base.js +2 -6
  21. package/lib/api/rest/base.js.map +1 -1
  22. package/lib/api/rest/index.js +0 -2
  23. package/lib/api/rest/index.js.map +1 -1
  24. package/lib/api/rest/swaggerUI.js +2 -4
  25. package/lib/api/rest/swaggerUI.js.map +1 -1
  26. package/lib/chain/archiveStore/archiveStore.js +38 -49
  27. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  28. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +0 -3
  29. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  30. package/lib/chain/archiveStore/index.d.ts +1 -1
  31. package/lib/chain/archiveStore/index.js +1 -1
  32. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +0 -5
  33. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
  34. package/lib/chain/balancesCache.js +3 -1
  35. package/lib/chain/balancesCache.js.map +1 -1
  36. package/lib/chain/beaconProposerCache.js +0 -1
  37. package/lib/chain/beaconProposerCache.js.map +1 -1
  38. package/lib/chain/blocks/blockInput/blockInput.d.ts +7 -19
  39. package/lib/chain/blocks/blockInput/blockInput.js +88 -132
  40. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  41. package/lib/chain/blocks/blockInput/index.d.ts +1 -1
  42. package/lib/chain/blocks/blockInput/index.js +1 -1
  43. package/lib/chain/blocks/blockInput/types.d.ts +10 -19
  44. package/lib/chain/blocks/blockInput/types.js +0 -1
  45. package/lib/chain/blocks/blockInput/types.js.map +1 -1
  46. package/lib/chain/blocks/blockInput/utils.d.ts +4 -0
  47. package/lib/chain/blocks/blockInput/utils.js +29 -6
  48. package/lib/chain/blocks/blockInput/utils.js.map +1 -1
  49. package/lib/chain/blocks/importBlock.js +12 -16
  50. package/lib/chain/blocks/importBlock.js.map +1 -1
  51. package/lib/chain/blocks/index.d.ts +5 -6
  52. package/lib/chain/blocks/index.js +4 -5
  53. package/lib/chain/blocks/index.js.map +1 -1
  54. package/lib/chain/blocks/types.d.ts +106 -3
  55. package/lib/chain/blocks/types.js +119 -0
  56. package/lib/chain/blocks/types.js.map +1 -1
  57. package/lib/chain/blocks/utils/chainSegment.d.ts +2 -2
  58. package/lib/chain/blocks/utils/chainSegment.js +2 -2
  59. package/lib/chain/blocks/utils/chainSegment.js.map +1 -1
  60. package/lib/chain/blocks/verifyBlock.d.ts +3 -3
  61. package/lib/chain/blocks/verifyBlock.js +14 -15
  62. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  63. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts +22 -7
  64. package/lib/chain/blocks/verifyBlocksDataAvailability.js +110 -18
  65. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  66. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +3 -4
  67. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +22 -24
  68. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  69. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts +3 -4
  70. package/lib/chain/blocks/verifyBlocksSanityChecks.js +2 -2
  71. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  72. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts +2 -3
  73. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js +2 -2
  74. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js.map +1 -1
  75. package/lib/chain/blocks/writeBlockInputToDb.d.ts +3 -3
  76. package/lib/chain/blocks/writeBlockInputToDb.js +66 -61
  77. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  78. package/lib/chain/bls/multithread/index.js +163 -168
  79. package/lib/chain/bls/multithread/index.js.map +1 -1
  80. package/lib/chain/bls/singleThread.js +0 -1
  81. package/lib/chain/bls/singleThread.js.map +1 -1
  82. package/lib/chain/chain.d.ts +11 -13
  83. package/lib/chain/chain.js +20 -79
  84. package/lib/chain/chain.js.map +1 -1
  85. package/lib/chain/emitter.d.ts +2 -43
  86. package/lib/chain/emitter.js +0 -18
  87. package/lib/chain/emitter.js.map +1 -1
  88. package/lib/chain/errors/blobSidecarError.d.ts +0 -24
  89. package/lib/chain/errors/blobSidecarError.js +0 -10
  90. package/lib/chain/errors/blobSidecarError.js.map +1 -1
  91. package/lib/chain/errors/blockError.js +0 -1
  92. package/lib/chain/errors/blockError.js.map +1 -1
  93. package/lib/chain/errors/dataColumnSidecarError.d.ts +0 -42
  94. package/lib/chain/errors/dataColumnSidecarError.js +0 -14
  95. package/lib/chain/errors/dataColumnSidecarError.js.map +1 -1
  96. package/lib/chain/errors/gossipValidation.js +0 -1
  97. package/lib/chain/errors/gossipValidation.js.map +1 -1
  98. package/lib/chain/errors/index.d.ts +2 -2
  99. package/lib/chain/errors/index.js +2 -2
  100. package/lib/chain/errors/index.js.map +1 -1
  101. package/lib/chain/forkChoice/index.js.map +1 -1
  102. package/lib/chain/genesis/genesis.js +5 -16
  103. package/lib/chain/genesis/genesis.js.map +1 -1
  104. package/lib/chain/index.d.ts +2 -2
  105. package/lib/chain/index.js +2 -2
  106. package/lib/chain/index.js.map +1 -1
  107. package/lib/chain/interface.d.ts +9 -12
  108. package/lib/chain/interface.js.map +1 -1
  109. package/lib/chain/lightClient/index.js +9 -16
  110. package/lib/chain/lightClient/index.js.map +1 -1
  111. package/lib/chain/lightClient/proofs.js.map +1 -1
  112. package/lib/chain/opPools/aggregatedAttestationPool.js +9 -14
  113. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  114. package/lib/chain/opPools/attestationPool.js +3 -8
  115. package/lib/chain/opPools/attestationPool.js.map +1 -1
  116. package/lib/chain/opPools/index.d.ts +1 -1
  117. package/lib/chain/opPools/index.js +1 -1
  118. package/lib/chain/opPools/index.js.map +1 -1
  119. package/lib/chain/opPools/opPool.js +12 -10
  120. package/lib/chain/opPools/opPool.js.map +1 -1
  121. package/lib/chain/opPools/syncCommitteeMessagePool.js +6 -9
  122. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  123. package/lib/chain/opPools/syncContributionAndProofPool.js +2 -5
  124. package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
  125. package/lib/chain/options.js +1 -1
  126. package/lib/chain/options.js.map +1 -1
  127. package/lib/chain/prepareNextSlot.js +136 -141
  128. package/lib/chain/prepareNextSlot.js.map +1 -1
  129. package/lib/chain/produceBlock/produceBlockBody.d.ts +1 -1
  130. package/lib/chain/produceBlock/produceBlockBody.js +10 -3
  131. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  132. package/lib/chain/regen/errors.js +0 -1
  133. package/lib/chain/regen/errors.js.map +1 -1
  134. package/lib/chain/regen/index.d.ts +1 -1
  135. package/lib/chain/regen/index.js +1 -1
  136. package/lib/chain/regen/index.js.map +1 -1
  137. package/lib/chain/regen/queued.js +28 -35
  138. package/lib/chain/regen/queued.js.map +1 -1
  139. package/lib/chain/regen/regen.js +0 -1
  140. package/lib/chain/regen/regen.js.map +1 -1
  141. package/lib/chain/reprocess.js +1 -3
  142. package/lib/chain/reprocess.js.map +1 -1
  143. package/lib/chain/seenCache/index.d.ts +1 -1
  144. package/lib/chain/seenCache/index.js +1 -1
  145. package/lib/chain/seenCache/index.js.map +1 -1
  146. package/lib/chain/seenCache/seenAggregateAndProof.js +6 -7
  147. package/lib/chain/seenCache/seenAggregateAndProof.js.map +1 -1
  148. package/lib/chain/seenCache/seenAttestationData.js +2 -5
  149. package/lib/chain/seenCache/seenAttestationData.js.map +1 -1
  150. package/lib/chain/seenCache/seenAttesters.js +4 -2
  151. package/lib/chain/seenCache/seenAttesters.js.map +1 -1
  152. package/lib/chain/seenCache/seenBlockInput.d.ts +84 -0
  153. package/lib/chain/seenCache/seenBlockInput.js +225 -0
  154. package/lib/chain/seenCache/seenBlockInput.js.map +1 -0
  155. package/lib/chain/seenCache/seenBlockProposers.js +4 -2
  156. package/lib/chain/seenCache/seenBlockProposers.js.map +1 -1
  157. package/lib/chain/seenCache/seenCommittee.js +3 -1
  158. package/lib/chain/seenCache/seenCommittee.js.map +1 -1
  159. package/lib/chain/seenCache/seenCommitteeContribution.js +2 -3
  160. package/lib/chain/seenCache/seenCommitteeContribution.js.map +1 -1
  161. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +78 -74
  162. package/lib/chain/seenCache/seenGossipBlockInput.js +369 -235
  163. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  164. package/lib/chain/shufflingCache.js +2 -5
  165. package/lib/chain/shufflingCache.js.map +1 -1
  166. package/lib/chain/stateCache/blockStateCacheImpl.js +7 -13
  167. package/lib/chain/stateCache/blockStateCacheImpl.js.map +1 -1
  168. package/lib/chain/stateCache/datastore/db.js +0 -1
  169. package/lib/chain/stateCache/datastore/db.js.map +1 -1
  170. package/lib/chain/stateCache/datastore/file.js +0 -1
  171. package/lib/chain/stateCache/datastore/file.js.map +1 -1
  172. package/lib/chain/stateCache/datastore/index.d.ts +1 -1
  173. package/lib/chain/stateCache/datastore/index.js +1 -1
  174. package/lib/chain/stateCache/datastore/index.js.map +1 -1
  175. package/lib/chain/stateCache/fifoBlockStateCache.js +0 -10
  176. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  177. package/lib/chain/stateCache/inMemoryCheckpointsCache.js +4 -10
  178. package/lib/chain/stateCache/inMemoryCheckpointsCache.js.map +1 -1
  179. package/lib/chain/stateCache/index.d.ts +1 -1
  180. package/lib/chain/stateCache/index.js +1 -1
  181. package/lib/chain/stateCache/index.js.map +1 -1
  182. package/lib/chain/stateCache/mapMetrics.js +4 -4
  183. package/lib/chain/stateCache/mapMetrics.js.map +1 -1
  184. package/lib/chain/stateCache/persistentCheckpointsCache.js +6 -14
  185. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  186. package/lib/chain/validation/blobSidecar.d.ts +3 -8
  187. package/lib/chain/validation/blobSidecar.js +31 -73
  188. package/lib/chain/validation/blobSidecar.js.map +1 -1
  189. package/lib/chain/validation/dataColumnSidecar.d.ts +9 -7
  190. package/lib/chain/validation/dataColumnSidecar.js +57 -95
  191. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  192. package/lib/chain/validation/index.d.ts +1 -1
  193. package/lib/chain/validation/index.js +1 -1
  194. package/lib/chain/validation/index.js.map +1 -1
  195. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -1
  196. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  197. package/lib/chain/validatorMonitor.d.ts +3 -1
  198. package/lib/chain/validatorMonitor.js +1 -2
  199. package/lib/chain/validatorMonitor.js.map +1 -1
  200. package/lib/db/beacon.js +0 -24
  201. package/lib/db/beacon.js.map +1 -1
  202. package/lib/db/index.d.ts +1 -1
  203. package/lib/db/index.js.map +1 -1
  204. package/lib/db/repositories/blobSidecars.js.map +1 -1
  205. package/lib/db/repositories/blockArchive.js +3 -2
  206. package/lib/db/repositories/blockArchive.js.map +1 -1
  207. package/lib/db/repositories/dataColumnSidecar.js +1 -1
  208. package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
  209. package/lib/db/repositories/dataColumnSidecarArchive.js +1 -1
  210. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  211. package/lib/db/repositories/depositDataRoot.js +0 -1
  212. package/lib/db/repositories/depositDataRoot.js.map +1 -1
  213. package/lib/db/repositories/index.d.ts +10 -10
  214. package/lib/db/repositories/index.js +9 -9
  215. package/lib/db/repositories/index.js.map +1 -1
  216. package/lib/db/single/preGenesisState.js +0 -6
  217. package/lib/db/single/preGenesisState.js.map +1 -1
  218. package/lib/db/single/preGenesisStateLastProcessedBlock.js +0 -5
  219. package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +1 -1
  220. package/lib/eth1/eth1DataCache.js +0 -2
  221. package/lib/eth1/eth1DataCache.js.map +1 -1
  222. package/lib/eth1/eth1DepositDataTracker.js +5 -18
  223. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  224. package/lib/eth1/eth1DepositsCache.js +0 -3
  225. package/lib/eth1/eth1DepositsCache.js.map +1 -1
  226. package/lib/eth1/eth1MergeBlockTracker.js +4 -10
  227. package/lib/eth1/eth1MergeBlockTracker.js.map +1 -1
  228. package/lib/eth1/index.js +0 -2
  229. package/lib/eth1/index.js.map +1 -1
  230. package/lib/eth1/provider/eth1Provider.d.ts +2 -1
  231. package/lib/eth1/provider/eth1Provider.js +2 -6
  232. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  233. package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
  234. package/lib/eth1/provider/jsonRpcHttpClient.js +2 -16
  235. package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
  236. package/lib/eth1/provider/jwt.js.map +1 -1
  237. package/lib/eth1/provider/utils.d.ts +0 -5
  238. package/lib/eth1/provider/utils.js +1 -9
  239. package/lib/eth1/provider/utils.js.map +1 -1
  240. package/lib/eth1/utils/deposits.js.map +1 -1
  241. package/lib/execution/builder/cache.js +0 -6
  242. package/lib/execution/builder/cache.js.map +1 -1
  243. package/lib/execution/builder/http.js +8 -14
  244. package/lib/execution/builder/http.js.map +1 -1
  245. package/lib/execution/builder/index.js.map +1 -1
  246. package/lib/execution/engine/disabled.js +4 -2
  247. package/lib/execution/engine/disabled.js.map +1 -1
  248. package/lib/execution/engine/http.d.ts +2 -2
  249. package/lib/execution/engine/http.js +11 -43
  250. package/lib/execution/engine/http.js.map +1 -1
  251. package/lib/execution/engine/interface.d.ts +2 -2
  252. package/lib/execution/engine/interface.js.map +1 -1
  253. package/lib/execution/engine/mock.d.ts +0 -1
  254. package/lib/execution/engine/mock.js +12 -16
  255. package/lib/execution/engine/mock.js.map +1 -1
  256. package/lib/execution/engine/payloadIdCache.js +3 -1
  257. package/lib/execution/engine/payloadIdCache.js.map +1 -1
  258. package/lib/execution/engine/types.d.ts +1 -5
  259. package/lib/execution/engine/types.js +8 -37
  260. package/lib/execution/engine/types.js.map +1 -1
  261. package/lib/execution/engine/utils.js +3 -3
  262. package/lib/execution/engine/utils.js.map +1 -1
  263. package/lib/execution/index.d.ts +2 -2
  264. package/lib/execution/index.js +2 -2
  265. package/lib/execution/index.js.map +1 -1
  266. package/lib/index.d.ts +6 -6
  267. package/lib/index.js +5 -5
  268. package/lib/index.js.map +1 -1
  269. package/lib/metrics/index.d.ts +1 -1
  270. package/lib/metrics/index.js +1 -1
  271. package/lib/metrics/index.js.map +1 -1
  272. package/lib/metrics/metrics/beacon.d.ts +5 -11
  273. package/lib/metrics/metrics/beacon.js +20 -40
  274. package/lib/metrics/metrics/beacon.js.map +1 -1
  275. package/lib/metrics/metrics/lodestar.d.ts +13 -55
  276. package/lib/metrics/metrics/lodestar.js +7 -84
  277. package/lib/metrics/metrics/lodestar.js.map +1 -1
  278. package/lib/metrics/metrics.d.ts +1 -1
  279. package/lib/metrics/metrics.js.map +1 -1
  280. package/lib/metrics/nodeJsMetrics.js +1 -1
  281. package/lib/metrics/nodeJsMetrics.js.map +1 -1
  282. package/lib/metrics/server/http.d.ts +1 -1
  283. package/lib/metrics/utils/avgMinMax.d.ts +1 -1
  284. package/lib/metrics/utils/avgMinMax.js +6 -10
  285. package/lib/metrics/utils/avgMinMax.js.map +1 -1
  286. package/lib/metrics/utils/gauge.d.ts +1 -1
  287. package/lib/metrics/utils/gauge.js +4 -1
  288. package/lib/metrics/utils/gauge.js.map +1 -1
  289. package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
  290. package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
  291. package/lib/monitoring/properties.js +0 -4
  292. package/lib/monitoring/properties.js.map +1 -1
  293. package/lib/monitoring/service.js +1 -13
  294. package/lib/monitoring/service.js.map +1 -1
  295. package/lib/monitoring/system.js +27 -25
  296. package/lib/monitoring/system.js.map +1 -1
  297. package/lib/network/core/networkCore.d.ts +2 -2
  298. package/lib/network/core/networkCore.js +50 -67
  299. package/lib/network/core/networkCore.js.map +1 -1
  300. package/lib/network/core/networkCoreWorker.js +1 -1
  301. package/lib/network/core/networkCoreWorker.js.map +1 -1
  302. package/lib/network/core/networkCoreWorkerHandler.d.ts +2 -2
  303. package/lib/network/core/networkCoreWorkerHandler.js +5 -14
  304. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  305. package/lib/network/discv5/index.d.ts +2 -2
  306. package/lib/network/discv5/index.js +3 -9
  307. package/lib/network/discv5/index.js.map +1 -1
  308. package/lib/network/discv5/worker.js +3 -3
  309. package/lib/network/discv5/worker.js.map +1 -1
  310. package/lib/network/events.d.ts +18 -2
  311. package/lib/network/events.js +7 -0
  312. package/lib/network/events.js.map +1 -1
  313. package/lib/network/gossip/encoding.d.ts +1 -1
  314. package/lib/network/gossip/encoding.js +2 -4
  315. package/lib/network/gossip/encoding.js.map +1 -1
  316. package/lib/network/gossip/errors.js +0 -1
  317. package/lib/network/gossip/errors.js.map +1 -1
  318. package/lib/network/gossip/gossipsub.d.ts +1 -2
  319. package/lib/network/gossip/gossipsub.js +17 -43
  320. package/lib/network/gossip/gossipsub.js.map +1 -1
  321. package/lib/network/gossip/index.d.ts +2 -2
  322. package/lib/network/gossip/index.js +2 -2
  323. package/lib/network/gossip/index.js.map +1 -1
  324. package/lib/network/gossip/interface.d.ts +2 -2
  325. package/lib/network/gossip/metrics.d.ts +7 -15
  326. package/lib/network/gossip/metrics.js +6 -16
  327. package/lib/network/gossip/metrics.js.map +1 -1
  328. package/lib/network/gossip/topic.d.ts +105 -125
  329. package/lib/network/gossip/topic.js +1 -2
  330. package/lib/network/gossip/topic.js.map +1 -1
  331. package/lib/network/index.d.ts +3 -3
  332. package/lib/network/index.js +3 -3
  333. package/lib/network/index.js.map +1 -1
  334. package/lib/network/interface.d.ts +2 -3
  335. package/lib/network/libp2p/index.js +3 -11
  336. package/lib/network/libp2p/index.js.map +1 -1
  337. package/lib/network/metadata.js +1 -6
  338. package/lib/network/metadata.js.map +1 -1
  339. package/lib/network/network.d.ts +2 -4
  340. package/lib/network/network.js +71 -89
  341. package/lib/network/network.js.map +1 -1
  342. package/lib/network/options.js +1 -1
  343. package/lib/network/options.js.map +1 -1
  344. package/lib/network/peers/datastore.d.ts +2 -2
  345. package/lib/network/peers/datastore.js +4 -10
  346. package/lib/network/peers/datastore.js.map +1 -1
  347. package/lib/network/peers/discover.js +66 -75
  348. package/lib/network/peers/discover.js.map +1 -1
  349. package/lib/network/peers/peerManager.js +130 -154
  350. package/lib/network/peers/peerManager.js.map +1 -1
  351. package/lib/network/peers/peersData.d.ts +1 -1
  352. package/lib/network/peers/peersData.js +3 -1
  353. package/lib/network/peers/peersData.js.map +1 -1
  354. package/lib/network/peers/score/index.d.ts +1 -1
  355. package/lib/network/peers/score/index.js +1 -1
  356. package/lib/network/peers/score/index.js.map +1 -1
  357. package/lib/network/peers/score/score.js +0 -6
  358. package/lib/network/peers/score/score.js.map +1 -1
  359. package/lib/network/peers/score/store.js +0 -3
  360. package/lib/network/peers/score/store.js.map +1 -1
  361. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  362. package/lib/network/peers/utils/subnetMap.js +4 -2
  363. package/lib/network/peers/utils/subnetMap.js.map +1 -1
  364. package/lib/network/processor/aggregatorTracker.js +3 -1
  365. package/lib/network/processor/aggregatorTracker.js.map +1 -1
  366. package/lib/network/processor/gossipHandlers.js +164 -145
  367. package/lib/network/processor/gossipHandlers.js.map +1 -1
  368. package/lib/network/processor/gossipQueues/indexed.js +9 -11
  369. package/lib/network/processor/gossipQueues/indexed.js.map +1 -1
  370. package/lib/network/processor/gossipQueues/linear.js +8 -9
  371. package/lib/network/processor/gossipQueues/linear.js.map +1 -1
  372. package/lib/network/processor/index.d.ts +1 -2
  373. package/lib/network/processor/index.js +8 -22
  374. package/lib/network/processor/index.js.map +1 -1
  375. package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
  376. package/lib/network/reqresp/ReqRespBeaconNode.js +2 -11
  377. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  378. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.d.ts +28 -0
  379. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js +328 -0
  380. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js.map +1 -0
  381. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.d.ts +49 -0
  382. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js +499 -0
  383. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js.map +1 -0
  384. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  385. package/lib/network/reqresp/index.d.ts +3 -1
  386. package/lib/network/reqresp/index.js +3 -1
  387. package/lib/network/reqresp/index.js.map +1 -1
  388. package/lib/network/reqresp/rateLimit.js +2 -2
  389. package/lib/network/reqresp/rateLimit.js.map +1 -1
  390. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  391. package/lib/network/statusCache.js +0 -1
  392. package/lib/network/statusCache.js.map +1 -1
  393. package/lib/network/subnets/attnetsService.js +65 -73
  394. package/lib/network/subnets/attnetsService.js.map +1 -1
  395. package/lib/network/subnets/interface.js +1 -1
  396. package/lib/network/subnets/interface.js.map +1 -1
  397. package/lib/network/subnets/syncnetsService.js +22 -29
  398. package/lib/network/subnets/syncnetsService.js.map +1 -1
  399. package/lib/network/subnets/util.js +2 -1
  400. package/lib/network/subnets/util.js.map +1 -1
  401. package/lib/node/nodejs.d.ts +1 -1
  402. package/lib/node/nodejs.js +0 -15
  403. package/lib/node/nodejs.js.map +1 -1
  404. package/lib/node/notifier.js +2 -1
  405. package/lib/node/notifier.js.map +1 -1
  406. package/lib/node/options.js.map +1 -1
  407. package/lib/node/utils/interop/state.js +2 -1
  408. package/lib/node/utils/interop/state.js.map +1 -1
  409. package/lib/sync/backfill/backfill.d.ts +1 -1
  410. package/lib/sync/backfill/backfill.js +16 -58
  411. package/lib/sync/backfill/backfill.js.map +1 -1
  412. package/lib/sync/constants.d.ts +1 -2
  413. package/lib/sync/constants.js +1 -2
  414. package/lib/sync/constants.js.map +1 -1
  415. package/lib/sync/interface.d.ts +59 -1
  416. package/lib/sync/interface.js +20 -0
  417. package/lib/sync/interface.js.map +1 -1
  418. package/lib/sync/options.d.ts +1 -1
  419. package/lib/sync/range/batch.d.ts +32 -48
  420. package/lib/sync/range/batch.js +55 -201
  421. package/lib/sync/range/batch.js.map +1 -1
  422. package/lib/sync/range/chain.d.ts +10 -15
  423. package/lib/sync/range/chain.js +70 -141
  424. package/lib/sync/range/chain.js.map +1 -1
  425. package/lib/sync/range/range.d.ts +3 -3
  426. package/lib/sync/range/range.js +54 -86
  427. package/lib/sync/range/range.js.map +1 -1
  428. package/lib/sync/range/utils/hashBlocks.d.ts +2 -2
  429. package/lib/sync/range/utils/hashBlocks.js +4 -6
  430. package/lib/sync/range/utils/hashBlocks.js.map +1 -1
  431. package/lib/sync/range/utils/peerBalancer.js +13 -18
  432. package/lib/sync/range/utils/peerBalancer.js.map +1 -1
  433. package/lib/sync/sync.d.ts +2 -1
  434. package/lib/sync/sync.js +87 -95
  435. package/lib/sync/sync.js.map +1 -1
  436. package/lib/sync/unknownBlock.d.ts +28 -42
  437. package/lib/sync/unknownBlock.js +458 -405
  438. package/lib/sync/unknownBlock.js.map +1 -1
  439. package/lib/sync/utils/pendingBlocksTree.d.ts +6 -14
  440. package/lib/sync/utils/pendingBlocksTree.js +18 -24
  441. package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
  442. package/lib/util/array.js +3 -7
  443. package/lib/util/array.js.map +1 -1
  444. package/lib/util/asyncIterableToEvents.js +3 -6
  445. package/lib/util/asyncIterableToEvents.js.map +1 -1
  446. package/lib/util/binarySearch.js +0 -2
  447. package/lib/util/binarySearch.js.map +1 -1
  448. package/lib/util/blobs.d.ts +2 -2
  449. package/lib/util/blobs.js +4 -4
  450. package/lib/util/blobs.js.map +1 -1
  451. package/lib/util/bufferPool.js +2 -7
  452. package/lib/util/bufferPool.js.map +1 -1
  453. package/lib/util/clock.d.ts +1 -1
  454. package/lib/util/clock.js +18 -23
  455. package/lib/util/clock.js.map +1 -1
  456. package/lib/util/dataColumns.d.ts +10 -13
  457. package/lib/util/dataColumns.js +132 -90
  458. package/lib/util/dataColumns.js.map +1 -1
  459. package/lib/util/itTrigger.js +4 -4
  460. package/lib/util/itTrigger.js.map +1 -1
  461. package/lib/util/map.js +0 -2
  462. package/lib/util/map.js.map +1 -1
  463. package/lib/util/queue/index.d.ts +1 -1
  464. package/lib/util/queue/index.js +1 -1
  465. package/lib/util/queue/index.js.map +1 -1
  466. package/lib/util/queue/itemQueue.js +49 -52
  467. package/lib/util/queue/itemQueue.js.map +1 -1
  468. package/lib/util/serializedCache.js +3 -1
  469. package/lib/util/serializedCache.js.map +1 -1
  470. package/lib/util/set.js +0 -2
  471. package/lib/util/set.js.map +1 -1
  472. package/lib/util/sszBytes.d.ts +0 -1
  473. package/lib/util/sszBytes.js +1 -1
  474. package/lib/util/sszBytes.js.map +1 -1
  475. package/lib/util/timeSeries.js +1 -3
  476. package/lib/util/timeSeries.js.map +1 -1
  477. package/lib/util/types.d.ts +1 -1
  478. package/lib/util/wrapError.d.ts +0 -7
  479. package/package.json +18 -36
  480. package/lib/bun-wrappers/prometheus-gc-stats.d.ts +0 -2
  481. package/lib/bun-wrappers/prometheus-gc-stats.js +0 -8
  482. package/lib/bun-wrappers/prometheus-gc-stats.js.map +0 -1
  483. package/lib/chain/ColumnReconstructionTracker.d.ts +0 -32
  484. package/lib/chain/ColumnReconstructionTracker.js +0 -71
  485. package/lib/chain/ColumnReconstructionTracker.js.map +0 -1
  486. package/lib/chain/GetBlobsTracker.d.ts +0 -31
  487. package/lib/chain/GetBlobsTracker.js +0 -82
  488. package/lib/chain/GetBlobsTracker.js.map +0 -1
  489. package/lib/sync/types.d.ts +0 -44
  490. package/lib/sync/types.js +0 -34
  491. package/lib/sync/types.js.map +0 -1
  492. package/lib/sync/utils/downloadByRange.d.ts +0 -186
  493. package/lib/sync/utils/downloadByRange.js +0 -457
  494. package/lib/sync/utils/downloadByRange.js.map +0 -1
  495. package/lib/sync/utils/downloadByRoot.d.ts +0 -121
  496. package/lib/sync/utils/downloadByRoot.js +0 -346
  497. package/lib/sync/utils/downloadByRoot.js.map +0 -1
  498. package/lib/util/execution.d.ts +0 -20
  499. package/lib/util/execution.js +0 -165
  500. package/lib/util/execution.js.map +0 -1
@@ -1,20 +1,17 @@
1
1
  import EventEmitter from "node:events";
2
- import { privateKeyToProtobuf } from "@libp2p/crypto/keys";
3
2
  import { ENR, SignableENR } from "@chainsafe/enr";
4
3
  import { Thread, Worker, spawn } from "@chainsafe/threads";
4
+ import { privateKeyToProtobuf } from "@libp2p/crypto/keys";
5
5
  import { chainConfigFromJson, chainConfigToJson } from "@lodestar/config";
6
6
  /**
7
7
  * Wrapper class abstracting the details of discv5 worker instantiation and message-passing
8
8
  */
9
9
  export class Discv5Worker extends EventEmitter {
10
- opts;
11
- workerApi;
12
- subscription;
13
- closed = false;
14
10
  constructor(opts, workerApi) {
15
11
  super();
16
12
  this.opts = opts;
17
13
  this.workerApi = workerApi;
14
+ this.closed = false;
18
15
  this.subscription = workerApi.discovered().subscribe((enrObj) => this.onDiscovered(enrObj));
19
16
  }
20
17
  static async init(opts) {
@@ -30,10 +27,7 @@ export class Discv5Worker extends EventEmitter {
30
27
  loggerOpts: opts.logger.toOpts(),
31
28
  genesisTime: opts.genesisTime,
32
29
  };
33
- const worker = new Worker("./worker.js", {
34
- suppressTranspileTS: Boolean(globalThis.Bun),
35
- workerData,
36
- });
30
+ const worker = new Worker("./worker.js", { workerData });
37
31
  const workerApi = await spawn(worker, {
38
32
  // A Lodestar Node may do very expensive task at start blocking the event loop and causing
39
33
  // the initialization to timeout. The number below is big enough to almost disable the timeout
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/discv5/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAAC,GAAG,EAAW,WAAW,EAAC,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAe,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAkBtF;;GAEG;AACH,MAAM,OAAO,YAAa,SAAS,YAAyE;IAKvF;IACA;IALF,YAAY,CAA4B;IACjD,MAAM,GAAG,KAAK,CAAC;IAEvB,YACmB,IAAgB,EAChB,SAA0B;QAE3C,KAAK,EAAE,CAAC;QAHS,SAAI,GAAJ,IAAI,CAAY;QAChB,cAAS,GAAT,SAAS,CAAiB;QAI3C,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAgB;QAChC,MAAM,UAAU,GAAqB;YACnC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;YACpB,eAAe,EAAE,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC;YACtD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE;YAChC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9B,WAAW,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChE,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB;YACxD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAChC,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,EAAE;YACvC,mBAAmB,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAC5C,UAAU;SACgC,CAAC,CAAC;QAE9C,MAAM,SAAS,GAAG,MAAM,KAAK,CAAkB,MAAM,EAAE;YACrD,0FAA0F;YAC1F,8FAA8F;YAC9F,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;SACvB,CAAC,CAAC;QAEH,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAA8B,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,GAAY;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACvC,OAAO,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,WAAW,CAAC,GAAW,EAAE,KAAiB;QACxC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,OAAe;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,OAAe;QACrD,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAEO,UAAU,CAAC,IAAe;QAChC,MAAM,IAAI,GAAU,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,SAAS,CAAC,GAAY;QAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACvD,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/discv5/index.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
3
  import worker from "node:worker_threads";
4
- import { privateKeyFromProtobuf } from "@libp2p/crypto/keys";
5
- import { peerIdFromPrivateKey } from "@libp2p/peer-id";
6
- import { multiaddr } from "@multiformats/multiaddr";
7
4
  import { Discv5 } from "@chainsafe/discv5";
8
5
  import { SignableENR } from "@chainsafe/enr";
9
6
  import { Observable, Subject } from "@chainsafe/threads/observable";
10
7
  import { expose } from "@chainsafe/threads/worker";
8
+ import { privateKeyFromProtobuf } from "@libp2p/crypto/keys";
9
+ import { peerIdFromPrivateKey } from "@libp2p/peer-id";
11
10
  import { createBeaconConfig } from "@lodestar/config";
12
11
  import { getNodeLogger } from "@lodestar/logger/node";
12
+ import { multiaddr } from "@multiformats/multiaddr";
13
13
  import { RegistryMetricCreator } from "../../metrics/index.js";
14
14
  import { collectNodeJSMetrics } from "../../metrics/nodeJsMetrics.js";
15
15
  import { Clock } from "../../util/clock.js";
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { PeerId, TopicValidatorResult } from "@libp2p/interface";
2
- import { CustodyIndex, Status } from "@lodestar/types";
2
+ import { CustodyIndex, RootHex, Status } from "@lodestar/types";
3
+ import { BlockInput, NullBlockInput } from "../chain/blocks/types.js";
3
4
  import { PeerIdStr } from "../util/peerId.js";
4
5
  import { StrictEventEmitterSingleArg } from "../util/strictEvents.js";
5
6
  import { EventDirection } from "../util/workerEvents.js";
@@ -11,6 +12,9 @@ export declare enum NetworkEvent {
11
12
  /** A peer has been disconnected */
12
13
  peerDisconnected = "peer-manager.peer-disconnected",
13
14
  reqRespRequest = "req-resp.request",
15
+ unknownBlockParent = "unknownBlockParent",
16
+ unknownBlock = "unknownBlock",
17
+ unknownBlockInput = "unknownBlockInput",
14
18
  /** (Network -> App) A gossip message is ready for validation */
15
19
  pendingGossipsubMessage = "gossip.pendingGossipsubMessage",
16
20
  /** (App -> Network) A gossip message has been validated */
@@ -20,7 +24,7 @@ export type NetworkEventData = {
20
24
  [NetworkEvent.peerConnected]: {
21
25
  peer: PeerIdStr;
22
26
  status: Status;
23
- custodyColumns: CustodyIndex[];
27
+ custodyGroups: CustodyIndex[];
24
28
  clientAgent: string;
25
29
  };
26
30
  [NetworkEvent.peerDisconnected]: {
@@ -30,6 +34,18 @@ export type NetworkEventData = {
30
34
  request: RequestTypedContainer;
31
35
  peer: PeerId;
32
36
  };
37
+ [NetworkEvent.unknownBlockParent]: {
38
+ blockInput: BlockInput;
39
+ peer: PeerIdStr;
40
+ };
41
+ [NetworkEvent.unknownBlock]: {
42
+ rootHex: RootHex;
43
+ peer?: PeerIdStr;
44
+ };
45
+ [NetworkEvent.unknownBlockInput]: {
46
+ blockInput: BlockInput | NullBlockInput;
47
+ peer?: PeerIdStr;
48
+ };
33
49
  [NetworkEvent.pendingGossipsubMessage]: PendingGossipsubMessage;
34
50
  [NetworkEvent.gossipMessageValidationResult]: {
35
51
  msgId: string;
@@ -7,6 +7,10 @@ export var NetworkEvent;
7
7
  /** A peer has been disconnected */
8
8
  NetworkEvent["peerDisconnected"] = "peer-manager.peer-disconnected";
9
9
  NetworkEvent["reqRespRequest"] = "req-resp.request";
10
+ // TODO remove this event, this is not a network-level concern, rather a chain / sync concern
11
+ NetworkEvent["unknownBlockParent"] = "unknownBlockParent";
12
+ NetworkEvent["unknownBlock"] = "unknownBlock";
13
+ NetworkEvent["unknownBlockInput"] = "unknownBlockInput";
10
14
  // Network processor events
11
15
  /** (Network -> App) A gossip message is ready for validation */
12
16
  NetworkEvent["pendingGossipsubMessage"] = "gossip.pendingGossipsubMessage";
@@ -17,6 +21,9 @@ export const networkEventDirection = {
17
21
  [NetworkEvent.peerConnected]: EventDirection.workerToMain,
18
22
  [NetworkEvent.peerDisconnected]: EventDirection.workerToMain,
19
23
  [NetworkEvent.reqRespRequest]: EventDirection.none, // Only used internally in NetworkCore
24
+ [NetworkEvent.unknownBlockParent]: EventDirection.workerToMain,
25
+ [NetworkEvent.unknownBlock]: EventDirection.workerToMain,
26
+ [NetworkEvent.unknownBlockInput]: EventDirection.workerToMain,
20
27
  [NetworkEvent.pendingGossipsubMessage]: EventDirection.workerToMain,
21
28
  [NetworkEvent.gossipMessageValidationResult]: EventDirection.mainToWorker,
22
29
  };
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/network/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAKzC,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAIvD,MAAM,CAAN,IAAY,YAYX;AAZD,WAAY,YAAY;IACtB,4DAA4D;IAC5D,6DAA6C,CAAA;IAC7C,mCAAmC;IACnC,mEAAmD,CAAA;IACnD,mDAAmC,CAAA;IAEnC,2BAA2B;IAC3B,gEAAgE;IAChE,0EAA0D,CAAA;IAC1D,2DAA2D;IAC3D,gFAAgE,CAAA;AAClE,CAAC,EAZW,YAAY,KAAZ,YAAY,QAYvB;AAmBD,MAAM,CAAC,MAAM,qBAAqB,GAAyC;IACzE,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,YAAY;IACzD,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC5D,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,sCAAsC;IAC1F,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,cAAc,CAAC,YAAY;IACnE,CAAC,YAAY,CAAC,6BAA6B,CAAC,EAAE,cAAc,CAAC,YAAY;CAC1E,CAAC;AAIF,MAAM,OAAO,eAAgB,SAAS,YAA2C;CAAG"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/network/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAMzC,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAIvD,MAAM,CAAN,IAAY,YAgBX;AAhBD,WAAY,YAAY;IACtB,4DAA4D;IAC5D,6DAA6C,CAAA;IAC7C,mCAAmC;IACnC,mEAAmD,CAAA;IACnD,mDAAmC,CAAA;IACnC,6FAA6F;IAC7F,yDAAyC,CAAA;IACzC,6CAA6B,CAAA;IAC7B,uDAAuC,CAAA;IAEvC,2BAA2B;IAC3B,gEAAgE;IAChE,0EAA0D,CAAA;IAC1D,2DAA2D;IAC3D,gFAAgE,CAAA;AAClE,CAAC,EAhBW,YAAY,KAAZ,YAAY,QAgBvB;AAsBD,MAAM,CAAC,MAAM,qBAAqB,GAAyC;IACzE,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,YAAY;IACzD,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC5D,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,sCAAsC;IAC1F,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC9D,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC,YAAY;IACxD,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,cAAc,CAAC,YAAY;IAC7D,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,cAAc,CAAC,YAAY;IACnE,CAAC,YAAY,CAAC,6BAA6B,CAAC,EAAE,cAAc,CAAC,YAAY;CAC1E,CAAC;AAIF,MAAM,OAAO,eAAgB,SAAS,YAA2C;CAAG"}
@@ -1,6 +1,6 @@
1
- import { Message } from "@libp2p/interface";
2
1
  import { RPC } from "@chainsafe/libp2p-gossipsub/message";
3
2
  import { DataTransform } from "@chainsafe/libp2p-gossipsub/types";
3
+ import { Message } from "@libp2p/interface";
4
4
  import { GossipTopicCache } from "./topic.js";
5
5
  /**
6
6
  * The function used to generate a gossipsub message id
@@ -1,8 +1,8 @@
1
- import { compress, uncompress } from "snappyjs";
2
- import xxhashFactory from "xxhash-wasm";
3
1
  import { digest } from "@chainsafe/as-sha256";
4
2
  import { ForkName } from "@lodestar/params";
5
3
  import { intToBytes } from "@lodestar/utils";
4
+ import { compress, uncompress } from "snappyjs";
5
+ import xxhashFactory from "xxhash-wasm";
6
6
  import { MESSAGE_DOMAIN_VALID_SNAPPY } from "./constants.js";
7
7
  import { getGossipSSZType } from "./topic.js";
8
8
  // Load WASM
@@ -55,8 +55,6 @@ export function msgIdFn(gossipTopicCache, msg) {
55
55
  return digest(Buffer.concat(vec)).subarray(0, 20);
56
56
  }
57
57
  export class DataTransformSnappy {
58
- gossipTopicCache;
59
- maxSizePerMessage;
60
58
  constructor(gossipTopicCache, maxSizePerMessage) {
61
59
  this.gossipTopicCache = gossipTopicCache;
62
60
  this.maxSizePerMessage = maxSizePerMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../../src/network/gossip/encoding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encoding.js","sourceRoot":"","sources":["../../../src/network/gossip/encoding.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  export class GossipValidationError extends Error {
2
- code;
3
2
  constructor(code, message) {
4
3
  super(message);
5
4
  this.code = code;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/network/gossip/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,IAAI,CAAS;IACb,YAAY,IAAY,EAAE,OAAgB;QACxC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/network/gossip/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAE9C,YAAY,IAAY,EAAE,OAAgB;QACxC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
@@ -4,9 +4,9 @@ import { Logger } from "@lodestar/utils";
4
4
  import { RegistryMetricCreator } from "../../metrics/index.js";
5
5
  import { NetworkEventBus } from "../events.js";
6
6
  import { Libp2p } from "../interface.js";
7
- import { NetworkConfig } from "../networkConfig.js";
8
7
  import { PeersData } from "../peers/peersData.js";
9
8
  import { GossipTopic } from "./interface.js";
9
+ import { NetworkConfig } from "../networkConfig.js";
10
10
  export type Eth2Context = {
11
11
  activeValidatorCount: number;
12
12
  currentSlot: number;
@@ -31,7 +31,6 @@ export type Eth2GossipsubOpts = {
31
31
  skipParamsLog?: boolean;
32
32
  disableLightClientServer?: boolean;
33
33
  };
34
- export type ForkBoundaryLabel = string;
35
34
  /**
36
35
  * Wrapper around js-libp2p-gossipsub with the following extensions:
37
36
  * - Eth2 message id
@@ -9,8 +9,8 @@ import { ClientKind } from "../peers/client.js";
9
9
  import { DataTransformSnappy, fastMsgIdFn, msgIdFn, msgIdToStrFn } from "./encoding.js";
10
10
  import { GossipType } from "./interface.js";
11
11
  import { createEth2GossipsubMetrics } from "./metrics.js";
12
- import { GOSSIP_D, GOSSIP_D_HIGH, GOSSIP_D_LOW, computeGossipPeerScoreParams, gossipScoreThresholds, } from "./scoringParameters.js";
13
12
  import { GossipTopicCache, getCoreTopicsAtFork, stringifyGossipTopic } from "./topic.js";
13
+ import { GOSSIP_D, GOSSIP_D_HIGH, GOSSIP_D_LOW, computeGossipPeerScoreParams, gossipScoreThresholds, } from "./scoringParameters.js";
14
14
  /** As specified in https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md */
15
15
  const GOSSIPSUB_HEARTBEAT_INTERVAL = 0.7 * 1000;
16
16
  const MAX_OUTBOUND_BUFFER_SIZE = 2 ** 24; // 16MB
@@ -28,13 +28,6 @@ const MAX_OUTBOUND_BUFFER_SIZE = 2 ** 24; // 16MB
28
28
  * See https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md#the-gossip-domain-gossipsub
29
29
  */
30
30
  export class Eth2Gossipsub extends GossipSub {
31
- scoreParams;
32
- config;
33
- logger;
34
- peersData;
35
- events;
36
- // Internal caches
37
- gossipTopicCache;
38
31
  constructor(opts, modules) {
39
32
  const { allowPublishToZeroPeers, gossipsubD, gossipsubDLow, gossipsubDHigh } = opts;
40
33
  const { networkConfig, logger, metricsRegister, peersData, events } = modules;
@@ -97,7 +90,7 @@ export class Eth2Gossipsub extends GossipSub {
97
90
  this.gossipTopicCache = gossipTopicCache;
98
91
  if (metricsRegister) {
99
92
  const metrics = createEth2GossipsubMetrics(metricsRegister);
100
- metrics.gossipMesh.peersByType.addCollect(() => this.onScrapeLodestarMetrics(metrics, networkConfig));
93
+ metrics.gossipMesh.peersByType.addCollect(() => this.onScrapeLodestarMetrics(metrics));
101
94
  }
102
95
  this.addEventListener("gossipsub:message", this.onGossipsubMessage.bind(this));
103
96
  this.events.on(NetworkEvent.gossipMessageValidationResult, this.onValidationResult.bind(this));
@@ -125,7 +118,7 @@ export class Eth2Gossipsub extends GossipSub {
125
118
  this.logger.verbose("Unsubscribe to gossipsub topic", { topic: topicStr });
126
119
  this.unsubscribe(topicStr);
127
120
  }
128
- onScrapeLodestarMetrics(metrics, networkConfig) {
121
+ onScrapeLodestarMetrics(metrics) {
129
122
  const mesh = this.mesh;
130
123
  // biome-ignore lint/complexity/useLiteralKeys: `topics` is a private attribute
131
124
  const topics = this["topics"];
@@ -138,10 +131,10 @@ export class Eth2Gossipsub extends GossipSub {
138
131
  { peersMap: topics, metricsGossip: metrics.gossipTopic, type: "topics" },
139
132
  ]) {
140
133
  // Pre-aggregate results by fork so we can fill the remaining metrics with 0
141
- const peersByTypeByBoundary = new Map2d();
142
- const peersByBeaconAttSubnetByBoundary = new Map2dArr();
143
- const peersByBeaconSyncSubnetByBoundary = new Map2dArr();
144
- const peersByDataColumnSubnetByBoundary = new Map2dArr();
134
+ const peersByTypeByFork = new Map2d();
135
+ // TODO: This shouldnt be by fork, but by boundary
136
+ const peersByBeaconAttSubnetByFork = new Map2dArr();
137
+ const peersByBeaconSyncSubnetByFork = new Map2dArr();
145
138
  // loop through all mesh entries, count each set size
146
139
  for (const [topicString, peers] of peersMap) {
147
140
  // Ignore topics with 0 peers. May prevent overriding after a fork
@@ -151,18 +144,15 @@ export class Eth2Gossipsub extends GossipSub {
151
144
  // for example in prater: /eth2/82f4a72b/optimistic_light_client_update_v0/ssz_snappy
152
145
  const topic = this.gossipTopicCache.getKnownTopic(topicString);
153
146
  if (topic !== undefined) {
154
- const boundary = getForkBoundaryLabel(topic.boundary);
147
+ const { fork } = topic.boundary;
155
148
  if (topic.type === GossipType.beacon_attestation) {
156
- peersByBeaconAttSubnetByBoundary.set(boundary, topic.subnet, peers.size);
149
+ peersByBeaconAttSubnetByFork.set(fork, topic.subnet, peers.size);
157
150
  }
158
151
  else if (topic.type === GossipType.sync_committee) {
159
- peersByBeaconSyncSubnetByBoundary.set(boundary, topic.subnet, peers.size);
160
- }
161
- else if (topic.type === GossipType.data_column_sidecar) {
162
- peersByDataColumnSubnetByBoundary.set(boundary, topic.subnet, peers.size);
152
+ peersByBeaconSyncSubnetByFork.set(fork, topic.subnet, peers.size);
163
153
  }
164
154
  else {
165
- peersByTypeByBoundary.set(boundary, topic.type, peers.size);
155
+ peersByTypeByFork.set(fork, topic.type, peers.size);
166
156
  }
167
157
  }
168
158
  if (type === "mesh") {
@@ -177,25 +167,20 @@ export class Eth2Gossipsub extends GossipSub {
177
167
  }
178
168
  // beacon attestation mesh gets counted separately so we can track mesh peers by subnet
179
169
  // zero out all gossip type & subnet choices, so the dashboard will register them
180
- for (const [boundary, peersByType] of peersByTypeByBoundary.map) {
170
+ for (const [fork, peersByType] of peersByTypeByFork.map) {
181
171
  for (const type of Object.values(GossipType)) {
182
- metricsGossip.peersByType.set({ boundary, type }, peersByType.get(type) ?? 0);
172
+ metricsGossip.peersByType.set({ fork, type }, peersByType.get(type) ?? 0);
183
173
  }
184
174
  }
185
- for (const [boundary, peersByBeaconAttSubnet] of peersByBeaconAttSubnetByBoundary.map) {
175
+ for (const [fork, peersByBeaconAttSubnet] of peersByBeaconAttSubnetByFork.map) {
186
176
  for (let subnet = 0; subnet < ATTESTATION_SUBNET_COUNT; subnet++) {
187
- metricsGossip.peersByBeaconAttestationSubnet.set({ boundary, subnet: attSubnetLabel(subnet) }, peersByBeaconAttSubnet[subnet] ?? 0);
177
+ metricsGossip.peersByBeaconAttestationSubnet.set({ fork, subnet: attSubnetLabel(subnet) }, peersByBeaconAttSubnet[subnet] ?? 0);
188
178
  }
189
179
  }
190
- for (const [boundary, peersByBeaconSyncSubnet] of peersByBeaconSyncSubnetByBoundary.map) {
180
+ for (const [fork, peersByBeaconSyncSubnet] of peersByBeaconSyncSubnetByFork.map) {
191
181
  for (let subnet = 0; subnet < SYNC_COMMITTEE_SUBNET_COUNT; subnet++) {
192
182
  // SYNC_COMMITTEE_SUBNET_COUNT is < 9, no need to prepend a 0 to the label
193
- metricsGossip.peersBySyncCommitteeSubnet.set({ boundary, subnet }, peersByBeaconSyncSubnet[subnet] ?? 0);
194
- }
195
- }
196
- for (const [boundary, peersByDataColumnSubnet] of peersByDataColumnSubnetByBoundary.map) {
197
- for (const subnet of networkConfig.custodyConfig.sampleGroups) {
198
- metricsGossip.peersByDataColumnSubnet.set({ boundary, subnet }, peersByDataColumnSubnet[subnet] ?? 0);
183
+ metricsGossip.peersBySyncCommitteeSubnet.set({ fork, subnet }, peersByBeaconSyncSubnet[subnet] ?? 0);
199
184
  }
200
185
  }
201
186
  }
@@ -289,15 +274,4 @@ function getMetricsTopicStrToLabel(networkConfig, opts) {
289
274
  }
290
275
  return metricsTopicStrToLabel;
291
276
  }
292
- // Topics of the same ForkBoundary should have the same ForkBoundary object
293
- // we don't want to create a new string for every topic
294
- const boundaryLabelMap = new Map();
295
- function getForkBoundaryLabel(boundary) {
296
- let label = boundaryLabelMap.get(boundary);
297
- if (label === undefined) {
298
- label = `${boundary.fork}_${boundary.epoch}`;
299
- boundaryLabelMap.set(boundary, label);
300
- }
301
- return label;
302
- }
303
277
  //# sourceMappingURL=gossipsub.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gossipsub.js","sourceRoot":"","sources":["../../../src/network/gossip/gossipsub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipsub.js","sourceRoot":"","sources":["../../../src/network/gossip/gossipsub.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export { getGossipHandlers } from "../processor/gossipHandlers.js";
2
1
  export * from "./gossipsub.js";
3
- export * from "./interface.js";
2
+ export { getGossipHandlers } from "../processor/gossipHandlers.js";
4
3
  export { getCoreTopicsAtFork } from "./topic.js";
4
+ export * from "./interface.js";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
- export { getGossipHandlers } from "../processor/gossipHandlers.js";
2
1
  export * from "./gossipsub.js";
3
- export * from "./interface.js";
2
+ export { getGossipHandlers } from "../processor/gossipHandlers.js";
4
3
  export { getCoreTopicsAtFork } from "./topic.js";
4
+ export * from "./interface.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/gossip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AACjE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/gossip/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AAC/C,cAAc,gBAAgB,CAAC"}
@@ -1,9 +1,9 @@
1
- import { Message, TopicValidatorResult } from "@libp2p/interface";
2
- import { Libp2p } from "libp2p";
3
1
  import { PeerIdStr } from "@chainsafe/libp2p-gossipsub/types";
2
+ import { Message, TopicValidatorResult } from "@libp2p/interface";
4
3
  import { BeaconConfig, ForkBoundary } from "@lodestar/config";
5
4
  import { AttesterSlashing, LightClientFinalityUpdate, LightClientOptimisticUpdate, SignedAggregateAndProof, SignedBeaconBlock, SingleAttestation, Slot, SubnetID, altair, capella, deneb, fulu, phase0 } from "@lodestar/types";
6
5
  import { Logger } from "@lodestar/utils";
6
+ import { Libp2p } from "libp2p";
7
7
  import { AttestationError, AttestationErrorType } from "../../chain/errors/attestationError.js";
8
8
  import { GossipActionError } from "../../chain/errors/gossipValidation.js";
9
9
  import { IBeaconChain } from "../../chain/index.js";
@@ -1,6 +1,6 @@
1
+ import { ForkName } from "@lodestar/params";
1
2
  import { SubnetID } from "@lodestar/types";
2
3
  import { RegistryMetricCreator } from "../../metrics/index.js";
3
- import { ForkBoundaryLabel } from "./gossipsub.js";
4
4
  import { GossipType } from "./interface.js";
5
5
  export type Eth2GossipsubMetrics = ReturnType<typeof createEth2GossipsubMetrics>;
6
6
  export declare function createEth2GossipsubMetrics(register: RegistryMetricCreator): {
@@ -16,37 +16,29 @@ export declare function createEth2GossipsubMetrics(register: RegistryMetricCreat
16
16
  gossipMesh: {
17
17
  peersByType: import("@lodestar/utils").GaugeExtra<{
18
18
  type: GossipType;
19
- boundary: ForkBoundaryLabel;
19
+ fork: ForkName;
20
20
  }>;
21
21
  peersByBeaconAttestationSubnet: import("@lodestar/utils").GaugeExtra<{
22
22
  subnet: string;
23
- boundary: ForkBoundaryLabel;
23
+ fork: ForkName;
24
24
  }>;
25
25
  peersBySyncCommitteeSubnet: import("@lodestar/utils").GaugeExtra<{
26
26
  subnet: SubnetID;
27
- boundary: ForkBoundaryLabel;
28
- }>;
29
- peersByDataColumnSubnet: import("@lodestar/utils").GaugeExtra<{
30
- subnet: SubnetID;
31
- boundary: ForkBoundaryLabel;
27
+ fork: ForkName;
32
28
  }>;
33
29
  };
34
30
  gossipTopic: {
35
31
  peersByType: import("@lodestar/utils").GaugeExtra<{
36
32
  type: GossipType;
37
- boundary: ForkBoundaryLabel;
33
+ fork: ForkName;
38
34
  }>;
39
35
  peersByBeaconAttestationSubnet: import("@lodestar/utils").GaugeExtra<{
40
36
  subnet: string;
41
- boundary: ForkBoundaryLabel;
37
+ fork: ForkName;
42
38
  }>;
43
39
  peersBySyncCommitteeSubnet: import("@lodestar/utils").GaugeExtra<{
44
40
  subnet: SubnetID;
45
- boundary: ForkBoundaryLabel;
46
- }>;
47
- peersByDataColumnSubnet: import("@lodestar/utils").GaugeExtra<{
48
- subnet: SubnetID;
49
- boundary: ForkBoundaryLabel;
41
+ fork: ForkName;
50
42
  }>;
51
43
  };
52
44
  };
@@ -20,44 +20,34 @@ export function createEth2GossipsubMetrics(register) {
20
20
  peersByType: register.gauge({
21
21
  name: "lodestar_gossip_mesh_peers_by_type_count",
22
22
  help: "Number of connected mesh peers per gossip type",
23
- labelNames: ["type", "boundary"],
23
+ labelNames: ["type", "fork"],
24
24
  }),
25
25
  peersByBeaconAttestationSubnet: register.gauge({
26
26
  name: "lodestar_gossip_mesh_peers_by_beacon_attestation_subnet_count",
27
27
  help: "Number of connected mesh peers per beacon attestation subnet",
28
- labelNames: ["subnet", "boundary"],
28
+ labelNames: ["subnet", "fork"],
29
29
  }),
30
30
  peersBySyncCommitteeSubnet: register.gauge({
31
31
  name: "lodestar_gossip_mesh_peers_by_sync_committee_subnet_count",
32
32
  help: "Number of connected mesh peers per sync committee subnet",
33
- labelNames: ["subnet", "boundary"],
34
- }),
35
- peersByDataColumnSubnet: register.gauge({
36
- name: "lodestar_gossip_mesh_peers_by_data_column_subnet_count",
37
- help: "Number of connected mesh peers per data column subnet",
38
- labelNames: ["subnet", "boundary"],
33
+ labelNames: ["subnet", "fork"],
39
34
  }),
40
35
  },
41
36
  gossipTopic: {
42
37
  peersByType: register.gauge({
43
38
  name: "lodestar_gossip_topic_peers_by_type_count",
44
39
  help: "Number of connected topic peers per gossip type",
45
- labelNames: ["type", "boundary"],
40
+ labelNames: ["type", "fork"],
46
41
  }),
47
42
  peersByBeaconAttestationSubnet: register.gauge({
48
43
  name: "lodestar_gossip_topic_peers_by_beacon_attestation_subnet_count",
49
44
  help: "Number of connected topic peers per beacon attestation subnet",
50
- labelNames: ["subnet", "boundary"],
45
+ labelNames: ["subnet", "fork"],
51
46
  }),
52
47
  peersBySyncCommitteeSubnet: register.gauge({
53
48
  name: "lodestar_gossip_topic_peers_by_sync_committee_subnet_count",
54
49
  help: "Number of connected topic peers per sync committee subnet",
55
- labelNames: ["subnet", "boundary"],
56
- }),
57
- peersByDataColumnSubnet: register.gauge({
58
- name: "lodestar_gossip_topic_peers_by_data_column_subnet_count",
59
- help: "Number of connected topic peers per data column subnet",
60
- labelNames: ["subnet", "boundary"],
50
+ labelNames: ["subnet", "fork"],
61
51
  }),
62
52
  },
63
53
  };
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/network/gossip/metrics.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,0BAA0B,CAAC,QAA+B;IACxE,OAAO;QACL,UAAU,EAAE;YACV,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAsB;gBACpD,IAAI,EAAE,+CAA+C;gBACrD,IAAI,EAAE,gCAAgC;gBACtC,UAAU,EAAE,CAAC,WAAW,CAAC;aAC1B,CAAC;YACF,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAmB;gBAClD,IAAI,EAAE,4CAA4C;gBAClD,IAAI,EAAE,yCAAyC;gBAC/C,UAAU,EAAE,CAAC,QAAQ,CAAC;aACvB,CAAC;YACF,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC;gBACxB,IAAI,EAAE,mCAAmC;gBACzC,IAAI,EAAE,uCAAuC;aAC9C,CAAC;SACH;QACD,UAAU,EAAE;YACV,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBAC3E,IAAI,EAAE,0CAA0C;gBAChD,IAAI,EAAE,gDAAgD;gBACtD,UAAU,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;aACjC,CAAC;YACF,8BAA8B,EAAE,QAAQ,CAAC,KAAK,CAAgD;gBAC5F,IAAI,EAAE,+DAA+D;gBACrE,IAAI,EAAE,8DAA8D;gBACpE,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;YACF,0BAA0B,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBAC1F,IAAI,EAAE,2DAA2D;gBACjE,IAAI,EAAE,0DAA0D;gBAChE,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;YACF,uBAAuB,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBACvF,IAAI,EAAE,wDAAwD;gBAC9D,IAAI,EAAE,uDAAuD;gBAC7D,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;SACH;QACD,WAAW,EAAE;YACX,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBAC3E,IAAI,EAAE,2CAA2C;gBACjD,IAAI,EAAE,iDAAiD;gBACvD,UAAU,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;aACjC,CAAC;YACF,8BAA8B,EAAE,QAAQ,CAAC,KAAK,CAAgD;gBAC5F,IAAI,EAAE,gEAAgE;gBACtE,IAAI,EAAE,+DAA+D;gBACrE,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;YACF,0BAA0B,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBAC1F,IAAI,EAAE,4DAA4D;gBAClE,IAAI,EAAE,2DAA2D;gBACjE,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;YACF,uBAAuB,EAAE,QAAQ,CAAC,KAAK,CAAkD;gBACvF,IAAI,EAAE,yDAAyD;gBAC/D,IAAI,EAAE,wDAAwD;gBAC9D,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;aACnC,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/network/gossip/metrics.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,0BAA0B,CAAC,QAA+B;IACxE,OAAO;QACL,UAAU,EAAE;YACV,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAsB;gBACpD,IAAI,EAAE,+CAA+C;gBACrD,IAAI,EAAE,gCAAgC;gBACtC,UAAU,EAAE,CAAC,WAAW,CAAC;aAC1B,CAAC;YACF,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAmB;gBAClD,IAAI,EAAE,4CAA4C;gBAClD,IAAI,EAAE,yCAAyC;gBAC/C,UAAU,EAAE,CAAC,QAAQ,CAAC;aACvB,CAAC;YACF,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC;gBACxB,IAAI,EAAE,mCAAmC;gBACzC,IAAI,EAAE,uCAAuC;aAC9C,CAAC;SACH;QACD,UAAU,EAAE;YACV,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAqC;gBAC9D,IAAI,EAAE,0CAA0C;gBAChD,IAAI,EAAE,gDAAgD;gBACtD,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;aAC7B,CAAC;YACF,8BAA8B,EAAE,QAAQ,CAAC,KAAK,CAAmC;gBAC/E,IAAI,EAAE,+DAA+D;gBACrE,IAAI,EAAE,8DAA8D;gBACpE,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC/B,CAAC;YACF,0BAA0B,EAAE,QAAQ,CAAC,KAAK,CAAqC;gBAC7E,IAAI,EAAE,2DAA2D;gBACjE,IAAI,EAAE,0DAA0D;gBAChE,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC/B,CAAC;SACH;QACD,WAAW,EAAE;YACX,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAqC;gBAC9D,IAAI,EAAE,2CAA2C;gBACjD,IAAI,EAAE,iDAAiD;gBACvD,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;aAC7B,CAAC;YACF,8BAA8B,EAAE,QAAQ,CAAC,KAAK,CAAmC;gBAC/E,IAAI,EAAE,gEAAgE;gBACtE,IAAI,EAAE,+DAA+D;gBACrE,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC/B,CAAC;YACF,0BAA0B,EAAE,QAAQ,CAAC,KAAK,CAAqC;gBAC7E,IAAI,EAAE,4DAA4D;gBAClE,IAAI,EAAE,2DAA2D;gBACjE,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC/B,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}