@lodestar/beacon-node 1.43.0-dev.aef3645690 → 1.43.0-dev.b05ea98d04

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 (401) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +17 -9
  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 +45 -2
  6. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  7. package/lib/api/impl/beacon/state/utils.d.ts +2 -2
  8. package/lib/api/impl/beacon/state/utils.d.ts.map +1 -1
  9. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  10. package/lib/api/impl/debug/index.d.ts.map +1 -1
  11. package/lib/api/impl/debug/index.js +0 -1
  12. package/lib/api/impl/debug/index.js.map +1 -1
  13. package/lib/api/impl/lodestar/index.js +1 -1
  14. package/lib/api/impl/lodestar/index.js.map +1 -1
  15. package/lib/api/impl/validator/index.d.ts.map +1 -1
  16. package/lib/api/impl/validator/index.js +68 -5
  17. package/lib/api/impl/validator/index.js.map +1 -1
  18. package/lib/chain/GetBlobsTracker.d.ts +1 -1
  19. package/lib/chain/GetBlobsTracker.d.ts.map +1 -1
  20. package/lib/chain/GetBlobsTracker.js +1 -2
  21. package/lib/chain/GetBlobsTracker.js.map +1 -1
  22. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  23. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  24. package/lib/chain/archiveStore/interface.d.ts +4 -4
  25. package/lib/chain/archiveStore/interface.d.ts.map +1 -1
  26. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts +4 -4
  27. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +1 -1
  28. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +2 -4
  29. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
  30. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts +2 -2
  31. package/lib/chain/archiveStore/utils/archiveBlocks.d.ts.map +1 -1
  32. package/lib/chain/archiveStore/utils/archiveBlocks.js +110 -58
  33. package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
  34. package/lib/chain/blocks/blockInput/blockInput.d.ts +3 -0
  35. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  36. package/lib/chain/blocks/blockInput/blockInput.js +4 -1
  37. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  38. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  39. package/lib/chain/blocks/importBlock.js +38 -58
  40. package/lib/chain/blocks/importBlock.js.map +1 -1
  41. package/lib/chain/blocks/importExecutionPayload.d.ts +28 -14
  42. package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -1
  43. package/lib/chain/blocks/importExecutionPayload.js +89 -89
  44. package/lib/chain/blocks/importExecutionPayload.js.map +1 -1
  45. package/lib/chain/blocks/index.d.ts +5 -3
  46. package/lib/chain/blocks/index.d.ts.map +1 -1
  47. package/lib/chain/blocks/index.js +59 -26
  48. package/lib/chain/blocks/index.js.map +1 -1
  49. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts +7 -0
  50. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts.map +1 -1
  51. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js +29 -2
  52. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js.map +1 -1
  53. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts +1 -0
  54. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts.map +1 -1
  55. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts +5 -0
  56. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts.map +1 -1
  57. package/lib/chain/blocks/payloadEnvelopeProcessor.js +7 -5
  58. package/lib/chain/blocks/payloadEnvelopeProcessor.js.map +1 -1
  59. package/lib/chain/blocks/types.d.ts +16 -21
  60. package/lib/chain/blocks/types.d.ts.map +1 -1
  61. package/lib/chain/blocks/utils/chainSegment.d.ts +23 -2
  62. package/lib/chain/blocks/utils/chainSegment.d.ts.map +1 -1
  63. package/lib/chain/blocks/utils/chainSegment.js +89 -12
  64. package/lib/chain/blocks/utils/chainSegment.js.map +1 -1
  65. package/lib/chain/blocks/verifyBlock.d.ts +5 -3
  66. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  67. package/lib/chain/blocks/verifyBlock.js +50 -7
  68. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  69. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +0 -4
  70. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +1 -1
  71. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +5 -2
  72. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  73. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts +2 -1
  74. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
  75. package/lib/chain/blocks/verifyBlocksSanityChecks.js +25 -5
  76. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  77. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.d.ts +24 -0
  78. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.d.ts.map +1 -0
  79. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js +79 -0
  80. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js.map +1 -0
  81. package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts +14 -0
  82. package/lib/chain/blocks/verifyPayloadsDataAvailability.d.ts.map +1 -0
  83. package/lib/chain/blocks/verifyPayloadsDataAvailability.js +30 -0
  84. package/lib/chain/blocks/verifyPayloadsDataAvailability.js.map +1 -0
  85. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts +1 -1
  86. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts.map +1 -1
  87. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js +2 -11
  88. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js.map +1 -1
  89. package/lib/chain/chain.d.ts +8 -6
  90. package/lib/chain/chain.d.ts.map +1 -1
  91. package/lib/chain/chain.js +46 -50
  92. package/lib/chain/chain.js.map +1 -1
  93. package/lib/chain/emitter.d.ts +16 -15
  94. package/lib/chain/emitter.d.ts.map +1 -1
  95. package/lib/chain/emitter.js +5 -4
  96. package/lib/chain/emitter.js.map +1 -1
  97. package/lib/chain/errors/attestationError.d.ts +8 -1
  98. package/lib/chain/errors/attestationError.d.ts.map +1 -1
  99. package/lib/chain/errors/attestationError.js +4 -0
  100. package/lib/chain/errors/attestationError.js.map +1 -1
  101. package/lib/chain/errors/blockError.d.ts +8 -1
  102. package/lib/chain/errors/blockError.d.ts.map +1 -1
  103. package/lib/chain/errors/blockError.js +2 -0
  104. package/lib/chain/errors/blockError.js.map +1 -1
  105. package/lib/chain/errors/executionPayloadBid.d.ts +5 -0
  106. package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -1
  107. package/lib/chain/errors/executionPayloadBid.js +1 -0
  108. package/lib/chain/errors/executionPayloadBid.js.map +1 -1
  109. package/lib/chain/errors/executionPayloadEnvelope.d.ts +5 -0
  110. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
  111. package/lib/chain/errors/executionPayloadEnvelope.js +1 -0
  112. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
  113. package/lib/chain/errors/index.d.ts +1 -0
  114. package/lib/chain/errors/index.d.ts.map +1 -1
  115. package/lib/chain/errors/index.js +1 -0
  116. package/lib/chain/errors/index.js.map +1 -1
  117. package/lib/chain/errors/proposerPreferences.d.ts +40 -0
  118. package/lib/chain/errors/proposerPreferences.d.ts.map +1 -0
  119. package/lib/chain/errors/proposerPreferences.js +14 -0
  120. package/lib/chain/errors/proposerPreferences.js.map +1 -0
  121. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  122. package/lib/chain/forkChoice/index.js +11 -15
  123. package/lib/chain/forkChoice/index.js.map +1 -1
  124. package/lib/chain/initState.d.ts.map +1 -1
  125. package/lib/chain/initState.js +6 -1
  126. package/lib/chain/initState.js.map +1 -1
  127. package/lib/chain/interface.d.ts +7 -5
  128. package/lib/chain/interface.d.ts.map +1 -1
  129. package/lib/chain/interface.js.map +1 -1
  130. package/lib/chain/opPools/payloadAttestationPool.d.ts +3 -2
  131. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -1
  132. package/lib/chain/opPools/payloadAttestationPool.js +26 -4
  133. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -1
  134. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  135. package/lib/chain/prepareNextSlot.js +47 -23
  136. package/lib/chain/prepareNextSlot.js.map +1 -1
  137. package/lib/chain/produceBlock/computeNewStateRoot.d.ts +3 -9
  138. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +1 -1
  139. package/lib/chain/produceBlock/computeNewStateRoot.js +5 -32
  140. package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
  141. package/lib/chain/produceBlock/produceBlockBody.d.ts +13 -8
  142. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  143. package/lib/chain/produceBlock/produceBlockBody.js +68 -25
  144. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  145. package/lib/chain/regen/errors.d.ts +1 -11
  146. package/lib/chain/regen/errors.d.ts.map +1 -1
  147. package/lib/chain/regen/errors.js +0 -2
  148. package/lib/chain/regen/errors.js.map +1 -1
  149. package/lib/chain/regen/interface.d.ts +7 -12
  150. package/lib/chain/regen/interface.d.ts.map +1 -1
  151. package/lib/chain/regen/interface.js +1 -0
  152. package/lib/chain/regen/interface.js.map +1 -1
  153. package/lib/chain/regen/queued.d.ts +6 -11
  154. package/lib/chain/regen/queued.d.ts.map +1 -1
  155. package/lib/chain/regen/queued.js +9 -44
  156. package/lib/chain/regen/queued.js.map +1 -1
  157. package/lib/chain/regen/regen.d.ts +0 -5
  158. package/lib/chain/regen/regen.d.ts.map +1 -1
  159. package/lib/chain/regen/regen.js +8 -38
  160. package/lib/chain/regen/regen.js.map +1 -1
  161. package/lib/chain/seenCache/index.d.ts +1 -0
  162. package/lib/chain/seenCache/index.d.ts.map +1 -1
  163. package/lib/chain/seenCache/index.js +1 -0
  164. package/lib/chain/seenCache/index.js.map +1 -1
  165. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts +22 -6
  166. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts.map +1 -1
  167. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js +53 -17
  168. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js.map +1 -1
  169. package/lib/chain/seenCache/seenProposerPreferences.d.ts +16 -0
  170. package/lib/chain/seenCache/seenProposerPreferences.d.ts.map +1 -0
  171. package/lib/chain/seenCache/seenProposerPreferences.js +26 -0
  172. package/lib/chain/seenCache/seenProposerPreferences.js.map +1 -0
  173. package/lib/chain/stateCache/datastore/db.d.ts +5 -4
  174. package/lib/chain/stateCache/datastore/db.d.ts.map +1 -1
  175. package/lib/chain/stateCache/datastore/db.js +10 -32
  176. package/lib/chain/stateCache/datastore/db.js.map +1 -1
  177. package/lib/chain/stateCache/datastore/file.d.ts +1 -1
  178. package/lib/chain/stateCache/datastore/file.d.ts.map +1 -1
  179. package/lib/chain/stateCache/datastore/file.js +5 -5
  180. package/lib/chain/stateCache/datastore/file.js.map +1 -1
  181. package/lib/chain/stateCache/datastore/types.d.ts +1 -1
  182. package/lib/chain/stateCache/datastore/types.d.ts.map +1 -1
  183. package/lib/chain/stateCache/fifoBlockStateCache.d.ts +1 -7
  184. package/lib/chain/stateCache/fifoBlockStateCache.d.ts.map +1 -1
  185. package/lib/chain/stateCache/fifoBlockStateCache.js +0 -8
  186. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  187. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +13 -30
  188. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
  189. package/lib/chain/stateCache/persistentCheckpointsCache.js +120 -216
  190. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  191. package/lib/chain/stateCache/types.d.ts +8 -15
  192. package/lib/chain/stateCache/types.d.ts.map +1 -1
  193. package/lib/chain/stateCache/types.js.map +1 -1
  194. package/lib/chain/validation/aggregateAndProof.js +12 -0
  195. package/lib/chain/validation/aggregateAndProof.js.map +1 -1
  196. package/lib/chain/validation/attestation.d.ts.map +1 -1
  197. package/lib/chain/validation/attestation.js +12 -0
  198. package/lib/chain/validation/attestation.js.map +1 -1
  199. package/lib/chain/validation/block.d.ts.map +1 -1
  200. package/lib/chain/validation/block.js +1 -0
  201. package/lib/chain/validation/block.js.map +1 -1
  202. package/lib/chain/validation/executionPayloadBid.d.ts.map +1 -1
  203. package/lib/chain/validation/executionPayloadBid.js +24 -9
  204. package/lib/chain/validation/executionPayloadBid.js.map +1 -1
  205. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -1
  206. package/lib/chain/validation/executionPayloadEnvelope.js +21 -11
  207. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
  208. package/lib/chain/validation/payloadAttestationMessage.d.ts.map +1 -1
  209. package/lib/chain/validation/payloadAttestationMessage.js +4 -3
  210. package/lib/chain/validation/payloadAttestationMessage.js.map +1 -1
  211. package/lib/chain/validation/proposerPreferences.d.ts +8 -0
  212. package/lib/chain/validation/proposerPreferences.d.ts.map +1 -0
  213. package/lib/chain/validation/proposerPreferences.js +91 -0
  214. package/lib/chain/validation/proposerPreferences.js.map +1 -0
  215. package/lib/db/repositories/executionPayloadEnvelopeArchive.js +1 -1
  216. package/lib/db/repositories/executionPayloadEnvelopeArchive.js.map +1 -1
  217. package/lib/execution/engine/http.d.ts.map +1 -1
  218. package/lib/execution/engine/http.js +21 -14
  219. package/lib/execution/engine/http.js.map +1 -1
  220. package/lib/execution/engine/interface.d.ts +1 -0
  221. package/lib/execution/engine/interface.d.ts.map +1 -1
  222. package/lib/execution/engine/mock.d.ts.map +1 -1
  223. package/lib/execution/engine/mock.js +6 -0
  224. package/lib/execution/engine/mock.js.map +1 -1
  225. package/lib/execution/engine/types.d.ts +20 -0
  226. package/lib/execution/engine/types.d.ts.map +1 -1
  227. package/lib/execution/engine/types.js +18 -0
  228. package/lib/execution/engine/types.js.map +1 -1
  229. package/lib/metrics/metrics/lodestar.d.ts +1 -0
  230. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  231. package/lib/metrics/metrics/lodestar.js +4 -0
  232. package/lib/metrics/metrics/lodestar.js.map +1 -1
  233. package/lib/network/gossip/interface.d.ts +7 -1
  234. package/lib/network/gossip/interface.d.ts.map +1 -1
  235. package/lib/network/gossip/interface.js +1 -0
  236. package/lib/network/gossip/interface.js.map +1 -1
  237. package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
  238. package/lib/network/gossip/scoringParameters.js +12 -1
  239. package/lib/network/gossip/scoringParameters.js.map +1 -1
  240. package/lib/network/gossip/topic.d.ts +32 -748
  241. package/lib/network/gossip/topic.d.ts.map +1 -1
  242. package/lib/network/gossip/topic.js +6 -0
  243. package/lib/network/gossip/topic.js.map +1 -1
  244. package/lib/network/interface.d.ts +1 -0
  245. package/lib/network/interface.d.ts.map +1 -1
  246. package/lib/network/network.d.ts +1 -0
  247. package/lib/network/network.d.ts.map +1 -1
  248. package/lib/network/network.js +6 -1
  249. package/lib/network/network.js.map +1 -1
  250. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  251. package/lib/network/processor/gossipHandlers.js +60 -22
  252. package/lib/network/processor/gossipHandlers.js.map +1 -1
  253. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  254. package/lib/network/processor/gossipQueues/index.js +5 -0
  255. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  256. package/lib/network/processor/index.d.ts.map +1 -1
  257. package/lib/network/processor/index.js +6 -5
  258. package/lib/network/processor/index.js.map +1 -1
  259. package/lib/network/reqresp/handlers/beaconBlocksByRange.d.ts.map +1 -1
  260. package/lib/network/reqresp/handlers/beaconBlocksByRange.js +14 -6
  261. package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
  262. package/lib/network/reqresp/handlers/blobSidecarsByRange.d.ts.map +1 -1
  263. package/lib/network/reqresp/handlers/blobSidecarsByRange.js +11 -5
  264. package/lib/network/reqresp/handlers/blobSidecarsByRange.js.map +1 -1
  265. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.d.ts.map +1 -1
  266. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +17 -5
  267. package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -1
  268. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.d.ts.map +1 -1
  269. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.js +7 -4
  270. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRange.js.map +1 -1
  271. package/lib/node/nodejs.d.ts.map +1 -1
  272. package/lib/node/nodejs.js +6 -4
  273. package/lib/node/nodejs.js.map +1 -1
  274. package/lib/sync/constants.d.ts +3 -1
  275. package/lib/sync/constants.d.ts.map +1 -1
  276. package/lib/sync/constants.js +3 -4
  277. package/lib/sync/constants.js.map +1 -1
  278. package/lib/sync/range/batch.d.ts +28 -2
  279. package/lib/sync/range/batch.d.ts.map +1 -1
  280. package/lib/sync/range/batch.js +146 -44
  281. package/lib/sync/range/batch.js.map +1 -1
  282. package/lib/sync/range/chain.d.ts +12 -2
  283. package/lib/sync/range/chain.d.ts.map +1 -1
  284. package/lib/sync/range/chain.js +53 -9
  285. package/lib/sync/range/chain.js.map +1 -1
  286. package/lib/sync/range/range.d.ts.map +1 -1
  287. package/lib/sync/range/range.js +17 -6
  288. package/lib/sync/range/range.js.map +1 -1
  289. package/lib/sync/types.d.ts +34 -0
  290. package/lib/sync/types.d.ts.map +1 -1
  291. package/lib/sync/types.js +34 -0
  292. package/lib/sync/types.js.map +1 -1
  293. package/lib/sync/unknownBlock.d.ts +22 -1
  294. package/lib/sync/unknownBlock.d.ts.map +1 -1
  295. package/lib/sync/unknownBlock.js +604 -53
  296. package/lib/sync/unknownBlock.js.map +1 -1
  297. package/lib/sync/utils/downloadByRange.d.ts +46 -10
  298. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  299. package/lib/sync/utils/downloadByRange.js +162 -24
  300. package/lib/sync/utils/downloadByRange.js.map +1 -1
  301. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  302. package/lib/sync/utils/downloadByRoot.js +16 -2
  303. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  304. package/lib/sync/utils/pendingBlocksTree.d.ts +0 -1
  305. package/lib/sync/utils/pendingBlocksTree.d.ts.map +1 -1
  306. package/lib/sync/utils/pendingBlocksTree.js +0 -9
  307. package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
  308. package/lib/util/sszBytes.d.ts.map +1 -1
  309. package/lib/util/sszBytes.js +20 -5
  310. package/lib/util/sszBytes.js.map +1 -1
  311. package/package.json +17 -16
  312. package/src/api/impl/beacon/blocks/index.ts +22 -9
  313. package/src/api/impl/beacon/pool/index.ts +83 -1
  314. package/src/api/impl/beacon/state/utils.ts +2 -2
  315. package/src/api/impl/debug/index.ts +0 -1
  316. package/src/api/impl/lodestar/index.ts +1 -1
  317. package/src/api/impl/validator/index.ts +84 -6
  318. package/src/chain/GetBlobsTracker.ts +1 -2
  319. package/src/chain/archiveStore/archiveStore.ts +5 -5
  320. package/src/chain/archiveStore/interface.ts +4 -4
  321. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +6 -8
  322. package/src/chain/archiveStore/utils/archiveBlocks.ts +153 -94
  323. package/src/chain/blocks/blockInput/blockInput.ts +4 -1
  324. package/src/chain/blocks/importBlock.ts +38 -83
  325. package/src/chain/blocks/importExecutionPayload.ts +110 -102
  326. package/src/chain/blocks/index.ts +74 -24
  327. package/src/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.ts +37 -2
  328. package/src/chain/blocks/payloadEnvelopeInput/types.ts +1 -0
  329. package/src/chain/blocks/payloadEnvelopeProcessor.ts +7 -6
  330. package/src/chain/blocks/types.ts +16 -26
  331. package/src/chain/blocks/utils/chainSegment.ts +114 -17
  332. package/src/chain/blocks/verifyBlock.ts +70 -9
  333. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +6 -4
  334. package/src/chain/blocks/verifyBlocksSanityChecks.ts +26 -7
  335. package/src/chain/blocks/verifyExecutionPayloadEnvelope.ts +134 -0
  336. package/src/chain/blocks/verifyPayloadsDataAvailability.ts +41 -0
  337. package/src/chain/blocks/writePayloadEnvelopeInputToDb.ts +9 -18
  338. package/src/chain/chain.ts +63 -72
  339. package/src/chain/emitter.ts +15 -14
  340. package/src/chain/errors/attestationError.ts +6 -1
  341. package/src/chain/errors/blockError.ts +4 -1
  342. package/src/chain/errors/executionPayloadBid.ts +6 -0
  343. package/src/chain/errors/executionPayloadEnvelope.ts +6 -0
  344. package/src/chain/errors/index.ts +1 -0
  345. package/src/chain/errors/proposerPreferences.ts +47 -0
  346. package/src/chain/forkChoice/index.ts +8 -20
  347. package/src/chain/initState.ts +9 -1
  348. package/src/chain/interface.ts +11 -3
  349. package/src/chain/opPools/payloadAttestationPool.ts +29 -8
  350. package/src/chain/prepareNextSlot.ts +55 -24
  351. package/src/chain/produceBlock/computeNewStateRoot.ts +6 -43
  352. package/src/chain/produceBlock/produceBlockBody.ts +91 -27
  353. package/src/chain/regen/errors.ts +1 -6
  354. package/src/chain/regen/interface.ts +7 -12
  355. package/src/chain/regen/queued.ts +14 -55
  356. package/src/chain/regen/regen.ts +10 -43
  357. package/src/chain/seenCache/index.ts +1 -0
  358. package/src/chain/seenCache/seenPayloadEnvelopeInput.ts +71 -20
  359. package/src/chain/seenCache/seenProposerPreferences.ts +32 -0
  360. package/src/chain/stateCache/datastore/db.ts +10 -33
  361. package/src/chain/stateCache/datastore/file.ts +5 -6
  362. package/src/chain/stateCache/datastore/types.ts +2 -3
  363. package/src/chain/stateCache/fifoBlockStateCache.ts +1 -10
  364. package/src/chain/stateCache/persistentCheckpointsCache.ts +139 -247
  365. package/src/chain/stateCache/types.ts +8 -14
  366. package/src/chain/validation/aggregateAndProof.ts +13 -0
  367. package/src/chain/validation/attestation.ts +13 -0
  368. package/src/chain/validation/block.ts +1 -0
  369. package/src/chain/validation/executionPayloadBid.ts +25 -8
  370. package/src/chain/validation/executionPayloadEnvelope.ts +22 -12
  371. package/src/chain/validation/payloadAttestationMessage.ts +5 -3
  372. package/src/chain/validation/proposerPreferences.ts +110 -0
  373. package/src/db/repositories/executionPayloadEnvelopeArchive.ts +1 -1
  374. package/src/execution/engine/http.ts +21 -14
  375. package/src/execution/engine/interface.ts +1 -0
  376. package/src/execution/engine/mock.ts +8 -1
  377. package/src/execution/engine/types.ts +41 -0
  378. package/src/metrics/metrics/lodestar.ts +4 -0
  379. package/src/network/gossip/interface.ts +6 -0
  380. package/src/network/gossip/scoringParameters.ts +14 -1
  381. package/src/network/gossip/topic.ts +6 -0
  382. package/src/network/interface.ts +1 -0
  383. package/src/network/network.ts +12 -1
  384. package/src/network/processor/gossipHandlers.ts +79 -27
  385. package/src/network/processor/gossipQueues/index.ts +5 -0
  386. package/src/network/processor/index.ts +6 -5
  387. package/src/network/reqresp/handlers/beaconBlocksByRange.ts +14 -6
  388. package/src/network/reqresp/handlers/blobSidecarsByRange.ts +11 -5
  389. package/src/network/reqresp/handlers/dataColumnSidecarsByRange.ts +17 -5
  390. package/src/network/reqresp/handlers/executionPayloadEnvelopesByRange.ts +7 -4
  391. package/src/node/nodejs.ts +6 -4
  392. package/src/sync/constants.ts +4 -4
  393. package/src/sync/range/batch.ts +204 -49
  394. package/src/sync/range/chain.ts +69 -11
  395. package/src/sync/range/range.ts +18 -6
  396. package/src/sync/types.ts +72 -0
  397. package/src/sync/unknownBlock.ts +762 -57
  398. package/src/sync/utils/downloadByRange.ts +272 -39
  399. package/src/sync/utils/downloadByRoot.ts +24 -2
  400. package/src/sync/utils/pendingBlocksTree.ts +0 -15
  401. package/src/util/sszBytes.ts +25 -5
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAgB,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAC,MAAM,EAAE,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAExD,OAAO,EACL,6CAA6C,EAC7C,gCAAgC,GACjC,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,OAAO,kBAAkB;IACA,EAAE;IAA/B,YAA6B,EAAa,EAAE;kBAAf,EAAE;IAAc,CAAC;IAE9C,KAAK,CAAC,KAAK,CAAC,KAAwB,EAAE,UAAsB,EAAE,cAAuB,EAAyB;QAC5G,MAAM,oBAAoB,GAAG,wBAAwB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;QAC1E,OAAO,oBAAoB,CAAC;IAAA,CAC7B;IAED,KAAK,CAAC,MAAM,CAAC,oBAAkC,EAAiB;QAC9D,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAAA,CAC5D;IAED,KAAK,CAAC,IAAI,CAAC,oBAAkC,EAA8B;QACzE,OAAO,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IAAA,CAChE;IAED,KAAK,CAAC,cAAc,GAA+B;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEtC,OAAO,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAAA,CACjE;IAED,KAAK,CAAC,QAAQ,GAA4B;QACxC,OAAO,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAAA,CACvC;CACF;AAED,SAAS,sBAAsB,CAAC,GAAiB,EAAc;IAC7D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;IAChD,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAAA,CACnC;AAED,MAAM,UAAU,wBAAwB,CAAC,GAAiB,EAAqB;IAC7E,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;AAAA,CACvE;AAED,MAAM,UAAU,wBAAwB,CAAC,EAAqB,EAAE,cAAuB,EAAgB;IACrG,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/C,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC;AAAA,CACZ;AAED,SAAS,wBAAwB,CAAC,GAAiB,EAAW;IAC5D,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAAA,CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAuB,EACvB,MAAyD,EAC7B;IAC5B,MAAM,kBAAkB,GAAG,IAAI,MAAM,CAAwB,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACzC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,mBAAmB,GAA6B,IAAI,GAAG,EAAE,CAAC;IAChE,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC;QACzD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,oDAAoD;YACpD,uCAAuC;YACvC,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,6CAA6C;YAC7C,wFAAwF;YACxF,6GAA6G;YAC7G,MAAM,GAAG,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtE,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChF,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,oBAAoB;YACpB,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACvB,oBAAoB;YACpB,SAAS;QACX,CAAC;QAED,MAAM,iBAAiB,GAAG,6CAA6C,CAAC,UAAU,CAAC,CAAC;QACpF,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;YAC9B,iEAAiE;YACjE,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,gCAAgC,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACtB,kDAAkD;YAClD,SAAS;QACX,CAAC;QAED,IAAI,iBAAiB,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,GAAG,CAAC,EAAE,CAAC;YAC3E,yBAAyB;YACzB,SAAS;QACX,CAAC;QAED,IAAI,SAAS,GAAG,eAAe,KAAK,CAAC,EAAE,CAAC;YACtC,8BAA8B;YAC9B,SAAS;QACX,CAAC;QAED,IAAI,SAAS,KAAK,eAAe,GAAG,KAAK,EAAE,CAAC;YAC1C,4DAA4D;YAC5D,SAAS;QACX,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AAAA,CACb"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/db.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export declare class FileCPStateDatastore implements CPStateDatastore {
7
7
  private readonly folderPath;
