@lodestar/state-transition 1.23.0-dev.bb40ef7eb7 → 1.23.0-dev.be0d971386

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 (88) hide show
  1. package/lib/block/isValidIndexedAttestation.js +2 -6
  2. package/lib/block/isValidIndexedAttestation.js.map +1 -1
  3. package/lib/block/processAttestationPhase0.js +4 -8
  4. package/lib/block/processAttestationPhase0.js.map +1 -1
  5. package/lib/block/processConsolidationRequest.js +1 -1
  6. package/lib/block/processConsolidationRequest.js.map +1 -1
  7. package/lib/block/processDeposit.js +2 -2
  8. package/lib/block/processDeposit.js.map +1 -1
  9. package/lib/block/processEth1Data.js +1 -3
  10. package/lib/block/processEth1Data.js.map +1 -1
  11. package/lib/block/processOperations.js +3 -3
  12. package/lib/block/processOperations.js.map +1 -1
  13. package/lib/block/processSyncCommittee.js +1 -3
  14. package/lib/block/processSyncCommittee.js.map +1 -1
  15. package/lib/block/processWithdrawalRequest.js +1 -1
  16. package/lib/block/processWithdrawalRequest.js.map +1 -1
  17. package/lib/cache/epochCache.d.ts +57 -24
  18. package/lib/cache/epochCache.js +198 -90
  19. package/lib/cache/epochCache.js.map +1 -1
  20. package/lib/cache/epochTransitionCache.d.ts +4 -4
  21. package/lib/cache/epochTransitionCache.js +19 -4
  22. package/lib/cache/epochTransitionCache.js.map +1 -1
  23. package/lib/cache/pubkeyCache.d.ts +1 -9
  24. package/lib/cache/pubkeyCache.js +0 -18
  25. package/lib/cache/pubkeyCache.js.map +1 -1
  26. package/lib/cache/stateCache.js +4 -1
  27. package/lib/cache/stateCache.js.map +1 -1
  28. package/lib/cache/syncCommitteeCache.d.ts +1 -1
  29. package/lib/cache/syncCommitteeCache.js +1 -1
  30. package/lib/cache/syncCommitteeCache.js.map +1 -1
  31. package/lib/epoch/processPendingBalanceDeposits.js +5 -7
  32. package/lib/epoch/processPendingBalanceDeposits.js.map +1 -1
  33. package/lib/epoch/processSlashings.js +8 -2
  34. package/lib/epoch/processSlashings.js.map +1 -1
  35. package/lib/epoch/processSyncCommitteeUpdates.js +1 -1
  36. package/lib/epoch/processSyncCommitteeUpdates.js.map +1 -1
  37. package/lib/index.d.ts +2 -1
  38. package/lib/index.js +2 -1
  39. package/lib/index.js.map +1 -1
  40. package/lib/metrics.js +2 -0
  41. package/lib/metrics.js.map +1 -1
  42. package/lib/signatureSets/attesterSlashings.js +1 -3
  43. package/lib/signatureSets/attesterSlashings.js.map +1 -1
  44. package/lib/signatureSets/proposerSlashings.js +1 -3
  45. package/lib/signatureSets/proposerSlashings.js.map +1 -1
  46. package/lib/slot/upgradeStateToAltair.js +2 -1
  47. package/lib/slot/upgradeStateToAltair.js.map +1 -1
  48. package/lib/slot/upgradeStateToCapella.js +1 -0
  49. package/lib/slot/upgradeStateToCapella.js.map +1 -1
  50. package/lib/slot/upgradeStateToDeneb.js +1 -0
  51. package/lib/slot/upgradeStateToDeneb.js.map +1 -1
  52. package/lib/slot/upgradeStateToElectra.js +3 -8
  53. package/lib/slot/upgradeStateToElectra.js.map +1 -1
  54. package/lib/stateTransition.js +19 -0
  55. package/lib/stateTransition.js.map +1 -1
  56. package/lib/util/balance.d.ts +1 -1
  57. package/lib/util/blindedBlock.js +17 -13
  58. package/lib/util/blindedBlock.js.map +1 -1
  59. package/lib/util/calculateCommitteeAssignments.d.ts +12 -0
  60. package/lib/util/calculateCommitteeAssignments.js +26 -0
  61. package/lib/util/calculateCommitteeAssignments.js.map +1 -0
  62. package/lib/util/computeAnchorCheckpoint.d.ts +8 -0
  63. package/lib/util/computeAnchorCheckpoint.js +32 -0
  64. package/lib/util/computeAnchorCheckpoint.js.map +1 -0
  65. package/lib/util/deposit.js +2 -6
  66. package/lib/util/deposit.js.map +1 -1
  67. package/lib/util/epochShuffling.d.ts +43 -2
  68. package/lib/util/epochShuffling.js +45 -21
  69. package/lib/util/epochShuffling.js.map +1 -1
  70. package/lib/util/execution.js +6 -17
  71. package/lib/util/execution.js.map +1 -1
  72. package/lib/util/index.d.ts +2 -1
  73. package/lib/util/index.js +2 -1
  74. package/lib/util/index.js.map +1 -1
  75. package/lib/util/loadState/loadValidator.js +1 -3
  76. package/lib/util/loadState/loadValidator.js.map +1 -1
  77. package/lib/util/seed.js +1 -1
  78. package/lib/util/seed.js.map +1 -1
  79. package/lib/util/shufflingDecisionRoot.js +5 -11
  80. package/lib/util/shufflingDecisionRoot.js.map +1 -1
  81. package/lib/util/validator.js +2 -6
  82. package/lib/util/validator.js.map +1 -1
  83. package/lib/util/weakSubjectivity.js +0 -1
  84. package/lib/util/weakSubjectivity.js.map +1 -1
  85. package/package.json +10 -8
  86. package/lib/util/shuffle.d.ts +0 -9
  87. package/lib/util/shuffle.js +0 -197
  88. package/lib/util/shuffle.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { intDiv } from "@lodestar/utils";
2
- import { EPOCHS_PER_SLASHINGS_VECTOR, FAR_FUTURE_EPOCH, ForkSeq, MIN_ACTIVATION_BALANCE } from "@lodestar/params";
1
+ import { intDiv, toRootHex } from "@lodestar/utils";
2
+ import { EPOCHS_PER_SLASHINGS_VECTOR, FAR_FUTURE_EPOCH, ForkSeq, SLOTS_PER_HISTORICAL_ROOT, MIN_ACTIVATION_BALANCE, } from "@lodestar/params";
3
3
  import { hasMarkers, FLAG_UNSLASHED, FLAG_ELIGIBLE_ATTESTER, FLAG_PREV_SOURCE_ATTESTER, FLAG_PREV_TARGET_ATTESTER, FLAG_PREV_HEAD_ATTESTER, FLAG_CURR_SOURCE_ATTESTER, FLAG_CURR_TARGET_ATTESTER, FLAG_CURR_HEAD_ATTESTER, } from "../util/attesterStatus.js";
4
4
  import { computeBaseRewardPerIncrement } from "../util/altair.js";
5
5
  import { processPendingAttestations } from "../epoch/processPendingAttestations.js";
@@ -142,6 +142,21 @@ export function beforeProcessEpoch(state, opts) {
142
142
  nextEpochShufflingActiveValidatorIndices[nextEpochShufflingActiveIndicesLength++] = i;
143
143
  }
