@lodestar/beacon-node 1.51.0-dev.b41e3a7363 → 1.51.0-dev.b74e8e576d

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 (523) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +26 -67
  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 +22 -2
  6. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  7. package/lib/api/impl/beacon/state/utils.d.ts +1 -1
  8. package/lib/api/impl/beacon/state/utils.d.ts.map +1 -1
  9. package/lib/api/impl/validator/index.d.ts +6 -0
  10. package/lib/api/impl/validator/index.d.ts.map +1 -1
  11. package/lib/api/impl/validator/index.js +38 -25
  12. package/lib/api/impl/validator/index.js.map +1 -1
  13. package/lib/chain/GetBlobsTracker.d.ts +2 -2
  14. package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
  15. package/lib/chain/GetBlobsTracker.js +11 -33
  16. package/lib/chain/GetBlobsTracker.js.map +1 -1
  17. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  18. package/lib/chain/archiveStore/archiveStore.js +1 -0
  19. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  20. package/lib/chain/blocks/blockInput/blockInput.d.ts +11 -56
  21. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  22. package/lib/chain/blocks/blockInput/blockInput.js +5 -241
  23. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  24. package/lib/chain/blocks/blockInput/errors.d.ts +2 -4
  25. package/lib/chain/blocks/blockInput/errors.d.ts.map +1 -1
  26. package/lib/chain/blocks/blockInput/errors.js.map +1 -1
  27. package/lib/chain/blocks/blockInput/types.d.ts +2 -18
  28. package/lib/chain/blocks/blockInput/types.d.ts.map +1 -1
  29. package/lib/chain/blocks/blockInput/types.js +0 -1
  30. package/lib/chain/blocks/blockInput/types.js.map +1 -1
  31. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  32. package/lib/chain/blocks/importBlock.js +36 -53
  33. package/lib/chain/blocks/importBlock.js.map +1 -1
  34. package/lib/chain/blocks/importExecutionPayload.d.ts +6 -10
  35. package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -1
  36. package/lib/chain/blocks/importExecutionPayload.js +26 -17
  37. package/lib/chain/blocks/importExecutionPayload.js.map +1 -1
  38. package/lib/chain/blocks/index.d.ts.map +1 -1
  39. package/lib/chain/blocks/index.js +2 -2
  40. package/lib/chain/blocks/index.js.map +1 -1
  41. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts +10 -7
  42. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts.map +1 -1
  43. package/lib/chain/blocks/payloadEnvelopeProcessor.js +22 -17
  44. package/lib/chain/blocks/payloadEnvelopeProcessor.js.map +1 -1
  45. package/lib/chain/blocks/types.d.ts +4 -20
  46. package/lib/chain/blocks/types.d.ts.map +1 -1
  47. package/lib/chain/blocks/types.js +0 -24
  48. package/lib/chain/blocks/types.js.map +1 -1
  49. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  50. package/lib/chain/blocks/verifyBlock.js +17 -6
  51. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  52. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +1 -1
  53. package/lib/chain/blocks/verifyBlocksDataAvailability.js +6 -1
  54. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  55. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +1 -1
  56. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +1 -1
  57. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +7 -3
  58. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  59. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
  60. package/lib/chain/blocks/verifyBlocksSanityChecks.js +4 -0
  61. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  62. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
  63. package/lib/chain/blocks/verifyBlocksSignatures.js +7 -5
  64. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  65. package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts.map +1 -1
  66. package/lib/chain/blocks/verifyPayloadsDataAvailability.js +1 -3
  67. package/lib/chain/blocks/verifyPayloadsDataAvailability.js.map +1 -1
  68. package/lib/chain/blocks/writeBlockInputToDb.d.ts +0 -2
  69. package/lib/chain/blocks/writeBlockInputToDb.d.ts.map +1 -1
  70. package/lib/chain/blocks/writeBlockInputToDb.js +6 -24
  71. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  72. package/lib/chain/bls/interface.d.ts +2 -0
  73. package/lib/chain/bls/interface.d.ts.map +1 -1
  74. package/lib/chain/bls/multithread/index.d.ts.map +1 -1
  75. package/lib/chain/bls/multithread/index.js +13 -11
  76. package/lib/chain/bls/multithread/index.js.map +1 -1
  77. package/lib/chain/bls/multithread/types.d.ts +1 -1
  78. package/lib/chain/bls/multithread/types.d.ts.map +1 -1
  79. package/lib/chain/bls/multithread/worker.js +1 -1
  80. package/lib/chain/bls/multithread/worker.js.map +1 -1
  81. package/lib/chain/bls/singleThread.js +1 -1
  82. package/lib/chain/bls/singleThread.js.map +1 -1
  83. package/lib/chain/bls/utils.js +1 -1
  84. package/lib/chain/bls/utils.js.map +1 -1
  85. package/lib/chain/chain.d.ts +25 -4
  86. package/lib/chain/chain.d.ts.map +1 -1
  87. package/lib/chain/chain.js +120 -39
  88. package/lib/chain/chain.js.map +1 -1
  89. package/lib/chain/emitter.d.ts +7 -7
  90. package/lib/chain/emitter.d.ts.map +1 -1
  91. package/lib/chain/emitter.js +5 -5
  92. package/lib/chain/emitter.js.map +1 -1
  93. package/lib/chain/errors/executionPayloadEnvelope.d.ts +7 -0
  94. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
  95. package/lib/chain/errors/executionPayloadEnvelope.js +1 -0
  96. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
  97. package/lib/chain/errors/index.d.ts +0 -1
  98. package/lib/chain/errors/index.d.ts.map +1 -1
  99. package/lib/chain/errors/index.js +0 -1
  100. package/lib/chain/errors/index.js.map +1 -1
  101. package/lib/chain/forkChoice/index.d.ts +11 -1
  102. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  103. package/lib/chain/forkChoice/index.js +11 -0
  104. package/lib/chain/forkChoice/index.js.map +1 -1
  105. package/lib/chain/forkChoiceExecutionEngine.d.ts +51 -0
  106. package/lib/chain/forkChoiceExecutionEngine.d.ts.map +1 -0
  107. package/lib/chain/forkChoiceExecutionEngine.js +117 -0
  108. package/lib/chain/forkChoiceExecutionEngine.js.map +1 -0
  109. package/lib/chain/interface.d.ts +9 -7
  110. package/lib/chain/interface.d.ts.map +1 -1
  111. package/lib/chain/interface.js.map +1 -1
  112. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +17 -4
  113. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  114. package/lib/chain/opPools/aggregatedAttestationPool.js +199 -46
  115. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  116. package/lib/chain/opPools/attestationPool.d.ts +1 -1
  117. package/lib/chain/opPools/attestationPool.d.ts.map +1 -1
  118. package/lib/chain/opPools/attestationPool.js +15 -4
  119. package/lib/chain/opPools/attestationPool.js.map +1 -1
  120. package/lib/chain/opPools/index.d.ts +1 -0
  121. package/lib/chain/opPools/index.d.ts.map +1 -1
  122. package/lib/chain/opPools/index.js +1 -0
  123. package/lib/chain/opPools/index.js.map +1 -1
  124. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -1
  125. package/lib/chain/opPools/payloadAttestationPool.js +17 -7
  126. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -1
  127. package/lib/chain/opPools/singleAttestationPool.d.ts +77 -0
  128. package/lib/chain/opPools/singleAttestationPool.d.ts.map +1 -0
  129. package/lib/chain/opPools/singleAttestationPool.js +209 -0
  130. package/lib/chain/opPools/singleAttestationPool.js.map +1 -0
  131. package/lib/chain/opPools/syncCommitteeMessagePool.d.ts.map +1 -1
  132. package/lib/chain/opPools/syncCommitteeMessagePool.js +9 -3
  133. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  134. package/lib/chain/opPools/syncContributionAndProofPool.d.ts.map +1 -1
  135. package/lib/chain/opPools/syncContributionAndProofPool.js +11 -3
  136. package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
  137. package/lib/chain/opPools/utils.d.ts +1 -1
  138. package/lib/chain/opPools/utils.d.ts.map +1 -1
  139. package/lib/chain/opPools/utils.js +1 -1
  140. package/lib/chain/opPools/utils.js.map +1 -1
  141. package/lib/chain/options.d.ts +5 -2
  142. package/lib/chain/options.d.ts.map +1 -1
  143. package/lib/chain/options.js.map +1 -1
  144. package/lib/chain/produceBlock/produceBlockBody.d.ts +3 -2
  145. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  146. package/lib/chain/produceBlock/produceBlockBody.js +3 -2
  147. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  148. package/lib/chain/proposerTracker.d.ts +31 -0
  149. package/lib/chain/proposerTracker.d.ts.map +1 -0
  150. package/lib/chain/proposerTracker.js +75 -0
  151. package/lib/chain/proposerTracker.js.map +1 -0
  152. package/lib/chain/regen/interface.d.ts +1 -1
  153. package/lib/chain/regen/interface.d.ts.map +1 -1
  154. package/lib/chain/regen/queued.d.ts +1 -1
  155. package/lib/chain/regen/queued.d.ts.map +1 -1
  156. package/lib/chain/regen/queued.js +5 -3
  157. package/lib/chain/regen/queued.js.map +1 -1
  158. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +7 -14
  159. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  160. package/lib/chain/seenCache/seenGossipBlockInput.js +6 -65
  161. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  162. package/lib/chain/validation/executionPayloadBid.js +13 -13
  163. package/lib/chain/validation/executionPayloadBid.js.map +1 -1
  164. package/lib/chain/validation/executionPayloadEnvelope.d.ts +6 -0
  165. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -1
  166. package/lib/chain/validation/executionPayloadEnvelope.js +53 -0
  167. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
  168. package/lib/chain/validatorMonitor.d.ts +1 -2
  169. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  170. package/lib/chain/validatorMonitor.js +0 -3
  171. package/lib/chain/validatorMonitor.js.map +1 -1
  172. package/lib/db/flatFileStore/flatFileStore.js +5 -5
  173. package/lib/db/flatFileStore/flatFileStore.js.map +1 -1
  174. package/lib/db/flatFileStore/slotIndex.d.ts.map +1 -1
  175. package/lib/db/flatFileStore/slotIndex.js +2 -2
  176. package/lib/db/flatFileStore/slotIndex.js.map +1 -1
  177. package/lib/db/repositories/blobSidecars.d.ts +0 -1
  178. package/lib/db/repositories/blobSidecars.d.ts.map +1 -1
  179. package/lib/db/repositories/blobSidecars.js +0 -1
  180. package/lib/db/repositories/blobSidecars.js.map +1 -1
  181. package/lib/execution/builder/apiClient.d.ts +14 -8
  182. package/lib/execution/builder/apiClient.d.ts.map +1 -1
  183. package/lib/execution/builder/apiClient.js +12 -10
  184. package/lib/execution/builder/apiClient.js.map +1 -1
  185. package/lib/execution/builder/http.d.ts +2 -0
  186. package/lib/execution/builder/http.d.ts.map +1 -1
  187. package/lib/execution/builder/http.js +2 -0
  188. package/lib/execution/builder/http.js.map +1 -1
  189. package/lib/execution/engine/http.d.ts +4 -6
  190. package/lib/execution/engine/http.d.ts.map +1 -1
  191. package/lib/execution/engine/http.js +8 -10
  192. package/lib/execution/engine/http.js.map +1 -1
  193. package/lib/execution/engine/index.d.ts +1 -1
  194. package/lib/execution/engine/index.d.ts.map +1 -1
  195. package/lib/execution/engine/index.js +1 -1
  196. package/lib/execution/engine/index.js.map +1 -1
  197. package/lib/execution/engine/interface.d.ts +18 -6
  198. package/lib/execution/engine/interface.d.ts.map +1 -1
  199. package/lib/execution/engine/interface.js.map +1 -1
  200. package/lib/execution/engine/jsonRpcTransport.d.ts +2 -4
  201. package/lib/execution/engine/jsonRpcTransport.d.ts.map +1 -1
  202. package/lib/execution/engine/jsonRpcTransport.js +2 -12
  203. package/lib/execution/engine/jsonRpcTransport.js.map +1 -1
  204. package/lib/execution/engine/mock.d.ts +0 -1
  205. package/lib/execution/engine/mock.d.ts.map +1 -1
  206. package/lib/execution/engine/mock.js +0 -4
  207. package/lib/execution/engine/mock.js.map +1 -1
  208. package/lib/execution/engine/restTransport.d.ts +2 -4
  209. package/lib/execution/engine/restTransport.d.ts.map +1 -1
  210. package/lib/execution/engine/restTransport.js +1 -15
  211. package/lib/execution/engine/restTransport.js.map +1 -1
  212. package/lib/execution/engine/sszTypes.d.ts +0 -9
  213. package/lib/execution/engine/sszTypes.d.ts.map +1 -1
  214. package/lib/execution/engine/sszTypes.js +0 -5
  215. package/lib/execution/engine/sszTypes.js.map +1 -1
  216. package/lib/execution/engine/transport.d.ts +1 -14
  217. package/lib/execution/engine/transport.d.ts.map +1 -1
  218. package/lib/execution/engine/types.d.ts +0 -8
  219. package/lib/execution/engine/types.d.ts.map +1 -1
  220. package/lib/execution/engine/types.js +2 -10
  221. package/lib/execution/engine/types.js.map +1 -1
  222. package/lib/execution/engine/utils.d.ts.map +1 -1
  223. package/lib/execution/engine/utils.js +3 -2
  224. package/lib/execution/engine/utils.js.map +1 -1
  225. package/lib/index.d.ts +1 -1
  226. package/lib/index.d.ts.map +1 -1
  227. package/lib/index.js +1 -1
  228. package/lib/index.js.map +1 -1
  229. package/lib/metrics/metrics/beacon.d.ts +0 -9
  230. package/lib/metrics/metrics/beacon.d.ts.map +1 -1
  231. package/lib/metrics/metrics/beacon.js +0 -30
  232. package/lib/metrics/metrics/beacon.js.map +1 -1
  233. package/lib/metrics/metrics/lodestar.d.ts +30 -8
  234. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  235. package/lib/metrics/metrics/lodestar.js +79 -18
  236. package/lib/metrics/metrics/lodestar.js.map +1 -1
  237. package/lib/metrics/server/http.js +5 -5
  238. package/lib/metrics/server/http.js.map +1 -1
  239. package/lib/monitoring/service.js +1 -1
  240. package/lib/monitoring/service.js.map +1 -1
  241. package/lib/network/core/networkCore.d.ts +4 -1
  242. package/lib/network/core/networkCore.d.ts.map +1 -1
  243. package/lib/network/core/networkCore.js +7 -0
  244. package/lib/network/core/networkCore.js.map +1 -1
  245. package/lib/network/core/networkCoreWorker.js +2 -0
  246. package/lib/network/core/networkCoreWorker.js.map +1 -1
  247. package/lib/network/core/networkCoreWorkerHandler.d.ts +4 -1
  248. package/lib/network/core/networkCoreWorkerHandler.d.ts.map +1 -1
  249. package/lib/network/core/networkCoreWorkerHandler.js +6 -0
  250. package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
  251. package/lib/network/core/types.d.ts +6 -1
  252. package/lib/network/core/types.d.ts.map +1 -1
  253. package/lib/network/gossip/gossipsub.d.ts +1 -0
  254. package/lib/network/gossip/gossipsub.d.ts.map +1 -1
  255. package/lib/network/gossip/gossipsub.js +10 -0
  256. package/lib/network/gossip/gossipsub.js.map +1 -1
  257. package/lib/network/gossip/interface.d.ts +1 -8
  258. package/lib/network/gossip/interface.d.ts.map +1 -1
  259. package/lib/network/gossip/interface.js +0 -1
  260. package/lib/network/gossip/interface.js.map +1 -1
  261. package/lib/network/gossip/topic.d.ts +0 -16
  262. package/lib/network/gossip/topic.d.ts.map +1 -1
  263. package/lib/network/gossip/topic.js +0 -23
  264. package/lib/network/gossip/topic.js.map +1 -1
  265. package/lib/network/interface.d.ts +4 -5
  266. package/lib/network/interface.d.ts.map +1 -1
  267. package/lib/network/libp2p/index.d.ts.map +1 -1
  268. package/lib/network/libp2p/index.js +5 -1
  269. package/lib/network/libp2p/index.js.map +1 -1
  270. package/lib/network/network.d.ts +8 -7
  271. package/lib/network/network.d.ts.map +1 -1
  272. package/lib/network/network.js +53 -35
  273. package/lib/network/network.js.map +1 -1
  274. package/lib/network/options.d.ts +2 -0
  275. package/lib/network/options.d.ts.map +1 -1
  276. package/lib/network/options.js +2 -0
  277. package/lib/network/options.js.map +1 -1
  278. package/lib/network/peers/peerManager.d.ts +2 -1
  279. package/lib/network/peers/peerManager.d.ts.map +1 -1
  280. package/lib/network/peers/peerManager.js +28 -1
  281. package/lib/network/peers/peerManager.js.map +1 -1
  282. package/lib/network/peers/utils/assertPeerRelevance.d.ts +9 -1
  283. package/lib/network/peers/utils/assertPeerRelevance.d.ts.map +1 -1
  284. package/lib/network/peers/utils/assertPeerRelevance.js +32 -21
  285. package/lib/network/peers/utils/assertPeerRelevance.js.map +1 -1
  286. package/lib/network/peers/utils/prioritizePeers.d.ts +4 -1
  287. package/lib/network/peers/utils/prioritizePeers.d.ts.map +1 -1
  288. package/lib/network/peers/utils/prioritizePeers.js +8 -16
  289. package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
  290. package/lib/network/peers/utils/subnetMap.d.ts +5 -2
  291. package/lib/network/peers/utils/subnetMap.d.ts.map +1 -1
  292. package/lib/network/peers/utils/subnetMap.js +6 -3
  293. package/lib/network/peers/utils/subnetMap.js.map +1 -1
  294. package/lib/network/processor/extractSlotRootFns.d.ts.map +1 -1
  295. package/lib/network/processor/extractSlotRootFns.js +1 -8
  296. package/lib/network/processor/extractSlotRootFns.js.map +1 -1
  297. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  298. package/lib/network/processor/gossipHandlers.js +46 -128
  299. package/lib/network/processor/gossipHandlers.js.map +1 -1
  300. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  301. package/lib/network/processor/gossipQueues/index.js +0 -6
  302. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  303. package/lib/network/processor/gossipValidatorFn.d.ts.map +1 -1
  304. package/lib/network/processor/gossipValidatorFn.js +1 -5
  305. package/lib/network/processor/gossipValidatorFn.js.map +1 -1
  306. package/lib/network/processor/index.d.ts +6 -0
  307. package/lib/network/processor/index.d.ts.map +1 -1
  308. package/lib/network/processor/index.js +29 -4
  309. package/lib/network/processor/index.js.map +1 -1
  310. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +1 -1
  311. package/lib/network/reqresp/ReqRespBeaconNode.js +0 -3
  312. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  313. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts +2 -2
  314. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
  315. package/lib/network/reqresp/handlers/index.d.ts.map +1 -1
  316. package/lib/network/reqresp/handlers/index.js +1 -12
  317. package/lib/network/reqresp/handlers/index.js.map +1 -1
  318. package/lib/network/reqresp/protocols.d.ts +0 -2
  319. package/lib/network/reqresp/protocols.d.ts.map +1 -1
  320. package/lib/network/reqresp/protocols.js +0 -10
  321. package/lib/network/reqresp/protocols.js.map +1 -1
  322. package/lib/network/reqresp/rateLimit.d.ts.map +1 -1
  323. package/lib/network/reqresp/rateLimit.js +1 -17
  324. package/lib/network/reqresp/rateLimit.js.map +1 -1
  325. package/lib/network/reqresp/types.d.ts +2 -8
  326. package/lib/network/reqresp/types.d.ts.map +1 -1
  327. package/lib/network/reqresp/types.js +1 -7
  328. package/lib/network/reqresp/types.js.map +1 -1
  329. package/lib/network/subnets/attnetsService.d.ts +35 -5
  330. package/lib/network/subnets/attnetsService.d.ts.map +1 -1
  331. package/lib/network/subnets/attnetsService.js +84 -6
  332. package/lib/network/subnets/attnetsService.js.map +1 -1
  333. package/lib/network/subnets/interface.d.ts +7 -0
  334. package/lib/network/subnets/interface.d.ts.map +1 -1
  335. package/lib/network/subnets/interface.js.map +1 -1
  336. package/lib/node/nodejs.d.ts +3 -1
  337. package/lib/node/nodejs.d.ts.map +1 -1
  338. package/lib/node/nodejs.js +38 -20
  339. package/lib/node/nodejs.js.map +1 -1
  340. package/lib/node/options.d.ts +3 -1
  341. package/lib/node/options.d.ts.map +1 -1
  342. package/lib/node/options.js +4 -2
  343. package/lib/node/options.js.map +1 -1
  344. package/lib/sync/interface.d.ts.map +1 -1
  345. package/lib/sync/interface.js.map +1 -1
  346. package/lib/sync/range/batch.d.ts +2 -3
  347. package/lib/sync/range/batch.d.ts.map +1 -1
  348. package/lib/sync/range/batch.js +9 -22
  349. package/lib/sync/range/batch.js.map +1 -1
  350. package/lib/sync/range/chain.d.ts.map +1 -1
  351. package/lib/sync/range/chain.js +2 -15
  352. package/lib/sync/range/chain.js.map +1 -1
  353. package/lib/sync/sync.d.ts +7 -0
  354. package/lib/sync/sync.d.ts.map +1 -1
  355. package/lib/sync/sync.js +61 -3
  356. package/lib/sync/sync.js.map +1 -1
  357. package/lib/sync/unknownBlock.d.ts.map +1 -1
  358. package/lib/sync/unknownBlock.js +1 -7
  359. package/lib/sync/unknownBlock.js.map +1 -1
  360. package/lib/sync/utils/downloadByRange.d.ts +6 -34
  361. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  362. package/lib/sync/utils/downloadByRange.js +24 -128
  363. package/lib/sync/utils/downloadByRange.js.map +1 -1
  364. package/lib/sync/utils/downloadByRoot.d.ts +2 -18
  365. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  366. package/lib/sync/utils/downloadByRoot.js +14 -99
  367. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  368. package/lib/util/blobs.d.ts +1 -7
  369. package/lib/util/blobs.d.ts.map +1 -1
  370. package/lib/util/blobs.js +0 -19
  371. package/lib/util/blobs.js.map +1 -1
  372. package/lib/util/execution.d.ts +3 -4
  373. package/lib/util/execution.d.ts.map +1 -1
  374. package/lib/util/execution.js +1 -73
  375. package/lib/util/execution.js.map +1 -1
  376. package/lib/util/file.d.ts.map +1 -1
  377. package/lib/util/file.js +8 -9
  378. package/lib/util/file.js.map +1 -1
  379. package/lib/util/queue/itemQueue.js +1 -1
  380. package/lib/util/queue/itemQueue.js.map +1 -1
  381. package/lib/util/sszBytes.d.ts +5 -1
  382. package/lib/util/sszBytes.d.ts.map +1 -1
  383. package/lib/util/sszBytes.js +36 -19
  384. package/lib/util/sszBytes.js.map +1 -1
  385. package/lib/util/types.d.ts +0 -5
  386. package/lib/util/types.d.ts.map +1 -1
  387. package/lib/util/types.js +1 -2
  388. package/lib/util/types.js.map +1 -1
  389. package/package.json +16 -17
  390. package/src/api/impl/beacon/blocks/index.ts +48 -86
  391. package/src/api/impl/beacon/pool/index.ts +31 -1
  392. package/src/api/impl/beacon/state/utils.ts +1 -1
  393. package/src/api/impl/validator/index.ts +43 -29
  394. package/src/chain/GetBlobsTracker.ts +14 -41
  395. package/src/chain/archiveStore/archiveStore.ts +1 -0
  396. package/src/chain/blocks/blockInput/blockInput.ts +11 -343
  397. package/src/chain/blocks/blockInput/errors.ts +1 -2
  398. package/src/chain/blocks/blockInput/types.ts +2 -20
  399. package/src/chain/blocks/importBlock.ts +56 -72
  400. package/src/chain/blocks/importExecutionPayload.ts +44 -33
  401. package/src/chain/blocks/index.ts +5 -2
  402. package/src/chain/blocks/payloadEnvelopeProcessor.ts +33 -22
  403. package/src/chain/blocks/types.ts +5 -31
  404. package/src/chain/blocks/verifyBlock.ts +30 -16
  405. package/src/chain/blocks/verifyBlocksDataAvailability.ts +6 -1
  406. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +9 -6
  407. package/src/chain/blocks/verifyBlocksSanityChecks.ts +4 -1
  408. package/src/chain/blocks/verifyBlocksSignatures.ts +7 -5
  409. package/src/chain/blocks/verifyPayloadsDataAvailability.ts +1 -3
  410. package/src/chain/blocks/writeBlockInputToDb.ts +6 -29
  411. package/src/chain/bls/interface.ts +2 -0
  412. package/src/chain/bls/multithread/index.ts +14 -10
  413. package/src/chain/bls/multithread/types.ts +1 -1
  414. package/src/chain/bls/multithread/worker.ts +1 -5
  415. package/src/chain/bls/singleThread.ts +1 -1
  416. package/src/chain/bls/utils.ts +1 -1
  417. package/src/chain/chain.ts +136 -38
  418. package/src/chain/emitter.ts +8 -8
  419. package/src/chain/errors/executionPayloadEnvelope.ts +8 -0
  420. package/src/chain/errors/index.ts +0 -1
  421. package/src/chain/forkChoice/index.ts +11 -0
  422. package/src/chain/forkChoiceExecutionEngine.ts +183 -0
  423. package/src/chain/interface.ts +9 -6
  424. package/src/chain/opPools/aggregatedAttestationPool.ts +246 -43
  425. package/src/chain/opPools/attestationPool.ts +16 -4
  426. package/src/chain/opPools/index.ts +1 -0
  427. package/src/chain/opPools/payloadAttestationPool.ts +18 -7
  428. package/src/chain/opPools/singleAttestationPool.ts +287 -0
  429. package/src/chain/opPools/syncCommitteeMessagePool.ts +10 -3
  430. package/src/chain/opPools/syncContributionAndProofPool.ts +13 -3
  431. package/src/chain/opPools/utils.ts +1 -1
  432. package/src/chain/options.ts +5 -2
  433. package/src/chain/produceBlock/produceBlockBody.ts +7 -3
  434. package/src/chain/proposerTracker.ts +94 -0
  435. package/src/chain/regen/interface.ts +1 -1
  436. package/src/chain/regen/queued.ts +6 -4
  437. package/src/chain/seenCache/seenGossipBlockInput.ts +9 -93
  438. package/src/chain/validation/executionPayloadBid.ts +14 -13
  439. package/src/chain/validation/executionPayloadEnvelope.ts +68 -1
  440. package/src/chain/validatorMonitor.ts +0 -6
  441. package/src/db/flatFileStore/flatFileStore.ts +7 -7
  442. package/src/db/flatFileStore/slotIndex.ts +4 -3
  443. package/src/db/repositories/blobSidecars.ts +0 -1
  444. package/src/execution/builder/apiClient.ts +16 -13
  445. package/src/execution/builder/http.ts +4 -0
  446. package/src/execution/engine/http.ts +19 -42
  447. package/src/execution/engine/index.ts +1 -1
  448. package/src/execution/engine/interface.ts +19 -10
  449. package/src/execution/engine/jsonRpcTransport.ts +10 -22
  450. package/src/execution/engine/mock.ts +0 -7
  451. package/src/execution/engine/restTransport.ts +3 -22
  452. package/src/execution/engine/sszTypes.ts +0 -9
  453. package/src/execution/engine/transport.ts +8 -17
  454. package/src/execution/engine/types.ts +3 -18
  455. package/src/execution/engine/utils.ts +4 -2
  456. package/src/index.ts +1 -1
  457. package/src/metrics/metrics/beacon.ts +0 -30
  458. package/src/metrics/metrics/lodestar.ts +80 -18
  459. package/src/metrics/server/http.ts +5 -5
  460. package/src/monitoring/service.ts +1 -1
  461. package/src/network/core/networkCore.ts +11 -1
  462. package/src/network/core/networkCoreWorker.ts +2 -0
  463. package/src/network/core/networkCoreWorkerHandler.ts +8 -1
  464. package/src/network/core/types.ts +6 -1
  465. package/src/network/gossip/gossipsub.ts +11 -0
  466. package/src/network/gossip/interface.ts +0 -5
  467. package/src/network/gossip/topic.ts +0 -25
  468. package/src/network/interface.ts +2 -5
  469. package/src/network/libp2p/index.ts +5 -1
  470. package/src/network/network.ts +55 -58
  471. package/src/network/options.ts +4 -0
  472. package/src/network/peers/peerManager.ts +28 -3
  473. package/src/network/peers/utils/assertPeerRelevance.ts +39 -23
  474. package/src/network/peers/utils/prioritizePeers.ts +14 -22
  475. package/src/network/peers/utils/subnetMap.ts +6 -3
  476. package/src/network/processor/extractSlotRootFns.ts +0 -9
  477. package/src/network/processor/gossipHandlers.ts +59 -161
  478. package/src/network/processor/gossipQueues/index.ts +0 -6
  479. package/src/network/processor/gossipValidatorFn.ts +0 -5
  480. package/src/network/processor/index.ts +25 -4
  481. package/src/network/reqresp/ReqRespBeaconNode.ts +0 -7
  482. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +2 -2
  483. package/src/network/reqresp/handlers/index.ts +0 -17
  484. package/src/network/reqresp/protocols.ts +0 -12
  485. package/src/network/reqresp/rateLimit.ts +1 -17
  486. package/src/network/reqresp/types.ts +0 -13
  487. package/src/network/subnets/attnetsService.ts +94 -6
  488. package/src/network/subnets/interface.ts +7 -0
  489. package/src/node/nodejs.ts +40 -21
  490. package/src/node/options.ts +9 -6
  491. package/src/sync/interface.ts +1 -0
  492. package/src/sync/range/batch.ts +9 -21
  493. package/src/sync/range/chain.ts +2 -14
  494. package/src/sync/sync.ts +65 -4
  495. package/src/sync/unknownBlock.ts +1 -8
  496. package/src/sync/utils/downloadByRange.ts +31 -230
  497. package/src/sync/utils/downloadByRoot.ts +15 -142
  498. package/src/util/blobs.ts +0 -34
  499. package/src/util/execution.ts +8 -102
  500. package/src/util/file.ts +8 -9
  501. package/src/util/queue/itemQueue.ts +1 -1
  502. package/src/util/sszBytes.ts +42 -24
  503. package/src/util/types.ts +1 -8
  504. package/lib/chain/errors/blobSidecarError.d.ts +0 -108
  505. package/lib/chain/errors/blobSidecarError.d.ts.map +0 -1
  506. package/lib/chain/errors/blobSidecarError.js +0 -38
  507. package/lib/chain/errors/blobSidecarError.js.map +0 -1
  508. package/lib/chain/validation/blobSidecar.d.ts +0 -16
  509. package/lib/chain/validation/blobSidecar.d.ts.map +0 -1
  510. package/lib/chain/validation/blobSidecar.js +0 -276
  511. package/lib/chain/validation/blobSidecar.js.map +0 -1
  512. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts +0 -9
  513. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +0 -1
  514. package/lib/network/reqresp/handlers/blobSidecarsByRange.js +0 -91
  515. package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +0 -1
  516. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts +0 -5
  517. package/lib/network/reqresp/handlers/blobSidecarsByRoot.d.ts.map +0 -1
  518. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +0 -46
  519. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +0 -1
  520. package/src/chain/errors/blobSidecarError.ts +0 -70
  521. package/src/chain/validation/blobSidecar.ts +0 -357
  522. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +0 -133
  523. package/src/network/reqresp/handlers/blobSidecarsByRoot.ts +0 -69
