@lodestar/state-transition 1.41.0 → 1.42.0-dev.4118b5b440

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 (40) 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/processExecutionPayloadEnvelope.d.ts +3 -1
  5. package/lib/block/processExecutionPayloadEnvelope.d.ts.map +1 -1
  6. package/lib/block/processExecutionPayloadEnvelope.js +11 -28
  7. package/lib/block/processExecutionPayloadEnvelope.js.map +1 -1
  8. package/lib/block/processVoluntaryExit.d.ts.map +1 -1
  9. package/lib/block/processVoluntaryExit.js +49 -47
  10. package/lib/block/processVoluntaryExit.js.map +1 -1
  11. package/lib/signatureSets/executionPayloadEnvelope.d.ts +5 -1
  12. package/lib/signatureSets/executionPayloadEnvelope.d.ts.map +1 -1
  13. package/lib/signatureSets/executionPayloadEnvelope.js +10 -1
  14. package/lib/signatureSets/executionPayloadEnvelope.js.map +1 -1
  15. package/lib/signatureSets/index.d.ts +2 -1
  16. package/lib/signatureSets/index.d.ts.map +1 -1
  17. package/lib/signatureSets/index.js +3 -2
  18. package/lib/signatureSets/index.js.map +1 -1
  19. package/lib/signatureSets/voluntaryExits.d.ts +7 -3
  20. package/lib/signatureSets/voluntaryExits.d.ts.map +1 -1
  21. package/lib/signatureSets/voluntaryExits.js +30 -9
  22. package/lib/signatureSets/voluntaryExits.js.map +1 -1
  23. package/lib/stateView/beaconStateView.d.ts +2 -1
  24. package/lib/stateView/beaconStateView.d.ts.map +1 -1
  25. package/lib/stateView/beaconStateView.js +3 -2
  26. package/lib/stateView/beaconStateView.js.map +1 -1
  27. package/lib/stateView/interface.d.ts +2 -1
  28. package/lib/stateView/interface.d.ts.map +1 -1
  29. package/lib/util/execution.js +1 -1
  30. package/lib/util/execution.js.map +1 -1
  31. package/package.json +7 -7
  32. package/src/block/isValidIndexedAttestation.ts +2 -3
  33. package/src/block/processExecutionPayloadEnvelope.ts +18 -35
  34. package/src/block/processVoluntaryExit.ts +77 -54
  35. package/src/signatureSets/executionPayloadEnvelope.ts +26 -2
  36. package/src/signatureSets/index.ts +4 -1
  37. package/src/signatureSets/voluntaryExits.ts +51 -9
  38. package/src/stateView/beaconStateView.ts +11 -2
  39. package/src/stateView/interface.ts +5 -1
  40. package/src/util/execution.ts +1 -1
@@ -28,6 +28,7 @@ import {
28
28
  } from "@lodestar/types";
29
29
  import {Checkpoint, Fork} from "@lodestar/types/phase0";
30
30
  import {processExecutionPayloadEnvelope} from "../block/index.js";
31
+ import {ProcessExecutionPayloadEnvelopeOpts} from "../block/processExecutionPayloadEnvelope.js";
31
32
  import {VoluntaryExitValidity, getVoluntaryExitValidity} from "../block/processVoluntaryExit.js";
32
33
  import {getExpectedWithdrawals} from "../block/processWithdrawals.js";
33
34
  import {EffectiveBalanceIncrements} from "../cache/effectiveBalanceIncrements.js";
@@ -761,12 +762,20 @@ export class BeaconStateView implements IBeaconStateView {
761
762
  return new BeaconStateView(newState);
762
763
  }
763
764
 
764
- processExecutionPayloadEnvelope(signedEnvelope: gloas.SignedExecutionPayloadEnvelope, verify: boolean): void {
765
+ processExecutionPayloadEnvelope(
766
+ signedEnvelope: gloas.SignedExecutionPayloadEnvelope,
767
+ opts?: ProcessExecutionPayloadEnvelopeOpts
768
+ ): BeaconStateView {
765
769
  const fork = this.config.getForkName(this.cachedState.slot);
766
770
  if (!isForkPostGloas(fork)) {
767
771
  throw Error(`processExecutionPayloadEnvelope is only available for gloas+ forks, got fork=${fork}`);
768
772
  }
769
- processExecutionPayloadEnvelope(this.cachedState as CachedBeaconStateGloas, signedEnvelope, verify);
773
+ const postPayloadState = processExecutionPayloadEnvelope(
774
+ this.cachedState as CachedBeaconStateGloas,
775
+ signedEnvelope,
776
+ opts
777
+ );
778
+ return new BeaconStateView(postPayloadState);
770
779
  }
771
780
  }
772
781
 
@@ -23,6 +23,7 @@ import {
23
23
  rewards,
24
24
  } from "@lodestar/types";
25
25
  import {Checkpoint, Fork} from "@lodestar/types/phase0";
26
+ import {ProcessExecutionPayloadEnvelopeOpts} from "../block/processExecutionPayloadEnvelope.js";
26
27
  import {VoluntaryExitValidity} from "../block/processVoluntaryExit.js";
27
28
  import {EffectiveBalanceIncrements} from "../cache/effectiveBalanceIncrements.js";
28
29
  import {EpochTransitionCacheOpts} from "../cache/epochTransitionCache.js";
@@ -209,5 +210,8 @@ export interface IBeaconStateView {
209
210
  epochTransitionCacheOpts?: EpochTransitionCacheOpts & {dontTransferCache?: boolean},
210
211
  modules?: StateTransitionModules
211
212
  ): IBeaconStateView;
212
- processExecutionPayloadEnvelope(signedEnvelope: gloas.SignedExecutionPayloadEnvelope, verify: boolean): void;
213
+ processExecutionPayloadEnvelope(
214
+ signedEnvelope: gloas.SignedExecutionPayloadEnvelope,
215
+ opts?: ProcessExecutionPayloadEnvelopeOpts
216
+ ): IBeaconStateView;
213
217
  }
@@ -143,7 +143,7 @@ export function executionPayloadToPayloadHeader(fork: ForkSeq, payload: Executio
143
143
  }
144
144
 
145
145
  if (fork >= ForkSeq.deneb) {
146
- // https://github.com/ethereum/consensus-specs/blob/dev/specs/eip4844/beacon-chain.md#process_execution_payload
146
+ // https://github.com/ethereum/consensus-specs/blob/v1.3.0-rc.2/specs/eip4844/beacon-chain.md#process_execution_payload
147
147
  (bellatrixPayloadFields as deneb.ExecutionPayloadHeader).blobGasUsed = (
148
148
  payload as deneb.ExecutionPayloadHeader | deneb.ExecutionPayload
149
149
  ).blobGasUsed;