144
144
  }
145
+ // Trigger async build of shuffling for epoch after next (nextShuffling post epoch transition)
146
+ const epochAfterNext = state.epochCtx.nextEpoch + 1;
147
+ // cannot call calculateShufflingDecisionRoot here because spec prevent getting current slot
148
+ // as a decision block. we are part way through the transition though and this was added in
149
+ // process slot beforeProcessEpoch happens so it available and valid
150
+ const nextShufflingDecisionRoot = toRootHex(state.blockRoots.get(state.slot % SLOTS_PER_HISTORICAL_ROOT));
151
+ const nextShufflingActiveIndices = new Uint32Array(nextEpochShufflingActiveIndicesLength);
152
+ if (nextEpochShufflingActiveIndicesLength > nextEpochShufflingActiveValidatorIndices.length) {
153
+ throw new Error(`Invalid activeValidatorCount: ${nextEpochShufflingActiveIndicesLength} > ${nextEpochShufflingActiveValidatorIndices.length}`);
154
+ }
155
+ // only the first `activeValidatorCount` elements are copied to `activeIndices`
156
+ for (let i = 0; i < nextEpochShufflingActiveIndicesLength; i++) {
157
+ nextShufflingActiveIndices[i] = nextEpochShufflingActiveValidatorIndices[i];
158
+ }
159
+ state.epochCtx.shufflingCache?.build(epochAfterNext, nextShufflingDecisionRoot, state, nextShufflingActiveIndices);
145
160
  if (totalActiveStakeByIncrement < 1) {
146
161
  totalActiveStakeByIncrement = 1;
147
162
  }
