@lodestar/state-transition 1.40.0-dev.63c5c3e7f7 → 1.40.0-dev.9defa5c09b

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 (31) hide show
  1. package/lib/block/processExecutionPayloadBid.d.ts.map +1 -1
  2. package/lib/block/processExecutionPayloadBid.js +4 -4
  3. package/lib/block/processExecutionPayloadBid.js.map +1 -1
  4. package/lib/signatureSets/executionPayloadBid.d.ts +5 -0
  5. package/lib/signatureSets/executionPayloadBid.d.ts.map +1 -0
  6. package/lib/signatureSets/executionPayloadBid.js +8 -0
  7. package/lib/signatureSets/executionPayloadBid.js.map +1 -0
  8. package/lib/signatureSets/executionPayloadEnvelope.d.ts +4 -0
  9. package/lib/signatureSets/executionPayloadEnvelope.d.ts.map +1 -0
  10. package/lib/signatureSets/executionPayloadEnvelope.js +8 -0
  11. package/lib/signatureSets/executionPayloadEnvelope.js.map +1 -0
  12. package/lib/signatureSets/index.d.ts +2 -0
  13. package/lib/signatureSets/index.d.ts.map +1 -1
  14. package/lib/signatureSets/index.js +2 -0
  15. package/lib/signatureSets/index.js.map +1 -1
  16. package/lib/signatureSets/indexedPayloadAttestation.d.ts +2 -2
  17. package/lib/util/gloas.d.ts +10 -9
  18. package/lib/util/gloas.d.ts.map +1 -1
  19. package/lib/util/gloas.js.map +1 -1
  20. package/lib/util/index.d.ts +1 -0
  21. package/lib/util/index.d.ts.map +1 -1
  22. package/lib/util/index.js +1 -0
  23. package/lib/util/index.js.map +1 -1
  24. package/package.json +7 -7
  25. package/src/block/processExecutionPayloadBid.ts +4 -4
  26. package/src/signatureSets/executionPayloadBid.ts +15 -0
  27. package/src/signatureSets/executionPayloadEnvelope.ts +13 -0
  28. package/src/signatureSets/index.ts +2 -0
  29. package/src/signatureSets/indexedPayloadAttestation.ts +2 -2
  30. package/src/util/gloas.ts +19 -11
  31. package/src/util/index.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"processExecutionPayloadBid.d.ts","sourceRoot":"","sources":["../../src/block/processExecutionPayloadBid.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AACjH,OAAO,EAAC,WAAW,EAAa,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAInD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAqEjH"}
1
+ {"version":3,"file":"processExecutionPayloadBid.d.ts","sourceRoot":"","sources":["../../src/block/processExecutionPayloadBid.ts"],"names":[],"mappings":"AAEA,OAAO,EAA2B,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAC,WAAW,EAAa,MAAM,iBAAiB,CAAC;AAIxD,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAInD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAqEjH"}
@@ -1,11 +1,12 @@
1
1
  import { PublicKey, Signature, verify } from "@chainsafe/blst";
2
2
  import { byteArrayEquals } from "@chainsafe/ssz";
3
- import { BUILDER_INDEX_SELF_BUILD, DOMAIN_BEACON_BUILDER, SLOTS_PER_EPOCH } from "@lodestar/params";
3
+ import { BUILDER_INDEX_SELF_BUILD, SLOTS_PER_EPOCH } from "@lodestar/params";
4
4
  import { ssz } from "@lodestar/types";
5
5
  import { toHex, toRootHex } from "@lodestar/utils";
6
6
  import { G2_POINT_AT_INFINITY } from "../constants/constants.js";
7
+ import { getExecutionPayloadBidSigningRoot } from "../signatureSets/executionPayloadBid.js";
7
8
  import { canBuilderCoverBid, isActiveBuilder } from "../util/gloas.js";
