@lodestar/beacon-node 1.22.0-dev.ba80aa345a → 1.22.0-dev.d3d61af6bd

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 (212) hide show
  1. package/lib/api/impl/beacon/blocks/index.js +22 -10
  2. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  3. package/lib/api/impl/beacon/pool/index.js +31 -4
  4. package/lib/api/impl/beacon/pool/index.js.map +1 -1
  5. package/lib/api/impl/config/constants.d.ts +5 -1
  6. package/lib/api/impl/config/constants.js +7 -2
  7. package/lib/api/impl/config/constants.js.map +1 -1
  8. package/lib/api/impl/lodestar/index.js +2 -2
  9. package/lib/api/impl/lodestar/index.js.map +1 -1
  10. package/lib/api/impl/validator/index.js +37 -14
  11. package/lib/api/impl/validator/index.js.map +1 -1
  12. package/lib/chain/archiver/archiveBlocks.js +6 -7
  13. package/lib/chain/archiver/archiveBlocks.js.map +1 -1
  14. package/lib/chain/archiver/archiveStates.d.ts +3 -1
  15. package/lib/chain/archiver/archiveStates.js +6 -3
  16. package/lib/chain/archiver/archiveStates.js.map +1 -1
  17. package/lib/chain/archiver/index.js +1 -1
  18. package/lib/chain/archiver/index.js.map +1 -1
  19. package/lib/chain/balancesCache.js +2 -2
  20. package/lib/chain/balancesCache.js.map +1 -1
  21. package/lib/chain/blocks/importBlock.js +10 -9
  22. package/lib/chain/blocks/importBlock.js.map +1 -1
  23. package/lib/chain/blocks/index.js +2 -2
  24. package/lib/chain/blocks/index.js.map +1 -1
  25. package/lib/chain/blocks/types.d.ts +2 -2
  26. package/lib/chain/blocks/types.js.map +1 -1
  27. package/lib/chain/blocks/verifyBlock.js +4 -4
  28. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  29. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +5 -6
  30. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  31. package/lib/chain/blocks/verifyBlocksSanityChecks.js +3 -3
  32. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  33. package/lib/chain/blocks/writeBlockInputToDb.js +3 -3
  34. package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
  35. package/lib/chain/chain.d.ts +42 -0
  36. package/lib/chain/chain.js +53 -22
  37. package/lib/chain/chain.js.map +1 -1
  38. package/lib/chain/errors/attestationError.d.ts +13 -1
  39. package/lib/chain/errors/attestationError.js +10 -2
  40. package/lib/chain/errors/attestationError.js.map +1 -1
  41. package/lib/chain/errors/blockError.js +3 -4
  42. package/lib/chain/errors/blockError.js.map +1 -1
  43. package/lib/chain/forkChoice/index.js +9 -9
  44. package/lib/chain/forkChoice/index.js.map +1 -1
  45. package/lib/chain/historicalState/worker.js +4 -0
  46. package/lib/chain/historicalState/worker.js.map +1 -1
  47. package/lib/chain/initState.d.ts +3 -3
  48. package/lib/chain/initState.js +13 -13
  49. package/lib/chain/initState.js.map +1 -1
  50. package/lib/chain/interface.d.ts +2 -0
  51. package/lib/chain/interface.js.map +1 -1
  52. package/lib/chain/lightClient/index.js +9 -10
  53. package/lib/chain/lightClient/index.js.map +1 -1
  54. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +46 -12
  55. package/lib/chain/opPools/aggregatedAttestationPool.js +229 -63
  56. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  57. package/lib/chain/opPools/attestationPool.d.ts +22 -6
  58. package/lib/chain/opPools/attestationPool.js +61 -27
  59. package/lib/chain/opPools/attestationPool.js.map +1 -1
  60. package/lib/chain/opPools/opPool.d.ts +2 -2
  61. package/lib/chain/opPools/opPool.js +8 -6
  62. package/lib/chain/opPools/opPool.js.map +1 -1
  63. package/lib/chain/opPools/syncCommitteeMessagePool.js +4 -4
  64. package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
  65. package/lib/chain/opPools/syncContributionAndProofPool.js +4 -4
  66. package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
  67. package/lib/chain/opPools/utils.d.ts +2 -0
  68. package/lib/chain/opPools/utils.js +3 -0
  69. package/lib/chain/opPools/utils.js.map +1 -1
  70. package/lib/chain/produceBlock/produceBlockBody.js +7 -6
  71. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  72. package/lib/chain/regen/queued.d.ts +6 -1
  73. package/lib/chain/regen/queued.js +41 -3
  74. package/lib/chain/regen/queued.js.map +1 -1
  75. package/lib/chain/regen/regen.d.ts +1 -1
  76. package/lib/chain/regen/regen.js +50 -14
  77. package/lib/chain/regen/regen.js.map +1 -1
  78. package/lib/chain/seenCache/seenAttestationData.d.ts +13 -5
  79. package/lib/chain/seenCache/seenAttestationData.js +5 -3
  80. package/lib/chain/seenCache/seenAttestationData.js.map +1 -1
  81. package/lib/chain/seenCache/seenCommitteeContribution.js +2 -3
  82. package/lib/chain/seenCache/seenCommitteeContribution.js.map +1 -1
  83. package/lib/chain/seenCache/seenGossipBlockInput.js +3 -4
  84. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  85. package/lib/chain/serializeState.d.ts +6 -0
  86. package/lib/chain/serializeState.js +22 -0
  87. package/lib/chain/serializeState.js.map +1 -0
  88. package/lib/chain/shufflingCache.js +2 -3
  89. package/lib/chain/shufflingCache.js.map +1 -1
  90. package/lib/chain/stateCache/blockStateCacheImpl.d.ts +1 -0
  91. package/lib/chain/stateCache/blockStateCacheImpl.js +8 -5
  92. package/lib/chain/stateCache/blockStateCacheImpl.js.map +1 -1
  93. package/lib/chain/stateCache/datastore/file.js +5 -5
  94. package/lib/chain/stateCache/datastore/file.js.map +1 -1
  95. package/lib/chain/stateCache/fifoBlockStateCache.d.ts +1 -0
  96. package/lib/chain/stateCache/fifoBlockStateCache.js +6 -3
  97. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  98. package/lib/chain/stateCache/inMemoryCheckpointsCache.d.ts +1 -0
  99. package/lib/chain/stateCache/inMemoryCheckpointsCache.js +7 -5
  100. package/lib/chain/stateCache/inMemoryCheckpointsCache.js.map +1 -1
  101. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +2 -2
  102. package/lib/chain/stateCache/persistentCheckpointsCache.js +35 -60
  103. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  104. package/lib/chain/stateCache/types.d.ts +4 -0
  105. package/lib/chain/stateCache/types.js.map +1 -1
  106. package/lib/chain/validation/aggregateAndProof.d.ts +4 -4
  107. package/lib/chain/validation/aggregateAndProof.js +26 -9
  108. package/lib/chain/validation/aggregateAndProof.js.map +1 -1
  109. package/lib/chain/validation/attestation.d.ts +27 -6
  110. package/lib/chain/validation/attestation.js +115 -37
  111. package/lib/chain/validation/attestation.js.map +1 -1
  112. package/lib/chain/validation/attesterSlashing.js +2 -1
  113. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  114. package/lib/chain/validation/blobSidecar.js +4 -4
  115. package/lib/chain/validation/blobSidecar.js.map +1 -1
  116. package/lib/chain/validation/block.js +3 -4
  117. package/lib/chain/validation/block.js.map +1 -1
  118. package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +4 -3
  119. package/lib/chain/validation/signatureSets/aggregateAndProof.js +3 -2
  120. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  121. package/lib/chain/validation/syncCommittee.js +2 -2
  122. package/lib/chain/validation/syncCommittee.js.map +1 -1
  123. package/lib/eth1/eth1DepositDataTracker.d.ts +5 -2
  124. package/lib/eth1/eth1DepositDataTracker.js +13 -2
  125. package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
  126. package/lib/eth1/eth1MergeBlockTracker.js +2 -3
  127. package/lib/eth1/eth1MergeBlockTracker.js.map +1 -1
  128. package/lib/eth1/index.d.ts +2 -0
  129. package/lib/eth1/index.js +8 -2
  130. package/lib/eth1/index.js.map +1 -1
  131. package/lib/eth1/interface.d.ts +4 -0
  132. package/lib/eth1/provider/eth1Provider.js +2 -3
  133. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  134. package/lib/eth1/provider/utils.js +4 -5
  135. package/lib/eth1/provider/utils.js.map +1 -1
  136. package/lib/eth1/utils/depositContract.js +5 -5
  137. package/lib/eth1/utils/depositContract.js.map +1 -1
  138. package/lib/eth1/utils/deposits.d.ts +2 -2
  139. package/lib/eth1/utils/deposits.js +8 -7
  140. package/lib/eth1/utils/deposits.js.map +1 -1
  141. package/lib/eth1/utils/eth1Vote.js +2 -3
  142. package/lib/eth1/utils/eth1Vote.js.map +1 -1
  143. package/lib/execution/engine/http.d.ts +2 -2
  144. package/lib/execution/engine/http.js +19 -15
  145. package/lib/execution/engine/http.js.map +1 -1
  146. package/lib/execution/engine/interface.d.ts +4 -4
  147. package/lib/execution/engine/interface.js.map +1 -1
  148. package/lib/execution/engine/mock.d.ts +1 -0
  149. package/lib/execution/engine/mock.js +6 -0
  150. package/lib/execution/engine/mock.js.map +1 -1
  151. package/lib/execution/engine/payloadIdCache.d.ts +17 -0
  152. package/lib/execution/engine/payloadIdCache.js.map +1 -1
  153. package/lib/execution/engine/types.d.ts +29 -3
  154. package/lib/execution/engine/types.js +81 -0
  155. package/lib/execution/engine/types.js.map +1 -1
  156. package/lib/index.d.ts +2 -2
  157. package/lib/index.js +2 -2
  158. package/lib/index.js.map +1 -1
  159. package/lib/metrics/metrics/beacon.d.ts +3 -0
  160. package/lib/metrics/metrics/beacon.js +6 -0
  161. package/lib/metrics/metrics/beacon.js.map +1 -1
  162. package/lib/metrics/metrics/lodestar.d.ts +30 -3
  163. package/lib/metrics/metrics/lodestar.js +63 -4
  164. package/lib/metrics/metrics/lodestar.js.map +1 -1
  165. package/lib/metrics/validatorMonitor.d.ts +1 -1
  166. package/lib/metrics/validatorMonitor.js +15 -10
  167. package/lib/metrics/validatorMonitor.js.map +1 -1
  168. package/lib/network/core/networkCore.js +2 -3
  169. package/lib/network/core/networkCore.js.map +1 -1
  170. package/lib/network/gossip/encoding.js +6 -2
  171. package/lib/network/gossip/encoding.js.map +1 -1
  172. package/lib/network/gossip/interface.d.ts +5 -5
  173. package/lib/network/gossip/interface.js.map +1 -1
  174. package/lib/network/gossip/topic.d.ts +1720 -129
  175. package/lib/network/gossip/topic.js +5 -5
  176. package/lib/network/gossip/topic.js.map +1 -1
  177. package/lib/network/interface.d.ts +2 -2
  178. package/lib/network/network.d.ts +2 -2
  179. package/lib/network/network.js.map +1 -1
  180. package/lib/network/peers/utils/assertPeerRelevance.js +3 -3
  181. package/lib/network/peers/utils/assertPeerRelevance.js.map +1 -1
  182. package/lib/network/processor/gossipHandlers.js +10 -11
  183. package/lib/network/processor/gossipHandlers.js.map +1 -1
  184. package/lib/network/processor/gossipQueues/index.js +5 -2
  185. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  186. package/lib/network/processor/gossipQueues/indexed.js +1 -0
  187. package/lib/network/processor/gossipQueues/indexed.js.map +1 -1
  188. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js +2 -2
  189. package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js.map +1 -1
  190. package/lib/network/reqresp/handlers/beaconBlocksByRoot.js +2 -2
  191. package/lib/network/reqresp/handlers/beaconBlocksByRoot.js.map +1 -1
  192. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js +2 -2
  193. package/lib/network/reqresp/handlers/blobSidecarsByRoot.js.map +1 -1
  194. package/lib/sync/backfill/backfill.js +16 -17
  195. package/lib/sync/backfill/backfill.js.map +1 -1
  196. package/lib/sync/range/chain.js +2 -3
  197. package/lib/sync/range/chain.js.map +1 -1
  198. package/lib/sync/range/range.js +4 -4
  199. package/lib/sync/range/range.js.map +1 -1
  200. package/lib/sync/range/utils/chainTarget.js +2 -2
  201. package/lib/sync/range/utils/chainTarget.js.map +1 -1
  202. package/lib/sync/range/utils/hashBlocks.js +4 -4
  203. package/lib/sync/range/utils/hashBlocks.js.map +1 -1
  204. package/lib/sync/unknownBlock.js +13 -14
  205. package/lib/sync/unknownBlock.js.map +1 -1
  206. package/lib/util/bufferPool.d.ts +7 -2
  207. package/lib/util/bufferPool.js +13 -7
  208. package/lib/util/bufferPool.js.map +1 -1
  209. package/lib/util/sszBytes.d.ts +31 -8
  210. package/lib/util/sszBytes.js +85 -21
  211. package/lib/util/sszBytes.js.map +1 -1
  212. package/package.json +15 -15
