@lodestar/beacon-node 1.51.0-dev.d422f387ac → 1.51.0-dev.dc21d14c20

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 (443) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +19 -61
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/api/impl/beacon/pool/index.d.ts.map +1 -1
  5. package/lib/api/impl/beacon/pool/index.js +17 -0
  6. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  7. package/lib/api/impl/validator/index.d.ts +6 -0
  8. package/lib/api/impl/validator/index.d.ts.map +1 -1
  9. package/lib/api/impl/validator/index.js +38 -25
  10. package/lib/api/impl/validator/index.js.map +1 -1
  11. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  12. package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
  13. package/lib/chain/GetBlobsTracker.js +7 -31
  14. package/lib/chain/GetBlobsTracker.js.map +1 -1
  15. package/lib/chain/blocks/blockInput/blockInput.d.ts +11 -56
  16. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  17. package/lib/chain/blocks/blockInput/blockInput.js +5 -241
  18. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  19. package/lib/chain/blocks/blockInput/errors.d.ts +2 -4
  20. package/lib/chain/blocks/blockInput/errors.d.ts.map +1 -1
  21. package/lib/chain/blocks/blockInput/errors.js.map +1 -1
  22. package/lib/chain/blocks/blockInput/types.d.ts +2 -18
  23. package/lib/chain/blocks/blockInput/types.d.ts.map +1 -1
  24. package/lib/chain/blocks/blockInput/types.js +0 -1
  25. package/lib/chain/blocks/blockInput/types.js.map +1 -1
  26. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  27. package/lib/chain/blocks/importBlock.js +36 -53
  28. package/lib/chain/blocks/importBlock.js.map +1 -1
  29. package/lib/chain/blocks/importExecutionPayload.d.ts +4 -0
  30. package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -1
  31. package/lib/chain/blocks/importExecutionPayload.js +24 -3
  32. package/lib/chain/blocks/importExecutionPayload.js.map +1 -1
  33. package/lib/chain/blocks/index.d.ts.map +1 -1
  34. package/lib/chain/blocks/index.js +2 -2
  35. package/lib/chain/blocks/index.js.map +1 -1
  36. package/lib/chain/blocks/types.d.ts +4 -20
  37. package/lib/chain/blocks/types.d.ts.map +1 -1
  38. package/lib/chain/blocks/types.js +0 -24
  39. package/lib/chain/blocks/types.js.map +1 -1
  40. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  41. package/lib/chain/blocks/verifyBlock.js +17 -6
  42. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  43. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +1 -1
  44. package/lib/chain/blocks/verifyBlocksDataAvailability.js +6 -1
  45. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  46. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  47. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +1 -1
  48. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +7 -3
  49. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  50. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
  51. package/lib/chain/blocks/verifyBlocksSanityChecks.js +4 -0
  52. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  53. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
  54. package/lib/chain/blocks/verifyBlocksSignatures.js +10 -5
  55. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  56. package/lib/chain/blocks/writeBlockInputToDb.d.ts +0 -2
  57. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +1 -1
  58. package/lib/chain/blocks/writeBlockInputToDb.js +6 -24
  59. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  60. package/lib/chain/bls/interface.d.ts +2 -0
  61. package/lib/chain/bls/interface.d.ts.map +1 -1
  62. package/lib/chain/bls/multithread/index.d.ts +1 -1
  63. package/lib/chain/bls/multithread/index.d.ts.map +1 -1
  64. package/lib/chain/bls/multithread/index.js +45 -17
  65. package/lib/chain/bls/multithread/index.js.map +1 -1
  66. package/lib/chain/chain.d.ts +24 -3
  67. package/lib/chain/chain.d.ts.map +1 -1
  68. package/lib/chain/chain.js +120 -39
  69. package/lib/chain/chain.js.map +1 -1
  70. package/lib/chain/emitter.d.ts +7 -7
  71. package/lib/chain/emitter.d.ts.map +1 -1
  72. package/lib/chain/emitter.js +5 -5
  73. package/lib/chain/emitter.js.map +1 -1
  74. package/lib/chain/errors/executionPayloadEnvelope.d.ts +7 -0
  75. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
  76. package/lib/chain/errors/executionPayloadEnvelope.js +1 -0
  77. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
  78. package/lib/chain/errors/index.d.ts +0 -1
  79. package/lib/chain/errors/index.d.ts.map +1 -1
  80. package/lib/chain/errors/index.js +0 -1
  81. package/lib/chain/errors/index.js.map +1 -1
  82. package/lib/chain/forkChoice/index.d.ts +11 -1
  83. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  84. package/lib/chain/forkChoice/index.js +11 -0
  85. package/lib/chain/forkChoice/index.js.map +1 -1
  86. package/lib/chain/forkChoiceExecutionEngine.d.ts +51 -0
  87. package/lib/chain/forkChoiceExecutionEngine.d.ts.map +1 -0
  88. package/lib/chain/forkChoiceExecutionEngine.js +117 -0
  89. package/lib/chain/forkChoiceExecutionEngine.js.map +1 -0
  90. package/lib/chain/interface.d.ts +7 -4
  91. package/lib/chain/interface.d.ts.map +1 -1
  92. package/lib/chain/interface.js.map +1 -1
  93. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +17 -4
  94. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  95. package/lib/chain/opPools/aggregatedAttestationPool.js +177 -37
  96. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  97. package/lib/chain/opPools/index.d.ts +1 -0
  98. package/lib/chain/opPools/index.d.ts.map +1 -1
  99. package/lib/chain/opPools/index.js +1 -0
  100. package/lib/chain/opPools/index.js.map +1 -1
  101. package/lib/chain/opPools/singleAttestationPool.d.ts +77 -0
  102. package/lib/chain/opPools/singleAttestationPool.d.ts.map +1 -0
  103. package/lib/chain/opPools/singleAttestationPool.js +209 -0
  104. package/lib/chain/opPools/singleAttestationPool.js.map +1 -0
  105. package/lib/chain/options.d.ts +5 -2
  106. package/lib/chain/options.d.ts.map +1 -1
  107. package/lib/chain/options.js.map +1 -1
  108. package/lib/chain/produceBlock/produceBlockBody.d.ts +3 -2
  109. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  110. package/lib/chain/produceBlock/produceBlockBody.js +3 -2
  111. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  112. package/lib/chain/proposerTracker.d.ts +31 -0
  113. package/lib/chain/proposerTracker.d.ts.map +1 -0
  114. package/lib/chain/proposerTracker.js +75 -0
  115. package/lib/chain/proposerTracker.js.map +1 -0
  116. package/lib/chain/regen/interface.d.ts +1 -1
  117. package/lib/chain/regen/interface.d.ts.map +1 -1
  118. package/lib/chain/regen/queued.d.ts +1 -1
  119. package/lib/chain/regen/queued.d.ts.map +1 -1
  120. package/lib/chain/regen/queued.js +5 -3
  121. package/lib/chain/regen/queued.js.map +1 -1
  122. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +7 -14
  123. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  124. package/lib/chain/seenCache/seenGossipBlockInput.js +6 -65
  125. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  126. package/lib/chain/validation/executionPayloadEnvelope.d.ts +6 -0
  127. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -1
  128. package/lib/chain/validation/executionPayloadEnvelope.js +53 -0
  129. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
  130. package/lib/chain/validation/syncCommittee.d.ts.map +1 -1
  131. package/lib/chain/validation/syncCommittee.js +16 -10
  132. package/lib/chain/validation/syncCommittee.js.map +1 -1
  133. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +1 -1
  134. package/lib/chain/validation/syncCommitteeContributionAndProof.js +11 -0
  135. package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
  136. package/lib/chain/validatorMonitor.d.ts +1 -2
  137. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  138. package/lib/chain/validatorMonitor.js +0 -3
  139. package/lib/chain/validatorMonitor.js.map +1 -1
  140. package/lib/db/repositories/blobSidecars.d.ts +0 -1
  141. package/lib/db/repositories/blobSidecars.d.ts.map +1 -1
  142. package/lib/db/repositories/blobSidecars.js +0 -1
  143. package/lib/db/repositories/blobSidecars.js.map +1 -1
  144. package/lib/execution/builder/apiClient.d.ts +14 -8
  145. package/lib/execution/builder/apiClient.d.ts.map +1 -1
  146. package/lib/execution/builder/apiClient.js +12 -10
  147. package/lib/execution/builder/apiClient.js.map +1 -1
  148. package/lib/execution/builder/http.d.ts +2 -0
  149. package/lib/execution/builder/http.d.ts.map +1 -1
  150. package/lib/execution/builder/http.js +2 -0
  151. package/lib/execution/builder/http.js.map +1 -1
  152. package/lib/execution/engine/http.d.ts +4 -6
  153. package/lib/execution/engine/http.d.ts.map +1 -1
  154. package/lib/execution/engine/http.js +8 -10
  155. package/lib/execution/engine/http.js.map +1 -1
  156. package/lib/execution/engine/interface.d.ts +17 -5
  157. package/lib/execution/engine/interface.d.ts.map +1 -1
  158. package/lib/execution/engine/interface.js.map +1 -1
  159. package/lib/execution/engine/jsonRpcTransport.d.ts +2 -4
  160. package/lib/execution/engine/jsonRpcTransport.d.ts.map +1 -1
  161. package/lib/execution/engine/jsonRpcTransport.js +2 -12
  162. package/lib/execution/engine/jsonRpcTransport.js.map +1 -1
  163. package/lib/execution/engine/mock.d.ts +0 -1
  164. package/lib/execution/engine/mock.d.ts.map +1 -1
  165. package/lib/execution/engine/mock.js +0 -4
  166. package/lib/execution/engine/mock.js.map +1 -1
  167. package/lib/execution/engine/restTransport.d.ts +2 -4
  168. package/lib/execution/engine/restTransport.d.ts.map +1 -1
  169. package/lib/execution/engine/restTransport.js +1 -15
  170. package/lib/execution/engine/restTransport.js.map +1 -1
  171. package/lib/execution/engine/sszTypes.d.ts +0 -9
  172. package/lib/execution/engine/sszTypes.d.ts.map +1 -1
  173. package/lib/execution/engine/sszTypes.js +0 -5
  174. package/lib/execution/engine/sszTypes.js.map +1 -1
  175. package/lib/execution/engine/transport.d.ts +1 -14
  176. package/lib/execution/engine/transport.d.ts.map +1 -1
  177. package/lib/execution/engine/types.d.ts +0 -8
  178. package/lib/execution/engine/types.d.ts.map +1 -1
  179. package/lib/execution/engine/types.js +0 -8
  180. package/lib/execution/engine/types.js.map +1 -1
  181. package/lib/execution/engine/utils.d.ts.map +1 -1
  182. package/lib/execution/engine/utils.js +3 -2
  183. package/lib/execution/engine/utils.js.map +1 -1
  184. package/lib/index.d.ts +1 -1
  185. package/lib/index.d.ts.map +1 -1
  186. package/lib/index.js +1 -1
  187. package/lib/index.js.map +1 -1
  188. package/lib/metrics/metrics/beacon.d.ts +0 -9
  189. package/lib/metrics/metrics/beacon.d.ts.map +1 -1
  190. package/lib/metrics/metrics/beacon.js +0 -30
  191. package/lib/metrics/metrics/beacon.js.map +1 -1
  192. package/lib/metrics/metrics/lodestar.d.ts +27 -8
  193. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  194. package/lib/metrics/metrics/lodestar.js +74 -18
  195. package/lib/metrics/metrics/lodestar.js.map +1 -1
  196. package/lib/metrics/server/http.js +5 -5
  197. package/lib/metrics/server/http.js.map +1 -1
  198. package/lib/network/core/networkCore.d.ts +2 -1
  199. package/lib/network/core/networkCore.d.ts.map +1 -1
  200. package/lib/network/core/networkCore.js +4 -0
  201. package/lib/network/core/networkCore.js.map +1 -1
  202. package/lib/network/core/networkCoreWorker.js +1 -0
  203. package/lib/network/core/networkCoreWorker.js.map +1 -1
  204. package/lib/network/core/networkCoreWorkerHandler.d.ts +2 -1
  205. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +1 -1
  206. package/lib/network/core/networkCoreWorkerHandler.js +3 -0
  207. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  208. package/lib/network/core/types.d.ts +4 -1
  209. package/lib/network/core/types.d.ts.map +1 -1
  210. package/lib/network/gossip/gossipsub.d.ts +1 -0
  211. package/lib/network/gossip/gossipsub.d.ts.map +1 -1
  212. package/lib/network/gossip/gossipsub.js +10 -0
  213. package/lib/network/gossip/gossipsub.js.map +1 -1
  214. package/lib/network/gossip/interface.d.ts +1 -8
  215. package/lib/network/gossip/interface.d.ts.map +1 -1
  216. package/lib/network/gossip/interface.js +0 -1
  217. package/lib/network/gossip/interface.js.map +1 -1
  218. package/lib/network/gossip/topic.d.ts +0 -16
  219. package/lib/network/gossip/topic.d.ts.map +1 -1
  220. package/lib/network/gossip/topic.js +0 -23
  221. package/lib/network/gossip/topic.js.map +1 -1
  222. package/lib/network/interface.d.ts +2 -5
  223. package/lib/network/interface.d.ts.map +1 -1
  224. package/lib/network/network.d.ts +6 -7
  225. package/lib/network/network.d.ts.map +1 -1
  226. package/lib/network/network.js +50 -37
  227. package/lib/network/network.js.map +1 -1
  228. package/lib/network/options.d.ts.map +1 -1
  229. package/lib/network/options.js +2 -0
  230. package/lib/network/options.js.map +1 -1
  231. package/lib/network/peers/peerManager.d.ts.map +1 -1
  232. package/lib/network/peers/peerManager.js +28 -1
  233. package/lib/network/peers/peerManager.js.map +1 -1
  234. package/lib/network/peers/utils/prioritizePeers.d.ts +4 -1
  235. package/lib/network/peers/utils/prioritizePeers.d.ts.map +1 -1
  236. package/lib/network/peers/utils/prioritizePeers.js +8 -16
  237. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  238. package/lib/network/peers/utils/subnetMap.d.ts +5 -2
  239. package/lib/network/peers/utils/subnetMap.d.ts.map +1 -1
  240. package/lib/network/peers/utils/subnetMap.js +6 -3
  241. package/lib/network/peers/utils/subnetMap.js.map +1 -1
  242. package/lib/network/processor/extractSlotRootFns.d.ts.map +1 -1
  243. package/lib/network/processor/extractSlotRootFns.js +1 -8
  244. package/lib/network/processor/extractSlotRootFns.js.map +1 -1
  245. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  246. package/lib/network/processor/gossipHandlers.js +43 -123
  247. package/lib/network/processor/gossipHandlers.js.map +1 -1
  248. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  249. package/lib/network/processor/gossipQueues/index.js +0 -6
  250. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  251. package/lib/network/processor/gossipValidatorFn.d.ts.map +1 -1
  252. package/lib/network/processor/gossipValidatorFn.js +1 -5
  253. package/lib/network/processor/gossipValidatorFn.js.map +1 -1
  254. package/lib/network/processor/index.d.ts +6 -0
  255. package/lib/network/processor/index.d.ts.map +1 -1
  256. package/lib/network/processor/index.js +29 -4
  257. package/lib/network/processor/index.js.map +1 -1
  258. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +1 -1
  259. package/lib/network/reqresp/ReqRespBeaconNode.js +0 -3
  260. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  261. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts +2 -2
  262. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
  263. package/lib/network/reqresp/handlers/index.d.ts.map +1 -1
  264. package/lib/network/reqresp/handlers/index.js +1 -12
  265. package/lib/network/reqresp/handlers/index.js.map +1 -1
  266. package/lib/network/reqresp/protocols.d.ts +0 -2
  267. package/lib/network/reqresp/protocols.d.ts.map +1 -1
  268. package/lib/network/reqresp/protocols.js +0 -10
  269. package/lib/network/reqresp/protocols.js.map +1 -1
  270. package/lib/network/reqresp/rateLimit.d.ts.map +1 -1
  271. package/lib/network/reqresp/rateLimit.js +1 -17
  272. package/lib/network/reqresp/rateLimit.js.map +1 -1
  273. package/lib/network/reqresp/types.d.ts +2 -8
  274. package/lib/network/reqresp/types.d.ts.map +1 -1
  275. package/lib/network/reqresp/types.js +1 -7
  276. package/lib/network/reqresp/types.js.map +1 -1
  277. package/lib/network/subnets/attnetsService.d.ts +35 -5
  278. package/lib/network/subnets/attnetsService.d.ts.map +1 -1
  279. package/lib/network/subnets/attnetsService.js +84 -6
  280. package/lib/network/subnets/attnetsService.js.map +1 -1
  281. package/lib/network/subnets/interface.d.ts +7 -0
  282. package/lib/network/subnets/interface.d.ts.map +1 -1
  283. package/lib/network/subnets/interface.js.map +1 -1
  284. package/lib/node/nodejs.d.ts +2 -0
  285. package/lib/node/nodejs.d.ts.map +1 -1
  286. package/lib/node/nodejs.js +37 -19
  287. package/lib/node/nodejs.js.map +1 -1
  288. package/lib/node/options.d.ts +3 -1
  289. package/lib/node/options.d.ts.map +1 -1
  290. package/lib/node/options.js +4 -2
  291. package/lib/node/options.js.map +1 -1
  292. package/lib/sync/range/batch.d.ts +2 -3
  293. package/lib/sync/range/batch.d.ts.map +1 -1
  294. package/lib/sync/range/batch.js +9 -22
  295. package/lib/sync/range/batch.js.map +1 -1
  296. package/lib/sync/range/chain.d.ts.map +1 -1
  297. package/lib/sync/range/chain.js +2 -15
  298. package/lib/sync/range/chain.js.map +1 -1
  299. package/lib/sync/sync.d.ts +8 -0
  300. package/lib/sync/sync.d.ts.map +1 -1
  301. package/lib/sync/sync.js +42 -22
  302. package/lib/sync/sync.js.map +1 -1
  303. package/lib/sync/unknownBlock.d.ts.map +1 -1
  304. package/lib/sync/unknownBlock.js +1 -7
  305. package/lib/sync/unknownBlock.js.map +1 -1
  306. package/lib/sync/utils/downloadByRange.d.ts +6 -34
  307. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  308. package/lib/sync/utils/downloadByRange.js +24 -128
  309. package/lib/sync/utils/downloadByRange.js.map +1 -1
  310. package/lib/sync/utils/downloadByRoot.d.ts +2 -18
  311. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  312. package/lib/sync/utils/downloadByRoot.js +14 -99
  313. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  314. package/lib/util/blobs.d.ts +1 -7
  315. package/lib/util/blobs.d.ts.map +1 -1
  316. package/lib/util/blobs.js +0 -19
  317. package/lib/util/blobs.js.map +1 -1
  318. package/lib/util/execution.d.ts +3 -4
  319. package/lib/util/execution.d.ts.map +1 -1
  320. package/lib/util/execution.js +1 -73
  321. package/lib/util/execution.js.map +1 -1
  322. package/lib/util/sszBytes.d.ts +5 -1
  323. package/lib/util/sszBytes.d.ts.map +1 -1
  324. package/lib/util/sszBytes.js +34 -17
  325. package/lib/util/sszBytes.js.map +1 -1
  326. package/lib/util/types.d.ts +0 -5
  327. package/lib/util/types.d.ts.map +1 -1
  328. package/lib/util/types.js +1 -2
  329. package/lib/util/types.js.map +1 -1
  330. package/package.json +16 -16
  331. package/src/api/impl/beacon/blocks/index.ts +24 -64
  332. package/src/api/impl/beacon/pool/index.ts +26 -0
  333. package/src/api/impl/validator/index.ts +43 -29
  334. package/src/chain/GetBlobsTracker.ts +10 -39
  335. package/src/chain/blocks/blockInput/blockInput.ts +11 -343
  336. package/src/chain/blocks/blockInput/errors.ts +1 -2
  337. package/src/chain/blocks/blockInput/types.ts +2 -20
  338. package/src/chain/blocks/importBlock.ts +56 -72
  339. package/src/chain/blocks/importExecutionPayload.ts +42 -13
  340. package/src/chain/blocks/index.ts +5 -2
  341. package/src/chain/blocks/types.ts +5 -31
  342. package/src/chain/blocks/verifyBlock.ts +30 -16
  343. package/src/chain/blocks/verifyBlocksDataAvailability.ts +6 -1
  344. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +9 -6
  345. package/src/chain/blocks/verifyBlocksSanityChecks.ts +4 -1
  346. package/src/chain/blocks/verifyBlocksSignatures.ts +10 -5
  347. package/src/chain/blocks/writeBlockInputToDb.ts +6 -29
  348. package/src/chain/bls/interface.ts +2 -0
  349. package/src/chain/bls/multithread/index.ts +43 -19
  350. package/src/chain/chain.ts +135 -37
  351. package/src/chain/emitter.ts +8 -8
  352. package/src/chain/errors/executionPayloadEnvelope.ts +8 -0
  353. package/src/chain/errors/index.ts +0 -1
  354. package/src/chain/forkChoice/index.ts +11 -0
  355. package/src/chain/forkChoiceExecutionEngine.ts +183 -0
  356. package/src/chain/interface.ts +7 -3
  357. package/src/chain/opPools/aggregatedAttestationPool.ts +222 -35
  358. package/src/chain/opPools/index.ts +1 -0
  359. package/src/chain/opPools/singleAttestationPool.ts +287 -0
  360. package/src/chain/options.ts +5 -2
  361. package/src/chain/produceBlock/produceBlockBody.ts +7 -3
  362. package/src/chain/proposerTracker.ts +94 -0
  363. package/src/chain/regen/interface.ts +1 -1
  364. package/src/chain/regen/queued.ts +6 -4
  365. package/src/chain/seenCache/seenGossipBlockInput.ts +9 -93
  366. package/src/chain/validation/executionPayloadEnvelope.ts +68 -1
  367. package/src/chain/validation/syncCommittee.ts +31 -15
  368. package/src/chain/validation/syncCommitteeContributionAndProof.ts +13 -0
  369. package/src/chain/validatorMonitor.ts +0 -6
  370. package/src/db/repositories/blobSidecars.ts +0 -1
  371. package/src/execution/builder/apiClient.ts +16 -13
  372. package/src/execution/builder/http.ts +4 -0
  373. package/src/execution/engine/http.ts +19 -42
  374. package/src/execution/engine/interface.ts +18 -9
  375. package/src/execution/engine/jsonRpcTransport.ts +10 -22
  376. package/src/execution/engine/mock.ts +0 -7
  377. package/src/execution/engine/restTransport.ts +3 -22
  378. package/src/execution/engine/sszTypes.ts +0 -9
  379. package/src/execution/engine/transport.ts +8 -17
  380. package/src/execution/engine/types.ts +0 -17
  381. package/src/execution/engine/utils.ts +4 -2
  382. package/src/index.ts +1 -1
  383. package/src/metrics/metrics/beacon.ts +0 -30
  384. package/src/metrics/metrics/lodestar.ts +75 -18
  385. package/src/metrics/server/http.ts +5 -5
  386. package/src/network/core/networkCore.ts +6 -1
  387. package/src/network/core/networkCoreWorker.ts +1 -0
  388. package/src/network/core/networkCoreWorkerHandler.ts +4 -1
  389. package/src/network/core/types.ts +4 -1
  390. package/src/network/gossip/gossipsub.ts +11 -0
  391. package/src/network/gossip/interface.ts +0 -5
  392. package/src/network/gossip/topic.ts +0 -25
  393. package/src/network/interface.ts +0 -5
  394. package/src/network/network.ts +50 -60
  395. package/src/network/options.ts +2 -0
  396. package/src/network/peers/peerManager.ts +27 -2
  397. package/src/network/peers/utils/prioritizePeers.ts +14 -22
  398. package/src/network/peers/utils/subnetMap.ts +6 -3
  399. package/src/network/processor/extractSlotRootFns.ts +0 -9
  400. package/src/network/processor/gossipHandlers.ts +56 -156
  401. package/src/network/processor/gossipQueues/index.ts +0 -6
  402. package/src/network/processor/gossipValidatorFn.ts +0 -5
  403. package/src/network/processor/index.ts +25 -4
  404. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -7
  405. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +2 -2
  406. package/src/network/reqresp/handlers/index.ts +0 -17
  407. package/src/network/reqresp/protocols.ts +0 -12
  408. package/src/network/reqresp/rateLimit.ts +1 -17
  409. package/src/network/reqresp/types.ts +0 -13
  410. package/src/network/subnets/attnetsService.ts +94 -6
  411. package/src/network/subnets/interface.ts +7 -0
  412. package/src/node/nodejs.ts +34 -15
  413. package/src/node/options.ts +5 -1
  414. package/src/sync/range/batch.ts +9 -21
  415. package/src/sync/range/chain.ts +2 -14
  416. package/src/sync/sync.ts +43 -22
  417. package/src/sync/unknownBlock.ts +1 -8
  418. package/src/sync/utils/downloadByRange.ts +31 -230
  419. package/src/sync/utils/downloadByRoot.ts +15 -142
  420. package/src/util/blobs.ts +0 -34
  421. package/src/util/execution.ts +8 -102
  422. package/src/util/sszBytes.ts +40 -22
  423. package/src/util/types.ts +1 -8
  424. package/lib/chain/errors/blobSidecarError.d.ts +0 -108
  425. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  426. package/lib/chain/errors/blobSidecarError.js +0 -38
  427. package/lib/chain/errors/blobSidecarError.js.map +0 -1
  428. package/lib/chain/validation/blobSidecar.d.ts +0 -16
  429. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  430. package/lib/chain/validation/blobSidecar.js +0 -276
  431. package/lib/chain/validation/blobSidecar.js.map +0 -1
  432. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts +0 -9
  433. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  434. package/lib/network/reqresp/handlers/blobSidecarsByRange.js +0 -91
  435. package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +0 -1
  436. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts +0 -5
  437. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  438. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +0 -46
  439. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +0 -1
  440. package/src/chain/errors/blobSidecarError.ts +0 -70
  441. package/src/chain/validation/blobSidecar.ts +0 -357
  442. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -133
  443. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -69
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,QAAQ,EAAiE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACjB,QAAQ,EACR,IAAI,EACJ,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EAGP,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,yBAAyB,EAEzB,yBAAyB,EAEzB,+BAA+B,EAE/B,sCAAsC,EAEvC,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE1D,qGAAqG;AACrG,oBAAY,aAAa;IAEvB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,mBAAmB,2BAA2B;IAC9C,kBAAkB,0BAA0B;IAC5C,kBAAkB,0BAA0B;IAC5C,mBAAmB,2BAA2B;IAC9C,kBAAkB,0BAA0B;IAC5C,yBAAyB,kCAAkC;IAC3D,wBAAwB,iCAAiC;IACzD,+BAA+B,wCAAwC;IACvE,gCAAgC,yCAAyC;IACzE,oBAAoB,2BAA2B;IAC/C,yBAAyB,kCAAkC;IAC3D,yBAAyB,iCAAiC;IAC1D,2BAA2B,mCAAmC;IAC9D,uBAAuB,+BAA+B;CACvD;AAGD,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC/B,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IAClC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAC/B,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,0BAA0B,CAAC;IACvE,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAC9D,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,yBAAyB,CAAC;IACnE,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC,0BAA0B,CAAC;IACtE,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAC9D,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC,gCAAgC,CAAC;IACjF,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC1E,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,sCAAsC,CAAC;IACxF,CAAC,aAAa,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,uCAAuC,CAAC;IAChG,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAC3C,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC,yBAAyB,CAAC;IAC5E,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC;IAChD,CAAC,aAAa,CAAC,2BAA2B,CAAC,EAAE,IAAI,CAAC;IAClD,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,8BAA8B,CAAC;CAC9E,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC/B,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IAClC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEnC,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACvD,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACtD,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACtD,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACvD,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACtD,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,iBAAiB,CAAC;IAC7D,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,iBAAiB,CAAC;IAC5D,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC;IACtF,CAAC,aAAa,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC;IAEvF,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC3D,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,iBAAiB,CAAC;IAC7D,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACrE,CAAC,aAAa,CAAC,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IACzE,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC;CACnE,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,EAAE,CACnC,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,YAAY,KACjB;KACF,CAAC,IAAI,aAAa,GAAG,mBAAmB,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAwB/F,CAAC;AAEH,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAUjF,eAAO,MAAM,uBAAuB,EAAE;KAAE,CAAC,IAAI,aAAa,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;CAqBvG,CAAC;AAgBF,MAAM,MAAM,qBAAqB,GAAG;KACjC,CAAC,IAAI,aAAa,GAAG;QAAC,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAA;KAAC;CAChE,CAAC,aAAa,CAAC,CAAC;AAEjB,oBAAY,OAAO;IACjB,EAAE,IAAI;IACN,EAAE,IAAI;IACN,EAAE,IAAI;CACP;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,eAAe,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,QAAQ,EAAiE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACjB,QAAQ,EACR,IAAI,EACJ,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EAGP,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,yBAAyB,EAEzB,+BAA+B,EAE/B,sCAAsC,EAEvC,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE1D,qGAAqG;AACrG,oBAAY,aAAa;IAEvB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,mBAAmB,2BAA2B;IAC9C,kBAAkB,0BAA0B;IAC5C,kBAAkB,0BAA0B;IAC5C,yBAAyB,kCAAkC;IAC3D,wBAAwB,iCAAiC;IACzD,+BAA+B,wCAAwC;IACvE,gCAAgC,yCAAyC;IACzE,oBAAoB,2BAA2B;IAC/C,yBAAyB,kCAAkC;IAC3D,yBAAyB,iCAAiC;IAC1D,2BAA2B,mCAAmC;IAC9D,uBAAuB,+BAA+B;CACvD;AAGD,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC/B,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IAClC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAC/B,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,0BAA0B,CAAC;IACvE,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAC9D,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,yBAAyB,CAAC;IACnE,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC,gCAAgC,CAAC;IACjF,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC1E,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,sCAAsC,CAAC;IACxF,CAAC,aAAa,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,uCAAuC,CAAC;IAChG,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAC3C,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC,yBAAyB,CAAC;IAC5E,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC;IAChD,CAAC,aAAa,CAAC,2BAA2B,CAAC,EAAE,IAAI,CAAC;IAClD,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,8BAA8B,CAAC;CAC9E,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC/B,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IAClC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEnC,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACvD,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACtD,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACtD,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,iBAAiB,CAAC;IAC7D,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,iBAAiB,CAAC;IAC5D,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC;IACtF,CAAC,aAAa,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC;IAEvF,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC3D,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,iBAAiB,CAAC;IAC7D,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACrE,CAAC,aAAa,CAAC,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IACzE,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC;CACnE,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,EAAE,CACnC,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,YAAY,KACjB;KACF,CAAC,IAAI,aAAa,GAAG,mBAAmB,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAsB/F,CAAC;AAEH,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAUjF,eAAO,MAAM,uBAAuB,EAAE;KAAE,CAAC,IAAI,aAAa,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;CAmBvG,CAAC;AAgBF,MAAM,MAAM,qBAAqB,GAAG;KACjC,CAAC,IAAI,aAAa,GAAG;QAAC,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAA;KAAC;CAChE,CAAC,aAAa,CAAC,CAAC;AAEjB,oBAAY,OAAO;IACjB,EAAE,IAAI;IACN,EAAE,IAAI;IACN,EAAE,IAAI;CACP;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,eAAe,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { isForkPostAltair, isForkPostFulu } from "@lodestar/params";
2
2
  import { ssz, sszTypesFor, } from "@lodestar/types";