8
- import { computeSigningRoot, getCurrentEpoch, getRandaoMix } from "../util/index.js";
9
+ import { getCurrentEpoch, getRandaoMix } from "../util/index.js";
9
10
  export function processExecutionPayloadBid(state, block) {
10
11
  const signedBid = block.body.signedExecutionPayloadBid;
11
12
  const bid = signedBid.message;
@@ -62,8 +63,7 @@ export function processExecutionPayloadBid(state, block) {
62
63
  state.latestExecutionPayloadBid = ssz.gloas.ExecutionPayloadBid.toViewDU(bid);
63
64
  }
64
65
  function verifyExecutionPayloadBidSignature(state, pubkey, signedBid) {
65
- const domain = state.config.getDomain(state.slot, DOMAIN_BEACON_BUILDER);
66
- const signingRoot = computeSigningRoot(ssz.gloas.ExecutionPayloadBid, signedBid.message, domain);
66
+ const signingRoot = getExecutionPayloadBidSigningRoot(state.config, state, signedBid.message);
67
67
  try {
68
68
  const publicKey = PublicKey.fromBytes(pubkey);
69
69
  const signature = Signature.fromBytes(signedBid.signature, true);
@@ -1 +1 @@
1
- {"version":3,"file":"processExecutionPayloadBid.js","sourceRoot":"","sources":["../../src/block/processExecutionPayloadBid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processExecutionPayloadBid.js","sourceRoot":"","sources":["../../src/block/processExecutionPayloadBid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { BeaconConfig } from "@lodestar/config";
2
+ import { gloas } from "@lodestar/types";
3
+ import { CachedBeaconStateGloas } from "../types.js";
4
+ export declare function getExecutionPayloadBidSigningRoot(config: BeaconConfig, state: CachedBeaconStateGloas, bid: gloas.ExecutionPayloadBid): Uint8Array;
5
+ //# sourceMappingURL=executionPayloadBid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionPayloadBid.d.ts","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadBid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,sBAAsB,EAAC,MAAM,aAAa,CAAC;AAGnD,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,sBAAsB,EAC7B,GAAG,EAAE,KAAK,CAAC,mBAAmB,GAC7B,UAAU,CAIZ"}
@@ -0,0 +1,8 @@
1
+ import { DOMAIN_BEACON_BUILDER } from "@lodestar/params";
2
+ import { ssz } from "@lodestar/types";
3
+ import { computeSigningRoot } from "../util/index.js";
4
+ export function getExecutionPayloadBidSigningRoot(config, state, bid) {
5
+ const domain = config.getDomain(state.slot, DOMAIN_BEACON_BUILDER);
6
+ return computeSigningRoot(ssz.gloas.ExecutionPayloadBid, bid, domain);
7
+ }
8
+ //# sourceMappingURL=executionPayloadBid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionPayloadBid.js","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadBid.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAQ,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAEpD,MAAM,UAAU,iCAAiC,CAC/C,MAAoB,EACpB,KAA6B,EAC7B,GAA8B;IAE9B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAEnE,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AACxE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { BeaconConfig } from "@lodestar/config";
2
+ import { gloas } from "@lodestar/types";
3
+ export declare function getExecutionPayloadEnvelopeSigningRoot(config: BeaconConfig, envelope: gloas.ExecutionPayloadEnvelope): Uint8Array;
4
+ //# sourceMappingURL=executionPayloadEnvelope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionPayloadEnvelope.d.ts","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,KAAK,EAAM,MAAM,iBAAiB,CAAC;AAG3C,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,KAAK,CAAC,wBAAwB,GACvC,UAAU,CAIZ"}
@@ -0,0 +1,8 @@
1
+ import { DOMAIN_BEACON_BUILDER } from "@lodestar/params";
2
+ import { ssz } from "@lodestar/types";
3
+ import { computeSigningRoot } from "../util/index.js";
4
+ export function getExecutionPayloadEnvelopeSigningRoot(config, envelope) {
5
+ const domain = config.getDomain(envelope.slot, DOMAIN_BEACON_BUILDER);
6
+ return computeSigningRoot(ssz.gloas.ExecutionPayloadEnvelope, envelope, domain);
7
+ }
8
+ //# sourceMappingURL=executionPayloadEnvelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executionPayloadEnvelope.js","sourceRoot":"","sources":["../../src/signatureSets/executionPayloadEnvelope.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAQ,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAEpD,MAAM,UAAU,sCAAsC,CACpD,MAAoB,EACpB,QAAwC;IAExC,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;AAClF,CAAC"}
@@ -5,6 +5,8 @@ import { SyncCommitteeCache } from "../cache/syncCommitteeCache.js";
5
5
  import { ISignatureSet } from "../util/index.js";
6
6
  export * from "./attesterSlashings.js";
7
7
  export * from "./blsToExecutionChange.js";
8
+ export * from "./executionPayloadBid.js";
9
+ export * from "./executionPayloadEnvelope.js";
8
10
  export * from "./indexedAttestation.js";
9
11
  export * from "./indexedPayloadAttestation.js";
10
12
  export * from "./proposer.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAkB,MAAM,iBAAiB,CAAC;AAEvF,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAS/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,iBAAiB,EAC/B,2BAA2B,EAAE,kBAAkB,EAC/C,WAAW,EAAE,iBAAiB,EAC9B,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,IAAI,CAAC,EAAE;IACL,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GACA,aAAa,EAAE,CA0CjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAkB,MAAM,iBAAiB,CAAC;AAEvF,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAS/C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,iBAAiB,EAC/B,2BAA2B,EAAE,kBAAkB,EAC/C,WAAW,EAAE,iBAAiB,EAC9B,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,IAAI,CAAC,EAAE;IACL,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GACA,aAAa,EAAE,CA0CjB"}
@@ -9,6 +9,8 @@ import { getRandaoRevealSignatureSet } from "./randao.js";
9
9
  import { getVoluntaryExitsSignatureSets } from "./voluntaryExits.js";
10
10
  export * from "./attesterSlashings.js";
11
11
  export * from "./blsToExecutionChange.js";
12
+ export * from "./executionPayloadBid.js";
13
+ export * from "./executionPayloadEnvelope.js";
12
14
  export * from "./indexedAttestation.js";
13
15
  export * from "./indexedPayloadAttestation.js";
14
16
  export * from "./proposer.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAC,4BAA4B,EAAC,MAAM,kCAAkC,CAAC;AAI9E,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,oCAAoC,EAAC,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAC,4BAA4B,EAAC,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,aAAa,CAAC;AACxD,OAAO,EAAC,8BAA8B,EAAC,MAAM,qBAAqB,CAAC;AAEnE,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAoB,EACpB,YAA+B,EAC/B,2BAA+C,EAC/C,WAA8B,EAC9B,mBAAyC,EACzC,IAGC;IAED,yBAAyB;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG;QACpB,2BAA2B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC;QACtE,GAAG,iCAAiC,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;QACvE,GAAG,iCAAiC,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;QACvE,GAAG,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,CAAC;QACvF,GAAG,8BAA8B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;KACrE,CAAC;IAEF,IAAI,CAAC,IAAI,EAAE,qBAAqB,EAAE,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,2DAA2D;IAC3D,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,yBAAyB,GAAG,4BAA4B,CAC5D,MAAM,EACN,YAAY,EACZ,2BAA2B,EAC1B,WAAwC,CAAC,OAAO,CAClD,CAAC;QACF,2FAA2F;QAC3F,IAAI,yBAAyB,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,iCAAiC,GAAG,oCAAoC,CAC5E,MAAM,EACN,WAAwC,CACzC,CAAC;QACF,IAAI,iCAAiC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,aAAa,CAAC,IAAI,CAAC,GAAG,iCAAiC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signatureSets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAC,4BAA4B,EAAC,MAAM,kCAAkC,CAAC;AAI9E,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,oCAAoC,EAAC,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAC,4BAA4B,EAAC,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAC,4BAA4B,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,iCAAiC,EAAC,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAC,2BAA2B,EAAC,MAAM,aAAa,CAAC;AACxD,OAAO,EAAC,8BAA8B,EAAC,MAAM,qBAAqB,CAAC;AAEnE,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AAEpC;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAoB,EACpB,YAA+B,EAC/B,2BAA+C,EAC/C,WAA8B,EAC9B,mBAAyC,EACzC,IAGC;IAED,yBAAyB;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG;QACpB,2BAA2B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC;QACtE,GAAG,iCAAiC,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;QACvE,GAAG,iCAAiC,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;QACvE,GAAG,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,CAAC;QACvF,GAAG,8BAA8B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;KACrE,CAAC;IAEF,IAAI,CAAC,IAAI,EAAE,qBAAqB,EAAE,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,2DAA2D;IAC3D,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,yBAAyB,GAAG,4BAA4B,CAC5D,MAAM,EACN,YAAY,EACZ,2BAA2B,EAC1B,WAAwC,CAAC,OAAO,CAClD,CAAC;QACF,2FAA2F;QAC3F,IAAI,yBAAyB,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,iCAAiC,GAAG,oCAAoC,CAC5E,MAAM,EACN,WAAwC,CACzC,CAAC;QACF,IAAI,iCAAiC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,aAAa,CAAC,IAAI,CAAC,GAAG,iCAAiC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { gloas } from "@lodestar/types";
2
- import { CachedBeaconStateGloas } from "../types.ts";
3
- import { ISignatureSet } from "../util/index.ts";
2
+ import { CachedBeaconStateGloas } from "../types.js";
3
+ import { ISignatureSet } from "../util/index.js";
4
4
  export declare function getIndexedPayloadAttestationSignatureSet(state: CachedBeaconStateGloas, indexedPayloadAttestation: gloas.IndexedPayloadAttestation): ISignatureSet;
5
5
  export declare function getPayloadAttestationDataSigningRoot(state: CachedBeaconStateGloas, data: gloas.PayloadAttestationData): Uint8Array;
6
6
  //# sourceMappingURL=indexedPayloadAttestation.d.ts.map
@@ -1,6 +1,7 @@
1
+ import { BuilderIndex, ValidatorIndex } from "@lodestar/types";
1
2
  import { AttestationData } from "@lodestar/types/phase0";
2
- import { CachedBeaconStateGloas } from "../types.ts";
3
- import { RootCache } from "./rootCache.ts";
3
+ import { CachedBeaconStateGloas } from "../types.js";
4
+ import { RootCache } from "./rootCache.js";
4
5
  export declare function isBuilderWithdrawalCredential(withdrawalCredentials: Uint8Array): boolean;
5
6
  export declare function getBuilderPaymentQuorumThreshold(state: CachedBeaconStateGloas): number;
6
7
  /**
@@ -12,39 +13,39 @@ export declare function isBuilderIndex(validatorIndex: number): boolean;
12
13
  * Convert a builder index to a flagged validator index for use in Withdrawal containers.
13
14
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-convert_builder_index_to_validator_index
14
15
  */
15
- export declare function convertBuilderIndexToValidatorIndex(builderIndex: number): number;
16
+ export declare function convertBuilderIndexToValidatorIndex(builderIndex: BuilderIndex): ValidatorIndex;
16
17
  /**
17
18
  * Convert a flagged validator index back to a builder index.
18
19
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-convert_validator_index_to_builder_index
19
20
  */
20
- export declare function convertValidatorIndexToBuilderIndex(validatorIndex: number): number;
21
+ export declare function convertValidatorIndexToBuilderIndex(validatorIndex: ValidatorIndex): BuilderIndex;
21
22
  /**
22
23
  * Check if a builder is active (deposited and not yet withdrawable).
23
24
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#isactivebuilder
24
25
  */
25
- export declare function isActiveBuilder(state: CachedBeaconStateGloas, builderIndex: number): boolean;
26
+ export declare function isActiveBuilder(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): boolean;
26
27
  /**
27
28
  * Get the total pending balance to withdraw for a builder (from withdrawals + payments).
28
29
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-get_pending_balance_to_withdraw_for_builder
29
30
  */
30
- export declare function getPendingBalanceToWithdrawForBuilder(state: CachedBeaconStateGloas, builderIndex: number): number;
31
+ export declare function getPendingBalanceToWithdrawForBuilder(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): number;
31
32
  /**
32
33
  * Check if a builder has sufficient balance to cover a bid amount.
33
34
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-can_builder_cover_bid
34
35
  */
35
- export declare function canBuilderCoverBid(state: CachedBeaconStateGloas, builderIndex: number, bidAmount: number): boolean;
36
+ export declare function canBuilderCoverBid(state: CachedBeaconStateGloas, builderIndex: BuilderIndex, bidAmount: number): boolean;
36
37
  /**
37
38
  * Initiate a builder exit by setting their withdrawable epoch.
38
39
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-initiate_builder_exit
39
40
  */
40
- export declare function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex: number): void;
41
+ export declare function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): void;
41
42
  /**
42
43
  * Find the index of a builder by their public key.
43
44
  * Returns null if not found.
44
45
  *
45
46
  * May consider builder pubkey cache if performance becomes an issue.
46
47
  */
47
- export declare function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): number | null;
48
+ export declare function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): BuilderIndex | null;
48
49
  export declare function isAttestationSameSlot(state: CachedBeaconStateGloas, data: AttestationData): boolean;
49
50
  export declare function isAttestationSameSlotRootCache(rootCache: RootCache, data: AttestationData): boolean;
50
51
  export declare function isParentBlockFull(state: CachedBeaconStateGloas): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"gloas.d.ts","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAWA,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,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;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAElF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAK5F;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAoBjH;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAUlH;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAW7F;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,sBAAsB,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAOzG;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":"AAWA,OAAO,EAAC,YAAY,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,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;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAE9F;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAEhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAKlG;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 +1 @@
1
- {"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,qCAAqC,EACrC,mCAAmC,EACnC,yBAAyB,EACzB,2BAA2B,EAC3B,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAC,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAG9C,MAAM,UAAU,6BAA6B,CAAC,qBAAiC;IAC7E,OAAO,qBAAqB,CAAC,CAAC,CAAC,KAAK,yBAAyB,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAA6B;IAC5E,MAAM,MAAM,GACV,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,4BAA4B,GAAG,2BAA2B,CAAC,GAAG,eAAe,CAAC;QACzG,mCAAmC,CAAC;IAEtC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,qCAAqC,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,cAAsB;IACnD,OAAO,CAAC,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mCAAmC,CAAC,YAAoB;IACtE,OAAO,YAAY,GAAG,kBAAkB,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mCAAmC,CAAC,cAAsB;IACxE,OAAO,cAAc,GAAG,CAAC,kBAAkB,CAAC;AAC9C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAA6B,EAAE,YAAoB;IACjF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC;IAEvD,OAAO,OAAO,CAAC,YAAY,GAAG,cAAc,IAAI,OAAO,CAAC,iBAAiB,KAAK,gBAAgB,CAAC;AACjG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qCAAqC,CAAC,KAA6B,EAAE,YAAoB;IACvG,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,0BAA0B;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChE,MAAM,UAAU,GAAG,KAAK,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,UAAU,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YAC7C,cAAc,IAAI,UAAU,CAAC,MAAM,CAAC;QACtC,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,OAAO,CAAC,UAAU,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YACrD,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA6B,EAAE,YAAoB,EAAE,SAAiB;IACvG,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,qCAAqC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,kBAAkB,GAAG,cAAc,CAAC;IAEvD,IAAI,OAAO,CAAC,OAAO,GAAG,UAAU,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAA6B,EAAE,YAAoB;IACrF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjD,2CAA2C;IAC3C,IAAI,OAAO,CAAC,iBAAiB,KAAK,gBAAgB,EAAE,CAAC;QACnD,OAAO;IACT,CAAC;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC;AAC5F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAA6B,EAAE,MAAkB;IACxF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAA6B,EAAE,IAAqB;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxG,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IAE5G,OAAO,mBAAmB,IAAI,kBAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,SAAoB,EAAE,IAAqB;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3G,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IAE/G,OAAO,mBAAmB,IAAI,kBAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAA6B;IAC7D,OAAO,eAAe,CAAC,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;AAC3F,CAAC"}
1
+ {"version":3,"file":"gloas.js","sourceRoot":"","sources":["../../src/util/gloas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,qCAAqC,EACrC,mCAAmC,EACnC,yBAAyB,EACzB,2BAA2B,EAC3B,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAC,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAG9C,MAAM,UAAU,6BAA6B,CAAC,qBAAiC;IAC7E,OAAO,qBAAqB,CAAC,CAAC,CAAC,KAAK,yBAAyB,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAA6B;IAC5E,MAAM,MAAM,GACV,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,4BAA4B,GAAG,2BAA2B,CAAC,GAAG,eAAe,CAAC;QACzG,mCAAmC,CAAC;IAEtC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,qCAAqC,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,cAAsB;IACnD,OAAO,CAAC,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mCAAmC,CAAC,YAA0B;IAC5E,OAAO,YAAY,GAAG,kBAAkB,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mCAAmC,CAAC,cAA8B;IAChF,OAAO,cAAc,GAAG,CAAC,kBAAkB,CAAC;AAC9C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAA6B,EAAE,YAA0B;IACvF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC;IAEvD,OAAO,OAAO,CAAC,YAAY,GAAG,cAAc,IAAI,OAAO,CAAC,iBAAiB,KAAK,gBAAgB,CAAC;AACjG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qCAAqC,CACnD,KAA6B,EAC7B,YAA0B;IAE1B,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,0BAA0B;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChE,MAAM,UAAU,GAAG,KAAK,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,UAAU,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YAC7C,cAAc,IAAI,UAAU,CAAC,MAAM,CAAC;QACtC,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,OAAO,CAAC,UAAU,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YACrD,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAA6B,EAC7B,YAA0B,EAC1B,SAAiB;IAEjB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,qCAAqC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,kBAAkB,GAAG,cAAc,CAAC;IAEvD,IAAI,OAAO,CAAC,OAAO,GAAG,UAAU,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAA6B,EAAE,YAA0B;IAC3F,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjD,2CAA2C;IAC3C,IAAI,OAAO,CAAC,iBAAiB,KAAK,gBAAgB,EAAE,CAAC;QACnD,OAAO;IACT,CAAC;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC;AAC5F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAA6B,EAAE,MAAkB;IACxF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAA6B,EAAE,IAAqB;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxG,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IAE5G,OAAO,mBAAmB,IAAI,kBAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,SAAoB,EAAE,IAAqB;IACxF,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3G,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IAE/G,OAAO,mBAAmB,IAAI,kBAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAA6B;IAC7D,OAAO,eAAe,CAAC,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;AAC3F,CAAC"}
@@ -15,6 +15,7 @@ export * from "./epochShuffling.js";
15
15
  export * from "./execution.js";
16
16
  export * from "./finality.js";
17
17
  export * from "./genesis.js";
18
+ export * from "./gloas.js";
18
19
  export * from "./interop.js";
19
20
  export * from "./loadState/index.js";
20
21
  export * from "./rootCache.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
package/lib/util/index.js CHANGED
@@ -15,6 +15,7 @@ export * from "./epochShuffling.js";
15
15
  export * from "./execution.js";
16
16
  export * from "./finality.js";
17
17
  export * from "./genesis.js";
18
+ export * from "./gloas.js";
18
19
  export * from "./interop.js";
19
20
  export * from "./loadState/index.js";
20
21
  export * from "./rootCache.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
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.40.0-dev.63c5c3e7f7",
14
+ "version": "1.40.0-dev.9defa5c09b",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -62,14 +62,14 @@
62
62
  "@chainsafe/pubkey-index-map": "^3.0.0",
63
63
  "@chainsafe/ssz": "^1.2.2",
64
64
  "@chainsafe/swap-or-not-shuffle": "^1.2.1",
65
- "@lodestar/config": "^1.40.0-dev.63c5c3e7f7",
66
- "@lodestar/params": "^1.40.0-dev.63c5c3e7f7",
67
- "@lodestar/types": "^1.40.0-dev.63c5c3e7f7",
68
- "@lodestar/utils": "^1.40.0-dev.63c5c3e7f7",
65
+ "@lodestar/config": "^1.40.0-dev.9defa5c09b",
66
+ "@lodestar/params": "^1.40.0-dev.9defa5c09b",
67
+ "@lodestar/types": "^1.40.0-dev.9defa5c09b",
68
+ "@lodestar/utils": "^1.40.0-dev.9defa5c09b",
69
69
  "bigint-buffer": "^1.1.5"
70
70
  },
71
71
  "devDependencies": {
72
- "@lodestar/api": "^1.40.0-dev.63c5c3e7f7"
72
+ "@lodestar/api": "^1.40.0-dev.9defa5c09b"
73
73
  },
74
74
  "keywords": [
75
75
  "ethereum",
@@ -77,5 +77,5 @@
77
77
  "beacon",
78
78
  "blockchain"
79
79
  ],
80
- "gitHead": "33496b1175076866e5b367c8cc5c530ff76f9ad6"
80
+ "gitHead": "948cfcdb1cbffd00545034a0c8ae6ed1b0c266bb"
81
81
  }
