@lodestar/beacon-node 1.39.1 → 1.40.0-dev.059f489b0f

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 (509) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +23 -27
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/api/impl/beacon/state/utils.d.ts +2 -7
  5. package/lib/api/impl/beacon/state/utils.d.ts.map +1 -1
  6. package/lib/api/impl/beacon/state/utils.js +0 -12
  7. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  8. package/lib/api/impl/config/constants.d.ts +3 -0
  9. package/lib/api/impl/config/constants.d.ts.map +1 -1
  10. package/lib/api/impl/config/constants.js +5 -1
  11. package/lib/api/impl/config/constants.js.map +1 -1
  12. package/lib/api/impl/debug/index.d.ts +1 -1
  13. package/lib/api/impl/debug/index.d.ts.map +1 -1
  14. package/lib/api/impl/debug/index.js +3 -6
  15. package/lib/api/impl/debug/index.js.map +1 -1
  16. package/lib/api/impl/lodestar/index.d.ts.map +1 -1
  17. package/lib/api/impl/lodestar/index.js +30 -3
  18. package/lib/api/impl/lodestar/index.js.map +1 -1
  19. package/lib/api/impl/proof/index.d.ts.map +1 -1
  20. package/lib/api/impl/proof/index.js +1 -2
  21. package/lib/api/impl/proof/index.js.map +1 -1
  22. package/lib/api/impl/validator/index.d.ts.map +1 -1
  23. package/lib/api/impl/validator/index.js +10 -11
  24. package/lib/api/impl/validator/index.js.map +1 -1
  25. package/lib/api/rest/base.d.ts.map +1 -1
  26. package/lib/api/rest/base.js +2 -2
  27. package/lib/api/rest/base.js.map +1 -1
  28. package/lib/chain/ColumnReconstructionTracker.d.ts +2 -0
  29. package/lib/chain/ColumnReconstructionTracker.d.ts.map +1 -1
  30. package/lib/chain/ColumnReconstructionTracker.js +7 -3
  31. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  32. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +1 -1
  33. package/lib/chain/archiveStore/historicalState/getHistoricalState.js +7 -4
  34. package/lib/chain/archiveStore/historicalState/getHistoricalState.js.map +1 -1
  35. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +1 -1
  36. package/lib/chain/archiveStore/utils/archiveBlocks.js +23 -14
  37. package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
  38. package/lib/chain/blocks/blockInput/blockInput.d.ts +30 -0
  39. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  40. package/lib/chain/blocks/blockInput/blockInput.js +44 -3
  41. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  42. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  43. package/lib/chain/blocks/importBlock.js +15 -10
  44. package/lib/chain/blocks/importBlock.js.map +1 -1
  45. package/lib/chain/blocks/index.d.ts.map +1 -1
  46. package/lib/chain/blocks/index.js +0 -14
  47. package/lib/chain/blocks/index.js.map +1 -1
  48. package/lib/chain/blocks/types.d.ts +0 -2
  49. package/lib/chain/blocks/types.d.ts.map +1 -1
  50. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  51. package/lib/chain/blocks/verifyBlock.js +9 -9
  52. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  53. package/lib/chain/blocks/verifyBlocksSignatures.d.ts +2 -2
  54. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
  55. package/lib/chain/blocks/verifyBlocksSignatures.js +2 -2
  56. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  57. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +1 -1
  58. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js +2 -2
  59. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js.map +1 -1
  60. package/lib/chain/blocks/writeBlockInputToDb.d.ts +1 -4
  61. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +1 -1
  62. package/lib/chain/blocks/writeBlockInputToDb.js +28 -28
  63. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  64. package/lib/chain/bls/multithread/index.d.ts +3 -1
  65. package/lib/chain/bls/multithread/index.d.ts.map +1 -1
  66. package/lib/chain/bls/multithread/index.js +5 -3
  67. package/lib/chain/bls/multithread/index.js.map +1 -1
  68. package/lib/chain/bls/multithread/jobItem.d.ts +2 -2
  69. package/lib/chain/bls/multithread/jobItem.d.ts.map +1 -1
  70. package/lib/chain/bls/multithread/jobItem.js +2 -2
  71. package/lib/chain/bls/multithread/jobItem.js.map +1 -1
  72. package/lib/chain/bls/singleThread.d.ts +4 -2
  73. package/lib/chain/bls/singleThread.d.ts.map +1 -1
  74. package/lib/chain/bls/singleThread.js +4 -2
  75. package/lib/chain/bls/singleThread.js.map +1 -1
  76. package/lib/chain/bls/utils.d.ts +2 -2
  77. package/lib/chain/bls/utils.d.ts.map +1 -1
  78. package/lib/chain/bls/utils.js +9 -6
  79. package/lib/chain/bls/utils.js.map +1 -1
  80. package/lib/chain/chain.d.ts +25 -7
  81. package/lib/chain/chain.d.ts.map +1 -1
  82. package/lib/chain/chain.js +213 -50
  83. package/lib/chain/chain.js.map +1 -1
  84. package/lib/chain/errors/attestationError.d.ts +14 -1
  85. package/lib/chain/errors/attestationError.d.ts.map +1 -1
  86. package/lib/chain/errors/attestationError.js +8 -0
  87. package/lib/chain/errors/attestationError.js.map +1 -1
  88. package/lib/chain/errors/executionPayloadBid.d.ts +48 -0
  89. package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -0
  90. package/lib/chain/errors/executionPayloadBid.js +15 -0
  91. package/lib/chain/errors/executionPayloadBid.js.map +1 -0
  92. package/lib/chain/errors/executionPayloadEnvelope.d.ts +48 -0
  93. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -0
  94. package/lib/chain/errors/executionPayloadEnvelope.js +16 -0
  95. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -0
  96. package/lib/chain/errors/index.d.ts +3 -0
  97. package/lib/chain/errors/index.d.ts.map +1 -1
  98. package/lib/chain/errors/index.js +3 -0
  99. package/lib/chain/errors/index.js.map +1 -1
  100. package/lib/chain/errors/payloadAttestation.d.ts +34 -0
  101. package/lib/chain/errors/payloadAttestation.d.ts.map +1 -0
  102. package/lib/chain/errors/payloadAttestation.js +13 -0
  103. package/lib/chain/errors/payloadAttestation.js.map +1 -0
  104. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  105. package/lib/chain/forkChoice/index.js +18 -0
  106. package/lib/chain/forkChoice/index.js.map +1 -1
  107. package/lib/chain/initState.d.ts +1 -1
  108. package/lib/chain/initState.d.ts.map +1 -1
  109. package/lib/chain/initState.js +7 -5
  110. package/lib/chain/initState.js.map +1 -1
  111. package/lib/chain/interface.d.ts +23 -5
  112. package/lib/chain/interface.d.ts.map +1 -1
  113. package/lib/chain/interface.js.map +1 -1
  114. package/lib/chain/lightClient/index.d.ts.map +1 -1
  115. package/lib/chain/lightClient/index.js +1 -2
  116. package/lib/chain/lightClient/index.js.map +1 -1
  117. package/lib/chain/lightClient/proofs.d.ts.map +1 -1
  118. package/lib/chain/lightClient/proofs.js +0 -2
  119. package/lib/chain/lightClient/proofs.js.map +1 -1
  120. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +5 -9
  121. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  122. package/lib/chain/opPools/aggregatedAttestationPool.js +12 -141
  123. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  124. package/lib/chain/opPools/executionPayloadBidPool.d.ts +21 -0
  125. package/lib/chain/opPools/executionPayloadBidPool.d.ts.map +1 -0
  126. package/lib/chain/opPools/executionPayloadBidPool.js +57 -0
  127. package/lib/chain/opPools/executionPayloadBidPool.js.map +1 -0
  128. package/lib/chain/opPools/index.d.ts +2 -0
  129. package/lib/chain/opPools/index.d.ts.map +1 -1
  130. package/lib/chain/opPools/index.js +2 -0
  131. package/lib/chain/opPools/index.js.map +1 -1
  132. package/lib/chain/opPools/opPool.js +5 -8
  133. package/lib/chain/opPools/opPool.js.map +1 -1
  134. package/lib/chain/opPools/payloadAttestationPool.d.ts +24 -0
  135. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -0
  136. package/lib/chain/opPools/payloadAttestationPool.js +109 -0
  137. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -0
  138. package/lib/chain/options.d.ts +0 -1
  139. package/lib/chain/options.d.ts.map +1 -1
  140. package/lib/chain/options.js +0 -1
  141. package/lib/chain/options.js.map +1 -1
  142. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  143. package/lib/chain/prepareNextSlot.js +9 -10
  144. package/lib/chain/prepareNextSlot.js.map +1 -1
  145. package/lib/chain/produceBlock/produceBlockBody.d.ts +3 -2
  146. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  147. package/lib/chain/produceBlock/produceBlockBody.js +6 -4
  148. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  149. package/lib/chain/regen/interface.d.ts +5 -14
  150. package/lib/chain/regen/interface.d.ts.map +1 -1
  151. package/lib/chain/regen/interface.js +1 -1
  152. package/lib/chain/regen/interface.js.map +1 -1
  153. package/lib/chain/regen/queued.d.ts +6 -10
  154. package/lib/chain/regen/queued.d.ts.map +1 -1
  155. package/lib/chain/regen/queued.js +16 -40
  156. package/lib/chain/regen/queued.js.map +1 -1
  157. package/lib/chain/regen/regen.d.ts +6 -8
  158. package/lib/chain/regen/regen.d.ts.map +1 -1
  159. package/lib/chain/regen/regen.js +20 -34
  160. package/lib/chain/regen/regen.js.map +1 -1
  161. package/lib/chain/seenCache/index.d.ts +3 -1
  162. package/lib/chain/seenCache/index.d.ts.map +1 -1
  163. package/lib/chain/seenCache/index.js +3 -1
  164. package/lib/chain/seenCache/index.js.map +1 -1
  165. package/lib/chain/seenCache/seenAttesters.d.ts +5 -0
  166. package/lib/chain/seenCache/seenAttesters.d.ts.map +1 -1
  167. package/lib/chain/seenCache/seenAttesters.js +5 -0
  168. package/lib/chain/seenCache/seenAttesters.js.map +1 -1
  169. package/lib/chain/seenCache/seenExecutionPayloadBids.d.ts +12 -0
  170. package/lib/chain/seenCache/seenExecutionPayloadBids.d.ts.map +1 -0
  171. package/lib/chain/seenCache/seenExecutionPayloadBids.js +30 -0
  172. package/lib/chain/seenCache/seenExecutionPayloadBids.js.map +1 -0
  173. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts +15 -0
  174. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts.map +1 -0
  175. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js +28 -0
  176. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js.map +1 -0
  177. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  178. package/lib/chain/seenCache/seenGossipBlockInput.js +3 -3
  179. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  180. package/lib/chain/shufflingCache.d.ts +16 -11
  181. package/lib/chain/shufflingCache.d.ts.map +1 -1
  182. package/lib/chain/shufflingCache.js +47 -41
  183. package/lib/chain/shufflingCache.js.map +1 -1
  184. package/lib/chain/stateCache/fifoBlockStateCache.d.ts +1 -2
  185. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +1 -1
  186. package/lib/chain/stateCache/fifoBlockStateCache.js +4 -4
  187. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  188. package/lib/chain/stateCache/index.d.ts +0 -2
  189. package/lib/chain/stateCache/index.d.ts.map +1 -1
  190. package/lib/chain/stateCache/index.js +0 -2
  191. package/lib/chain/stateCache/index.js.map +1 -1
  192. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +7 -7
  193. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
  194. package/lib/chain/stateCache/persistentCheckpointsCache.js +20 -17
  195. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  196. package/lib/chain/stateCache/types.d.ts +5 -6
  197. package/lib/chain/stateCache/types.d.ts.map +1 -1
  198. package/lib/chain/stateCache/types.js.map +1 -1
  199. package/lib/chain/validation/aggregateAndProof.js +35 -14
  200. package/lib/chain/validation/aggregateAndProof.js.map +1 -1
  201. package/lib/chain/validation/attestation.d.ts +2 -2
  202. package/lib/chain/validation/attestation.d.ts.map +1 -1
  203. package/lib/chain/validation/attestation.js +28 -9
  204. package/lib/chain/validation/attestation.js.map +1 -1
  205. package/lib/chain/validation/attesterSlashing.d.ts.map +1 -1
  206. package/lib/chain/validation/attesterSlashing.js +2 -2
  207. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  208. package/lib/chain/validation/blobSidecar.d.ts.map +1 -1
  209. package/lib/chain/validation/blobSidecar.js +5 -5
  210. package/lib/chain/validation/blobSidecar.js.map +1 -1
  211. package/lib/chain/validation/block.d.ts.map +1 -1
  212. package/lib/chain/validation/block.js +8 -6
  213. package/lib/chain/validation/block.js.map +1 -1
  214. package/lib/chain/validation/blsToExecutionChange.d.ts.map +1 -1
  215. package/lib/chain/validation/blsToExecutionChange.js +9 -2
  216. package/lib/chain/validation/blsToExecutionChange.js.map +1 -1
  217. package/lib/chain/validation/dataColumnSidecar.d.ts.map +1 -1
  218. package/lib/chain/validation/dataColumnSidecar.js +5 -5
  219. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  220. package/lib/chain/validation/executionPayloadBid.d.ts +5 -0
  221. package/lib/chain/validation/executionPayloadBid.d.ts.map +1 -0
  222. package/lib/chain/validation/executionPayloadBid.js +104 -0
  223. package/lib/chain/validation/executionPayloadBid.js.map +1 -0
  224. package/lib/chain/validation/executionPayloadEnvelope.d.ts +5 -0
  225. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -0
  226. package/lib/chain/validation/executionPayloadEnvelope.js +89 -0
  227. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -0
  228. package/lib/chain/validation/payloadAttestationMessage.d.ts +9 -0
  229. package/lib/chain/validation/payloadAttestationMessage.d.ts.map +1 -0
  230. package/lib/chain/validation/payloadAttestationMessage.js +72 -0
  231. package/lib/chain/validation/payloadAttestationMessage.js.map +1 -0
  232. package/lib/chain/validation/proposerSlashing.js +3 -2
  233. package/lib/chain/validation/proposerSlashing.js.map +1 -1
  234. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +2 -3
  235. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts.map +1 -1
  236. package/lib/chain/validation/signatureSets/aggregateAndProof.js +8 -3
  237. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  238. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts +2 -2
  239. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +1 -1
  240. package/lib/chain/validation/signatureSets/contributionAndProof.js +3 -3
  241. package/lib/chain/validation/signatureSets/contributionAndProof.js.map +1 -1
  242. package/lib/chain/validation/signatureSets/selectionProof.d.ts +2 -3
  243. package/lib/chain/validation/signatureSets/selectionProof.d.ts.map +1 -1
  244. package/lib/chain/validation/signatureSets/selectionProof.js +8 -3
  245. package/lib/chain/validation/signatureSets/selectionProof.js.map +1 -1
  246. package/lib/chain/validation/signatureSets/syncCommittee.d.ts +2 -2
  247. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +1 -1
  248. package/lib/chain/validation/signatureSets/syncCommittee.js +3 -3
  249. package/lib/chain/validation/signatureSets/syncCommittee.js.map +1 -1
  250. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts +1 -2
  251. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +1 -1
  252. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js +2 -2
  253. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js.map +1 -1
  254. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts +2 -2
  255. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +1 -1
  256. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js +3 -3
  257. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js.map +1 -1
  258. package/lib/chain/validation/syncCommittee.js +1 -1
  259. package/lib/chain/validation/syncCommittee.js.map +1 -1
  260. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +1 -1
  261. package/lib/chain/validation/syncCommitteeContributionAndProof.js +3 -5
  262. package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
  263. package/lib/chain/validation/voluntaryExit.js +1 -1
  264. package/lib/chain/validation/voluntaryExit.js.map +1 -1
  265. package/lib/chain/validatorMonitor.d.ts +2 -0
  266. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  267. package/lib/chain/validatorMonitor.js +49 -7
  268. package/lib/chain/validatorMonitor.js.map +1 -1
  269. package/lib/db/repositories/checkpointState.d.ts +2 -6
  270. package/lib/db/repositories/checkpointState.d.ts.map +1 -1
  271. package/lib/db/repositories/checkpointState.js +3 -16
  272. package/lib/db/repositories/checkpointState.js.map +1 -1
  273. package/lib/db/repositories/stateArchive.d.ts +9 -9
  274. package/lib/db/repositories/stateArchive.d.ts.map +1 -1
  275. package/lib/db/repositories/stateArchive.js +6 -21
  276. package/lib/db/repositories/stateArchive.js.map +1 -1
  277. package/lib/execution/engine/mock.d.ts +9 -6
  278. package/lib/execution/engine/mock.d.ts.map +1 -1
  279. package/lib/execution/engine/mock.js +34 -7
  280. package/lib/execution/engine/mock.js.map +1 -1
  281. package/lib/index.d.ts +1 -1
  282. package/lib/index.d.ts.map +1 -1
  283. package/lib/index.js +1 -1
  284. package/lib/index.js.map +1 -1
  285. package/lib/metrics/metrics/lodestar.d.ts +28 -6
  286. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  287. package/lib/metrics/metrics/lodestar.js +67 -17
  288. package/lib/metrics/metrics/lodestar.js.map +1 -1
  289. package/lib/network/core/networkCore.d.ts +3 -0
  290. package/lib/network/core/networkCore.d.ts.map +1 -1
  291. package/lib/network/core/networkCore.js +9 -0
  292. package/lib/network/core/networkCore.js.map +1 -1
  293. package/lib/network/core/networkCoreWorker.js +3 -0
  294. package/lib/network/core/networkCoreWorker.js.map +1 -1
  295. package/lib/network/core/networkCoreWorkerHandler.d.ts +3 -0
  296. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +1 -1
  297. package/lib/network/core/networkCoreWorkerHandler.js +9 -0
  298. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  299. package/lib/network/core/types.d.ts +3 -0
  300. package/lib/network/core/types.d.ts.map +1 -1
  301. package/lib/network/gossip/gossipsub.d.ts +34 -0
  302. package/lib/network/gossip/gossipsub.d.ts.map +1 -1
  303. package/lib/network/gossip/gossipsub.js +123 -0
  304. package/lib/network/gossip/gossipsub.js.map +1 -1
  305. package/lib/network/gossip/interface.d.ts +20 -2
  306. package/lib/network/gossip/interface.d.ts.map +1 -1
  307. package/lib/network/gossip/interface.js +3 -0
  308. package/lib/network/gossip/interface.js.map +1 -1
  309. package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
  310. package/lib/network/gossip/scoringParameters.js +38 -2
  311. package/lib/network/gossip/scoringParameters.js.map +1 -1
  312. package/lib/network/gossip/topic.d.ts +77 -1
  313. package/lib/network/gossip/topic.d.ts.map +1 -1
  314. package/lib/network/gossip/topic.js +20 -0
  315. package/lib/network/gossip/topic.js.map +1 -1
  316. package/lib/network/network.d.ts +3 -0
  317. package/lib/network/network.d.ts.map +1 -1
  318. package/lib/network/network.js +9 -0
  319. package/lib/network/network.js.map +1 -1
  320. package/lib/network/options.d.ts +6 -0
  321. package/lib/network/options.d.ts.map +1 -1
  322. package/lib/network/options.js.map +1 -1
  323. package/lib/network/peers/peerManager.d.ts.map +1 -1
  324. package/lib/network/peers/peerManager.js +9 -0
  325. package/lib/network/peers/peerManager.js.map +1 -1
  326. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  327. package/lib/network/processor/gossipHandlers.js +35 -4
  328. package/lib/network/processor/gossipHandlers.js.map +1 -1
  329. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  330. package/lib/network/processor/gossipQueues/index.js +16 -0
  331. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  332. package/lib/network/processor/index.d.ts.map +1 -1
  333. package/lib/network/processor/index.js +3 -0
  334. package/lib/network/processor/index.js.map +1 -1
  335. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
  336. package/lib/network/reqresp/handlers/beaconBlocksByRange.js +2 -4
  337. package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
  338. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts +1 -2
  339. package/lib/network/reqresp/handlers/beaconBlocksByRoot.d.ts.map +1 -1
  340. package/lib/network/reqresp/handlers/beaconBlocksByRoot.js +5 -26
  341. package/lib/network/reqresp/handlers/beaconBlocksByRoot.js.map +1 -1
  342. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts +1 -2
  343. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +1 -1
  344. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +5 -7
  345. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +1 -1
  346. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +1 -1
  347. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +1 -2
  348. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -1
  349. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.d.ts.map +1 -1
  350. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js +1 -5
  351. package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
  352. package/lib/network/reqresp/handlers/index.js +2 -2
  353. package/lib/network/reqresp/handlers/index.js.map +1 -1
  354. package/lib/network/reqresp/utils/dataColumnResponseValidation.js +1 -1
  355. package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
  356. package/lib/node/nodejs.d.ts.map +1 -1
  357. package/lib/node/nodejs.js +17 -2
  358. package/lib/node/nodejs.js.map +1 -1
  359. package/lib/sync/backfill/backfill.d.ts.map +1 -1
  360. package/lib/sync/backfill/backfill.js +3 -4
  361. package/lib/sync/backfill/backfill.js.map +1 -1
  362. package/lib/sync/backfill/verify.d.ts +1 -2
  363. package/lib/sync/backfill/verify.d.ts.map +1 -1
  364. package/lib/sync/backfill/verify.js +2 -2
  365. package/lib/sync/backfill/verify.js.map +1 -1
  366. package/lib/sync/range/chain.d.ts.map +1 -1
  367. package/lib/sync/range/chain.js +0 -1
  368. package/lib/sync/range/chain.js.map +1 -1
  369. package/lib/sync/range/range.d.ts.map +1 -1
  370. package/lib/sync/range/range.js +0 -3
  371. package/lib/sync/range/range.js.map +1 -1
  372. package/lib/sync/unknownBlock.d.ts.map +1 -1
  373. package/lib/sync/unknownBlock.js +0 -3
  374. package/lib/sync/unknownBlock.js.map +1 -1
  375. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  376. package/lib/sync/utils/downloadByRange.js +2 -2
  377. package/lib/sync/utils/downloadByRange.js.map +1 -1
  378. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  379. package/lib/sync/utils/downloadByRoot.js +1 -2
  380. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  381. package/lib/util/sszBytes.js +1 -1
  382. package/lib/util/sszBytes.js.map +1 -1
  383. package/package.json +16 -16
  384. package/src/api/impl/beacon/blocks/index.ts +39 -37
  385. package/src/api/impl/beacon/state/utils.ts +2 -22
  386. package/src/api/impl/config/constants.ts +8 -0
  387. package/src/api/impl/debug/index.ts +2 -6
  388. package/src/api/impl/lodestar/index.ts +36 -4
  389. package/src/api/impl/proof/index.ts +1 -2
  390. package/src/api/impl/validator/index.ts +15 -15
  391. package/src/api/rest/base.ts +4 -4
  392. package/src/chain/ColumnReconstructionTracker.ts +8 -4
  393. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +7 -4
  394. package/src/chain/archiveStore/utils/archiveBlocks.ts +25 -14
  395. package/src/chain/blocks/blockInput/blockInput.ts +55 -4
  396. package/src/chain/blocks/importBlock.ts +16 -10
  397. package/src/chain/blocks/index.ts +0 -19
  398. package/src/chain/blocks/types.ts +0 -2
  399. package/src/chain/blocks/verifyBlock.ts +9 -12
  400. package/src/chain/blocks/verifyBlocksSignatures.ts +4 -12
  401. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +2 -2
  402. package/src/chain/blocks/writeBlockInputToDb.ts +33 -30
  403. package/src/chain/bls/multithread/index.ts +7 -4
  404. package/src/chain/bls/multithread/jobItem.ts +7 -3
  405. package/src/chain/bls/singleThread.ts +5 -3
  406. package/src/chain/bls/utils.ts +15 -7
  407. package/src/chain/chain.ts +247 -65
  408. package/src/chain/errors/attestationError.ts +11 -1
  409. package/src/chain/errors/executionPayloadBid.ts +35 -0
  410. package/src/chain/errors/executionPayloadEnvelope.ts +34 -0
  411. package/src/chain/errors/index.ts +3 -0
  412. package/src/chain/errors/payloadAttestation.ts +25 -0
  413. package/src/chain/forkChoice/index.ts +19 -0
  414. package/src/chain/initState.ts +7 -5
  415. package/src/chain/interface.ts +34 -3
  416. package/src/chain/lightClient/index.ts +1 -2
  417. package/src/chain/lightClient/proofs.ts +0 -2
  418. package/src/chain/opPools/aggregatedAttestationPool.ts +19 -191
  419. package/src/chain/opPools/executionPayloadBidPool.ts +77 -0
  420. package/src/chain/opPools/index.ts +2 -0
  421. package/src/chain/opPools/opPool.ts +5 -7
  422. package/src/chain/opPools/payloadAttestationPool.ts +157 -0
  423. package/src/chain/options.ts +0 -2
  424. package/src/chain/prepareNextSlot.ts +8 -12
  425. package/src/chain/produceBlock/produceBlockBody.ts +13 -6
  426. package/src/chain/regen/interface.ts +4 -18
  427. package/src/chain/regen/queued.ts +17 -57
  428. package/src/chain/regen/regen.ts +22 -43
  429. package/src/chain/seenCache/index.ts +3 -1
  430. package/src/chain/seenCache/seenAttesters.ts +5 -0
  431. package/src/chain/seenCache/seenExecutionPayloadBids.ts +35 -0
  432. package/src/chain/seenCache/seenExecutionPayloadEnvelope.ts +34 -0
  433. package/src/chain/seenCache/seenGossipBlockInput.ts +3 -3
  434. package/src/chain/shufflingCache.ts +67 -50
  435. package/src/chain/stateCache/fifoBlockStateCache.ts +4 -5
  436. package/src/chain/stateCache/index.ts +0 -2
  437. package/src/chain/stateCache/persistentCheckpointsCache.ts +23 -27
  438. package/src/chain/stateCache/types.ts +5 -10
  439. package/src/chain/validation/aggregateAndProof.ts +36 -14
  440. package/src/chain/validation/attestation.ts +36 -19
  441. package/src/chain/validation/attesterSlashing.ts +9 -7
  442. package/src/chain/validation/blobSidecar.ts +4 -9
  443. package/src/chain/validation/block.ts +9 -6
  444. package/src/chain/validation/blsToExecutionChange.ts +9 -7
  445. package/src/chain/validation/dataColumnSidecar.ts +4 -9
  446. package/src/chain/validation/executionPayloadBid.ts +141 -0
  447. package/src/chain/validation/executionPayloadEnvelope.ts +122 -0
  448. package/src/chain/validation/payloadAttestationMessage.ts +109 -0
  449. package/src/chain/validation/proposerSlashing.ts +3 -7
  450. package/src/chain/validation/signatureSets/aggregateAndProof.ts +9 -14
  451. package/src/chain/validation/signatureSets/contributionAndProof.ts +2 -4
  452. package/src/chain/validation/signatureSets/selectionProof.ts +9 -9
  453. package/src/chain/validation/signatureSets/syncCommittee.ts +2 -4
  454. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +2 -3
  455. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +2 -4
  456. package/src/chain/validation/syncCommittee.ts +1 -1
  457. package/src/chain/validation/syncCommitteeContributionAndProof.ts +3 -5
  458. package/src/chain/validation/voluntaryExit.ts +1 -1
  459. package/src/chain/validatorMonitor.ts +62 -8
  460. package/src/db/repositories/checkpointState.ts +3 -19
  461. package/src/db/repositories/stateArchive.ts +13 -27
  462. package/src/execution/engine/mock.ts +40 -13
  463. package/src/index.ts +1 -1
  464. package/src/metrics/metrics/lodestar.ts +68 -17
  465. package/src/network/core/networkCore.ts +12 -0
  466. package/src/network/core/networkCoreWorker.ts +3 -0
  467. package/src/network/core/networkCoreWorkerHandler.ts +9 -0
  468. package/src/network/core/types.ts +6 -0
  469. package/src/network/gossip/gossipsub.ts +147 -1
  470. package/src/network/gossip/interface.ts +17 -0
  471. package/src/network/gossip/scoringParameters.ts +44 -2
  472. package/src/network/gossip/topic.ts +21 -0
  473. package/src/network/network.ts +12 -0
  474. package/src/network/options.ts +6 -0
  475. package/src/network/peers/peerManager.ts +11 -0
  476. package/src/network/processor/gossipHandlers.ts +49 -4
  477. package/src/network/processor/gossipQueues/index.ts +16 -0
  478. package/src/network/processor/index.ts +3 -0
  479. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +2 -4
  480. package/src/network/reqresp/handlers/beaconBlocksByRoot.ts +5 -32
  481. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +5 -9
  482. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +5 -2
  483. package/src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts +1 -5
  484. package/src/network/reqresp/handlers/index.ts +2 -2
  485. package/src/network/reqresp/utils/dataColumnResponseValidation.ts +1 -1
  486. package/src/node/nodejs.ts +18 -3
  487. package/src/sync/backfill/backfill.ts +3 -4
  488. package/src/sync/backfill/verify.ts +2 -3
  489. package/src/sync/range/chain.ts +0 -1
  490. package/src/sync/range/range.ts +0 -3
  491. package/src/sync/unknownBlock.ts +0 -3
  492. package/src/sync/utils/downloadByRange.ts +2 -2
  493. package/src/sync/utils/downloadByRoot.ts +1 -2
  494. package/src/util/sszBytes.ts +1 -1
  495. package/lib/chain/stateCache/blockStateCacheImpl.d.ts +0 -55
  496. package/lib/chain/stateCache/blockStateCacheImpl.d.ts.map +0 -1
  497. package/lib/chain/stateCache/blockStateCacheImpl.js +0 -130
  498. package/lib/chain/stateCache/blockStateCacheImpl.js.map +0 -1
  499. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts +0 -61
  500. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts.map +0 -1
  501. package/lib/chain/stateCache/inMemoryCheckpointsCache.js +0 -157
  502. package/lib/chain/stateCache/inMemoryCheckpointsCache.js.map +0 -1
  503. package/lib/util/bytes.d.ts +0 -3
  504. package/lib/util/bytes.d.ts.map +0 -1
  505. package/lib/util/bytes.js +0 -11
  506. package/lib/util/bytes.js.map +0 -1
  507. package/src/chain/stateCache/blockStateCacheImpl.ts +0 -150
  508. package/src/chain/stateCache/inMemoryCheckpointsCache.ts +0 -198
  509. package/src/util/bytes.ts +0 -11
