@lodestar/beacon-node 1.51.0-dev.1b1888604e → 1.51.0-dev.2531f8fae8

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 (336) hide show
  1. package/lib/api/impl/api.js +1 -1
  2. package/lib/api/impl/api.js.map +1 -1
  3. package/lib/api/impl/beacon/blocks/index.d.ts +2 -1
  4. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  5. package/lib/api/impl/beacon/blocks/index.js +24 -32
  6. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  7. package/lib/api/impl/beacon/index.d.ts +2 -1
  8. package/lib/api/impl/beacon/index.d.ts.map +1 -1
  9. package/lib/api/impl/beacon/index.js +2 -2
  10. package/lib/api/impl/beacon/index.js.map +1 -1
  11. package/lib/api/impl/beacon/pool/index.d.ts.map +1 -1
  12. package/lib/api/impl/beacon/pool/index.js +5 -2
  13. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  14. package/lib/api/impl/beacon/state/index.d.ts.map +1 -1
  15. package/lib/api/impl/beacon/state/index.js +8 -2
  16. package/lib/api/impl/beacon/state/index.js.map +1 -1
  17. package/lib/api/impl/beacon/state/utils.d.ts +2 -1
  18. package/lib/api/impl/beacon/state/utils.d.ts.map +1 -1
  19. package/lib/api/impl/beacon/state/utils.js +17 -9
  20. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  21. package/lib/api/impl/debug/index.d.ts.map +1 -1
  22. package/lib/api/impl/debug/index.js +3 -0
  23. package/lib/api/impl/debug/index.js.map +1 -1
  24. package/lib/api/impl/validator/index.d.ts.map +1 -1
  25. package/lib/api/impl/validator/index.js +104 -9
  26. package/lib/api/impl/validator/index.js.map +1 -1
  27. package/lib/api/options.d.ts +2 -0
  28. package/lib/api/options.d.ts.map +1 -1
  29. package/lib/api/options.js +1 -0
  30. package/lib/api/options.js.map +1 -1
  31. package/lib/chain/GetBlobsTracker.d.ts +11 -0
  32. package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
  33. package/lib/chain/GetBlobsTracker.js +83 -27
  34. package/lib/chain/GetBlobsTracker.js.map +1 -1
  35. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  36. package/lib/chain/archiveStore/archiveStore.js +1 -0
  37. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  38. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts +4 -0
  39. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +1 -1
  40. package/lib/chain/archiveStore/utils/archiveBlocks.js +61 -97
  41. package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
  42. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  43. package/lib/chain/blocks/importBlock.js +9 -7
  44. package/lib/chain/blocks/importBlock.js.map +1 -1
  45. package/lib/chain/blocks/importExecutionPayload.d.ts +4 -1
  46. package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -1
  47. package/lib/chain/blocks/importExecutionPayload.js +57 -4
  48. package/lib/chain/blocks/importExecutionPayload.js.map +1 -1
  49. package/lib/chain/blocks/index.js +2 -2
  50. package/lib/chain/blocks/index.js.map +1 -1
  51. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts +5 -5
  52. package/lib/chain/blocks/payloadEnvelopeProcessor.js +7 -7
  53. package/lib/chain/blocks/payloadEnvelopeProcessor.js.map +1 -1
  54. package/lib/chain/blocks/types.d.ts +4 -0
  55. package/lib/chain/blocks/types.d.ts.map +1 -1
  56. package/lib/chain/blocks/types.js +5 -0
  57. package/lib/chain/blocks/types.js.map +1 -1
  58. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  59. package/lib/chain/blocks/verifyBlock.js +1 -1
  60. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  61. package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts.map +1 -1
  62. package/lib/chain/blocks/verifyBlocksDataAvailability.js +8 -1
  63. package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
  64. package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts +3 -3
  65. package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts.map +1 -1
  66. package/lib/chain/blocks/verifyPayloadsDataAvailability.js +13 -6
  67. package/lib/chain/blocks/verifyPayloadsDataAvailability.js.map +1 -1
  68. package/lib/chain/bls/multithread/index.js +5 -5
  69. package/lib/chain/bls/multithread/index.js.map +1 -1
  70. package/lib/chain/chain.d.ts +2 -1
  71. package/lib/chain/chain.d.ts.map +1 -1
  72. package/lib/chain/chain.js +8 -5
  73. package/lib/chain/chain.js.map +1 -1
  74. package/lib/chain/errors/blockError.d.ts +1 -1
  75. package/lib/chain/errors/blockError.d.ts.map +1 -1
  76. package/lib/chain/errors/blockError.js +1 -1
  77. package/lib/chain/errors/blockError.js.map +1 -1
  78. package/lib/chain/errors/executionPayloadBid.d.ts +11 -1
  79. package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -1
  80. package/lib/chain/errors/executionPayloadBid.js +2 -0
  81. package/lib/chain/errors/executionPayloadBid.js.map +1 -1
  82. package/lib/chain/errors/inclusionList.d.ts +60 -0
  83. package/lib/chain/errors/inclusionList.d.ts.map +1 -0
  84. package/lib/chain/errors/inclusionList.js +19 -0
  85. package/lib/chain/errors/inclusionList.js.map +1 -0
  86. package/lib/chain/errors/index.d.ts +1 -0
  87. package/lib/chain/errors/index.d.ts.map +1 -1
  88. package/lib/chain/errors/index.js +1 -0
  89. package/lib/chain/errors/index.js.map +1 -1
  90. package/lib/chain/interface.d.ts +3 -3
  91. package/lib/chain/interface.d.ts.map +1 -1
  92. package/lib/chain/interface.js.map +1 -1
  93. package/lib/chain/opPools/inclusionListStore.d.ts +63 -0
  94. package/lib/chain/opPools/inclusionListStore.d.ts.map +1 -0
  95. package/lib/chain/opPools/inclusionListStore.js +171 -0
  96. package/lib/chain/opPools/inclusionListStore.js.map +1 -0
  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/options.d.ts +0 -1
  102. package/lib/chain/options.d.ts.map +1 -1
  103. package/lib/chain/options.js +0 -1
  104. package/lib/chain/options.js.map +1 -1
  105. package/lib/chain/produceBlock/produceBlockBody.d.ts +3 -1
  106. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  107. package/lib/chain/produceBlock/produceBlockBody.js +30 -10
  108. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  109. package/lib/chain/regen/interface.d.ts +1 -1
  110. package/lib/chain/regen/interface.d.ts.map +1 -1
  111. package/lib/chain/regen/interface.js +1 -1
  112. package/lib/chain/regen/interface.js.map +1 -1
  113. package/lib/chain/validation/executionPayloadBid.d.ts +0 -15
  114. package/lib/chain/validation/executionPayloadBid.d.ts.map +1 -1
  115. package/lib/chain/validation/executionPayloadBid.js +24 -145
  116. package/lib/chain/validation/executionPayloadBid.js.map +1 -1
  117. package/lib/chain/validation/inclusionList.d.ts +14 -0
  118. package/lib/chain/validation/inclusionList.d.ts.map +1 -0
  119. package/lib/chain/validation/inclusionList.js +150 -0
  120. package/lib/chain/validation/inclusionList.js.map +1 -0
  121. package/lib/chain/validation/index.d.ts +1 -0
  122. package/lib/chain/validation/index.d.ts.map +1 -1
  123. package/lib/chain/validation/index.js +1 -0
  124. package/lib/chain/validation/index.js.map +1 -1
  125. package/lib/db/beacon.d.ts +7 -0
  126. package/lib/db/beacon.d.ts.map +1 -1
  127. package/lib/db/beacon.js +34 -0
  128. package/lib/db/beacon.js.map +1 -1
  129. package/lib/db/dataColumnStore.d.ts +1 -1
  130. package/lib/db/dataColumnStore.d.ts.map +1 -1
  131. package/lib/db/dataColumnStore.js +1 -4
  132. package/lib/db/dataColumnStore.js.map +1 -1
  133. package/lib/db/interface.d.ts +1 -0
  134. package/lib/db/interface.d.ts.map +1 -1
  135. package/lib/db/repositories/dataColumnSidecarArchive.d.ts +6 -0
  136. package/lib/db/repositories/dataColumnSidecarArchive.d.ts.map +1 -1
  137. package/lib/db/repositories/dataColumnSidecarArchive.js +19 -0
  138. package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
  139. package/lib/execution/builder/validateBid.d.ts.map +1 -1
  140. package/lib/execution/builder/validateBid.js +14 -1
  141. package/lib/execution/builder/validateBid.js.map +1 -1
  142. package/lib/execution/engine/blobVersionedHashes.d.ts +1 -1
  143. package/lib/execution/engine/blobVersionedHashes.d.ts.map +1 -1
  144. package/lib/execution/engine/blobVersionedHashes.js.map +1 -1
  145. package/lib/execution/engine/disabled.d.ts +1 -0
  146. package/lib/execution/engine/disabled.d.ts.map +1 -1
  147. package/lib/execution/engine/disabled.js +3 -0
  148. package/lib/execution/engine/disabled.js.map +1 -1
  149. package/lib/execution/engine/http.d.ts +8 -2
  150. package/lib/execution/engine/http.d.ts.map +1 -1
  151. package/lib/execution/engine/http.js +27 -4
  152. package/lib/execution/engine/http.js.map +1 -1
  153. package/lib/execution/engine/index.d.ts +1 -1
  154. package/lib/execution/engine/index.d.ts.map +1 -1
  155. package/lib/execution/engine/index.js +1 -1
  156. package/lib/execution/engine/index.js.map +1 -1
  157. package/lib/execution/engine/interface.d.ts +12 -3
  158. package/lib/execution/engine/interface.d.ts.map +1 -1
  159. package/lib/execution/engine/interface.js.map +1 -1
  160. package/lib/execution/engine/jsonRpcTransport.d.ts +3 -2
  161. package/lib/execution/engine/jsonRpcTransport.d.ts.map +1 -1
  162. package/lib/execution/engine/jsonRpcTransport.js +33 -9
  163. package/lib/execution/engine/jsonRpcTransport.js.map +1 -1
  164. package/lib/execution/engine/mock.d.ts +1 -0
  165. package/lib/execution/engine/mock.d.ts.map +1 -1
  166. package/lib/execution/engine/mock.js +31 -7
  167. package/lib/execution/engine/mock.js.map +1 -1
  168. package/lib/execution/engine/payloadIdCache.d.ts +5 -3
  169. package/lib/execution/engine/payloadIdCache.d.ts.map +1 -1
  170. package/lib/execution/engine/payloadIdCache.js +15 -4
  171. package/lib/execution/engine/payloadIdCache.js.map +1 -1
  172. package/lib/execution/engine/restTransport.d.ts +2 -1
  173. package/lib/execution/engine/restTransport.d.ts.map +1 -1
  174. package/lib/execution/engine/restTransport.js +3 -0
  175. package/lib/execution/engine/restTransport.js.map +1 -1
  176. package/lib/execution/engine/sszTypes.d.ts +38 -38
  177. package/lib/execution/engine/transport.d.ts +5 -2
  178. package/lib/execution/engine/transport.d.ts.map +1 -1
  179. package/lib/execution/engine/types.d.ts +25 -1
  180. package/lib/execution/engine/types.d.ts.map +1 -1
  181. package/lib/execution/engine/types.js +17 -4
  182. package/lib/execution/engine/types.js.map +1 -1
  183. package/lib/index.d.ts +1 -0
  184. package/lib/index.d.ts.map +1 -1
  185. package/lib/index.js +2 -0
  186. package/lib/index.js.map +1 -1
  187. package/lib/metrics/metrics/beacon.d.ts +16 -0
  188. package/lib/metrics/metrics/beacon.d.ts.map +1 -1
  189. package/lib/metrics/metrics/beacon.js +35 -0
  190. package/lib/metrics/metrics/beacon.js.map +1 -1
  191. package/lib/metrics/metrics/lodestar.d.ts +12 -0
  192. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  193. package/lib/metrics/metrics/lodestar.js +25 -0
  194. package/lib/metrics/metrics/lodestar.js.map +1 -1
  195. package/lib/monitoring/service.js +1 -1
  196. package/lib/monitoring/service.js.map +1 -1
  197. package/lib/network/gossip/interface.d.ts +8 -2
  198. package/lib/network/gossip/interface.d.ts.map +1 -1
  199. package/lib/network/gossip/interface.js +1 -0
  200. package/lib/network/gossip/interface.js.map +1 -1
  201. package/lib/network/gossip/topic.d.ts +13 -5
  202. package/lib/network/gossip/topic.d.ts.map +1 -1
  203. package/lib/network/gossip/topic.js +13 -1
  204. package/lib/network/gossip/topic.js.map +1 -1
  205. package/lib/network/interface.d.ts +2 -1
  206. package/lib/network/interface.d.ts.map +1 -1
  207. package/lib/network/network.d.ts +2 -1
  208. package/lib/network/network.d.ts.map +1 -1
  209. package/lib/network/network.js +8 -1
  210. package/lib/network/network.js.map +1 -1
  211. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  212. package/lib/network/processor/gossipHandlers.js +73 -22
  213. package/lib/network/processor/gossipHandlers.js.map +1 -1
  214. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  215. package/lib/network/processor/gossipQueues/index.js +6 -0
  216. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  217. package/lib/network/processor/gossipValidatorFn.d.ts.map +1 -1
  218. package/lib/network/processor/gossipValidatorFn.js +5 -1
  219. package/lib/network/processor/gossipValidatorFn.js.map +1 -1
  220. package/lib/network/processor/index.d.ts.map +1 -1
  221. package/lib/network/processor/index.js +27 -25
  222. package/lib/network/processor/index.js.map +1 -1
  223. package/lib/network/reqresp/ReqRespBeaconNode.d.ts.map +1 -1
  224. package/lib/network/reqresp/ReqRespBeaconNode.js +6 -0
  225. package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
  226. package/lib/network/reqresp/handlers/inclusionListsByIndices.d.ts +10 -0
  227. package/lib/network/reqresp/handlers/inclusionListsByIndices.d.ts.map +1 -0
  228. package/lib/network/reqresp/handlers/inclusionListsByIndices.js +30 -0
  229. package/lib/network/reqresp/handlers/inclusionListsByIndices.js.map +1 -0
  230. package/lib/network/reqresp/handlers/index.d.ts.map +1 -1
  231. package/lib/network/reqresp/handlers/index.js +5 -0
  232. package/lib/network/reqresp/handlers/index.js.map +1 -1
  233. package/lib/network/reqresp/protocols.d.ts +1 -0
  234. package/lib/network/reqresp/protocols.d.ts.map +1 -1
  235. package/lib/network/reqresp/protocols.js +5 -0
  236. package/lib/network/reqresp/protocols.js.map +1 -1
  237. package/lib/network/reqresp/rateLimit.d.ts.map +1 -1
  238. package/lib/network/reqresp/rateLimit.js +4 -0
  239. package/lib/network/reqresp/rateLimit.js.map +1 -1
  240. package/lib/network/reqresp/types.d.ts +5 -2
  241. package/lib/network/reqresp/types.d.ts.map +1 -1
  242. package/lib/network/reqresp/types.js +3 -0
  243. package/lib/network/reqresp/types.js.map +1 -1
  244. package/lib/node/nodejs.d.ts.map +1 -1
  245. package/lib/node/nodejs.js +9 -1
  246. package/lib/node/nodejs.js.map +1 -1
  247. package/lib/node/options.d.ts +1 -1
  248. package/lib/node/options.d.ts.map +1 -1
  249. package/lib/node/options.js +1 -1
  250. package/lib/node/options.js.map +1 -1
  251. package/lib/sync/interface.d.ts.map +1 -1
  252. package/lib/sync/interface.js.map +1 -1
  253. package/lib/sync/unknownBlock.d.ts.map +1 -1
  254. package/lib/sync/unknownBlock.js +42 -18
  255. package/lib/sync/unknownBlock.js.map +1 -1
  256. package/lib/util/queue/itemQueue.js +1 -1
  257. package/lib/util/queue/itemQueue.js.map +1 -1
  258. package/lib/util/sszBytes.js +2 -2
  259. package/lib/util/sszBytes.js.map +1 -1
  260. package/package.json +30 -30
  261. package/src/api/impl/api.ts +1 -1
  262. package/src/api/impl/beacon/blocks/index.ts +51 -60
  263. package/src/api/impl/beacon/index.ts +3 -1
  264. package/src/api/impl/beacon/pool/index.ts +5 -1
  265. package/src/api/impl/beacon/state/index.ts +10 -1
  266. package/src/api/impl/beacon/state/utils.ts +19 -9
  267. package/src/api/impl/debug/index.ts +4 -0
  268. package/src/api/impl/validator/index.ts +134 -9
  269. package/src/api/options.ts +3 -0
  270. package/src/chain/GetBlobsTracker.ts +95 -38
  271. package/src/chain/archiveStore/archiveStore.ts +1 -0
  272. package/src/chain/archiveStore/utils/archiveBlocks.ts +76 -130
  273. package/src/chain/blocks/importBlock.ts +11 -14
  274. package/src/chain/blocks/importExecutionPayload.ts +80 -4
  275. package/src/chain/blocks/index.ts +6 -2
  276. package/src/chain/blocks/payloadEnvelopeProcessor.ts +7 -7
  277. package/src/chain/blocks/types.ts +5 -0
  278. package/src/chain/blocks/verifyBlock.ts +1 -0
  279. package/src/chain/blocks/verifyBlocksDataAvailability.ts +10 -1
  280. package/src/chain/blocks/verifyPayloadsDataAvailability.ts +16 -6
  281. package/src/chain/bls/multithread/index.ts +5 -5
  282. package/src/chain/chain.ts +8 -4
  283. package/src/chain/errors/blockError.ts +1 -1
  284. package/src/chain/errors/executionPayloadBid.ts +12 -0
  285. package/src/chain/errors/inclusionList.ts +38 -0
  286. package/src/chain/errors/index.ts +1 -0
  287. package/src/chain/interface.ts +3 -2
  288. package/src/chain/opPools/inclusionListStore.ts +208 -0
  289. package/src/chain/opPools/index.ts +1 -0
  290. package/src/chain/options.ts +0 -2
  291. package/src/chain/produceBlock/produceBlockBody.ts +60 -19
  292. package/src/chain/regen/interface.ts +1 -1
  293. package/src/chain/validation/executionPayloadBid.ts +40 -170
  294. package/src/chain/validation/inclusionList.ts +192 -0
  295. package/src/chain/validation/index.ts +1 -0
  296. package/src/db/beacon.ts +44 -0
  297. package/src/db/dataColumnStore.ts +2 -4
  298. package/src/db/interface.ts +2 -0
  299. package/src/db/repositories/dataColumnSidecarArchive.ts +20 -0
  300. package/src/execution/builder/validateBid.ts +23 -2
  301. package/src/execution/engine/blobVersionedHashes.ts +1 -1
  302. package/src/execution/engine/disabled.ts +4 -0
  303. package/src/execution/engine/http.ts +40 -5
  304. package/src/execution/engine/index.ts +1 -1
  305. package/src/execution/engine/interface.ts +28 -4
  306. package/src/execution/engine/jsonRpcTransport.ts +46 -9
  307. package/src/execution/engine/mock.ts +32 -7
  308. package/src/execution/engine/payloadIdCache.ts +24 -6
  309. package/src/execution/engine/restTransport.ts +15 -1
  310. package/src/execution/engine/transport.ts +7 -2
  311. package/src/execution/engine/types.ts +41 -6
  312. package/src/index.ts +2 -0
  313. package/src/metrics/metrics/beacon.ts +37 -0
  314. package/src/metrics/metrics/lodestar.ts +26 -0
  315. package/src/monitoring/service.ts +1 -1
  316. package/src/network/gossip/interface.ts +5 -0
  317. package/src/network/gossip/topic.ts +14 -0
  318. package/src/network/interface.ts +2 -0
  319. package/src/network/network.ts +14 -1
  320. package/src/network/processor/gossipHandlers.ts +93 -24
  321. package/src/network/processor/gossipQueues/index.ts +6 -0
  322. package/src/network/processor/gossipValidatorFn.ts +5 -0
  323. package/src/network/processor/index.ts +23 -23
  324. package/src/network/processor/types.ts +1 -1
  325. package/src/network/reqresp/ReqRespBeaconNode.ts +7 -0
  326. package/src/network/reqresp/handlers/inclusionListsByIndices.ts +44 -0
  327. package/src/network/reqresp/handlers/index.ts +5 -0
  328. package/src/network/reqresp/protocols.ts +6 -0
  329. package/src/network/reqresp/rateLimit.ts +4 -0
  330. package/src/network/reqresp/types.ts +6 -0
  331. package/src/node/nodejs.ts +18 -1
  332. package/src/node/options.ts +4 -5
  333. package/src/sync/interface.ts +1 -0
  334. package/src/sync/unknownBlock.ts +47 -28
  335. package/src/util/queue/itemQueue.ts +1 -1
  336. package/src/util/sszBytes.ts +2 -2