@@ -1,12 +1,13 @@
1
1
  import {PublicKey, Signature, verify} from "@chainsafe/blst";
2
2
  import {byteArrayEquals} from "@chainsafe/ssz";
3
- import {BUILDER_INDEX_SELF_BUILD, DOMAIN_BEACON_BUILDER, ForkPostGloas, SLOTS_PER_EPOCH} from "@lodestar/params";
3
+ import {BUILDER_INDEX_SELF_BUILD, ForkPostGloas, SLOTS_PER_EPOCH} from "@lodestar/params";
4
4
  import {BeaconBlock, gloas, ssz} from "@lodestar/types";
5
5
  import {toHex, toRootHex} from "@lodestar/utils";
6
6
  import {G2_POINT_AT_INFINITY} from "../constants/constants.ts";
7
+ import {getExecutionPayloadBidSigningRoot} from "../signatureSets/executionPayloadBid.js";
7
8
  import {CachedBeaconStateGloas} from "../types.ts";
8
9
  import {canBuilderCoverBid, isActiveBuilder} from "../util/gloas.ts";
9
- import {computeSigningRoot, getCurrentEpoch, getRandaoMix} from "../util/index.ts";
10
+ import {getCurrentEpoch, getRandaoMix} from "../util/index.ts";
10
11
 
