@lodestar/beacon-node 1.18.0-dev.f2ec0d4236 → 1.18.0-dev.f5148b2b91

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 (49) hide show
  1. package/lib/api/impl/beacon/blocks/index.js +32 -13
  2. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  3. package/lib/api/impl/beacon/blocks/utils.d.ts +1 -0
  4. package/lib/api/impl/beacon/rewards/index.js +6 -6
  5. package/lib/api/impl/beacon/rewards/index.js.map +1 -1
  6. package/lib/api/impl/beacon/state/index.js +27 -9
  7. package/lib/api/impl/beacon/state/index.js.map +1 -1
  8. package/lib/api/impl/beacon/state/utils.d.ts +2 -1
  9. package/lib/api/impl/beacon/state/utils.js +15 -13
  10. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  11. package/lib/api/impl/debug/index.js +4 -8
  12. package/lib/api/impl/debug/index.js.map +1 -1
  13. package/lib/api/impl/validator/index.js +6 -2
  14. package/lib/api/impl/validator/index.js.map +1 -1
  15. package/lib/api/impl/validator/utils.js +1 -0
  16. package/lib/api/impl/validator/utils.js.map +1 -1
  17. package/lib/api/rest/base.js +9 -5
  18. package/lib/api/rest/base.js.map +1 -1
  19. package/lib/chain/chain.d.ts +6 -0
  20. package/lib/chain/chain.js +26 -14
  21. package/lib/chain/chain.js.map +1 -1
  22. package/lib/chain/interface.d.ts +6 -0
  23. package/lib/chain/opPools/attestationPool.d.ts +2 -2
  24. package/lib/chain/opPools/attestationPool.js +2 -4
  25. package/lib/chain/opPools/attestationPool.js.map +1 -1
  26. package/lib/chain/stateCache/fifoBlockStateCache.d.ts +6 -0
  27. package/lib/chain/stateCache/fifoBlockStateCache.js +15 -0
  28. package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
  29. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +6 -7
  30. package/lib/chain/stateCache/persistentCheckpointsCache.js +7 -8
  31. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  32. package/lib/chain/stateCache/stateContextCache.d.ts +6 -0
  33. package/lib/chain/stateCache/stateContextCache.js +8 -0
  34. package/lib/chain/stateCache/stateContextCache.js.map +1 -1
  35. package/lib/chain/stateCache/types.d.ts +4 -0
  36. package/lib/chain/stateCache/types.js.map +1 -1
  37. package/lib/network/core/metrics.d.ts +1 -0
  38. package/lib/network/core/metrics.js +4 -0
  39. package/lib/network/core/metrics.js.map +1 -1
  40. package/lib/network/network.js +2 -1
  41. package/lib/network/network.js.map +1 -1
  42. package/lib/network/options.js +2 -2
  43. package/lib/network/options.js.map +1 -1
  44. package/lib/network/peers/peerManager.js +2 -1
  45. package/lib/network/peers/peerManager.js.map +1 -1
  46. package/lib/network/processor/aggregatorTracker.d.ts +2 -0
  47. package/lib/network/processor/aggregatorTracker.js +11 -1
  48. package/lib/network/processor/aggregatorTracker.js.map +1 -1
  49. package/package.json +16 -16
@@ -1,6 +1,6 @@
1
1
  import { fromHexString, toHexString } from "@chainsafe/ssz";
2
2
  import { routes } from "@lodestar/api";
3
- import { computeTimeAtSlot, reconstructFullBlockOrContents } from "@lodestar/state-transition";
3
+ import { computeEpochAtSlot, computeTimeAtSlot, reconstructFullBlockOrContents } from "@lodestar/state-transition";
4
4
  import { SLOTS_PER_HISTORICAL_ROOT } from "@lodestar/params";
5
5
  import { sleep, toHex } from "@lodestar/utils";
6
6
  import { isSignedBlockContents, ProducedBlockSource } from "@lodestar/types";
@@ -51,7 +51,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
51
51
  // bodyRoot should be the same to produced block
52
52
  const bodyRoot = toHex(chain.config.getForkTypes(slot).BeaconBlockBody.hashTreeRoot(signedBlock.message.body));
