@lodestar/beacon-node 1.50.0-dev.fda8006fc3 → 1.50.0-rc.0

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 (217) hide show
  1. package/lib/api/impl/beacon/state/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/state/index.js +26 -5
  3. package/lib/api/impl/beacon/state/index.js.map +1 -1
  4. package/lib/api/impl/validator/index.d.ts.map +1 -1
  5. package/lib/api/impl/validator/index.js +26 -0
  6. package/lib/api/impl/validator/index.js.map +1 -1
  7. package/lib/chain/archiveStore/archiveStore.d.ts +5 -0
  8. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  9. package/lib/chain/archiveStore/archiveStore.js +13 -23
  10. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  11. package/lib/chain/archiveStore/utils/pruneHistory.d.ts +1 -1
  12. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +1 -1
  13. package/lib/chain/archiveStore/utils/pruneHistory.js +2 -1
  14. package/lib/chain/archiveStore/utils/pruneHistory.js.map +1 -1
  15. package/lib/chain/beaconProposerCache.d.ts +6 -0
  16. package/lib/chain/beaconProposerCache.d.ts.map +1 -1
  17. package/lib/chain/beaconProposerCache.js +16 -0
  18. package/lib/chain/beaconProposerCache.js.map +1 -1
  19. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  20. package/lib/chain/blocks/importBlock.js +14 -8
  21. package/lib/chain/blocks/importBlock.js.map +1 -1
  22. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  23. package/lib/chain/blocks/verifyBlock.js +6 -6
  24. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  25. package/lib/chain/chain.d.ts +3 -1
  26. package/lib/chain/chain.d.ts.map +1 -1
  27. package/lib/chain/chain.js +55 -19
  28. package/lib/chain/chain.js.map +1 -1
  29. package/lib/chain/interface.d.ts +2 -0
  30. package/lib/chain/interface.d.ts.map +1 -1
  31. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +4 -2
  32. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  33. package/lib/chain/opPools/aggregatedAttestationPool.js +30 -8
  34. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  35. package/lib/chain/opPools/opPool.d.ts.map +1 -1
  36. package/lib/chain/opPools/opPool.js +1 -23
  37. package/lib/chain/opPools/opPool.js.map +1 -1
  38. package/lib/chain/opPools/proposerPreferencesPool.d.ts +4 -0
  39. package/lib/chain/opPools/proposerPreferencesPool.d.ts.map +1 -1
  40. package/lib/chain/opPools/proposerPreferencesPool.js +13 -1
  41. package/lib/chain/opPools/proposerPreferencesPool.js.map +1 -1
  42. package/lib/chain/opPools/utils.d.ts +11 -0
  43. package/lib/chain/opPools/utils.d.ts.map +1 -1
  44. package/lib/chain/opPools/utils.js +22 -0
  45. package/lib/chain/opPools/utils.js.map +1 -1
  46. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  47. package/lib/chain/prepareNextSlot.js +11 -3
  48. package/lib/chain/prepareNextSlot.js.map +1 -1
  49. package/lib/chain/produceBlock/produceBlockBody.d.ts +8 -0
  50. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  51. package/lib/chain/produceBlock/produceBlockBody.js +40 -28
  52. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  53. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +7 -0
  54. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  55. package/lib/chain/seenCache/seenGossipBlockInput.js +21 -0
  56. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  57. package/lib/chain/shufflingCache.d.ts +18 -8
  58. package/lib/chain/shufflingCache.d.ts.map +1 -1
  59. package/lib/chain/shufflingCache.js +72 -18
  60. package/lib/chain/shufflingCache.js.map +1 -1
  61. package/lib/db/beacon.d.ts +4 -1
  62. package/lib/db/beacon.d.ts.map +1 -1
  63. package/lib/db/beacon.js +6 -1
  64. package/lib/db/beacon.js.map +1 -1
  65. package/lib/db/buckets.d.ts +3 -1
  66. package/lib/db/buckets.d.ts.map +1 -1
  67. package/lib/db/buckets.js +2 -0
  68. package/lib/db/buckets.js.map +1 -1
  69. package/lib/db/interface.d.ts +4 -1
  70. package/lib/db/interface.d.ts.map +1 -1
  71. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  72. package/lib/db/repositories/blockArchiveIndex.d.ts.map +1 -1
  73. package/lib/db/repositories/earliestAvailableSlot.d.ts +11 -0
  74. package/lib/db/repositories/earliestAvailableSlot.d.ts.map +1 -0
  75. package/lib/db/repositories/earliestAvailableSlot.js +19 -0
  76. package/lib/db/repositories/earliestAvailableSlot.js.map +1 -0
  77. package/lib/db/repositories/index.d.ts +1 -0
  78. package/lib/db/repositories/index.d.ts.map +1 -1
  79. package/lib/db/repositories/index.js +1 -0
  80. package/lib/db/repositories/index.js.map +1 -1
  81. package/lib/db/repositories/proposerPreferences.d.ts +14 -0
  82. package/lib/db/repositories/proposerPreferences.d.ts.map +1 -0
  83. package/lib/db/repositories/proposerPreferences.js +21 -0
  84. package/lib/db/repositories/proposerPreferences.js.map +1 -0
  85. package/lib/execution/engine/blobVersionedHashes.d.ts +9 -0
  86. package/lib/execution/engine/blobVersionedHashes.d.ts.map +1 -0
  87. package/lib/execution/engine/blobVersionedHashes.js +74 -0
  88. package/lib/execution/engine/blobVersionedHashes.js.map +1 -0
  89. package/lib/execution/engine/http.d.ts +45 -13
  90. package/lib/execution/engine/http.d.ts.map +1 -1
  91. package/lib/execution/engine/http.js +236 -198
  92. package/lib/execution/engine/http.js.map +1 -1
  93. package/lib/execution/engine/index.d.ts +3 -2
  94. package/lib/execution/engine/index.d.ts.map +1 -1
  95. package/lib/execution/engine/index.js +33 -8
  96. package/lib/execution/engine/index.js.map +1 -1
  97. package/lib/execution/engine/interface.d.ts +1 -1
  98. package/lib/execution/engine/interface.d.ts.map +1 -1
  99. package/lib/execution/engine/jsonRpcTransport.d.ts +25 -0
  100. package/lib/execution/engine/jsonRpcTransport.d.ts.map +1 -0
  101. package/lib/execution/engine/jsonRpcTransport.js +158 -0
  102. package/lib/execution/engine/jsonRpcTransport.js.map +1 -0
  103. package/lib/execution/engine/restHttpClient.d.ts +71 -0
  104. package/lib/execution/engine/restHttpClient.d.ts.map +1 -0
  105. package/lib/execution/engine/restHttpClient.js +201 -0
  106. package/lib/execution/engine/restHttpClient.js.map +1 -0
  107. package/lib/execution/engine/restTransport.d.ts +46 -0
  108. package/lib/execution/engine/restTransport.d.ts.map +1 -0
  109. package/lib/execution/engine/restTransport.js +399 -0
  110. package/lib/execution/engine/restTransport.js.map +1 -0
  111. package/lib/execution/engine/sszTypes.d.ts +1261 -0
  112. package/lib/execution/engine/sszTypes.d.ts.map +1 -0
  113. package/lib/execution/engine/sszTypes.js +216 -0
  114. package/lib/execution/engine/sszTypes.js.map +1 -0
  115. package/lib/execution/engine/transport.d.ts +39 -0
  116. package/lib/execution/engine/transport.d.ts.map +1 -0
  117. package/lib/execution/engine/transport.js +2 -0
  118. package/lib/execution/engine/transport.js.map +1 -0
  119. package/lib/execution/engine/types.d.ts +2 -0
  120. package/lib/execution/engine/types.d.ts.map +1 -1
  121. package/lib/execution/engine/types.js +24 -57
  122. package/lib/execution/engine/types.js.map +1 -1
  123. package/lib/execution/engine/utils.d.ts.map +1 -1
  124. package/lib/execution/engine/utils.js +9 -2
  125. package/lib/execution/engine/utils.js.map +1 -1
  126. package/lib/metrics/metrics/lodestar.d.ts +10 -0
  127. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  128. package/lib/metrics/metrics/lodestar.js +22 -0
  129. package/lib/metrics/metrics/lodestar.js.map +1 -1
  130. package/lib/network/core/events.d.ts +5 -1
  131. package/lib/network/core/events.d.ts.map +1 -1
  132. package/lib/network/core/events.js +8 -0
  133. package/lib/network/core/events.js.map +1 -1
  134. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  135. package/lib/network/processor/gossipHandlers.js +60 -64
  136. package/lib/network/processor/gossipHandlers.js.map +1 -1
  137. package/lib/node/nodejs.d.ts +3 -1
  138. package/lib/node/nodejs.d.ts.map +1 -1
  139. package/lib/node/nodejs.js +2 -1
  140. package/lib/node/nodejs.js.map +1 -1
  141. package/lib/node/options.d.ts +3 -2
  142. package/lib/node/options.d.ts.map +1 -1
  143. package/lib/node/options.js +2 -2
  144. package/lib/node/options.js.map +1 -1
  145. package/lib/sync/range/batch.d.ts +5 -5
  146. package/lib/sync/range/batch.d.ts.map +1 -1
  147. package/lib/sync/range/batch.js +11 -17
  148. package/lib/sync/range/batch.js.map +1 -1
  149. package/lib/sync/range/chain.d.ts +4 -4
  150. package/lib/sync/range/chain.d.ts.map +1 -1
  151. package/lib/sync/range/chain.js +7 -5
  152. package/lib/sync/range/chain.js.map +1 -1
  153. package/lib/sync/range/range.d.ts.map +1 -1
  154. package/lib/sync/range/range.js +25 -11
  155. package/lib/sync/range/range.js.map +1 -1
  156. package/lib/sync/unknownBlock.d.ts +5 -2
  157. package/lib/sync/unknownBlock.d.ts.map +1 -1
  158. package/lib/sync/unknownBlock.js +44 -20
  159. package/lib/sync/unknownBlock.js.map +1 -1
  160. package/lib/sync/utils/downloadByRange.d.ts +38 -14
  161. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  162. package/lib/sync/utils/downloadByRange.js +84 -39
  163. package/lib/sync/utils/downloadByRange.js.map +1 -1
  164. package/lib/util/asyncIterableToEvents.d.ts +10 -2
  165. package/lib/util/asyncIterableToEvents.d.ts.map +1 -1
  166. package/lib/util/asyncIterableToEvents.js +29 -3
  167. package/lib/util/asyncIterableToEvents.js.map +1 -1
  168. package/lib/util/metadata.d.ts.map +1 -1
  169. package/lib/util/metadata.js +2 -1
  170. package/lib/util/metadata.js.map +1 -1
  171. package/package.json +17 -16
  172. package/src/api/impl/beacon/state/index.ts +41 -5
  173. package/src/api/impl/validator/index.ts +37 -0
  174. package/src/chain/archiveStore/archiveStore.ts +18 -24
  175. package/src/chain/archiveStore/utils/pruneHistory.ts +4 -1
  176. package/src/chain/beaconProposerCache.ts +19 -1
  177. package/src/chain/blocks/importBlock.ts +17 -7
  178. package/src/chain/blocks/verifyBlock.ts +7 -6
  179. package/src/chain/chain.ts +68 -18
  180. package/src/chain/interface.ts +2 -0
  181. package/src/chain/opPools/aggregatedAttestationPool.ts +34 -10
  182. package/src/chain/opPools/opPool.ts +1 -31
  183. package/src/chain/opPools/proposerPreferencesPool.ts +20 -1
  184. package/src/chain/opPools/utils.ts +31 -0
  185. package/src/chain/prepareNextSlot.ts +15 -3
  186. package/src/chain/produceBlock/produceBlockBody.ts +68 -34
  187. package/src/chain/seenCache/seenGossipBlockInput.ts +23 -0
  188. package/src/chain/shufflingCache.ts +84 -22
  189. package/src/db/beacon.ts +6 -0
  190. package/src/db/buckets.ts +2 -0
  191. package/src/db/interface.ts +4 -0
  192. package/src/db/repositories/earliestAvailableSlot.ts +19 -0
  193. package/src/db/repositories/index.ts +1 -0
  194. package/src/db/repositories/proposerPreferences.ts +23 -0
  195. package/src/execution/engine/blobVersionedHashes.ts +72 -0
  196. package/src/execution/engine/http.ts +304 -271
  197. package/src/execution/engine/index.ts +41 -7
  198. package/src/execution/engine/interface.ts +1 -1
  199. package/src/execution/engine/jsonRpcTransport.ts +247 -0
  200. package/src/execution/engine/restHttpClient.ts +269 -0
  201. package/src/execution/engine/restTransport.ts +544 -0
  202. package/src/execution/engine/sszTypes.ts +354 -0
  203. package/src/execution/engine/transport.ts +61 -0
  204. package/src/execution/engine/types.ts +34 -74
  205. package/src/execution/engine/utils.ts +12 -2
  206. package/src/metrics/metrics/lodestar.ts +23 -0
  207. package/src/network/core/events.ts +16 -1
  208. package/src/network/processor/gossipHandlers.ts +91 -77
  209. package/src/node/nodejs.ts +4 -0
  210. package/src/node/options.ts +10 -1
  211. package/src/sync/range/batch.ts +14 -19
  212. package/src/sync/range/chain.ts +9 -7
  213. package/src/sync/range/range.ts +26 -12
  214. package/src/sync/unknownBlock.ts +57 -21
  215. package/src/sync/utils/downloadByRange.ts +123 -58
  216. package/src/util/asyncIterableToEvents.ts +44 -5
  217. package/src/util/metadata.ts +2 -1