@@ -1,5 +1,5 @@
1
1
  import {PublicKey, asyncAggregateWithRandomness} from "@chainsafe/blst";
2
- import {ISignatureSet, SignatureSetType} from "@lodestar/state-transition";
2
+ import {ISignatureSet, Index2PubkeyCache, SignatureSetType} from "@lodestar/state-transition";
3
3
  import {Metrics} from "../../../metrics/metrics.js";
4
4
  import {LinkedList} from "../../../util/array.js";
5
5
  import {VerifySignatureOpts} from "../interface.js";
@@ -48,14 +48,18 @@ export function jobItemSigSets(job: JobQueueItem): number {
48
48
  * Prepare BlsWorkReq from JobQueueItem
49
49
  * WARNING: May throw with untrusted user input
50
50
  */
51
- export async function jobItemWorkReq(job: JobQueueItem, metrics: Metrics | null): Promise<BlsWorkReq> {
51
+ export async function jobItemWorkReq(
52
+ job: JobQueueItem,
53
+ index2pubkey: Index2PubkeyCache,
54
+ metrics: Metrics | null
55
+ ): Promise<BlsWorkReq> {
52
56
  switch (job.type) {
53
57
  case JobQueueItemType.default:
54
58
  return {
55
59
  opts: job.opts,
56
60
  sets: job.sets.map((set) => ({
57
61
  // this can throw, handled in the consumer code
58
- publicKey: getAggregatedPubkey(set, metrics).toBytes(),
62
+ publicKey: getAggregatedPubkey(set, index2pubkey, metrics).toBytes(),
59
63
  signature: set.signature,
60
64
  message: set.signingRoot,
61
65
  })),
@@ -1,5 +1,5 @@
1
1
  import {PublicKey, Signature, aggregatePublicKeys, aggregateSignatures, verify} from "@chainsafe/blst";
2
- import {ISignatureSet} from "@lodestar/state-transition";
2
+ import {ISignatureSet, Index2PubkeyCache} from "@lodestar/state-transition";
3
3
  import {Metrics} from "../../metrics/index.js";
4
4
  import {IBlsVerifier} from "./interface.js";
5
5
  import {verifySignatureSetsMaybeBatch} from "./maybeBatch.js";
@@ -7,16 +7,18 @@ import {getAggregatedPubkey, getAggregatedPubkeysCount} from "./utils.js";
7
7
 
8
8
  export class BlsSingleThreadVerifier implements IBlsVerifier {
9
9
  private readonly metrics: Metrics | null;
10
+ private readonly index2pubkey: Index2PubkeyCache;
10
11
 
11
- constructor({metrics = null}: {metrics: Metrics | null}) {
12
+ constructor({metrics = null, index2pubkey}: {metrics: Metrics | null; index2pubkey: Index2PubkeyCache}) {
12
13
  this.metrics = metrics;
14
+ this.index2pubkey = index2pubkey;
13
15
  }
14
16
 
15
17
  async verifySignatureSets(sets: ISignatureSet[]): Promise<boolean> {
16
18
  this.metrics?.bls.aggregatedPubkeys.inc(getAggregatedPubkeysCount(sets));
17
19
 
18
20
  const setsAggregated = sets.map((set) => ({
19
- publicKey: getAggregatedPubkey(set),
21
+ publicKey: getAggregatedPubkey(set, this.index2pubkey, this.metrics),
20
22
  message: set.signingRoot,
21
23
  signature: set.signature,
22
24
  }));
@@ -1,17 +1,25 @@
1
1
  import {PublicKey, aggregatePublicKeys} from "@chainsafe/blst";
2
- import {ISignatureSet, SignatureSetType} from "@lodestar/state-transition";
2
+ import {ISignatureSet, Index2PubkeyCache, SignatureSetType} from "@lodestar/state-transition";
3
3
  import {Metrics} from "../../metrics/metrics.js";
4
4
 
5
- export function getAggregatedPubkey(signatureSet: ISignatureSet, metrics: Metrics | null = null): PublicKey {
5
+ export function getAggregatedPubkey(
6
+ signatureSet: ISignatureSet,
7
+ index2pubkey: Index2PubkeyCache,
8
+ metrics: Metrics | null = null
9
+ ): PublicKey {
6
10
  switch (signatureSet.type) {
7
11
  case SignatureSetType.single:
8
12
  return signatureSet.pubkey;
9
13
 
14
+ case SignatureSetType.indexed:
15
+ return index2pubkey[signatureSet.index];
16
+
10
17
  case SignatureSetType.aggregate: {
11
18
  const timer = metrics?.blsThreadPool.pubkeysAggregationMainThreadDuration.startTimer();
12
- const pubkeys = aggregatePublicKeys(signatureSet.pubkeys);
19
+ const pubkeys = signatureSet.indices.map((i) => index2pubkey[i]);
20
+ const aggregated = aggregatePublicKeys(pubkeys);
13
21
  timer?.();
14
- return pubkeys;
22
+ return aggregated;
15
23
  }
16
24
 
17
25
  default:
@@ -20,11 +28,11 @@ export function getAggregatedPubkey(signatureSet: ISignatureSet, metrics: Metric
20
28
  }
21
29
 
22
30
  export function getAggregatedPubkeysCount(signatureSets: ISignatureSet[]): number {
23
- let pubkeysConut = 0;
31
+ let pubkeysCount = 0;
24
32
  for (const set of signatureSets) {
25
33
  if (set.type === SignatureSetType.aggregate) {
26
- pubkeysConut += set.pubkeys.length;
34
+ pubkeysCount += set.indices.length;
27
35
  }
28
36
  }
29
- return pubkeysConut;
37
+ return pubkeysCount;
30
38
  }