53
53
  const blockLocallyProduced = chain.producedBlockRoot.has(blockRoot) || chain.producedBlindedBlockRoot.has(blockRoot);
54
- const valLogMeta = { broadcastValidation, blockRoot, bodyRoot, blockLocallyProduced, slot };
54
+ const valLogMeta = { slot, blockRoot, bodyRoot, broadcastValidation, blockLocallyProduced };
55
55
  switch (broadcastValidation) {
56
56
  case routes.beacon.BroadcastValidation.gossip: {
57
57
  if (!blockLocallyProduced) {
@@ -140,6 +140,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
140
140
  }
141
141
  // TODO: Validate block
142
142
  metrics?.registerBeaconBlock(OpSource.api, seenTimestampSec, blockForImport.block.message);
143
+ chain.logger.info("Publishing block", valLogMeta);
143
144
  const publishPromises = [
144
145
  // Send the block, regardless of whether or not it is valid. The API
145
146
  // specification is very clear that this is the desired behaviour.
@@ -176,23 +177,23 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
176
177
  const executionPayload = chain.producedBlockRoot.get(blockRoot);
177
178
  if (executionPayload !== undefined) {
178
179
  const source = ProducedBlockSource.engine;
179
- chain.logger.debug("Reconstructing signedBlockOrContents", { blockRoot, slot, source });
180
+ chain.logger.debug("Reconstructing signedBlockOrContents", { slot, blockRoot, source });
180
181
  const contents = executionPayload
181
182
  ? chain.producedContentsCache.get(toHex(executionPayload.blockHash)) ?? null
182
183
  : null;
183
184
  const signedBlockOrContents = reconstructFullBlockOrContents(signedBlindedBlock, { executionPayload, contents });
184
- chain.logger.info("Publishing assembled block", { blockRoot, slot, source });
185
+ chain.logger.info("Publishing assembled block", { slot, blockRoot, source });
185
186
  return publishBlock(signedBlockOrContents, opts);
186
187
  }
187
188
  else {
188
189
  const source = ProducedBlockSource.builder;
189
- chain.logger.debug("Reconstructing signedBlockOrContents", { blockRoot, slot, source });
190
+ chain.logger.debug("Reconstructing signedBlockOrContents", { slot, blockRoot, source });
190
191
  const signedBlockOrContents = await reconstructBuilderBlockOrContents(chain, signedBlindedBlock);
191
192
  // the full block is published by relay and it's possible that the block is already known to us
192
193
  // by gossip
193
194
  //
194
195
  // see: https://github.com/ChainSafe/lodestar/issues/5404
195
- chain.logger.info("Publishing assembled block", { blockRoot, slot, source });
196
+ chain.logger.info("Publishing assembled block", { slot, blockRoot, source });
196
197
  return publishBlock(signedBlockOrContents, { ...opts, ignoreIfKnown: true });
197
198
  }
198
199
  };
@@ -201,6 +202,8 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
201
202
  // TODO - SLOW CODE: This code seems like it could be improved
202
203
  // If one block in the response contains an optimistic block, mark the entire response as optimistic
203
204
  let executionOptimistic = false;
205
+ // If one block in the response is non finalized, mark the entire response as unfinalized
206
+ let finalized = true;
204
207
  const result = [];
205
208
  if (filters.parentRoot) {
206
209
  const parentRoot = filters.parentRoot;
@@ -218,11 +221,14 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
218
221
  if (isOptimisticBlock(canonical)) {
219
222
  executionOptimistic = true;
220
223
  }
224
+ // Block from hot db which only contains unfinalized blocks
225
+ finalized = false;
221
226
  }
222
227
  }
223
228
  }));
