@lodestar/state-transition 1.42.0-dev.4411584fd8 → 1.42.0-dev.47afaa6bb7

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 (87) hide show
  1. package/lib/block/isValidIndexedAttestation.d.ts.map +1 -1
  2. package/lib/block/isValidIndexedAttestation.js +2 -3
  3. package/lib/block/isValidIndexedAttestation.js.map +1 -1
  4. package/lib/block/processAttestationsAltair.d.ts +2 -1
  5. package/lib/block/processAttestationsAltair.d.ts.map +1 -1
  6. package/lib/block/processAttestationsAltair.js +5 -3
  7. package/lib/block/processAttestationsAltair.js.map +1 -1
  8. package/lib/block/processExecutionPayloadEnvelope.d.ts +3 -1
  9. package/lib/block/processExecutionPayloadEnvelope.d.ts.map +1 -1
  10. package/lib/block/processExecutionPayloadEnvelope.js +11 -28
  11. package/lib/block/processExecutionPayloadEnvelope.js.map +1 -1
  12. package/lib/index.d.ts +4 -2
  13. package/lib/index.d.ts.map +1 -1
  14. package/lib/index.js +4 -1
  15. package/lib/index.js.map +1 -1
  16. package/lib/signatureSets/executionPayloadEnvelope.d.ts +5 -1
  17. package/lib/signatureSets/executionPayloadEnvelope.d.ts.map +1 -1
  18. package/lib/signatureSets/executionPayloadEnvelope.js +14 -1
  19. package/lib/signatureSets/executionPayloadEnvelope.js.map +1 -1
  20. package/lib/signatureSets/index.d.ts +2 -2
  21. package/lib/signatureSets/index.d.ts.map +1 -1
  22. package/lib/signatureSets/index.js +1 -2
  23. package/lib/signatureSets/index.js.map +1 -1
  24. package/lib/signatureSets/voluntaryExits.d.ts +2 -2
  25. package/lib/signatureSets/voluntaryExits.d.ts.map +1 -1
  26. package/lib/signatureSets/voluntaryExits.js +4 -0
  27. package/lib/signatureSets/voluntaryExits.js.map +1 -1
  28. package/lib/slot/upgradeStateToAltair.d.ts.map +1 -1
  29. package/lib/slot/upgradeStateToAltair.js +2 -1
  30. package/lib/slot/upgradeStateToAltair.js.map +1 -1
  31. package/lib/stateTransition.d.ts +1 -1
  32. package/lib/stateTransition.d.ts.map +1 -1
  33. package/lib/stateTransition.js +1 -1
  34. package/lib/stateTransition.js.map +1 -1
  35. package/lib/stateView/beaconStateView.d.ts +14 -12
  36. package/lib/stateView/beaconStateView.d.ts.map +1 -1
  37. package/lib/stateView/beaconStateView.js +29 -39
  38. package/lib/stateView/beaconStateView.js.map +1 -1
  39. package/lib/stateView/index.d.ts +1 -0
  40. package/lib/stateView/index.d.ts.map +1 -1
  41. package/lib/stateView/index.js +1 -0
  42. package/lib/stateView/index.js.map +1 -1
  43. package/lib/stateView/interface.d.ts +107 -55
  44. package/lib/stateView/interface.d.ts.map +1 -1
  45. package/lib/stateView/interface.js +22 -1
  46. package/lib/stateView/interface.js.map +1 -1
  47. package/lib/stateView/stateViewFactory.d.ts +40 -0
  48. package/lib/stateView/stateViewFactory.d.ts.map +1 -0
  49. package/lib/stateView/stateViewFactory.js +46 -0
  50. package/lib/stateView/stateViewFactory.js.map +1 -0
  51. package/lib/testUtils/cache.d.ts.map +1 -1
  52. package/lib/testUtils/cache.js +1 -1
  53. package/lib/testUtils/cache.js.map +1 -1
  54. package/lib/testUtils/util.d.ts +13 -1
  55. package/lib/testUtils/util.d.ts.map +1 -1
  56. package/lib/testUtils/util.js +119 -19
  57. package/lib/testUtils/util.js.map +1 -1
  58. package/lib/util/gloas.d.ts +2 -1
  59. package/lib/util/gloas.d.ts.map +1 -1
  60. package/lib/util/gloas.js.map +1 -1
  61. package/lib/util/rootCache.d.ts +2 -2
  62. package/lib/util/rootCache.d.ts.map +1 -1
  63. package/lib/util/rootCache.js +2 -3
  64. package/lib/util/rootCache.js.map +1 -1
  65. package/lib/util/shuffling.d.ts +2 -1
  66. package/lib/util/shuffling.d.ts.map +1 -1
  67. package/lib/util/shuffling.js +2 -2
  68. package/lib/util/shuffling.js.map +1 -1
  69. package/package.json +7 -7
  70. package/src/block/isValidIndexedAttestation.ts +2 -3
  71. package/src/block/processAttestationsAltair.ts +7 -4
  72. package/src/block/processExecutionPayloadEnvelope.ts +18 -35
  73. package/src/index.ts +20 -2
  74. package/src/signatureSets/executionPayloadEnvelope.ts +30 -2
  75. package/src/signatureSets/index.ts +3 -4
  76. package/src/signatureSets/voluntaryExits.ts +5 -2
  77. package/src/slot/upgradeStateToAltair.ts +2 -1
  78. package/src/stateTransition.ts +1 -1
  79. package/src/stateView/beaconStateView.ts +53 -58
  80. package/src/stateView/index.ts +1 -0
  81. package/src/stateView/interface.ts +153 -74
  82. package/src/stateView/stateViewFactory.ts +78 -0
  83. package/src/testUtils/cache.ts +1 -1
  84. package/src/testUtils/util.ts +136 -22
  85. package/src/util/gloas.ts +2 -1
  86. package/src/util/rootCache.ts +4 -5
  87. package/src/util/shuffling.ts +5 -4
