@lodestar/state-transition 1.42.0 → 1.43.0-dev.aef3645690

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 (48) 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/attestation.d.ts +12 -1
  32. package/lib/util/attestation.d.ts.map +1 -1
  33. package/lib/util/attestation.js +23 -8
  34. package/lib/util/attestation.js.map +1 -1
  35. package/lib/util/gloas.d.ts +2 -1
  36. package/lib/util/gloas.d.ts.map +1 -1
  37. package/lib/util/gloas.js.map +1 -1
  38. package/package.json +7 -7
  39. package/src/block/processDepositRequest.ts +50 -5
  40. package/src/block/processExecutionPayloadEnvelope.ts +8 -3
  41. package/src/index.ts +20 -2
  42. package/src/signatureSets/executionPayloadEnvelope.ts +5 -1
  43. package/src/signatureSets/voluntaryExits.ts +5 -2
  44. package/src/stateTransition.ts +1 -1
  45. package/src/stateView/beaconStateView.ts +26 -8
  46. package/src/stateView/interface.ts +143 -73
  47. package/src/util/attestation.ts +37 -8
  48. package/src/util/gloas.ts +2 -1
@@ -1,10 +1,19 @@
1
+ import { BeaconConfig } from "@lodestar/config";
1
2
  import { ForkSeq } from "@lodestar/params";
2
- import { BLSPubkey, Bytes32, UintNum64, electra } from "@lodestar/types";
3
+ import { BLSPubkey, Bytes32, PubkeyHex, UintNum64, electra } from "@lodestar/types";
3
4
  import { CachedBeaconStateElectra, CachedBeaconStateGloas } from "../types.js";
4
5
  /**
5
6
  * Apply a deposit for a builder. Either increases balance for existing builder or adds new builder to registry.
6
7
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-apply_deposit_for_builder
7
8
  */
8
9
  export declare function applyDepositForBuilder(state: CachedBeaconStateGloas, pubkey: BLSPubkey, withdrawalCredentials: Bytes32, amount: UintNum64, signature: Bytes32, slot: UintNum64): void;
9
- export declare function processDepositRequest(fork: ForkSeq, state: CachedBeaconStateElectra | CachedBeaconStateGloas, depositRequest: electra.DepositRequest): void;
10
+ export declare function processDepositRequest(fork: ForkSeq, state: CachedBeaconStateElectra | CachedBeaconStateGloas, depositRequest: electra.DepositRequest, pendingValidatorPubkeysCache?: Set<PubkeyHex>): void;
11
+ /**
12
+ * Build a set of pubkeys (hex-encoded) from pending deposits that have valid signatures.
13
+ * This is computed once and passed to each processDepositRequest call to avoid
14
+ * repeatedly iterating state.pendingDeposits.
15
+ *
16
+ * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.3/specs/gloas/beacon-chain.md#new-is_pending_validator
17
+ */
18
+ export declare function getPendingValidatorPubkeys(config: BeaconConfig, state: CachedBeaconStateGloas): Set<PubkeyHex>;
10
19
  //# sourceMappingURL=processDepositRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processDepositRequest.d.ts","sourceRoot":"","sources":["../../src/block/processDepositRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,OAAO,EAAqC,MAAM,kBAAkB,CAAC;AAC/F,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAM,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAC,wBAAwB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAK7E;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,sBAAsB,EAC7B,MAAM,EAAE,SAAS,EACjB,qBAAqB,EAAE,OAAO,EAC9B,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,OAAO,EAClB,IAAI,EAAE,SAAS,GACd,IAAI,CAaN;AA6CD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,wBAAwB,GAAG,sBAAsB,EACxD,cAAc,EAAE,OAAO,CAAC,cAAc,GACrC,IAAI,CAqCN"}
1
+ {"version":3,"file":"processDepositRequest.d.ts","sourceRoot":"","sources":["../../src/block/processDepositRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAmB,OAAO,EAAqC,MAAM,kBAAkB,CAAC;AAC/F,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAM,MAAM,iBAAiB,CAAC;AAEvF,OAAO,EAAC,wBAAwB,EAAE,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAK7E;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,sBAAsB,EAC7B,MAAM,EAAE,SAAS,EACjB,qBAAqB,EAAE,OAAO,EAC9B,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,OAAO,EAClB,IAAI,EAAE,SAAS,GACd,IAAI,CAaN;AAiDD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,wBAAwB,GAAG,sBAAsB,EACxD,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,4BAA4B,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,GAC5C,IAAI,CAkDN;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,sBAAsB,GAAG,GAAG,CAAC,SAAS,CAAC,CAgB9G"}
@@ -1,5 +1,6 @@
1
1
  import { FAR_FUTURE_EPOCH, ForkSeq, UNSET_DEPOSIT_REQUESTS_START_INDEX } from "@lodestar/params";
2
2
  import { ssz } from "@lodestar/types";
3
+ import { toPubkeyHex } from "@lodestar/utils";
3
4
  import { findBuilderIndexByPubkey, isBuilderWithdrawalCredential } from "../util/gloas.js";
4
5
  import { computeEpochAtSlot, isValidatorKnown } from "../util/index.js";
5
6
  import { isValidDepositSignature } from "./processDeposit.js";
@@ -55,24 +56,37 @@ function addBuilderToRegistry(state, pubkey, withdrawalCredentials, amount, slot
55
56
  state.builders.push(newBuilder);
56
57
  }
57
58
  }