8
8
  constructor(dataDir: string);
9
9
  init(): Promise<void>;
10
- write(cpKey: phase0.Checkpoint, stateBytes: Uint8Array, payloadPresent: boolean): Promise<DatastoreKey>;
10
+ write(cpKey: phase0.Checkpoint, stateBytes: Uint8Array): Promise<DatastoreKey>;
11
11
  remove(serializedCheckpoint: DatastoreKey): Promise<void>;
12
12
  read(serializedCheckpoint: DatastoreKey): Promise<Uint8Array | null>;
13
13
  readLatestSafe(): Promise<Uint8Array | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/file.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAIvC,OAAO,EAAC,gBAAgB,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAM1D;;GAEG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,YAAY,OAAO,EAAE,MAAM,EAI1B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1B;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAK5G;IAEK,MAAM,CAAC,oBAAoB,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D;IAEK,IAAI,CAAC,oBAAoB,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAGzE;IAEK,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAKjD;IAEK,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAKxC;CACF"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/file.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAM,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAC,gBAAgB,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAK1D;;GAEG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,YAAY,OAAO,EAAE,MAAM,EAI1B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1B;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAKnF;IAEK,MAAM,CAAC,oBAAoB,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D;IAEK,IAAI,CAAC,oBAAoB,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAGzE;IAEK,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAKjD;IAEK,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAKxC;CACF"}