@@ -11,6 +11,7 @@ import {
11
11
  } from "@lodestar/types";
12
12
  import {LodestarError} from "@lodestar/utils";
13
13
  import {CachedBeaconStateAllForks} from "../cache/stateCache.js";
14
+ import {IBeaconStateView} from "../stateView/interface.js";
14
15
  import {getBlockRootAtSlot} from "./blockRoot.js";
15
16
  import {computeStartSlotAtEpoch} from "./epoch.js";
16
17
  import {EpochShuffling} from "./epochShuffling.js";
@@ -22,21 +23,21 @@ import {EpochShuffling} from "./epochShuffling.js";
22
23
  * Returns `null` on the one-off scenario where the genesis block decides its own shuffling.
23
24
  * It should be set to the latest block applied to this `state` or the genesis block root.
24
25
  */
25
- export function proposerShufflingDecisionRoot(fork: ForkName, state: CachedBeaconStateAllForks): Root | null {
26
+ export function proposerShufflingDecisionRoot(fork: ForkName, state: IBeaconStateView): Root | null {
26
27
  const decisionSlot = proposerShufflingDecisionSlot(fork, state);
27
28
  if (state.slot === decisionSlot) {
28
29
  return null;
29
30
  }
30
- return getBlockRootAtSlot(state, decisionSlot);
31
+ return state.getBlockRootAtSlot(decisionSlot);
31
32
  }
32
33
 
33
34
  /**
34
35
  * Returns the slot at which the proposer shuffling was decided. The block root at this slot
35
36
  * can be used to key the proposer shuffling for the current epoch.
36
37
  */
37
- function proposerShufflingDecisionSlot(fork: ForkName, state: CachedBeaconStateAllForks): Slot {
38
+ function proposerShufflingDecisionSlot(fork: ForkName, state: IBeaconStateView): Slot {
38
39
  // After fulu, the decision slot is in previous epoch due to deterministic proposer lookahead
39
- const epoch = isForkPostFulu(fork) ? state.epochCtx.epoch - 1 : state.epochCtx.epoch;
40
+ const epoch = isForkPostFulu(fork) ? state.epoch - 1 : state.epoch;
40
41
  const startSlot = computeStartSlotAtEpoch(epoch);
41
42
  return Math.max(startSlot - 1, 0);
42
43
  }