@@ -28,6 +28,13 @@ export function serializeExecutionPayload(fork, data) {
28
28
  payload.blobGasUsed = numToQuantity(blobGasUsed);
29
29
  payload.excessBlobGas = numToQuantity(excessBlobGas);
30
30
  }
31
+ // ELECTRA adds depositRequests/depositRequests to the ExecutionPayload
32
+ if (ForkSeq[fork] >= ForkSeq.electra) {
33
+ const { depositRequests, withdrawalRequests, consolidationRequests } = data;
34
+ payload.depositRequests = depositRequests.map(serializeDepositRequest);
35
+ payload.withdrawalRequests = withdrawalRequests.map(serializeWithdrawalRequest);
36
+ payload.consolidationRequests = consolidationRequests.map(serializeConsolidationRequest);
37
+ }
31
38
  return payload;
32
39
  }
33
40
  export function serializeVersionedHashes(vHashes) {
@@ -90,6 +97,24 @@ export function parseExecutionPayload(fork, response) {
90
97
  executionPayload.blobGasUsed = quantityToBigint(blobGasUsed);
91
98
  executionPayload.excessBlobGas = quantityToBigint(excessBlobGas);
92
99
  }
100
+ if (ForkSeq[fork] >= ForkSeq.electra) {
101
+ // electra adds depositRequests/depositRequests
102
+ const { depositRequests, withdrawalRequests, consolidationRequests } = data;
103
+ // Geth can also reply with null
104
+ if (depositRequests == null) {
105
+ throw Error(`depositRequests missing for ${fork} >= electra executionPayload number=${executionPayload.blockNumber} hash=${data.blockHash}`);
106
+ }
107
+ executionPayload.depositRequests = depositRequests.map(deserializeDepositRequest);
108
+ if (withdrawalRequests == null) {
109
+ throw Error(`withdrawalRequests missing for ${fork} >= electra executionPayload number=${executionPayload.blockNumber} hash=${data.blockHash}`);
110
+ }
111
+ executionPayload.withdrawalRequests =
112
+ withdrawalRequests.map(deserializeWithdrawalRequest);
113
+ if (consolidationRequests == null) {
114
+ throw Error(`consolidationRequests missing for ${fork} >= electra executionPayload number=${executionPayload.blockNumber} hash=${data.blockHash}`);
115
+ }
116
+ executionPayload.consolidationRequests = consolidationRequests.map(deserializeConsolidationRequest);
117
+ }
93
118
  return { executionPayload, executionPayloadValue, blobsBundle, shouldOverrideBuilder };
94
119
  }