@@ -1,10 +1,10 @@
1
1
  import path from "node:path";
2
+ import { ssz } from "@lodestar/types";
2
3
  import { fromHex, toHex } from "@lodestar/utils";
3
4
  import { ensureDir, readFile, readFileNames, removeFile, writeIfNotExist } from "../../../util/file.js";
4
- import { checkpointToDatastoreKey, getLatestSafeDatastoreKey } from "./db.js";
5
+ import { getLatestSafeDatastoreKey } from "./db.js";
5
6
  const CHECKPOINT_STATES_FOLDER = "checkpoint_states";
6
- /** 41 bytes (40 checkpoint + 1 payloadPresent) = 82 hex chars + "0x" prefix = 84 */
7
- const CHECKPOINT_FILE_NAME_LENGTH = 84;
7
+ const CHECKPOINT_FILE_NAME_LENGTH = 82;
8
8
  /**
9
9
  * Implementation of CPStateDatastore using file system, this is beneficial for debugging.
10
10
  */
@@ -23,8 +23,8 @@ export class FileCPStateDatastore {
23
23
  // do nothing
24
24
  }
25
25
  }
26
- async write(cpKey, stateBytes, payloadPresent) {
27
- const serializedCheckpoint = checkpointToDatastoreKey(cpKey, payloadPresent);
26
+ async write(cpKey, stateBytes) {
27
+ const serializedCheckpoint = ssz.phase0.Checkpoint.serialize(cpKey);
28
28
  const filePath = path.join(this.folderPath, toHex(serializedCheckpoint));
29
29
  await writeIfNotExist(filePath, stateBytes);
30
30
  return serializedCheckpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/file.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACtG,OAAO,EAAC,wBAAwB,EAAE,yBAAyB,EAAC,MAAM,SAAS,CAAC;AAG5E,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AACrD,oFAAoF;AACpF,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACd,UAAU,CAAS;IAEpC,YAAY,OAAe,EAAE;QAC3B,kDAAkD;QAClD,+CAA+C;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;IAAA,CAChE;IAED,KAAK,CAAC,IAAI,GAAkB;QAC1B,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,aAAa;QACf,CAAC;IAAA,CACF;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB,EAAE,UAAsB,EAAE,cAAuB,EAAyB;QAC5G,MAAM,oBAAoB,GAAG,wBAAwB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,MAAM,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC5C,OAAO,oBAAoB,CAAC;IAAA,CAC7B;IAED,KAAK,CAAC,MAAM,CAAC,oBAAkC,EAAiB;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAAA,CAC5B;IAED,KAAK,CAAC,IAAI,CAAC,oBAAkC,EAA8B;QACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAAA,CAC3B;IAED,KAAK,CAAC,cAAc,GAA+B;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEtC,OAAO,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAAA,CACjE;IAED,KAAK,CAAC,QAAQ,GAA4B;QACxC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,OAAO,SAAS;aACb,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,2BAA2B,CAAC;aAClG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CACzC;CACF"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/file.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAS,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACtG,OAAO,EAAC,yBAAyB,EAAC,MAAM,SAAS,CAAC;AAGlD,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AACrD,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACd,UAAU,CAAS;IAEpC,YAAY,OAAe,EAAE;QAC3B,kDAAkD;QAClD,+CAA+C;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;IAAA,CAChE;IAED,KAAK,CAAC,IAAI,GAAkB;QAC1B,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,aAAa;QACf,CAAC;IAAA,CACF;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB,EAAE,UAAsB,EAAyB;QACnF,MAAM,oBAAoB,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,MAAM,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC5C,OAAO,oBAAoB,CAAC;IAAA,CAC7B;IAED,KAAK,CAAC,MAAM,CAAC,oBAAkC,EAAiB;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAAA,CAC5B;IAED,KAAK,CAAC,IAAI,CAAC,oBAAkC,EAA8B;QACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACzE,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAAA,CAC3B;IAED,KAAK,CAAC,cAAc,GAA+B;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEtC,OAAO,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAAA,CACjE;IAED,KAAK,CAAC,QAAQ,GAA4B;QACxC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,OAAO,SAAS;aACb,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,2BAA2B,CAAC;aAClG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CACzC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { phase0 } from "@lodestar/types";
2
2
  export type DatastoreKey = Uint8Array;
3
3
  export interface CPStateDatastore {
4
- write: (cpKey: phase0.Checkpoint, stateBytes: Uint8Array, payloadPresent: boolean) => Promise<DatastoreKey>;
4
+ write: (cpKey: phase0.Checkpoint, stateBytes: Uint8Array) => Promise<DatastoreKey>;
5
5
  remove: (key: DatastoreKey) => Promise<void>;
6
6
  read: (key: DatastoreKey) => Promise<Uint8Array | null>;
7
7
  readLatestSafe: () => Promise<Uint8Array | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAIvC,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAGtC,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5G,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACxD,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACjD,QAAQ,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chain/stateCache/datastore/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAGvC,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAGtC,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IACnF,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACxD,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACjD,QAAQ,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
@@ -15,11 +15,6 @@ export type FIFOBlockStateCacheOpts = {
15
15
  * clock slot
16
16
  */
17
17
  export declare const DEFAULT_MAX_BLOCK_STATES = 64;
18
- /**
19
- * For Gloas (ePBS), each block can have two states: block state and payload state.
20
- * Double the cache size to maintain the same effective block depth.
21
- */
22
- export declare const DEFAULT_MAX_BLOCK_STATES_GLOAS = 128;
23
18
  /**
24
19
  * New implementation of BlockStateCache that keeps the most recent n states consistently
25
20
  * - Maintain a linked list (FIFO) with special handling for head state, which is always the first item in the list
@@ -40,7 +35,7 @@ export declare const DEFAULT_MAX_BLOCK_STATES_GLOAS = 128;
40
35
  * The maintained key order would be: 11 -> 13 -> 12 -> 10, and state 10 will be pruned first.
41
36
  */
42
37
  export declare class FIFOBlockStateCache implements BlockStateCache {
43
- private maxStates;
38
+ readonly maxStates: number;
44
39
  private readonly cache;
45
40
  /**
46
41
  * Key order to implement FIFO cache
@@ -78,7 +73,6 @@ export declare class FIFOBlockStateCache implements BlockStateCache {
78
73
  * The FIFO cache helps with this.
79
74
  */
80
75
  prune(lastAddedKey: string): void;
81
- upgradeToGloas(): void;
82
76
  /**
83
77
  * No need for this implementation
84
78
  * This is only to conform to the old api
@@ -1 +1 @@
1
- {"version":3,"file":"fifoBlockStateCache.d.ts","sourceRoot":"","sources":["../../../src/chain/stateCache/fifoBlockStateCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAG/C,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C;;;GAGG;AACH,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAC7D;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2C;IAEnE,YAAY,IAAI,EAAE,uBAAuB,EAAE,EAAC,OAAO,EAAC,EAAE;QAAC,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;KAAC,EAQ/E;IAED;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAIhD;IAED;;;;OAIG;IACH,YAAY,IAAI,gBAAgB,CAU/B;IAED;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAW7C;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,UAAQ,GAAG,IAAI,CA+BhD;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAehC;IAED,cAAc,IAAI,IAAI,CAErB;IAED;;;OAGG;IACH,oBAAoB,IAAI,IAAI,CAAG;IAE/B;;OAEG;IACH,KAAK,IAAI,IAAI,CAEZ;IAED,0DAA0D;IAC1D,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,CAQ9C;IAED,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAE9C;IAED;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE,CAEvB;CACF"}
1
+ {"version":3,"file":"fifoBlockStateCache.d.ts","sourceRoot":"","sources":["../../../src/chain/stateCache/fifoBlockStateCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAG/C,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAC7D;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2C;IAEnE,YAAY,IAAI,EAAE,uBAAuB,EAAE,EAAC,OAAO,EAAC,EAAE;QAAC,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;KAAC,EAQ/E;IAED;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAIhD;IAED;;;;OAIG;IACH,YAAY,IAAI,gBAAgB,CAU/B;IAED;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAW7C;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,UAAQ,GAAG,IAAI,CA+BhD;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAehC;IAED;;;OAGG;IACH,oBAAoB,IAAI,IAAI,CAAG;IAE/B;;OAEG;IACH,KAAK,IAAI,IAAI,CAEZ;IAED,0DAA0D;IAC1D,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,CAQ9C;IAED,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAE9C;IAED;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE,CAEvB;CACF"}
@@ -10,11 +10,6 @@ import { MapTracker } from "./mapMetrics.js";
10
10
  * clock slot
11
11
  */
12
12
  export const DEFAULT_MAX_BLOCK_STATES = 64;
13
- /**
14
- * For Gloas (ePBS), each block can have two states: block state and payload state.
15
- * Double the cache size to maintain the same effective block depth.
16
- */
17
- export const DEFAULT_MAX_BLOCK_STATES_GLOAS = 128;
18
13
  /**
19
14
  * New implementation of BlockStateCache that keeps the most recent n states consistently
20
15
  * - Maintain a linked list (FIFO) with special handling for head state, which is always the first item in the list
@@ -151,9 +146,6 @@ export class FIFOBlockStateCache {
151
146
  this.cache.delete(key);
152
147
  }
153
148
  }
154
- upgradeToGloas() {
155
- this.maxStates = DEFAULT_MAX_BLOCK_STATES_GLOAS;
156
- }
157
149
  /**
158
150
  * No need for this implementation
159
151
  * This is only to conform to the old api
@@ -1 +1 @@
1
- {"version":3,"file":"fifoBlockStateCache.js","sourceRoot":"","sources":["../../../src/chain/stateCache/fifoBlockStateCache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAO3C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,mBAAmB;IACtB,SAAS,CAAS;IAET,KAAK,CAAuC;IAC7D;;OAEG;IACc,QAAQ,CAAqB;IAC7B,OAAO,CAA2C;IAEnE,YAAY,IAA6B,EAAE,EAAC,OAAO,EAA6B,EAAE;QAChF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,wBAAwB,CAAC;QACjE,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACjD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;YAClC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;IAAA,CAClC;IAED;;OAEG;IACH,YAAY,CAAC,IAA6B,EAAQ;QAChD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvB,CAAC;IAAA,CACF;IAED;;;;OAIG;IACH,YAAY,GAAqB;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YACpB,oBAAoB;YACpB,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC;QACpC,iDAAiD;QACjD,OAAO,UAAU,CAAC;IAAA,CACnB;IAED;;OAEG;IACH,GAAG,CAAC,OAAgB,EAA2B;QAC7C,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC;IAAA,CACb;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAsB,EAAE,MAAM,GAAG,KAAK,EAAQ;QAChD,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAC,+CAA+C,GAAG,EAAE,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YACD,sBAAsB;YACtB,OAAO;QACT,CAAC;QAED,YAAY;QACZ,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,oBAAoB;YACpB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACjB,iDAAiD;gBACjD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAAA,CACjB;IAED,IAAI,IAAI,GAAW;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAAA,CACxB;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAoB,EAAQ;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACjC,uDAAuD;YACvD,kEAAkE;YAClE,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;gBACzB,MAAM;YACR,CAAC;YACD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,oBAAoB;gBACpB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IAAA,CACF;IAED,cAAc,GAAS;QACrB,IAAI,CAAC,SAAS,GAAG,8BAA8B,CAAC;IAAA,CACjD;IAED;;;OAGG;IACH,oBAAoB,GAAS,EAAC,CAAC;IAE/B;;OAEG;IACH,KAAK,GAAS;QACZ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAAA,CACpB;IAED,0DAA0D;IAC1D,WAAW,GAAqC;QAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACrC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YACzC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YAC3C,eAAe,EAAE,KAAK;SACvB,CAAC,CAAC,CAAC;IAAA,CACL;IAED,SAAS,GAAuC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAAA,CAC5B;IAED;;OAEG;IACH,YAAY,GAAa;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAAA,CAChC;CACF"}
1
+ {"version":3,"file":"fifoBlockStateCache.js","sourceRoot":"","sources":["../../../src/chain/stateCache/fifoBlockStateCache.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { routes } from "@lodestar/api";
2
2
  import { BeaconConfig } from "@lodestar/config";
3
- import { CheckpointWithPayloadStatus } from "@lodestar/fork-choice";
4
3
  import { IBeaconStateView } from "@lodestar/state-transition";
5
4
  import { Epoch, RootHex, phase0 } from "@lodestar/types";
6
5
  import { Logger } from "@lodestar/utils";
@@ -8,7 +7,7 @@ import { Metrics } from "../../metrics/index.js";
8
7
  import { BufferPool } from "../../util/bufferPool.js";
9
8
  import { IClock } from "../../util/clock.js";
10
9
  import { CPStateDatastore, DatastoreKey } from "./datastore/index.js";
11
- import { BlockStateCache, CheckpointHexPayload, CheckpointStateCache } from "./types.js";
10
+ import { BlockStateCache, CheckpointHex, CheckpointStateCache } from "./types.js";
12
11
  export type PersistentCheckpointStateCacheOpts = {
13
12
  /** Keep max n state epochs in memory, persist the rest to disk */
14
13
  maxCPStateEpochsInMemory?: number;
@@ -78,7 +77,7 @@ export declare const DEFAULT_MAX_CP_STATE_ON_DISK: number;
78
77
  */
79
78
  export declare class PersistentCheckpointStateCache implements CheckpointStateCache {
80
79
  private readonly cache;
81
- /** Epoch -> Map<blockRoot, PayloadAvailability bitmask> */
80
+ /** Epoch -> Set<blockRoot> */
82
81
  private readonly epochIndex;
83
82
  private readonly config;
84
83
  private readonly metrics;
@@ -104,29 +103,27 @@ export declare class PersistentCheckpointStateCache implements CheckpointStateCa
104
103
  * - Get block for processing
105
104
  * - Regen head state
106
105
  */
107
- getOrReload(cp: CheckpointHexPayload): Promise<IBeaconStateView | null>;
106
+ getOrReload(cp: CheckpointHex): Promise<IBeaconStateView | null>;
108
107
  /**
109
108
  * Return either state or state bytes loaded from db.
110
109
  */
111
- getStateOrBytes(cp: CheckpointHexPayload): Promise<IBeaconStateView | Uint8Array | null>;
110
+ getStateOrBytes(cp: CheckpointHex): Promise<IBeaconStateView | Uint8Array | null>;
112
111
  /**
113
112
  * Return either state or state bytes with persisted key loaded from db.
114
113
  */
115
- getStateOrLoadDb(cp: CheckpointHexPayload): Promise<IBeaconStateView | LoadedStateBytesData | null>;
114
+ getStateOrLoadDb(cp: CheckpointHex): Promise<IBeaconStateView | LoadedStateBytesData | null>;
116
115
  /**
117
116
  * Similar to get() api without reloading from disk
118
117
  */
119
- get(cpOrKey: CheckpointHexPayload | CacheKey): IBeaconStateView | null;
118
+ get(cpOrKey: CheckpointHex | CacheKey): IBeaconStateView | null;
120
119
  /**
121
120
  * Add a state of a checkpoint to this cache, prune from memory if necessary.
122
- * @param payloadPresent - For Gloas: true if this is payload state, false if block state.
123
- * Always true for pre-Gloas.
124
121
  */
125
- add(cp: phase0.Checkpoint, state: IBeaconStateView, payloadPresent: boolean): void;
122
+ add(cp: phase0.Checkpoint, state: IBeaconStateView): void;
126
123
  /**
127
124
  * Searches in-memory state for the latest cached state with a `root` without reload, starting with `epoch` and descending
128
125
  */
129
- getLatest(rootHex: RootHex, maxEpoch: Epoch, payloadPresent: boolean): IBeaconStateView | null;
126
+ getLatest(rootHex: RootHex, maxEpoch: Epoch): IBeaconStateView | null;
130
127
  /**
131
128
  * Searches state for the latest cached state with a `root`, reload if needed, starting with `epoch` and descending
132
129
  * This is expensive api, should only be called in some important flows:
@@ -134,14 +131,12 @@ export declare class PersistentCheckpointStateCache implements CheckpointStateCa
134
131
  * - Get block for processing
135
132
  * - Regen head state
136
133
  */
137
- getOrReloadLatest(rootHex: RootHex, maxEpoch: Epoch, payloadPresent: boolean): Promise<IBeaconStateView | null>;
134
+ getOrReloadLatest(rootHex: RootHex, maxEpoch: Epoch): Promise<IBeaconStateView | null>;
138
135
  /**
139
136
  * Update the precomputed checkpoint and return the number of hits for the
140
137
  * previous one (if any).
141
- * @param payloadPresent - For Gloas: true if head block has FULL payload, false if EMPTY.
142
- * Always true for pre-Gloas.
143
138
  */
144
- updatePreComputedCheckpoint(rootHex: RootHex, epoch: Epoch, payloadPresent: boolean): number | null;
139
+ updatePreComputedCheckpoint(rootHex: RootHex, epoch: Epoch): number | null;
145
140
  /**
146
141
  * This is just to conform to the old implementation
147
142
  */
@@ -199,9 +194,6 @@ export declare class PersistentCheckpointStateCache implements CheckpointStateCa
199
194
  * - 2 then we'll persist {root: b2, epoch n-2} checkpoint state to disk, there are also 2 checkpoint states in memory at epoch n, same to the above (maxEpochsInMemory=1)
200
195
  *
201
196
  * As of Mar 2024, it takes <=350ms to persist a holesky state on fast server
202
- *
203
- * For Gloas: Processes both block state and payload state variants together. The decision of which roots to persist/prune
204
- * is based on root canonicality (from state's view), not payload presence. Both variants are managed as a unit.
205
197
  */
206
198
  processState(blockRootHex: RootHex, state: IBeaconStateView): Promise<number>;
207
199
  /**
@@ -221,11 +213,8 @@ export declare class PersistentCheckpointStateCache implements CheckpointStateCa
221
213
  *
222
214
  * Use seed state from the block cache if cannot find any seed states within this cache.
223
215
  */
224
- findSeedStateToReload(reloadedCp: CheckpointHexPayload): IBeaconStateView;
216
+ findSeedStateToReload(reloadedCp: CheckpointHex): IBeaconStateView;
225
217
  clear(): void;
226
- private addToEpochIndex;
227
- private removeFromEpochIndex;
228
- private hasPayloadVariant;
229
218
  /** ONLY FOR DEBUGGING PURPOSES. For lodestar debug API */
230
219
  dumpSummary(): routes.lodestar.StateCacheItem[];
231
220
  getStates(): IterableIterator<IBeaconStateView>;
@@ -246,13 +235,7 @@ export declare class PersistentCheckpointStateCache implements CheckpointStateCa
246
235
  */
247
236
  private serializeStateValidators;
248
237
  }
249
- export declare function toCheckpointHexPayload(checkpoint: phase0.Checkpoint, payloadPresent: boolean): CheckpointHexPayload;
250
- /**
251
- * Convert fork-choice CheckpointWithPayloadStatus to beacon-node CheckpointHexPayload.
252
- * Maps PayloadStatus enum to boolean payloadPresent.
253
- * @throws Error if checkpoint has PENDING payload status (ambiguous which variant to use)
254
- */
255
- export declare function fcCheckpointToHexPayload(checkpoint: CheckpointWithPayloadStatus): CheckpointHexPayload;
256
- export declare function toCheckpointKey(cp: CheckpointHexPayload): string;
238
+ export declare function toCheckpointHex(checkpoint: phase0.Checkpoint): CheckpointHex;
239
+ export declare function toCheckpointKey(cp: CheckpointHex): string;
257
240
  export {};
258
241
  //# sourceMappingURL=persistentCheckpointsCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistentCheckpointsCache.d.ts","sourceRoot":"","sources":["../../../src/chain/stateCache/persistentCheckpointsCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistentCheckpointsCache.d.ts","sourceRoot":"","sources":["../../../src/chain/stateCache/persistentCheckpointsCache.ts"],"names":[],"mappings":"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"}