@lodestar/state-transition 1.23.0-dev.245d63e5dc → 1.23.0-dev.2e5265bf6f

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 (176) hide show
  1. package/lib/block/index.d.ts +3 -3
  2. package/lib/block/index.js +4 -4
  3. package/lib/block/index.js.map +1 -1
  4. package/lib/block/isValidIndexedAttestation.js +1 -1
  5. package/lib/block/isValidIndexedAttestation.js.map +1 -1
  6. package/lib/block/processAttestationPhase0.d.ts +2 -2
  7. package/lib/block/processAttestationPhase0.js +2 -2
  8. package/lib/block/processAttestationPhase0.js.map +1 -1
  9. package/lib/block/processAttestations.d.ts +1 -1
  10. package/lib/block/processAttestations.js.map +1 -1
  11. package/lib/block/processAttestationsAltair.d.ts +1 -1
  12. package/lib/block/processAttestationsAltair.js +1 -1
  13. package/lib/block/processAttestationsAltair.js.map +1 -1
  14. package/lib/block/processAttesterSlashing.d.ts +1 -1
  15. package/lib/block/processAttesterSlashing.js +2 -2
  16. package/lib/block/processAttesterSlashing.js.map +1 -1
  17. package/lib/block/processBlockHeader.js.map +1 -1
  18. package/lib/block/processBlsToExecutionChange.js +1 -1
  19. package/lib/block/processBlsToExecutionChange.js.map +1 -1
  20. package/lib/block/processConsolidationRequest.js +56 -10
  21. package/lib/block/processConsolidationRequest.js.map +1 -1
  22. package/lib/block/processDeposit.d.ts +5 -2
  23. package/lib/block/processDeposit.js +32 -36
  24. package/lib/block/processDeposit.js.map +1 -1
  25. package/lib/block/processDepositRequest.d.ts +1 -2
  26. package/lib/block/processDepositRequest.js +11 -3
  27. package/lib/block/processDepositRequest.js.map +1 -1
  28. package/lib/block/processExecutionPayload.d.ts +1 -1
  29. package/lib/block/processExecutionPayload.js +2 -2
  30. package/lib/block/processExecutionPayload.js.map +1 -1
  31. package/lib/block/processOperations.d.ts +5 -5
  32. package/lib/block/processOperations.js +5 -5
  33. package/lib/block/processOperations.js.map +1 -1
  34. package/lib/block/processProposerSlashing.d.ts +1 -1
  35. package/lib/block/processProposerSlashing.js +1 -1
  36. package/lib/block/processProposerSlashing.js.map +1 -1
  37. package/lib/block/processRandao.js +1 -1
  38. package/lib/block/processRandao.js.map +1 -1
  39. package/lib/block/processSyncCommittee.d.ts +1 -1
  40. package/lib/block/processSyncCommittee.js +2 -2
  41. package/lib/block/processSyncCommittee.js.map +1 -1
  42. package/lib/block/processVoluntaryExit.js +1 -1
  43. package/lib/block/processVoluntaryExit.js.map +1 -1
  44. package/lib/block/processWithdrawalRequest.d.ts +1 -1
  45. package/lib/block/processWithdrawalRequest.js +2 -2
  46. package/lib/block/processWithdrawalRequest.js.map +1 -1
  47. package/lib/block/processWithdrawals.d.ts +1 -1
  48. package/lib/block/processWithdrawals.js +4 -3
  49. package/lib/block/processWithdrawals.js.map +1 -1
  50. package/lib/block/slashValidator.d.ts +1 -1
  51. package/lib/block/slashValidator.js.map +1 -1
  52. package/lib/cache/epochCache.d.ts +7 -7
  53. package/lib/cache/epochCache.js +7 -7
  54. package/lib/cache/epochCache.js.map +1 -1
  55. package/lib/cache/epochTransitionCache.d.ts +1 -6
  56. package/lib/cache/epochTransitionCache.js +3 -5
  57. package/lib/cache/epochTransitionCache.js.map +1 -1
  58. package/lib/cache/pubkeyCache.d.ts +1 -1
  59. package/lib/cache/pubkeyCache.js.map +1 -1
  60. package/lib/cache/stateCache.d.ts +1 -1
  61. package/lib/cache/stateCache.js.map +1 -1
  62. package/lib/cache/syncCommitteeCache.d.ts +2 -2
  63. package/lib/cache/types.d.ts +1 -1
  64. package/lib/constants/constants.d.ts +3 -4
  65. package/lib/constants/constants.js +4 -4
  66. package/lib/constants/constants.js.map +1 -1
  67. package/lib/epoch/computeUnrealizedCheckpoints.js +1 -1
  68. package/lib/epoch/computeUnrealizedCheckpoints.js.map +1 -1
  69. package/lib/epoch/getAttestationDeltas.d.ts +1 -1
  70. package/lib/epoch/getAttestationDeltas.js +2 -2
  71. package/lib/epoch/getAttestationDeltas.js.map +1 -1
  72. package/lib/epoch/getRewardsAndPenalties.js +1 -1
  73. package/lib/epoch/getRewardsAndPenalties.js.map +1 -1
  74. package/lib/epoch/index.d.ts +5 -5
  75. package/lib/epoch/index.js +6 -6
  76. package/lib/epoch/index.js.map +1 -1
  77. package/lib/epoch/processEffectiveBalanceUpdates.d.ts +1 -1
  78. package/lib/epoch/processEffectiveBalanceUpdates.js +4 -7
  79. package/lib/epoch/processEffectiveBalanceUpdates.js.map +1 -1
  80. package/lib/epoch/processEth1DataReset.d.ts +1 -1
  81. package/lib/epoch/processHistoricalRootsUpdate.d.ts +1 -1
  82. package/lib/epoch/processHistoricalSummariesUpdate.d.ts +1 -1
  83. package/lib/epoch/processJustificationAndFinalization.js.map +1 -1
  84. package/lib/epoch/processPendingConsolidations.js +7 -12
  85. package/lib/epoch/processPendingConsolidations.js.map +1 -1
  86. package/lib/epoch/{processPendingBalanceDeposits.d.ts → processPendingDeposits.d.ts} +4 -4
  87. package/lib/epoch/processPendingDeposits.js +102 -0
  88. package/lib/epoch/processPendingDeposits.js.map +1 -0
  89. package/lib/epoch/processRandaoMixesReset.d.ts +1 -1
  90. package/lib/epoch/processRegistryUpdates.d.ts +1 -1
  91. package/lib/epoch/processRegistryUpdates.js +1 -1
  92. package/lib/epoch/processRegistryUpdates.js.map +1 -1
  93. package/lib/epoch/processSlashings.js.map +1 -1
  94. package/lib/epoch/processSlashingsReset.d.ts +1 -1
  95. package/lib/epoch/processSyncCommitteeUpdates.js.map +1 -1
  96. package/lib/metrics.d.ts +2 -2
  97. package/lib/signatureSets/attesterSlashings.d.ts +2 -2
  98. package/lib/signatureSets/attesterSlashings.js +2 -2
  99. package/lib/signatureSets/attesterSlashings.js.map +1 -1
  100. package/lib/signatureSets/blsToExecutionChange.d.ts +2 -2
  101. package/lib/signatureSets/blsToExecutionChange.js +1 -1
  102. package/lib/signatureSets/blsToExecutionChange.js.map +1 -1
  103. package/lib/signatureSets/index.d.ts +1 -1
  104. package/lib/signatureSets/index.js +2 -2
  105. package/lib/signatureSets/index.js.map +1 -1
  106. package/lib/signatureSets/indexedAttestation.d.ts +1 -1
  107. package/lib/signatureSets/indexedAttestation.js.map +1 -1
  108. package/lib/signatureSets/proposer.d.ts +1 -1
  109. package/lib/signatureSets/proposer.js.map +1 -1
  110. package/lib/signatureSets/proposerSlashings.d.ts +1 -1
  111. package/lib/signatureSets/proposerSlashings.js +1 -1
  112. package/lib/signatureSets/proposerSlashings.js.map +1 -1
  113. package/lib/signatureSets/randao.d.ts +1 -1
  114. package/lib/signatureSets/randao.js +1 -1
  115. package/lib/signatureSets/randao.js.map +1 -1
  116. package/lib/signatureSets/voluntaryExits.d.ts +1 -1
  117. package/lib/signatureSets/voluntaryExits.js +1 -1
  118. package/lib/signatureSets/voluntaryExits.js.map +1 -1
  119. package/lib/slot/index.js.map +1 -1
  120. package/lib/slot/upgradeStateToAltair.d.ts +1 -1
  121. package/lib/slot/upgradeStateToAltair.js +4 -4
  122. package/lib/slot/upgradeStateToAltair.js.map +1 -1
  123. package/lib/slot/upgradeStateToBellatrix.js.map +1 -1
  124. package/lib/slot/upgradeStateToCapella.js.map +1 -1
  125. package/lib/slot/upgradeStateToDeneb.js.map +1 -1
  126. package/lib/slot/upgradeStateToElectra.d.ts +1 -2
  127. package/lib/slot/upgradeStateToElectra.js +18 -37
  128. package/lib/slot/upgradeStateToElectra.js.map +1 -1
  129. package/lib/stateTransition.d.ts +3 -3
  130. package/lib/stateTransition.js +6 -6
  131. package/lib/stateTransition.js.map +1 -1
  132. package/lib/util/aggregator.js +2 -2
  133. package/lib/util/aggregator.js.map +1 -1
  134. package/lib/util/attestation.d.ts +1 -1
  135. package/lib/util/attestation.js.map +1 -1
  136. package/lib/util/blindedBlock.d.ts +1 -1
  137. package/lib/util/blindedBlock.js.map +1 -1
  138. package/lib/util/blockRoot.d.ts +1 -1
  139. package/lib/util/blockRoot.js.map +1 -1
  140. package/lib/util/calculateCommitteeAssignments.js.map +1 -1
  141. package/lib/util/computeAnchorCheckpoint.js +1 -1
  142. package/lib/util/computeAnchorCheckpoint.js.map +1 -1
  143. package/lib/util/domain.d.ts +1 -1
  144. package/lib/util/electra.d.ts +0 -1
  145. package/lib/util/electra.js +19 -27
  146. package/lib/util/electra.js.map +1 -1
  147. package/lib/util/epoch.d.ts +1 -1
  148. package/lib/util/epochShuffling.d.ts +1 -1
  149. package/lib/util/epochShuffling.js +3 -3
  150. package/lib/util/epochShuffling.js.map +1 -1
  151. package/lib/util/execution.d.ts +2 -2
  152. package/lib/util/execution.js +1 -1
  153. package/lib/util/execution.js.map +1 -1
  154. package/lib/util/genesis.d.ts +2 -2
  155. package/lib/util/genesis.js +12 -7
  156. package/lib/util/genesis.js.map +1 -1
  157. package/lib/util/interop.js +1 -1
  158. package/lib/util/interop.js.map +1 -1
  159. package/lib/util/loadState/loadState.js +2 -2
  160. package/lib/util/loadState/loadState.js.map +1 -1
  161. package/lib/util/rootCache.d.ts +1 -1
  162. package/lib/util/seed.d.ts +2 -2
  163. package/lib/util/seed.js +1 -1
  164. package/lib/util/seed.js.map +1 -1
  165. package/lib/util/slot.d.ts +1 -1
  166. package/lib/util/slot.js +1 -1
  167. package/lib/util/slot.js.map +1 -1
  168. package/lib/util/syncCommittee.d.ts +2 -2
  169. package/lib/util/validator.d.ts +1 -2
  170. package/lib/util/validator.js +1 -5
  171. package/lib/util/validator.js.map +1 -1
  172. package/lib/util/weakSubjectivity.js +1 -1
  173. package/lib/util/weakSubjectivity.js.map +1 -1
  174. package/package.json +8 -8
  175. package/lib/epoch/processPendingBalanceDeposits.js +0 -66
  176. package/lib/epoch/processPendingBalanceDeposits.js.map +0 -1
