@lodestar/validator 1.46.0-dev.cdb6b1a0d2 → 1.46.0-dev.d96240a05e

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.
@@ -1 +1 @@
1
- {"version":3,"file":"genesis.d.ts","sourceRoot":"","sources":["../src/genesis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AACxC,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAC,MAAM,EAAQ,MAAM,iBAAiB,CAAC;AAK9C,wBAAsB,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAW3G"}
1
+ {"version":3,"file":"genesis.d.ts","sourceRoot":"","sources":["../src/genesis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAA2B,MAAM,eAAe,CAAC;AAClE,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAC,MAAM,EAAQ,MAAM,iBAAiB,CAAC;AAK9C,wBAAsB,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAa3G"}
package/lib/genesis.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { ApiError, HttpStatusCode } from "@lodestar/api";
1
2
  import { sleep } from "@lodestar/utils";
2
3
  /** The time between polls when waiting for genesis */
3
4
  const WAITING_FOR_GENESIS_POLL_MS = 12 * 1000;
@@ -7,9 +8,12 @@ export async function waitForGenesis(api, logger, signal) {
7
8
  return (await api.beacon.getGenesis()).value();
8
9
  }
9
10
  catch (e) {
10
- // TODO: Search for a 404 error which indicates that genesis has not yet occurred.
11
- // Note: Lodestar API does not become online after genesis is found
12
- logger.info("Waiting for genesis", { message: e.message });
11
+ if (e instanceof ApiError && e.status === HttpStatusCode.NOT_FOUND) {
12
+ logger.info("Waiting for genesis", { message: e.message });
13
+ }
14
+ else {
15
+ logger.warn("Failed to fetch genesis", { message: e.message });
16
+ }
13
17
  await sleep(WAITING_FOR_GENESIS_POLL_MS, signal);
14
18
  }
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"genesis.js","sourceRoot":"","sources":["../src/genesis.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAE9C,sDAAsD;AACtD,MAAM,2BAA2B,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAc,EAAE,MAAc,EAAE,MAAoB,EAAoB;IAC3G,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kFAAkF;YAClF,mEAAmE;YACnE,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAC,OAAO,EAAG,CAAW,CAAC,OAAO,EAAC,CAAC,CAAC;YACpE,MAAM,KAAK,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;AAAA,CACF"}
1
+ {"version":3,"file":"genesis.js","sourceRoot":"","sources":["../src/genesis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,cAAc,EAAC,MAAM,eAAe,CAAC;AAElE,OAAO,EAAS,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAE9C,sDAAsD;AACtD,MAAM,2BAA2B,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAc,EAAE,MAAc,EAAE,MAAoB,EAAoB;IAC3G,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAC,OAAO,EAAG,CAAW,CAAC,OAAO,EAAC,CAAC,CAAC;YAC1E,CAAC;YACD,MAAM,KAAK,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;AAAA,CACF"}
@@ -2,6 +2,5 @@ export * from "./batch.js";
2
2
  export * from "./clock.js";
3
3
  export * from "./difference.js";
4
4
  export * from "./logger.js";
5
- export * from "./params.js";
6
5
  export * from "./url.js";
7
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
package/lib/util/index.js CHANGED
@@ -2,6 +2,5 @@ export * from "./batch.js";
2
2
  export * from "./clock.js";
3
3
  export * from "./difference.js";
4
4
  export * from "./logger.js";
5
- export * from "./params.js";
6
5
  export * from "./url.js";
7
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/lib/validator.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defaultInit, getClient } from "@lodestar/api";
2
- import { createBeaconConfig } from "@lodestar/config";
2
+ import { NotEqualParamsError, assertEqualParams, createBeaconConfig, } from "@lodestar/config";
3
3
  import { computeEpochAtSlot, getCurrentSlot } from "@lodestar/state-transition";
4
4
  import { ssz } from "@lodestar/types";
5
5
  import { toPrintableUrl, toRootHex } from "@lodestar/utils";
@@ -20,7 +20,7 @@ import { SyncCommitteeService } from "./services/syncCommittee.js";
20
20
  import { SyncingStatusTracker } from "./services/syncingStatusTracker.js";
21
21
  import { ValidatorStore, defaultOptions } from "./services/validatorStore.js";
22
22
  import { Clock } from "./util/clock.js";
23
- import { NotEqualParamsError, assertEqualParams, getLoggerVc } from "./util/index.js";
23
+ import { getLoggerVc } from "./util/index.js";
24
24
  // TODO: Extend the timeout, and let it be customizable
25
25
  /// The global timeout for HTTP requests to the beacon node.
26
26
  // const HTTP_TIMEOUT_MS = 12 * 1000;
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodestar/validator",
3
- "version": "1.46.0-dev.cdb6b1a0d2",
3
+ "version": "1.46.0-dev.d96240a05e",
4
4
  "description": "A Typescript implementation of the validator client",
5
5
  "author": "ChainSafe Systems",
6
6
  "license": "Apache-2.0",
@@ -50,21 +50,21 @@
50
50
  "dependencies": {
51
51
  "@chainsafe/blst": "^2.2.0",
52
52
  "@chainsafe/ssz": "^1.6.2",
53
- "@lodestar/api": "^1.46.0-dev.cdb6b1a0d2",
54
- "@lodestar/config": "^1.46.0-dev.cdb6b1a0d2",
55
- "@lodestar/db": "^1.46.0-dev.cdb6b1a0d2",
56
- "@lodestar/params": "^1.46.0-dev.cdb6b1a0d2",
57
- "@lodestar/state-transition": "^1.46.0-dev.cdb6b1a0d2",
58
- "@lodestar/types": "^1.46.0-dev.cdb6b1a0d2",
59
- "@lodestar/utils": "^1.46.0-dev.cdb6b1a0d2",
53
+ "@lodestar/api": "^1.46.0-dev.d96240a05e",
54
+ "@lodestar/config": "^1.46.0-dev.d96240a05e",
55
+ "@lodestar/db": "^1.46.0-dev.d96240a05e",
56
+ "@lodestar/params": "^1.46.0-dev.d96240a05e",
57
+ "@lodestar/state-transition": "^1.46.0-dev.d96240a05e",
58
+ "@lodestar/types": "^1.46.0-dev.d96240a05e",
59
+ "@lodestar/utils": "^1.46.0-dev.d96240a05e",
60
60
  "strict-event-emitter-types": "^2.0.0"
61
61
  },
62
62
  "devDependencies": {
63
- "@lodestar/logger": "^1.46.0-dev.cdb6b1a0d2",
64
- "@lodestar/spec-test-util": "^1.46.0-dev.cdb6b1a0d2",
65
- "@lodestar/test-utils": "^1.46.0-dev.cdb6b1a0d2",
63
+ "@lodestar/logger": "^1.46.0-dev.d96240a05e",
64
+ "@lodestar/spec-test-util": "^1.46.0-dev.d96240a05e",
65
+ "@lodestar/test-utils": "^1.46.0-dev.d96240a05e",
66
66
  "@vekexasia/bigint-buffer2": "^1.1.1",
67
67
  "rimraf": "^4.4.1"
68
68
  },
69
- "gitHead": "0c1dab33e2bd63666ca69d001a4f43dd595bdd48"
69
+ "gitHead": "13dc301178bf8758a83823d784472034ff91860a"
70
70
  }
package/src/genesis.ts CHANGED
@@ -1,4 +1,4 @@
1
- import {ApiClient} from "@lodestar/api";
1
+ import {ApiClient, ApiError, HttpStatusCode} from "@lodestar/api";
2
2
  import {Genesis} from "@lodestar/types/phase0";
3
3
  import {Logger, sleep} from "@lodestar/utils";
4
4
 
@@ -10,9 +10,11 @@ export async function waitForGenesis(api: ApiClient, logger: Logger, signal?: Ab
10
10
  try {
11
11
  return (await api.beacon.getGenesis()).value();
12
12
  } catch (e) {
13
- // TODO: Search for a 404 error which indicates that genesis has not yet occurred.
14
- // Note: Lodestar API does not become online after genesis is found
15
- logger.info("Waiting for genesis", {message: (e as Error).message});
13
+ if (e instanceof ApiError && e.status === HttpStatusCode.NOT_FOUND) {
14
+ logger.info("Waiting for genesis", {message: e.message});
15
+ } else {
16
+ logger.warn("Failed to fetch genesis", {message: (e as Error).message});
17
+ }
16
18
  await sleep(WAITING_FOR_GENESIS_POLL_MS, signal);
17
19
  }
18
20
  }
package/src/util/index.ts CHANGED
@@ -2,5 +2,4 @@ export * from "./batch.js";
2
2
  export * from "./clock.js";
3
3
  export * from "./difference.js";
4
4
  export * from "./logger.js";
5
- export * from "./params.js";
6
5
  export * from "./url.js";
package/src/validator.ts CHANGED
@@ -1,5 +1,11 @@
1
1
  import {ApiClient, ApiRequestInit, defaultInit, getClient, routes} from "@lodestar/api";
2
- import {BeaconConfig, ChainForkConfig, createBeaconConfig} from "@lodestar/config";
2
+ import {
3
+ BeaconConfig,
4
+ ChainForkConfig,
5
+ NotEqualParamsError,
6
+ assertEqualParams,
7
+ createBeaconConfig,
8
+ } from "@lodestar/config";
3
9
  import {computeEpochAtSlot, getCurrentSlot} from "@lodestar/state-transition";
4
10
  import {BLSPubkey, phase0, ssz} from "@lodestar/types";
5
11
  import {Genesis} from "@lodestar/types/phase0";
@@ -24,7 +30,7 @@ import {Signer, ValidatorProposerConfig, ValidatorStore, defaultOptions} from ".
24
30
  import {ISlashingProtection, Interchange, InterchangeFormatVersion} from "./slashingProtection/index.js";
25
31
  import {LodestarValidatorDatabaseController, ProcessShutdownCallback, PubkeyHex} from "./types.js";
26
32
  import {Clock, ClockOptions, IClock} from "./util/clock.js";
27
- import {NotEqualParamsError, assertEqualParams, getLoggerVc} from "./util/index.js";
33
+ import {getLoggerVc} from "./util/index.js";
28
34
 
29
35
  export type ValidatorModules = {
30
36
  opts: ValidatorOptions;
@@ -1,20 +0,0 @@
1
- import { ChainConfig, SpecJson } from "@lodestar/config";
2
- export declare class NotEqualParamsError extends Error {
3
- }
4
- /**
5
- * Assert localConfig values match externalSpecJson. externalSpecJson may contain more values than localConfig.
6
- *
7
- * This check ensures that the validator is connected to a beacon node of the exact same network and params.
8
- * Otherwise, signatures may be rejected, time may be un-equal and other bugs that are harder to debug caused
9
- * by different parameters.
10
- *
11
- * This check however can't compare the full config as is, since some parameters are not critical to the spec and
12
- * can be changed un-expectedly. Also, fork parameters can change un-expectedly, like their _FORK_VERSION or _EPOCH.
13
- * Note that the config API endpoint is not precisely specified, so each clients can return a different set of
14
- * parameters.
15
- *
16
- * So this check only compares a specific list of parameters that are consensus critical, ignoring the rest. Typed
17
- * config and preset ensure new parameters are labeled critical or ignore, facilitating maintenance of the list.
18
- */
19
- export declare function assertEqualParams(localConfig: ChainConfig, externalSpecJson: SpecJson): void;
20
- //# sourceMappingURL=params.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,WAAW,EAAE,QAAQ,EAA6C,MAAM,kBAAkB,CAAC;AAGtH,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAIjD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,GAAG,IAAI,CAyE5F"}
@@ -1,298 +0,0 @@
1
- import { chainConfigToJson, deserializeBlobSchedule } from "@lodestar/config";
2
- import { activePreset, presetToJson } from "@lodestar/params";
3
- export class NotEqualParamsError extends Error {
4
- }
5
- /**
6
- * Assert localConfig values match externalSpecJson. externalSpecJson may contain more values than localConfig.
7
- *
8
- * This check ensures that the validator is connected to a beacon node of the exact same network and params.
9
- * Otherwise, signatures may be rejected, time may be un-equal and other bugs that are harder to debug caused
10
- * by different parameters.
11
- *
12
- * This check however can't compare the full config as is, since some parameters are not critical to the spec and
13
- * can be changed un-expectedly. Also, fork parameters can change un-expectedly, like their _FORK_VERSION or _EPOCH.
14
- * Note that the config API endpoint is not precisely specified, so each clients can return a different set of
15
- * parameters.
16
- *
17
- * So this check only compares a specific list of parameters that are consensus critical, ignoring the rest. Typed
18
- * config and preset ensure new parameters are labeled critical or ignore, facilitating maintenance of the list.
19
- */
20
- export function assertEqualParams(localConfig, externalSpecJson) {
21
- // Before comparing, add preset which is bundled in api impl config route.
22
- // config and preset must be serialized to JSON for safe comparisions.
23
- const localSpecJson = {
24
- ...chainConfigToJson(localConfig),
25
- ...presetToJson(activePreset),
26
- };
27
- // Get list of keys to check, and keys to ignore. Otherwise this function throws for false positives
28
- const criticalParams = getSpecCriticalParams(localConfig);
29
- // Accumulate errors first and print all of them at once
30
- const errors = [];
31
- for (const key of Object.keys(criticalParams)) {
32
- if (
33
- // Ignore non-critical params
34
- !criticalParams[key] ||
35
- // This condition should never be true, but just in case
36
- localSpecJson[key] === undefined ||
37
- // The config/spec endpoint is poorly specified, so in practice each client returns a custom selection of keys.
38
- // For example Lighthouse returns a manually selected list of keys that may be updated at any time.
39
- // https://github.com/sigp/lighthouse/blob/bac7c3fa544495a257722aaad9cd8f72fee2f2b4/consensus/types/src/chain_spec.rs#L941
40
- //
41
- // So if we assert that spec critical keys are present in the spec we may break interoperability unexpectedly.
42
- // So it's best to ignore keys are not defined in both specs and trust that the ones defined are sufficient
43
- // to detect spec discrepancies in all cases.
44
- externalSpecJson[key] === undefined) {
45
- continue;
46
- }
47
- if (key === "BLOB_SCHEDULE") {
48
- const localBlobSchedule = deserializeBlobSchedule(localSpecJson[key]).sort((a, b) => a.EPOCH - b.EPOCH);
49
- const remoteBlobSchedule = deserializeBlobSchedule(externalSpecJson[key]).sort((a, b) => a.EPOCH - b.EPOCH);
50
- if (localBlobSchedule.length !== remoteBlobSchedule.length) {
51
- errors.push(`BLOB_SCHEDULE different length: ${localBlobSchedule.length} != ${remoteBlobSchedule.length}`);
52
- // Skip per entry comparison
53
- continue;
54
- }
55
- for (let i = 0; i < localBlobSchedule.length; i++) {
56
- const localEntry = localBlobSchedule[i];
57
- const remoteEntry = remoteBlobSchedule[i];
58
- for (const entryKey of ["EPOCH", "MAX_BLOBS_PER_BLOCK"]) {
59
- const localValue = String(localEntry[entryKey]);
60
- const remoteValue = String(remoteEntry[entryKey]);
61
- if (localValue !== remoteValue) {
62
- errors.push(`BLOB_SCHEDULE[${i}].${entryKey} different value: ${localValue} != ${remoteValue}`);
63
- }
64
- }
65
- }
66
- // Skip generic string comparison
67
- continue;
68
- }
69
- // Must compare JSON serialized specs, to ensure all strings are rendered in the same way
70
- // Must compare as lowercase to ensure checksum addresses and names have same capilatization
71
- const localValue = String(localSpecJson[key]).toLocaleLowerCase();
72
- const remoteValue = String(externalSpecJson[key]).toLocaleLowerCase();
73
- if (localValue !== remoteValue) {
74
- errors.push(`${key} different value: ${localValue} != ${remoteValue}`);
75
- }
76
- }
77
- if (errors.length > 0) {
78
- throw new NotEqualParamsError("Local and remote configs are different\n" + errors.join("\n"));
79
- }
80
- }
81
- function getSpecCriticalParams(localConfig) {
82
- const altairForkRelevant = localConfig.ALTAIR_FORK_EPOCH < Infinity;
83
- const bellatrixForkRelevant = localConfig.BELLATRIX_FORK_EPOCH < Infinity;
84
- const capellaForkRelevant = localConfig.CAPELLA_FORK_EPOCH < Infinity;
85
- const denebForkRelevant = localConfig.DENEB_FORK_EPOCH < Infinity;
86
- const electraForkRelevant = localConfig.ELECTRA_FORK_EPOCH < Infinity;
87
- const fuluForkRelevant = localConfig.FULU_FORK_EPOCH < Infinity;
88
- const gloasForkRelevant = localConfig.GLOAS_FORK_EPOCH < Infinity;
89
- return {
90
- // # Config
91
- ///////////
92
- PRESET_BASE: false, // Not relevant, each preset value is checked below
93
- CONFIG_NAME: false, // Arbitrary string, not relevant
94
- // Deprecated - All networks have completed the merge transition
95
- TERMINAL_TOTAL_DIFFICULTY: false,
96
- TERMINAL_BLOCK_HASH: false,
97
- TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: false,
98
- // Genesis
99
- MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: true,
100
- MIN_GENESIS_TIME: true,
101
- GENESIS_FORK_VERSION: true,
102
- GENESIS_DELAY: true,
103
- // Forking
104
- // Altair
105
- ALTAIR_FORK_VERSION: altairForkRelevant,
106
- ALTAIR_FORK_EPOCH: altairForkRelevant,
107
- // Bellatrix
108
- BELLATRIX_FORK_VERSION: bellatrixForkRelevant,
109
- BELLATRIX_FORK_EPOCH: bellatrixForkRelevant,
110
- // Capella
111
- CAPELLA_FORK_VERSION: capellaForkRelevant,
112
- CAPELLA_FORK_EPOCH: capellaForkRelevant,
113
- // Deneb
114
- DENEB_FORK_VERSION: denebForkRelevant,
115
- DENEB_FORK_EPOCH: denebForkRelevant,
116
- // electra
117
- ELECTRA_FORK_VERSION: electraForkRelevant,
118
- ELECTRA_FORK_EPOCH: electraForkRelevant,
119
- // fulu
120
- FULU_FORK_VERSION: fuluForkRelevant,
121
- FULU_FORK_EPOCH: fuluForkRelevant,
122
- // gloas
123
- GLOAS_FORK_VERSION: gloasForkRelevant,
124
- GLOAS_FORK_EPOCH: gloasForkRelevant,
125
- // Time parameters
126
- SECONDS_PER_SLOT: false, // Deprecated
127
- SLOT_DURATION_MS: true,
128
- SECONDS_PER_ETH1_BLOCK: false, // Legacy
129
- MIN_VALIDATOR_WITHDRAWABILITY_DELAY: true,
130
- SHARD_COMMITTEE_PERIOD: true,
131
- ETH1_FOLLOW_DISTANCE: true,
132
- PROPOSER_REORG_CUTOFF_BPS: true,
133
- ATTESTATION_DUE_BPS: true,
134
- AGGREGATE_DUE_BPS: true,
135
- // Altair
136
- SYNC_MESSAGE_DUE_BPS: altairForkRelevant,
137
- CONTRIBUTION_DUE_BPS: altairForkRelevant,
138
- // Validator cycle
139
- INACTIVITY_SCORE_BIAS: true,
140
- INACTIVITY_SCORE_RECOVERY_RATE: true,
141
- EJECTION_BALANCE: true,
142
- MIN_PER_EPOCH_CHURN_LIMIT: true,
143
- MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: denebForkRelevant,
144
- CHURN_LIMIT_QUOTIENT: true,
145
- // Fork choice
146
- PROPOSER_SCORE_BOOST: false, // Ignored as it's changing https://github.com/ethereum/consensus-specs/pull/2895
147
- REORG_HEAD_WEIGHT_THRESHOLD: false, // Non-critical since proposer boost reorg is optional feature
148
- REORG_PARENT_WEIGHT_THRESHOLD: false, // Non-critical since proposer boost reorg is optional feature
149
- REORG_MAX_EPOCHS_SINCE_FINALIZATION: false, // Non-critical since proposer boost reorg is optional feature
150
- // Deposit contract
151
- DEPOSIT_CHAIN_ID: false, // Non-critical
152
- DEPOSIT_NETWORK_ID: false, // Non-critical
153
- DEPOSIT_CONTRACT_ADDRESS: true,
154
- // Networking (non-critical as those do not affect consensus)
155
- MAX_PAYLOAD_SIZE: false,
156
- EPOCHS_PER_SUBNET_SUBSCRIPTION: false,
157
- ATTESTATION_PROPAGATION_SLOT_RANGE: false,
158
- MAXIMUM_GOSSIP_CLOCK_DISPARITY: false,
159
- MESSAGE_DOMAIN_INVALID_SNAPPY: false,
160
- MESSAGE_DOMAIN_VALID_SNAPPY: false,
161
- SUBNETS_PER_NODE: false,
162
- MAX_REQUEST_BLOCKS: false,
163
- MAX_REQUEST_BLOCKS_DENEB: false,
164
- MIN_EPOCHS_FOR_BLOCK_REQUESTS: false,
165
- MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: false,
166
- MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: false,
167
- BLOB_SIDECAR_SUBNET_COUNT: false,
168
- BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: false,
169
- DATA_COLUMN_SIDECAR_SUBNET_COUNT: false,
170
- MAX_REQUEST_BLOB_SIDECARS: false,
171
- MAX_REQUEST_BLOB_SIDECARS_ELECTRA: false,
172
- MAX_REQUEST_DATA_COLUMN_SIDECARS: false,
173
- MAX_REQUEST_PAYLOADS: false,
174
- // # Phase0Preset
175
- /////////////////
176
- MAX_COMMITTEES_PER_SLOT: true,
177
- TARGET_COMMITTEE_SIZE: true,
178
- MAX_VALIDATORS_PER_COMMITTEE: true,
179
- SHUFFLE_ROUND_COUNT: true,
180
- HYSTERESIS_QUOTIENT: true,
181
- HYSTERESIS_DOWNWARD_MULTIPLIER: true,
182
- HYSTERESIS_UPWARD_MULTIPLIER: true,
183
- // Gwei Values
184
- MIN_DEPOSIT_AMOUNT: true,
185
- MAX_EFFECTIVE_BALANCE: true,
186
- EFFECTIVE_BALANCE_INCREMENT: true,
187
- // Time parameters
188
- MIN_ATTESTATION_INCLUSION_DELAY: true,
189
- SLOTS_PER_EPOCH: true,
190
- MIN_SEED_LOOKAHEAD: true,
191
- MAX_SEED_LOOKAHEAD: true,
192
- EPOCHS_PER_ETH1_VOTING_PERIOD: true,
193
- SLOTS_PER_HISTORICAL_ROOT: true,
194
- MIN_EPOCHS_TO_INACTIVITY_PENALTY: true,
195
- // State vector lengths
196
- EPOCHS_PER_HISTORICAL_VECTOR: true,
197
- EPOCHS_PER_SLASHINGS_VECTOR: true,
198
- HISTORICAL_ROOTS_LIMIT: true,
199
- VALIDATOR_REGISTRY_LIMIT: true,
200
- // Reward and penalty quotients
201
- BASE_REWARD_FACTOR: true,
202
- WHISTLEBLOWER_REWARD_QUOTIENT: true,
203
- PROPOSER_REWARD_QUOTIENT: true,
204
- INACTIVITY_PENALTY_QUOTIENT: true,
205
- MIN_SLASHING_PENALTY_QUOTIENT: true,
206
- PROPORTIONAL_SLASHING_MULTIPLIER: true,
207
- // Max operations per block
208
- MAX_PROPOSER_SLASHINGS: true,
209
- MAX_ATTESTER_SLASHINGS: true,
210
- MAX_ATTESTATIONS: true,
211
- MAX_DEPOSITS: true,
212
- MAX_VOLUNTARY_EXITS: true,
213
- // # AltairPreset
214
- /////////////////
215
- SYNC_COMMITTEE_SIZE: altairForkRelevant,
216
- EPOCHS_PER_SYNC_COMMITTEE_PERIOD: altairForkRelevant,
217
- INACTIVITY_PENALTY_QUOTIENT_ALTAIR: altairForkRelevant,
218
- MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: altairForkRelevant,
219
- PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: altairForkRelevant,
220
- MIN_SYNC_COMMITTEE_PARTICIPANTS: false, // Only relevant for lightclients
221
- UPDATE_TIMEOUT: false, // Only relevant for lightclients
222
- // # BellatrixPreset
223
- /////////////////
224
- INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: bellatrixForkRelevant,
225
- MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: bellatrixForkRelevant,
226
- PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: bellatrixForkRelevant,
227
- MAX_BYTES_PER_TRANSACTION: bellatrixForkRelevant,
228
- MAX_TRANSACTIONS_PER_PAYLOAD: bellatrixForkRelevant,
229
- BYTES_PER_LOGS_BLOOM: bellatrixForkRelevant,
230
- MAX_EXTRA_DATA_BYTES: bellatrixForkRelevant,
231
- // # CapellaPreset
232
- /////////////////
233
- MAX_BLS_TO_EXECUTION_CHANGES: capellaForkRelevant,
234
- MAX_WITHDRAWALS_PER_PAYLOAD: capellaForkRelevant,
235
- MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: capellaForkRelevant,
236
- // # DenebPreset
237
- /////////////////
238
- FIELD_ELEMENTS_PER_BLOB: denebForkRelevant,
239
- MAX_BLOB_COMMITMENTS_PER_BLOCK: denebForkRelevant,
240
- KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: denebForkRelevant,
241
- MAX_BLOBS_PER_BLOCK: denebForkRelevant,
242
- // ELECTRA
243
- MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: electraForkRelevant,
244
- MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: electraForkRelevant,
245
- MAX_ATTESTER_SLASHINGS_ELECTRA: electraForkRelevant,
246
- MAX_ATTESTATIONS_ELECTRA: electraForkRelevant,
247
- MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: electraForkRelevant,
248
- MAX_PENDING_DEPOSITS_PER_EPOCH: electraForkRelevant,
249
- MAX_EFFECTIVE_BALANCE_ELECTRA: electraForkRelevant,
250
- MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: electraForkRelevant,
251
- MIN_ACTIVATION_BALANCE: electraForkRelevant,
252
- PENDING_DEPOSITS_LIMIT: electraForkRelevant,
253
- PENDING_PARTIAL_WITHDRAWALS_LIMIT: electraForkRelevant,
254
- PENDING_CONSOLIDATIONS_LIMIT: electraForkRelevant,
255
- MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: electraForkRelevant,
256
- WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: electraForkRelevant,
257
- MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: electraForkRelevant,
258
- MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: electraForkRelevant,
259
- MAX_BLOBS_PER_BLOCK_ELECTRA: electraForkRelevant,
260
- // FULU
261
- /////////////////
262
- CELLS_PER_EXT_BLOB: fuluForkRelevant,
263
- FIELD_ELEMENTS_PER_CELL: fuluForkRelevant,
264
- FIELD_ELEMENTS_PER_EXT_BLOB: fuluForkRelevant,
265
- KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: fuluForkRelevant,
266
- NUMBER_OF_COLUMNS: fuluForkRelevant,
267
- NUMBER_OF_CUSTODY_GROUPS: fuluForkRelevant,
268
- SAMPLES_PER_SLOT: fuluForkRelevant,
269
- CUSTODY_REQUIREMENT: fuluForkRelevant,
270
- VALIDATOR_CUSTODY_REQUIREMENT: fuluForkRelevant,
271
- BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: fuluForkRelevant,
272
- BLOB_SCHEDULE: fuluForkRelevant,
273
- // GLOAS
274
- ATTESTATION_DUE_BPS_GLOAS: gloasForkRelevant,
275
- AGGREGATE_DUE_BPS_GLOAS: gloasForkRelevant,
276
- SYNC_MESSAGE_DUE_BPS_GLOAS: gloasForkRelevant,
277
- CONTRIBUTION_DUE_BPS_GLOAS: gloasForkRelevant,
278
- PAYLOAD_ATTESTATION_DUE_BPS: gloasForkRelevant,
279
- PAYLOAD_DUE_BPS: gloasForkRelevant,
280
- PTC_SIZE: gloasForkRelevant,
281
- MAX_PAYLOAD_ATTESTATIONS: gloasForkRelevant,
282
- MAX_BUILDER_DEPOSIT_REQUESTS_PER_PAYLOAD: gloasForkRelevant,
283
- MAX_BUILDER_EXIT_REQUESTS_PER_PAYLOAD: gloasForkRelevant,
284
- MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: gloasForkRelevant,
285
- MAX_SIGNED_AGGREGATE_AND_PROOF_SIZE: false,
286
- MAX_ATTESTER_SLASHING_SIZE: false,
287
- MAX_DATA_COLUMN_SIDECAR_SIZE: false,
288
- MAX_PARTIAL_DATA_COLUMN_SIDECAR_SIZE: false,
289
- MAX_SIGNED_EXECUTION_PAYLOAD_BID_SIZE: false,
290
- MIN_BUILDER_WITHDRAWABILITY_DELAY: gloasForkRelevant,
291
- // FastConfirmationRule
292
- CONFIRMATION_BYZANTINE_THRESHOLD: false,
293
- CHURN_LIMIT_QUOTIENT_GLOAS: gloasForkRelevant,
294
- CONSOLIDATION_CHURN_LIMIT_QUOTIENT: gloasForkRelevant,
295
- MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT_GLOAS: gloasForkRelevant,
296
- };
297
- }
298
- //# sourceMappingURL=params.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"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"}
@@ -1,344 +0,0 @@
1
- import {BlobScheduleEntry, ChainConfig, SpecJson, chainConfigToJson, deserializeBlobSchedule} from "@lodestar/config";
2
- import {BeaconPreset, activePreset, presetToJson} from "@lodestar/params";
3
-
4
- export class NotEqualParamsError extends Error {}
5
-
6
- type ConfigWithPreset = ChainConfig & BeaconPreset;
7
-
8
- /**
9
- * Assert localConfig values match externalSpecJson. externalSpecJson may contain more values than localConfig.
10
- *
11
- * This check ensures that the validator is connected to a beacon node of the exact same network and params.
12
- * Otherwise, signatures may be rejected, time may be un-equal and other bugs that are harder to debug caused
13
- * by different parameters.
14
- *
15
- * This check however can't compare the full config as is, since some parameters are not critical to the spec and
16
- * can be changed un-expectedly. Also, fork parameters can change un-expectedly, like their _FORK_VERSION or _EPOCH.
17
- * Note that the config API endpoint is not precisely specified, so each clients can return a different set of
18
- * parameters.
19
- *
20
- * So this check only compares a specific list of parameters that are consensus critical, ignoring the rest. Typed
21
- * config and preset ensure new parameters are labeled critical or ignore, facilitating maintenance of the list.
22
- */
23
- export function assertEqualParams(localConfig: ChainConfig, externalSpecJson: SpecJson): void {
24
- // Before comparing, add preset which is bundled in api impl config route.
25
- // config and preset must be serialized to JSON for safe comparisions.
26
- const localSpecJson = {
27
- ...chainConfigToJson(localConfig),
28
- ...presetToJson(activePreset),
29
- };
30
-
31
- // Get list of keys to check, and keys to ignore. Otherwise this function throws for false positives
32
- const criticalParams = getSpecCriticalParams(localConfig);
33
-
34
- // Accumulate errors first and print all of them at once
35
- const errors: string[] = [];
36
-
37
- for (const key of Object.keys(criticalParams) as (keyof typeof criticalParams)[]) {
38
- if (
39
- // Ignore non-critical params
40
- !criticalParams[key] ||
41
- // This condition should never be true, but just in case
42
- localSpecJson[key] === undefined ||
43
- // The config/spec endpoint is poorly specified, so in practice each client returns a custom selection of keys.
44
- // For example Lighthouse returns a manually selected list of keys that may be updated at any time.
45
- // https://github.com/sigp/lighthouse/blob/bac7c3fa544495a257722aaad9cd8f72fee2f2b4/consensus/types/src/chain_spec.rs#L941
46
- //
47
- // So if we assert that spec critical keys are present in the spec we may break interoperability unexpectedly.
48
- // So it's best to ignore keys are not defined in both specs and trust that the ones defined are sufficient
49
- // to detect spec discrepancies in all cases.
50
- externalSpecJson[key] === undefined
51
- ) {
52
- continue;
53
- }
54
-
55
- if (key === "BLOB_SCHEDULE") {
56
- const localBlobSchedule = deserializeBlobSchedule(localSpecJson[key]).sort((a, b) => a.EPOCH - b.EPOCH);
57
- const remoteBlobSchedule = deserializeBlobSchedule(externalSpecJson[key]).sort((a, b) => a.EPOCH - b.EPOCH);
58
-
59
- if (localBlobSchedule.length !== remoteBlobSchedule.length) {
60
- errors.push(`BLOB_SCHEDULE different length: ${localBlobSchedule.length} != ${remoteBlobSchedule.length}`);
61
-
62
- // Skip per entry comparison
63
- continue;
64
- }
65
-
66
- for (let i = 0; i < localBlobSchedule.length; i++) {
67
- const localEntry = localBlobSchedule[i];
68
- const remoteEntry = remoteBlobSchedule[i];
69
-
70
- for (const entryKey of ["EPOCH", "MAX_BLOBS_PER_BLOCK"] as Array<keyof BlobScheduleEntry>) {
71
- const localValue = String(localEntry[entryKey]);
72
- const remoteValue = String(remoteEntry[entryKey]);
73
-
74
- if (localValue !== remoteValue) {
75
- errors.push(`BLOB_SCHEDULE[${i}].${entryKey} different value: ${localValue} != ${remoteValue}`);
76
- }
77
- }
78
- }
79
-
80
- // Skip generic string comparison
81
- continue;
82
- }
83
-
84
- // Must compare JSON serialized specs, to ensure all strings are rendered in the same way
85
- // Must compare as lowercase to ensure checksum addresses and names have same capilatization
86
- const localValue = String(localSpecJson[key]).toLocaleLowerCase();
87
- const remoteValue = String(externalSpecJson[key]).toLocaleLowerCase();
88
- if (localValue !== remoteValue) {
89
- errors.push(`${key} different value: ${localValue} != ${remoteValue}`);
90
- }
91
- }
92
-
93
- if (errors.length > 0) {
94
- throw new NotEqualParamsError("Local and remote configs are different\n" + errors.join("\n"));
95
- }
96
- }
97
-
98
- function getSpecCriticalParams(localConfig: ChainConfig): Record<keyof ConfigWithPreset, boolean> {
99
- const altairForkRelevant = localConfig.ALTAIR_FORK_EPOCH < Infinity;
100
- const bellatrixForkRelevant = localConfig.BELLATRIX_FORK_EPOCH < Infinity;
101
- const capellaForkRelevant = localConfig.CAPELLA_FORK_EPOCH < Infinity;
102
- const denebForkRelevant = localConfig.DENEB_FORK_EPOCH < Infinity;
103
- const electraForkRelevant = localConfig.ELECTRA_FORK_EPOCH < Infinity;
104
- const fuluForkRelevant = localConfig.FULU_FORK_EPOCH < Infinity;
105
- const gloasForkRelevant = localConfig.GLOAS_FORK_EPOCH < Infinity;
106
-
107
- return {
108
- // # Config
109
- ///////////
110
-
111
- PRESET_BASE: false, // Not relevant, each preset value is checked below
112
- CONFIG_NAME: false, // Arbitrary string, not relevant
113
-
114
- // Deprecated - All networks have completed the merge transition
115
- TERMINAL_TOTAL_DIFFICULTY: false,
116
- TERMINAL_BLOCK_HASH: false,
117
- TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: false,
118
-
119
- // Genesis
120
- MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: true,
121
- MIN_GENESIS_TIME: true,
122
- GENESIS_FORK_VERSION: true,
123
- GENESIS_DELAY: true,
124
-
125
- // Forking
126
- // Altair
127
- ALTAIR_FORK_VERSION: altairForkRelevant,
128
- ALTAIR_FORK_EPOCH: altairForkRelevant,
129
- // Bellatrix
130
- BELLATRIX_FORK_VERSION: bellatrixForkRelevant,
131
- BELLATRIX_FORK_EPOCH: bellatrixForkRelevant,
132
- // Capella
133
- CAPELLA_FORK_VERSION: capellaForkRelevant,
134
- CAPELLA_FORK_EPOCH: capellaForkRelevant,
135
- // Deneb
136
- DENEB_FORK_VERSION: denebForkRelevant,
137
- DENEB_FORK_EPOCH: denebForkRelevant,
138
- // electra
139
- ELECTRA_FORK_VERSION: electraForkRelevant,
140
- ELECTRA_FORK_EPOCH: electraForkRelevant,
141
- // fulu
142
- FULU_FORK_VERSION: fuluForkRelevant,
143
- FULU_FORK_EPOCH: fuluForkRelevant,
144
- // gloas
145
- GLOAS_FORK_VERSION: gloasForkRelevant,
146
- GLOAS_FORK_EPOCH: gloasForkRelevant,
147
-
148
- // Time parameters
149
- SECONDS_PER_SLOT: false, // Deprecated
150
- SLOT_DURATION_MS: true,
151
- SECONDS_PER_ETH1_BLOCK: false, // Legacy
152
- MIN_VALIDATOR_WITHDRAWABILITY_DELAY: true,
153
- SHARD_COMMITTEE_PERIOD: true,
154
- ETH1_FOLLOW_DISTANCE: true,
155
- PROPOSER_REORG_CUTOFF_BPS: true,
156
- ATTESTATION_DUE_BPS: true,
157
- AGGREGATE_DUE_BPS: true,
158
- // Altair
159
- SYNC_MESSAGE_DUE_BPS: altairForkRelevant,
160
- CONTRIBUTION_DUE_BPS: altairForkRelevant,
161
-
162
- // Validator cycle
163
- INACTIVITY_SCORE_BIAS: true,
164
- INACTIVITY_SCORE_RECOVERY_RATE: true,
165
- EJECTION_BALANCE: true,
166
- MIN_PER_EPOCH_CHURN_LIMIT: true,
167
- MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: denebForkRelevant,
168
- CHURN_LIMIT_QUOTIENT: true,
169
-
170
- // Fork choice
171
- PROPOSER_SCORE_BOOST: false, // Ignored as it's changing https://github.com/ethereum/consensus-specs/pull/2895
172
- REORG_HEAD_WEIGHT_THRESHOLD: false, // Non-critical since proposer boost reorg is optional feature
173
- REORG_PARENT_WEIGHT_THRESHOLD: false, // Non-critical since proposer boost reorg is optional feature
174
- REORG_MAX_EPOCHS_SINCE_FINALIZATION: false, // Non-critical since proposer boost reorg is optional feature
175
-
176
- // Deposit contract
177
- DEPOSIT_CHAIN_ID: false, // Non-critical
178
- DEPOSIT_NETWORK_ID: false, // Non-critical
179
- DEPOSIT_CONTRACT_ADDRESS: true,
180
-
181
- // Networking (non-critical as those do not affect consensus)
182
- MAX_PAYLOAD_SIZE: false,
183
- EPOCHS_PER_SUBNET_SUBSCRIPTION: false,
184
- ATTESTATION_PROPAGATION_SLOT_RANGE: false,
185
- MAXIMUM_GOSSIP_CLOCK_DISPARITY: false,
186
- MESSAGE_DOMAIN_INVALID_SNAPPY: false,
187
- MESSAGE_DOMAIN_VALID_SNAPPY: false,
188
- SUBNETS_PER_NODE: false,
189
- MAX_REQUEST_BLOCKS: false,
190
- MAX_REQUEST_BLOCKS_DENEB: false,
191
- MIN_EPOCHS_FOR_BLOCK_REQUESTS: false,
192
- MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: false,
193
- MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: false,
194
- BLOB_SIDECAR_SUBNET_COUNT: false,
195
- BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: false,
196
- DATA_COLUMN_SIDECAR_SUBNET_COUNT: false,
197
- MAX_REQUEST_BLOB_SIDECARS: false,
198
- MAX_REQUEST_BLOB_SIDECARS_ELECTRA: false,
199
- MAX_REQUEST_DATA_COLUMN_SIDECARS: false,
200
- MAX_REQUEST_PAYLOADS: false,
201
-
202
- // # Phase0Preset
203
- /////////////////
204
-
205
- MAX_COMMITTEES_PER_SLOT: true,
206
- TARGET_COMMITTEE_SIZE: true,
207
- MAX_VALIDATORS_PER_COMMITTEE: true,
208
-
209
- SHUFFLE_ROUND_COUNT: true,
210
-
211
- HYSTERESIS_QUOTIENT: true,
212
- HYSTERESIS_DOWNWARD_MULTIPLIER: true,
213
- HYSTERESIS_UPWARD_MULTIPLIER: true,
214
-
215
- // Gwei Values
216
- MIN_DEPOSIT_AMOUNT: true,
217
- MAX_EFFECTIVE_BALANCE: true,
218
- EFFECTIVE_BALANCE_INCREMENT: true,
219
-
220
- // Time parameters
221
- MIN_ATTESTATION_INCLUSION_DELAY: true,
222
- SLOTS_PER_EPOCH: true,
223
- MIN_SEED_LOOKAHEAD: true,
224
- MAX_SEED_LOOKAHEAD: true,
225
- EPOCHS_PER_ETH1_VOTING_PERIOD: true,
226
- SLOTS_PER_HISTORICAL_ROOT: true,
227
- MIN_EPOCHS_TO_INACTIVITY_PENALTY: true,
228
-
229
- // State vector lengths
230
- EPOCHS_PER_HISTORICAL_VECTOR: true,
231
- EPOCHS_PER_SLASHINGS_VECTOR: true,
232
- HISTORICAL_ROOTS_LIMIT: true,
233
- VALIDATOR_REGISTRY_LIMIT: true,
234
-
235
- // Reward and penalty quotients
236
- BASE_REWARD_FACTOR: true,
237
- WHISTLEBLOWER_REWARD_QUOTIENT: true,
238
- PROPOSER_REWARD_QUOTIENT: true,
239
- INACTIVITY_PENALTY_QUOTIENT: true,
240
- MIN_SLASHING_PENALTY_QUOTIENT: true,
241
- PROPORTIONAL_SLASHING_MULTIPLIER: true,
242
-
243
- // Max operations per block
244
- MAX_PROPOSER_SLASHINGS: true,
245
- MAX_ATTESTER_SLASHINGS: true,
246
- MAX_ATTESTATIONS: true,
247
- MAX_DEPOSITS: true,
248
- MAX_VOLUNTARY_EXITS: true,
249
-
250
- // # AltairPreset
251
- /////////////////
252
-
253
- SYNC_COMMITTEE_SIZE: altairForkRelevant,
254
- EPOCHS_PER_SYNC_COMMITTEE_PERIOD: altairForkRelevant,
255
- INACTIVITY_PENALTY_QUOTIENT_ALTAIR: altairForkRelevant,
256
- MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: altairForkRelevant,
257
- PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: altairForkRelevant,
258
- MIN_SYNC_COMMITTEE_PARTICIPANTS: false, // Only relevant for lightclients
259
- UPDATE_TIMEOUT: false, // Only relevant for lightclients
260
-
261
- // # BellatrixPreset
262
- /////////////////
263
-
264
- INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: bellatrixForkRelevant,
265
- MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: bellatrixForkRelevant,
266
- PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: bellatrixForkRelevant,
267
- MAX_BYTES_PER_TRANSACTION: bellatrixForkRelevant,
268
- MAX_TRANSACTIONS_PER_PAYLOAD: bellatrixForkRelevant,
269
- BYTES_PER_LOGS_BLOOM: bellatrixForkRelevant,
270
- MAX_EXTRA_DATA_BYTES: bellatrixForkRelevant,
271
-
272
- // # CapellaPreset
273
- /////////////////
274
- MAX_BLS_TO_EXECUTION_CHANGES: capellaForkRelevant,
275
- MAX_WITHDRAWALS_PER_PAYLOAD: capellaForkRelevant,
276
- MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: capellaForkRelevant,
277
-
278
- // # DenebPreset
279
- /////////////////
280
- FIELD_ELEMENTS_PER_BLOB: denebForkRelevant,
281
- MAX_BLOB_COMMITMENTS_PER_BLOCK: denebForkRelevant,
282
- KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: denebForkRelevant,
283
- MAX_BLOBS_PER_BLOCK: denebForkRelevant,
284
-
285
- // ELECTRA
286
- MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: electraForkRelevant,
287
- MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: electraForkRelevant,
288
- MAX_ATTESTER_SLASHINGS_ELECTRA: electraForkRelevant,
289
- MAX_ATTESTATIONS_ELECTRA: electraForkRelevant,
290
- MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: electraForkRelevant,
291
- MAX_PENDING_DEPOSITS_PER_EPOCH: electraForkRelevant,
292
- MAX_EFFECTIVE_BALANCE_ELECTRA: electraForkRelevant,
293
- MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: electraForkRelevant,
294
- MIN_ACTIVATION_BALANCE: electraForkRelevant,
295
- PENDING_DEPOSITS_LIMIT: electraForkRelevant,
296
- PENDING_PARTIAL_WITHDRAWALS_LIMIT: electraForkRelevant,
297
- PENDING_CONSOLIDATIONS_LIMIT: electraForkRelevant,
298
- MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: electraForkRelevant,
299
- WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: electraForkRelevant,
300
- MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: electraForkRelevant,
301
- MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: electraForkRelevant,
302
- MAX_BLOBS_PER_BLOCK_ELECTRA: electraForkRelevant,
303
-
304
- // FULU
305
- /////////////////
306
- CELLS_PER_EXT_BLOB: fuluForkRelevant,
307
- FIELD_ELEMENTS_PER_CELL: fuluForkRelevant,
308
- FIELD_ELEMENTS_PER_EXT_BLOB: fuluForkRelevant,
309
- KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: fuluForkRelevant,
310
- NUMBER_OF_COLUMNS: fuluForkRelevant,
311
- NUMBER_OF_CUSTODY_GROUPS: fuluForkRelevant,
312
- SAMPLES_PER_SLOT: fuluForkRelevant,
313
- CUSTODY_REQUIREMENT: fuluForkRelevant,
314
- VALIDATOR_CUSTODY_REQUIREMENT: fuluForkRelevant,
315
- BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: fuluForkRelevant,
316
- BLOB_SCHEDULE: fuluForkRelevant,
317
-
318
- // GLOAS
319
- ATTESTATION_DUE_BPS_GLOAS: gloasForkRelevant,
320
- AGGREGATE_DUE_BPS_GLOAS: gloasForkRelevant,
321
- SYNC_MESSAGE_DUE_BPS_GLOAS: gloasForkRelevant,
322
- CONTRIBUTION_DUE_BPS_GLOAS: gloasForkRelevant,
323
- PAYLOAD_ATTESTATION_DUE_BPS: gloasForkRelevant,
324
- PAYLOAD_DUE_BPS: gloasForkRelevant,
325
- PTC_SIZE: gloasForkRelevant,
326
- MAX_PAYLOAD_ATTESTATIONS: gloasForkRelevant,
327
- MAX_BUILDER_DEPOSIT_REQUESTS_PER_PAYLOAD: gloasForkRelevant,
328
- MAX_BUILDER_EXIT_REQUESTS_PER_PAYLOAD: gloasForkRelevant,
329
- MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: gloasForkRelevant,
330
- MAX_SIGNED_AGGREGATE_AND_PROOF_SIZE: false,
331
- MAX_ATTESTER_SLASHING_SIZE: false,
332
- MAX_DATA_COLUMN_SIDECAR_SIZE: false,
333
- MAX_PARTIAL_DATA_COLUMN_SIDECAR_SIZE: false,
334
- MAX_SIGNED_EXECUTION_PAYLOAD_BID_SIZE: false,
335
- MIN_BUILDER_WITHDRAWABILITY_DELAY: gloasForkRelevant,
336
-
337
- // FastConfirmationRule
338
- CONFIRMATION_BYZANTINE_THRESHOLD: false,
339
-
340
- CHURN_LIMIT_QUOTIENT_GLOAS: gloasForkRelevant,
341
- CONSOLIDATION_CHURN_LIMIT_QUOTIENT: gloasForkRelevant,
342
- MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT_GLOAS: gloasForkRelevant,
343
- };
344
- }