@@ -235,8 +250,8 @@ export function beforeProcessEpoch(state, opts) {
235
250
  indicesEligibleForActivationQueue,
236
251
  indicesEligibleForActivation,
237
252
  indicesToEject,
238
- nextEpochShufflingActiveValidatorIndices,
239
- nextEpochShufflingActiveIndicesLength,
253
+ nextShufflingDecisionRoot,
254
+ nextShufflingActiveIndices,
240
255
  // to be updated in processEffectiveBalanceUpdates
241
256
  nextEpochTotalActiveBalanceByIncrement: 0,
242
257
  isActivePrevEpoch,
@@ -1 +1 @@
1
- {"version":3,"file":"epochTransitionCache.js","sourceRoot":"","sources":["../../src/cache/epochTransitionCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"epochTransitionCache.js","sourceRoot":"","sources":["../../src/cache/epochTransitionCache.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { PublicKey } from "@chainsafe/blst";
2
+ import { PubkeyIndexMap } from "@chainsafe/pubkey-index-map";
2
3
  import * as immutable from "immutable";
3
4
  import { ValidatorIndex, phase0 } from "@lodestar/types";
4
5
  export type Index2PubkeyCache = PublicKey[];
@@ -23,15 +24,6 @@ export declare function toMemoryEfficientHexStr(hex: Uint8Array | string): strin
23
24
  * A wrapper for calling immutable.js. To abstract the initialization of UnfinalizedPubkeyIndexMap
24
25
  */
25
26
  export declare function newUnfinalizedPubkeyIndexMap(): UnfinalizedPubkeyIndexMap;
26
- export declare class PubkeyIndexMap {
27
- readonly map: Map<string, number>;
28
- get size(): number;
29
- /**
30
- * Must support reading with string for API support where pubkeys are already strings
31
- */
32
- get(key: Uint8Array | PubkeyHex): ValidatorIndex | undefined;
33
- set(key: Uint8Array | PubkeyHex, value: ValidatorIndex): void;
34
- }
35
27
  /**
36
28
  * Checks the pubkey indices against a state and adds missing pubkeys
37
29
  *
@@ -23,24 +23,6 @@ export function toMemoryEfficientHexStr(hex) {
23
23
  export function newUnfinalizedPubkeyIndexMap() {
24
24
  return immutable.Map();
25
25
  }
26
- export class PubkeyIndexMap {
27
- constructor() {
28
- // We don't really need the full pubkey. We could just use the first 20 bytes like an Ethereum address
29
- this.map = new Map();
30
- }
31
- get size() {
32
- return this.map.size;
33
- }
34
- /**
35
- * Must support reading with string for API support where pubkeys are already strings
36
- */
37
- get(key) {
38
- return this.map.get(toMemoryEfficientHexStr(key));
39
- }
40
- set(key, value) {
41
- this.map.set(toMemoryEfficientHexStr(key), value);
42
- }
43
- }
44
26
  /**
45
27
  * Checks the pubkey indices against a state and adds missing pubkeys
46
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"pubkeyCache.js","sourceRoot":"","sources":["../../src/cache/pubkeyCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAcvC;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAwB;IAC9D,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO,SAAS,CAAC,GAAG,EAA6B,CAAC;AACpD,CAAC;AAED,MAAM,OAAO,cAAc;IAA3B;QACE,sGAAsG;QAC7F,QAAG,GAAG,IAAI,GAAG,EAA6B,CAAC;IAgBtD,CAAC;IAdC,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,GAA2B;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,GAAG,CAAC,GAA2B,EAAE,KAAqB;QACpD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,UAA8B,EAC9B,YAA4B,EAC5B,YAA+B;IAE/B,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,2CAA2C,YAAY,CAAC,IAAI,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC;IACnC,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5B,gHAAgH;QAChH,6DAA6D;QAC7D,kCAAkC;QAClC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,2BAA2B;IAC5E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"pubkeyCache.js","sourceRoot":"","sources":["../../src/cache/pubkeyCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAcvC;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAwB;IAC9D,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO,SAAS,CAAC,GAAG,EAA6B,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,UAA8B,EAC9B,YAA4B,EAC5B,YAA+B;IAE/B,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,2CAA2C,YAAY,CAAC,IAAI,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC;IACnC,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5B,gHAAgH;QAChH,6DAA6D;QAC7D,kCAAkC;QAClC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,2BAA2B;IAC5E,CAAC;AACH,CAAC"}
@@ -26,7 +26,7 @@ export function createCachedBeaconState(state, immutableData, opts) {
26
26
  */
27
27
  export function loadCachedBeaconState(cachedSeedState, stateBytes, opts, seedValidatorsBytes) {
28
28
  const { state: migratedState, modifiedValidators } = loadState(cachedSeedState.config, cachedSeedState, stateBytes, seedValidatorsBytes);
29
- const { pubkey2index, index2pubkey } = cachedSeedState.epochCtx;
29
+ const { pubkey2index, index2pubkey, shufflingCache } = cachedSeedState.epochCtx;
30
30
  // Get the validators sub tree once for all the loop
31
31
  const validators = migratedState.validators;
32
32
  for (const validatorIndex of modifiedValidators) {
@@ -39,6 +39,7 @@ export function loadCachedBeaconState(cachedSeedState, stateBytes, opts, seedVal
39
39
  config: cachedSeedState.config,
40
40
  pubkey2index,
41
41
  index2pubkey,
42
+ shufflingCache,
42
43
  }, { ...(opts ?? {}), ...{ skipSyncPubkeys: true } });
43
44
  }
44
45
  /**
@@ -84,9 +85,11 @@ export function isCachedBeaconState(state) {
84
85
  // This cache is populated during epoch transition, and should be preserved for performance.
85
86
  // If the cache is missing too often, means that our clone strategy is not working well.
86
87
  export function isStateValidatorsNodesPopulated(state) {
88
+ // biome-ignore lint/complexity/useLiteralKeys: It is a private attribute
87
89
  return state.validators["nodesPopulated"] === true;
88
90
  }
89
91
  export function isStateBalancesNodesPopulated(state) {
92
+ // biome-ignore lint/complexity/useLiteralKeys: It is a private attribute
90
93
  return state.balances["nodesPopulated"] === true;
91
94
  }
92
95
  //# sourceMappingURL=stateCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stateCache.js","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateCache.js","sourceRoot":"","sources":["../../src/cache/stateCache.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { CompositeViewDU } from "@chainsafe/ssz";
2
+ import { PubkeyIndexMap } from "@chainsafe/pubkey-index-map";
2
3
  import { ssz, ValidatorIndex } from "@lodestar/types";
3
- import { PubkeyIndexMap } from "./pubkeyCache.js";
4
4
  type SyncComitteeValidatorIndexMap = Map<ValidatorIndex, number[]>;
5
5
  export type SyncCommitteeCache = {
6
6
  /**
@@ -50,7 +50,7 @@ function computeSyncCommitteeIndices(syncCommittee, pubkey2index) {
50
50
  const pubkeys = syncCommittee.pubkeys.getAllReadonly();
51
51
  for (const pubkey of pubkeys) {
52
52
  const validatorIndex = pubkey2index.get(pubkey);
53
- if (validatorIndex === undefined) {
53
+ if (validatorIndex === null) {
54
54
  throw Error(`SyncCommittee pubkey is unknown ${toPubkeyHex(pubkey)}`);
55
55
  }
56
56
  validatorIndices.push(validatorIndex);
@@ -1 +1 @@
1
- {"version":3,"file":"syncCommitteeCache.js","sourceRoot":"","sources":["../../src/cache/syncCommitteeCache.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAkB5C,6CAA6C;AAC7C,MAAM,OAAO,uBAAuB;IAClC,IAAI,gBAAgB;QAClB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,iBAAiB;QACnB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB,CAAC,gBAAkC;IACtE,OAAO;QACL,gBAAgB;QAChB,iBAAiB,EAAE,sBAAsB,CAAC,gBAAgB,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,aAA+D,EAC/D,YAA4B;IAE5B,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IACnE,OAAO;QACL,gBAAgB;QAChB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,oBAAsC;IAC3E,MAAM,GAAG,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,oBAAoB,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAChE,MAAM,cAAc,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,2BAA2B,CAClC,aAA+D,EAC/D,YAA4B;IAE5B,MAAM,gBAAgB,GAAqB,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,KAAK,CAAC,mCAAmC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"syncCommitteeCache.js","sourceRoot":"","sources":["../../src/cache/syncCommitteeCache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAiB5C,6CAA6C;AAC7C,MAAM,OAAO,uBAAuB;IAClC,IAAI,gBAAgB;QAClB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,iBAAiB;QACnB,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB,CAAC,gBAAkC;IACtE,OAAO;QACL,gBAAgB;QAChB,iBAAiB,EAAE,sBAAsB,CAAC,gBAAgB,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,aAA+D,EAC/D,YAA4B;IAE5B,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IACnE,OAAO;QACL,gBAAgB;QAChB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,oBAAsC;IAC3E,MAAM,GAAG,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,oBAAoB,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAChE,MAAM,cAAc,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,2BAA2B,CAClC,aAA+D,EAC/D,YAA4B;IAE5B,MAAM,gBAAgB,GAAqB,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAC,mCAAmC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
@@ -40,14 +40,12 @@ export function processPendingBalanceDeposits(state, cache) {
40
40
  // Deposit does not fit in the churn, no more deposit processing in this epoch.
41
41
  break;
42
42
  }
43
- else {
44
- // Deposit fits in the churn, process it. Increase balance and consume churn.
45
- increaseBalance(state, depositIndex, Number(amount));
46
- if (cachedBalances) {
47
- cachedBalances[depositIndex] += Number(amount);
48
- }
49
- processedAmount = processedAmount + amount;
43
+ // Deposit fits in the churn, process it. Increase balance and consume churn.
44
+ increaseBalance(state, depositIndex, Number(amount));
45
+ if (cachedBalances) {
46
+ cachedBalances[depositIndex] += Number(amount);
50
47
  }
48
+ processedAmount = processedAmount + amount;
51
49
  }
52
50
  // Regardless of how the deposit was handled, we move on in the queue.
53
51
  nextDepositIndex++;
@@ -1 +1 @@
1
- {"version":3,"file":"processPendingBalanceDeposits.js","sourceRoot":"","sources":["../../src/epoch/processPendingBalanceDeposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,2BAA2B,EAAC,MAAM,sBAAsB,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAA+B,EAAE,KAA2B;IACxG,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAC3C,MAAM,sBAAsB,GAAG,KAAK,CAAC,uBAAuB,GAAG,MAAM,CAAC,2BAA2B,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnH,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEtC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,sBAAsB,CAAC,cAAc,EAAE,EAAE,CAAC;QACpE,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAC,GAAG,OAAO,CAAC;QAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAEvD,4EAA4E;QAC5E,IAAI,SAAS,CAAC,SAAS,GAAG,gBAAgB,EAAE,CAAC;YAC3C,IAAI,SAAS,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,wFAAwF;gBACxF,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,IAAI,cAAc,EAAE,CAAC;oBACnB,cAAc,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,IAAI,eAAe,GAAG,MAAM,GAAG,sBAAsB,EAAE,CAAC;gBACtD,+EAA+E;gBAC/E,MAAM;YACR,CAAC;iBAAM,CAAC;gBACN,6EAA6E;gBAC7E,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,IAAI,cAAc,EAAE,CAAC;oBACnB,cAAc,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjD,CAAC;gBACD,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,sEAAsE;QACtE,gBAAgB,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,+BAA+B,GAAG,KAAK,CAAC,sBAAsB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACjG,KAAK,CAAC,sBAAsB,GAAG,+BAA+B,CAAC;IAE/D,IAAI,+BAA+B,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,uBAAuB,GAAG,sBAAsB,GAAG,eAAe,CAAC;IAC3E,CAAC;IAED,wFAAwF;IACxF,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,KAAK,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"processPendingBalanceDeposits.js","sourceRoot":"","sources":["../../src/epoch/processPendingBalanceDeposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,2BAA2B,EAAC,MAAM,sBAAsB,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAA+B,EAAE,KAA2B;IACxG,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAC3C,MAAM,sBAAsB,GAAG,KAAK,CAAC,uBAAuB,GAAG,MAAM,CAAC,2BAA2B,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnH,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEtC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,sBAAsB,CAAC,cAAc,EAAE,EAAE,CAAC;QACpE,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAC,GAAG,OAAO,CAAC;QAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAEvD,4EAA4E;QAC5E,IAAI,SAAS,CAAC,SAAS,GAAG,gBAAgB,EAAE,CAAC;YAC3C,IAAI,SAAS,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,wFAAwF;gBACxF,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,IAAI,cAAc,EAAE,CAAC;oBACnB,cAAc,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,IAAI,eAAe,GAAG,MAAM,GAAG,sBAAsB,EAAE,CAAC;gBACtD,+EAA+E;gBAC/E,MAAM;YACR,CAAC;YACD,6EAA6E;YAC7E,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACrD,IAAI,cAAc,EAAE,CAAC;gBACnB,cAAc,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC;YACD,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;QAC7C,CAAC;QACD,sEAAsE;QACtE,gBAAgB,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,+BAA+B,GAAG,KAAK,CAAC,sBAAsB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACjG,KAAK,CAAC,sBAAsB,GAAG,+BAA+B,CAAC;IAE/D,IAAI,+BAA+B,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,uBAAuB,GAAG,sBAAsB,GAAG,eAAe,CAAC;IAC3E,CAAC;IAED,wFAAwF;IACxF,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,KAAK,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
@@ -31,14 +31,20 @@ export function processSlashings(state, cache, updateBalance = true) {
31
31
  const { effectiveBalanceIncrements } = state.epochCtx;
32
32
  const adjustedTotalSlashingBalanceByIncrement = Math.min(state.epochCtx.totalSlashingsByIncrement * proportionalSlashingMultiplier, totalBalanceByIncrement);
33
33
  const increment = EFFECTIVE_BALANCE_INCREMENT;
34
+ const penaltyPerEffectiveBalanceIncrement = Math.floor((adjustedTotalSlashingBalanceByIncrement * increment) / totalBalanceByIncrement);
34
35
  const penalties = [];
35
36
  const penaltiesByEffectiveBalanceIncrement = new Map();
36
37
  for (const index of cache.indicesToSlash) {
37
38
  const effectiveBalanceIncrement = effectiveBalanceIncrements[index];
38
39
  let penalty = penaltiesByEffectiveBalanceIncrement.get(effectiveBalanceIncrement);
39
40
  if (penalty === undefined) {
40
- const penaltyNumeratorByIncrement = effectiveBalanceIncrement * adjustedTotalSlashingBalanceByIncrement;
41
- penalty = Math.floor(penaltyNumeratorByIncrement / totalBalanceByIncrement) * increment;
41
+ if (fork < ForkSeq.electra) {
42
+ const penaltyNumeratorByIncrement = effectiveBalanceIncrement * adjustedTotalSlashingBalanceByIncrement;
43
+ penalty = Math.floor(penaltyNumeratorByIncrement / totalBalanceByIncrement) * increment;
44
+ }
45
+ else {
46
+ penalty = penaltyPerEffectiveBalanceIncrement * effectiveBalanceIncrement;
47
+ }
42
48
  penaltiesByEffectiveBalanceIncrement.set(effectiveBalanceIncrement, penalty);
43
49
  }
44
50
  if (updateBalance) {
@@ -1 +1 @@
1
- {"version":3,"file":"processSlashings.js","sourceRoot":"","sources":["../../src/epoch/processSlashings.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,OAAO,EACP,gCAAgC,EAChC,uCAAuC,EACvC,0CAA0C,GAC3C,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAGjD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAgC,EAChC,KAA2B,EAC3B,aAAa,GAAG,IAAI;IAEpB,0CAA0C;IAC1C,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,uBAAuB,GAAG,KAAK,CAAC,2BAA2B,CAAC;IAClE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,8BAA8B,GAClC,IAAI,KAAK,OAAO,CAAC,MAAM;QACrB,CAAC,CAAC,gCAAgC;QAClC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM;YACvB,CAAC,CAAC,uCAAuC;YACzC,CAAC,CAAC,0CAA0C,CAAC;IAEnD,MAAM,EAAC,0BAA0B,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;IACpD,MAAM,uCAAuC,GAAG,IAAI,CAAC,GAAG,CACtD,KAAK,CAAC,QAAQ,CAAC,yBAAyB,GAAG,8BAA8B,EACzE,uBAAuB,CACxB,CAAC;IACF,MAAM,SAAS,GAAG,2BAA2B,CAAC;IAC9C,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,MAAM,oCAAoC,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,OAAO,GAAG,oCAAoC,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAClF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,2BAA2B,GAAG,yBAAyB,GAAG,uCAAuC,CAAC;YACxG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,2BAA2B,GAAG,uBAAuB,CAAC,GAAG,SAAS,CAAC;YACxF,oCAAoC,CAAC,GAAG,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,qBAAqB;YACrB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,8CAA8C;YAC9C,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAA0B;IACrE,IAAI,yBAAyB,GAAG,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,yBAAyB,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,2BAA2B,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,yBAAyB,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"processSlashings.js","sourceRoot":"","sources":["../../src/epoch/processSlashings.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { getNextSyncCommitteeIndices } from "../util/seed.js";
11
11
  export function processSyncCommitteeUpdates(fork, state) {
12
12
  const nextEpoch = state.epochCtx.epoch + 1;
13
13
  if (nextEpoch % EPOCHS_PER_SYNC_COMMITTEE_PERIOD === 0) {
14
- const activeValidatorIndices = state.epochCtx.nextShuffling.activeIndices;
14
+ const activeValidatorIndices = state.epochCtx.nextActiveIndices;
15
15
  const { effectiveBalanceIncrements } = state.epochCtx;
16
16
  const nextSyncCommitteeIndices = getNextSyncCommitteeIndices(fork, state, activeValidatorIndices, effectiveBalanceIncrements);
17
17
  const validators = state.validators;
@@ -1 +1 @@
1
- {"version":3,"file":"processSyncCommitteeUpdates.js","sourceRoot":"","sources":["../../src/epoch/processSyncCommitteeUpdates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAC,gCAAgC,EAAU,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAC,2BAA2B,EAAC,MAAM,iBAAiB,CAAC;AAG5D;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAa,EAAE,KAA8B;IACvF,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAE3C,IAAI,SAAS,GAAG,gCAAgC,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,sBAAsB,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC;QAC1E,MAAM,EAAC,0BAA0B,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;QAEpD,MAAM,wBAAwB,GAAG,2BAA2B,CAC1D,IAAI,EACJ,KAAK,EACL,sBAAsB,EACtB,0BAA0B,CAC3B,CAAC;QACF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAEpC,iFAAiF;QACjF,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;QAE/G,gCAAgC;QAChC,KAAK,CAAC,oBAAoB,GAAG,KAAK,CAAC,iBAAiB,CAAC;QACrD,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC1D,OAAO,EAAE,wBAAwB;YACjC,eAAe,EAAE,6BAA6B,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE;SACnF,CAAC,CAAC;QAEH,6BAA6B;QAC7B,KAAK,CAAC,QAAQ,CAAC,0BAA0B,CAAC,wBAAwB,CAAC,CAAC;IACtE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"processSyncCommitteeUpdates.js","sourceRoot":"","sources":["../../src/epoch/processSyncCommitteeUpdates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAC,gCAAgC,EAAU,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAC,2BAA2B,EAAC,MAAM,iBAAiB,CAAC;AAG5D;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAa,EAAE,KAA8B;IACvF,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAE3C,IAAI,SAAS,GAAG,gCAAgC,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,sBAAsB,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAChE,MAAM,EAAC,0BAA0B,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;QAEpD,MAAM,wBAAwB,GAAG,2BAA2B,CAC1D,IAAI,EACJ,KAAK,EACL,sBAAsB,EACtB,0BAA0B,CAC3B,CAAC;QACF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAEpC,iFAAiF;QACjF,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;QAE/G,gCAAgC;QAChC,KAAK,CAAC,oBAAoB,GAAG,KAAK,CAAC,iBAAiB,CAAC;QACrD,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC1D,OAAO,EAAE,wBAAwB;YACjC,eAAe,EAAE,6BAA6B,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE;SACnF,CAAC,CAAC;QAEH,6BAA6B;QAC7B,KAAK,CAAC,QAAQ,CAAC,0BAA0B,CAAC,wBAAwB,CAAC,CAAC;IACtE,CAAC;AACH,CAAC"}
package/lib/index.d.ts CHANGED
@@ -7,8 +7,9 @@ export type { BeaconStateTransitionMetrics } from "./metrics.js";
7
7
  export type { CachedBeaconStatePhase0, CachedBeaconStateAltair, CachedBeaconStateBellatrix, CachedBeaconStateCapella, CachedBeaconStateDeneb, CachedBeaconStateElectra, CachedBeaconStateAllForks, CachedBeaconStateExecutions, BeaconStatePhase0, BeaconStateAltair, BeaconStateBellatrix, BeaconStateCapella, BeaconStateDeneb, BeaconStateElectra, BeaconStateAllForks, BeaconStateExecutions, } from "./types.js";
8
8
  export { createCachedBeaconState, loadCachedBeaconState, type BeaconStateCache, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, } from "./cache/stateCache.js";
9
9
  export { EpochCache, type EpochCacheImmutableData, createEmptyEpochCacheImmutableData, EpochCacheError, EpochCacheErrorCode, } from "./cache/epochCache.js";
10
+ export { toMemoryEfficientHexStr } from "./cache/pubkeyCache.js";
10
11
  export { type EpochTransitionCache, beforeProcessEpoch } from "./cache/epochTransitionCache.js";
11
- export { PubkeyIndexMap, type Index2PubkeyCache, type UnfinalizedPubkeyIndexMap, newUnfinalizedPubkeyIndexMap, } from "./cache/pubkeyCache.js";
12
+ export { type Index2PubkeyCache, type UnfinalizedPubkeyIndexMap, newUnfinalizedPubkeyIndexMap, } from "./cache/pubkeyCache.js";
12
13
  export { type EffectiveBalanceIncrements, getEffectiveBalanceIncrementsZeroed, getEffectiveBalanceIncrementsWithLen, } from "./cache/effectiveBalanceIncrements.js";
13
14
  export { isValidVoluntaryExit } from "./block/processVoluntaryExit.js";
14
15
  export { isValidBlsToExecutionChange } from "./block/processBlsToExecutionChange.js";
package/lib/index.js CHANGED
@@ -5,9 +5,10 @@ export * from "./signatureSets/index.js";
5
5
  // Main state caches
6
6
  export { createCachedBeaconState, loadCachedBeaconState, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, } from "./cache/stateCache.js";
7
7
  export { EpochCache, createEmptyEpochCacheImmutableData, EpochCacheError, EpochCacheErrorCode, } from "./cache/epochCache.js";
8
+ export { toMemoryEfficientHexStr } from "./cache/pubkeyCache.js";
8
9
  export { beforeProcessEpoch } from "./cache/epochTransitionCache.js";
9
10
  // Aux data-structures
10
- export { PubkeyIndexMap, newUnfinalizedPubkeyIndexMap, } from "./cache/pubkeyCache.js";
11
+ export { newUnfinalizedPubkeyIndexMap, } from "./cache/pubkeyCache.js";
11
12
  export { getEffectiveBalanceIncrementsZeroed, getEffectiveBalanceIncrementsWithLen, } from "./cache/effectiveBalanceIncrements.js";
12
13
  // BeaconChain validation
13
14
  export { isValidVoluntaryExit } from "./block/processVoluntaryExit.js";
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AAwBzC,oBAAoB;AACpB,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAErB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,UAAU,EAEV,kCAAkC,EAClC,eAAe,EACf,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAE9F,sBAAsB;AACtB,OAAO,EACL,cAAc,EAGd,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAEL,mCAAmC,EACnC,oCAAoC,GACrC,MAAM,uCAAuC,CAAC;AAE/C,yBAAyB;AACzB,OAAO,EAAC,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAyB,MAAM,yBAAyB,CAAC;AAE5G,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AAwBzC,oBAAoB;AACpB,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAErB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,UAAU,EAEV,kCAAkC,EAClC,eAAe,EACf,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAE9F,sBAAsB;AACtB,OAAO,EAGL,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAEL,mCAAmC,EACnC,oCAAoC,GACrC,MAAM,uCAAuC,CAAC;AAE/C,yBAAyB;AACzB,OAAO,EAAC,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAyB,MAAM,yBAAyB,CAAC;AAE5G,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC"}
package/lib/metrics.js CHANGED
@@ -31,9 +31,11 @@ export function onPostStateMetrics(postState, metrics) {
31
31
  // This cache is populated during epoch transition, and should be preserved for performance.
32
32
  // If the cache is missing too often, means that our clone strategy is not working well.
33
33
  function isValidatorsNodesPopulated(state) {
34
+ // biome-ignore lint/complexity/useLiteralKeys: It is a private attribute
34
35
  return state.validators["nodesPopulated"] === true;
35
36
  }
36
37
  function isBalancesNodesPopulated(state) {
38
+ // biome-ignore lint/complexity/useLiteralKeys: It is a private attribute
37
39
  return state.balances["nodesPopulated"] === true;
38
40
  }
39
41
  //# sourceMappingURL=metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAsCA,MAAM,UAAU,mBAAmB,CACjC,KAAgC,EAChC,OAAqC,EACrC,MAAwB;IAExB,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,iCAAiC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,kCAAkC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,mCAAmC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,oCAAoC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAAoC,EAAE,OAAqC;IAC5G,IAAI,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,kCAAkC,CAAC,GAAG,EAAE,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,mCAAmC,CAAC,GAAG,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,0BAA0B,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,oCAAoC,CAAC,GAAG,EAAE,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,qCAAqC,CAAC,GAAG,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,4FAA4F;AAC5F,wFAAwF;AACxF,SAAS,0BAA0B,CAAC,KAAgC;IAClE,OAAO,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAgC;IAChE,OAAO,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAsCA,MAAM,UAAU,mBAAmB,CACjC,KAAgC,EAChC,OAAqC,EACrC,MAAwB;IAExB,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,iCAAiC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,kCAAkC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,mCAAmC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,oCAAoC,CAAC,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAAoC,EAAE,OAAqC;IAC5G,IAAI,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,kCAAkC,CAAC,GAAG,EAAE,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,mCAAmC,CAAC,GAAG,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,0BAA0B,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,oCAAoC,CAAC,GAAG,EAAE,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,qCAAqC,CAAC,GAAG,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,4FAA4F;AAC5F,wFAAwF;AACxF,SAAS,0BAA0B,CAAC,KAAgC;IAClE,yEAAyE;IACzE,OAAO,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAgC;IAChE,yEAAyE;IACzE,OAAO,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;AACnD,CAAC"}
@@ -3,9 +3,7 @@ import { DOMAIN_BEACON_ATTESTER } from "@lodestar/params";
3
3
  import { computeSigningRoot, computeStartSlotAtEpoch, SignatureSetType } from "../util/index.js";
4
4
  /** Get signature sets from all AttesterSlashing objects in a block */
5
5
  export function getAttesterSlashingsSignatureSets(state, signedBlock) {
6
- return signedBlock.message.body.attesterSlashings
7
- .map((attesterSlashing) => getAttesterSlashingSignatureSets(state, attesterSlashing))
8
- .flat(1);
6
+ return signedBlock.message.body.attesterSlashings.flatMap((attesterSlashing) => getAttesterSlashingSignatureSets(state, attesterSlashing));
9
7
  }
10
8
  /** Get signature sets from a single AttesterSlashing object */
11
9
  export function getAttesterSlashingSignatureSets(state, attesterSlashing) {
@@ -1 +1 @@
1
- {"version":3,"file":"attesterSlashings.js","sourceRoot":"","sources":["../../src/signatureSets/attesterSlashings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,GAAG,EAA6C,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAiB,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAG9G,sEAAsE;AACtE,MAAM,UAAU,iCAAiC,CAC/C,KAAgC,EAChC,WAA8B;IAE9B,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB;SAC9C,GAAG,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;SACpF,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,gCAAgC,CAC9C,KAAgC,EAChC,gBAAkC;IAElC,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CACxF,uCAAuC,CAAC,KAAK,EAAE,WAAW,CAAC,CAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,KAAgC,EAChC,kBAA4C;IAE5C,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAe,CAAC,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAEhF,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,SAAS;QAChC,OAAO,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvF,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;QAClG,SAAS,EAAE,kBAAkB,CAAC,SAAS;KACxC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"attesterSlashings.js","sourceRoot":"","sources":["../../src/signatureSets/attesterSlashings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,GAAG,EAA6C,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAiB,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAG9G,sEAAsE;AACtE,MAAM,UAAU,iCAAiC,CAC/C,KAAgC,EAChC,WAA8B;IAE9B,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAC7E,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAC1D,CAAC;AACJ,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,gCAAgC,CAC9C,KAAgC,EAChC,gBAAkC;IAElC,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CACxF,uCAAuC,CAAC,KAAK,EAAE,WAAW,CAAC,CAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,KAAgC,EAChC,kBAA4C;IAE5C,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAe,CAAC,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAEhF,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,SAAS;QAChC,OAAO,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvF,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;QAClG,SAAS,EAAE,kBAAkB,CAAC,SAAS;KACxC,CAAC;AACJ,CAAC"}
@@ -20,8 +20,6 @@ export function getProposerSlashingSignatureSets(state, proposerSlashing) {
20
20
  });
21
21
  }
22
22
  export function getProposerSlashingsSignatureSets(state, signedBlock) {
23
- return signedBlock.message.body.proposerSlashings
24
- .map((proposerSlashing) => getProposerSlashingSignatureSets(state, proposerSlashing))
25
- .flat(1);
23
+ return signedBlock.message.body.proposerSlashings.flatMap((proposerSlashing) => getProposerSlashingSignatureSets(state, proposerSlashing));
26
24
  }
27
25
  //# sourceMappingURL=proposerSlashings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proposerSlashings.js","sourceRoot":"","sources":["../../src/signatureSets/proposerSlashings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAA4B,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAiB,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAGrF;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,KAAgC,EAChC,gBAAyC;IAEzC,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE3F,kHAAkH;IAClH,iHAAiH;IACjH,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,EAAiB,EAAE;QAC1G,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CACnC,KAAK,CAAC,IAAI,EACV,sBAAsB,EACtB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAc,CAAC,CAC5C,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,MAAM;YAC7B,MAAM;YACN,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC;YACjG,SAAS,EAAE,YAAY,CAAC,SAAS;SAClC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,KAAgC,EAChC,WAA8B;IAE9B,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB;SAC9C,GAAG,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;SACpF,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"proposerSlashings.js","sourceRoot":"","sources":["../../src/signatureSets/proposerSlashings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAA4B,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAC,kBAAkB,EAAiB,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAGrF;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,KAAgC,EAChC,gBAAyC;IAEzC,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE3F,kHAAkH;IAClH,iHAAiH;IACjH,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,EAAiB,EAAE;QAC1G,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CACnC,KAAK,CAAC,IAAI,EACV,sBAAsB,EACtB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAc,CAAC,CAC5C,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,MAAM;YAC7B,MAAM;YACN,WAAW,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC;YACjG,SAAS,EAAE,YAAY,CAAC,SAAS;SAClC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,KAAgC,EAChC,WAA8B;IAE9B,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAC7E,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAC1D,CAAC;AACJ,CAAC"}
@@ -60,7 +60,7 @@ export function upgradeStateToAltair(statePhase0) {
60
60
  // Cloned instance with same immutable Node
61
61
  stateAltair.currentEpochParticipation = ssz.altair.EpochParticipation.getViewDU(emptyEpochParticipationNode);
62
62
  stateAltair.inactivityScores = ssz.altair.InactivityScores.toViewDU(newZeroedArray(validatorCount));
63
- const { syncCommittee, indices } = getNextSyncCommittee(ForkSeq.altair, stateAltair, stateAltair.epochCtx.nextShuffling.activeIndices, stateAltair.epochCtx.effectiveBalanceIncrements);
63
+ const { syncCommittee, indices } = getNextSyncCommittee(ForkSeq.altair, stateAltair, stateAltair.epochCtx.nextActiveIndices, stateAltair.epochCtx.effectiveBalanceIncrements);
64
64
  const syncCommitteeView = ssz.altair.SyncCommittee.toViewDU(syncCommittee);
65
65
  stateAltair.currentSyncCommittee = syncCommitteeView;
66
66
  stateAltair.nextSyncCommittee = syncCommitteeView;
@@ -75,6 +75,7 @@ export function upgradeStateToAltair(statePhase0) {
75
75
  //
76
76
  // TODO: This could only drop the caches of index 15,16. However this would couple this code tightly with SSZ ViewDU
77
77
  // internals. If the cache is not cleared, consuming the ViewDU instance could break in strange ways.
78
+ // biome-ignore lint/complexity/useLiteralKeys: It is a protected attribute
78
79
  stateAltair["clearCache"]();
79
80
  // TODO: describe issue. Compute progressive target balances
80
81
  //
@@ -1 +1 @@
1
- {"version":3,"file":"upgradeStateToAltair.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToAltair.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,oBAAoB,EAAC,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAC,mCAAmC,EAAC,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,iCAAiC,EAAC,MAAM,uCAAuC,CAAC;AAExF;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAoC;IACvE,MAAM,EAAC,MAAM,EAAC,GAAG,WAAW,CAAC;IAE7B,0DAA0D;IAC1D,EAAE;IACF,wFAAwF;IACxF,2EAA2E;IAC3E,2CAA2C;IAC3C,EAAE;IACF,iFAAiF;IACjF,EAAE;IACF,gDAAgD;IAChD,sDAAsD;IACtD,sDAAsD;IACtD,iEAAiE;IACjE,8CAA8C;IAC9C,8CAA8C;IAC9C,6DAA6D;IAC7D,qDAAqD;IACrD,qDAAqD;IACrD,0DAA0D;IAC1D,mDAAmD;IACnD,yDAAyD;IACzD,4DAA4D;IAC5D,oDAAoD;IACpD,kDAAkD;IAClD,sDAAsD;IACtD,mDAAmD;IACnD,sEAAsE;IACtE,qEAAqE;IACrE,4DAA4D;IAC5D,uEAAuE;IACvE,sEAAsE;IACtE,8DAA8D;IAC9D,2DAA2D;IAC3D,gEAAgE;IAChE,6DAA6D;IAE7D,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAC1E,kFAAkF;IAClF,MAAM,WAAW,GAAG,oBAAoB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAEvE,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC1C,eAAe,EAAE,WAAW,CAAC,IAAI,CAAC,cAAc;QAChD,cAAc,EAAE,MAAM,CAAC,mBAAmB;QAC1C,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK;KAClC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC;IACrD,MAAM,2BAA2B,GAAG,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3G,MAAM,2BAA2B,GAAG,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;IAC5G,WAAW,CAAC,0BAA0B,GAAG,2BAA2B,CAAC;IACrE,2CAA2C;IAC3C,WAAW,CAAC,yBAAyB,GAAG,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;IAE7G,WAAW,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IAEpG,MAAM,EAAC,aAAa,EAAE,OAAO,EAAC,GAAG,oBAAoB,CACnD,OAAO,CAAC,MAAM,EACd,WAAW,EACX,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,aAAa,EAChD,WAAW,CAAC,QAAQ,CAAC,0BAA0B,CAChD,CAAC;IACF,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAE3E,WAAW,CAAC,oBAAoB,GAAG,iBAAiB,CAAC;IACrD,WAAW,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAClD,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,WAAW,CAAC,yBAAyB,CAAC;IACjE,sBAAsB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IAExD,kDAAkD;IAClD,WAAW,CAAC,MAAM,EAAE,CAAC;IACrB,oFAAoF;IACpF,mEAAmE;IACnE,iEAAiE;IACjE,EAAE;IACF,oHAAoH;IACpH,2GAA2G;IAC3G,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;IAE5B,4DAA4D;IAC5D,EAAE;IACF,iGAAiG;IACjG,uGAAuG;IACvG,EAAE;IACF,uGAAuG;IACvG,iGAAiG;IACjG,MAAM;IACN,iBAAiB;IACjB,+BAA+B;IAC/B,kCAAkC;IAClC,MAAM;IACN,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IACrD,WAAW,CAAC,QAAQ,CAAC,wCAAwC,GAAG,mCAAmC,CACjG,WAAW,CAAC,0BAA0B,CAAC,MAAM,EAAE,EAC/C,aAAa,EACb,WAAW,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAC9C,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC7B,KAA8B,EAC9B,kBAAwE;IAExE,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,kBAAkB,GAAG,KAAK,CAAC,0BAA0B,CAAC;IAE5D,KAAK,MAAM,WAAW,IAAI,kBAAkB,CAAC,cAAc,EAAE,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;QAC9B,MAAM,gBAAgB,GAAG,iCAAiC,CACxD,OAAO,CAAC,MAAM,EACd,IAAI,EACJ,WAAW,CAAC,cAAc,EAC1B,QAAQ,CAAC,KAAK,EACd,SAAS,CACV,CAAC;QAEF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,gBAAgB,GAAG,WAAW,CAAC,eAAe,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;QAEvF,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACrC,uFAAuF;YACvF,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"upgradeStateToAltair.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToAltair.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@ export function upgradeStateToCapella(stateBellatrix) {
57
57
  // Commit new added fields ViewDU to the root node
58
58
  stateCapella.commit();
59
59
  // Clear cache to ensure the cache of bellatrix fields is not used by new capella fields
60
+ // biome-ignore lint/complexity/useLiteralKeys: It is a protected attribute
60
61
  stateCapella["clearCache"]();
61
62
  return stateCapella;
62
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"upgradeStateToCapella.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToCapella.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAE5D;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,cAA0C;IAC9E,MAAM,EAAC,MAAM,EAAC,GAAG,cAAc,CAAC;IAEhC,8DAA8D;IAC9D,EAAE;IACF,4FAA4F;IAC5F,2EAA2E;IAC3E,2CAA2C;IAC3C,EAAE;IACF,qDAAqD;IACrD,0DAA0D;IAC1D,0DAA0D;IAC1D,qEAAqE;IACrE,kDAAkD;IAClD,kDAAkD;IAClD,iEAAiE;IACjE,yDAAyD;IACzD,yDAAyD;IACzD,8DAA8D;IAC9D,uDAAuD;IACvD,6DAA6D;IAC7D,gEAAgE;IAChE,wDAAwD;IACxD,sDAAsD;IACtD,0DAA0D;IAC1D,uDAAuD;IACvD,0EAA0E;IAC1E,yEAAyE;IACzE,gEAAgE;IAChE,2EAA2E;IAC3E,0EAA0E;IAC1E,kEAAkE;IAClE,+DAA+D;IAC/D,oEAAoE;IACpE,iEAAiE;IACjE,6EAA6E;IAC7E,mEAAmE;IACnE,6EAA6E;IAC7E,kEAAkE;IAElE,MAAM,kBAAkB,GAAG,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAClF,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC/E,sFAAsF;IACtF,MAAM,YAAY,GAAG,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAE5E,YAAY,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3C,eAAe,EAAE,cAAc,CAAC,IAAI,CAAC,cAAc;QACnD,cAAc,EAAE,MAAM,CAAC,oBAAoB;QAC3C,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK;KACrC,CAAC,CAAC;IAEH,uFAAuF;IACvF,wEAAwE;IACxE,8FAA8F;IAC9F,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC;IAEtG,kDAAkD;IAClD,YAAY,CAAC,MAAM,EAAE,CAAC;IACtB,wFAAwF;IACxF,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;IAE7B,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"upgradeStateToCapella.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToCapella.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAE5D;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,cAA0C;IAC9E,MAAM,EAAC,MAAM,EAAC,GAAG,cAAc,CAAC;IAEhC,8DAA8D;IAC9D,EAAE;IACF,4FAA4F;IAC5F,2EAA2E;IAC3E,2CAA2C;IAC3C,EAAE;IACF,qDAAqD;IACrD,0DAA0D;IAC1D,0DAA0D;IAC1D,qEAAqE;IACrE,kDAAkD;IAClD,kDAAkD;IAClD,iEAAiE;IACjE,yDAAyD;IACzD,yDAAyD;IACzD,8DAA8D;IAC9D,uDAAuD;IACvD,6DAA6D;IAC7D,gEAAgE;IAChE,wDAAwD;IACxD,sDAAsD;IACtD,0DAA0D;IAC1D,uDAAuD;IACvD,0EAA0E;IAC1E,yEAAyE;IACzE,gEAAgE;IAChE,2EAA2E;IAC3E,0EAA0E;IAC1E,kEAAkE;IAClE,+DAA+D;IAC/D,oEAAoE;IACpE,iEAAiE;IACjE,6EAA6E;IAC7E,mEAAmE;IACnE,6EAA6E;IAC7E,kEAAkE;IAElE,MAAM,kBAAkB,GAAG,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAClF,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC/E,sFAAsF;IACtF,MAAM,YAAY,GAAG,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAE5E,YAAY,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3C,eAAe,EAAE,cAAc,CAAC,IAAI,CAAC,cAAc;QACnD,cAAc,EAAE,MAAM,CAAC,oBAAoB;QAC3C,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK;KACrC,CAAC,CAAC;IAEH,uFAAuF;IACvF,wEAAwE;IACxE,8FAA8F;IAC9F,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC;IAEtG,kDAAkD;IAClD,YAAY,CAAC,MAAM,EAAE,CAAC;IACtB,wFAAwF;IACxF,2EAA2E;IAC3E,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;IAE7B,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -26,6 +26,7 @@ export function upgradeStateToDeneb(stateCapella) {
26
26
  });
27
27
  stateDeneb.commit();
28
28
  // Clear cache to ensure the cache of capella fields is not used by new deneb fields
29
+ // biome-ignore lint/complexity/useLiteralKeys: It is a protected attribute
29
30
  stateDeneb["clearCache"]();
30
31
  return stateDeneb;
31
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"upgradeStateToDeneb.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToDeneb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAG5D;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAsC;IACxE,MAAM,EAAC,MAAM,EAAC,GAAG,YAAY,CAAC;IAE9B,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAEzE,MAAM,UAAU,GAAG,oBAAoB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAEtE,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,cAAc;QACjD,cAAc,EAAE,MAAM,CAAC,kBAAkB;QACzC,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK;KACnC,CAAC,CAAC;IAEH,4GAA4G;IAC5G,2GAA2G;IAC3G,wGAAwG;IACxG,oBAAoB;IACpB,EAAE;IACF,qDAAqD;IACrD,UAAU,CAAC,4BAA4B,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC;QAC3G,GAAG,YAAY,CAAC,4BAA4B,CAAC,OAAO,EAAE;QACtD,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;KACvB,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,EAAE,CAAC;IACpB,oFAAoF;IACpF,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;IAE3B,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"upgradeStateToDeneb.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToDeneb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAG5D;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAsC;IACxE,MAAM,EAAC,MAAM,EAAC,GAAG,YAAY,CAAC;IAE9B,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAEzE,MAAM,UAAU,GAAG,oBAAoB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAEtE,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,cAAc;QACjD,cAAc,EAAE,MAAM,CAAC,kBAAkB;QACzC,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK;KACnC,CAAC,CAAC;IAEH,4GAA4G;IAC5G,2GAA2G;IAC3G,wGAAwG;IACxG,oBAAoB;IACpB,EAAE;IACF,qDAAqD;IACrD,UAAU,CAAC,4BAA4B,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC;QAC3G,GAAG,YAAY,CAAC,4BAA4B,CAAC,OAAO,EAAE;QACtD,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;KACvB,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,EAAE,CAAC;IACpB,oFAAoF;IACpF,2EAA2E;IAC3E,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;IAE3B,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -40,16 +40,10 @@ export function upgradeStateToElectra(stateDeneb) {
40
40
  stateElectraView.inactivityScores = stateElectraCloned.inactivityScores;
41
41
  stateElectraView.currentSyncCommittee = stateElectraCloned.currentSyncCommittee;
42
42
  stateElectraView.nextSyncCommittee = stateElectraCloned.nextSyncCommittee;
43
- stateElectraView.latestExecutionPayloadHeader = ssz.electra.BeaconState.fields.latestExecutionPayloadHeader.toViewDU({
44
- ...stateElectraCloned.latestExecutionPayloadHeader.toValue(),
45
- depositRequestsRoot: ssz.Root.defaultValue(),
46
- withdrawalRequestsRoot: ssz.Root.defaultValue(),
47
- consolidationRequestsRoot: ssz.Root.defaultValue(),
48
- });
43
+ stateElectraView.latestExecutionPayloadHeader = stateElectraCloned.latestExecutionPayloadHeader;
49
44
  stateElectraView.nextWithdrawalIndex = stateDeneb.nextWithdrawalIndex;
50
45
  stateElectraView.nextWithdrawalValidatorIndex = stateDeneb.nextWithdrawalValidatorIndex;
51
46
  stateElectraView.historicalSummaries = stateElectraCloned.historicalSummaries;
52
- // latestExecutionPayloadHeader's depositRequestsRoot and withdrawalRequestsRoot set to zeros by default
53
47
  // default value of depositRequestsStartIndex is UNSET_DEPOSIT_REQUESTS_START_INDEX
54
48
  stateElectraView.depositRequestsStartIndex = UNSET_DEPOSIT_REQUESTS_START_INDEX;
55
49
  stateElectraView.depositBalanceToConsume = BigInt(0);
@@ -100,6 +94,7 @@ export function upgradeStateToElectra(stateDeneb) {
100
94
  // Commit new added fields ViewDU to the root node
101
95
  stateElectra.commit();
102
96
  // Clear cache to ensure the cache of deneb fields is not used by new ELECTRA fields
97
+ // biome-ignore lint/complexity/useLiteralKeys: It is a protected attribute
103
98
  stateElectra["clearCache"]();
104
99
  return stateElectra;
105
100
  }
@@ -113,7 +108,6 @@ export function upgradeStateToElectraOriginal(stateDeneb) {
113
108
  currentVersion: config.ELECTRA_FORK_VERSION,
114
109
  epoch: stateDeneb.epochCtx.epoch,
115
110
  });
116
- // latestExecutionPayloadHeader's depositRequestsRoot and withdrawalRequestsRoot set to zeros by default
117
111
  // default value of depositRequestsStartIndex is UNSET_DEPOSIT_REQUESTS_START_INDEX
118
112
  stateElectra.depositRequestsStartIndex = UNSET_DEPOSIT_REQUESTS_START_INDEX;
119
113
  const validatorsArr = stateElectra.validators.getAllReadonly();
@@ -132,6 +126,7 @@ export function upgradeStateToElectraOriginal(stateDeneb) {
132
126
  // Commit new added fields ViewDU to the root node
133
127
  stateElectra.commit();
134
128
  // Clear cache to ensure the cache of deneb fields is not used by new ELECTRA fields
129
+ // biome-ignore lint/complexity/useLiteralKeys: It is a protected attribute
135
130
  stateElectra["clearCache"]();
136
131
  return stateElectra;
137
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"upgradeStateToElectra.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToElectra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgradeStateToElectra.js","sourceRoot":"","sources":["../../src/slot/upgradeStateToElectra.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,25 @@ export function processSlots(state, slot, epochTransitionCacheOpts, metrics) {
102
102
  }
103
103
  /**
104
104
  * All processSlot() logic but separate so stateTransition() can recycle the caches
105
+ *
106
+ * Epoch transition will be processed at the last slot of an epoch. Note that compute_shuffling() is going
107
+ * to be executed in parallel (either by napi-rs or worker thread) with processEpoch() like below:
108
+ *
109
+ * state-transition
110
+ * ╔══════════════════════════════════════════════════════════════════════════════════╗
111
+ * ║ beforeProcessEpoch processEpoch afterPRocessEpoch ║
112
+ * ║ |-------------------------|--------------------|-------------------------------|║
113
+ * ║ | | | ║
114
+ * ╚═══════════════════════|═══════════════════════════════|══════════════════════════╝
115
+ * | |
116
+ * build() get()
117
+ * | |
118
+ * ╔═══════════════════════V═══════════════════════════════V═══════════════════════════╗
119
+ * ║ | | ║
120
+ * ║ |-------------------------------| ║
121
+ * ║ compute_shuffling() ║
122
+ * ╚═══════════════════════════════════════════════════════════════════════════════════╝
123
+ * beacon-node ShufflingCache
105
124
  */
106
125
  function processSlotsWithTransientCache(postState, slot, epochTransitionCacheOpts, metrics) {
107
126
  const { config } = postState;