@@ -20,7 +20,8 @@ type StateBuilderIndexResponse = {
20
20
  code: number;
21
21
  reason: string;
22
22
  };
23
- export declare function getStateBuilderIndex(id: routes.beacon.BuilderId | BLSPubkey, state: IBeaconStateViewGloas): StateBuilderIndexResponse;
23
+ export declare function getBuilderIndexByPubkey(state: IBeaconStateViewGloas): Map<string, BuilderIndex>;
24
+ export declare function getStateBuilderIndex(id: routes.beacon.BuilderId | BLSPubkey, state: IBeaconStateViewGloas, getBuilderIndexByPubkeyMap: () => Map<string, BuilderIndex>): StateBuilderIndexResponse;
24
25
  export declare function filterStateValidatorsByStatus(statuses: string[], state: IBeaconStateView, pubkeyCache: PubkeyCache, currentEpoch: Epoch): routes.beacon.ValidatorResponse[];
25
26
  type StateValidatorIndexResponse = {
26
27
  valid: true;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,WAAW,EAAC,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,iBAAiB,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACnF,OAAO,EACL,SAAS,EACT,YAAY,EACZ,KAAK,EACL,OAAO,EACP,IAAI,EACJ,cAAc,EAEd,MAAM,EACP,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAKtD,wBAAgB,cAAc,CAC5B,UAAU,EAAE,WAAW,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAC7B,OAAO,GAAG,IAAI,GAAG,iBAAiB,CA4BpC;AAED,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAC/B,OAAO,CAAC;IAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU,CAAC;IAAC,mBAAmB,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,CAAC,CAwCnG;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,KAAK,GAClB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAOjC;AAED,KAAK,yBAAyB,GAC1B;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAC,GACzC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAEjD,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,EACvC,KAAK,EAAE,qBAAqB,GAC3B,yBAAyB,CAmC3B;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,KAAK,GAClB,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAYnC;AAED,KAAK,2BAA2B,GAC5B;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAAC,GAC7C;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAEjD,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,EACzC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,WAAW,GACvB,2BAA2B,CAmC7B"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,WAAW,EAAC,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,iBAAiB,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACnF,OAAO,EACL,SAAS,EACT,YAAY,EACZ,KAAK,EACL,OAAO,EACP,IAAI,EACJ,cAAc,EAEd,MAAM,EACP,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAC,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAKtD,wBAAgB,cAAc,CAC5B,UAAU,EAAE,WAAW,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAC7B,OAAO,GAAG,IAAI,GAAG,iBAAiB,CA4BpC;AAED,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAC/B,OAAO,CAAC;IAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU,CAAC;IAAC,mBAAmB,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAC,CAAC,CAwCnG;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,KAAK,GAClB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAOjC;AAED,KAAK,yBAAyB,GAC1B;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAC,GACzC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAEjD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,qBAAqB,GAAG,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAU/F;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,EACvC,KAAK,EAAE,qBAAqB,EAC5B,0BAA0B,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAC1D,yBAAyB,CAgC3B;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,KAAK,GAClB,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAYnC;AAED,KAAK,2BAA2B,GAC5B;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAAC,GAC7C;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AAEjD,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,EACzC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,WAAW,GACvB,2BAA2B,CAmC7B"}