11
12
  export function processExecutionPayloadBid(state: CachedBeaconStateGloas, block: BeaconBlock<ForkPostGloas>): void {
12
13
  const signedBid = block.body.signedExecutionPayloadBid;
@@ -84,8 +85,7 @@ function verifyExecutionPayloadBidSignature(
84
85
  pubkey: Uint8Array,
85
86
  signedBid: gloas.SignedExecutionPayloadBid
86
87
  ): boolean {
87
- const domain = state.config.getDomain(state.slot, DOMAIN_BEACON_BUILDER);
88
- const signingRoot = computeSigningRoot(ssz.gloas.ExecutionPayloadBid, signedBid.message, domain);
88
+ const signingRoot = getExecutionPayloadBidSigningRoot(state.config, state, signedBid.message);
89
89
 
90
90
  try {
91
91
  const publicKey = PublicKey.fromBytes(pubkey);
@@ -0,0 +1,15 @@
1
+ import {BeaconConfig} from "@lodestar/config";
2
+ import {DOMAIN_BEACON_BUILDER} from "@lodestar/params";
3
+ import {gloas, ssz} from "@lodestar/types";
4
+ import {CachedBeaconStateGloas} from "../types.js";
5
+ import {computeSigningRoot} from "../util/index.js";
6
+
7
+ export function getExecutionPayloadBidSigningRoot(
8
+ config: BeaconConfig,
9
+ state: CachedBeaconStateGloas,
10
+ bid: gloas.ExecutionPayloadBid
11
+ ): Uint8Array {
12
+ const domain = config.getDomain(state.slot, DOMAIN_BEACON_BUILDER);
13
+
14
+ return computeSigningRoot(ssz.gloas.ExecutionPayloadBid, bid, domain);
15
+ }
@@ -0,0 +1,13 @@
1
+ import {BeaconConfig} from "@lodestar/config";
2
+ import {DOMAIN_BEACON_BUILDER} from "@lodestar/params";
3
+ import {gloas, ssz} from "@lodestar/types";
4
+ import {computeSigningRoot} from "../util/index.js";
5
+
6
+ export function getExecutionPayloadEnvelopeSigningRoot(
7
+ config: BeaconConfig,
8
+ envelope: gloas.ExecutionPayloadEnvelope
9
+ ): Uint8Array {
10
+ const domain = config.getDomain(envelope.slot, DOMAIN_BEACON_BUILDER);
11
+
12
+ return computeSigningRoot(ssz.gloas.ExecutionPayloadEnvelope, envelope, domain);
13
+ }
@@ -15,6 +15,8 @@ import {getVoluntaryExitsSignatureSets} from "./voluntaryExits.js";
15
15
 
16
16
  export * from "./attesterSlashings.js";
17
17
  export * from "./blsToExecutionChange.js";
18
+ export * from "./executionPayloadBid.js";
19
+ export * from "./executionPayloadEnvelope.js";
18
20
  export * from "./indexedAttestation.js";
19
21
  export * from "./indexedPayloadAttestation.js";
20
22
  export * from "./proposer.js";
@@ -1,7 +1,7 @@
1
1
  import {DOMAIN_PTC_ATTESTER} from "@lodestar/params";
2
2
  import {gloas, ssz} from "@lodestar/types";
3
- import {CachedBeaconStateGloas} from "../types.ts";
4
- import {ISignatureSet, computeSigningRoot, createAggregateSignatureSetFromComponents} from "../util/index.ts";
3
+ import {CachedBeaconStateGloas} from "../types.js";
4
+ import {ISignatureSet, computeSigningRoot, createAggregateSignatureSetFromComponents} from "../util/index.js";
5
5
 
6
6
  export function getIndexedPayloadAttestationSignatureSet(
7
7
  state: CachedBeaconStateGloas,
package/src/util/gloas.ts CHANGED
@@ -9,11 +9,12 @@ import {
9
9
  MIN_DEPOSIT_AMOUNT,
10
10
  SLOTS_PER_EPOCH,
11
11
  } from "@lodestar/params";
12
+ import {BuilderIndex, ValidatorIndex} from "@lodestar/types";
12
13
  import {AttestationData} from "@lodestar/types/phase0";
13
- import {CachedBeaconStateGloas} from "../types.ts";
14
- import {getBlockRootAtSlot} from "./blockRoot.ts";
15
- import {computeEpochAtSlot} from "./epoch.ts";
16
- import {RootCache} from "./rootCache.ts";
14
+ import {CachedBeaconStateGloas} from "../types.js";
15
+ import {getBlockRootAtSlot} from "./blockRoot.js";
16
+ import {computeEpochAtSlot} from "./epoch.js";
17
+ import {RootCache} from "./rootCache.js";
17
18
 
18
19
  export function isBuilderWithdrawalCredential(withdrawalCredentials: Uint8Array): boolean {
19
20
  return withdrawalCredentials[0] === BUILDER_WITHDRAWAL_PREFIX;
@@ -39,7 +40,7 @@ export function isBuilderIndex(validatorIndex: number): boolean {
39
40
  * Convert a builder index to a flagged validator index for use in Withdrawal containers.
40
41
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-convert_builder_index_to_validator_index
41
42
  */
42
- export function convertBuilderIndexToValidatorIndex(builderIndex: number): number {
43
+ export function convertBuilderIndexToValidatorIndex(builderIndex: BuilderIndex): ValidatorIndex {
43
44
  return builderIndex | BUILDER_INDEX_FLAG;
44
45
  }
45
46
 
@@ -47,7 +48,7 @@ export function convertBuilderIndexToValidatorIndex(builderIndex: number): numbe
47
48
  * Convert a flagged validator index back to a builder index.
48
49
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-convert_validator_index_to_builder_index
49
50
  */
50
- export function convertValidatorIndexToBuilderIndex(validatorIndex: number): number {
51
+ export function convertValidatorIndexToBuilderIndex(validatorIndex: ValidatorIndex): BuilderIndex {
51
52
  return validatorIndex & ~BUILDER_INDEX_FLAG;
52
53
  }
53
54
 
@@ -55,7 +56,7 @@ export function convertValidatorIndexToBuilderIndex(validatorIndex: number): num
55
56
  * Check if a builder is active (deposited and not yet withdrawable).
56
57
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#isactivebuilder
57
58
  */
58
- export function isActiveBuilder(state: CachedBeaconStateGloas, builderIndex: number): boolean {
59
+ export function isActiveBuilder(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): boolean {
59
60
  const builder = state.builders.getReadonly(builderIndex);
60
61
  const finalizedEpoch = state.finalizedCheckpoint.epoch;
61
62
 
@@ -66,7 +67,10 @@ export function isActiveBuilder(state: CachedBeaconStateGloas, builderIndex: num
66
67
  * Get the total pending balance to withdraw for a builder (from withdrawals + payments).
67
68
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-get_pending_balance_to_withdraw_for_builder
68
69
  */
69
- export function getPendingBalanceToWithdrawForBuilder(state: CachedBeaconStateGloas, builderIndex: number): number {
70
+ export function getPendingBalanceToWithdrawForBuilder(
71
+ state: CachedBeaconStateGloas,
72
+ builderIndex: BuilderIndex
73
+ ): number {
70
74
  let pendingBalance = 0;
71
75
 
72
76
  // Sum pending withdrawals
@@ -92,7 +96,11 @@ export function getPendingBalanceToWithdrawForBuilder(state: CachedBeaconStateGl
92
96
  * Check if a builder has sufficient balance to cover a bid amount.
93
97
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-can_builder_cover_bid
94
98
  */
95
- export function canBuilderCoverBid(state: CachedBeaconStateGloas, builderIndex: number, bidAmount: number): boolean {
99
+ export function canBuilderCoverBid(
100
+ state: CachedBeaconStateGloas,
101
+ builderIndex: BuilderIndex,
102
+ bidAmount: number
103
+ ): boolean {
96
104
  const builder = state.builders.getReadonly(builderIndex);
97
105
  const pendingBalance = getPendingBalanceToWithdrawForBuilder(state, builderIndex);
98
106
  const minBalance = MIN_DEPOSIT_AMOUNT + pendingBalance;
@@ -108,7 +116,7 @@ export function canBuilderCoverBid(state: CachedBeaconStateGloas, builderIndex:
108
116
  * Initiate a builder exit by setting their withdrawable epoch.
109
117
  * Spec: https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.1/specs/gloas/beacon-chain.md#new-initiate_builder_exit
110
118
  */
111
- export function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex: number): void {
119
+ export function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex: BuilderIndex): void {
112
120
  const builder = state.builders.get(builderIndex);
113
121
 
114
122
  // Return if builder already initiated exit
@@ -127,7 +135,7 @@ export function initiateBuilderExit(state: CachedBeaconStateGloas, builderIndex:
127
135
  *
128
136
  * May consider builder pubkey cache if performance becomes an issue.
129
137
  */
130
- export function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): number | null {
138
+ export function findBuilderIndexByPubkey(state: CachedBeaconStateGloas, pubkey: Uint8Array): BuilderIndex | null {
131
139
  for (let i = 0; i < state.builders.length; i++) {
132
140
  if (byteArrayEquals(state.builders.getReadonly(i).pubkey, pubkey)) {
133
141
  return i;
package/src/util/index.ts CHANGED
@@ -15,6 +15,7 @@ export * from "./epochShuffling.js";
15
15
  export * from "./execution.js";
16
16
  export * from "./finality.js";
17
17
  export * from "./genesis.js";
18
+ export * from "./gloas.js";
18
19
  export * from "./interop.js";
19
20
  export * from "./loadState/index.js";
20
21
  export * from "./rootCache.js";