58
- export function processDepositRequest(fork, state, depositRequest) {
59
+ // TODO GLOAS: pendingValidatorPubkeys cache is currently naive and has room for improvement.
60
+ // Currently the cache lives in process_block, but we should put it in epochCache or elsewhere that has longer
61
+ // lifetime to avoid duplicated deposit signature computation
62
+ // See https://github.com/ChainSafe/lodestar/issues/9181
63
+ export function processDepositRequest(fork, state, depositRequest, pendingValidatorPubkeysCache) {
59
64
  const { pubkey, withdrawalCredentials, amount, signature } = depositRequest;
60
65
  // Check if this is a builder or validator deposit
61
66
  if (fork >= ForkSeq.gloas) {
62
67
  const stateGloas = state;
68
+ const pendingValidatorPubkeys = pendingValidatorPubkeysCache ?? getPendingValidatorPubkeys(state.config, stateGloas);
69
+ const pubkeyHex = toPubkeyHex(pubkey);
63
70
  const builderIndex = findBuilderIndexByPubkey(stateGloas, pubkey);
64
71
  const validatorIndex = state.epochCtx.getValidatorIndex(pubkey);
65
72
  // Regardless of the withdrawal credentials prefix, if a builder/validator
66
73
  // already exists with this pubkey, apply the deposit to their balance
67
74
  const isBuilder = builderIndex !== null;
68
75
  const isValidator = isValidatorKnown(state, validatorIndex);
69
- const isBuilderPrefix = isBuilderWithdrawalCredential(withdrawalCredentials);
70
- // Route to builder if it's an existing builder OR has builder prefix and is not a validator
71
- if (isBuilder || (isBuilderPrefix && !isValidator)) {
76
+ const isPendingValidator = pendingValidatorPubkeys.has(pubkeyHex);
77
+ if (isBuilder || (isBuilderWithdrawalCredential(withdrawalCredentials) && !isValidator && !isPendingValidator)) {
72
78
  // Apply builder deposits immediately
73
79
  applyDepositForBuilder(stateGloas, pubkey, withdrawalCredentials, amount, signature, state.slot);
74
80
  return;
75
81
  }
82
+ // Keep the shared cache in sync: if this deposit has a valid signature, subsequent
83
+ // deposit requests for the same pubkey in this envelope must see it as a pending validator
84
+ if (pendingValidatorPubkeysCache &&
85
+ !isValidator &&
86
+ !isPendingValidator &&
87
+ isValidDepositSignature(state.config, pubkey, withdrawalCredentials, amount, signature)) {
88
+ pendingValidatorPubkeys.add(pubkeyHex);
89
+ }
76
90
  }
77
91
  // Only set deposit_requests_start_index in Electra fork, not Gloas
78
92
  if (fork < ForkSeq.gloas && state.depositRequestsStartIndex === UNSET_DEPOSIT_REQUESTS_START_INDEX) {
@@ -88,4 +102,20 @@ export function processDepositRequest(fork, state, depositRequest) {
88
102
  });
89
103
  state.pendingDeposits.push(pendingDeposit);
90
104
  }
105
+ /**
106
+ * Build a set of pubkeys (hex-encoded) from pending deposits that have valid signatures.
107
+ * This is computed once and passed to each processDepositRequest call to avoid
108
+ * repeatedly iterating state.pendingDeposits.
109
+ *
110
+ * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.3/specs/gloas/beacon-chain.md#new-is_pending_validator
111
+ */
112
+ export function getPendingValidatorPubkeys(config, state) {
113
+ const result = new Set();
114
+ for (const pendingDeposit of state.pendingDeposits.getAllReadonly()) {
115
+ if (isValidDepositSignature(config, pendingDeposit.pubkey, pendingDeposit.withdrawalCredentials, pendingDeposit.amount, pendingDeposit.signature)) {
116
+ result.add(toPubkeyHex(pendingDeposit.pubkey));
117
+ }
118
+ }
119
+ return result;
120
+ }
91
121
  //# sourceMappingURL=processDepositRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processDepositRequest.js","sourceRoot":"","sources":["../../src/block/processDepositRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processDepositRequest.js","sourceRoot":"","sources":["../../src/block/processDepositRequest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"processExecutionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../src/block/processExecutionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAI3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAOnD,MAAM,MAAM,mCAAmC,GAAG;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAKF,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,sBAAsB,EAC7B,cAAc,EAAE,KAAK,CAAC,8BAA8B,EACpD,IAAI,CAAC,EAAE,mCAAmC,GACzC,sBAAsB,CAqDxB"}
1
+ {"version":3,"file":"processExecutionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../src/block/processExecutionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAI3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAOnD,MAAM,MAAM,mCAAmC,GAAG;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAKF,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,sBAAsB,EAC7B,cAAc,EAAE,KAAK,CAAC,8BAA8B,EACpD,IAAI,CAAC,EAAE,mCAAmC,GACzC,sBAAsB,CA0DxB"}
@@ -6,7 +6,7 @@ import { BeaconStateView } from "../stateView/beaconStateView.js";
6
6
  import { computeTimeAtSlot } from "../util/index.js";
7
7
  import { verifySignatureSet } from "../util/signatureSets.js";
8
8
  import { processConsolidationRequest } from "./processConsolidationRequest.js";
9
- import { processDepositRequest } from "./processDepositRequest.js";
9
+ import { getPendingValidatorPubkeys, processDepositRequest } from "./processDepositRequest.js";
10
10
  import { processWithdrawalRequest } from "./processWithdrawalRequest.js";
11
11
  // Unlike other block processing functions which mutate state in-place, this function
12
12
  // clones the state and returns the post-state, similar to stateTransition().
@@ -23,8 +23,12 @@ export function processExecutionPayloadEnvelope(state, signedEnvelope, opts) {
23
23
  const postState = state.clone(opts?.dontTransferCache);
24
24
  validateExecutionPayloadEnvelope(postState, envelope);
25
25
  const requests = envelope.executionRequests;
26
- for (const deposit of requests.deposits) {
27
- processDepositRequest(fork, postState, deposit);
26
+ if (requests.deposits.length > 0) {
27
+ // Build cache of pending validator pubkeys once, shared across all deposit requests
28
+ const pendingValidatorPubkeys = getPendingValidatorPubkeys(postState.config, postState);
29
+ for (const deposit of requests.deposits) {
30
+ processDepositRequest(fork, postState, deposit, pendingValidatorPubkeys);
31
+ }
28
32
  }
29
33
  for (const withdrawal of requests.withdrawals) {
30
34
  processWithdrawalRequest(fork, postState, withdrawal);
@@ -1 +1 @@
1
- {"version":3,"file":"processExecutionPayloadEnvelope.js","sourceRoot":"","sources":["../../src/block/processExecutionPayloadEnvelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processExecutionPayloadEnvelope.js","sourceRoot":"","sources":["../../src/block/processExecutionPayloadEnvelope.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -12,14 +12,16 @@ export { EpochCache, type EpochCacheImmutableData, createEmptyEpochCacheImmutabl
12
12
  export { type EpochTransitionCache, beforeProcessEpoch } from "./cache/epochTransitionCache.js";
13
13
  export { type PubkeyCache, createPubkeyCache, syncPubkeys } from "./cache/pubkeyCache.js";
14
14
  export { type BeaconStateCache, createCachedBeaconState, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, loadCachedBeaconState, } from "./cache/stateCache.js";
15
- export { type SyncCommitteeCache } from "./cache/syncCommitteeCache.js";
15
+ export { type SyncCommitteeCache, SyncCommitteeCacheEmpty } from "./cache/syncCommitteeCache.js";
16
16
  export * from "./constants/index.js";
17
17
  export type { EpochTransitionStep } from "./epoch/index.js";
18
18
  export { type BeaconStateTransitionMetrics, getMetrics } from "./metrics.js";
19
19
  export * from "./rewards/index.js";
20
20
  export * from "./signatureSets/index.js";
21
21
  export * from "./stateTransition.js";
22
- export * from "./stateView/index.js";
22
+ export { BeaconStateView } from "./stateView/beaconStateView.js";
23
+ export { type IBeaconStateView, type IBeaconStateViewAltair, type IBeaconStateViewBellatrix, type IBeaconStateViewCapella, type IBeaconStateViewDeneb, type IBeaconStateViewElectra, type IBeaconStateViewFulu, type IBeaconStateViewGloas, isStatePostAltair, isStatePostBellatrix, isStatePostCapella, isStatePostDeneb, isStatePostElectra, isStatePostFulu, isStatePostGloas, } from "./stateView/interface.js";
24
+ export { createBeaconStateView, createBeaconStateViewForHistoricalRegen } from "./stateView/stateViewFactory.js";
23
25
  export type { BeaconStateAllForks, BeaconStateAltair, BeaconStateBellatrix, BeaconStateCapella, BeaconStateDeneb, BeaconStateElectra, BeaconStateExecutions, BeaconStateFulu, BeaconStateGloas, BeaconStatePhase0, CachedBeaconStateAllForks, CachedBeaconStateAltair, CachedBeaconStateBellatrix, CachedBeaconStateCapella, CachedBeaconStateDeneb, CachedBeaconStateElectra, CachedBeaconStateExecutions, CachedBeaconStateFulu, CachedBeaconStateGloas, CachedBeaconStatePhase0, } from "./types.js";
24
26
  export * from "./util/index.js";
25
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AAEtH,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,0BAA0B,EAC/B,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAC,KAAK,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAExF,OAAO,EACL,KAAK,gBAAgB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,kBAAkB,EAAC,MAAM,+BAA+B,CAAC;AACtE,cAAc,sBAAsB,CAAC;AACrC,YAAY,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAC,KAAK,4BAA4B,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAEhB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AAEtH,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,KAAK,0BAA0B,EAC/B,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,oBAAoB,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAC,KAAK,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAExF,OAAO,EACL,KAAK,gBAAgB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,KAAK,kBAAkB,EAAE,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AACrC,YAAY,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAC,KAAK,4BAA4B,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,qBAAqB,EAAE,uCAAuC,EAAC,MAAM,iCAAiC,CAAC;AAC/G,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAEhB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,cAAc,iBAAiB,CAAC"}
package/lib/index.js CHANGED
@@ -16,11 +16,14 @@ export { beforeProcessEpoch } from "./cache/epochTransitionCache.js";
16
16
  export { createPubkeyCache, syncPubkeys } from "./cache/pubkeyCache.js";
17
17
  // Main state caches
18
18
  export { createCachedBeaconState, isCachedBeaconState, isStateBalancesNodesPopulated, isStateValidatorsNodesPopulated, loadCachedBeaconState, } from "./cache/stateCache.js";
19
+ export { SyncCommitteeCacheEmpty } from "./cache/syncCommitteeCache.js";
19
20
  export * from "./constants/index.js";
20
21
  export { getMetrics } from "./metrics.js";
21
22
  export * from "./rewards/index.js";
22
23
  export * from "./signatureSets/index.js";
23
24
  export * from "./stateTransition.js";
24
- export * from "./stateView/index.js";
25
+ export { BeaconStateView } from "./stateView/beaconStateView.js";
26
+ export { isStatePostAltair, isStatePostBellatrix, isStatePostCapella, isStatePostDeneb, isStatePostElectra, isStatePostFulu, isStatePostGloas, } from "./stateView/interface.js";
27
+ export { createBeaconStateView, createBeaconStateViewForHistoricalRegen } from "./stateView/stateViewFactory.js";
25
28
  export * from "./util/index.js";
26
29
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,yBAAyB;AACzB,OAAO,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACtH,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAEL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EAEV,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAmB,iBAAiB,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACxF,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAoC,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AAwBrC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,iCAAiC,EAAE,yBAAyB,EAAC,MAAM,sCAAsC,CAAC;AAClH,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAC,2BAA2B,EAAC,MAAM,wCAAwC,CAAC;AACnF,qCAAqC;AACrC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,2BAA2B,EAAC,MAAM,oCAAoC,CAAC;AAC/E,yBAAyB;AACzB,OAAO,EAAC,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,EAAC,MAAM,iCAAiC,CAAC;AACtH,6BAA6B;AAC7B,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAEL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,UAAU,EAEV,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4B,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAmB,iBAAiB,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACxF,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA0B,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AAC/F,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAoC,UAAU,EAAC,MAAM,cAAc,CAAC;AAC3E,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EASL,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,qBAAqB,EAAE,uCAAuC,EAAC,MAAM,iCAAiC,CAAC;AAwB/G,cAAc,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"executionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,cAAc,EAAE,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAC,KAAK,kBAAkB,EAAyC,MAAM,0BAA0B,CAAC;AAEzG,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,KAAK,CAAC,wBAAwB,GACvC,UAAU,CAIZ;AAED,wBAAgB,uCAAuC,CACrD,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,gBAAgB,EACvB,cAAc,EAAE,KAAK,CAAC,8BAA8B,EACpD,aAAa,EAAE,cAAc,GAC5B,kBAAkB,CAYpB"}
1
+ {"version":3,"file":"executionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,cAAc,EAAE,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAmB,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAC,KAAK,kBAAkB,EAAyC,MAAM,0BAA0B,CAAC;AAEzG,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,KAAK,CAAC,wBAAwB,GACvC,UAAU,CAIZ;AAED,wBAAgB,uCAAuC,CACrD,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,gBAAgB,EACvB,cAAc,EAAE,KAAK,CAAC,8BAA8B,EACpD,aAAa,EAAE,cAAc,GAC5B,kBAAkB,CAgBpB"}
@@ -1,6 +1,7 @@
1
1
  import { PublicKey } from "@chainsafe/blst";
2
2
  import { BUILDER_INDEX_SELF_BUILD, DOMAIN_BEACON_BUILDER } from "@lodestar/params";
3
3
  import { ssz } from "@lodestar/types";
4
+ import { isStatePostGloas } from "../stateView/interface.js";
4
5
  import { computeSigningRoot } from "../util/index.js";
5
6
  import { createSingleSignatureSetFromComponents } from "../util/signatureSets.js";
6
7
  export function getExecutionPayloadEnvelopeSigningRoot(config, envelope) {
@@ -8,6 +9,9 @@ export function getExecutionPayloadEnvelopeSigningRoot(config, envelope) {
8
9
  return computeSigningRoot(ssz.gloas.ExecutionPayloadEnvelope, envelope, domain);
9
10
  }
10
11
  export function getExecutionPayloadEnvelopeSignatureSet(config, pubkeyCache, state, signedEnvelope, proposerIndex) {
12
+ if (!isStatePostGloas(state)) {
13
+ throw new Error(`Expected gloas+ state for execution payload envelope signature, got fork=${state.forkName}`);
14
+ }
11
15
  const envelope = signedEnvelope.message;
12
16
  const pubkey = envelope.builderIndex === BUILDER_INDEX_SELF_BUILD
13
17
  ? pubkeyCache.getOrThrow(proposerIndex)
@@ -1 +1 @@
1
- {"version":3,"file":"executionPayloadEnvelope.js","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAwB,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAG3D,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAA0B,sCAAsC,EAAC,MAAM,0BAA0B,CAAC;AAEzG,MAAM,UAAU,sCAAsC,CACpD,MAAoB,EACpB,QAAwC,EAC5B;IACZ,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAEtE,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAAA,CACjF;AAED,MAAM,UAAU,uCAAuC,CACrD,MAAoB,EACpB,WAAwB,EACxB,KAAuB,EACvB,cAAoD,EACpD,aAA6B,EACT;IACpB,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC;IACxC,MAAM,MAAM,GACV,QAAQ,CAAC,YAAY,KAAK,wBAAwB;QAChD,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IAE1E,OAAO,sCAAsC,CAC3C,MAAM,EACN,sCAAsC,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxD,cAAc,CAAC,SAAS,CACzB,CAAC;AAAA,CACH"}
1
+ {"version":3,"file":"executionPayloadEnvelope.js","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAwB,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EAAmB,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAA0B,sCAAsC,EAAC,MAAM,0BAA0B,CAAC;AAEzG,MAAM,UAAU,sCAAsC,CACpD,MAAoB,EACpB,QAAwC,EAC5B;IACZ,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAEtE,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAAA,CACjF;AAED,MAAM,UAAU,uCAAuC,CACrD,MAAoB,EACpB,WAAwB,EACxB,KAAuB,EACvB,cAAoD,EACpD,aAA6B,EACT;IACpB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,4EAA4E,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChH,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC;IACxC,MAAM,MAAM,GACV,QAAQ,CAAC,YAAY,KAAK,wBAAwB;QAChD,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IAE1E,OAAO,sCAAsC,CAC3C,MAAM,EACN,sCAAsC,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxD,cAAc,CAAC,SAAS,CACzB,CAAC;AAAA,CACH"}
@@ -1,7 +1,7 @@
1
1
  import { BeaconConfig } from "@lodestar/config";
2
2
  import { SignedBeaconBlock, Slot, phase0 } from "@lodestar/types";
3
3
  import { PubkeyCache } from "../cache/pubkeyCache.js";
4
- import { IBeaconStateView } from "../stateView/interface.js";
4
+ import { IBeaconStateView, IBeaconStateViewGloas } from "../stateView/interface.js";
5
5
  import { ISignatureSet } from "../util/index.js";
6
6
  export declare function verifyVoluntaryExitSignature(config: BeaconConfig, pubkeyCache: PubkeyCache, state: IBeaconStateView, signedVoluntaryExit: phase0.SignedVoluntaryExit): boolean;
7
7
  /**
@@ -10,6 +10,6 @@ export declare function verifyVoluntaryExitSignature(config: BeaconConfig, pubke
10
10
  export declare function getVoluntaryExitSignatureSet(config: BeaconConfig, state: IBeaconStateView, signedVoluntaryExit: phase0.SignedVoluntaryExit): ISignatureSet;
11
11
  export declare function getVoluntaryExitsSignatureSets(config: BeaconConfig, state: IBeaconStateView, signedBlock: SignedBeaconBlock): ISignatureSet[];
12
12
  export declare function getValidatorVoluntaryExitSignatureSet(config: BeaconConfig, stateSlot: Slot, signedVoluntaryExit: phase0.SignedVoluntaryExit): ISignatureSet;
13
- export declare function getBuilderVoluntaryExitSignatureSet(config: BeaconConfig, state: IBeaconStateView, signedVoluntaryExit: phase0.SignedVoluntaryExit): ISignatureSet;
13
+ export declare function getBuilderVoluntaryExitSignatureSet(config: BeaconConfig, state: IBeaconStateViewGloas, signedVoluntaryExit: phase0.SignedVoluntaryExit): ISignatureSet;
14
14
  export declare function isBuilderVoluntaryExit(signedVoluntaryExit: phase0.SignedVoluntaryExit): boolean;
15
15
  //# sourceMappingURL=voluntaryExits.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"voluntaryExits.d.ts","sourceRoot":"","sources":["../../src/signatureSets/voluntaryExits.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAM,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EACL,aAAa,EAOd,MAAM,kBAAkB,CAAC;AAE1B,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,gBAAgB,EACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,gBAAgB,EACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAQf;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,iBAAiB,GAC7B,aAAa,EAAE,CAIjB;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,IAAI,EACf,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAUf;AAED,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,gBAAgB,EACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAYf;AAED,wBAAgB,sBAAsB,CAAC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAAG,OAAO,CAE/F"}
1
+ {"version":3,"file":"voluntaryExits.d.ts","sourceRoot":"","sources":["../../src/signatureSets/voluntaryExits.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAM,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAE,qBAAqB,EAAmB,MAAM,2BAA2B,CAAC;AACpG,OAAO,EACL,aAAa,EAOd,MAAM,kBAAkB,CAAC;AAE1B,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,gBAAgB,EACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,gBAAgB,EACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAWf;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,iBAAiB,GAC7B,aAAa,EAAE,CAIjB;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,IAAI,EACf,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAUf;AAED,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,qBAAqB,EAC5B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAC9C,aAAa,CAYf;AAED,wBAAgB,sBAAsB,CAAC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,GAAG,OAAO,CAE/F"}
@@ -1,6 +1,7 @@
1
1
  import { PublicKey } from "@chainsafe/blst";
2
2
  import { ForkSeq } from "@lodestar/params";
3
3
  import { ssz } from "@lodestar/types";
4
+ import { isStatePostGloas } from "../stateView/interface.js";
4
5
  import { SignatureSetType, computeSigningRoot, computeStartSlotAtEpoch, convertValidatorIndexToBuilderIndex, isBuilderIndex, verifySignatureSet, } from "../util/index.js";
5
6
  export function verifyVoluntaryExitSignature(config, pubkeyCache, state, signedVoluntaryExit) {
6
7
  return verifySignatureSet(getVoluntaryExitSignatureSet(config, state, signedVoluntaryExit), pubkeyCache);
@@ -11,6 +12,9 @@ export function verifyVoluntaryExitSignature(config, pubkeyCache, state, signedV
11
12
  export function getVoluntaryExitSignatureSet(config, state, signedVoluntaryExit) {
12
13
  const fork = config.getForkSeq(state.slot);
13
14
  if (fork >= ForkSeq.gloas && isBuilderVoluntaryExit(signedVoluntaryExit)) {
15
+ if (!isStatePostGloas(state)) {
16
+ throw new Error(`Expected gloas+ state for builder voluntary exit signature, got fork=${state.forkName}`);
17
+ }
14
18
  return getBuilderVoluntaryExitSignatureSet(config, state, signedVoluntaryExit);
15
19
  }
16
20
  return getValidatorVoluntaryExitSignatureSet(config, state.slot, signedVoluntaryExit);
@@ -1 +1 @@
1
- {"version":3,"file":"voluntaryExits.js","sourceRoot":"","sources":["../../src/signatureSets/voluntaryExits.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"voluntaryExits.js","sourceRoot":"","sources":["../../src/signatureSets/voluntaryExits.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,7 @@ export declare enum StateHashTreeRootSource {
34
34
  prepareNextEpoch = "prepare_next_epoch",
35
35
  regenState = "regen_state",
36
36
  computeNewStateRoot = "compute_new_state_root",
37
- computeEnvelopeStateRoot = "compute_envelope_state_root"
37
+ computePayloadEnvelopeStateRoot = "compute_payload_envelope_state_root"
38
38
  }
39
39
  /**
40
40
  * Implementation Note: follows the optimizations in protolambda's eth2fastspec (https://github.com/protolambda/eth2fastspec)
@@ -1 +1 @@
1
- {"version":3,"file":"stateTransition.d.ts","sourceRoot":"","sources":["../src/stateTransition.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAC,iBAAiB,EAAiD,MAAM,yBAAyB,CAAC;AAE1G,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAuB,wBAAwB,EAAqB,MAAM,iCAAiC,CAAC;AAEnH,OAAO,EAAC,4BAA4B,EAA0C,MAAM,cAAc,CAAC;AAYnG,OAAO,EACL,yBAAyB,EAQ1B,MAAM,YAAY,CAAC;AAMpB,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GACjD,wBAAwB,GACxB,gBAAgB,GAAG;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEJ,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC5C,CAAC;AAEF,UAAU,gBAAgB;IACxB,yBAAyB,CACvB,YAAY,EAAE,KAAK,EACnB,eAAe,EAAE,MAAM,EAAE,EACzB,KAAK,EAAE,MAAM,EAAE,EACf,iBAAiB,EAAE,OAAO,EAAE,EAC5B,iBAAiB,EAAE,OAAO,EAAE,EAC5B,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,IAAI,CAAC;CACT;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;CAC9B;AAED;;GAEG;AACH,oBAAY,uBAAuB;IACjC,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;IACpC,eAAe,sBAAsB;IACrC,gBAAgB,uBAAuB;IACvC,UAAU,gBAAgB;IAC1B,mBAAmB,2BAA2B;IAC9C,wBAAwB,gCAAgC;CACzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,yBAAyB,EAChC,WAAW,EAAE,iBAAiB,GAAG,wBAAwB,EACzD,OAAO,GAAE,mBAIR,EACD,EAAC,OAAO,EAAE,gBAAgB,EAAC,GAAE,sBAA2B,GACvD,yBAAyB,CA8D3B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,yBAAyB,EAChC,IAAI,EAAE,IAAI,EACV,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAC,EACnF,EAAC,OAAO,EAAE,gBAAgB,EAAC,GAAE,sBAA2B,GACvD,yBAAyB,CAiB3B"}
1
+ {"version":3,"file":"stateTransition.d.ts","sourceRoot":"","sources":["../src/stateTransition.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAC,iBAAiB,EAAiD,MAAM,yBAAyB,CAAC;AAE1G,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAuB,wBAAwB,EAAqB,MAAM,iCAAiC,CAAC;AAEnH,OAAO,EAAC,4BAA4B,EAA0C,MAAM,cAAc,CAAC;AAYnG,OAAO,EACL,yBAAyB,EAQ1B,MAAM,YAAY,CAAC;AAMpB,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GACjD,wBAAwB,GACxB,gBAAgB,GAAG;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEJ,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAC9C,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC5C,CAAC;AAEF,UAAU,gBAAgB;IACxB,yBAAyB,CACvB,YAAY,EAAE,KAAK,EACnB,eAAe,EAAE,MAAM,EAAE,EACzB,KAAK,EAAE,MAAM,EAAE,EACf,iBAAiB,EAAE,OAAO,EAAE,EAC5B,iBAAiB,EAAE,OAAO,EAAE,EAC5B,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,IAAI,CAAC;CACT;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;CAC9B;AAED;;GAEG;AACH,oBAAY,uBAAuB;IACjC,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;IACpC,eAAe,sBAAsB;IACrC,gBAAgB,uBAAuB;IACvC,UAAU,gBAAgB;IAC1B,mBAAmB,2BAA2B;IAC9C,+BAA+B,wCAAwC;CACxE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,yBAAyB,EAChC,WAAW,EAAE,iBAAiB,GAAG,wBAAwB,EACzD,OAAO,GAAE,mBAIR,EACD,EAAC,OAAO,EAAE,gBAAgB,EAAC,GAAE,sBAA2B,GACvD,yBAAyB,CA8D3B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,yBAAyB,EAChC,IAAI,EAAE,IAAI,EACV,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAC,EACnF,EAAC,OAAO,EAAE,gBAAgB,EAAC,GAAE,sBAA2B,GACvD,yBAAyB,CAiB3B"}
@@ -31,7 +31,7 @@ var StateHashTreeRootSource;
31
31
  StateHashTreeRootSource["prepareNextEpoch"] = "prepare_next_epoch";
32
32
  StateHashTreeRootSource["regenState"] = "regen_state";
33
33
  StateHashTreeRootSource["computeNewStateRoot"] = "compute_new_state_root";
34
- StateHashTreeRootSource["computeEnvelopeStateRoot"] = "compute_envelope_state_root";
34
+ StateHashTreeRootSource["computePayloadEnvelopeStateRoot"] = "compute_payload_envelope_state_root";
35
35
  })(StateHashTreeRootSource || (StateHashTreeRootSource = {}));
36
36
  /**
37
37
  * Implementation Note: follows the optimizations in protolambda's eth2fastspec (https://github.com/protolambda/eth2fastspec)
@@ -1 +1 @@
1
- {"version":3,"file":"stateTransition.js","sourceRoot":"","sources":["../src/stateTransition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateTransition.js","sourceRoot":"","sources":["../src/stateTransition.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 } from "@lodestar/params";
3
4
  import { BeaconBlock, BeaconState, BlindedBeaconBlock, BuilderIndex, Bytes32, Epoch, ExecutionPayloadBid, ExecutionPayloadHeader, Root, RootHex, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, SyncCommittee, ValidatorIndex, 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";
@@ -12,8 +13,8 @@ import { SyncCommitteeCache } from "../cache/syncCommitteeCache.js";
12
13
  import { SyncCommitteeWitness } from "../lightClient/types.js";
13
14
  import { StateTransitionModules, StateTransitionOpts } from "../stateTransition.js";
14
15
  import { EpochShuffling } from "../util/epochShuffling.js";
15
- import { IBeaconStateView } from "./interface.js";
16
- export declare class BeaconStateView implements IBeaconStateView {
16
+ import { IBeaconStateView, IBeaconStateViewLatestFork } from "./interface.js";
17
+ export declare class BeaconStateView implements IBeaconStateViewLatestFork {
17
18
  readonly cachedState: CachedBeaconStateAllForks;
18
19
  private readonly config;
19
20
  private _fork;
@@ -31,7 +32,9 @@ export declare class BeaconStateView implements IBeaconStateView {
31
32
  private _proposerLookahead;
32
33
  private _executionPayloadAvailability;
33
34
  private _latestExecutionPayloadBid;
35
+ private _payloadExpectedWithdrawals;
34
36
  constructor(cachedState: CachedBeaconStateAllForks);
37
+ get forkName(): ForkName;
35
38
  get slot(): number;
36
39
  get fork(): Fork;
37
40
  get epoch(): number;
@@ -73,6 +76,7 @@ export declare class BeaconStateView implements IBeaconStateView {
73
76
  get proposerLookahead(): fulu.ProposerLookahead;
74
77
  get executionPayloadAvailability(): BitArray;
75
78
  get latestExecutionPayloadBid(): ExecutionPayloadBid;
79
+ get payloadExpectedWithdrawals(): capella.Withdrawal[];
76
80
  getBuilder(index: BuilderIndex): gloas.Builder;
77
81
  canBuilderCoverBid(builderIndex: BuilderIndex, bidAmount: number): boolean;
78
82
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"beaconStateView.d.ts","sourceRoot":"","sources":["../../src/stateView/beaconStateView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"beaconStateView.d.ts","sourceRoot":"","sources":["../../src/stateView/beaconStateView.ts"],"names":[],"mappings":"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"}
@@ -47,11 +47,15 @@ export class BeaconStateView {
47
47
  // gloas
48
48
  _executionPayloadAvailability = null;
49
49
  _latestExecutionPayloadBid = null;
50
+ _payloadExpectedWithdrawals = null;
50
51
  constructor(cachedState) {
51
52
  this.cachedState = cachedState;
52
53
  this.config = cachedState.config;
53
54
  }
54
55
  // phase0
56
+ get forkName() {
57
+ return this.config.getForkName(this.cachedState.slot);
58
+ }
55
59
  get slot() {
56
60
  return this.cachedState.slot;
57
61
  }
@@ -245,7 +249,7 @@ export class BeaconStateView {
245
249
  // gloas
246
250
  get executionPayloadAvailability() {
247
251
  if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
248
- throw new Error("executionPayloadAvailability is not available before GLOAS");
252
+ throw new Error("executionPayloadAvailability is not available before Gloas");
249
253
  }
250
254
  if (this._executionPayloadAvailability === null) {
251
255
  this._executionPayloadAvailability = this.cachedState.executionPayloadAvailability.toValue();
@@ -254,22 +258,31 @@ export class BeaconStateView {
254
258
  }
255
259
  get latestExecutionPayloadBid() {
256
260
  if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
257
- throw new Error("latestExecutionPayloadBid is not available before GLOAS");
261
+ throw new Error("latestExecutionPayloadBid is not available before Gloas");
258
262
  }
259
263
  if (this._latestExecutionPayloadBid === null) {
260
264
  this._latestExecutionPayloadBid = this.cachedState.latestExecutionPayloadBid.toValue();
261
265
  }
262
266
  return this._latestExecutionPayloadBid;
263
267
  }
268
+ get payloadExpectedWithdrawals() {
269
+ if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
270
+ throw new Error("payloadExpectedWithdrawals is not available before Gloas");
271
+ }
272
+ if (this._payloadExpectedWithdrawals === null) {
273
+ this._payloadExpectedWithdrawals = this.cachedState.payloadExpectedWithdrawals.toValue();
274
+ }
275
+ return this._payloadExpectedWithdrawals;
276
+ }
264
277
  getBuilder(index) {
265
278
  if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
266
- throw new Error("Builders are not supported before GLOAS");
279
+ throw new Error("Builders are not supported before Gloas");
267
280
  }
268
281
  return this.cachedState.builders.getReadonly(index);
269
282
  }
270
283
  canBuilderCoverBid(builderIndex, bidAmount) {
271
284
  if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
272
- throw new Error("Builders are not supported before GLOAS");
285
+ throw new Error("Builders are not supported before Gloas");
273
286
  }
274
287
  return canBuilderCoverBid(this.cachedState, builderIndex, bidAmount);
275
288
  }
@@ -279,7 +292,7 @@ export class BeaconStateView {
279
292
  */
280
293
  getIndexInPayloadTimelinessCommittee(validatorIndex, slot) {
281
294
  if (this.config.getForkSeq(this.cachedState.slot) < ForkSeq.gloas) {
282
- throw new Error("PTC committees are not supported before GLOAS");
295
+ throw new Error("PTC committees are not supported before Gloas");
283
296
  }
284
297
  const ptcCommittee = this.cachedState.epochCtx.getPayloadTimelinessCommittee(slot);
285
298
  return ptcCommittee.indexOf(validatorIndex);