3
- import { BeaconBlocksByRootRequestType, BlobSidecarsByRootRequestType, DataColumnSidecarsByRootRequestType, ExecutionPayloadEnvelopesByRootRequestType, } from "../../util/types.js";
3
+ import { BeaconBlocksByRootRequestType, DataColumnSidecarsByRootRequestType, ExecutionPayloadEnvelopesByRootRequestType, } from "../../util/types.js";
4
4
  /** ReqResp protocol names or methods. Each ReqRespMethod can have multiple versions and encodings */
5
5
  export var ReqRespMethod;
6
6
  (function (ReqRespMethod) {
@@ -12,8 +12,6 @@ export var ReqRespMethod;
12
12
  ReqRespMethod["BeaconBlocksByRange"] = "beacon_blocks_by_range";
13
13
  ReqRespMethod["BeaconBlocksByRoot"] = "beacon_blocks_by_root";
14
14
  ReqRespMethod["BeaconBlocksByHead"] = "beacon_blocks_by_head";
15
- ReqRespMethod["BlobSidecarsByRange"] = "blob_sidecars_by_range";
16
- ReqRespMethod["BlobSidecarsByRoot"] = "blob_sidecars_by_root";
17
15
  ReqRespMethod["DataColumnSidecarsByRange"] = "data_column_sidecars_by_range";
18
16
  ReqRespMethod["DataColumnSidecarsByRoot"] = "data_column_sidecars_by_root";
19
17
  ReqRespMethod["ExecutionPayloadEnvelopesByRoot"] = "execution_payload_envelopes_by_root";
@@ -35,8 +33,6 @@ export const requestSszTypeByMethod = (fork, config) => ({
35
33
  [ReqRespMethod.BeaconBlocksByRange]: ssz.phase0.BeaconBlocksByRangeRequest,
36
34
  [ReqRespMethod.BeaconBlocksByRoot]: BeaconBlocksByRootRequestType(fork, config),
37
35
  [ReqRespMethod.BeaconBlocksByHead]: ssz.fulu.BeaconBlocksByHeadRequest,
38
- [ReqRespMethod.BlobSidecarsByRange]: ssz.deneb.BlobSidecarsByRangeRequest,
39
- [ReqRespMethod.BlobSidecarsByRoot]: BlobSidecarsByRootRequestType(fork, config),
40
36
  [ReqRespMethod.DataColumnSidecarsByRange]: ssz.fulu.DataColumnSidecarsByRangeRequest,
41
37
  [ReqRespMethod.DataColumnSidecarsByRoot]: DataColumnSidecarsByRootRequestType(config),
42
38
  [ReqRespMethod.ExecutionPayloadEnvelopesByRoot]: ExecutionPayloadEnvelopesByRootRequestType(config),
@@ -61,8 +57,6 @@ export const responseSszTypeByMethod = {
61
57
  [ReqRespMethod.BeaconBlocksByRange]: blocksResponseType,
62
58
  [ReqRespMethod.BeaconBlocksByRoot]: blocksResponseType,
63
59
  [ReqRespMethod.BeaconBlocksByHead]: (fork) => ssz[fork].SignedBeaconBlock,
64
- [ReqRespMethod.BlobSidecarsByRange]: () => ssz.deneb.BlobSidecar,
65
- [ReqRespMethod.BlobSidecarsByRoot]: () => ssz.deneb.BlobSidecar,
66
60
  [ReqRespMethod.LightClientBootstrap]: (fork) => sszTypesFor(onlyPostAltairFork(fork)).LightClientBootstrap,
67
61
  [ReqRespMethod.LightClientUpdatesByRange]: (fork) => sszTypesFor(onlyPostAltairFork(fork)).LightClientUpdate,
68
62
  [ReqRespMethod.LightClientFinalityUpdate]: (fork) => sszTypesFor(onlyPostAltairFork(fork)).LightClientFinalityUpdate,
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/network/reqresp/types.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,8 @@ import { RequestedSubnet } from "../peers/utils/index.js";
8
8
  import { CommitteeSubscription, GossipSubscriber, IAttnetsService, NodeId, SubnetsServiceOpts } from "./interface.js";
9
9
  export declare enum SubnetSource {
10
10
  committee = "committee",
11
- longLived = "long_lived"
11
+ longLived = "long_lived",
12
+ beforeProposal = "before_proposal"
12
13
  }
13
14
  /**
14
15
  * Manage deleterministic long lived (DLL) subnets and short lived subnets.
@@ -28,7 +29,7 @@ export declare class AttnetsService implements IAttnetsService {
28
29
  /** Committee subnets - PeerManager must find peers for those */
29
30
  private committeeSubnets;
30
31
  /**
31
- * All currently subscribed short-lived subnets, for attestation aggregation
32
+ * All currently subscribed short-lived subnets, for attestation aggregation and before local block proposals
32
33
  * This class will tell gossip to subscribe and un-subscribe
33
34
  * If a value exists for `SubscriptionId` it means that gossip subscription is active in network.gossip
34
35
  */
@@ -40,6 +41,11 @@ export declare class AttnetsService implements IAttnetsService {
40
41
  * Used to determine if we should process an attestation.
41
42
  */
42
43
  private aggregatorSlotSubnet;
44
+ /**
45
+ * Block proposal slots of validators connected to this node.
46
+ * Used to subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots before, see onSlot
47
+ */
48
+ private localProposalSlots;
43
49
  constructor(config: BeaconConfig, clock: IClock, gossip: GossipSubscriber, metadata: MetadataController, logger: Logger, metrics: NetworkCoreMetrics | null, nodeId: NodeId | null, opts: SubnetsServiceOpts);
44
50
  close(): void;
45
51
  /**
@@ -52,6 +58,12 @@ export declare class AttnetsService implements IAttnetsService {
52
58
  * Called from the API when validator is a part of a committee.
53
59
  */
54
60
  addCommitteeSubscriptions(subscriptions: CommitteeSubscription[]): void;
61
+ /**
62
+ * Called from the main thread with upcoming block proposal slots of connected validators.
63
+ * Tracked here, the subscription happens in onSlot like aggregator duties, or right away for a proposal learned
64
+ * after its subscription slot (node restart, newly connected validator)
65
+ */
66
+ addLocalProposalSlots(slots: Slot[]): void;
55
67
  /**
56
68
  * Check if a subscription is still active before handling a gossip object
57
69
  */
@@ -68,12 +80,29 @@ export declare class AttnetsService implements IAttnetsService {
68
80
  unsubscribeSubnetsPrevBoundary(boundary: ForkBoundary): void;
69
81
  /**
70
82
  * Run per slot.
71
- * - Subscribe to gossip subnets 2 slots in advance
83
+ * - Subscribe to gossip subnets 2 slots in advance of aggregator duties
84
+ * - Subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots in advance of local block proposals
72
85
  * - Unsubscribe from expired subnets
73
86
  * - Track time to stable mesh if not yet formed
74
87
  */
75
88
  private onSlot;
76
89
  private onHalfSlot;
90
+ /**
91
+ * Subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots before a block proposal of a connected
92
+ * validator, so that single attestations of those slots can be packed into the block. The subscription expires in
93
+ * the slot before the proposal, see unsubscribeAllSubnetsBeforeProposal
94
+ */
95
+ private subscribeAllSubnetsBeforeProposal;
96
+ private subscribeAllSubnetsUntilProposal;
97
+ /**
98
+ * Unsubscribe from subnets of subscribeAllSubnetsBeforeProposal at half of the slot before the proposal instead of
99
+ * the proposal slot start, so the proposal slot does not carry their traffic. Single attestations are published at
100
+ * 1/3 of the slot so they have arrived by then.
101
+ * Short-lived subscriptions are either aggregator duties or these, an aggregator duty ends in its dutied slot and is
102
+ * kept here (aggregates are due later), it expires at the next slot start in onSlot as before. So only subnets of
103
+ * subscribeAllSubnetsBeforeProposal are unsubscribed here.
104
+ */
105
+ private unsubscribeAllSubnetsBeforeProposal;
77
106
  /**
78
107
  * Track time to form stable mesh if not yet formed
79
108
  */
@@ -85,8 +114,8 @@ export declare class AttnetsService implements IAttnetsService {
85
114
  private onEpoch;
86
115
  private recomputeLongLivedSubnets;
87
116
  /**
88
- * Unsubscribe to a committee subnet from subscribedCommitteeSubnets.
89
- * If a random subnet is present, we do not unsubscribe from it.
117
+ * Unsubscribe from short-lived subnets whose subscription expired.
118
+ * If a long-lived subnet is present, we do not unsubscribe from it.
90
119
  */
91
120
  private unsubscribeExpiredCommitteeSubnets;
92
121
  /**
@@ -94,6 +123,7 @@ export declare class AttnetsService implements IAttnetsService {
94
123
  * @param currentSlot
95
124
  */
96
125
  private pruneExpiredAggregator;
126
+ private pruneExpiredLocalProposals;
97
127
  /** Update ENR */
98
128
  private updateMetadata;
99
129
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"attnetsService.d.ts","sourceRoot":"","sources":["../../../src/network/subnets/attnetsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAQ,IAAI,EAAE,QAAQ,EAAM,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAS,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAa,MAAM,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,oBAAoB,CAAC;AAKtD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAC,eAAe,EAAY,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAC,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAKpH,oBAAY,YAAY;IACtB,SAAS,cAAc;IACvB,SAAS,eAAe;CACzB;AAUD;;;;;GAKG;AACH,qBAAa,cAAe,YAAW,eAAe;IAkBlD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAxBvB,gEAAgE;IAChE,OAAO,CAAC,gBAAgB,CAAmB;IAC3C;;;;OAIG;IACH,OAAO,CAAC,uBAAuB,CAAmB;IAClD,+FAA+F;IAC/F,OAAO,CAAC,sBAAsB,CAAqB;IACnD;;;OAGG;IACH,OAAO,CAAC,oBAAoB,CAAyD;IAErF,YACmB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAAG,IAAI,EAClC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,IAAI,EAAE,kBAAkB,EAgB1C;IAED,KAAK,IAAI,IAAI,CAGZ;IAED;;;;OAIG;IACH,gBAAgB,IAAI,eAAe,EAAE,CAcpC;IAED;;OAEG;IACH,yBAAyB,CAAC,aAAa,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAStE;IAED;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAKnD;IAED;;;QAGI;IACJ,4BAA4B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAQzD;IAED;;;QAGI;IACJ,8BAA8B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAO3D;IAED;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CA6BZ;IAEF,OAAO,CAAC,UAAU,CAIhB;IAEF;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAmC7B;;;OAGG;IACH,OAAO,CAAC,OAAO,CAQb;IAEF,OAAO,CAAC,yBAAyB;IAuCjC;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IAO1C;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAQ9B,iBAAiB;IACjB,OAAO,CAAC,cAAc;IAYtB;;;QAGI;IACJ,OAAO,CAAC,kBAAkB;IAa1B;;;QAGI;IACJ,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,uBAAuB;CAqBhC"}
1
+ {"version":3,"file":"attnetsService.d.ts","sourceRoot":"","sources":["../../../src/network/subnets/attnetsService.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export var SubnetSource;
15
15
  (function (SubnetSource) {
16
16
  SubnetSource["committee"] = "committee";
17
17
  SubnetSource["longLived"] = "long_lived";
18
+ SubnetSource["beforeProposal"] = "before_proposal";
18
19
  })(SubnetSource || (SubnetSource = {}));
19
20
  /**
20
21
  * This value means node is not able to form stable mesh.
@@ -38,7 +39,7 @@ export class AttnetsService {
38
39
  /** Committee subnets - PeerManager must find peers for those */
39
40
  committeeSubnets = new SubnetMap();
40
41
  /**
41
- * All currently subscribed short-lived subnets, for attestation aggregation
42
+ * All currently subscribed short-lived subnets, for attestation aggregation and before local block proposals
42
43
  * This class will tell gossip to subscribe and un-subscribe
43
44
  * If a value exists for `SubscriptionId` it means that gossip subscription is active in network.gossip
44
45
  */
@@ -50,6 +51,11 @@ export class AttnetsService {
50
51
  * Used to determine if we should process an attestation.
51
52
  */
52
53
  aggregatorSlotSubnet = new MapDef(() => new Map());
54
+ /**
55
+ * Block proposal slots of validators connected to this node.
56
+ * Used to subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots before, see onSlot
57
+ */
58
+ localProposalSlots = new Set();
53
59
  constructor(config, clock, gossip, metadata, logger, metrics, nodeId, opts) {
54
60
  this.config = config;
55
61
  this.clock = clock;
@@ -107,6 +113,21 @@ export class AttnetsService {
107
113
  }
108
114
  }
109
115
  }
116
+ /**
117
+ * Called from the main thread with upcoming block proposal slots of connected validators.
118
+ * Tracked here, the subscription happens in onSlot like aggregator duties, or right away for a proposal learned
119
+ * after its subscription slot (node restart, newly connected validator)
120
+ */
121
+ addLocalProposalSlots(slots) {
122
+ const clockSlot = this.clock.currentSlot;
123
+ for (const proposalSlot of slots) {
124
+ this.localProposalSlots.add(proposalSlot);
125
+ // not from the slot before the proposal, its votes are published before a mesh could form
126
+ if (proposalSlot - this.opts.slotsToSubscribeBeforeProposalDuty <= clockSlot && clockSlot < proposalSlot - 1) {
127
+ this.subscribeAllSubnetsUntilProposal(proposalSlot);
128
+ }
129
+ }
130
+ }
110
131
  /**
111
132
  * Check if a subscription is still active before handling a gossip object
112
133
  */
@@ -143,7 +164,8 @@ export class AttnetsService {
143
164
  }
144
165
  /**
145
166
  * Run per slot.
146
- * - Subscribe to gossip subnets 2 slots in advance
167
+ * - Subscribe to gossip subnets 2 slots in advance of aggregator duties
168
+ * - Subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots in advance of local block proposals
147
169
  * - Unsubscribe from expired subnets
148
170
  * - Track time to stable mesh if not yet formed
149
171
  */
@@ -166,18 +188,67 @@ export class AttnetsService {
166
188
  }
167
189
  this.trackTimeToStableMesh(clockSlot, dutiedSlot, dutiedInfo);
168
190
  }
191
+ // Must run before unsubscribeExpiredCommitteeSubnets so that a subnet whose subscription expires in this slot
192
+ // gets its ttl extended instead of being unsubscribed and subscribed again
193
+ this.subscribeAllSubnetsBeforeProposal(clockSlot);
169
194
  this.unsubscribeExpiredCommitteeSubnets(clockSlot);
170
195
  this.pruneExpiredAggregator(clockSlot);
196
+ this.pruneExpiredLocalProposals(clockSlot);
171
197
  }
172
198
  catch (e) {
173
199
  this.logger.error("Error on AttnetsService.onSlot", { slot: clockSlot }, e);
174
200
  }
175
201
  };
176
202
  onHalfSlot = (clockSlot) => {
177
- for (const [dutiedSlot, dutiedInfo] of this.aggregatorSlotSubnet.entries()) {
178
- this.trackTimeToStableMesh(clockSlot, dutiedSlot, dutiedInfo);
203
+ try {
204
+ for (const [dutiedSlot, dutiedInfo] of this.aggregatorSlotSubnet.entries()) {
205
+ this.trackTimeToStableMesh(clockSlot, dutiedSlot, dutiedInfo);
206
+ }
207
+ this.unsubscribeAllSubnetsBeforeProposal(clockSlot);
208
+ }
209
+ catch (e) {
210
+ this.logger.error("Error on AttnetsService.onHalfSlot", { slot: clockSlot }, e);
179
211
  }
180
212
  };
213
+ /**
214
+ * Subscribe to all subnets `slotsToSubscribeBeforeProposalDuty` slots before a block proposal of a connected
215
+ * validator, so that single attestations of those slots can be packed into the block. The subscription expires in
216
+ * the slot before the proposal, see unsubscribeAllSubnetsBeforeProposal
217
+ */
218
+ subscribeAllSubnetsBeforeProposal(clockSlot) {
219
+ for (const proposalSlot of this.localProposalSlots) {
220
+ if (proposalSlot === clockSlot + this.opts.slotsToSubscribeBeforeProposalDuty) {
221
+ this.subscribeAllSubnetsUntilProposal(proposalSlot);
222
+ }
223
+ }
224
+ }
225
+ subscribeAllSubnetsUntilProposal(proposalSlot) {
226
+ if (this.opts.slotsToSubscribeBeforeProposalDuty === 0 || this.opts.subscribeAllSubnets) {
227
+ return;
228
+ }
229
+ const subnets = Array.from({ length: ATTESTATION_SUBNET_COUNT }, (_, subnet) => subnet);
230
+ // Same as aggregator duties: trigger gossip subscription first, then register the subscriptions.
231
+ // Do not add to committeeSubnets: it drives peer discovery, we only use the peers we already have
232
+ this.subscribeToSubnets(subnets, SubnetSource.beforeProposal);
233
+ for (const subnet of subnets) {
234
+ this.shortLivedSubscriptions.request({ subnet, toSlot: proposalSlot - 1 });
235
+ }
236
+ }
237
+ /**
238
+ * Unsubscribe from subnets of subscribeAllSubnetsBeforeProposal at half of the slot before the proposal instead of
239
+ * the proposal slot start, so the proposal slot does not carry their traffic. Single attestations are published at
240
+ * 1/3 of the slot so they have arrived by then.
241
+ * Short-lived subscriptions are either aggregator duties or these, an aggregator duty ends in its dutied slot and is
242
+ * kept here (aggregates are due later), it expires at the next slot start in onSlot as before. So only subnets of
243
+ * subscribeAllSubnetsBeforeProposal are unsubscribed here.
244
+ */
245
+ unsubscribeAllSubnetsBeforeProposal(clockSlot) {
246
+ const aggregatorSubnets = this.aggregatorSlotSubnet.get(clockSlot);
247
+ const expiring = this.shortLivedSubscriptions.getExpired(clockSlot + 1, (subnet) => aggregatorSubnets?.has(subnet) === true);
248
+ if (expiring.length > 0) {
249
+ this.unsubscribeSubnets(expiring, clockSlot + 1, SubnetSource.beforeProposal);
250
+ }
251
+ }
181
252
  /**
182
253
  * Track time to form stable mesh if not yet formed
183
254
  */
@@ -258,8 +329,8 @@ export class AttnetsService {
258
329
  this.updateMetadata();
259
330
  }
260
331
  /**
261
- * Unsubscribe to a committee subnet from subscribedCommitteeSubnets.
262
- * If a random subnet is present, we do not unsubscribe from it.
332
+ * Unsubscribe from short-lived subnets whose subscription expired.
333
+ * If a long-lived subnet is present, we do not unsubscribe from it.
263
334
  */
264
335
  unsubscribeExpiredCommitteeSubnets(slot) {
265
336
  const expired = this.shortLivedSubscriptions.getExpired(slot);
@@ -278,6 +349,13 @@ export class AttnetsService {
278
349
  }
279
350
  }
280
351
  }
352
+ pruneExpiredLocalProposals(currentSlot) {
353
+ for (const proposalSlot of this.localProposalSlots) {
354
+ if (currentSlot > proposalSlot) {
355
+ this.localProposalSlots.delete(proposalSlot);
356
+ }
357
+ }
358
+ }
281
359
  /** Update ENR */
282
360
  updateMetadata() {
283
361
  const subnets = ssz.phase0.AttestationSubnets.defaultValue();
@@ -1 +1 @@
1
- {"version":3,"file":"attnetsService.js","sourceRoot":"","sources":["../../../src/network/subnets/attnetsService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attnetsService.js","sourceRoot":"","sources":["../../../src/network/subnets/attnetsService.ts"],"names":[],"mappings":"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"}
@@ -19,12 +19,19 @@ export type SubnetsService = {
19
19
  };
20
20
  export interface IAttnetsService extends SubnetsService {
21
21
  shouldProcess(subnet: SubnetID, slot: Slot): boolean;
22
+ /** Block proposal slots of validators connected to this node, see `slotsToSubscribeBeforeProposalDuty` */
23
+ addLocalProposalSlots(slots: Slot[]): void;
22
24
  }
23
25
  export type RandBetweenFn = (min: number, max: number) => number;
24
26
  export type ShuffleFn = <T>(arr: T[]) => T[];
25
27
  export type SubnetsServiceOpts = {
26
28
  subscribeAllSubnets?: boolean;
27
29
  slotsToSubscribeBeforeAggregatorDuty: number;
30
+ /**
31
+ * Subscribe to all attestation subnets this many slots before a block proposal of a connected validator, so that
32
+ * its single attestations can be packed into the block. In `[0, SLOTS_PER_EPOCH]`, 0 disables
33
+ */
34
+ slotsToSubscribeBeforeProposalDuty: number;
28
35
  };
29
36
  export type SubnetsServiceTestOpts = {
30
37
  randBetweenFn?: RandBetweenFn;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/network/subnets/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAExE,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,IAAI,IAAI,CAAC;IACd,yBAAyB,CAAC,aAAa,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;IACxE,gBAAgB,IAAI,eAAe,EAAE,CAAC;IACtC,4BAA4B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3D,8BAA8B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9D,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;CACtD;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;AACjE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oCAAoC,EAAE,MAAM,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IAEnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,KAAK,QAAQ,GAAG,MAAM,CAAC;AACvB,KAAK,SAAS,GAAG,MAAM,CAAC;AAExB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IACzC,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3C,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;CACrC,CAAC;AAGF,MAAM,MAAM,MAAM,GAAG,OAAO,CAAC;AAC7B,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAG1E;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAMxD"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/network/subnets/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAExE,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,IAAI,IAAI,CAAC;IACd,yBAAyB,CAAC,aAAa,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;IACxE,gBAAgB,IAAI,eAAe,EAAE,CAAC;IACtC,4BAA4B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3D,8BAA8B,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9D,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACrD,0GAA0G;IAC1G,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;CAC5C;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;AACjE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oCAAoC,EAAE,MAAM,CAAC;IAC7C;;;OAGG;IACH,kCAAkC,EAAE,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IAEnC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,KAAK,QAAQ,GAAG,MAAM,CAAC;AACvB,KAAK,SAAS,GAAG,MAAM,CAAC;AAExB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IACzC,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3C,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;CACrC,CAAC;AAGF,MAAM,MAAM,MAAM,GAAG,OAAO,CAAC;AAC7B,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAG1E;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAMxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/network/subnets/interface.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAiDxC,MAAM,UAAU,2BAA2B,CAAC,UAAsB;IAChE,MAAM,MAAM,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,KAAK,CAAC,8BAA8B,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7D,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/network/subnets/interface.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAwDxC,MAAM,UAAU,2BAA2B,CAAC,UAAsB;IAChE,MAAM,MAAM,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,KAAK,CAAC,8BAA8B,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7D,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;AAC5B,CAAC"}
@@ -72,6 +72,7 @@ export declare class BeaconNode {
72
72
  sync: IBeaconSync;
73
73
  status: BeaconNodeStatus;
74
74
  private controller?;
75
+ private closePromise;
75
76
  constructor({ opts, config, db, metrics, metricsServer, monitoring, validatorMonitor, network, chain, api, restApi, sync, controller, }: BeaconNodeModules);
76
77
  /**
77
78
  * Initialize a beacon node. Initializes and `start`s the varied sub-component services of the
@@ -82,5 +83,6 @@ export declare class BeaconNode {
82
83
  * Stop beacon node and its sub-components.
83
84
  */
84
85
  close(): Promise<void>;
86
+ private closeInternal;
85
87
  }
86
88
  //# sourceMappingURL=nodejs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodejs.d.ts","sourceRoot":"","sources":["../../src/node/nodejs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodejs.d.ts","sourceRoot":"","sources":["../../src/node/nodejs.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { hasher } from "@chainsafe/persistent-merkle-tree";
3
3
  import { init as initNativeMetrics, registerLocalValidator as registerNativeLocalValidator, scrapeMetrics as scrapeNativeMetrics, unregisterLocalValidator as unregisterNativeLocalValidator, } from "@lodestar/native/metrics";
4
4
  import { ZERO_HASH_HEX } from "@lodestar/params";
5
5
  import { computeStartSlotAtEpoch, isStatePostBellatrix, isStatePostGloas, } from "@lodestar/state-transition";
6
- import { sleep, toRootHex } from "@lodestar/utils";
6
+ import { defer, sleep, toRootHex } from "@lodestar/utils";
7
7
  import { BeaconRestApiServer, getApi } from "../api/index.js";
8
8
  import { getDataColumnSidecarsMinEpoch } from "../chain/archiveStore/utils/archiveBlocks.js";
9
9
  import { BeaconChain, initBeaconMetrics } from "../chain/index.js";
@@ -60,6 +60,7 @@ export class BeaconNode {
60
60
  sync;
61
61
  status;
62
62
  controller;
63
+ closePromise;
63
64
  constructor({ opts, config, db, metrics, metricsServer, monitoring, validatorMonitor, network, chain, api, restApi, sync, controller, }) {
64
65
  this.opts = opts;
65
66
  this.config = config;
@@ -178,6 +179,7 @@ export class BeaconNode {
178
179
  : undefined,
179
180
  builderApiClientOpts: {
180
181
  timeout: opts.executionBuilder.timeout,
182
+ bidDeadline: opts.executionBuilder.bidDeadline,
181
183
  // Sent with all builder api requests, unless the node runs in private mode
182
184
  userAgent: opts.executionBuilder.userAgent,
183
185
  },
@@ -264,28 +266,44 @@ export class BeaconNode {
264
266
  /**
265
267
  * Stop beacon node and its sub-components.
266
268
  */
267
- async close() {
268
- if (this.status === BeaconNodeStatus.started) {
269
- this.status = BeaconNodeStatus.closing;
270
- this.sync.close();
271
- if (this.restApi)
272
- await this.restApi.close();
273
- await this.network.close();
274
- if (this.metricsServer)
275
- await this.metricsServer.close();
276
- if (this.monitoring)
277
- await this.monitoring.close();
278
- await this.chain.persistToDisk();
279
- await this.chain.close();
269
+ close() {
270
+ if (this.closePromise !== undefined)
271
+ return this.closePromise;
272
+ const completion = defer();
273
+ this.closePromise = completion.promise;
274
+ this.status = BeaconNodeStatus.closing;
275
+ void this.closeInternal().then(completion.resolve, completion.reject);
276
+ return this.closePromise;
277
+ }
278
+ async closeInternal() {
279
+ const errors = [];
280
+ for (const cleanup of [
281
+ () => this.sync.close(),
282
+ () => this.restApi?.close(),
283
+ () => this.network.close(),
284
+ () => this.metricsServer?.close(),
285
+ () => this.monitoring?.close(),
286
+ () => this.chain.persistToDisk(),
287
+ () => this.chain.close(),
280
288
  // Abort signal last: close() calls above clear intervals/timeouts so no new
281
289
  // operations get scheduled. If we aborted first, a still-pending interval could
282
290
  // fire and schedule a new operation after abort, leaving it stuck and delaying shutdown.
283
- if (this.controller)
284
- this.controller.abort();
285
- await sleep(DELAY_BEFORE_CLOSING_DB_MS);
286
- await this.db.close();
287
- this.status = BeaconNodeStatus.closed;
291
+ () => this.controller?.abort(),
292
+ () => sleep(DELAY_BEFORE_CLOSING_DB_MS),
293
+ () => this.db.close(),
294
+ ]) {
295
+ try {
296
+ await cleanup();
297
+ }
298
+ catch (error) {
299
+ errors.push(error);
300
+ }
288
301
  }
302
+ this.status = BeaconNodeStatus.closed;
303
+ if (errors.length === 1)
304
+ throw errors[0];
305
+ if (errors.length > 1)
306
+ throw new AggregateError(errors, "Beacon node cleanup failed");
289
307
  }
290
308
  }
291
309
  //# sourceMappingURL=nodejs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodejs.js","sourceRoot":"","sources":["../../src/node/nodejs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodejs.js","sourceRoot":"","sources":["../../src/node/nodejs.ts"],"names":[],"mappings":"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"}