95
120
  export function serializePayloadAttributes(data) {
@@ -148,11 +173,62 @@ export function deserializeWithdrawal(serialized) {
148
173
  amount: quantityToBigint(serialized.amount),
149
174
  };
150
175
  }
176
+ export function serializeDepositRequest(depositRequest) {
177
+ return {
178
+ pubkey: bytesToData(depositRequest.pubkey),
179
+ withdrawalCredentials: bytesToData(depositRequest.withdrawalCredentials),
180
+ amount: numToQuantity(depositRequest.amount),
181
+ signature: bytesToData(depositRequest.signature),
182
+ index: numToQuantity(depositRequest.index),
183
+ };
184
+ }
185
+ export function deserializeDepositRequest(serialized) {
186
+ return {
187
+ pubkey: dataToBytes(serialized.pubkey, 48),
188
+ withdrawalCredentials: dataToBytes(serialized.withdrawalCredentials, 32),
189
+ amount: quantityToNum(serialized.amount),
190
+ signature: dataToBytes(serialized.signature, 96),
191
+ index: quantityToNum(serialized.index),
192
+ };
193
+ }
194
+ export function serializeWithdrawalRequest(withdrawalRequest) {
195
+ return {
196
+ sourceAddress: bytesToData(withdrawalRequest.sourceAddress),
197
+ validatorPubkey: bytesToData(withdrawalRequest.validatorPubkey),
198
+ amount: numToQuantity(withdrawalRequest.amount),
199
+ };
200
+ }
201
+ export function deserializeWithdrawalRequest(withdrawalRequest) {
202
+ return {
203
+ sourceAddress: dataToBytes(withdrawalRequest.sourceAddress, 20),
204
+ validatorPubkey: dataToBytes(withdrawalRequest.validatorPubkey, 48),
205
+ amount: quantityToBigint(withdrawalRequest.amount),
206
+ };
207
+ }
208
+ export function serializeConsolidationRequest(consolidationRequest) {
209
+ return {
210
+ sourceAddress: bytesToData(consolidationRequest.sourceAddress),
211
+ sourcePubkey: bytesToData(consolidationRequest.sourcePubkey),
212
+ targetPubkey: bytesToData(consolidationRequest.targetPubkey),
213
+ };
214
+ }
215
+ export function deserializeConsolidationRequest(consolidationRequest) {
216
+ return {
217
+ sourceAddress: dataToBytes(consolidationRequest.sourceAddress, 20),
218
+ sourcePubkey: dataToBytes(consolidationRequest.sourcePubkey, 48),
219
+ targetPubkey: dataToBytes(consolidationRequest.targetPubkey, 48),
220
+ };
221
+ }
151
222
  export function deserializeExecutionPayloadBody(data) {
152
223
  return data
153
224
  ? {
154
225
  transactions: data.transactions.map((tran) => dataToBytes(tran, null)),
155
226
  withdrawals: data.withdrawals ? data.withdrawals.map(deserializeWithdrawal) : null,
227
+ depositRequests: data.depositRequests ? data.depositRequests.map(deserializeDepositRequest) : null,
228
+ withdrawalRequests: data.withdrawalRequests ? data.withdrawalRequests.map(deserializeWithdrawalRequest) : null,
229
+ consolidationRequests: data.consolidationRequests
230
+ ? data.consolidationRequests.map(deserializeConsolidationRequest)
231
+ : null,
156
232
  }
157
233
  : null;
158
234
  }
