@lodestar/state-transition 1.42.0 → 1.43.0-dev.6641fd750e

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 (43) hide show
  1. package/lib/block/processDepositRequest.d.ts +11 -2
  2. package/lib/block/processDepositRequest.d.ts.map +1 -1
  3. package/lib/block/processDepositRequest.js +34 -4
  4. package/lib/block/processDepositRequest.js.map +1 -1
  5. package/lib/block/processExecutionPayloadEnvelope.d.ts.map +1 -1
  6. package/lib/block/processExecutionPayloadEnvelope.js +7 -3
  7. package/lib/block/processExecutionPayloadEnvelope.js.map +1 -1
  8. package/lib/index.d.ts +4 -2
  9. package/lib/index.d.ts.map +1 -1
  10. package/lib/index.js +4 -1
  11. package/lib/index.js.map +1 -1
  12. package/lib/signatureSets/executionPayloadEnvelope.d.ts.map +1 -1
  13. package/lib/signatureSets/executionPayloadEnvelope.js +4 -0
  14. package/lib/signatureSets/executionPayloadEnvelope.js.map +1 -1
  15. package/lib/signatureSets/voluntaryExits.d.ts +2 -2
  16. package/lib/signatureSets/voluntaryExits.d.ts.map +1 -1
  17. package/lib/signatureSets/voluntaryExits.js +4 -0
  18. package/lib/signatureSets/voluntaryExits.js.map +1 -1
  19. package/lib/stateTransition.d.ts +1 -1
  20. package/lib/stateTransition.d.ts.map +1 -1
  21. package/lib/stateTransition.js +1 -1
  22. package/lib/stateTransition.js.map +1 -1
  23. package/lib/stateView/beaconStateView.d.ts +6 -2
  24. package/lib/stateView/beaconStateView.d.ts.map +1 -1
  25. package/lib/stateView/beaconStateView.js +18 -5
  26. package/lib/stateView/beaconStateView.js.map +1 -1
  27. package/lib/stateView/interface.d.ts +98 -51
  28. package/lib/stateView/interface.d.ts.map +1 -1
  29. package/lib/stateView/interface.js +22 -1
  30. package/lib/stateView/interface.js.map +1 -1
  31. package/lib/util/gloas.d.ts +2 -1
  32. package/lib/util/gloas.d.ts.map +1 -1
  33. package/lib/util/gloas.js.map +1 -1
  34. package/package.json +7 -7
  35. package/src/block/processDepositRequest.ts +50 -5
  36. package/src/block/processExecutionPayloadEnvelope.ts +8 -3
  37. package/src/index.ts +20 -2
  38. package/src/signatureSets/executionPayloadEnvelope.ts +5 -1
  39. package/src/signatureSets/voluntaryExits.ts +5 -2
  40. package/src/stateTransition.ts +1 -1
  41. package/src/stateView/beaconStateView.ts +26 -8
  42. package/src/stateView/interface.ts +143 -73
  43. package/src/util/gloas.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"beaconStateView.js","sourceRoot":"","sources":["../../src/stateView/beaconStateView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"beaconStateView.js","sourceRoot":"","sources":["../../src/stateView/beaconStateView.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { CompactMultiProof } from "@chainsafe/persistent-merkle-tree";
2
2
  import { BitArray, ByteViews } from "@chainsafe/ssz";
3
+ import { ForkName, ForkPostAltair, ForkPostBellatrix, ForkPostCapella, ForkPostDeneb, ForkPostElectra, ForkPostFulu, ForkPostGloas } from "@lodestar/params";
3
4
  import { BeaconBlock, BeaconState, BlindedBeaconBlock, BuilderIndex, Bytes32, Epoch, ExecutionPayloadBid, ExecutionPayloadHeader, Root, RootHex, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, ValidatorIndex, altair, capella, electra, fulu, gloas, phase0, rewards } from "@lodestar/types";
4
5
  import { Checkpoint, Fork } from "@lodestar/types/phase0";
5
6
  import { ProcessExecutionPayloadEnvelopeOpts } from "../block/processExecutionPayloadEnvelope.js";
@@ -15,6 +16,7 @@ import { EpochShuffling } from "../util/epochShuffling.js";
15
16
  * A read-only view of the BeaconState.
16
17
  */
17
18
  export interface IBeaconStateView {
19
+ forkName: ForkName;
18
20
  slot: Slot;
19
21
  fork: Fork;
20
22
  epoch: Epoch;
@@ -29,38 +31,6 @@ export interface IBeaconStateView {
29
31
  getBlockRootAtEpoch(epoch: Epoch): Root;
30
32
  getStateRootAtSlot(slot: Slot): Root;
31
33
  getRandaoMix(epoch: Epoch): Bytes32;
32
- previousEpochParticipation: Uint8Array;
33
- currentEpochParticipation: Uint8Array;
34
- getPreviousEpochParticipation(validatorIndex: ValidatorIndex): number;
35
- getCurrentEpochParticipation(validatorIndex: ValidatorIndex): number;
36
- latestExecutionPayloadHeader: ExecutionPayloadHeader;
37
- /**
38
- * Cross-fork accessor for the execution block hash of the most recently included payload.
39
- * Pre-gloas: returns latestExecutionPayloadHeader.blockHash (bellatrix–fulu).
40
- * Gloas+: returns the dedicated latestBlockHash state field (EIP-7732).
41
- * Throws before bellatrix.
42
- */
43
- latestBlockHash: Bytes32;
44
- /**
45
- * The execution block number of the most recently included payload.
46
- * Named payloadBlockNumber (not latestBlockNumber) to mirror ExecutionPayloadHeader.blockNumber pre-gloas.
47
- * Only available from bellatrix through fulu — not tracked on BeaconState in gloas+ (EIP-7732).
48
- * Throws before bellatrix and from gloas onwards.
49
- */
50
- payloadBlockNumber: number;
51
- historicalSummaries: capella.HistoricalSummaries;
52
- pendingDeposits: electra.PendingDeposits;
53
- pendingDepositsCount: number;
54
- pendingPartialWithdrawals: electra.PendingPartialWithdrawals;
55
- pendingPartialWithdrawalsCount: number;
56
- pendingConsolidations: electra.PendingConsolidations;
57
- pendingConsolidationsCount: number;
58
- proposerLookahead: fulu.ProposerLookahead;
59
- executionPayloadAvailability: BitArray;
60
- latestExecutionPayloadBid: ExecutionPayloadBid;
61
- getBuilder(index: BuilderIndex): gloas.Builder;
62
- canBuilderCoverBid(builderIndex: BuilderIndex, bidAmount: number): boolean;
63
- getIndexInPayloadTimelinessCommittee(validatorIndex: ValidatorIndex, slot: Slot): number;
64
34
  getShufflingAtEpoch(epoch: Epoch): EpochShuffling;
65
35
  previousDecisionRoot: RootHex;
66
36
  currentDecisionRoot: RootHex;
@@ -73,13 +43,6 @@ export interface IBeaconStateView {
73
43
  currentProposers: ValidatorIndex[];
74
44
  nextProposers: ValidatorIndex[];
75
45
  getBeaconProposer(slot: Slot): ValidatorIndex;
76
- currentSyncCommittee: altair.SyncCommittee;
77
- nextSyncCommittee: altair.SyncCommittee;
78
- currentSyncCommitteeIndexed: SyncCommitteeCache;
79
- syncProposerReward: number;
80
- getIndexedSyncCommitteeAtEpoch(epoch: Epoch): SyncCommitteeCache;
81
- /** Get indexed sync committee with slot+1 offset for duty lookups */
82
- getIndexedSyncCommittee(slot: Slot): SyncCommitteeCache;
83
46
  effectiveBalanceIncrements: EffectiveBalanceIncrements;
84
47
  getEffectiveBalanceIncrementsZeroInactive(): EffectiveBalanceIncrements;
85
48
  getBalance(index: number): number;
@@ -89,25 +52,13 @@ export interface IBeaconStateView {
89
52
  activeValidatorCount: number;
90
53
  getAllValidators(): phase0.Validator[];
91
54
  getAllBalances(): number[];
92
- isExecutionStateType: boolean;
93
- isMergeTransitionComplete: boolean;
94
- isExecutionEnabled(block: BeaconBlock | BlindedBeaconBlock): boolean;
95
- getExpectedWithdrawals(): {
96
- expectedWithdrawals: capella.Withdrawal[];
97
- processedBuilderWithdrawalsCount: number;
98
- processedPartialWithdrawalsCount: number;
99
- processedBuildersSweepCount: number;
100
- processedValidatorSweepCount: number;
101
- };
102
55
  proposerRewards: RewardCache;
103
56
  computeBlockRewards(block: BeaconBlock, proposerRewards?: RewardCache): Promise<rewards.BlockRewards>;
104
57
  computeAttestationsRewards(validatorIds?: (ValidatorIndex | string)[]): Promise<rewards.AttestationsRewards>;
105
- computeSyncCommitteeRewards(block: BeaconBlock, validatorIds: (ValidatorIndex | string)[]): Promise<rewards.SyncCommitteeRewards>;
106
58
  getLatestWeakSubjectivityCheckpointEpoch(): Epoch;
107
59
  getVoluntaryExitValidity(signedVoluntaryExit: phase0.SignedVoluntaryExit, verifySignature: boolean): VoluntaryExitValidity;
108
60
  isValidVoluntaryExit(signedVoluntaryExit: phase0.SignedVoluntaryExit, verifySignature: boolean): boolean;
109
61
  getFinalizedRootProof(): Uint8Array[];
110
- getSyncCommitteesWitness(): SyncCommitteeWitness;
111
62
  getSingleProof(gindex: bigint): Uint8Array[];
112
63
  createMultiProof(descriptor: Uint8Array): CompactMultiProof;
113
64
  computeUnrealizedCheckpoints(): {
@@ -135,6 +86,102 @@ export interface IBeaconStateView {
135
86
  processSlots(slot: Slot, epochTransitionCacheOpts?: EpochTransitionCacheOpts & {
136
87
  dontTransferCache?: boolean;
137
88
  }, modules?: StateTransitionModules): IBeaconStateView;
89
+ }
90
+ /** Altair+ state fields — use isStatePostAltair() guard */
91
+ export interface IBeaconStateViewAltair extends IBeaconStateView {
92
+ forkName: ForkPostAltair;
93
+ previousEpochParticipation: Uint8Array;
94
+ currentEpochParticipation: Uint8Array;
95
+ getPreviousEpochParticipation(validatorIndex: ValidatorIndex): number;
96
+ getCurrentEpochParticipation(validatorIndex: ValidatorIndex): number;
97
+ currentSyncCommittee: altair.SyncCommittee;
98
+ nextSyncCommittee: altair.SyncCommittee;
99
+ currentSyncCommitteeIndexed: SyncCommitteeCache;
100
+ syncProposerReward: number;
101
+ getIndexedSyncCommitteeAtEpoch(epoch: Epoch): SyncCommitteeCache;
102
+ /** Get indexed sync committee with slot+1 offset for duty lookups */
103
+ getIndexedSyncCommittee(slot: Slot): SyncCommitteeCache;
104
+ computeSyncCommitteeRewards(block: BeaconBlock, validatorIds: (ValidatorIndex | string)[]): Promise<rewards.SyncCommitteeRewards>;
105
+ getSyncCommitteesWitness(): SyncCommitteeWitness;
106
+ }
107
+ /** Bellatrix+ state fields — use isStatePostBellatrix() guard */
108
+ export interface IBeaconStateViewBellatrix extends IBeaconStateViewAltair {
109
+ forkName: ForkPostBellatrix;
110
+ latestExecutionPayloadHeader: ExecutionPayloadHeader;
111
+ /**
112
+ * Cross-fork accessor for the execution block hash of the most recently included payload.
113
+ * Pre-gloas: returns latestExecutionPayloadHeader.blockHash (bellatrix–fulu).
114
+ * Gloas+: returns the dedicated latestBlockHash state field (EIP-7732).
115
+ * Throws before bellatrix.
116
+ */
117
+ latestBlockHash: Bytes32;
118
+ /**
119
+ * The execution block number of the most recently included payload.
120
+ * Named payloadBlockNumber (not latestBlockNumber) to mirror ExecutionPayloadHeader.blockNumber pre-gloas.
121
+ * Only available from bellatrix through fulu — not tracked on BeaconState in gloas+ (EIP-7732).
122
+ * Throws before bellatrix and from gloas onwards.
123
+ */
124
+ payloadBlockNumber: number;
125
+ isExecutionStateType: boolean;
126
+ isMergeTransitionComplete: boolean;
127
+ isExecutionEnabled(block: BeaconBlock | BlindedBeaconBlock): boolean;
128
+ }
129
+ /** Capella+ state fields — use isStatePostCapella() guard */
130
+ export interface IBeaconStateViewCapella extends IBeaconStateViewBellatrix {
131
+ forkName: ForkPostCapella;
132
+ historicalSummaries: capella.HistoricalSummaries;
133
+ getExpectedWithdrawals(): {
134
+ expectedWithdrawals: capella.Withdrawal[];
135
+ processedBuilderWithdrawalsCount: number;
136
+ processedPartialWithdrawalsCount: number;
137
+ processedBuildersSweepCount: number;
138
+ processedValidatorSweepCount: number;
139
+ };
140
+ }
141
+ /** Deneb+ state — no new state-view fields; placeholder for fork completeness and isStatePostDeneb() narrowing */
142
+ export interface IBeaconStateViewDeneb extends IBeaconStateViewCapella {
143
+ forkName: ForkPostDeneb;
144
+ }
145
+ /** Electra+ state fields — use isStatePostElectra() guard */
146
+ export interface IBeaconStateViewElectra extends IBeaconStateViewDeneb {
147
+ forkName: ForkPostElectra;
148
+ pendingDeposits: electra.PendingDeposits;
149
+ pendingDepositsCount: number;
150
+ pendingPartialWithdrawals: electra.PendingPartialWithdrawals;
151
+ pendingPartialWithdrawalsCount: number;
152
+ pendingConsolidations: electra.PendingConsolidations;
153
+ pendingConsolidationsCount: number;
154
+ }
155
+ /** Fulu+ state fields — use isStatePostFulu() guard */
156
+ export interface IBeaconStateViewFulu extends IBeaconStateViewElectra {
157
+ forkName: ForkPostFulu;
158
+ proposerLookahead: fulu.ProposerLookahead;
159
+ }
160
+ /** Gloas+ state fields — use isStatePostGloas() guard */
161
+ export interface IBeaconStateViewGloas extends IBeaconStateViewFulu {
162
+ forkName: ForkPostGloas;
163
+ executionPayloadAvailability: BitArray;
164
+ latestExecutionPayloadBid: ExecutionPayloadBid;
165
+ payloadExpectedWithdrawals: capella.Withdrawal[];
166
+ getBuilder(index: BuilderIndex): gloas.Builder;
167
+ canBuilderCoverBid(builderIndex: BuilderIndex, bidAmount: number): boolean;
168
+ getIndexInPayloadTimelinessCommittee(validatorIndex: ValidatorIndex, slot: Slot): number;
138
169
  processExecutionPayloadEnvelope(signedEnvelope: gloas.SignedExecutionPayloadEnvelope, opts?: ProcessExecutionPayloadEnvelopeOpts): IBeaconStateView;
139
170
  }
171
+ /**
172
+ * Type constraint for the concrete BeaconStateView class.
173
+ * Requires all fields from the latest fork interface (IBeaconStateViewGloas) but keeps
174
+ * forkName as ForkName since the class wraps any fork's state.
175
+ * Sub-interfaces retain their narrowed forkName discriminants for caller-side type guards.
176
+ */
177
+ export type IBeaconStateViewLatestFork = Omit<IBeaconStateViewGloas, "forkName"> & {
178
+ forkName: ForkName;
179
+ };
180
+ export declare function isStatePostAltair(state: IBeaconStateView): state is IBeaconStateViewAltair;
181
+ export declare function isStatePostBellatrix(state: IBeaconStateView): state is IBeaconStateViewBellatrix;
182
+ export declare function isStatePostCapella(state: IBeaconStateView): state is IBeaconStateViewCapella;
183
+ export declare function isStatePostDeneb(state: IBeaconStateView): state is IBeaconStateViewDeneb;
184
+ export declare function isStatePostElectra(state: IBeaconStateView): state is IBeaconStateViewElectra;
185
+ export declare function isStatePostFulu(state: IBeaconStateView): state is IBeaconStateViewFulu;
186
+ export declare function isStatePostGloas(state: IBeaconStateView): state is IBeaconStateViewGloas;
140
187
  //# sourceMappingURL=interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/stateView/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/stateView/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,eAAe,EACf,YAAY,EACZ,aAAa,EAQd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,sBAAsB,EACtB,IAAI,EACJ,OAAO,EACP,iBAAiB,EACjB,wBAAwB,EACxB,IAAI,EACJ,cAAc,EACd,MAAM,EACN,OAAO,EACP,OAAO,EACP,IAAI,EACJ,KAAK,EACL,MAAM,EACN,OAAO,EACR,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAC,mCAAmC,EAAC,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAC,0BAA0B,EAAC,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAC,wBAAwB,EAAC,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAC,sBAAsB,EAAE,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAI/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,CAAC;IAC5C,2BAA2B,EAAE,UAAU,CAAC;IACxC,0BAA0B,EAAE,UAAU,CAAC;IACvC,mBAAmB,EAAE,UAAU,CAAC;IAChC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACrC,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACxC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC;IAGpC,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,cAAc,CAAC;IAElD,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC;IAChD,oBAAoB,IAAI,cAAc,CAAC;IACvC,mBAAmB,IAAI,cAAc,CAAC;IACtC,gBAAgB,IAAI,cAAc,CAAC;IAGnC,iBAAiB,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAC3C,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,cAAc,CAAC;IAG9C,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,yCAAyC,IAAI,0BAA0B,CAAC;IACxE,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC;IACtD,qBAAqB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IACtF,cAAc,EAAE,MAAM,CAAC;IAEvB,oBAAoB,EAAE,MAAM,CAAC;IAE7B,gBAAgB,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;IACvC,cAAc,IAAI,MAAM,EAAE,CAAC;IAG3B,eAAe,EAAE,WAAW,CAAC;IAC7B,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtG,0BAA0B,CAAC,YAAY,CAAC,EAAE,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7G,wCAAwC,IAAI,KAAK,CAAC;IAGlD,wBAAwB,CACtB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAC/C,eAAe,EAAE,OAAO,GACvB,qBAAqB,CAAC;IACzB,oBAAoB,CAAC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC;IAGzG,qBAAqB,IAAI,UAAU,EAAE,CAAC;IACtC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;IAC7C,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,iBAAiB,CAAC;IAG5D,4BAA4B,IAAI;QAC9B,mBAAmB,EAAE,MAAM,CAAC,UAAU,CAAC;QACvC,mBAAmB,EAAE,MAAM,CAAC,UAAU,CAAC;KACxC,CAAC;IACF,uBAAuB,IAAI;QAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAA;KAAC,CAAC;IAGlG,WAAW,EAAE,MAAM,CAAC;IACpB,4BAA4B,EAAE,MAAM,CAAC;IACrC,wBAAwB,EAAE,OAAO,CAAC;IAElC,+BAA+B,IAAI,OAAO,CAAC;IAG3C,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,mBAAmB,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAAC;IAC3F,OAAO,IAAI,WAAW,CAAC;IACvB,SAAS,IAAI,UAAU,CAAC;IACxB,cAAc,IAAI,MAAM,CAAC;IACzB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5D,mBAAmB,IAAI,UAAU,CAAC;IAClC,wBAAwB,IAAI,MAAM,CAAC;IACnC,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtE,YAAY,IAAI,UAAU,CAAC;IAG3B,eAAe,CACb,WAAW,EAAE,iBAAiB,GAAG,wBAAwB,EACzD,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAAC;IACpB,YAAY,CACV,IAAI,EAAE,IAAI,EACV,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;QAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAC,EACnF,OAAO,CAAC,EAAE,sBAAsB,GAC/B,gBAAgB,CAAC;CACrB;AAED,2DAA2D;AAC3D,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC9D,QAAQ,EAAE,cAAc,CAAC;IACzB,0BAA0B,EAAE,UAAU,CAAC;IACvC,yBAAyB,EAAE,UAAU,CAAC;IACtC,6BAA6B,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAAC;IACtE,4BAA4B,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAAC;IACrE,oBAAoB,EAAE,MAAM,CAAC,aAAa,CAAC;IAC3C,iBAAiB,EAAE,MAAM,CAAC,aAAa,CAAC;IACxC,2BAA2B,EAAE,kBAAkB,CAAC;IAChD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8BAA8B,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB,CAAC;IACjE,qEAAqE;IACrE,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,kBAAkB,CAAC;IACxD,2BAA2B,CACzB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,GACxC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACzC,wBAAwB,IAAI,oBAAoB,CAAC;CAClD;AAED,iEAAiE;AACjE,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACvE,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,4BAA4B,EAAE,sBAAsB,CAAC;IACrD;;;;;OAKG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;OAKG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,yBAAyB,EAAE,OAAO,CAAC;IACnC,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,GAAG,OAAO,CAAC;CACtE;AAED,6DAA6D;AAC7D,MAAM,WAAW,uBAAwB,SAAQ,yBAAyB;IACxE,QAAQ,EAAE,eAAe,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,CAAC;IACjD,sBAAsB,IAAI;QACxB,mBAAmB,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC1C,gCAAgC,EAAE,MAAM,CAAC;QACzC,gCAAgC,EAAE,MAAM,CAAC;QACzC,2BAA2B,EAAE,MAAM,CAAC;QACpC,4BAA4B,EAAE,MAAM,CAAC;KACtC,CAAC;CACH;AAED,kHAAkH;AAClH,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED,6DAA6D;AAC7D,MAAM,WAAW,uBAAwB,SAAQ,qBAAqB;IACpE,QAAQ,EAAE,eAAe,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAC7D,8BAA8B,EAAE,MAAM,CAAC;IACvC,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,CAAC;IACrD,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,uDAAuD;AACvD,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IACnE,QAAQ,EAAE,YAAY,CAAC;IACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC;CAC3C;AAED,yDAAyD;AACzD,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,QAAQ,EAAE,aAAa,CAAC;IACxB,4BAA4B,EAAE,QAAQ,CAAC;IACvC,yBAAyB,EAAE,mBAAmB,CAAC;IAC/C,0BAA0B,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IACjD,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/C,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3E,oCAAoC,CAAC,cAAc,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;IACzF,+BAA+B,CAC7B,cAAc,EAAE,KAAK,CAAC,8BAA8B,EACpD,IAAI,CAAC,EAAE,mCAAmC,GACzC,gBAAgB,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,GAAG;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAC,CAAC;AACxG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,sBAAsB,CAE1F;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,yBAAyB,CAEhG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,uBAAuB,CAE5F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,qBAAqB,CAExF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,uBAAuB,CAE5F;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,oBAAoB,CAEtF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,qBAAqB,CAExF"}
@@ -1,2 +1,23 @@
1
- export {};
1
+ import { isForkPostAltair, isForkPostBellatrix, isForkPostCapella, isForkPostDeneb, isForkPostElectra, isForkPostFulu, isForkPostGloas, } from "@lodestar/params";
2
+ export function isStatePostAltair(state) {
3
+ return isForkPostAltair(state.forkName);
4
+ }
5
+ export function isStatePostBellatrix(state) {
6
+ return isForkPostBellatrix(state.forkName);
7
+ }
8
+ export function isStatePostCapella(state) {
9
+ return isForkPostCapella(state.forkName);
10
+ }
11
+ export function isStatePostDeneb(state) {
12
+ return isForkPostDeneb(state.forkName);
13
+ }
14
+ export function isStatePostElectra(state) {
15
+ return isForkPostElectra(state.forkName);
16
+ }
17
+ export function isStatePostFulu(state) {
18
+ return isForkPostFulu(state.forkName);
19
+ }
20
+ export function isStatePostGloas(state) {
21
+ return isForkPostGloas(state.forkName);
22
+ }
2
23
  //# sourceMappingURL=interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/stateView/interface.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/stateView/interface.ts"],"names":[],"mappings":"AAEA,OAAO,EASL,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAuP1B,MAAM,UAAU,iBAAiB,CAAC,KAAuB,EAAmC;IAC1F,OAAO,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CACzC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAsC;IAChG,OAAO,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CAC5C;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAuB,EAAoC;IAC5F,OAAO,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CAC1C;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAuB,EAAkC;IACxF,OAAO,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CACxC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAuB,EAAoC;IAC5F,OAAO,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CAC1C;AAED,MAAM,UAAU,eAAe,CAAC,KAAuB,EAAiC;IACtF,OAAO,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CACvC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAuB,EAAkC;IACxF,OAAO,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAAA,CACxC"}
@@ -1,5 +1,6 @@
1
1
  import { BuilderIndex, Epoch, ValidatorIndex, gloas } from "@lodestar/types";
2
2
  import { AttestationData } from "@lodestar/types/phase0";
3
+ import { IBeaconStateViewGloas } from "../stateView/interface.js";
3
4
  import { CachedBeaconStateGloas } from "../types.js";
4
5
  import { RootCache } from "./rootCache.js";
5
6
  export declare function isBuilderWithdrawalCredential(withdrawalCredentials: Uint8Array): boolean;
@@ -48,5 +49,5 @@ export declare function initiateBuilderExit(state: CachedBeaconStateGloas, build
48
49
  export declare function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): BuilderIndex | null;
49
50
  export declare function isAttestationSameSlot(state: CachedBeaconStateGloas, data: AttestationData): boolean;
50
51
  export declare function isAttestationSameSlotRootCache(rootCache: RootCache, data: AttestationData): boolean;
51
- export declare function isParentBlockFull(state: CachedBeaconStateGloas): boolean;
52
+ export declare function isParentBlockFull(state: CachedBeaconStateGloas | IBeaconStateViewGloas): boolean;
52
53
  //# sourceMappingURL=gloas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gloas.d.ts","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAEzC,wBAAgB,6BAA6B,CAAC,qBAAqB,EAAE,UAAU,GAAG,OAAO,CAExF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAMtF;AAOD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAG9F;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAGhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,GAAG,OAAO,CAEtF;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,GACzB,MAAM,CAoBR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAUT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,GAAG,IAAI,CAWnG;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAO/G;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAOnG;AAED,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAOnG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAExE"}
1
+ {"version":3,"file":"gloas.d.ts","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAC,qBAAqB,EAAC,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAEzC,wBAAgB,6BAA6B,CAAC,qBAAqB,EAAE,UAAU,GAAG,OAAO,CAExF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAMtF;AAOD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAG9F;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAGhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,GAAG,OAAO,CAEtF;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,GACzB,MAAM,CAoBR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,sBAAsB,EAC7B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAUT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,GAAG,IAAI,CAWnG;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAO/G;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAOnG;AAED,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAOnG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,qBAAqB,GAAG,OAAO,CAEhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.42.0",
14
+ "version": "1.43.0-dev.6641fd750e",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -67,14 +67,14 @@
67
67
  "@chainsafe/pubkey-index-map": "^3.0.0",
68
68
  "@chainsafe/ssz": "^1.2.2",
69
69
  "@chainsafe/swap-or-not-shuffle": "^1.2.1",
70
- "@lodestar/config": "^1.42.0",
71
- "@lodestar/params": "^1.42.0",
72
- "@lodestar/types": "^1.42.0",
73
- "@lodestar/utils": "^1.42.0",
70
+ "@lodestar/config": "^1.43.0-dev.6641fd750e",
71
+ "@lodestar/params": "^1.43.0-dev.6641fd750e",
72
+ "@lodestar/types": "^1.43.0-dev.6641fd750e",
73
+ "@lodestar/utils": "^1.43.0-dev.6641fd750e",
74
74
  "@vekexasia/bigint-buffer2": "^1.1.1"
75
75
  },
76
76
  "devDependencies": {
77
- "@lodestar/api": "^1.42.0"
77
+ "@lodestar/api": "^1.43.0-dev.6641fd750e"
78
78
  },
79
79
  "keywords": [
80
80
  "ethereum",
@@ -82,5 +82,5 @@
82
82
  "beacon",
83
83
  "blockchain"
84
84
  ],
85
- "gitHead": "443e0a476dd6ff62f5977875741de0a38ba4e1ef"
85
+ "gitHead": "9791abe98717579326dbf4c9b55e8dd637a6f778"
86
86
  }
@@ -1,5 +1,7 @@
1
+ import {BeaconConfig} from "@lodestar/config";
1
2
  import {FAR_FUTURE_EPOCH, ForkSeq, UNSET_DEPOSIT_REQUESTS_START_INDEX} from "@lodestar/params";
2
- import {BLSPubkey, Bytes32, UintNum64, electra, ssz} from "@lodestar/types";
3
+ import {BLSPubkey, Bytes32, PubkeyHex, UintNum64, electra, ssz} from "@lodestar/types";
4
+ import {toPubkeyHex} from "@lodestar/utils";
3
5
  import {CachedBeaconStateElectra, CachedBeaconStateGloas} from "../types.js";
4
6
  import {findBuilderIndexByPubkey, isBuilderWithdrawalCredential} from "../util/gloas.js";
5
7
  import {computeEpochAtSlot, isValidatorKnown} from "../util/index.js";
@@ -74,16 +76,24 @@ function addBuilderToRegistry(
74
76
  }
75
77
  }
76
78
 
79
+ // TODO GLOAS: pendingValidatorPubkeys cache is currently naive and has room for improvement.
80
+ // Currently the cache lives in process_block, but we should put it in epochCache or elsewhere that has longer
81
+ // lifetime to avoid duplicated deposit signature computation
82
+ // See https://github.com/ChainSafe/lodestar/issues/9181
77
83
  export function processDepositRequest(
78
84
  fork: ForkSeq,
79
85
  state: CachedBeaconStateElectra | CachedBeaconStateGloas,
80
- depositRequest: electra.DepositRequest
86
+ depositRequest: electra.DepositRequest,
87
+ pendingValidatorPubkeysCache?: Set<PubkeyHex>
81
88
  ): void {
82
89
  const {pubkey, withdrawalCredentials, amount, signature} = depositRequest;
83
90
 
84
91
  // Check if this is a builder or validator deposit
85
92
  if (fork >= ForkSeq.gloas) {
86
93
  const stateGloas = state as CachedBeaconStateGloas;
94
+ const pendingValidatorPubkeys =
95
+ pendingValidatorPubkeysCache ?? getPendingValidatorPubkeys(state.config, stateGloas);
96
+ const pubkeyHex = toPubkeyHex(pubkey);
87
97
  const builderIndex = findBuilderIndexByPubkey(stateGloas, pubkey);
88
98
  const validatorIndex = state.epochCtx.getValidatorIndex(pubkey);
89
99
 
@@ -91,14 +101,24 @@ export function processDepositRequest(
91
101
  // already exists with this pubkey, apply the deposit to their balance
92
102
  const isBuilder = builderIndex !== null;
93
103
  const isValidator = isValidatorKnown(state, validatorIndex);
94
- const isBuilderPrefix = isBuilderWithdrawalCredential(withdrawalCredentials);
104
+ const isPendingValidator = pendingValidatorPubkeys.has(pubkeyHex);
95
105
 
96
- // Route to builder if it's an existing builder OR has builder prefix and is not a validator
97
- if (isBuilder || (isBuilderPrefix && !isValidator)) {
106
+ if (isBuilder || (isBuilderWithdrawalCredential(withdrawalCredentials) && !isValidator && !isPendingValidator)) {
98
107
  // Apply builder deposits immediately
99
108
  applyDepositForBuilder(stateGloas, pubkey, withdrawalCredentials, amount, signature, state.slot);
100
109
  return;
101
110
  }
111
+
112
+ // Keep the shared cache in sync: if this deposit has a valid signature, subsequent
113
+ // deposit requests for the same pubkey in this envelope must see it as a pending validator
114
+ if (
115
+ pendingValidatorPubkeysCache &&
116
+ !isValidator &&
117
+ !isPendingValidator &&
118
+ isValidDepositSignature(state.config, pubkey, withdrawalCredentials, amount, signature)
119
+ ) {
120
+ pendingValidatorPubkeys.add(pubkeyHex);
121
+ }
102
122
  }
103
123
 
104
124
  // Only set deposit_requests_start_index in Electra fork, not Gloas
@@ -116,3 +136,28 @@ export function processDepositRequest(
116
136
  });
117
137
  state.pendingDeposits.push(pendingDeposit);
118
138
  }
139
+
140
+ /**
141
+ * Build a set of pubkeys (hex-encoded) from pending deposits that have valid signatures.
142
+ * This is computed once and passed to each processDepositRequest call to avoid
143
+ * repeatedly iterating state.pendingDeposits.
144
+ *
145
+ * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.3/specs/gloas/beacon-chain.md#new-is_pending_validator
146
+ */
147
+ export function getPendingValidatorPubkeys(config: BeaconConfig, state: CachedBeaconStateGloas): Set<PubkeyHex> {
148
+ const result = new Set<PubkeyHex>();
149
+ for (const pendingDeposit of state.pendingDeposits.getAllReadonly()) {
150
+ if (
151
+ isValidDepositSignature(
152
+ config,
153
+ pendingDeposit.pubkey,
154
+ pendingDeposit.withdrawalCredentials,
155
+ pendingDeposit.amount,
156
+ pendingDeposit.signature
157
+ )
158
+ ) {
159
+ result.add(toPubkeyHex(pendingDeposit.pubkey));
160
+ }
161
+ }
162
+ return result;
163
+ }
@@ -7,7 +7,7 @@ import {CachedBeaconStateGloas} from "../types.js";
7
7
  import {computeTimeAtSlot} from "../util/index.js";
8
8
  import {verifySignatureSet} from "../util/signatureSets.js";
9
9
  import {processConsolidationRequest} from "./processConsolidationRequest.js";
10
- import {processDepositRequest} from "./processDepositRequest.js";
10
+ import {getPendingValidatorPubkeys, processDepositRequest} from "./processDepositRequest.js";
11
11
  import {processWithdrawalRequest} from "./processWithdrawalRequest.js";
12
12
 
13
13
  export type ProcessExecutionPayloadEnvelopeOpts = {
@@ -40,8 +40,13 @@ export function processExecutionPayloadEnvelope(
40
40
 
41
41
  const requests = envelope.executionRequests;
42
42
 
43
- for (const deposit of requests.deposits) {
44
- processDepositRequest(fork, postState, deposit);
43
+ if (requests.deposits.length > 0) {
44
+ // Build cache of pending validator pubkeys once, shared across all deposit requests
45
+ const pendingValidatorPubkeys = getPendingValidatorPubkeys(postState.config, postState);
46
+
47
+ for (const deposit of requests.deposits) {
48
+ processDepositRequest(fork, postState, deposit, pendingValidatorPubkeys);
49
+ }
45
50
  }
46
51
 
47
52
  for (const withdrawal of requests.withdrawals) {
package/src/index.ts CHANGED
@@ -35,14 +35,32 @@ export {
35
35
  isStateValidatorsNodesPopulated,
36
36
  loadCachedBeaconState,
37
37
  } from "./cache/stateCache.js";
38
- export {type SyncCommitteeCache} from "./cache/syncCommitteeCache.js";
38
+ export {type SyncCommitteeCache, SyncCommitteeCacheEmpty} from "./cache/syncCommitteeCache.js";
39
39
  export * from "./constants/index.js";
40
40
  export type {EpochTransitionStep} from "./epoch/index.js";
41
41
  export {type BeaconStateTransitionMetrics, getMetrics} from "./metrics.js";
42
42
  export * from "./rewards/index.js";
43
43
  export * from "./signatureSets/index.js";
44
44
  export * from "./stateTransition.js";
45
- export * from "./stateView/index.js";
45
+ export {BeaconStateView} from "./stateView/beaconStateView.js";
46
+ export {
47
+ type IBeaconStateView,
48
+ type IBeaconStateViewAltair,
49
+ type IBeaconStateViewBellatrix,
50
+ type IBeaconStateViewCapella,
51
+ type IBeaconStateViewDeneb,
52
+ type IBeaconStateViewElectra,
53
+ type IBeaconStateViewFulu,
54
+ type IBeaconStateViewGloas,
55
+ isStatePostAltair,
56
+ isStatePostBellatrix,
57
+ isStatePostCapella,
58
+ isStatePostDeneb,
59
+ isStatePostElectra,
60
+ isStatePostFulu,
61
+ isStatePostGloas,
62
+ } from "./stateView/interface.js";
63
+ export {createBeaconStateView, createBeaconStateViewForHistoricalRegen} from "./stateView/stateViewFactory.js";
46
64
  export type {
47
65
  BeaconStateAllForks,
48
66
  BeaconStateAltair,
@@ -3,7 +3,7 @@ import {BeaconConfig} from "@lodestar/config";
3
3
  import {BUILDER_INDEX_SELF_BUILD, DOMAIN_BEACON_BUILDER} from "@lodestar/params";
4
4
  import {ValidatorIndex, gloas, ssz} from "@lodestar/types";
5
5
  import {PubkeyCache} from "../cache/pubkeyCache.js";
6
- import {IBeaconStateView} from "../stateView/interface.js";
6
+ import {IBeaconStateView, isStatePostGloas} from "../stateView/interface.js";
7
7
  import {computeSigningRoot} from "../util/index.js";
8
8
  import {type SingleSignatureSet, createSingleSignatureSetFromComponents} from "../util/signatureSets.js";
9
9
 
@@ -23,6 +23,10 @@ export function getExecutionPayloadEnvelopeSignatureSet(
23
23
  signedEnvelope: gloas.SignedExecutionPayloadEnvelope,
24
24
  proposerIndex: ValidatorIndex
25
25
  ): SingleSignatureSet {
26
+ if (!isStatePostGloas(state)) {
27
+ throw new Error(`Expected gloas+ state for execution payload envelope signature, got fork=${state.forkName}`);
28
+ }
29
+
26
30
  const envelope = signedEnvelope.message;
27
31
  const pubkey =
28
32
  envelope.builderIndex === BUILDER_INDEX_SELF_BUILD