@@ -1,6 +1,6 @@
1
1
  import { GENESIS_SLOT } from "@lodestar/params";
2
2
  import { getValidatorStatus, } from "@lodestar/types";
3
- import { byteArrayEquals, fromHex } from "@lodestar/utils";
3
+ import { fromHex, toHex } from "@lodestar/utils";
4
4
  import { GENESIS_EPOCH } from "../../../../constants/index.js";
5
5
  import { isOptimisticBlock } from "../../../../util/forkChoice.js";
6
6
  import { ApiError, ValidationError } from "../../errors.js";
@@ -71,7 +71,18 @@ export function toValidatorResponse(index, validator, balance, currentEpoch) {
71
71
  validator,
72
72
  };
73
73
  }
74
- export function getStateBuilderIndex(id, state) {
74
+ export function getBuilderIndexByPubkey(state) {
75
+ const builderIndexByPubkey = new Map();
76
+ const buildersLength = state.getBuildersLength();
77
+ for (let builderIndex = 0; builderIndex < buildersLength; builderIndex++) {
78
+ const pubkeyHex = toHex(state.getBuilder(builderIndex).pubkey);
79
+ if (!builderIndexByPubkey.has(pubkeyHex)) {
80
+ builderIndexByPubkey.set(pubkeyHex, builderIndex);
81
+ }
82
+ }
83
+ return builderIndexByPubkey;
84
+ }
85
+ export function getStateBuilderIndex(id, state, getBuilderIndexByPubkeyMap) {
75
86
  if (typeof id === "string") {
76
87
  // mutate `id` and fallthrough to below
77
88
  if (id.startsWith("0x")) {
@@ -98,14 +109,11 @@ export function getStateBuilderIndex(id, state) {
98
109
  return { valid: true, builderIndex };
99
110
  }
100
111
  // typeof id === Uint8Array
101
- // There is no builder pubkey cache, linear scan over the registry
102
- const buildersLength = state.getBuildersLength();
103
- for (let builderIndex = 0; builderIndex < buildersLength; builderIndex++) {
104
- if (byteArrayEquals(state.getBuilder(builderIndex).pubkey, id)) {
105
- return { valid: true, builderIndex };
106
- }
112
+ const builderIndex = getBuilderIndexByPubkeyMap().get(toHex(id));
113
+ if (builderIndex === undefined) {
114
+ return { valid: false, code: 404, reason: "Builder pubkey not found in state" };
107
115
  }
108
- return { valid: false, code: 404, reason: "Builder pubkey not found in state" };
116
+ return { valid: true, builderIndex };
109
117
  }
110
118
  export function filterStateValidatorsByStatus(statuses, state, pubkeyCache, currentEpoch) {
111
119
  const responses = [];
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAOL,kBAAkB,GAEnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAC,aAAa,EAAC,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAE/C,MAAM,UAAU,cAAc,CAC5B,UAAuB,EACvB,OAA8B;IAE9B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;IACxC,CAAC;IAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,UAAU,CAAC,sBAAsB,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,UAAU,CAAC,sBAAsB,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,kBAAkB;IAClB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,eAAe,CAAC,qBAAqB,OAAO,GAAG,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,KAAmB,EACnB,IAAiB,EACjB,SAAgC;IAEhC,qGAAqG;IACrG,oGAAoG;IACpG,mGAAmG;IACnG,iGAAiG;IACjG,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC9G,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxC,oGAAoG;QACpG,gGAAgG;QAChG,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QAC/E,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC;QACvE,OAAO;YACL,KAAK;YACL,mBAAmB,EAAE,iBAAiB,CAAC,IAAI,CAAC;YAC5C,SAAS,EAAE,KAAK,CAAC,KAAK,IAAI,cAAc,IAAI,cAAc,KAAK,aAAa;SAC7E,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAE5D,MAAM,GAAG,GACP,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,MAAM,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC;QAC9D,CAAC,CAAC,OAAO,OAAO,KAAK,QAAQ;YAC3B,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW;gBACjC,CAAC,CAAC,IAAI,CAAC,kCAAkC;gBACzC,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,IAAI;oBACpD,CAAC,CAAC,MAAM,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC;oBACzD,CAAC,CAAC,MAAM,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC;YACnD,CAAC,CAAC,MAAM,KAAK,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAEzD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,2BAA2B,SAAS,GAAG,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,KAAqB,EACrB,SAA2B,EAC3B,OAAe,EACf,YAAmB;IAEnB,OAAO;QACL,KAAK;QACL,MAAM,EAAE,kBAAkB,CAAC,SAAS,EAAE,YAAY,CAAC;QACnD,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC;AAMD,MAAM,UAAU,uBAAuB,CAAC,KAA4B;IAClE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC7D,MAAM,cAAc,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;IACjD,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,YAAY,GAAG,cAAc,EAAE,YAAY,EAAE,EAAE,CAAC;QACzE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,EAAuC,EACvC,KAA4B,EAC5B,0BAA2D;IAE3D,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,uCAAuC;QACvC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,6BAA6B,EAAC,CAAC;YAC1E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,uDAAuD;QACvD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YAC5D,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,uBAAuB,EAAC,CAAC;QACpE,CAAC;QACD,IAAI,YAAY,IAAI,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAC9C,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,iCAAiC,EAAC,CAAC;QAC9E,CAAC;QACD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC;IACrC,CAAC;IAED,2BAA2B;IAC3B,MAAM,YAAY,GAAG,0BAA0B,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,mCAAmC,EAAC,CAAC;IAChF,CAAC;IACD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAAkB,EAClB,KAAuB,EACvB,WAAwB,EACxB,YAAmB;IAEnB,MAAM,SAAS,GAAsC,EAAE,CAAC;IACxD,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;IAChF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,SAAS,CAAC,IAAI,CACZ,mBAAmB,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,CACzG,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAMD,MAAM,UAAU,sBAAsB,CACpC,EAAyC,EACzC,KAAuB,EACvB,WAAwB;IAExB,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,uCAAuC;QACvC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,6BAA6B,EAAC,CAAC;YAC1E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,yDAAyD;QACzD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YAChE,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,yBAAyB,EAAC,CAAC;QACtE,CAAC;QACD,IAAI,cAAc,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAC3C,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,mCAAmC,EAAC,CAAC;QAChF,CAAC;QACD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,cAAc,EAAC,CAAC;IACvC,CAAC;IAED,2BAA2B;IAC3B,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,qCAAqC,EAAC,CAAC;IAClF,CAAC;IACD,IAAI,cAAc,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QAC3C,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,oCAAoC,EAAC,CAAC;IACjF,CAAC;IACD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,cAAc,EAAC,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/impl/debug/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAWxD,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AA0BvC,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,IAAI,GACL,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CA8JnG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/impl/debug/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAWxD,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AA0BvC,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,IAAI,GACL,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAkKnG"}
@@ -100,6 +100,9 @@ export function getDebugApi({ chain, config, sync, }) {
100
100
  unrealizedJustifiedRoot: node.unrealizedJustifiedRoot,
101
101
  unrealizedFinalizedEpoch: node.unrealizedFinalizedEpoch,
102
102
  unrealizedFinalizedRoot: node.unrealizedFinalizedRoot,
103
+ inclusionListSatisfied: node.payloadStatus === PayloadStatus.FULL
104
+ ? forkChoice.getPayloadInclusionListSatisfaction(node.blockRoot)
105
+ : null,
103
106
  },
104
107
  };
105
108
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/impl/debug/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/impl/debug/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/impl/validator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAiCxD,OAAO,EAQL,mBAAmB,EAUpB,MAAM,iBAAiB,CAAC;AA8CzB,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAkFvC;;GAEG;AACH,oBAAY,0BAA0B;IACpC,eAAe,qBAAqB;IACpC,YAAY,kBAAkB;IAC9B,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;IAClC,YAAY,mBAAmB;IAC/B,qBAAqB,4BAA4B;IACjD,iBAAiB,uBAAuB;IACxC,UAAU,gBAAgB;IAC1B,eAAe,qBAAqB;CACrC;AAED;;GAEG;AACH,oBAAY,2BAA2B;IACrC,cAAc,oBAAoB;IAClC,WAAW,iBAAiB;IAC5B,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,gBAAgB,sBAAsB;CACvC;AAED,MAAM,MAAM,oBAAoB,GAC5B;IACE,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,0BAA0B,CAAC;CACpC,GACD;IACE,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC;IACpC,MAAM,EAAE,2BAA2B,CAAC;CACrC,CAAC;AAEN;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,UAAU,EAChB,EAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,EAAE,UAAU,GAC1D,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAs/DhD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/impl/validator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAmCxD,OAAO,EAQL,mBAAmB,EAUpB,MAAM,iBAAiB,CAAC;AAmDzB,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAkFvC;;GAEG;AACH,oBAAY,0BAA0B;IACpC,eAAe,qBAAqB;IACpC,YAAY,kBAAkB;IAC9B,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;IAClC,YAAY,mBAAmB;IAC/B,qBAAqB,4BAA4B;IACjD,iBAAiB,uBAAuB;IACxC,UAAU,gBAAgB;IAC1B,eAAe,qBAAqB;CACrC;AAED;;GAEG;AACH,oBAAY,2BAA2B;IACrC,cAAc,oBAAoB;IAClC,WAAW,iBAAiB;IAC5B,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,gBAAgB,sBAAsB;CACvC;AAED,MAAM,MAAM,oBAAoB,GAC5B;IACE,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,0BAA0B,CAAC;CACpC,GACD;IACE,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC;IACpC,MAAM,EAAE,2BAA2B,CAAC;CACrC,CAAC;AAEN;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,UAAU,EAChB,EAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,EAAE,UAAU,GAC1D,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CA4mEhD"}
@@ -1,17 +1,18 @@
1
1
  import { routes } from "@lodestar/api";
2
2
  import { ExecutionStatus, PayloadStatus } from "@lodestar/fork-choice";
3
- import { BUILDER_INDEX_SELF_BUILD, ForkName, ForkSeq, GENESIS_SLOT, SLOTS_PER_EPOCH, SLOTS_PER_HISTORICAL_ROOT, SYNC_COMMITTEE_SUBNET_SIZE, isForkPostBellatrix, isForkPostDeneb, isForkPostElectra, isForkPostFulu, isForkPostGloas, } from "@lodestar/params";
4
- import { DataAvailabilityStatus, beaconBlockToBlinded, calculateCommitteeAssignments, computeEpochAtSlot, computeStartSlotAtEpoch, computeTimeAtSlot, getCurrentSlot, isStatePostAltair, isStatePostGloas, proposerShufflingDecisionRoot, } from "@lodestar/state-transition";
3
+ import { BUILDER_INDEX_SELF_BUILD, ForkName, ForkSeq, GENESIS_SLOT, SLOTS_PER_EPOCH, SLOTS_PER_HISTORICAL_ROOT, SYNC_COMMITTEE_SUBNET_SIZE, isForkPostBellatrix, isForkPostDeneb, isForkPostElectra, isForkPostFulu, isForkPostGloas, isForkPostHeze, } from "@lodestar/params";
4
+ import { DataAvailabilityStatus, beaconBlockToBlinded, calculateCommitteeAssignments, computeEpochAtSlot, computeStartSlotAtEpoch, computeTimeAtSlot, getCurrentSlot, getInclusionListCommittee, isStatePostAltair, isStatePostGloas, proposerShufflingDecisionRoot, } from "@lodestar/state-transition";
5
5
  import { ProducedBlockSource, getValidatorStatus, ssz, } from "@lodestar/types";
6
6
  import { GWEI_TO_WEI, TimeoutError, byteArrayEquals, defer, formatWeiToEth, fromHex, prettyGweiToEth, prettyWeiToEth, resolveOrRacePromises, sleep, toHex, toPrintableUrl, toRootHex, } from "@lodestar/utils";
7
7
  import { MAX_BUILDER_BOOST_FACTOR } from "@lodestar/validator";
8
8
  import { BlockInputSource } from "../../../chain/blocks/blockInput/types.js";
9
+ import { InclusionListSource } from "../../../chain/blocks/types.js";
9
10
  import { AttestationError, AttestationErrorCode, GossipAction, ProposerPreferencesError, ProposerPreferencesErrorCode, SyncCommitteeError, SyncCommitteeErrorCode, } from "../../../chain/errors/index.js";
10
11
  import { ChainEvent } from "../../../chain/index.js";
11
12
  import { PREPARE_NEXT_SLOT_BPS } from "../../../chain/prepareNextSlot.js";
12
13
  import { BlockType } from "../../../chain/produceBlock/index.js";
13
14
  import { RegenCaller } from "../../../chain/regen/index.js";
14
- import { validateApiAggregateAndProof } from "../../../chain/validation/index.js";
15
+ import { validateApiAggregateAndProof, validateGossipInclusionList, } from "../../../chain/validation/index.js";
15
16
  import { validateGossipProposerPreferences } from "../../../chain/validation/proposerPreferences.js";
16
17
  import { validateSyncCommitteeGossipContributionAndProof } from "../../../chain/validation/syncCommitteeContributionAndProof.js";
17
18
  import { ZERO_HASH } from "../../../constants/index.js";
@@ -120,11 +121,13 @@ export function getValidatorApi(opts, { chain, config, logger, metrics, network,
120
121
  else if (state.slot < SLOTS_PER_HISTORICAL_ROOT) {
121
122
  genesisBlockRoot = state.getBlockRootAtSlot(GENESIS_SLOT);
122
123
  }
123
- const blockRes = await chain.getCanonicalBlockAtSlot(GENESIS_SLOT);
124
- if (blockRes) {
125
- genesisBlockRoot = config
126
- .getForkTypes(blockRes.block.message.slot)
127
- .SignedBeaconBlock.hashTreeRoot(blockRes.block);
124
+ else {
125
+ const blockRes = await chain.getCanonicalBlockAtSlot(GENESIS_SLOT);
126
+ if (blockRes) {
127
+ genesisBlockRoot = config
128
+ .getForkTypes(blockRes.block.message.slot)
129
+ .BeaconBlock.hashTreeRoot(blockRes.block.message);
130
+ }
128
131
  }
129
132
  }
130
133
  // If for some reason the genesisBlockRoot is not able don't prevent validators from
@@ -1349,7 +1352,10 @@ export function getValidatorApi(opts, { chain, config, logger, metrics, network,
1349
1352
  }
1350
1353
  }
1351
1354
  }
1352
- const dependentRoot = fromHex(state.getShufflingDecisionRoot(epoch));
1355
+ // The fork epoch PTC is computed at the fork from effective balances updated at the end of the
1356
+ // last pre-fork epoch, so its dependent root is one epoch later than for other epochs
1357
+ const dependentRootEpoch = epoch === config.GLOAS_FORK_EPOCH ? epoch + 1 : epoch;
1358
+ const dependentRoot = fromHex(state.getShufflingDecisionRoot(dependentRootEpoch));
1353
1359
  return {
1354
1360
  data: duties,
1355
1361
  meta: {
@@ -1692,6 +1698,95 @@ export function getValidatorApi(opts, { chain, config, logger, metrics, network,
1692
1698
  throw new IndexedError("Error submitting builder preferences", failures);
1693
1699
  }
1694
1700
  },
1701
+ async produceInclusionList({ slot }) {
1702
+ notWhileSyncing(chain, sync.state);
1703
+ if (!isForkPostHeze(chain.config.getForkName(slot))) {
1704
+ throw new ApiError(400, `Producing inclusion list for pre-heze slot: ${slot}`);
1705
+ }
1706
+ await waitForSlot(slot); // Must never request for a future slot > currentSlot
1707
+ const timer = metrics?.getInclusionListV1RequestsDuration.startTimer();
1708
+ const transactions = await chain.executionEngine.getInclusionList();
1709
+ timer?.();
1710
+ metrics?.getInclusionListV1Requests.inc();
1711
+ return { data: transactions, meta: { version: chain.config.getForkName(slot) } };
1712
+ },
1713
+ async getInclusionListCommitteeDuties({ epoch, indices }) {
1714
+ notWhileSyncing(chain, sync.state);
1715
+ if (indices.length === 0) {
1716
+ throw new ApiError(400, "No validator to get inclusion list committee duties");
1717
+ }
1718
+ if (!isForkPostHeze(chain.config.getForkName(computeStartSlotAtEpoch(epoch)))) {
1719
+ throw new ApiError(400, `Requesting pre-heze inclusion list committee duties epoch: ${epoch}`);
1720
+ }
1721
+ // May request for an epoch that's in the future
1722
+ await waitForNextClosestEpoch();
1723
+ if (epoch > chain.clock.currentEpoch + 1) {
1724
+ throw new ApiError(400, "Cannot get duties for epoch more than one ahead");
1725
+ }
1726
+ const head = chain.forkChoice.getHead();
1727
+ const state = await chain.getHeadStateAtCurrentEpoch(RegenCaller.getDuties);
1728
+ const pubkeys = getPubkeysForIndices(state, indices);
1729
+ const requestedIndices = new Set(indices);
1730
+ const epochStartSlot = computeStartSlotAtEpoch(epoch);
1731
+ const shuffling = state.getShufflingAtEpoch(epoch);
1732
+ // Validators set this as `dependent_root` on their inclusion lists
1733
+ const dependentRoot = fromHex(state.getShufflingDecisionRoot(epoch));
1734
+ // A validator can be on several slots' committees in an epoch; report the earliest, as for attester duties
1735
+ const dutySlotByValidator = new Map();
1736
+ for (let i = 0; i < SLOTS_PER_EPOCH; i++) {
1737
+ const slot = epochStartSlot + i;
1738
+ for (const validatorIndex of getInclusionListCommittee(shuffling, slot).validatorIndices) {
1739
+ if (requestedIndices.has(validatorIndex) && !dutySlotByValidator.has(validatorIndex)) {
1740
+ dutySlotByValidator.set(validatorIndex, slot);
1741
+ }
1742
+ }
1743
+ }
1744
+ const duties = [];
1745
+ for (let i = 0; i < indices.length; i++) {
1746
+ const validatorIndex = indices[i];
1747
+ const slot = dutySlotByValidator.get(validatorIndex);
1748
+ if (slot !== undefined) {
1749
+ duties.push({ pubkey: pubkeys[i], validatorIndex, slot, dependentRoot });
1750
+ }
1751
+ }
1752
+ return {
1753
+ data: duties,
1754
+ meta: {
1755
+ dependentRoot: toRootHex(dependentRoot),
1756
+ executionOptimistic: isOptimisticBlock(head),
1757
+ },
1758
+ };
1759
+ },
1760
+ async publishInclusionList({ signedInclusionList }) {
1761
+ notWhileSyncing(chain, sync.state);
1762
+ const { slot } = signedInclusionList.message;
1763
+ if (!isForkPostHeze(chain.config.getForkName(slot))) {
1764
+ throw new ApiError(400, `Publishing pre-heze inclusion list slot: ${slot}`);
1765
+ }
1766
+ // Timeliness is judged on receipt, as for gossip, so a list submitted in time stays timely if validation is slow
1767
+ const secFromSlot = chain.clock.secFromSlot(slot, Date.now() / 1000);
1768
+ metrics?.inclusionListsReceived.inc({ source: InclusionListSource.api });
1769
+ metrics?.inclusionListTransactionsReceived.inc({ source: InclusionListSource.api }, signedInclusionList.message.transactions.length);
1770
+ const timer = metrics?.inclusionListsValidationTime.startTimer();
1771
+ let validationResult;
1772
+ try {
1773
+ validationResult = await validateGossipInclusionList(chain, signedInclusionList);
1774
+ }
1775
+ finally {
1776
+ timer?.({ source: InclusionListSource.api });
1777
+ }
1778
+ const { committeeIndices, totalBytes } = validationResult;
1779
+ metrics?.inclusionListsValid.inc({ source: InclusionListSource.api });
1780
+ metrics?.inclusionListsValidSize.inc(totalBytes);
1781
+ const isTimely = secFromSlot >= 0 && secFromSlot * 1000 < chain.config.getInclusionListDueMs(chain.config.getForkName(slot));
1782
+ chain.inclusionListStore.process(signedInclusionList, committeeIndices, isTimely);
1783
+ chain.emitter.emit(routes.events.EventType.inclusionList, {
1784
+ version: chain.config.getForkName(slot),
1785
+ data: signedInclusionList,
1786
+ });
1787
+ await network.publishInclusionList(signedInclusionList);
1788
+ metrics?.inclusionListsPublished.inc();
1789
+ },
1695
1790
  async getExecutionPayloadEnvelope({ slot, beaconBlockRoot }) {
1696
1791
  const fork = config.getForkName(slot);
1697
1792
  if (!isForkPostGloas(fork)) {