@@ -161,6 +237,11 @@ export function serializeExecutionPayloadBody(data) {
161
237
  ? {
162
238
  transactions: data.transactions.map((tran) => bytesToData(tran)),
163
239
  withdrawals: data.withdrawals ? data.withdrawals.map(serializeWithdrawal) : null,
240
+ depositRequests: data.depositRequests ? data.depositRequests.map(serializeDepositRequest) : null,
241
+ withdrawalRequests: data.withdrawalRequests ? data.withdrawalRequests.map(serializeWithdrawalRequest) : null,
242
+ consolidationRequests: data.consolidationRequests
243
+ ? data.consolidationRequests.map(serializeConsolidationRequest)
244
+ : null,
164
245
  }
165
246
  : null;
166
247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/execution/engine/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/execution/engine/types.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { initStateFromAnchorState, initStateFromDb, initStateFromEth1 } from "./chain/index.js";
1
+ export { checkAndPersistAnchorState, initStateFromDb, initStateFromEth1 } from "./chain/index.js";
2
2
  export { BeaconDb, type IBeaconDb } from "./db/index.js";
3
3
  export { Eth1Provider, type IEth1Provider } from "./eth1/index.js";
4
4
  export { createNodeJsLibp2p, type NodeJsLibp2pOpts } from "./network/index.js";
@@ -7,5 +7,5 @@ export { RegistryMetricCreator, collectNodeJSMetrics, type HttpMetricsServer, ge
7
7
  export { MonitoringService } from "./monitoring/index.js";
8
8
  export { RestApiServer } from "./api/rest/base.js";
9
9
  export type { RestApiServerOpts, RestApiServerModules, RestApiServerMetrics } from "./api/rest/base.js";
10
- export { getStateTypeFromBytes } from "./util/multifork.js";
10
+ export { getStateTypeFromBytes, getStateSlotFromBytes } from "./util/multifork.js";
11
11
  //# sourceMappingURL=index.d.ts.map
package/lib/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { initStateFromAnchorState, initStateFromDb, initStateFromEth1 } from "./chain/index.js";
1
+ export { checkAndPersistAnchorState, initStateFromDb, initStateFromEth1 } from "./chain/index.js";
2
2
  export { BeaconDb } from "./db/index.js";
3
3
  export { Eth1Provider } from "./eth1/index.js";
4
4
  export { createNodeJsLibp2p } from "./network/index.js";
@@ -10,5 +10,5 @@ export { MonitoringService } from "./monitoring/index.js";
10
10
  // Export generic RestApi server for CLI
11
11
  export { RestApiServer } from "./api/rest/base.js";
12
12
  // Export type util for CLI - TEMP move to lodestar-types eventually
13
- export { getStateTypeFromBytes } from "./util/multifork.js";
13
+ export { getStateTypeFromBytes, getStateSlotFromBytes } from "./util/multifork.js";
14
14
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAC,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,YAAY,EAAqB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAC,kBAAkB,EAAwB,MAAM,oBAAoB,CAAC;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6DAA6D;AAC7D,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EAEpB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,2DAA2D;AAC3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,wCAAwC;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGjD,oEAAoE;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAE,eAAe,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAC,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,YAAY,EAAqB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAC,kBAAkB,EAAwB,MAAM,oBAAoB,CAAC;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6DAA6D;AAC7D,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EAEpB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,2DAA2D;AAC3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,wCAAwC;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGjD,oEAAoE;AACpE,OAAO,EAAC,qBAAqB,EAAE,qBAAqB,EAAC,MAAM,qBAAqB,CAAC"}
@@ -41,6 +41,9 @@ export declare function createBeaconMetrics(register: RegistryMetricCreator): {
41
41
  reason: NotReorgedReason;
42
42
  }>;
43
43
  };
44
+ headState: {
45
+ unfinalizedPubkeyCacheSize: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
46
+ };
44
47
  parentBlockDistance: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
45
48
  blockProductionTime: import("@lodestar/utils").Histogram<{
46
49
  source: ProducedBlockSource;
@@ -106,6 +106,12 @@ export function createBeaconMetrics(register) {
106
106
  labelNames: ["reason"],
107
107
  }),
108
108
  },