@@ -6,7 +6,8 @@ import { type IDataColumnStore } from "./dataColumnStore.js";
6
6
  import type { FlatFileStoreMetrics } from "./flatFileStore/metrics.js";
7
7
  import { IBeaconDb } from "./interface.js";
8
8
  import { CheckpointStateRepository } from "./repositories/checkpointState.js";
9
- import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository } from "./repositories/index.js";
9
+ import { EarliestAvailableSlotRepository } from "./repositories/earliestAvailableSlot.js";
10
+ import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerPreferencesRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository } from "./repositories/index.js";
10
11
  export type BeaconDbOpts = {
11
12
  dataColumnDir: string;
12
13
  logger: Logger;
@@ -24,8 +25,10 @@ export declare class BeaconDb implements IBeaconDb {
24
25
  executionPayloadEnvelopeArchive: ExecutionPayloadEnvelopeArchiveRepository;
25
26
  stateArchive: StateArchiveRepository;
26
27
  checkpointState: CheckpointStateRepository;
28
+ earliestAvailableSlot: EarliestAvailableSlotRepository;
27
29
  voluntaryExit: VoluntaryExitRepository;
28
30
  proposerSlashing: ProposerSlashingRepository;
31
+ proposerPreferences: ProposerPreferencesRepository;
29
32
  attesterSlashing: AttesterSlashingRepository;
30
33
  blsToExecutionChange: BLSToExecutionChangeRepository;
31
34
  bestLightClientUpdate: BestLightClientUpdateRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"beacon.d.ts","sourceRoot":"","sources":["../../src/db/beacon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAC,EAAE,EAAE,wBAAwB,EAAY,MAAM,cAAc,CAAC;AACrE,OAAO,EAAC,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAC,KAAK,gBAAgB,EAAwB,MAAM,sBAAsB,CAAC;AAElF,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,kCAAkC,EAClC,2BAA2B,EAC3B,yCAAyC,EACzC,kCAAkC,EAClC,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,qBAAa,QAAS,YAAW,SAAS;IAgCtC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE;IA/B3B,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,EAAE,sBAAsB,CAAC;IAErC,YAAY,EAAE,sBAAsB,CAAC;IACrC,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,wBAAwB,EAAE,kCAAkC,CAAC;IAE7D,wBAAwB,EAAE,kCAAkC,CAAC;IAC7D,+BAA+B,EAAE,yCAAyC,CAAC;IAE3E,YAAY,EAAE,sBAAsB,CAAC;IACrC,eAAe,EAAE,yBAAyB,CAAC;IAE3C,aAAa,EAAE,uBAAuB,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,oBAAoB,EAAE,8BAA8B,CAAC;IAGrD,qBAAqB,EAAE,+BAA+B,CAAC;IACvD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,aAAa,EAAE,uBAAuB,CAAC;IACvC,oBAAoB,EAAE,8BAA8B,CAAC;IAErD,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,qBAAqB,EAAE,IAAI,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,YACE,MAAM,EAAE,eAAe,EACJ,EAAE,EAAE,EAAE,EACzB,IAAI,EAAE,YAAY,EAkCnB;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAI1B;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3B;IAED,UAAU,CAAC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,GAAE,oBAAoB,GAAG,IAAW,GAAG,IAAI,CAG5G;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQhC;IAEK,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAa9C;YAEa,gBAAgB;CAoB/B"}
1
+ {"version":3,"file":"beacon.d.ts","sourceRoot":"","sources":["../../src/db/beacon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAC,EAAE,EAAE,wBAAwB,EAAY,MAAM,cAAc,CAAC;AACrE,OAAO,EAAC,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAC,KAAK,gBAAgB,EAAwB,MAAM,sBAAsB,CAAC;AAElF,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAC,+BAA+B,EAAC,MAAM,yCAAyC,CAAC;AACxF,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,kCAAkC,EAClC,2BAA2B,EAC3B,yCAAyC,EACzC,kCAAkC,EAClC,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,qBAAa,QAAS,YAAW,SAAS;IAkCtC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE;IAjC3B,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,EAAE,sBAAsB,CAAC;IAErC,YAAY,EAAE,sBAAsB,CAAC;IACrC,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,wBAAwB,EAAE,kCAAkC,CAAC;IAE7D,wBAAwB,EAAE,kCAAkC,CAAC;IAC7D,+BAA+B,EAAE,yCAAyC,CAAC;IAE3E,YAAY,EAAE,sBAAsB,CAAC;IACrC,eAAe,EAAE,yBAAyB,CAAC;IAC3C,qBAAqB,EAAE,+BAA+B,CAAC;IAEvD,aAAa,EAAE,uBAAuB,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,oBAAoB,EAAE,8BAA8B,CAAC;IAGrD,qBAAqB,EAAE,+BAA+B,CAAC;IACvD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,aAAa,EAAE,uBAAuB,CAAC;IACvC,oBAAoB,EAAE,8BAA8B,CAAC;IAErD,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,qBAAqB,EAAE,IAAI,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,YACE,MAAM,EAAE,eAAe,EACJ,EAAE,EAAE,EAAE,EACzB,IAAI,EAAE,YAAY,EAoCnB;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAI1B;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3B;IAED,UAAU,CAAC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,GAAE,oBAAoB,GAAG,IAAW,GAAG,IAAI,CAG5G;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQhC;IAEK,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAa9C;YAEa,gBAAgB;CAoB/B"}
package/lib/db/beacon.js CHANGED
@@ -3,7 +3,8 @@ import { Bucket } from "./buckets.js";
3
3
  import { LegacyDataColumnStore } from "./dataColumnStore.js";
4
4
  import { FlatFileStore } from "./flatFileStore/flatFileStore.js";
5
5
  import { CheckpointStateRepository } from "./repositories/checkpointState.js";
6
- import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository, } from "./repositories/index.js";
6
+ import { EarliestAvailableSlotRepository } from "./repositories/earliestAvailableSlot.js";
7
+ import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerPreferencesRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository, } from "./repositories/index.js";
7
8
  export class BeaconDb {
8
9
  db;
9
10
  block;
@@ -16,8 +17,10 @@ export class BeaconDb {
16
17
  executionPayloadEnvelopeArchive;
17
18
  stateArchive;
18
19
  checkpointState;
20
+ earliestAvailableSlot;
19
21
  voluntaryExit;
20
22
  proposerSlashing;
23
+ proposerPreferences;
21
24
  attesterSlashing;
22
25
  blsToExecutionChange;
23
26
  // lightclient
@@ -41,9 +44,11 @@ export class BeaconDb {
41
44
  this.executionPayloadEnvelopeArchive = new ExecutionPayloadEnvelopeArchiveRepository(config, db);
42
45
  this.stateArchive = new StateArchiveRepository(config, db);
43
46
  this.checkpointState = new CheckpointStateRepository(config, db);
47
+ this.earliestAvailableSlot = new EarliestAvailableSlotRepository(db);
44
48
  this.voluntaryExit = new VoluntaryExitRepository(config, db);
45
49
  this.blsToExecutionChange = new BLSToExecutionChangeRepository(config, db);
46
50
  this.proposerSlashing = new ProposerSlashingRepository(config, db);
51
+ this.proposerPreferences = new ProposerPreferencesRepository(config, db);
47
52
  this.attesterSlashing = new AttesterSlashingRepository(config, db);
48
53
  // lightclient
49
54
  this.bestLightClientUpdate = new BestLightClientUpdateRepository(config, db);
@@ -1 +1 @@
1
- {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../src/db/beacon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../src/db/beacon.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,9 @@ export declare enum Bucket {
33
33
  allForks_dataColumnSidecars = 57,// BeaconBlockRoot -> DataColumnSidecars
34
34
  allForks_dataColumnSidecarsArchive = 58,// BeaconBlockSlot -> DataColumnSidecars
35
35
  gloas_executionPayloadEnvelope = 59,// GLOAS BeaconBlockRoot -> SignedExecutionPayloadEnvelope
36
- gloas_executionPayloadEnvelopeArchive = 60
36
+ gloas_executionPayloadEnvelopeArchive = 60,// GLOAS Slot -> SignedExecutionPayloadEnvelope, or 0x00 + SignedExecutionPayloadHeaderEnvelope
37
+ earliestAvailableSlot = 61,// singleton -> Slot
38
+ gloas_proposerPreferences = 62
37
39
  }
38
40
  export declare function getBucketNameByValue<T extends Bucket>(enumValue: T): keyof typeof Bucket;
39
41
  //# sourceMappingURL=buckets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buckets.d.ts","sourceRoot":"","sources":["../../src/db/buckets.ts"],"names":[],"mappings":"AACA,oBAAY,MAAM;IAGhB,qBAAqB,IAAI,CAAE,6BAA6B;IAExD,cAAc,IAAI,CAAE,mCAAmC;IAEvD,qBAAqB,IAAI,CAAE,mCAAmC;IAE9D,iCAAiC,IAAI,CAAE,sBAAsB;IAC7D,2BAA2B,IAAI,CAAE,eAAe;IAIhD,eAAe,IAAI,CAAE,4BAA4B;IAEjD,eAAe,IAAI,CAAE,0CAA0C;IAC/D,+HAA+H;IAC/H,eAAe,IAAI;IACnB,+HAA+H;IAC/H,qBAAqB,IAAI;IAKzB,+HAA+H;IAC/H,kBAAkB,KAAK;IACvB,WAAW,KAAK,CAAE,kCAAkC;IACpD,uBAAuB,KAAK,CAAE,qCAAqC;IACnE,yBAAyB,KAAK,CAAE,2BAA2B;IAC3D,4BAA4B,KAAK,CAAE,+CAA+C;IAElF,wBAAwB,KAAK,CAAE,sBAAsB;IAGrD,+HAA+H;IAC/H,mBAAmB,KAAK;IAExB,2BAA2B,KAAK,CAAE,qBAAqB;IAEvD,kBAAkB,KAAK,CAAE,wCAAwC;IACjE,yBAAyB,KAAK,CAAE,wCAAwC;IAExE,oHAAoH;IACpH,sBAAsB,KAAK;IAC3B,oHAAoH;IACpH,wCAAwC,KAAK;IAc7C,gCAAgC,KAAK,CAAE,oCAAoC;IAC3E,yBAAyB,KAAK,CAAE,qDAAqD;IAErF,4BAA4B,KAAK,CAAE,wCAAwC;IAG3E,iCAAiC,KAAK,CAAE,0CAA0C;IAElF,2BAA2B,KAAK,CAAE,wCAAwC;IAC1E,kCAAkC,KAAK,CAAE,wCAAwC;IAEjF,8BAA8B,KAAK,CAAE,0DAA0D;IAC/F,qCAAqC,KAAK;CAC3C;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,OAAO,MAAM,CAWxF"}
1
+ {"version":3,"file":"buckets.d.ts","sourceRoot":"","sources":["../../src/db/buckets.ts"],"names":[],"mappings":"AACA,oBAAY,MAAM;IAGhB,qBAAqB,IAAI,CAAE,6BAA6B;IAExD,cAAc,IAAI,CAAE,mCAAmC;IAEvD,qBAAqB,IAAI,CAAE,mCAAmC;IAE9D,iCAAiC,IAAI,CAAE,sBAAsB;IAC7D,2BAA2B,IAAI,CAAE,eAAe;IAIhD,eAAe,IAAI,CAAE,4BAA4B;IAEjD,eAAe,IAAI,CAAE,0CAA0C;IAC/D,+HAA+H;IAC/H,eAAe,IAAI;IACnB,+HAA+H;IAC/H,qBAAqB,IAAI;IAKzB,+HAA+H;IAC/H,kBAAkB,KAAK;IACvB,WAAW,KAAK,CAAE,kCAAkC;IACpD,uBAAuB,KAAK,CAAE,qCAAqC;IACnE,yBAAyB,KAAK,CAAE,2BAA2B;IAC3D,4BAA4B,KAAK,CAAE,+CAA+C;IAElF,wBAAwB,KAAK,CAAE,sBAAsB;IAGrD,+HAA+H;IAC/H,mBAAmB,KAAK;IAExB,2BAA2B,KAAK,CAAE,qBAAqB;IAEvD,kBAAkB,KAAK,CAAE,wCAAwC;IACjE,yBAAyB,KAAK,CAAE,wCAAwC;IAExE,oHAAoH;IACpH,sBAAsB,KAAK;IAC3B,oHAAoH;IACpH,wCAAwC,KAAK;IAc7C,gCAAgC,KAAK,CAAE,oCAAoC;IAC3E,yBAAyB,KAAK,CAAE,qDAAqD;IAErF,4BAA4B,KAAK,CAAE,wCAAwC;IAG3E,iCAAiC,KAAK,CAAE,0CAA0C;IAElF,2BAA2B,KAAK,CAAE,wCAAwC;IAC1E,kCAAkC,KAAK,CAAE,wCAAwC;IAEjF,8BAA8B,KAAK,CAAE,0DAA0D;IAC/F,qCAAqC,KAAK,CAAE,+FAA+F;IAC3I,qBAAqB,KAAK,CAAE,oBAAoB;IAChD,yBAAyB,KAAK;CAC/B;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,OAAO,MAAM,CAWxF"}
package/lib/db/buckets.js CHANGED
@@ -63,6 +63,8 @@ export var Bucket;
63
63
  Bucket[Bucket["allForks_dataColumnSidecarsArchive"] = 58] = "allForks_dataColumnSidecarsArchive";
64
64
  Bucket[Bucket["gloas_executionPayloadEnvelope"] = 59] = "gloas_executionPayloadEnvelope";
65
65
  Bucket[Bucket["gloas_executionPayloadEnvelopeArchive"] = 60] = "gloas_executionPayloadEnvelopeArchive";
66
+ Bucket[Bucket["earliestAvailableSlot"] = 61] = "earliestAvailableSlot";
67
+ Bucket[Bucket["gloas_proposerPreferences"] = 62] = "gloas_proposerPreferences";
66
68
  })(Bucket || (Bucket = {}));
67
69
  export function getBucketNameByValue(enumValue) {
68
70
  const keys = Object.keys(Bucket).filter((x) => {
@@ -1 +1 @@
1
- {"version":3,"file":"buckets.js","sourceRoot":"","sources":["../../src/db/buckets.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,MAAM,CAAN,IAAY,MAyEX;AAzED,WAAY,MAAM;IAChB,eAAe;IACf,mBAAmB;IACnB,qEAAyB,CAAA;IACzB,qBAAqB;IACrB,uDAAkB,CAAA;IAClB,mBAAmB;IACnB,qEAAyB,CAAA;IACzB,qCAAqC;IACrC,6FAAqC,CAAA;IACrC,iFAA+B,CAAA;IAC/B,kBAAkB;IAClB,mDAAmD;IACnD,kBAAkB;IAClB,yDAAmB,CAAA;IACnB,8CAA8C;IAC9C,yDAAmB,CAAA;IACnB,+HAA+H;IAC/H,yDAAmB,CAAA;IACnB,+HAA+H;IAC/H,qEAAyB,CAAA;IAEzB,UAAU;IACV,oDAAoD;IACpD,oFAAoF;IACpF,+HAA+H;IAC/H,gEAAuB,CAAA;IACvB,kDAAgB,CAAA;IAChB,0EAA4B,CAAA;IAC5B,8EAA8B,CAAA;IAC9B,oFAAiC,CAAA;IACjC,oBAAoB;IACpB,4EAA6B,CAAA;IAE7B,oFAAoF;IACpF,+HAA+H;IAC/H,kEAAwB,CAAA;IAExB,kFAAgC,CAAA;IAEhC,gEAAuB,CAAA;IACvB,8EAA8B,CAAA;IAE9B,oHAAoH;IACpH,wEAA2B,CAAA;IAC3B,oHAAoH;IACpH,4GAA6C,CAAA;IAE7C,qBAAqB;IACrB,qEAAqE;IACrE,8DAA8D;IAC9D,iEAAiE;IACjE,uEAAuE;IACvE,6DAA6D;IAC7D,sEAAsE;IACtE,4DAA4D;IAE5D,mDAAmD;IAEnD,2CAA2C;IAC3C,4FAAqC,CAAA;IACrC,8EAA8B,CAAA;IAC9B,yCAAyC;IACzC,oFAAiC,CAAA;IACjC,gEAAgE;IAChE,qGAAqG;IACrG,8FAAsC,CAAA;IAEtC,kFAAgC,CAAA;IAChC,gGAAuC,CAAA;IAEvC,wFAAmC,CAAA;IACnC,sGAA0C,CAAA;AAC5C,CAAC,EAzEW,MAAM,KAAN,MAAM,QAyEjB;AAED,MAAM,UAAU,oBAAoB,CAAmB,SAAY;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,CAAwB,CAAC,KAAK,SAAS,CAAC;QACxD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAA4B,CAAC;IAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"buckets.js","sourceRoot":"","sources":["../../src/db/buckets.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,MAAM,CAAN,IAAY,MA2EX;AA3ED,WAAY,MAAM;IAChB,eAAe;IACf,mBAAmB;IACnB,qEAAyB,CAAA;IACzB,qBAAqB;IACrB,uDAAkB,CAAA;IAClB,mBAAmB;IACnB,qEAAyB,CAAA;IACzB,qCAAqC;IACrC,6FAAqC,CAAA;IACrC,iFAA+B,CAAA;IAC/B,kBAAkB;IAClB,mDAAmD;IACnD,kBAAkB;IAClB,yDAAmB,CAAA;IACnB,8CAA8C;IAC9C,yDAAmB,CAAA;IACnB,+HAA+H;IAC/H,yDAAmB,CAAA;IACnB,+HAA+H;IAC/H,qEAAyB,CAAA;IAEzB,UAAU;IACV,oDAAoD;IACpD,oFAAoF;IACpF,+HAA+H;IAC/H,gEAAuB,CAAA;IACvB,kDAAgB,CAAA;IAChB,0EAA4B,CAAA;IAC5B,8EAA8B,CAAA;IAC9B,oFAAiC,CAAA;IACjC,oBAAoB;IACpB,4EAA6B,CAAA;IAE7B,oFAAoF;IACpF,+HAA+H;IAC/H,kEAAwB,CAAA;IAExB,kFAAgC,CAAA;IAEhC,gEAAuB,CAAA;IACvB,8EAA8B,CAAA;IAE9B,oHAAoH;IACpH,wEAA2B,CAAA;IAC3B,oHAAoH;IACpH,4GAA6C,CAAA;IAE7C,qBAAqB;IACrB,qEAAqE;IACrE,8DAA8D;IAC9D,iEAAiE;IACjE,uEAAuE;IACvE,6DAA6D;IAC7D,sEAAsE;IACtE,4DAA4D;IAE5D,mDAAmD;IAEnD,2CAA2C;IAC3C,4FAAqC,CAAA;IACrC,8EAA8B,CAAA;IAC9B,yCAAyC;IACzC,oFAAiC,CAAA;IACjC,gEAAgE;IAChE,qGAAqG;IACrG,8FAAsC,CAAA;IAEtC,kFAAgC,CAAA;IAChC,gGAAuC,CAAA;IAEvC,wFAAmC,CAAA;IACnC,sGAA0C,CAAA;IAC1C,sEAA0B,CAAA;IAC1B,8EAA8B,CAAA;AAChC,CAAC,EA3EW,MAAM,KAAN,MAAM,QA2EjB;AAED,MAAM,UAAU,oBAAoB,CAAmB,SAAY;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,CAAwB,CAAC,KAAK,SAAS,CAAC;QACxD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAA4B,CAAC;IAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;AAC3D,CAAC"}
@@ -3,7 +3,8 @@ import { Slot } from "@lodestar/types";
3
3
  import type { IDataColumnStore } from "./dataColumnStore.js";
4
4
  import type { FlatFileStoreMetrics } from "./flatFileStore/metrics.js";
5
5
  import { CheckpointStateRepository } from "./repositories/checkpointState.js";
6
- import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository } from "./repositories/index.js";
6
+ import { EarliestAvailableSlotRepository } from "./repositories/earliestAvailableSlot.js";
7
+ import { AttesterSlashingRepository, BLSToExecutionChangeRepository, BestLightClientUpdateRepository, BlobSidecarsArchiveRepository, BlobSidecarsRepository, BlockArchiveRepository, BlockRepository, CheckpointHeaderRepository, DataColumnSidecarArchiveRepository, DataColumnSidecarRepository, ExecutionPayloadEnvelopeArchiveRepository, ExecutionPayloadEnvelopeRepository, ProposerPreferencesRepository, ProposerSlashingRepository, StateArchiveRepository, SyncCommitteeRepository, SyncCommitteeWitnessRepository, VoluntaryExitRepository } from "./repositories/index.js";
7
8
  /**
8
9
  * The DB service manages the data layer of the beacon chain
9
10
  * The exposed methods do not refer to the underlying data engine,
@@ -20,8 +21,10 @@ export interface IBeaconDb {
20
21
  executionPayloadEnvelopeArchive: ExecutionPayloadEnvelopeArchiveRepository;
21
22
  stateArchive: StateArchiveRepository;
22
23
  checkpointState: CheckpointStateRepository;
24
+ earliestAvailableSlot: EarliestAvailableSlotRepository;
23
25
  voluntaryExit: VoluntaryExitRepository;
24
26
  proposerSlashing: ProposerSlashingRepository;
27
+ proposerPreferences: ProposerPreferencesRepository;
25
28
  attesterSlashing: AttesterSlashingRepository;
26
29
  blsToExecutionChange: BLSToExecutionChangeRepository;
27
30
  bestLightClientUpdate: BestLightClientUpdateRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/db/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAC;AACtD,OAAO,EAAC,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrC,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,kCAAkC,EAClC,2BAA2B,EAC3B,yCAAyC,EACzC,kCAAkC,EAClC,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAEjC;;;;GAIG;AACH,MAAM,WAAW,SAAS;IAExB,KAAK,EAAE,eAAe,CAAC;IAEvB,YAAY,EAAE,sBAAsB,CAAC;IAErC,YAAY,EAAE,sBAAsB,CAAC;IACrC,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,wBAAwB,EAAE,kCAAkC,CAAC;IAE7D,wBAAwB,EAAE,kCAAkC,CAAC;IAC7D,+BAA+B,EAAE,yCAAyC,CAAC;IAG3E,YAAY,EAAE,sBAAsB,CAAC;IAErC,eAAe,EAAE,yBAAyB,CAAC;IAG3C,aAAa,EAAE,uBAAuB,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,oBAAoB,EAAE,8BAA8B,CAAC;IAGrD,qBAAqB,EAAE,+BAA+B,CAAC;IACvD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,aAAa,EAAE,uBAAuB,CAAC;IACvC,oBAAoB,EAAE,8BAA8B,CAAC;IAErD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,+FAA+F;IAC/F,QAAQ,CAAC,qBAAqB,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,uEAAuE;IACvE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,iDAAiD;IACjD,UAAU,CAAC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAAC;CACzG"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/db/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAC;AACtD,OAAO,EAAC,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrC,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAC,yBAAyB,EAAC,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAC,+BAA+B,EAAC,MAAM,yCAAyC,CAAC;AACxF,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,kCAAkC,EAClC,2BAA2B,EAC3B,yCAAyC,EACzC,kCAAkC,EAClC,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAEjC;;;;GAIG;AACH,MAAM,WAAW,SAAS;IAExB,KAAK,EAAE,eAAe,CAAC;IAEvB,YAAY,EAAE,sBAAsB,CAAC;IAErC,YAAY,EAAE,sBAAsB,CAAC;IACrC,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,wBAAwB,EAAE,kCAAkC,CAAC;IAE7D,wBAAwB,EAAE,kCAAkC,CAAC;IAC7D,+BAA+B,EAAE,yCAAyC,CAAC;IAG3E,YAAY,EAAE,sBAAsB,CAAC;IAErC,eAAe,EAAE,yBAAyB,CAAC;IAC3C,qBAAqB,EAAE,+BAA+B,CAAC;IAGvD,aAAa,EAAE,uBAAuB,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,mBAAmB,EAAE,6BAA6B,CAAC;IACnD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,oBAAoB,EAAE,8BAA8B,CAAC;IAGrD,qBAAqB,EAAE,+BAA+B,CAAC;IACvD,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,aAAa,EAAE,uBAAuB,CAAC;IACvC,oBAAoB,EAAE,8BAA8B,CAAC;IAErD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,+FAA+F;IAC/F,QAAQ,CAAC,qBAAqB,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,uEAAuE;IACvE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,iDAAiD;IACjD,UAAU,CAAC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAAC;CACzG"}
@@ -1,8 +1,8 @@
1
1
  import { Db } from "@lodestar/db";
2
2
  import { ForkAll } from "@lodestar/params";
3
3
  import { Root, SSZTypesFor, SignedBeaconBlock, Slot } from "@lodestar/types";
4
- export declare const rootIndexBucketId: "allForks_attesterSlashing" | "allForks_block" | "allForks_blockArchive" | "allForks_checkpointState" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive" | "allForks_stateArchive" | "capella_blsToExecutionChange" | "deneb_blobSidecars" | "deneb_blobSidecarsArchive" | "gloas_executionPayloadEnvelope" | "gloas_executionPayloadEnvelopeArchive" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_chainInfo" | "index_depositDataRoot" | "index_mainChain" | "index_stateArchiveRootIndex" | "lightClient_bestLightClientUpdate" | "lightClient_checkpointHeader" | "lightClient_syncCommittee" | "lightClient_syncCommitteeWitness" | "phase0_depositData" | "phase0_depositEvent" | "phase0_eth1Data" | "phase0_exit" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "phase0_proposerSlashing";
5
- export declare const parentRootIndexBucketId: "allForks_attesterSlashing" | "allForks_block" | "allForks_blockArchive" | "allForks_checkpointState" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive" | "allForks_stateArchive" | "capella_blsToExecutionChange" | "deneb_blobSidecars" | "deneb_blobSidecarsArchive" | "gloas_executionPayloadEnvelope" | "gloas_executionPayloadEnvelopeArchive" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_chainInfo" | "index_depositDataRoot" | "index_mainChain" | "index_stateArchiveRootIndex" | "lightClient_bestLightClientUpdate" | "lightClient_checkpointHeader" | "lightClient_syncCommittee" | "lightClient_syncCommitteeWitness" | "phase0_depositData" | "phase0_depositEvent" | "phase0_eth1Data" | "phase0_exit" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "phase0_proposerSlashing";
4
+ export declare const rootIndexBucketId: "allForks_attesterSlashing" | "allForks_block" | "allForks_blockArchive" | "allForks_checkpointState" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive" | "allForks_stateArchive" | "capella_blsToExecutionChange" | "deneb_blobSidecars" | "deneb_blobSidecarsArchive" | "earliestAvailableSlot" | "gloas_executionPayloadEnvelope" | "gloas_executionPayloadEnvelopeArchive" | "gloas_proposerPreferences" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_chainInfo" | "index_depositDataRoot" | "index_mainChain" | "index_stateArchiveRootIndex" | "lightClient_bestLightClientUpdate" | "lightClient_checkpointHeader" | "lightClient_syncCommittee" | "lightClient_syncCommitteeWitness" | "phase0_depositData" | "phase0_depositEvent" | "phase0_eth1Data" | "phase0_exit" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "phase0_proposerSlashing";
5
+ export declare const parentRootIndexBucketId: "allForks_attesterSlashing" | "allForks_block" | "allForks_blockArchive" | "allForks_checkpointState" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive" | "allForks_stateArchive" | "capella_blsToExecutionChange" | "deneb_blobSidecars" | "deneb_blobSidecarsArchive" | "earliestAvailableSlot" | "gloas_executionPayloadEnvelope" | "gloas_executionPayloadEnvelopeArchive" | "gloas_proposerPreferences" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_chainInfo" | "index_depositDataRoot" | "index_mainChain" | "index_stateArchiveRootIndex" | "lightClient_bestLightClientUpdate" | "lightClient_checkpointHeader" | "lightClient_syncCommittee" | "lightClient_syncCommitteeWitness" | "phase0_depositData" | "phase0_depositEvent" | "phase0_eth1Data" | "phase0_exit" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "phase0_proposerSlashing";
6
6
  export declare function getRootIndex(db: Db, blockRoot: Root): Promise<Uint8Array | null>;
7
7
  export declare function getParentRootIndex(db: Db, parentRoot: Root): Promise<Uint8Array | null>;
8
8
  export declare function deleteRootIndex(db: Db, signedBeaconBlockType: SSZTypesFor<ForkAll, "SignedBeaconBlock">, block: SignedBeaconBlock): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"blockArchiveIndex.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/blockArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAY,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,IAAI,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAGhF,eAAO,MAAM,iBAAiB,o1BAA2D,CAAC;AAC1F,eAAO,MAAM,uBAAuB,o1BAAiE,CAAC;AAEtG,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAEtF;AAED,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAE7F;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,qBAAqB,EAAE,WAAW,CAAC,OAAO,EAAE,mBAAmB,CAAC,EAChE,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,IAAI,GAAG,UAAU,CAElE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAEtD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAEtD"}
1
+ {"version":3,"file":"blockArchiveIndex.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/blockArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAY,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,IAAI,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAGhF,eAAO,MAAM,iBAAiB,44BAA2D,CAAC;AAC1F,eAAO,MAAM,uBAAuB,44BAAiE,CAAC;AAEtG,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAEtF;AAED,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAE7F;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,qBAAqB,EAAE,WAAW,CAAC,OAAO,EAAE,mBAAmB,CAAC,EAChE,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,IAAI,GAAG,UAAU,CAElE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAEtD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,CAEtD"}
@@ -0,0 +1,11 @@
1
+ import { Db } from "@lodestar/db";
2
+ import { Slot } from "@lodestar/types";
3
+ export declare class EarliestAvailableSlotRepository {
4
+ private readonly db;
5
+ private readonly key;
6
+ private readonly opts;
7
+ constructor(db: Db);
8
+ get(): Promise<Slot | null>;
9
+ set(slot: Slot): Promise<void>;
10
+ }
11
+ //# sourceMappingURL=earliestAvailableSlot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"earliestAvailableSlot.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/earliestAvailableSlot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAY,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAC,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAG1C,qBAAa,+BAA+B;IAI9B,OAAO,CAAC,QAAQ,CAAC,EAAE;IAH/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA8C;IAClE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkE;IAEvF,YAA6B,EAAE,EAAE,EAAE,EAAI;IAEjC,GAAG,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAGhC;IAEK,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnC;CACF"}
@@ -0,0 +1,19 @@
1
+ import { encodeKey } from "@lodestar/db";
2
+ import { ssz } from "@lodestar/types";
3
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
4
+ export class EarliestAvailableSlotRepository {
5
+ db;
6
+ key = encodeKey(Bucket.earliestAvailableSlot, 0);
7
+ opts = { bucketId: getBucketNameByValue(Bucket.earliestAvailableSlot) };
8
+ constructor(db) {
9
+ this.db = db;
10
+ }
11
+ async get() {
12
+ const bytes = await this.db.get(this.key, this.opts);
13
+ return bytes === null ? null : ssz.Slot.deserialize(bytes);
14
+ }
15
+ async set(slot) {
16
+ await this.db.put(this.key, ssz.Slot.serialize(slot), this.opts);
17
+ }
18
+ }
19
+ //# sourceMappingURL=earliestAvailableSlot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"earliestAvailableSlot.js","sourceRoot":"","sources":["../../../src/db/repositories/earliestAvailableSlot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,SAAS,EAAC,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAO,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D,MAAM,OAAO,+BAA+B;IAIb,EAAE;IAHd,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;IACjD,IAAI,GAAG,EAAC,QAAQ,EAAE,oBAAoB,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAC,CAAC;IAEvF,YAA6B,EAAM;kBAAN,EAAE;IAAO,CAAC;IAEvC,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAU;QAClB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;CACF"}
@@ -13,6 +13,7 @@ export { BestLightClientUpdateRepository } from "./lightclientBestUpdate.js";
13
13
  export { CheckpointHeaderRepository } from "./lightclientCheckpointHeader.js";
14
14
  export { SyncCommitteeRepository } from "./lightclientSyncCommittee.js";
15
15
  export { SyncCommitteeWitnessRepository } from "./lightclientSyncCommitteeWitness.js";
16
+ export { ProposerPreferencesRepository } from "./proposerPreferences.js";
16
17
  export { ProposerSlashingRepository } from "./proposerSlashing.js";
17
18
  export { StateArchiveRepository } from "./stateArchive.js";
18
19
  export { VoluntaryExitRepository } from "./voluntaryExit.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAC,8BAA8B,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,8BAA8B,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EACL,KAAK,gBAAgB,EACrB,yCAAyC,EACzC,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,+BAA+B,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,8BAA8B,EAAC,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAC,8BAA8B,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,8BAA8B,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EACL,KAAK,gBAAgB,EACrB,yCAAyC,EACzC,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,+BAA+B,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,8BAA8B,EAAC,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC"}
@@ -12,6 +12,7 @@ export { BestLightClientUpdateRepository } from "./lightclientBestUpdate.js";
12
12
  export { CheckpointHeaderRepository } from "./lightclientCheckpointHeader.js";
13
13
  export { SyncCommitteeRepository } from "./lightclientSyncCommittee.js";
14
14
  export { SyncCommitteeWitnessRepository } from "./lightclientSyncCommitteeWitness.js";
15
+ export { ProposerPreferencesRepository } from "./proposerPreferences.js";
15
16
  export { ProposerSlashingRepository } from "./proposerSlashing.js";
16
17
  export { StateArchiveRepository } from "./stateArchive.js";
17
18
  export { VoluntaryExitRepository } from "./voluntaryExit.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/db/repositories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,8BAA8B,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAEL,yCAAyC,EACzC,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,+BAA+B,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,8BAA8B,EAAC,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/db/repositories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,8BAA8B,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAC,kCAAkC,EAAC,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAEL,yCAAyC,EACzC,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAC,+BAA+B,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAC,8BAA8B,EAAC,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAC,6BAA6B,EAAC,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAC,0BAA0B,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { ChainForkConfig } from "@lodestar/config";
2
+ import { Db, Repository } from "@lodestar/db";
3
+ import { gloas } from "@lodestar/types";
4
+ /**
5
+ * SignedProposerPreferences indexed by proposal slot and dependent root
6
+ *
7
+ * Added via gossip or api
8
+ * Removed once the proposal slot has passed
9
+ */
10
+ export declare class ProposerPreferencesRepository extends Repository<Uint8Array, gloas.SignedProposerPreferences> {
11
+ constructor(config: ChainForkConfig, db: Db);
12
+ getId(value: gloas.SignedProposerPreferences): Uint8Array;
13
+ }
14
+ //# sourceMappingURL=proposerPreferences.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposerPreferences.d.ts","sourceRoot":"","sources":["../../../src/db/repositories/proposerPreferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAC,EAAE,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAI3C;;;;;GAKG;AACH,qBAAa,6BAA8B,SAAQ,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,yBAAyB,CAAC;IACxG,YAAY,MAAM,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,EAG1C;IAED,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,yBAAyB,GAAG,UAAU,CAGxD;CACF"}
@@ -0,0 +1,21 @@
1
+ import { Repository } from "@lodestar/db";
2
+ import { ssz } from "@lodestar/types";
3
+ import { intToBytes } from "@lodestar/utils";
4
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
5
+ /**
6
+ * SignedProposerPreferences indexed by proposal slot and dependent root
7
+ *
8
+ * Added via gossip or api
9
+ * Removed once the proposal slot has passed
10
+ */
11
+ export class ProposerPreferencesRepository extends Repository {
12
+ constructor(config, db) {
13
+ const bucket = Bucket.gloas_proposerPreferences;
14
+ super(config, db, bucket, ssz.gloas.SignedProposerPreferences, getBucketNameByValue(bucket));
15
+ }
16
+ getId(value) {
17
+ const { proposalSlot, dependentRoot } = value.message;
18
+ return Buffer.concat([intToBytes(proposalSlot, 8, "be"), dependentRoot]);
19
+ }
20
+ }
21
+ //# sourceMappingURL=proposerPreferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposerPreferences.js","sourceRoot":"","sources":["../../../src/db/repositories/proposerPreferences.ts"],"names":[],"mappings":"AACA,OAAO,EAAK,UAAU,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAQ,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,OAAO,6BAA8B,SAAQ,UAAuD;IACxG,YAAY,MAAuB,EAAE,EAAM;QACzC,MAAM,MAAM,GAAG,MAAM,CAAC,yBAAyB,CAAC;QAChD,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,KAAsC;QAC1C,MAAM,EAAC,YAAY,EAAE,aAAa,EAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACpD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC;IAC3E,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { VersionedHashes } from "./interface.js";
2
+ /**
3
+ * Preserve Deneb's is_valid_versioned_hashes check when the REST envelope omits expected hashes.
4
+ * EIP-4844 encodes blob_versioned_hashes at index 10 of the signed type-3 transaction's RLP list.
5
+ * Skip unrelated fields without decoding or copying them, including untrusted nested access lists.
6
+ * The EL remains responsible for the other transaction validity checks.
7
+ */
8
+ export declare function isValidBlobVersionedHashes(transactions: Uint8Array[], expected: VersionedHashes): boolean;
9
+ //# sourceMappingURL=blobVersionedHashes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blobVersionedHashes.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/blobVersionedHashes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAE/C;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAiCzG"}
@@ -0,0 +1,74 @@
1
+ import { byteArrayEquals } from "@lodestar/utils";
2
+ /**
3
+ * Preserve Deneb's is_valid_versioned_hashes check when the REST envelope omits expected hashes.
4
+ * EIP-4844 encodes blob_versioned_hashes at index 10 of the signed type-3 transaction's RLP list.
5
+ * Skip unrelated fields without decoding or copying them, including untrusted nested access lists.
6
+ * The EL remains responsible for the other transaction validity checks.
7
+ */
8
+ export function isValidBlobVersionedHashes(transactions, expected) {
9
+ let index = 0;
10
+ for (const transaction of transactions) {
11
+ if (transaction.length === 0)
12
+ return false;
13
+ if (transaction[0] !== 0x03)
14
+ continue;
15
+ const outer = readRlpItem(transaction, 1, transaction.length);
16
+ if (!outer?.isList || outer.end !== transaction.length)
17
+ return false;
18
+ let offset = outer.start;
19
+ for (let fieldIndex = 0; fieldIndex < 14; fieldIndex++) {
20
+ const field = readRlpItem(transaction, offset, outer.end);
21
+ if (field === null)
22
+ return false;
23
+ if (fieldIndex === 10) {
24
+ if (!field.isList)
25
+ return false;
26
+ // A canonical RLP-encoded Bytes32 is exactly the 0xa0 prefix followed by 32 bytes.
27
+ const count = (field.end - field.start) / 33;
28
+ if (!Number.isInteger(count) || index + count > expected.length)
29
+ return false;
30
+ for (let hashOffset = field.start; hashOffset < field.end; hashOffset += 33) {
31
+ if (transaction[hashOffset] !== 0xa0 ||
32
+ !byteArrayEquals(transaction.subarray(hashOffset + 1, hashOffset + 33), expected[index])) {
33
+ return false;
34
+ }
35
+ index++;
36
+ }
37
+ }
38
+ offset = field.end;
39
+ }
40
+ if (offset !== outer.end)
41
+ return false;
42
+ }
43
+ return index === expected.length;
44
+ }
45
+ /** Read one RLP item's boundaries without descending into lists. */
46
+ function readRlpItem(bytes, offset, limit) {
47
+ if (offset >= limit)
48
+ return null;
49
+ const prefix = bytes[offset];
50
+ if (prefix < 0x80)
51
+ return { start: offset, end: offset + 1, isList: false };
52
+ const isList = prefix >= 0xc0;
53
+ const lengthCode = prefix - (isList ? 0xc0 : 0x80);
54
+ let start = offset + 1;
55
+ let length = lengthCode;
56
+ if (lengthCode > 55) {
57
+ const lengthBytes = lengthCode - 55;
58
+ start += lengthBytes;
59
+ if (start > limit || bytes[offset + 1] === 0)
60
+ return null;
61
+ length = 0;
62
+ for (let i = offset + 1; i < start; i++) {
63
+ length = length * 256 + bytes[i];
64
+ }
65
+ if (length <= 55)
66
+ return null;
67
+ }
68
+ if (length > limit - start)
69
+ return null;
70
+ if (!isList && length === 1 && bytes[start] < 0x80)
71
+ return null;
72
+ return { start, end: start + length, isList };
73
+ }
74
+ //# sourceMappingURL=blobVersionedHashes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blobVersionedHashes.js","sourceRoot":"","sources":["../../../src/execution/engine/blobVersionedHashes.ts"],"names":[],"mappings":"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"}
@@ -5,19 +5,29 @@ import { BlobAndProof } from "@lodestar/types/deneb";
5
5
  import { BlobAndProofV2 } from "@lodestar/types/fulu";
6
6
  import { Metrics } from "../../metrics/index.js";
7
7
  import { ClientVersion, ExecutePayloadResponse, ExecutionEngineState, IExecutionEngine, PayloadAttributes, PayloadId, VersionedHashes } from "./interface.js";
8
- import { IJsonRpcHttpClient } from "./jsonRpcHttpClient.js";
9
8
  import { PayloadIdCache } from "./payloadIdCache.js";
9
+ import { RestEngineTransport } from "./restTransport.js";
10
+ import { IEngineTransport } from "./transport.js";
10
11
  import { ExecutionPayloadBodyV2 } from "./types.js";
11
12
  export type ExecutionEngineModules = {
12
13
  signal: AbortSignal;
13
14
  metrics?: Metrics | null;
14
15
  logger: Logger;
15
16
  };
17
+ /**
18
+ * Engine API transport selection
19
+ * - `auto`: negotiate REST with one execution URL; use JSON-RPC for multiple URLs or unadvertised features
20
+ * - `ssz`: always use the REST API with SSZ encoding
21
+ * - `json-rpc`: always use the legacy JSON-RPC API
22
+ */
23
+ export type EngineApiMode = "auto" | "ssz" | "json-rpc";
24
+ export declare const engineApiModes: EngineApiMode[];
16
25
  export type ExecutionEngineHttpOpts = {
17
26
  urls: string[];
18
27
  retries: number;
19
28
  retryDelay: number;
20
29
  timeout?: number;
30
+ engineApi?: EngineApiMode;
21
31
  /**
22
32
  * 256 bit jwt secret in hex format without the leading 0x. If provided, the execution engine
23
33
  * rpc requests will be bundled by an authorization header having a fresh jwt token on each
@@ -43,17 +53,21 @@ export type ExecutionEngineHttpOpts = {
43
53
  commit?: string;
44
54
  };
45
55
  export declare const defaultExecutionEngineHttpOpts: ExecutionEngineHttpOpts;
56
+ export type ExecutionEngineTransports = {
57
+ jsonRpc: IEngineTransport;
58
+ rest?: RestEngineTransport;
59
+ };
46
60
  /**
47
- * based on Ethereum JSON-RPC API and inherits the following properties of this standard:
48
- * - Supported communication protocols (HTTP and WebSocket)
49
- * - Message format and encoding notation
50
- * - Error codes improvement proposal
61
+ * Drives the execution client over the engine API, either the legacy `engine_*` JSON-RPC methods
62
+ * or the REST API with SSZ encoded bodies.
63
+ * https://github.com/ethereum/execution-apis/tree/main/src/engine
51
64
  *
52
- * Client software MUST expose Engine API at a port independent from JSON-RPC API. The default port for the Engine API is 8550 for HTTP and 8551 for WebSocket.
53
- * https://github.com/ethereum/execution-apis/blob/v1.0.0-alpha.1/src/engine/interop/specification.md
65
+ * In `auto` mode a capabilities response from a server without the REST API, a 4xx other than
66
+ * 401/403, selects JSON-RPC until the EL reconnects. Transient discovery failures use JSON-RPC while
67
+ * awaiting another probe; authentication failures fail visibly, malformed capabilities fall back to
68
+ * JSON-RPC with a warning. Forks and blob revisions the EL does not advertise also use JSON-RPC.
54
69
  */
55
70
  export declare class ExecutionEngineHttp implements IExecutionEngine {
56
- private readonly rpc;
57
71
  private readonly opts?;
58
72
  private logger;
59
73
  private metrics;
@@ -70,9 +84,15 @@ export declare class ExecutionEngineHttp implements IExecutionEngine {
70
84
  * the order of new payloads and fcUs is pretty important to EL, this queue will serialize the calls in the
71
85
  * order with which we make them.
72
86
  */
73
- private readonly rpcFetchQueue;
74
- private jobQueueProcessor;
75
- constructor(rpc: IJsonRpcHttpClient, { metrics, signal, logger }: ExecutionEngineModules, opts?: ExecutionEngineHttpOpts | undefined);
87
+ private readonly queue;
88
+ private readonly jsonRpc;
89
+ private readonly rest;
90
+ private readonly engineApi;
91
+ private restSupport;
92
+ private restProbe;
93
+ private lastRestProbeMs;
94
+ private readonly loggedRestFallbacks;
95
+ constructor({ jsonRpc, rest }: ExecutionEngineTransports, { metrics, signal, logger }: ExecutionEngineModules, opts?: ExecutionEngineHttpOpts | undefined);
76
96
  /**
77
97
  * `engine_newPayloadV1`
78
98
  * From: https://github.com/ethereum/execution-apis/blob/v1.0.0-alpha.6/src/engine/specification.md#engine_newpayloadv1
@@ -140,8 +160,20 @@ export declare class ExecutionEngineHttp implements IExecutionEngine {
140
160
  getPayloadBodiesByHashV2(blockHashes: RootHex[]): Promise<(ExecutionPayloadBodyV2 | null)[]>;
141
161
  getBlobs(fork: ForkPostFulu, versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<BlobAndProofV2[] | null>;
142
162
  getBlobs(fork: ForkPreFulu, versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<(BlobAndProof | null)[]>;
143
- private getBlobsV1;
144
- private getBlobsV2;
163
+ private enqueue;
164
+ /**
165
+ * Run a call on the selected transport. An execution client that advertises a fork in its
166
+ * capabilities but rejects it with `unsupported-fork` is not spec compliant, keep the node
167
+ * functional by serving that fork over JSON-RPC from then on.
168
+ */
169
+ private withTransport;
170
+ private disableRestForFork;
171
+ /**
172
+ * Pick the transport for a call. Fork-scoped calls only go over REST if the execution client
173
+ * advertises that fork, blob requests only if it serves the needed `/blobs/vN` revision.
174
+ */
175
+ private getTransport;
176
+ private probeRestSupport;
145
177
  private getClientVersion;
146
178
  private updateEngineState;
147
179
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/http.ts"],"names":[],"mappings":"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"}