224
229
  return {
225
230
  executionOptimistic,
231
+ finalized,
226
232
  data: result.filter((item) =>
227
233
  // skip if no slot filter
228
234
  !(filters.slot !== undefined && filters.slot !== 0) || item.header.message.slot === filters.slot),
@@ -235,23 +241,27 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
235
241
  if (filters.slot !== undefined) {
236
242
  // future slot
237
243
  if (filters.slot > headSlot) {
238
- return { executionOptimistic: false, data: [] };
244
+ return { executionOptimistic: false, finalized: false, data: [] };
239
245
  }
240
246
  const canonicalBlock = await chain.getCanonicalBlockAtSlot(filters.slot);
241
247
  // skip slot
242
248
  if (!canonicalBlock) {
243
- return { executionOptimistic: false, data: [] };
249
+ return { executionOptimistic: false, finalized: false, data: [] };
244
250
  }
245
251
  const canonicalRoot = config
246
252
  .getForkTypes(canonicalBlock.block.message.slot)
247
253
  .BeaconBlock.hashTreeRoot(canonicalBlock.block.message);
248
254
  result.push(toBeaconHeaderResponse(config, canonicalBlock.block, true));
255
+ if (!canonicalBlock.finalized) {
256
+ finalized = false;
257
+ }
249
258
  // fork blocks
250
259
  // TODO: What is this logic?
251
260
  await Promise.all(chain.forkChoice.getBlockSummariesAtSlot(filters.slot).map(async (summary) => {
252
261
  if (isOptimisticBlock(summary)) {
253
262
  executionOptimistic = true;
254
263
  }
264
+ finalized = false;
255
265
  if (summary.blockRoot !== toHexString(canonicalRoot)) {
256
266
  const block = await db.block.get(fromHexString(summary.blockRoot));
257
267
  if (block) {
@@ -262,13 +272,15 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
262
272
  }
263
273
  return {
264
274
  executionOptimistic,
275
+ finalized,
265
276
  data: result,
266
277
  };
267
278
  },
268
279
  async getBlockHeader(blockId) {
269
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
280
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
270
281
  return {
271
282
  executionOptimistic,
283
+ finalized,
272
284
  data: toBeaconHeaderResponse(config, block, true),
273
285
  };
274
286
  },
@@ -282,20 +294,22 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
282
294
  };
283
295
  },
284
296
  async getBlockV2(blockId, format) {
285
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
297
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
286
298
  if (format === "ssz") {
287
299
  return config.getForkTypes(block.message.slot).SignedBeaconBlock.serialize(block);
288
300
  }
289
301
  return {
290
302
  executionOptimistic,
303
+ finalized,
291
304
  data: block,
292
305
  version: config.getForkName(block.message.slot),
293
306
  };
294
307
  },
295
308
  async getBlockAttestations(blockId) {
296
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
309
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
297
310
  return {
298
311
  executionOptimistic,
312
+ finalized,
299
313
  data: Array.from(block.message.body.attestations),
300
314
  };
301
315
  },
@@ -307,6 +321,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
307
321
  if (slot === head.slot) {
308
322
  return {
309
323
  executionOptimistic: isOptimisticBlock(head),
324
+ finalized: false,
310
325
  data: { root: fromHexString(head.blockRoot) },
311
326
  };
312
327
  }
@@ -314,6 +329,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
314
329
  const state = chain.getHeadState();
315
330
  return {
316
331
  executionOptimistic: isOptimisticBlock(head),
332
+ finalized: computeEpochAtSlot(slot) <= chain.forkChoice.getFinalizedCheckpoint().epoch,
317
333
  data: { root: state.blockRoots.get(slot % SLOTS_PER_HISTORICAL_ROOT) },
318
334
  };
319
335
  }
@@ -322,13 +338,15 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
322
338
  const head = chain.forkChoice.getHead();
323
339
  return {
324
340
  executionOptimistic: isOptimisticBlock(head),
341
+ finalized: false,
325
342
  data: { root: fromHexString(head.blockRoot) },
326
343
  };
327
344
  }
328
345
  // Slow path
329
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
346
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
330
347
  return {
331
348
  executionOptimistic,
349
+ finalized,
332
350
  data: { root: config.getForkTypes(block.message.slot).BeaconBlock.hashTreeRoot(block.message) },
333
351
  };
334
352
  },
@@ -341,7 +359,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
341
359
  await publishBlock(signedBlockOrContents, opts);
342
360
  },