109
+ headState: {
110
+ unfinalizedPubkeyCacheSize: register.gauge({
111
+ name: "head_state_unfinalized_pubkey_cache_size",
112
+ help: "Current size of the unfinalizedPubkey2Index cache in the head state",
113
+ }),
114
+ },
109
115
  parentBlockDistance: register.histogram({
110
116
  name: "beacon_imported_block_parent_distance",
111
117
  help: "Histogram of distance to parent block of valid imported blocks",
@@ -1 +1 @@
1
- {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../../src/metrics/metrics/beacon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../../src/metrics/metrics/beacon.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ import { LodestarMetadata } from "../options.js";
18
18
  import { RegistryMetricCreator } from "../utils/registryMetricCreator.js";
19
19
  import { OpSource } from "../validatorMonitor.js";
20
20
  import { CacheItemType } from "../../chain/stateCache/types.js";
21
+ import { AllocSource } from "../../util/bufferPool.js";
21
22
  export type LodestarMetrics = ReturnType<typeof createLodestarMetrics>;
22
23
  /**
23
24
  * Extra Lodestar custom metrics
@@ -128,6 +129,7 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
128
129
  stateHashTreeRootTime: import("@lodestar/utils").Histogram<{
129
130
  source: StateHashTreeRootSource;
130
131
  }>;
132
+ numEffectiveBalanceUpdates: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
131
133
  preStateBalancesNodesPopulatedMiss: import("@lodestar/utils").GaugeExtra<{
132
134
  source: StateCloneSource;
133
135
  }>;
@@ -145,6 +147,10 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
145
147
  postStateBalancesNodesPopulatedMiss: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
146
148
  postStateValidatorsNodesPopulatedHit: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
147
149
  postStateValidatorsNodesPopulatedMiss: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
150
+ epochCache: {
151
+ finalizedPubkeyDuplicateInsert: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
152
+ newUnFinalizedPubkey: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
153
+ };
148
154
  bls: {
149
155
  aggregatedPubkeys: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
150
156
  };
@@ -414,8 +420,12 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
414
420
  };
415
421
  bufferPool: {
416
422
  length: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
417
- hits: import("@lodestar/utils").Counter<import("@lodestar/utils").NoLabels>;
418
- misses: import("@lodestar/utils").Counter<import("@lodestar/utils").NoLabels>;
423
+ hits: import("@lodestar/utils").Counter<{
424
+ source: AllocSource;
425
+ }>;
426
+ misses: import("@lodestar/utils").Counter<{
427
+ source: AllocSource;
428
+ }>;
419
429
  grows: import("@lodestar/utils").Counter<import("@lodestar/utils").NoLabels>;
420
430
  };
421
431
  cpStateCache: {
@@ -432,6 +442,7 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
432
442
  secondsSinceLastRead: import("@lodestar/utils").AvgMinMax<import("@lodestar/utils").NoLabels>;
433
443
  stateClonedCount: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
434
444
  stateSerializeDuration: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
445
+ numStatesUpdated: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
435
446
  statePruneFromMemoryCount: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
436
447
  statePersistSecFromSlot: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
437
448
  stateReloadValidatorsSerializeDuration: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
@@ -442,7 +453,6 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
442
453
  stateReloadSecFromSlot: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
443
454
  stateReloadDbReadTime: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
444
455
  persistedStateRemoveCount: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
445
- persistedStateAllocCount: import("@lodestar/utils").Counter<import("@lodestar/utils").NoLabels>;
446
456
  };
447
457
  balancesCache: {
448
458
  requests: import("@lodestar/utils").Counter<import("@lodestar/utils").NoLabels>;
@@ -495,7 +505,24 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
495
505
  entrypoint: RegenFnName;
496
506
  caller: RegenCaller;
497
507
  }>;
508
+ regenFnAddPubkeyTime: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
509
+ regenFnDeletePubkeyTime: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
510
+ regenFnNumStatesUpdated: import("@lodestar/utils").Histogram<import("@lodestar/utils").NoLabels>;
498
511
  unhandledPromiseRejections: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
512
+ regenGetState: {
513
+ blockCount: import("@lodestar/utils").Histogram<{
514
+ caller: RegenCaller;
515
+ }>;
516
+ getSeedState: import("@lodestar/utils").Histogram<{
517
+ caller: RegenCaller;
518
+ }>;
519
+ loadBlocks: import("@lodestar/utils").Histogram<{
520
+ caller: RegenCaller;
521
+ }>;
522
+ stateTransition: import("@lodestar/utils").Histogram<{
523
+ caller: RegenCaller;
524
+ }>;
525
+ };
499
526
  precomputeNextEpochTransition: {
500
527
  count: import("@lodestar/utils").Counter<{
501
528
  result: string;
@@ -293,6 +293,10 @@ export function createLodestarMetrics(register, metadata, anchorState) {
293
293
  buckets: [0.05, 0.1, 0.2, 0.5, 1, 1.5],
294
294
  labelNames: ["source"],
295
295
  }),
296
+ numEffectiveBalanceUpdates: register.gauge({
297
+ name: "lodestar_stfn_effective_balance_updates_count",
298
+ help: "Total count of effective balance updates",
299
+ }),
296
300
  preStateBalancesNodesPopulatedMiss: register.gauge({
297
301
  name: "lodestar_stfn_balances_nodes_populated_miss_total",
298
302
  help: "Total count state.balances nodesPopulated is false on stfn",
@@ -334,6 +338,16 @@ export function createLodestarMetrics(register, metadata, anchorState) {
334
338
  name: "lodestar_stfn_post_state_validators_nodes_populated_miss_total",
335
339
  help: "Total count state.validators nodesPopulated is false on stfn for post state",
336
340
  }),
341
+ epochCache: {
342
+ finalizedPubkeyDuplicateInsert: register.gauge({
343
+ name: "lodestar_epoch_cache_finalized_pubkey_duplicate_insert",
344
+ help: "Total count of duplicate insert of finalized pubkeys",
345
+ }),
346
+ newUnFinalizedPubkey: register.gauge({
347
+ name: "lodestar_epoch_cache_new_unfinalized_pubkey",
348
+ help: "Total count of unfinalized pubkeys added",
349
+ }),
350
+ },
337
351
  // BLS verifier thread pool and queue
338
352
  bls: {
339
353
  aggregatedPubkeys: register.gauge({
@@ -1088,10 +1102,12 @@ export function createLodestarMetrics(register, metadata, anchorState) {
1088
1102
  hits: register.counter({
1089
1103
  name: "lodestar_buffer_pool_hits_total",
1090
1104
  help: "Total number of buffer pool hits",
1105
+ labelNames: ["source"],
1091
1106
  }),
1092
1107
  misses: register.counter({
1093
1108
  name: "lodestar_buffer_pool_misses_total",
1094
1109
  help: "Total number of buffer pool misses",
1110
+ labelNames: ["source"],
1095
1111
  }),
1096
1112
  grows: register.counter({
1097
1113
  name: "lodestar_buffer_pool_grows_total",
@@ -1139,6 +1155,11 @@ export function createLodestarMetrics(register, metadata, anchorState) {
1139
1155
  help: "Histogram of time to serialize state to db",
1140
1156
  buckets: [0.1, 0.5, 1, 2, 3, 4],
1141
1157
  }),
1158
+ numStatesUpdated: register.histogram({
1159
+ name: "lodestar_cp_state_cache_state_updated_count",
1160
+ help: "Histogram of number of state cache items updated every time removing and adding pubkeys to pubkey cache",
1161
+ buckets: [1, 2, 5, 10, 50, 250],
1162
+ }),
1142
1163
  statePruneFromMemoryCount: register.gauge({
1143
1164
  name: "lodestar_cp_state_cache_state_prune_from_memory_count",
1144
1165
  help: "Total number of states pruned from memory",
@@ -1185,10 +1206,6 @@ export function createLodestarMetrics(register, metadata, anchorState) {
1185
1206
  name: "lodestar_cp_state_cache_persisted_state_remove_count",
1186
1207
  help: "Total number of persisted states removed",
1187
1208
  }),
1188
- persistedStateAllocCount: register.counter({
1189
- name: "lodestar_cp_state_cache_persisted_state_alloc_count",
1190
- help: "Total number time to allocate memory for persisted state",
1191
- }),
1192
1209
  },
1193
1210
  balancesCache: {
1194
1211
  requests: register.counter({
@@ -1303,10 +1320,52 @@ export function createLodestarMetrics(register, metadata, anchorState) {
1303
1320
  help: "regen function total errors",
1304
1321
  labelNames: ["entrypoint", "caller"],
1305
1322
  }),
1323
+ regenFnAddPubkeyTime: register.histogram({
1324
+ name: "lodestar_regen_fn_add_pubkey_time_seconds",
1325
+ help: "Historgram of time spent on adding pubkeys to all state cache items in seconds",
1326
+ buckets: [0.01, 0.1, 0.5, 1, 2, 5],
1327
+ }),
1328
+ regenFnDeletePubkeyTime: register.histogram({
1329
+ name: "lodestar_regen_fn_delete_pubkey_time_seconds",
1330
+ help: "Histrogram of time spent on deleting pubkeys from all state cache items in seconds",
1331
+ buckets: [0.01, 0.1, 0.5, 1],
1332
+ }),
1333
+ regenFnNumStatesUpdated: register.histogram({
1334
+ name: "lodestar_regen_state_cache_state_updated_count",
1335
+ help: "Histogram of number of state cache items updated every time removing pubkeys from unfinalized cache",
1336
+ buckets: [1, 2, 5, 10, 50, 250],
1337
+ }),
1306
1338
  unhandledPromiseRejections: register.gauge({
1307
1339
  name: "lodestar_unhandled_promise_rejections_total",
1308
1340
  help: "UnhandledPromiseRejection total count",
1309
1341
  }),
1342
+ // regen.getState metrics
1343
+ regenGetState: {
1344
+ blockCount: register.histogram({
1345
+ name: "lodestar_regen_get_state_block_count",
1346
+ help: "Block count in regen.getState",
1347
+ labelNames: ["caller"],
1348
+ buckets: [4, 8, 16, 32, 64],
1349
+ }),
1350
+ getSeedState: register.histogram({
1351
+ name: "lodestar_regen_get_state_get_seed_state_seconds",
1352
+ help: "Duration of get seed state in regen.getState",
1353
+ labelNames: ["caller"],
1354
+ buckets: [0.1, 0.5, 1, 2, 3, 4],
1355
+ }),
1356
+ loadBlocks: register.histogram({
1357
+ name: "lodestar_regen_get_state_load_blocks_seconds",
1358
+ help: "Duration of load blocks in regen.getState",
1359
+ labelNames: ["caller"],
1360
+ buckets: [0.1, 0.5, 1, 2, 3, 4],
1361
+ }),
1362
+ stateTransition: register.histogram({
1363
+ name: "lodestar_regen_get_state_state_transition_seconds",
1364
+ help: "Duration of state transition in regen.getState",
1365
+ labelNames: ["caller"],
1366
+ buckets: [0.1, 0.5, 1, 2, 3, 4],
1367
+ }),
1368
+ },
1310
1369
  // Precompute next epoch transition
1311
1370
  precomputeNextEpochTransition: {
1312
1371
  count: register.counter({