@@ -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
- import { CompositeViewDU } from "@chainsafe/ssz";
2
1
  import { PubkeyIndexMap } from "@chainsafe/pubkey-index-map";
3
- import { ssz, ValidatorIndex } from "@lodestar/types";
2
+ import { CompositeViewDU } from "@chainsafe/ssz";
3
+ import { ValidatorIndex, ssz } from "@lodestar/types";
4
4
  type SyncComitteeValidatorIndexMap = Map<ValidatorIndex, number[]>;
5
5
  export type SyncCommitteeCache = {
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { CompositeViewDU } from "@chainsafe/ssz";
2
- import { Epoch, RootHex, SSZTypesFor } from "@lodestar/types";
3
2
  import { ForkAll, ForkExecution, ForkName } from "@lodestar/params";
3
+ import { Epoch, RootHex, SSZTypesFor } from "@lodestar/types";
4
4
  import { EpochShuffling } from "../util/epochShuffling.js";
5
5
  export type BeaconStatePhase0 = CompositeViewDU<SSZTypesFor<ForkName.phase0, "BeaconState">>;
6
6
  export type BeaconStateAltair = CompositeViewDU<SSZTypesFor<ForkName.altair, "BeaconState">>;
@@ -1,7 +1,6 @@
1
- /// <reference types="node" />
2
- export declare const ZERO_HASH: Buffer;
3
- export declare const EMPTY_SIGNATURE: Buffer;
1
+ export declare const ZERO_HASH: Uint8Array;
2
+ export declare const EMPTY_SIGNATURE: Uint8Array;
4
3
  export declare const SECONDS_PER_DAY = 86400;
5
4
  export declare const BASE_REWARDS_PER_EPOCH = 4;
6
- export declare const G2_POINT_AT_INFINITY: Buffer;
5
+ export declare const G2_POINT_AT_INFINITY: Uint8Array;
7
6
  //# sourceMappingURL=constants.d.ts.map
@@ -1,8 +1,8 @@
1
- export const ZERO_HASH = Buffer.alloc(32, 0);
2
- export const EMPTY_SIGNATURE = Buffer.alloc(96, 0);
1
+ export const ZERO_HASH = new Uint8Array(32).fill(0);
2
+ export const EMPTY_SIGNATURE = new Uint8Array(96).fill(0);
3
3
  export const SECONDS_PER_DAY = 86400;
4
4
  export const BASE_REWARDS_PER_EPOCH = 4;
5
- export const G2_POINT_AT_INFINITY = Buffer.from("c000000000000000000000000000000000000000000000000000000000000000" +
5
+ export const G2_POINT_AT_INFINITY = new Uint8Array(Buffer.from("c000000000000000000000000000000000000000000000000000000000000000" +
6
6
  "0000000000000000000000000000000000000000000000000000000000000000" +
7
- "0000000000000000000000000000000000000000000000000000000000000000", "hex");
7
+ "0000000000000000000000000000000000000000000000000000000000000000", "hex"));
8
8
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AACrC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAC7C,kEAAkE;IAChE,kEAAkE;IAClE,kEAAkE,EACpE,KAAK,CACN,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AACrC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,UAAU,CAChD,MAAM,CAAC,IAAI,CACT,kEAAkE;IAChE,kEAAkE;IAClE,kEAAkE,EACpE,KAAK,CACN,CACF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { ForkSeq, GENESIS_EPOCH } from "@lodestar/params";
2
2
  import { beforeProcessEpoch } from "../cache/epochTransitionCache.js";
3
- import { weighJustificationAndFinalization, processJustificationAndFinalization, } from "./processJustificationAndFinalization.js";
3
+ import { processJustificationAndFinalization, weighJustificationAndFinalization, } from "./processJustificationAndFinalization.js";
4
4
  /**
5
5
  * Compute on-the-fly justified / finalized checkpoints.
6
6
  * - For phase0, we need to create the cache through beforeProcessEpoch
@@ -1 +1 @@
1
- {"version":3,"file":"computeUnrealizedCheckpoints.js","sourceRoot":"","sources":["../../src/epoch/computeUnrealizedCheckpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAGxD,OAAO,EAAC,kBAAkB,EAAC,MAAM,kCAAkC,CAAC;AACpE,OAAO,EACL,iCAAiC,EACjC,mCAAmC,GACpC,MAAM,0CAA0C,CAAC;AAElD;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAgC;IAI3E,IAAI,wBAAmD,CAAC;IAExD,qEAAqE;IACrE,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3D,mEAAmE;QACnE,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;QAC1E,mCAAmC,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,CAAC;IACtF,CAAC;IAED,kEAAkE;SAC7D,CAAC;QACJ,oDAAoD;QACpD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YAC9C,wBAAwB,GAAG,KAAK,CAAC;QACnC,CAAC;QAED,2CAA2C;aACtC,CAAC;YACJ,mEAAmE;YACnE,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE7C,iCAAiC,CAC/B,wBAAwB,EACxB,KAAK,CAAC,QAAQ,CAAC,4BAA4B;YAC3C,6DAA6D;YAC7D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,wCAAwC,EAAE,CAAC,CAAC,EACpE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,uCAAuC,EAAE,CAAC,CAAC,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,mBAAmB,EAAE,wBAAwB,CAAC,0BAA0B;QACxE,mBAAmB,EAAE,wBAAwB,CAAC,mBAAmB;KAClE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"computeUnrealizedCheckpoints.js","sourceRoot":"","sources":["../../src/epoch/computeUnrealizedCheckpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAC,kBAAkB,EAAC,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EACL,mCAAmC,EACnC,iCAAiC,GAClC,MAAM,0CAA0C,CAAC;AAElD;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAgC;IAI3E,IAAI,wBAAmD,CAAC;IAExD,qEAAqE;IACrE,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3D,mEAAmE;QACnE,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;QAC1E,mCAAmC,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,CAAC;IACtF,CAAC;IAED,kEAAkE;SAC7D,CAAC;QACJ,oDAAoD;QACpD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YAC9C,wBAAwB,GAAG,KAAK,CAAC;QACnC,CAAC;QAED,2CAA2C;aACtC,CAAC;YACJ,mEAAmE;YACnE,wBAAwB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE7C,iCAAiC,CAC/B,wBAAwB,EACxB,KAAK,CAAC,QAAQ,CAAC,4BAA4B;YAC3C,6DAA6D;YAC7D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,wCAAwC,EAAE,CAAC,CAAC,EACpE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,uCAAuC,EAAE,CAAC,CAAC,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,mBAAmB,EAAE,wBAAwB,CAAC,0BAA0B;QACxE,mBAAmB,EAAE,wBAAwB,CAAC,mBAAmB;KAClE,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import { EpochTransitionCache, CachedBeaconStatePhase0 } from "../types.js";
1
+ import { CachedBeaconStatePhase0, EpochTransitionCache } from "../types.js";
2
2
  /**
3
3
  * Return attestation reward/penalty deltas for each validator.
4
4
  *
@@ -1,8 +1,8 @@
1
- import { bigIntSqrt, bnToNum } from "@lodestar/utils";
2
1
  import { BASE_REWARD_FACTOR, EFFECTIVE_BALANCE_INCREMENT, INACTIVITY_PENALTY_QUOTIENT, MIN_EPOCHS_TO_INACTIVITY_PENALTY, PROPOSER_REWARD_QUOTIENT, } from "@lodestar/params";
2
+ import { bigIntSqrt, bnToNum } from "@lodestar/utils";
3
3
  import { BASE_REWARDS_PER_EPOCH as BASE_REWARDS_PER_EPOCH_CONST } from "../constants/index.js";
4
- import { newZeroedArray } from "../util/index.js";
5
4
  import { hasMarkers } from "../util/attesterStatus.js";
5
+ import { newZeroedArray } from "../util/index.js";
6
6
  /**
7
7
  * Redefine constants in attesterStatus to improve performance
8
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"getAttestationDeltas.js","sourceRoot":"","sources":["../../src/epoch/getAttestationDeltas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getAttestationDeltas.js","sourceRoot":"","sources":["../../src/epoch/getAttestationDeltas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,gCAAgC,EAChC,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAC,sBAAsB,IAAI,4BAA4B,EAAC,MAAM,uBAAuB,CAAC;AAE7F,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAEhD;;GAEG;AACH,MAAM,yBAAyB,GAAG,CAAC,IAAI,CAAC,CAAC;AACzC,MAAM,yBAAyB,GAAG,CAAC,IAAI,CAAC,CAAC;AACzC,MAAM,uBAAuB,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,MAAM,sBAAsB,GAAG,CAAC,IAAI,CAAC,CAAC;AAEtC,MAAM,sCAAsC,GAAG,yBAAyB,GAAG,cAAc,CAAC;AAC1F,MAAM,sCAAsC,GAAG,yBAAyB,GAAG,cAAc,CAAC;AAC1F,MAAM,oCAAoC,GAAG,uBAAuB,GAAG,cAAc,CAAC;AAatF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAA8B,EAC9B,KAA2B;IAE3B,MAAM,EAAC,KAAK,EAAE,eAAe,EAAE,eAAe,EAAC,GAAG,KAAK,CAAC;IACxD,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;IACpC,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAEjD,0DAA0D;IAC1D,kFAAkF;IAClF,MAAM,YAAY,GAAG,KAAK,CAAC,2BAA2B,CAAC;IACvD,MAAM,kBAAkB,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAEtF,kEAAkE;IAClE,MAAM,+BAA+B,GAAG,KAAK,CAAC,uBAAuB,CAAC,sBAAsB,CAAC;IAC7F,MAAM,+BAA+B,GAAG,KAAK,CAAC,uBAAuB,CAAC,sBAAsB,CAAC;IAC7F,MAAM,6BAA6B,GAAG,KAAK,CAAC,uBAAuB,CAAC,oBAAoB,CAAC;IAEzF,iEAAiE;IACjE,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC;IAExE,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;IAC5D,MAAM,sBAAsB,GAAG,wBAAwB,CAAC;IACxD,MAAM,kBAAkB,GAAG,aAAa,GAAG,gCAAgC,CAAC;IAE5E,kGAAkG;IAClG,sDAAsD;IACtD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAA6B,CAAC;IACnE,MAAM,EAAC,0BAA0B,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;IACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,yBAAyB,GAAG,0BAA0B,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,yBAAyB,GAAG,2BAA2B,CAAC;QAEjF,IAAI,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,GAAG,aAAa,CAAC,GAAG,sBAAsB,CAC7F,CAAC;YACF,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,sBAAsB,CAAC,CAAC;YACvE,UAAU,GAAG;gBACX,UAAU;gBACV,cAAc;gBACd,iBAAiB,EAAE,UAAU,GAAG,cAAc;gBAC9C,sBAAsB,EAAE,kBAAkB;oBACxC,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,+BAA+B,CAAC,GAAG,YAAY,CAAC;gBAC7E,sBAAsB,EAAE,kBAAkB;oBACxC,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,+BAA+B,CAAC,GAAG,YAAY,CAAC;gBAC7E,UAAU,EAAE,kBAAkB;oBAC5B,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,6BAA6B,CAAC,GAAG,YAAY,CAAC;gBAC3E,WAAW,EAAE,UAAU,GAAG,4BAA4B,GAAG,cAAc;gBACvE,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,aAAa,CAAC,GAAG,2BAA2B,CAAC;aACnG,CAAC;YACF,qBAAqB,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,EACJ,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,UAAU,EACV,WAAW,EACX,oBAAoB,GACrB,GAAG,UAAU,CAAC;QAEf,wBAAwB;QACxB,IAAI,UAAU,CAAC,IAAI,EAAE,sCAAsC,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC;YAC9C,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,EAAE,sBAAsB,CAAC,EAAE,CAAC;YAC7C,sBAAsB;YACtB,IAAI,UAAU,CAAC,IAAI,EAAE,sCAAsC,CAAC,EAAE,CAAC;gBAC7D,qCAAqC;gBACrC,OAAO,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,4CAA4C;gBAC5C,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;YAC7B,CAAC;YAED,sBAAsB;YACtB,IAAI,UAAU,CAAC,IAAI,EAAE,sCAAsC,CAAC,EAAE,CAAC;gBAC7D,8BAA8B;gBAC9B,OAAO,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,mDAAmD;gBACnD,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;YAC7B,CAAC;YAED,gBAAgB;YAChB,IAAI,UAAU,CAAC,IAAI,EAAE,oCAAoC,CAAC,EAAE,CAAC;gBAC3D,iCAAiC;gBACjC,OAAO,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,wCAAwC;gBACxC,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;YAC7B,CAAC;YAED,gDAAgD;YAChD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,SAAS,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;gBAE5B,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,sCAAsC,CAAC,EAAE,CAAC;oBAC9D,SAAS,CAAC,CAAC,CAAC,IAAI,oBAAoB,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAC9B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { EFFECTIVE_BALANCE_INCREMENT, INACTIVITY_PENALTY_QUOTIENT_ALTAIR, INACTIVITY_PENALTY_QUOTIENT_BELLATRIX, PARTICIPATION_FLAG_WEIGHTS, TIMELY_HEAD_FLAG_INDEX, TIMELY_SOURCE_FLAG_INDEX, TIMELY_TARGET_FLAG_INDEX, WEIGHT_DENOMINATOR, ForkSeq, } from "@lodestar/params";
1
+ import { EFFECTIVE_BALANCE_INCREMENT, ForkSeq, INACTIVITY_PENALTY_QUOTIENT_ALTAIR, INACTIVITY_PENALTY_QUOTIENT_BELLATRIX, PARTICIPATION_FLAG_WEIGHTS, TIMELY_HEAD_FLAG_INDEX, TIMELY_SOURCE_FLAG_INDEX, TIMELY_TARGET_FLAG_INDEX, WEIGHT_DENOMINATOR, } from "@lodestar/params";
2
2
  import { FLAG_ELIGIBLE_ATTESTER, FLAG_PREV_HEAD_ATTESTER_UNSLASHED, FLAG_PREV_SOURCE_ATTESTER_UNSLASHED, FLAG_PREV_TARGET_ATTESTER_UNSLASHED, hasMarkers, } from "../util/attesterStatus.js";
3
3
  import { isInInactivityLeak, newZeroedArray } from "../util/index.js";
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"getRewardsAndPenalties.js","sourceRoot":"","sources":["../../src/epoch/getRewardsAndPenalties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getRewardsAndPenalties.js","sourceRoot":"","sources":["../../src/epoch/getRewardsAndPenalties.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ForkSeq } from "@lodestar/params";
2
- import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
3
2
  import { BeaconStateTransitionMetrics } from "../metrics.js";
3
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
4
4
  import { processEffectiveBalanceUpdates } from "./processEffectiveBalanceUpdates.js";
5
5
  import { processEth1DataReset } from "./processEth1DataReset.js";
6
6
  import { processHistoricalRootsUpdate } from "./processHistoricalRootsUpdate.js";
@@ -9,16 +9,16 @@ import { processInactivityUpdates } from "./processInactivityUpdates.js";
9
9
  import { processJustificationAndFinalization } from "./processJustificationAndFinalization.js";
10
10
  import { processParticipationFlagUpdates } from "./processParticipationFlagUpdates.js";
11
11
  import { processParticipationRecordUpdates } from "./processParticipationRecordUpdates.js";
12
+ import { processPendingConsolidations } from "./processPendingConsolidations.js";
13
+ import { processPendingDeposits } from "./processPendingDeposits.js";
12
14
  import { processRandaoMixesReset } from "./processRandaoMixesReset.js";
13
15
  import { processRegistryUpdates } from "./processRegistryUpdates.js";
14
16
  import { processRewardsAndPenalties } from "./processRewardsAndPenalties.js";
15
17
  import { processSlashings } from "./processSlashings.js";
16
18
  import { processSlashingsReset } from "./processSlashingsReset.js";
17
19
  import { processSyncCommitteeUpdates } from "./processSyncCommitteeUpdates.js";
18
- import { processPendingBalanceDeposits } from "./processPendingBalanceDeposits.js";
19
- import { processPendingConsolidations } from "./processPendingConsolidations.js";
20
20
  export { getRewardsAndPenalties } from "./processRewardsAndPenalties.js";
21
- export { processJustificationAndFinalization, processInactivityUpdates, processRewardsAndPenalties, processRegistryUpdates, processSlashings, processEth1DataReset, processEffectiveBalanceUpdates, processSlashingsReset, processRandaoMixesReset, processHistoricalRootsUpdate, processParticipationRecordUpdates, processParticipationFlagUpdates, processSyncCommitteeUpdates, processHistoricalSummariesUpdate, processPendingBalanceDeposits, processPendingConsolidations, };
21
+ export { processJustificationAndFinalization, processInactivityUpdates, processRewardsAndPenalties, processRegistryUpdates, processSlashings, processEth1DataReset, processEffectiveBalanceUpdates, processSlashingsReset, processRandaoMixesReset, processHistoricalRootsUpdate, processParticipationRecordUpdates, processParticipationFlagUpdates, processSyncCommitteeUpdates, processHistoricalSummariesUpdate, processPendingDeposits, processPendingConsolidations, };
22
22
  export { computeUnrealizedCheckpoints } from "./computeUnrealizedCheckpoints.js";
23
23
  /**
24
24
  * Epoch transition steps tracked in metrics
@@ -34,7 +34,7 @@ export declare enum EpochTransitionStep {
34
34
  processEffectiveBalanceUpdates = "processEffectiveBalanceUpdates",
35
35
  processParticipationFlagUpdates = "processParticipationFlagUpdates",
36
36
  processSyncCommitteeUpdates = "processSyncCommitteeUpdates",
37
- processPendingBalanceDeposits = "processPendingBalanceDeposits",
37
+ processPendingDeposits = "processPendingDeposits",
38
38
  processPendingConsolidations = "processPendingConsolidations"
39
39
  }
40
40
  export declare function processEpoch(fork: ForkSeq, state: CachedBeaconStateAllForks, cache: EpochTransitionCache, metrics?: BeaconStateTransitionMetrics | null): void;
@@ -7,17 +7,17 @@ import { processInactivityUpdates } from "./processInactivityUpdates.js";
7
7
  import { processJustificationAndFinalization } from "./processJustificationAndFinalization.js";
8
8
  import { processParticipationFlagUpdates } from "./processParticipationFlagUpdates.js";
9
9
  import { processParticipationRecordUpdates } from "./processParticipationRecordUpdates.js";
10
+ import { processPendingConsolidations } from "./processPendingConsolidations.js";
11
+ import { processPendingDeposits } from "./processPendingDeposits.js";
10
12
  import { processRandaoMixesReset } from "./processRandaoMixesReset.js";
11
13
  import { processRegistryUpdates } from "./processRegistryUpdates.js";
12
14
  import { processRewardsAndPenalties } from "./processRewardsAndPenalties.js";
13
15
  import { processSlashings } from "./processSlashings.js";
14
16
  import { processSlashingsReset } from "./processSlashingsReset.js";
15
17
  import { processSyncCommitteeUpdates } from "./processSyncCommitteeUpdates.js";
16
- import { processPendingBalanceDeposits } from "./processPendingBalanceDeposits.js";
17
- import { processPendingConsolidations } from "./processPendingConsolidations.js";
18
18
  // For spec tests
19
19
  export { getRewardsAndPenalties } from "./processRewardsAndPenalties.js";
20
- export { processJustificationAndFinalization, processInactivityUpdates, processRewardsAndPenalties, processRegistryUpdates, processSlashings, processEth1DataReset, processEffectiveBalanceUpdates, processSlashingsReset, processRandaoMixesReset, processHistoricalRootsUpdate, processParticipationRecordUpdates, processParticipationFlagUpdates, processSyncCommitteeUpdates, processHistoricalSummariesUpdate, processPendingBalanceDeposits, processPendingConsolidations, };
20
+ export { processJustificationAndFinalization, processInactivityUpdates, processRewardsAndPenalties, processRegistryUpdates, processSlashings, processEth1DataReset, processEffectiveBalanceUpdates, processSlashingsReset, processRandaoMixesReset, processHistoricalRootsUpdate, processParticipationRecordUpdates, processParticipationFlagUpdates, processSyncCommitteeUpdates, processHistoricalSummariesUpdate, processPendingDeposits, processPendingConsolidations, };
21
21
  export { computeUnrealizedCheckpoints } from "./computeUnrealizedCheckpoints.js";
22
22
  const maxValidatorsPerStateSlashing = SLOTS_PER_EPOCH * MAX_ATTESTER_SLASHINGS * MAX_VALIDATORS_PER_COMMITTEE;
23
23
  const maxSafeValidators = Math.floor(Number.MAX_SAFE_INTEGER / MAX_EFFECTIVE_BALANCE);
@@ -36,7 +36,7 @@ export var EpochTransitionStep;
36
36
  EpochTransitionStep["processEffectiveBalanceUpdates"] = "processEffectiveBalanceUpdates";
37
37
  EpochTransitionStep["processParticipationFlagUpdates"] = "processParticipationFlagUpdates";
38
38
  EpochTransitionStep["processSyncCommitteeUpdates"] = "processSyncCommitteeUpdates";
39
- EpochTransitionStep["processPendingBalanceDeposits"] = "processPendingBalanceDeposits";
39
+ EpochTransitionStep["processPendingDeposits"] = "processPendingDeposits";
40
40
  EpochTransitionStep["processPendingConsolidations"] = "processPendingConsolidations";
41
41
  })(EpochTransitionStep || (EpochTransitionStep = {}));
42
42
  export function processEpoch(fork, state, cache, metrics) {
@@ -84,9 +84,9 @@ export function processEpoch(fork, state, cache, metrics) {
84
84
  const stateElectra = state;
85
85
  {
86
86
  const timer = metrics?.epochTransitionStepTime.startTimer({
87
- step: EpochTransitionStep.processPendingBalanceDeposits,
87
+ step: EpochTransitionStep.processPendingDeposits,
88
88
  });
89
- processPendingBalanceDeposits(stateElectra, cache);
89
+ processPendingDeposits(stateElectra, cache);
90
90
  timer?.();
91
91
  }
92
92
  {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/epoch/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/epoch/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ForkSeq } from "@lodestar/params";
2
- import { EpochTransitionCache, CachedBeaconStateAllForks } from "../types.js";
2
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
3
3
  /**
4
4
  * Update effective balances if validator.balance has changed enough
5
5
  *
@@ -1,5 +1,5 @@
1
- import { EFFECTIVE_BALANCE_INCREMENT, ForkSeq, HYSTERESIS_DOWNWARD_MULTIPLIER, HYSTERESIS_QUOTIENT, HYSTERESIS_UPWARD_MULTIPLIER, MAX_EFFECTIVE_BALANCE, MAX_EFFECTIVE_BALANCE_ELECTRA, MIN_ACTIVATION_BALANCE, TIMELY_TARGET_FLAG_INDEX, } from "@lodestar/params";
2
- import { hasCompoundingWithdrawalCredential } from "../util/electra.js";
1
+ import { EFFECTIVE_BALANCE_INCREMENT, ForkSeq, HYSTERESIS_DOWNWARD_MULTIPLIER, HYSTERESIS_QUOTIENT, HYSTERESIS_UPWARD_MULTIPLIER, MAX_EFFECTIVE_BALANCE, TIMELY_TARGET_FLAG_INDEX, } from "@lodestar/params";
2
+ import { getMaxEffectiveBalance } from "../util/validator.js";
3
3
  /** Same to https://github.com/ethereum/eth2.0-specs/blob/v1.1.0-alpha.5/specs/altair/beacon-chain.md#has_flag */
4
4
  const TIMELY_TARGET = 1 << TIMELY_TARGET_FLAG_INDEX;
5
5
  /**
@@ -24,11 +24,10 @@ export function processEffectiveBalanceUpdates(fork, state, cache) {
24
24
  let nextEpochTotalActiveBalanceByIncrement = 0;
25
25
  // update effective balances with hysteresis
26
26
  // epochTransitionCache.balances is initialized in processRewardsAndPenalties()
27
- // and updated in processPendingBalanceDeposits() and processPendingConsolidations()
27
+ // and updated in processPendingDeposits() and processPendingConsolidations()
28
28
  // so it's recycled here for performance.
29
29
  const balances = cache.balances ?? state.balances.getAll();
30
30
  const currentEpochValidators = cache.validators;
31
- const newCompoundingValidators = cache.newCompoundingValidators ?? new Set();
32
31
  let numUpdate = 0;
33
32
  for (let i = 0, len = balances.length; i < len; i++) {
34
33
  const balance = balances[i];
@@ -41,9 +40,7 @@ export function processEffectiveBalanceUpdates(fork, state, cache) {
41
40
  }
42
41
  else {
43
42
  // from electra, effectiveBalanceLimit is per validator
44
- const isCompoundingValidator = hasCompoundingWithdrawalCredential(currentEpochValidators[i].withdrawalCredentials) ||
45
- newCompoundingValidators.has(i);
46
- effectiveBalanceLimit = isCompoundingValidator ? MAX_EFFECTIVE_BALANCE_ELECTRA : MIN_ACTIVATION_BALANCE;
43
+ effectiveBalanceLimit = getMaxEffectiveBalance(currentEpochValidators[i].withdrawalCredentials);
47
44
  }
48
45
  if (
49
46
  // Too big
@@ -1 +1 @@
1
- {"version":3,"file":"processEffectiveBalanceUpdates.js","sourceRoot":"","sources":["../../src/epoch/processEffectiveBalanceUpdates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processEffectiveBalanceUpdates.js","sourceRoot":"","sources":["../../src/epoch/processEffectiveBalanceUpdates.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { EpochTransitionCache, CachedBeaconStateAllForks } from "../types.js";
1
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
2
2
  /**
3
3
  * Reset eth1DataVotes tree every `EPOCHS_PER_ETH1_VOTING_PERIOD`.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { EpochTransitionCache, CachedBeaconStateAllForks } from "../types.js";
1
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
2
2
  /**
3
3
  * Persist blockRoots and stateRoots to historicalRoots.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { EpochTransitionCache, CachedBeaconStateCapella } from "../types.js";
1
+ import { CachedBeaconStateCapella, EpochTransitionCache } from "../types.js";
2
2
  /**
3
3
  * Persist blockRoots and stateRoots to historicalSummaries.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"processJustificationAndFinalization.js","sourceRoot":"","sources":["../../src/epoch/processJustificationAndFinalization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processJustificationAndFinalization.js","sourceRoot":"","sources":["../../src/epoch/processJustificationAndFinalization.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { decreaseBalance, increaseBalance } from "../util/balance.js";
2
- import { getActiveBalance } from "../util/validator.js";
3
- import { switchToCompoundingValidator } from "../util/electra.js";
2
+ import { getMaxEffectiveBalance } from "../util/validator.js";
4
3
  /**
5
4
  * Starting from Electra:
6
5
  * Process every `pendingConsolidation` in `state.pendingConsolidations`.
@@ -19,7 +18,6 @@ export function processPendingConsolidations(state, cache) {
19
18
  let nextPendingConsolidation = 0;
20
19
  const validators = state.validators;
21
20
  const cachedBalances = cache.balances;
22
- const newCompoundingValidators = new Set();
23
21
  for (const pendingConsolidation of state.pendingConsolidations.getAllReadonly()) {
24
22
  const { sourceIndex, targetIndex } = pendingConsolidation;
25
23
  const sourceValidator = validators.getReadonly(sourceIndex);
@@ -30,20 +28,17 @@ export function processPendingConsolidations(state, cache) {
30
28
  if (sourceValidator.withdrawableEpoch > nextEpoch) {
31
29
  break;
32
30
  }
33
- // Churn any target excess active balance of target and raise its max
34
- switchToCompoundingValidator(state, targetIndex);
35
- newCompoundingValidators.add(targetIndex);
36
31
  // Move active balance to target. Excess balance is withdrawable.
37
- const activeBalance = getActiveBalance(state, sourceIndex);
38
- decreaseBalance(state, sourceIndex, activeBalance);
39
- increaseBalance(state, targetIndex, activeBalance);
32
+ const maxEffectiveBalance = getMaxEffectiveBalance(state.validators.getReadonly(sourceIndex).withdrawalCredentials);
33
+ const sourceEffectiveBalance = Math.min(state.balances.get(sourceIndex), maxEffectiveBalance);
34
+ decreaseBalance(state, sourceIndex, sourceEffectiveBalance);
35
+ increaseBalance(state, targetIndex, sourceEffectiveBalance);
40
36
  if (cachedBalances) {
41
- cachedBalances[sourceIndex] -= activeBalance;
42
- cachedBalances[targetIndex] += activeBalance;
37
+ cachedBalances[sourceIndex] -= sourceEffectiveBalance;
38
+ cachedBalances[targetIndex] += sourceEffectiveBalance;
43
39
  }
44
40
  nextPendingConsolidation++;
45
41
  }
46
- cache.newCompoundingValidators = newCompoundingValidators;
47
42
  state.pendingConsolidations = state.pendingConsolidations.sliceFrom(nextPendingConsolidation);
48
43
  }
49
44
  //# sourceMappingURL=processPendingConsolidations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processPendingConsolidations.js","sourceRoot":"","sources":["../../src/epoch/processPendingConsolidations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,4BAA4B,EAAC,MAAM,oBAAoB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAA+B,EAAE,KAA2B;IACvG,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAC3C,IAAI,wBAAwB,GAAG,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;IACtC,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3D,KAAK,MAAM,oBAAoB,IAAI,KAAK,CAAC,qBAAqB,CAAC,cAAc,EAAE,EAAE,CAAC;QAChF,MAAM,EAAC,WAAW,EAAE,WAAW,EAAC,GAAG,oBAAoB,CAAC;QACxD,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE5D,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC5B,wBAAwB,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,eAAe,CAAC,iBAAiB,GAAG,SAAS,EAAE,CAAC;YAClD,MAAM;QACR,CAAC;QACD,qEAAqE;QACrE,4BAA4B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACjD,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1C,iEAAiE;QACjE,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QACnD,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QACnD,IAAI,cAAc,EAAE,CAAC;YACnB,cAAc,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC;YAC7C,cAAc,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC;QAC/C,CAAC;QAED,wBAAwB,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;IAC1D,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"processPendingConsolidations.js","sourceRoot":"","sources":["../../src/epoch/processPendingConsolidations.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAE5D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAA+B,EAAE,KAA2B;IACvG,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IAC3C,IAAI,wBAAwB,GAAG,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEtC,KAAK,MAAM,oBAAoB,IAAI,KAAK,CAAC,qBAAqB,CAAC,cAAc,EAAE,EAAE,CAAC;QAChF,MAAM,EAAC,WAAW,EAAE,WAAW,EAAC,GAAG,oBAAoB,CAAC;QACxD,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE5D,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC5B,wBAAwB,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,eAAe,CAAC,iBAAiB,GAAG,SAAS,EAAE,CAAC;YAClD,MAAM;QACR,CAAC;QACD,iEAAiE;QACjE,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,qBAAqB,CAAC,CAAC;QACpH,MAAM,sBAAsB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAC9F,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;QAC5D,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;QAC5D,IAAI,cAAc,EAAE,CAAC;YACnB,cAAc,CAAC,WAAW,CAAC,IAAI,sBAAsB,CAAC;YACtD,cAAc,CAAC,WAAW,CAAC,IAAI,sBAAsB,CAAC;QACxD,CAAC;QAED,wBAAwB,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;AAChG,CAAC"}
@@ -3,10 +3,10 @@ import { CachedBeaconStateElectra, EpochTransitionCache } from "../types.js";
3
3
  * Starting from Electra:
4
4
  * Process pending balance deposits from state subject to churn limit and depsoitBalanceToConsume.
5
5
  * For each eligible `deposit`, call `increaseBalance()`.
6
- * Remove the processed deposits from `state.pendingBalanceDeposits`.
6
+ * Remove the processed deposits from `state.pendingDeposits`.
7
7
  * Update `state.depositBalanceToConsume` for the next epoch
8
8
  *
9
- * TODO Electra: Update ssz library to support batch push to `pendingBalanceDeposits`
9
+ * TODO Electra: Update ssz library to support batch push to `pendingDeposits`
10
10
  */
11
- export declare function processPendingBalanceDeposits(state: CachedBeaconStateElectra, cache: EpochTransitionCache): void;
12
- //# sourceMappingURL=processPendingBalanceDeposits.d.ts.map
11
+ export declare function processPendingDeposits(state: CachedBeaconStateElectra, cache: EpochTransitionCache): void;
12
+ //# sourceMappingURL=processPendingDeposits.d.ts.map
@@ -0,0 +1,102 @@
1
+ import { FAR_FUTURE_EPOCH, ForkSeq, GENESIS_SLOT, MAX_PENDING_DEPOSITS_PER_EPOCH } from "@lodestar/params";
2
+ import { addValidatorToRegistry, isValidDepositSignature } from "../block/processDeposit.js";
3
+ import { increaseBalance } from "../util/balance.js";
4
+ import { computeStartSlotAtEpoch } from "../util/epoch.js";
5
+ import { getActivationExitChurnLimit } from "../util/validator.js";
6
+ /**
7
+ * Starting from Electra:
8
+ * Process pending balance deposits from state subject to churn limit and depsoitBalanceToConsume.
9
+ * For each eligible `deposit`, call `increaseBalance()`.
10
+ * Remove the processed deposits from `state.pendingDeposits`.
11
+ * Update `state.depositBalanceToConsume` for the next epoch
12
+ *
13
+ * TODO Electra: Update ssz library to support batch push to `pendingDeposits`
14
+ */
15
+ export function processPendingDeposits(state, cache) {
16
+ const nextEpoch = state.epochCtx.epoch + 1;
17
+ const availableForProcessing = state.depositBalanceToConsume + BigInt(getActivationExitChurnLimit(state.epochCtx));
18
+ let processedAmount = 0;
19
+ let nextDepositIndex = 0;
20
+ const depositsToPostpone = [];
21
+ let isChurnLimitReached = false;
22
+ const finalizedSlot = computeStartSlotAtEpoch(state.finalizedCheckpoint.epoch);
23
+ for (const deposit of state.pendingDeposits.getAllReadonly()) {
24
+ // Do not process deposit requests if Eth1 bridge deposits are not yet applied.
25
+ if (
26
+ // Is deposit request
27
+ deposit.slot > GENESIS_SLOT &&
28
+ // There are pending Eth1 bridge deposits
29
+ state.eth1DepositIndex < state.depositRequestsStartIndex) {
30
+ break;
31
+ }
32
+ // Check if deposit has been finalized, otherwise, stop processing.
33
+ if (deposit.slot > finalizedSlot) {
34
+ break;
35
+ }
36
+ // Check if number of processed deposits has not reached the limit, otherwise, stop processing.
37
+ if (nextDepositIndex >= MAX_PENDING_DEPOSITS_PER_EPOCH) {
38
+ break;
39
+ }
40
+ // Read validator state
41
+ let isValidatorExited = false;
42
+ let isValidatorWithdrawn = false;
43
+ const validatorIndex = state.epochCtx.getValidatorIndex(deposit.pubkey);
44
+ if (validatorIndex !== null) {
45
+ const validator = state.validators.getReadonly(validatorIndex);
46
+ isValidatorExited = validator.exitEpoch < FAR_FUTURE_EPOCH;
47
+ isValidatorWithdrawn = validator.withdrawableEpoch < nextEpoch;
48
+ }
49
+ if (isValidatorWithdrawn) {
50
+ // Deposited balance will never become active. Increase balance but do not consume churn
51
+ applyPendingDeposit(state, deposit, cache);
52
+ }
53
+ else if (isValidatorExited) {
54
+ // Validator is exiting, postpone the deposit until after withdrawable epoch
55
+ depositsToPostpone.push(deposit);
56
+ }
57
+ else {
58
+ // Check if deposit fits in the churn, otherwise, do no more deposit processing in this epoch.
59
+ isChurnLimitReached = processedAmount + deposit.amount > availableForProcessing;
60
+ if (isChurnLimitReached) {
61
+ break;
62
+ }
63
+ // Consume churn and apply deposit.
64
+ processedAmount += deposit.amount;
65
+ applyPendingDeposit(state, deposit, cache);
66
+ }
67
+ // Regardless of how the deposit was handled, we move on in the queue.
68
+ nextDepositIndex++;
69
+ }
70
+ const remainingPendingDeposits = state.pendingDeposits.sliceFrom(nextDepositIndex);
71
+ state.pendingDeposits = remainingPendingDeposits;
72
+ // TODO Electra: add a function in ListCompositeTreeView to support batch push operation
73
+ for (const deposit of depositsToPostpone) {
74
+ state.pendingDeposits.push(deposit);
75
+ }
76
+ // Accumulate churn only if the churn limit has been hit.
77
+ if (isChurnLimitReached) {
78
+ state.depositBalanceToConsume = availableForProcessing - BigInt(processedAmount);
79
+ }
80
+ else {
81
+ state.depositBalanceToConsume = 0n;
82
+ }
83
+ }
84
+ function applyPendingDeposit(state, deposit, cache) {
85
+ const validatorIndex = state.epochCtx.getValidatorIndex(deposit.pubkey);
86
+ const { pubkey, withdrawalCredentials, amount, signature } = deposit;
87
+ const cachedBalances = cache.balances;
88
+ if (validatorIndex === null) {
89
+ // Verify the deposit signature (proof of possession) which is not checked by the deposit contract
90
+ if (isValidDepositSignature(state.config, pubkey, withdrawalCredentials, amount, signature)) {
91
+ addValidatorToRegistry(ForkSeq.electra, state, pubkey, withdrawalCredentials, amount);
92
+ }
93
+ }
94
+ else {
95
+ // Increase balance
96
+ increaseBalance(state, validatorIndex, amount);
97
+ if (cachedBalances) {
98
+ cachedBalances[validatorIndex] += amount;
99
+ }
100
+ }
101
+ }
102
+ //# sourceMappingURL=processPendingDeposits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processPendingDeposits.js","sourceRoot":"","sources":["../../src/epoch/processPendingDeposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,OAAO,EAAE,YAAY,EAAE,8BAA8B,EAAC,MAAM,kBAAkB,CAAC;AAEzG,OAAO,EAAC,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AAE3F,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAC,uBAAuB,EAAC,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAC,2BAA2B,EAAC,MAAM,sBAAsB,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA+B,EAAE,KAA2B;IACjG,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,CAAC,CAAC;IACxB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAChC,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE/E,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,CAAC;QAC7D,+EAA+E;QAC/E;QACE,qBAAqB;QACrB,OAAO,CAAC,IAAI,GAAG,YAAY;YAC3B,yCAAyC;YACzC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC,yBAAyB,EACxD,CAAC;YACD,MAAM;QACR,CAAC;QAED,mEAAmE;QACnE,IAAI,OAAO,CAAC,IAAI,GAAG,aAAa,EAAE,CAAC;YACjC,MAAM;QACR,CAAC;QAED,+FAA+F;QAC/F,IAAI,gBAAgB,IAAI,8BAA8B,EAAE,CAAC;YACvD,MAAM;QACR,CAAC;QAED,uBAAuB;QACvB,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,oBAAoB,GAAG,KAAK,CAAC;QAEjC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxE,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YAC/D,iBAAiB,GAAG,SAAS,CAAC,SAAS,GAAG,gBAAgB,CAAC;YAC3D,oBAAoB,GAAG,SAAS,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACjE,CAAC;QAED,IAAI,oBAAoB,EAAE,CAAC;YACzB,wFAAwF;YACxF,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,iBAAiB,EAAE,CAAC;YAC7B,4EAA4E;YAC5E,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,8FAA8F;YAC9F,mBAAmB,GAAG,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,sBAAsB,CAAC;YAChF,IAAI,mBAAmB,EAAE,CAAC;gBACxB,MAAM;YACR,CAAC;YACD,mCAAmC;YACnC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;YAClC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED,sEAAsE;QACtE,gBAAgB,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,wBAAwB,GAAG,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACnF,KAAK,CAAC,eAAe,GAAG,wBAAwB,CAAC;IAEjD,wFAAwF;IACxF,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,yDAAyD;IACzD,IAAI,mBAAmB,EAAE,CAAC;QACxB,KAAK,CAAC,uBAAuB,GAAG,sBAAsB,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IACnF,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC;IACrC,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAA+B,EAC/B,OAAuB,EACvB,KAA2B;IAE3B,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxE,MAAM,EAAC,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAC,GAAG,OAAO,CAAC;IACnE,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEtC,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,kGAAkG;QAClG,IAAI,uBAAuB,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC5F,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,mBAAmB;QACnB,eAAe,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,cAAc,EAAE,CAAC;YACnB,cAAc,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import { EpochTransitionCache, CachedBeaconStateAllForks } from "../types.js";
1
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
2
2
  /**
3
3
  * Write next randaoMix
4
4
  *
@@ -1,5 +1,5 @@
1
1
  import { ForkSeq } from "@lodestar/params";
2
- import { EpochTransitionCache, CachedBeaconStateAllForks } from "../types.js";
2
+ import { CachedBeaconStateAllForks, EpochTransitionCache } from "../types.js";
3
3
  /**
4
4
  * Update validator registry for validators that activate + exit
5
5
  *
@@ -1,6 +1,6 @@
1
1
  import { ForkSeq } from "@lodestar/params";
2
- import { computeActivationExitEpoch } from "../util/index.js";
3
2
  import { initiateValidatorExit } from "../block/index.js";
3
+ import { computeActivationExitEpoch } from "../util/index.js";
4
4
  /**
5
5
  * Update validator registry for validators that activate + exit
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"processRegistryUpdates.js","sourceRoot":"","sources":["../../src/epoch/processRegistryUpdates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,0BAA0B,EAAC,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAGxD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAa,EACb,KAAgC,EAChC,KAA2B;IAE3B,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IAEzB,oDAAoD;IACpD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IAEpC,mFAAmF;IAEnF,oBAAoB;IACpB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,kDAAkD;QAClD,0EAA0E;QAC1E,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;QAC5D,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,0BAA0B,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACtD,wFAAwF;IACxF,MAAM,GAAG,GACP,IAAI,GAAG,OAAO,CAAC,OAAO;QACpB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;QACpF,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAM,CAAC;IAChD,MAAM,eAAe,GAAG,0BAA0B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACvE,sDAAsD;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjD,kCAAkC;QAClC,IAAI,SAAS,CAAC,0BAA0B,GAAG,aAAa,EAAE,CAAC;YACzD,iGAAiG;YACjG,kFAAkF;YAClF,iHAAiH;YACjH,sEAAsE;YACtE,MAAM;QACR,CAAC;QACD,SAAS,CAAC,eAAe,GAAG,eAAe,CAAC;IAC9C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"processRegistryUpdates.js","sourceRoot":"","sources":["../../src/epoch/processRegistryUpdates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAC,0BAA0B,EAAC,MAAM,kBAAkB,CAAC;AAE5D;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAa,EACb,KAAgC,EAChC,KAA2B;IAE3B,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IAEzB,oDAAoD;IACpD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IAEpC,mFAAmF;IAEnF,oBAAoB;IACpB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzC,kDAAkD;QAClD,0EAA0E;QAC1E,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;QAC5D,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,0BAA0B,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACtD,wFAAwF;IACxF,MAAM,GAAG,GACP,IAAI,GAAG,OAAO,CAAC,OAAO;QACpB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAM,EAAE,QAAQ,CAAC,oBAAoB,CAAC;QACpF,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAM,CAAC;IAChD,MAAM,eAAe,GAAG,0BAA0B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACvE,sDAAsD;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjD,kCAAkC;QAClC,IAAI,SAAS,CAAC,0BAA0B,GAAG,aAAa,EAAE,CAAC;YACzD,iGAAiG;YACjG,kFAAkF;YAClF,iHAAiH;YACjH,sEAAsE;YACtE,MAAM;QACR,CAAC;QACD,SAAS,CAAC,eAAe,GAAG,eAAe,CAAC;IAC9C,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"processSlashings.js","sourceRoot":"","sources":["../../src/epoch/processSlashings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processSlashings.js","sourceRoot":"","sources":["../../src/epoch/processSlashings.ts"],"names":[],"mappings":"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"}