343
361
  async getBlobSidecars(blockId, indices) {
344
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
362
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
345
363
  const blockRoot = config.getForkTypes(block.message.slot).BeaconBlock.hashTreeRoot(block.message);
346
364
  let { blobSidecars } = (await db.blobSidecars.get(blockRoot)) ?? {};
347
365
  if (!blobSidecars) {
@@ -352,6 +370,7 @@ export function getBeaconBlockApi({ chain, config, metrics, network, db, }) {
352
370
  }
353
371
  return {
354
372
  executionOptimistic,
373
+ finalized,
355
374
  data: indices ? blobSidecars.filter(({ index }) => indices.includes(index)) : blobSidecars,
356
375
  };
357
376
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/blocks/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/blocks/index.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,6 @@ export declare function toBeaconHeaderResponse(config: ChainForkConfig, block: a
6
6
  export declare function resolveBlockId(chain: IBeaconChain, blockId: routes.beacon.BlockId): Promise<{
7
7
  block: allForks.SignedBeaconBlock;
8
8
  executionOptimistic: boolean;
9
+ finalized: boolean;
9
10
  }>;
10
11
  //# sourceMappingURL=utils.d.ts.map
@@ -2,18 +2,18 @@ import { resolveBlockId } from "../blocks/utils.js";
2
2
  export function getBeaconRewardsApi({ chain }) {
3
3
  return {
4
4
  async getBlockRewards(blockId) {
5
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
5
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
6
6
  const data = await chain.getBlockRewards(block.message);
7
- return { data, executionOptimistic };
7
+ return { data, executionOptimistic, finalized };
8
8
  },
9
9
  async getAttestationsRewards(epoch, validatorIds) {
10
- const { rewards, executionOptimistic } = await chain.getAttestationsRewards(epoch, validatorIds);
11
- return { data: rewards, executionOptimistic };
10
+ const { rewards, executionOptimistic, finalized } = await chain.getAttestationsRewards(epoch, validatorIds);
11
+ return { data: rewards, executionOptimistic, finalized };
12
12
  },
13
13
  async getSyncCommitteeRewards(blockId, validatorIds) {
14
- const { block, executionOptimistic } = await resolveBlockId(chain, blockId);
14
+ const { block, executionOptimistic, finalized } = await resolveBlockId(chain, blockId);
15
15
  const data = await chain.getSyncCommitteeRewards(block.message, validatorIds);
16
- return { data, executionOptimistic };
16
+ return { data, executionOptimistic, finalized };
17
17
  },
18
18
  };
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/rewards/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAElD,MAAM,UAAU,mBAAmB,CAAC,EAAC,KAAK,EAA4B;IACpE,OAAO;QACL,KAAK,CAAC,eAAe,CAAC,OAAO;YAC3B,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxD,OAAO,EAAC,IAAI,EAAE,mBAAmB,EAAC,CAAC;QACrC,CAAC;QACD,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY;YAC9C,MAAM,EAAC,OAAO,EAAE,mBAAmB,EAAC,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YAC/F,OAAO,EAAC,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAC,CAAC;QAC9C,CAAC;QACD,KAAK,CAAC,uBAAuB,CAAC,OAAO,EAAE,YAAY;YACjD,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAC9E,OAAO,EAAC,IAAI,EAAE,mBAAmB,EAAC,CAAC;QACrC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/rewards/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAElD,MAAM,UAAU,mBAAmB,CAAC,EAAC,KAAK,EAA4B;IACpE,OAAO;QACL,KAAK,CAAC,eAAe,CAAC,OAAO;YAC3B,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACrF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxD,OAAO,EAAC,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAC,CAAC;QAChD,CAAC;QACD,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY;YAC9C,MAAM,EAAC,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YAC1G,OAAO,EAAC,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAC,CAAC;QACzD,CAAC;QACD,KAAK,CAAC,uBAAuB,CAAC,OAAO,EAAE,YAAY;YACjD,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACrF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAC9E,OAAO,EAAC,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAC,CAAC;QAChD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -8,21 +8,23 @@ export function getBeaconStateApi({ chain, config, }) {
8
8
  }
9
9
  return {
10
10
  async getStateRoot(stateId) {
11
- const { state, executionOptimistic } = await getState(stateId);
11
+ const { state, executionOptimistic, finalized } = await getState(stateId);
12
12
  return {
13
13
  executionOptimistic,
14
+ finalized,
14
15
  data: { root: state.hashTreeRoot() },
15
16
  };
16
17
  },
17
18
  async getStateFork(stateId) {
18
- const { state, executionOptimistic } = await getState(stateId);
19
+ const { state, executionOptimistic, finalized } = await getState(stateId);
19
20
  return {
20
21
  executionOptimistic,
22
+ finalized,
21
23
  data: state.fork,
22
24
  };
23
25
  },
24
26
  async getStateRandao(stateId, epoch) {
25
- const { state, executionOptimistic } = await getState(stateId);
27
+ const { state, executionOptimistic, finalized } = await getState(stateId);
26
28
  const stateEpoch = computeEpochAtSlot(state.slot);
27
29
  const usedEpoch = epoch ?? stateEpoch;
28
30
  if (!(stateEpoch < usedEpoch + EPOCHS_PER_HISTORICAL_VECTOR && usedEpoch <= stateEpoch)) {
@@ -31,15 +33,17 @@ export function getBeaconStateApi({ chain, config, }) {
31
33
  const randao = getRandaoMix(state, usedEpoch);
32
34
  return {
33
35
  executionOptimistic,
36
+ finalized,
34
37
  data: {
35
38
  randao,
36
39
  },
37
40
  };
38
41
  },
39
42
  async getStateFinalityCheckpoints(stateId) {
40
- const { state, executionOptimistic } = await getState(stateId);
43
+ const { state, executionOptimistic, finalized } = await getState(stateId);
41
44
  return {
42
45
  executionOptimistic,
46
+ finalized,
43
47
  data: {
44
48
  currentJustified: state.currentJustifiedCheckpoint,
45
49
  previousJustified: state.previousJustifiedCheckpoint,
@@ -48,7 +52,7 @@ export function getBeaconStateApi({ chain, config, }) {
48
52
  };
49
53
  },
50
54
  async getStateValidators(stateId, filters) {
51
- const { state, executionOptimistic } = await resolveStateId(chain, stateId);
55
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId);
52
56
  const currentEpoch = getCurrentEpoch(state);
53
57
  const { validators, balances } = state; // Get the validators sub tree once for all the loop
54
58
  const { pubkey2index } = chain.getHeadState().epochCtx;
@@ -68,6 +72,7 @@ export function getBeaconStateApi({ chain, config, }) {
68
72
  }
69
73
  return {
70
74
  executionOptimistic,
75
+ finalized,
71
76
  data: validatorResponses,
72
77
  };
73
78
  }
@@ -75,6 +80,7 @@ export function getBeaconStateApi({ chain, config, }) {
75
80
  const validatorsByStatus = filterStateValidatorsByStatus(filters.status, state, pubkey2index, currentEpoch);
76
81
  return {
77
82
  executionOptimistic,
83
+ finalized,
78
84
  data: validatorsByStatus,
79
85
  };
80
86
  }
@@ -87,11 +93,15 @@ export function getBeaconStateApi({ chain, config, }) {
87
93
  }
88
94
  return {
89
95
  executionOptimistic,
96
+ finalized,
90
97
  data: resp,
91
98
  };
92
99
  },
100
+ async postStateValidators(stateId, filters) {
101
+ return this.getStateValidators(stateId, filters);
102
+ },
93
103
  async getStateValidator(stateId, validatorId) {
94
- const { state, executionOptimistic } = await resolveStateId(chain, stateId);
104
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId);
95
105
  const { pubkey2index } = chain.getHeadState().epochCtx;
96
106
  const resp = getStateValidatorIndex(validatorId, state, pubkey2index);
97
107
  if (!resp.valid) {
@@ -100,11 +110,12 @@ export function getBeaconStateApi({ chain, config, }) {
100
110
  const validatorIndex = resp.validatorIndex;
101
111
  return {
102
112
  executionOptimistic,
113
+ finalized,
103
114
  data: toValidatorResponse(validatorIndex, state.validators.getReadonly(validatorIndex), state.balances.get(validatorIndex), getCurrentEpoch(state)),
104
115
  };
105
116
  },
106
117
  async getStateValidatorBalances(stateId, indices) {
107
- const { state, executionOptimistic } = await resolveStateId(chain, stateId);
118
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId);
108
119
  if (indices) {
109
120
  const headState = chain.getHeadState();
110
121
  const balances = [];
@@ -124,6 +135,7 @@ export function getBeaconStateApi({ chain, config, }) {
124
135
  }
125
136
  return {
126
137
  executionOptimistic,
138
+ finalized,
127
139
  data: balances,
128
140
  };
129
141
  }
@@ -135,11 +147,15 @@ export function getBeaconStateApi({ chain, config, }) {
135
147
  }
136
148
  return {
137
149
  executionOptimistic,
150
+ finalized,
138
151
  data: resp,
139
152
  };
140
153
  },
154
+ async postStateValidatorBalances(stateId, indices) {
155
+ return this.getStateValidatorBalances(stateId, indices);
156
+ },
141
157
  async getEpochCommittees(stateId, filters) {
142
- const { state, executionOptimistic } = await resolveStateId(chain, stateId);
158
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId);
143
159
  const stateCached = state;
144
160
  if (stateCached.epochCtx === undefined) {
145
161
  throw new ApiError(400, `No cached state available for stateId: ${stateId}`);
@@ -168,6 +184,7 @@ export function getBeaconStateApi({ chain, config, }) {
168
184
  });
169
185
  return {
170
186
  executionOptimistic,
187
+ finalized,
171
188
  data: committeesFlat,
172
189
  };
173
190
  },
@@ -177,7 +194,7 @@ export function getBeaconStateApi({ chain, config, }) {
177
194
  */
178
195
  async getEpochSyncCommittees(stateId, epoch) {
179
196
  // TODO: Should pick a state with the provided epoch too
180
- const { state, executionOptimistic } = await resolveStateId(chain, stateId);
197
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId);
181
198
  // TODO: If possible compute the syncCommittees in advance of the fork and expose them here.
182
199
  // So the validators can prepare and potentially attest the first block. Not critical tho, it's very unlikely
183
200
  const stateEpoch = computeEpochAtSlot(state.slot);
@@ -191,6 +208,7 @@ export function getBeaconStateApi({ chain, config, }) {
191
208
  const syncCommitteeCache = stateCached.epochCtx.getIndexedSyncCommitteeAtEpoch(epoch ?? stateEpoch);
192
209
  return {
193
210
  executionOptimistic,
211
+ finalized,
194
212
  data: {
195
213
  validators: syncCommitteeCache.validatorIndices,
196
214
  // TODO: This is not used by the validator and will be deprecated soon
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAC,4BAA4B,EAAC,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,UAAU,iBAAiB,CAAC,EAChC,KAAK,EACL,MAAM,GAC+B;IACrC,KAAK,UAAU,QAAQ,CACrB,OAA8B;QAE9B,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACL,KAAK,CAAC,YAAY,CAAC,OAAO;YACxB,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxE,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,EAAC,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,EAAC;aACnC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,OAAO;YACxB,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxE,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK;YACjC,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxE,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,KAAK,IAAI,UAAU,CAAC;YAEtC,IAAI,CAAC,CAAC,UAAU,GAAG,SAAS,GAAG,4BAA4B,IAAI,SAAS,IAAI,UAAU,CAAC,EAAE,CAAC;gBACxF,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,iCAAiC,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAE9C,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE;oBACJ,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,2BAA2B,CAAC,OAAO;YACvC,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxE,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE;oBACJ,gBAAgB,EAAE,KAAK,CAAC,0BAA0B;oBAClD,iBAAiB,EAAE,KAAK,CAAC,2BAA2B;oBACpD,SAAS,EAAE,KAAK,CAAC,mBAAmB;iBACrC;aACF,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO;YACvC,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACrF,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC,CAAC,oDAAoD;YAC1F,MAAM,EAAC,YAAY,EAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;YAErD,MAAM,kBAAkB,GAAsC,EAAE,CAAC;YACjE,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;gBAChB,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;oBAC5B,MAAM,IAAI,GAAG,sBAAsB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;oBAC7D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;wBAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;wBACzD,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;4BAC5F,SAAS;wBACX,CAAC;wBACD,MAAM,iBAAiB,GAAG,mBAAmB,CAC3C,cAAc,EACd,SAAS,EACT,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,EAC5B,YAAY,CACb,CAAC;wBACF,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;gBACD,OAAO;oBACL,mBAAmB;oBACnB,SAAS;oBACT,IAAI,EAAE,kBAAkB;iBACzB,CAAC;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC3B,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;gBAC5G,OAAO;oBACL,mBAAmB;oBACnB,SAAS;oBACT,IAAI,EAAE,kBAAkB;iBACzB,CAAC;YACJ,CAAC;YAED,4DAA4D;YAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC;YAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAsC,EAAE,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;YACpF,CAAC;YAED,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO;YACxC,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAED,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,WAAW;YAC1C,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACrF,MAAM,EAAC,YAAY,EAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC;YAErD,MAAM,IAAI,GAAG,sBAAsB,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;YAC3C,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,mBAAmB,CACvB,cAAc,EACd,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,EAC5C,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,EAClC,eAAe,CAAC,KAAK,CAAC,CACvB;aACF,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,yBAAyB,CAAC,OAAO,EAAE,OAAO;YAC9C,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAErF,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAqC,EAAE,CAAC;gBACtD,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;wBAC3B,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;4BAClC,SAAS;wBACX,CAAC;wBACD,QAAQ,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;oBAC9D,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACtD,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;4BACtD,QAAQ,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,OAAO;oBACL,mBAAmB;oBACnB,SAAS;oBACT,IAAI,EAAE,QAAQ;iBACf,CAAC;YACJ,CAAC;YAED,4DAA4D;YAC5D,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAqC,EAAE,CAAC;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC;YACjD,CAAC;YACD,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,0BAA0B,CAAC,OAAO,EAAE,OAAO;YAC/C,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;QAED,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO;YACvC,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAErF,MAAM,WAAW,GAAG,KAAgC,CAAC;YACrD,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,0CAA0C,OAAO,EAAE,CAAC,CAAC;YAC/E,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAClE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;YACxC,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,WAAW,EAAE,EAAE;gBACxE,MAAM,IAAI,GAAG,SAAS,GAAG,WAAW,CAAC;gBACrC,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBACzD,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE;oBAC1D,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;wBACrE,OAAO,EAAE,CAAC;oBACZ,CAAC;oBACD,OAAO;wBACL;4BACE,KAAK,EAAE,cAAc;4BACrB,IAAI;4BACJ,UAAU,EAAE,SAAS;yBACtB;qBACF,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE,cAAc;aACrB,CAAC;QACJ,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK;YACzC,wDAAwD;YACxD,MAAM,EAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAErF,4FAA4F;YAC5F,6GAA6G;YAC7G,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,UAAU,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;YACtE,CAAC;YAED,MAAM,WAAW,GAAG,KAAgC,CAAC;YACrD,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,0CAA0C,OAAO,EAAE,CAAC,CAAC;YAC/E,CAAC;YAED,MAAM,kBAAkB,GAAG,WAAW,CAAC,QAAQ,CAAC,8BAA8B,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC;YAEpG,OAAO;gBACL,mBAAmB;gBACnB,SAAS;gBACT,IAAI,EAAE;oBACJ,UAAU,EAAE,kBAAkB,CAAC,gBAAgB;oBAC/C,sEAAsE;oBACtE,mBAAmB,EAAE,EAAE;iBACxB;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -6,6 +6,7 @@ import { IBeaconChain, StateGetOpts } from "../../../../chain/index.js";
6
6
  export declare function resolveStateId(chain: IBeaconChain, stateId: routes.beacon.StateId, opts?: StateGetOpts): Promise<{
7
7
  state: BeaconStateAllForks;
8
8
  executionOptimistic: boolean;
9
+ finalized: boolean;
9
10
  }>;
10
11
  /**
11
12
  * Get the status of the validator
@@ -16,7 +17,7 @@ export declare function toValidatorResponse(index: ValidatorIndex, validator: ph
16
17
  export declare function filterStateValidatorsByStatus(statuses: string[], state: BeaconStateAllForks, pubkey2index: PubkeyIndexMap, currentEpoch: Epoch): routes.beacon.ValidatorResponse[];
17
18
  type StateValidatorIndexResponse = {
18
19
  valid: true;
19
- validatorIndex: number;
20
+ validatorIndex: ValidatorIndex;
20
21
  } | {
21
22
  valid: false;
22
23
  code: number;
@@ -14,7 +14,7 @@ async function resolveStateIdOrNull(chain, stateId, opts) {
14
14
  // TODO: This is not OK, head and headState must be fetched atomically
15
15
  const head = chain.forkChoice.getHead();
16
16
  const headState = chain.getHeadState();
17
- return { state: headState, executionOptimistic: isOptimisticBlock(head) };
17
+ return { state: headState, executionOptimistic: isOptimisticBlock(head), finalized: false };
18
18
  }
19
19
  if (stateId === "genesis") {
20
20
  return chain.getStateBySlot(GENESIS_SLOT, opts);
@@ -92,10 +92,9 @@ export function filterStateValidatorsByStatus(statuses, state, pubkey2index, cur
92
92
  return responses;
93
93
  }
94
94
  export function getStateValidatorIndex(id, state, pubkey2index) {
95
- let validatorIndex;
96
95
  if (typeof id === "string") {
96
+ // mutate `id` and fallthrough to below
97
97
  if (id.startsWith("0x")) {
98
- // mutate `id` and fallthrough to below
99
98
  try {
100
99
  id = fromHexString(id);
101
100
  }
@@ -104,19 +103,22 @@ export function getStateValidatorIndex(id, state, pubkey2index) {
104
103
  }
105
104
  }
106
105
  else {
107
- validatorIndex = Number(id);
108
- // validator is invalid or added later than given stateId
109
- if (!Number.isSafeInteger(validatorIndex)) {
110
- return { valid: false, code: 400, reason: "Invalid validator index" };
111
- }
112
- if (validatorIndex >= state.validators.length) {
113
- return { valid: false, code: 404, reason: "Validator index from future state" };
114
- }
115
- return { valid: true, validatorIndex };
106
+ id = Number(id);
107
+ }
108
+ }
109
+ if (typeof id === "number") {
110
+ const validatorIndex = id;
111
+ // validator is invalid or added later than given stateId
112
+ if (!Number.isSafeInteger(validatorIndex)) {
113
+ return { valid: false, code: 400, reason: "Invalid validator index" };
114
+ }
115
+ if (validatorIndex >= state.validators.length) {
116
+ return { valid: false, code: 404, reason: "Validator index from future state" };
116
117
  }
118
+ return { valid: true, validatorIndex };
117
119
  }
118
120
  // typeof id === Uint8Array
119
- validatorIndex = pubkey2index.get(id);
121
+ const validatorIndex = pubkey2index.get(id);
120
122
  if (validatorIndex === undefined) {
121
123
  return { valid: false, code: 404, reason: "Validator pubkey not found in state" };
122
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/api/impl/beacon/state/utils.ts"],"names":[],"mappings":"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"}
@@ -31,25 +31,21 @@ export function getDebugApi({ chain, config }) {
31
31
  return { data: nodes };
32
32
  },
33
33
  async getState(stateId, format) {
34
- const { state } = await resolveStateId(chain, stateId, { allowRegen: true });
34
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId, { allowRegen: true });
35
35
  if (format === "ssz") {
36
- // Casting to any otherwise Typescript doesn't like the multi-type return
37
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-explicit-any
38
36
  return state.serialize();
39
37
  }
40
38
  else {
41
- return { data: state.toValue() };
39
+ return { data: state.toValue(), executionOptimistic, finalized };
42
40
  }
43
41
  },
44
42
  async getStateV2(stateId, format) {
45
- const { state } = await resolveStateId(chain, stateId, { allowRegen: true });
43
+ const { state, executionOptimistic, finalized } = await resolveStateId(chain, stateId, { allowRegen: true });
46
44
  if (format === "ssz") {
47
- // Casting to any otherwise Typescript doesn't like the multi-type return
48
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-explicit-any
49
45
  return state.serialize();
50
46
  }
51
47
  else {
52
- return { data: state.toValue(), version: config.getForkName(state.slot) };
48
+ return { data: state.toValue(), version: config.getForkName(state.slot), executionOptimistic, finalized };
53
49
  }
54
50
  },
55
51
  };