@@ -42,16 +42,16 @@ export var ChainEvent;
42
42
  * and are ready to be published.
43
43
  */
44
44
  ChainEvent["publishDataColumns"] = "publishDataColumns";
45
- /**
46
- * This event signals that blobs have been fetched from the execution engine
47
- * and are ready to be published.
48
- */
49
- ChainEvent["publishBlobSidecars"] = "publishBlobSidecars";
50
45
  /**
51
46
  * This event signals that a proposer slashing has been produced from an observed equivocation
52
47
  * and is ready to be published.
53
48
  */
54
49
  ChainEvent["publishProposerSlashing"] = "publishProposerSlashing";
50
+ /**
51
+ * New block proposal slots of validators connected to this node, the network subscribes to all attestation
52
+ * subnets before them, see `slotsToSubscribeBeforeProposalDuty`
53
+ */
54
+ ChainEvent["localProposalSlots"] = "localProposalSlots";
55
55
  /**
56
56
  * Trigger an update of status so reqresp by peers have current earliestAvailableSlot
57
57
  */
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAUzC;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,UA2EX;AA3ED,WAAY,UAAU;IACpB;;;;;OAKG;IACH,uCAAyB,CAAA;IACzB;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;;OAGG;IACH,0DAA4C,CAAA;IAC5C;;OAEG;IACH,6EAA+D,CAAA;IAC/D;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;;OAGG;IACH,yDAA2C,CAAA;IAC3C;;;OAGG;IACH,iEAAmD,CAAA;IACnD;;OAEG;IACH,2CAA6B,CAAA;IAC7B;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;OAEG;IACH,mDAAqC,CAAA;IACrC;;OAEG;IACH,mEAAqD,CAAA;IACrD;;OAEG;IACH,2EAA6D,CAAA;IAC7D;;;OAGG;IACH,2DAA6C,CAAA;IAC7C;;;OAGG;IACH,qEAAuD,CAAA;AACzD,CAAC,EA3EW,UAAU,KAAV,UAAU,QA2ErB;AAgDD;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAkB,SAAS,YAAyE;CAAG"}
1
+ {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/chain/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAUzC;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,UA2EX;AA3ED,WAAY,UAAU;IACpB;;;;;OAKG;IACH,uCAAyB,CAAA;IACzB;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;;;OAIG;IACH,0DAA4C,CAAA;IAC5C;;;OAGG;IACH,0DAA4C,CAAA;IAC5C;;OAEG;IACH,6EAA+D,CAAA;IAC/D;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;;OAGG;IACH,iEAAmD,CAAA;IACnD;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;OAEG;IACH,2CAA6B,CAAA;IAC7B;;;OAGG;IACH,uDAAyC,CAAA;IACzC;;OAEG;IACH,mDAAqC,CAAA;IACrC;;OAEG;IACH,mEAAqD,CAAA;IACrD;;OAEG;IACH,2EAA6D,CAAA;IAC7D;;;OAGG;IACH,2DAA6C,CAAA;IAC7C;;;OAGG;IACH,qEAAuD,CAAA;AACzD,CAAC,EA3EW,UAAU,KAAV,UAAU,QA2ErB;AAgDD;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAkB,SAAS,YAAyE;CAAG"}
@@ -11,6 +11,7 @@ export declare enum ExecutionPayloadEnvelopeErrorCode {
11
11
  BUILDER_INDEX_MISMATCH = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_BUILDER_INDEX_MISMATCH",
12
12
  BLOCK_HASH_MISMATCH = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_BLOCK_HASH_MISMATCH",
13
13
  EXECUTION_REQUESTS_ROOT_MISMATCH = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_EXECUTION_REQUESTS_ROOT_MISMATCH",
14
+ TOO_MANY_TRANSACTIONS = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_TOO_MANY_TRANSACTIONS",
14
15
  INVALID_SIGNATURE = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_INVALID_SIGNATURE",
15
16
  PAYLOAD_ENVELOPE_INPUT_MISSING = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_PAYLOAD_ENVELOPE_INPUT_MISSING"
16
17
  }
@@ -60,6 +61,12 @@ export type ExecutionPayloadEnvelopeErrorType = {
60
61
  root: RootHex;
61
62
  envelopeRequestsRoot: RootHex;
62
63
  bidRequestsRoot: RootHex;
64
+ } | {
65
+ code: ExecutionPayloadEnvelopeErrorCode.TOO_MANY_TRANSACTIONS;
66
+ slot: Slot;
67
+ root: RootHex;
68
+ transactionCount: number;
69
+ maxTransactionCount: number;
63
70
  } | {
64
71
  code: ExecutionPayloadEnvelopeErrorCode.INVALID_SIGNATURE;
65
72
  slot: Slot;
@@ -1 +1 @@
1
- {"version":3,"file":"executionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,iCAAiC;IAC3C,yBAAyB,+DAA+D;IACxF,kBAAkB,wDAAwD;IAC1E,cAAc,oDAAoD;IAClE,mBAAmB,yDAAyD;IAC5E,sBAAsB,mDAAmD;IACzE,aAAa,mDAAmD;IAChE,aAAa,mDAAmD;IAChE,sBAAsB,4DAA4D;IAClF,mBAAmB,yDAAyD;IAC5E,gCAAgC,sEAAsE;IACtG,iBAAiB,uDAAuD;IACxE,8BAA8B,oEAAoE;CACnG;AACD,MAAM,MAAM,iCAAiC,GACzC;IAAC,IAAI,EAAE,iCAAiC,CAAC,yBAAyB,CAAC;IAAC,YAAY,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,IAAI,CAAA;CAAC,GAC5G;IAAC,IAAI,EAAE,iCAAiC,CAAC,kBAAkB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,GAChF;IAAC,IAAI,EAAE,iCAAiC,CAAC,cAAc,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GACzF;IAAC,IAAI,EAAE,iCAAiC,CAAC,mBAAmB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GAC7F;IACE,IAAI,EAAE,iCAAiC,CAAC,sBAAsB,CAAC;IAC/D,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IAAC,IAAI,EAAE,iCAAiC,CAAC,aAAa,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,GAC3E;IACE,IAAI,EAAE,iCAAiC,CAAC,aAAa,CAAC;IACtD,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,IAAI,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;CACjB,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,sBAAsB,CAAC;IAC/D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,EAAE,YAAY,CAAC;IACnC,eAAe,EAAE,YAAY,GAAG,IAAI,CAAC;CACtC,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,mBAAmB,CAAC;IAC5D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;CAC9B,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,gCAAgC,CAAC;IACzE,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,EAAE,OAAO,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;CAC1B,GACD;IAAC,IAAI,EAAE,iCAAiC,CAAC,iBAAiB,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAC,GACtF;IAAC,IAAI,EAAE,iCAAiC,CAAC,8BAA8B,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,CAAC;AAEjG,qBAAa,6BAA8B,SAAQ,iBAAiB,CAAC,iCAAiC,CAAC;CAAG"}
1
+ {"version":3,"file":"executionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,iCAAiC;IAC3C,yBAAyB,+DAA+D;IACxF,kBAAkB,wDAAwD;IAC1E,cAAc,oDAAoD;IAClE,mBAAmB,yDAAyD;IAC5E,sBAAsB,mDAAmD;IACzE,aAAa,mDAAmD;IAChE,aAAa,mDAAmD;IAChE,sBAAsB,4DAA4D;IAClF,mBAAmB,yDAAyD;IAC5E,gCAAgC,sEAAsE;IACtG,qBAAqB,2DAA2D;IAChF,iBAAiB,uDAAuD;IACxE,8BAA8B,oEAAoE;CACnG;AACD,MAAM,MAAM,iCAAiC,GACzC;IAAC,IAAI,EAAE,iCAAiC,CAAC,yBAAyB,CAAC;IAAC,YAAY,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,IAAI,CAAA;CAAC,GAC5G;IAAC,IAAI,EAAE,iCAAiC,CAAC,kBAAkB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,GAChF;IAAC,IAAI,EAAE,iCAAiC,CAAC,cAAc,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GACzF;IAAC,IAAI,EAAE,iCAAiC,CAAC,mBAAmB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GAC7F;IACE,IAAI,EAAE,iCAAiC,CAAC,sBAAsB,CAAC;IAC/D,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IAAC,IAAI,EAAE,iCAAiC,CAAC,aAAa,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,GAC3E;IACE,IAAI,EAAE,iCAAiC,CAAC,aAAa,CAAC;IACtD,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,IAAI,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;CACjB,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,sBAAsB,CAAC;IAC/D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,EAAE,YAAY,CAAC;IACnC,eAAe,EAAE,YAAY,GAAG,IAAI,CAAC;CACtC,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,mBAAmB,CAAC;IAC5D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;CAC9B,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,gCAAgC,CAAC;IACzE,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,EAAE,OAAO,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;CAC1B,GACD;IACE,IAAI,EAAE,iCAAiC,CAAC,qBAAqB,CAAC;IAC9D,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GACD;IAAC,IAAI,EAAE,iCAAiC,CAAC,iBAAiB,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAC,GACtF;IAAC,IAAI,EAAE,iCAAiC,CAAC,8BAA8B,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,CAAC;AAEjG,qBAAa,6BAA8B,SAAQ,iBAAiB,CAAC,iCAAiC,CAAC;CAAG"}
@@ -11,6 +11,7 @@ export var ExecutionPayloadEnvelopeErrorCode;
11
11
  ExecutionPayloadEnvelopeErrorCode["BUILDER_INDEX_MISMATCH"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_BUILDER_INDEX_MISMATCH";
12
12
  ExecutionPayloadEnvelopeErrorCode["BLOCK_HASH_MISMATCH"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_BLOCK_HASH_MISMATCH";
13
13
  ExecutionPayloadEnvelopeErrorCode["EXECUTION_REQUESTS_ROOT_MISMATCH"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_EXECUTION_REQUESTS_ROOT_MISMATCH";
14
+ ExecutionPayloadEnvelopeErrorCode["TOO_MANY_TRANSACTIONS"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_TOO_MANY_TRANSACTIONS";
14
15
  ExecutionPayloadEnvelopeErrorCode["INVALID_SIGNATURE"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_INVALID_SIGNATURE";
15
16
  ExecutionPayloadEnvelopeErrorCode["PAYLOAD_ENVELOPE_INPUT_MISSING"] = "EXECUTION_PAYLOAD_ENVELOPE_ERROR_PAYLOAD_ENVELOPE_INPUT_MISSING";
16
17
  })(ExecutionPayloadEnvelopeErrorCode || (ExecutionPayloadEnvelopeErrorCode = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"executionPayloadEnvelope.js","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAN,IAAY,iCAaX;AAbD,WAAY,iCAAiC;IAC3C,6HAAwF,CAAA;IACxF,+GAA0E,CAAA;IAC1E,uGAAkE,CAAA;IAClE,iHAA4E,CAAA;IAC5E,8GAAyE,CAAA;IACzE,qGAAgE,CAAA;IAChE,qGAAgE,CAAA;IAChE,uHAAkF,CAAA;IAClF,iHAA4E,CAAA;IAC5E,2IAAsG,CAAA;IACtG,6GAAwE,CAAA;IACxE,uIAAkG,CAAA;AACpG,CAAC,EAbW,iCAAiC,KAAjC,iCAAiC,QAa5C;AA2CD,MAAM,OAAO,6BAA8B,SAAQ,iBAAoD;CAAG"}
1
+ {"version":3,"file":"executionPayloadEnvelope.js","sourceRoot":"","sources":["../../../src/chain/errors/executionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAN,IAAY,iCAcX;AAdD,WAAY,iCAAiC;IAC3C,6HAAwF,CAAA;IACxF,+GAA0E,CAAA;IAC1E,uGAAkE,CAAA;IAClE,iHAA4E,CAAA;IAC5E,8GAAyE,CAAA;IACzE,qGAAgE,CAAA;IAChE,qGAAgE,CAAA;IAChE,uHAAkF,CAAA;IAClF,iHAA4E,CAAA;IAC5E,2IAAsG,CAAA;IACtG,qHAAgF,CAAA;IAChF,6GAAwE,CAAA;IACxE,uIAAkG,CAAA;AACpG,CAAC,EAdW,iCAAiC,KAAjC,iCAAiC,QAc5C;AAkDD,MAAM,OAAO,6BAA8B,SAAQ,iBAAoD;CAAG"}
@@ -1,6 +1,5 @@
1
1
  export * from "./attestationError.js";
2
2
  export * from "./attesterSlashingError.js";
3
- export * from "./blobSidecarError.js";
4
3
  export * from "./blockError.js";
5
4
  export * from "./blsToExecutionChangeError.js";
6
5
  export * from "./dataColumnSidecarError.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export * from "./attestationError.js";
2
2
  export * from "./attesterSlashingError.js";
3
- export * from "./blobSidecarError.js";
4
3
  export * from "./blockError.js";
5
4
  export * from "./blsToExecutionChangeError.js";
6
5
  export * from "./dataColumnSidecarError.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chain/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chain/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC"}
@@ -10,7 +10,17 @@ export type ForkChoiceOpts = RawForkChoiceOpts & {
10
10
  };
11
11
  export declare enum ForkchoiceCaller {
12
12
  prepareNextSlot = "prepare_next_slot",
13
- importBlock = "import_block"
13
+ importBlock = "import_block",
14
+ executionInvalid = "execution_invalid"
15
+ }
16
+ /**
17
+ * Where an execution engine INVALID verdict comes from. Only `blockSegment` verdicts are about the payload the engine
18
+ * just processed and keep the consensus failure semantics in fork choice, the others are applied leniently.
19
+ */
20
+ export declare enum ExecutionInvalidSource {
21
+ forkchoiceUpdated = "forkchoice_updated",
22
+ newPayload = "new_payload",
23
+ blockSegment = "block_segment"
14
24
  }
15
25
  /**
16
26
  * Fork Choice extended with a ChainEventEmitter
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chain/forkChoice/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAEL,UAAU,EACV,qBAAqB,EAErB,uBAAuB,EAIvB,cAAc,IAAI,iBAAiB,EACpC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,gBAAgB,EAKjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAC,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,MAAM,EAAY,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAa,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAE/C,qBAAqB,CAAC,EAAE,OAAO,UAAU,CAAC;CAC3C,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,eAAe,sBAAsB;IACrC,WAAW,iBAAiB;CAC7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE,gBAAgB,EACvB,gBAAgB,EAAE,OAAO,EACzB,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAwBZ;AAED;;GAEG;AACH,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAoFZ;AAED;;GAEG;AACH,wBAAgB,wCAAwC,CACtD,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAyIZ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chain/forkChoice/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAEL,UAAU,EACV,qBAAqB,EAErB,uBAAuB,EAIvB,cAAc,IAAI,iBAAiB,EACpC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,gBAAgB,EAKjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAC,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,MAAM,EAAY,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAa,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAE/C,qBAAqB,CAAC,EAAE,OAAO,UAAU,CAAC;CAC3C,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,eAAe,sBAAsB;IACrC,WAAW,iBAAiB;IAC5B,gBAAgB,sBAAsB;CACvC;AAED;;;GAGG;AACH,oBAAY,sBAAsB;IAChC,iBAAiB,uBAAuB;IACxC,UAAU,gBAAgB;IAC1B,YAAY,kBAAkB;CAC/B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE,gBAAgB,EACvB,gBAAgB,EAAE,OAAO,EACzB,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAwBZ;AAED;;GAEG;AACH,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAoFZ;AAED;;GAEG;AACH,wBAAgB,wCAAwC,CACtD,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,iBAAiB,EAC1B,WAAW,EAAE,IAAI,EACjB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,cAAc,EACpB,uBAAuB,EAAE,uBAAuB,EAChD,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAyIZ"}
@@ -10,7 +10,18 @@ export var ForkchoiceCaller;
10
10
  (function (ForkchoiceCaller) {
11
11
  ForkchoiceCaller["prepareNextSlot"] = "prepare_next_slot";
12
12
  ForkchoiceCaller["importBlock"] = "import_block";
13
+ ForkchoiceCaller["executionInvalid"] = "execution_invalid";
13
14
  })(ForkchoiceCaller || (ForkchoiceCaller = {}));
15
+ /**
16
+ * Where an execution engine INVALID verdict comes from. Only `blockSegment` verdicts are about the payload the engine
17
+ * just processed and keep the consensus failure semantics in fork choice, the others are applied leniently.
18
+ */
19
+ export var ExecutionInvalidSource;
20
+ (function (ExecutionInvalidSource) {
21
+ ExecutionInvalidSource["forkchoiceUpdated"] = "forkchoice_updated";
22
+ ExecutionInvalidSource["newPayload"] = "new_payload";
23
+ ExecutionInvalidSource["blockSegment"] = "block_segment";
24
+ })(ExecutionInvalidSource || (ExecutionInvalidSource = {}));
14
25
  /**
15
26
  * Fork Choice extended with a ChainEventEmitter
16
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chain/forkChoice/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chain/forkChoice/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { IForkChoice, LVHInvalidResponse } from "@lodestar/fork-choice";
2
+ import { ForkName, ForkPostFulu } from "@lodestar/params";
3
+ import { RootHex, bellatrix } from "@lodestar/types";
4
+ import { BlobAndProofV2 } from "@lodestar/types/fulu";
5
+ import { Logger } from "@lodestar/utils";
6
+ import { ExecutionPayloadBodyV2 } from "../execution/engine/types.js";
7
+ import { DATA } from "../execution/engine/utils.js";
8
+ import { ClientVersion, ExecutionEngineState, IExecutionEngine, PayloadAttributes, PayloadId, PayloadIdCache, VersionedHashes } from "../execution/index.js";
9
+ import { Metrics } from "../metrics/index.js";
10
+ import { ExecutionInvalidSource } from "./forkChoice/index.js";
11
+ export type ForkChoiceExecutionEngineModules = {
12
+ forkChoice: IForkChoice;
13
+ /** Recompute and switch the chain head, fork choice is already updated when this runs */
14
+ recomputeHeadAfterELInvalidResponse: () => void;
15
+ logger: Logger;
16
+ metrics: Metrics | null;
17
+ };
18
+ /**
19
+ * The only handle on the execution engine. Payloads are imported optimistically, so every engine verdict that can
20
+ * change fork choice is applied here.
21
+ */
22
+ export declare class ForkChoiceExecutionEngine {
23
+ private readonly engine;
24
+ private readonly forkChoice;
25
+ private readonly recomputeHeadAfterELInvalidResponse;
26
+ private readonly logger;
27
+ private readonly metrics;
28
+ constructor(engine: IExecutionEngine, modules: ForkChoiceExecutionEngineModules);
29
+ get state(): ExecutionEngineState;
30
+ get clientVersion(): ClientVersion | null | undefined;
31
+ get payloadIdCache(): PayloadIdCache;
32
+ notifyNewPayload(...args: Parameters<IExecutionEngine["notifyNewPayload"]>): ReturnType<IExecutionEngine["notifyNewPayload"]>;
33
+ /**
34
+ * `headBlockRoot` is the root of the node whose payload hash is sent as `headBlockHash`, captured by the caller
35
+ * before the call: root and hash identify the exact fork choice node, gloas variant included.
36
+ *
37
+ * The verdict is applied to fork choice before returning. An INVALID verdict throws when preparing a payload so
38
+ * block production fails, otherwise it resolves to null.
39
+ */
40
+ notifyForkchoiceUpdate(fork: ForkName, headBlockRoot: RootHex, headBlockHash: RootHex, safeBlockHash: RootHex, finalizedBlockHash: RootHex, payloadAttributes?: PayloadAttributes): Promise<PayloadId | null>;
41
+ getPayload(...args: Parameters<IExecutionEngine["getPayload"]>): ReturnType<IExecutionEngine["getPayload"]>;
42
+ getInclusionList(): Promise<bellatrix.Transactions>;
43
+ getPayloadBodiesByHashV2(blockHashes: DATA[]): Promise<(ExecutionPayloadBodyV2 | null)[]>;
44
+ getBlobs(fork: ForkPostFulu, versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<BlobAndProofV2[] | null>;
45
+ /**
46
+ * Apply an execution engine INVALID verdict to fork choice and move the chain head off the invalid chain
47
+ */
48
+ invalidateExecutionPayloads(lvh: LVHInvalidResponse, source: ExecutionInvalidSource): void;
49
+ private applyForkchoiceUpdatedResult;
50
+ }
51
+ //# sourceMappingURL=forkChoiceExecutionEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forkChoiceExecutionEngine.d.ts","sourceRoot":"","sources":["../../src/chain/forkChoiceExecutionEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,WAAW,EAAE,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAC,QAAQ,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,sBAAsB,EAAC,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAC,IAAI,EAAC,MAAM,8BAA8B,CAAC;AAClD,OAAO,EACL,aAAa,EACb,oBAAoB,EAGpB,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAC,sBAAsB,EAAC,MAAM,uBAAuB,CAAC;AAE7D,MAAM,MAAM,gCAAgC,GAAG;IAC7C,UAAU,EAAE,WAAW,CAAC;IACxB,yFAAyF;IACzF,mCAAmC,EAAE,MAAM,IAAI,CAAC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,qBAAa,yBAAyB;IAOlC,OAAO,CAAC,QAAQ,CAAC,MAAM;IANzB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,QAAQ,CAAC,mCAAmC,CAAa;IACjE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IAEzC,YACmB,MAAM,EAAE,gBAAgB,EACzC,OAAO,EAAE,gCAAgC,EAM1C;IAED,IAAI,KAAK,IAAI,oBAAoB,CAEhC;IAED,IAAI,aAAa,IAAI,aAAa,GAAG,IAAI,GAAG,SAAS,CAEpD;IAED,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,gBAAgB,CACd,GAAG,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,GACxD,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAElD;IAED;;;;;;OAMG;IACG,sBAAsB,CAC1B,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAiB3B;IAED,UAAU,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,GAAG,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAE1G;IAED,gBAAgB,IAAI,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAElD;IAED,wBAAwB,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC,EAAE,CAAC,CAExF;IAED,QAAQ,CACN,IAAI,EAAE,YAAY,EAClB,eAAe,EAAE,eAAe,EAChC,OAAO,CAAC,EAAE,UAAU,EAAE,GACrB,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAElC;IAED;;OAEG;IACH,2BAA2B,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAoBzF;IAED,OAAO,CAAC,4BAA4B;CAqCrC"}
@@ -0,0 +1,117 @@
1
+ import { ExecutionStatus } from "@lodestar/fork-choice";
2
+ import { ExecutionPayloadStatus, } from "../execution/index.js";
3
+ import { ExecutionInvalidSource } from "./forkChoice/index.js";
4
+ /**
5
+ * The only handle on the execution engine. Payloads are imported optimistically, so every engine verdict that can
6
+ * change fork choice is applied here.
7
+ */
8
+ export class ForkChoiceExecutionEngine {
9
+ engine;
10
+ forkChoice;
11
+ recomputeHeadAfterELInvalidResponse;
12
+ logger;
13
+ metrics;
14
+ constructor(engine, modules) {
15
+ this.engine = engine;
16
+ this.forkChoice = modules.forkChoice;
17
+ this.recomputeHeadAfterELInvalidResponse = modules.recomputeHeadAfterELInvalidResponse;
18
+ this.logger = modules.logger;
19
+ this.metrics = modules.metrics;
20
+ }
21
+ get state() {
22
+ return this.engine.state;
23
+ }
24
+ get clientVersion() {
25
+ return this.engine.clientVersion;
26
+ }
27
+ get payloadIdCache() {
28
+ return this.engine.payloadIdCache;
29
+ }
30
+ notifyNewPayload(...args) {
31
+ return this.engine.notifyNewPayload(...args);
32
+ }
33
+ /**
34
+ * `headBlockRoot` is the root of the node whose payload hash is sent as `headBlockHash`, captured by the caller
35
+ * before the call: root and hash identify the exact fork choice node, gloas variant included.
36
+ *
37
+ * The verdict is applied to fork choice before returning. An INVALID verdict throws when preparing a payload so
38
+ * block production fails, otherwise it resolves to null.
39
+ */
40
+ async notifyForkchoiceUpdate(fork, headBlockRoot, headBlockHash, safeBlockHash, finalizedBlockHash, payloadAttributes) {
41
+ const result = await this.engine.notifyForkchoiceUpdate(fork, headBlockHash, safeBlockHash, finalizedBlockHash, payloadAttributes);
42
+ this.applyForkchoiceUpdatedResult(headBlockRoot, headBlockHash, result);
43
+ if (result.payloadStatus.status === ExecutionPayloadStatus.INVALID) {
44
+ if (payloadAttributes) {
45
+ throw Error(`Invalid prepare payload, validationError=${result.payloadStatus.validationError ?? ""}`);
46
+ }
47
+ return null;
48
+ }
49
+ return result.payloadId;
50
+ }
51
+ getPayload(...args) {
52
+ return this.engine.getPayload(...args);
53
+ }
54
+ getInclusionList() {
55
+ return this.engine.getInclusionList();
56
+ }
57
+ getPayloadBodiesByHashV2(blockHashes) {
58
+ return this.engine.getPayloadBodiesByHashV2(blockHashes);
59
+ }
60
+ getBlobs(fork, versionedHashes, buffers) {
61
+ return this.engine.getBlobs(fork, versionedHashes, buffers);
62
+ }
63
+ /**
64
+ * Apply an execution engine INVALID verdict to fork choice and move the chain head off the invalid chain
65
+ */
66
+ invalidateExecutionPayloads(lvh, source) {
67
+ const logCtx = {
68
+ source,
69
+ blockRoot: lvh.invalidateFromParentBlockRoot,
70
+ blockHash: lvh.invalidateFromParentBlockHash,
71
+ latestValidHash: lvh.latestValidExecHash ?? "null",
72
+ };
73
+ const applied = this.forkChoice.validateLatestHash(lvh, { strict: source === ExecutionInvalidSource.blockSegment });
74
+ if (!applied) {
75
+ this.logger.warn("Execution engine INVALID verdict not applied to fork choice", logCtx);
76
+ return;
77
+ }
78
+ this.metrics?.forkChoice.executionInvalidations.inc({ source });
79
+ this.logger.warn("Invalidated execution payloads in fork choice", logCtx);
80
+ try {
81
+ this.recomputeHeadAfterELInvalidResponse();
82
+ }
83
+ catch (e) {
84
+ this.logger.error("Error recomputing head after execution payload invalidation", logCtx, e);
85
+ }
86
+ }
87
+ applyForkchoiceUpdatedResult(headBlockRoot, headBlockHash, result) {
88
+ const { status, latestValidHash, validationError } = result.payloadStatus;
89
+ const executionStatus = this.forkChoice.getBlockHexAndBlockHash(headBlockRoot, headBlockHash)?.executionStatus;
90
+ try {
91
+ if (status === ExecutionPayloadStatus.INVALID) {
92
+ if (executionStatus === ExecutionStatus.Invalid) {
93
+ return;
94
+ }
95
+ this.logger.error("Execution engine reported INVALID forkchoice head", {
96
+ headBlockRoot,
97
+ headBlockHash,
98
+ latestValidHash: latestValidHash ?? "null",
99
+ validationError: validationError ?? "",
100
+ });
101
+ this.invalidateExecutionPayloads({
102
+ executionStatus: ExecutionStatus.Invalid,
103
+ latestValidExecHash: latestValidHash,
104
+ invalidateFromParentBlockRoot: headBlockRoot,
105
+ invalidateFromParentBlockHash: headBlockHash,
106
+ }, ExecutionInvalidSource.forkchoiceUpdated);
107
+ }
108
+ else if (status === ExecutionPayloadStatus.VALID && executionStatus === ExecutionStatus.Syncing) {
109
+ this.forkChoice.validateLatestHash({ executionStatus: ExecutionStatus.Valid, latestValidExecHash: headBlockHash, blockRoot: headBlockRoot }, { strict: false });
110
+ }
111
+ }
112
+ catch (e) {
113
+ this.logger.error("Error applying forkchoice update result", { headBlockRoot, headBlockHash, status }, e);
114
+ }
115
+ }
116
+ }
117
+ //# sourceMappingURL=forkChoiceExecutionEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forkChoiceExecutionEngine.js","sourceRoot":"","sources":["../../src/chain/forkChoiceExecutionEngine.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { type PubkeyCache } from "@chainsafe/lodestar-z/pubkeys";
2
1
  import { Type } from "@chainsafe/ssz";
3
2
  import { BeaconConfig } from "@lodestar/config";
4
3
  import { CheckpointWithHex, IForkChoice, ProtoBlock } from "@lodestar/fork-choice";
4
+ import { type PubkeyCache } from "@lodestar/native/pubkeys";
5
5
  import { EpochShuffling, IBeaconStateView } from "@lodestar/state-transition";
6
6
  import { BeaconBlock, BlindedBeaconBlock, DataColumnSidecar, Epoch, Root, RootHex, SignedBeaconBlock, Slot, Status, UintNum64, ValidatorIndex, Wei, altair, capella, deneb, gloas, phase0, rewards } from "@lodestar/types";
7
7
  import { Logger } from "@lodestar/utils";
8
8
  import { BuilderApiClient } from "../execution/builder/apiClient.js";
9
- import { IExecutionBuilder, IExecutionEngine } from "../execution/index.js";
9
+ import { IExecutionBuilder } from "../execution/index.js";
10
10
  import { Metrics } from "../metrics/metrics.js";
11
11
  import { BufferPool } from "../util/bufferPool.js";
12
12
  import { IClock } from "../util/clock.js";
@@ -23,12 +23,14 @@ import { BuilderCircuitBreaker } from "./builderCircuitBreaker.js";
23
23
  import { ColumnReconstructionTracker } from "./ColumnReconstructionTracker.js";
24
24
  import { ChainEventEmitter } from "./emitter.js";
25
25
  import { ForkchoiceCaller } from "./forkChoice/index.js";
26
+ import { ForkChoiceExecutionEngine } from "./forkChoiceExecutionEngine.js";
26
27
  import { GetBlobsTracker } from "./GetBlobsTracker.js";
27
28
  import { LightClientServer } from "./lightClient/index.js";
28
29
  import { AggregatedAttestationPool } from "./opPools/aggregatedAttestationPool.js";
29
- import { AttestationPool, DeferredVoluntaryExitPool, ExecutionPayloadBidPool, InclusionListStore, OpPool, PayloadAttestationPool, ProposerPreferencesPool, SyncCommitteeMessagePool, SyncContributionAndProofPool } from "./opPools/index.js";
30
+ import { AttestationPool, DeferredVoluntaryExitPool, ExecutionPayloadBidPool, InclusionListStore, OpPool, PayloadAttestationPool, ProposerPreferencesPool, SingleAttestationPool, SyncCommitteeMessagePool, SyncContributionAndProofPool } from "./opPools/index.js";
30
31
  import { IChainOptions } from "./options.js";
31
32
  import { AssembledBlockType, BlockAttributes, BlockType, ProduceResult } from "./produceBlock/produceBlockBody.js";
33
+ import { ProposerTracker } from "./proposerTracker.js";
32
34
  import { IStateRegenerator, RegenCaller } from "./regen/index.js";
33
35
  import { ReprocessController } from "./reprocess.js";
34
36
  import { SeenAggregators, SeenAttesters, SeenBlockProposers, SeenContributionAndProof, SeenExecutionPayloadBids, SeenPayloadAttesters, SeenSyncCommitteeMessages } from "./seenCache/index.js";
@@ -39,8 +41,7 @@ import { SeenBlockInput } from "./seenCache/seenGossipBlockInput.js";
39
41
  import { PayloadEnvelopeInput, SeenPayloadEnvelopeInput } from "./seenCache/seenPayloadEnvelopeInput.js";
40
42
  import { ShufflingCache } from "./shufflingCache.js";
41
43
  import { ValidatorMonitor } from "./validatorMonitor.js";
42
- export { BlockType, type AssembledBlockType };
43
- export { type ProposerPreparationData };
44
+ export { type AssembledBlockType, BlockType, type ProposerPreparationData };
44
45
  export type BlockHash = RootHex;
45
46
  export type StateGetOpts = {
46
47
  allowRegen: boolean;
@@ -58,7 +59,7 @@ export interface IBeaconChain {
58
59
  readonly genesisTime: UintNum64;
59
60
  readonly genesisValidatorsRoot: Root;
60
61
  earliestAvailableSlot: Slot;
61
- readonly executionEngine: IExecutionEngine;
62
+ readonly executionEngine: ForkChoiceExecutionEngine;
62
63
  readonly executionBuilder?: IExecutionBuilder;
63
64
  readonly builderCircuitBreaker: BuilderCircuitBreaker;
64
65
  readonly builderApiClient: BuilderApiClient;
@@ -81,6 +82,8 @@ export interface IBeaconChain {
81
82
  readonly archiveStore: IArchiveStore;
82
83
  readonly attestationPool: AttestationPool;
83
84
  readonly aggregatedAttestationPool: AggregatedAttestationPool;
85
+ readonly singleAttestationPool: SingleAttestationPool;
86
+ readonly proposerTracker: ProposerTracker;
84
87
  readonly syncCommitteeMessagePool: SyncCommitteeMessagePool;
85
88
  readonly syncContributionAndProofPool: SyncContributionAndProofPool;
86
89
  readonly executionPayloadBidPool: ExecutionPayloadBidPool;
@@ -185,7 +188,6 @@ export interface IBeaconChain {
185
188
  finalized: boolean;
186
189
  } | null>;
187
190
  getBlobSidecars(blockSlot: Slot, blockRootHex: string): Promise<deneb.BlobSidecars | null>;
188
- getSerializedBlobSidecars(blockSlot: Slot, blockRootHex: string): Promise<Uint8Array | null>;
189
191
  getDataColumnSidecars(blockSlot: Slot, blockRootHex: string): Promise<DataColumnSidecar[]>;
190
192
  getSerializedDataColumnSidecars(blockSlot: Slot, blockRootHex: string, indices: number[]): Promise<(Uint8Array | undefined)[]>;
191
193
  getSerializedExecutionPayloadEnvelope(blockSlot: Slot, blockRootHex: string): Promise<Uint8Array | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/chain/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/chain/interface.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/chain/interface.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAsC,SAAS,EAAgB,MAAM,oCAAoC,CAAC;AAoBjH,OAAO,EAAC,SAAS,EAA0B,CAAC;AAQ5C,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,qEAAmD,CAAA;IACnD,6DAA2C,CAAA;IAC3C,qDAAmC,CAAA;AACrC,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB"}
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/chain/interface.ts"],"names":[],"mappings":"AA6DA,OAAO,EAAsC,SAAS,EAAgB,MAAM,oCAAoC,CAAC;AAqBjH,OAAO,EAA0B,SAAS,EAA+B,CAAC;AAO1E,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,qEAAmD,CAAA;IACnD,6DAA2C,CAAA;IAC3C,qDAAmC,CAAA;AACrC,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB"}
@@ -6,6 +6,7 @@ import { Attestation, Epoch, RootHex, Slot, electra, phase0 } from "@lodestar/ty
6
6
  import { Logger } from "@lodestar/utils";
7
7
  import { Metrics } from "../../metrics/metrics.js";
8
8
  import { ShufflingCache } from "../shufflingCache.js";
9
+ import { SingleAttestationPool, SinglesForCommittee } from "./singleAttestationPool.js";
9
10
  import { InsertOutcome } from "./types.js";
10
11
  type CommitteeIndex = number;
11
12
  /**
@@ -14,12 +15,23 @@ type CommitteeIndex = number;
14
15
  */
15
16
  export type AttestationsConsolidation = {
16
17
  byCommittee: Map<CommitteeIndex, AttestationNonParticipant>;
18
+ /**
19
+ * Single attestations of committee members that no aggregate in `byCommittee` covers, a committee may have both.
20
+ * Disjoint from `byCommittee` by construction so the signatures can be aggregated together
21
+ */
22
+ singlesByCommittee: Map<CommitteeIndex, SinglesForCommittee>;
17
23
  attData: phase0.AttestationData;
18
24
  totalNewSeenEffectiveBalance: number;
19
25
  newSeenAttesters: number;
20
26
  notSeenAttesters: number;
21
27
  /** total number of attesters across all committees in this consolidation */
22
28
  totalAttesters: number;
29
+ /** part of `totalNewSeenEffectiveBalance` contributed by `singlesByCommittee` */
30
+ singlesNewSeenEffectiveBalance: number;
31
+ /** part of `newSeenAttesters` contributed by `singlesByCommittee` */
32
+ singlesNewSeenAttesters: number;
33
+ /** sum of participation flag weights this consolidation earns, set when scoring */
34
+ weight: number;
23
35
  };
24
36
  /**
25
37
  * This function returns not seen participation for a given epoch and slot and committee index.
@@ -67,11 +79,12 @@ export declare class AggregatedAttestationPool {
67
79
  add(attestation: Attestation, dataRootHex: RootHex, attestingIndicesCount: number, committee: Uint32Array): InsertOutcome;
68
80
  /** Remove attestations which are too old to be included in a block. */
69
81
  prune(clockSlot: Slot): void;
70
- getAttestationsForBlock(fork: ForkName, forkChoice: IForkChoice, shufflingCache: ShufflingCache, state: IBeaconStateView): Attestation[];
82
+ getAttestationsForBlock(fork: ForkName, forkChoice: IForkChoice, shufflingCache: ShufflingCache, state: IBeaconStateView, singleAttestationPool: SingleAttestationPool): Attestation[];
71
83
  /**
72
- * Get attestations to be included in an electra block. Returns up to $MAX_ATTESTATIONS_ELECTRA items
84
+ * Get attestations to be included in an electra block. Returns up to $MAX_ATTESTATIONS_ELECTRA items.
85
+ * Single attestations fill committee members that no picked aggregate covers, see `addSinglesToConsolidation`
73
86
  */
74
- getAttestationsForBlockElectra(fork: ForkName, forkChoice: IForkChoice, shufflingCache: ShufflingCache, state: IBeaconStateView): electra.Attestation[];
87
+ getAttestationsForBlockElectra(fork: ForkName, forkChoice: IForkChoice, shufflingCache: ShufflingCache, state: IBeaconStateView, singleAttestationPool: SingleAttestationPool): electra.Attestation[];
75
88
  /**
76
89
  * Get all attestations optionally filtered by `attestation.data.slot`
77
90
  * Note this function is not fork aware and can potentially return a mix
@@ -136,7 +149,7 @@ export declare function aggregateInto(attestation1: AttestationWithIndex, attest
136
149
  * attestation data from different committee into a single attestation
137
150
  * https://github.com/ethereum/consensus-specs/blob/aba6345776aa876dad368cab27fbbb23fae20455/specs/_features/eip7549/validator.md?plain=1#L39
138
151
  */
139
- export declare function aggregateConsolidation({ byCommittee, attData }: AttestationsConsolidation): electra.Attestation;
152
+ export declare function aggregateConsolidation({ byCommittee, singlesByCommittee, attData, }: AttestationsConsolidation): electra.Attestation;
140
153
  /**
141
154
  * Pre-compute participation from a IBeaconStateView, for use to check if an attestation's committee
142
155
  * has already attested or not.
@@ -1 +1 @@
1
- {"version":3,"file":"aggregatedAttestationPool.d.ts","sourceRoot":"","sources":["../../../src/chain/opPools/aggregatedAttestationPool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aggregatedAttestationPool.d.ts","sourceRoot":"","sources":["../../../src/chain/opPools/aggregatedAttestationPool.ts"],"names":[],"mappings":"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"}