@lodestar/params 1.35.0-dev.98d359db41 → 1.35.0-dev.b42a298a7c
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.
- package/package.json +7 -5
- package/lib/forkName.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/json.d.ts.map +0 -1
- package/lib/presetName.d.ts.map +0 -1
- package/lib/presetStatus.d.ts.map +0 -1
- package/lib/presets/gnosis.d.ts.map +0 -1
- package/lib/presets/mainnet.d.ts.map +0 -1
- package/lib/presets/minimal.d.ts.map +0 -1
- package/lib/setPreset.d.ts.map +0 -1
- package/lib/types.d.ts.map +0 -1
- package/src/forkName.ts +0 -195
- package/src/index.ts +0 -311
- package/src/json.ts +0 -58
- package/src/presetName.ts +0 -5
- package/src/presetStatus.ts +0 -3
- package/src/presets/gnosis.ts +0 -22
- package/src/presets/mainnet.ts +0 -149
- package/src/presets/minimal.ts +0 -150
- package/src/setPreset.ts +0 -48
- package/src/types.ts +0 -228
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lodestar/params",
|
|
3
|
-
"version": "1.35.0-dev.
|
|
3
|
+
"version": "1.35.0-dev.b42a298a7c",
|
|
4
4
|
"description": "Chain parameters required for lodestar",
|
|
5
5
|
"author": "ChainSafe Systems",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -33,9 +33,11 @@
|
|
|
33
33
|
},
|
|
34
34
|
"types": "lib/index.d.ts",
|
|
35
35
|
"files": [
|
|
36
|
-
"
|
|
37
|
-
"lib",
|
|
38
|
-
"
|
|
36
|
+
"lib/**/*.js",
|
|
37
|
+
"lib/**/*.js.map",
|
|
38
|
+
"lib/**/*.d.ts",
|
|
39
|
+
"*.d.ts",
|
|
40
|
+
"*.js"
|
|
39
41
|
],
|
|
40
42
|
"typesVersions": {
|
|
41
43
|
"*": {
|
|
@@ -76,5 +78,5 @@
|
|
|
76
78
|
"axios": "^1.3.4",
|
|
77
79
|
"js-yaml": "^4.1.0"
|
|
78
80
|
},
|
|
79
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "32a0ff15c72d66483feb4afb5518b46372819b90"
|
|
80
82
|
}
|
package/lib/forkName.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forkName.d.ts","sourceRoot":"","sources":["../src/forkName.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/json.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAoB,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQzE;AAUD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAWnF"}
|
package/lib/presetName.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"presetName.d.ts","sourceRoot":"","sources":["../src/presetName.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"presetStatus.d.ts","sourceRoot":"","sources":["../src/presetStatus.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;CAExB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gnosis.d.ts","sourceRoot":"","sources":["../../src/presets/gnosis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAMzC,eAAO,MAAM,YAAY,EAAE,YAe1B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mainnet.d.ts","sourceRoot":"","sources":["../../src/presets/mainnet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAKzC,eAAO,MAAM,aAAa,EAAE,YA+I3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"minimal.d.ts","sourceRoot":"","sources":["../../src/presets/minimal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAKzC,eAAO,MAAM,aAAa,EAAE,YAgJ3B,CAAC"}
|
package/lib/setPreset.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setPreset.d.ts","sourceRoot":"","sources":["../src/setPreset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,WAAW,CAAC;AACzC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAExC,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,CAAC;AAEpC;;;;;;;GAOG;AACH,eAAO,IAAI,kBAAkB,EAAE,UAAU,GAAG,IAAW,CAAC;AAExD,eAAO,IAAI,aAAa,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,SAAqB,CAAC;AAExE;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAkBtG"}
|
package/lib/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/src/forkName.ts
DELETED
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Fork code name in order of occurrence
|
|
3
|
-
*/
|
|
4
|
-
export enum ForkName {
|
|
5
|
-
phase0 = "phase0",
|
|
6
|
-
altair = "altair",
|
|
7
|
-
bellatrix = "bellatrix",
|
|
8
|
-
capella = "capella",
|
|
9
|
-
deneb = "deneb",
|
|
10
|
-
electra = "electra",
|
|
11
|
-
fulu = "fulu",
|
|
12
|
-
gloas = "gloas",
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Fork sequence number in order of occurrence
|
|
17
|
-
*/
|
|
18
|
-
export enum ForkSeq {
|
|
19
|
-
phase0 = 0,
|
|
20
|
-
altair = 1,
|
|
21
|
-
bellatrix = 2,
|
|
22
|
-
capella = 3,
|
|
23
|
-
deneb = 4,
|
|
24
|
-
electra = 5,
|
|
25
|
-
fulu = 6,
|
|
26
|
-
gloas = 7,
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function exclude<T extends ForkName, U extends T>(coll: T[], val: U[]): Exclude<T, U>[] {
|
|
30
|
-
return coll.filter((f) => !val.includes(f as U)) as Exclude<T, U>[];
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export function highestFork<F extends ForkName>(forkNames: F[]): F {
|
|
34
|
-
let highest = forkNames[0];
|
|
35
|
-
|
|
36
|
-
for (const forkName of forkNames) {
|
|
37
|
-
if (ForkSeq[forkName] > ForkSeq[highest]) {
|
|
38
|
-
highest = forkName;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
return highest;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export function lowestFork<F extends ForkName>(forkNames: F[]): F {
|
|
46
|
-
let lowest = forkNames[0];
|
|
47
|
-
|
|
48
|
-
for (const forkName of forkNames) {
|
|
49
|
-
if (ForkSeq[forkName] < ForkSeq[lowest]) {
|
|
50
|
-
lowest = forkName;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return lowest;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export type ForkAll = ForkName;
|
|
58
|
-
export const forkAll = Object.values(ForkName);
|
|
59
|
-
|
|
60
|
-
export type ForkPreAltair = ForkName.phase0;
|
|
61
|
-
export type ForkPostAltair = Exclude<ForkName, ForkPreAltair>;
|
|
62
|
-
export const forkPostAltair = exclude(forkAll, [ForkName.phase0]);
|
|
63
|
-
export function isForkPostAltair(fork: ForkName): fork is ForkPostAltair {
|
|
64
|
-
return fork !== ForkName.phase0;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export type ForkPreBellatrix = ForkPreAltair | ForkName.altair;
|
|
68
|
-
export type ForkPostBellatrix = Exclude<ForkName, ForkPreBellatrix>;
|
|
69
|
-
export const forkPostBellatrix = exclude(forkAll, [ForkName.phase0, ForkName.altair]);
|
|
70
|
-
export function isForkPostBellatrix(fork: ForkName): fork is ForkPostBellatrix {
|
|
71
|
-
return isForkPostAltair(fork) && fork !== ForkName.altair;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export type ForkPreCapella = ForkPreBellatrix | ForkName.bellatrix;
|
|
75
|
-
export type ForkPostCapella = Exclude<ForkName, ForkPreCapella>;
|
|
76
|
-
export const forkPostCapella = exclude(forkAll, [ForkName.phase0, ForkName.altair, ForkName.bellatrix]);
|
|
77
|
-
export function isForkPostCapella(fork: ForkName): fork is ForkPostCapella {
|
|
78
|
-
return isForkPostBellatrix(fork) && fork !== ForkName.bellatrix;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export type ForkPreDeneb = ForkPreCapella | ForkName.capella;
|
|
82
|
-
export type ForkPostDeneb = Exclude<ForkName, ForkPreDeneb>;
|
|
83
|
-
export const forkPostDeneb = exclude(forkAll, [ForkName.phase0, ForkName.altair, ForkName.bellatrix, ForkName.capella]);
|
|
84
|
-
export function isForkPostDeneb(fork: ForkName): fork is ForkPostDeneb {
|
|
85
|
-
return isForkPostCapella(fork) && fork !== ForkName.capella;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
export type ForkPreElectra = ForkPreDeneb | ForkName.deneb;
|
|
89
|
-
export type ForkPostElectra = Exclude<ForkName, ForkPreElectra>;
|
|
90
|
-
export const forkPostElectra = exclude(forkAll, [
|
|
91
|
-
ForkName.phase0,
|
|
92
|
-
ForkName.altair,
|
|
93
|
-
ForkName.bellatrix,
|
|
94
|
-
ForkName.capella,
|
|
95
|
-
ForkName.deneb,
|
|
96
|
-
]);
|
|
97
|
-
export function isForkPostElectra(fork: ForkName): fork is ForkPostElectra {
|
|
98
|
-
return isForkPostDeneb(fork) && fork !== ForkName.deneb;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
export type ForkPreFulu = ForkPreElectra | ForkName.electra;
|
|
102
|
-
export type ForkPostFulu = Exclude<ForkName, ForkPreFulu>;
|
|
103
|
-
export const forkPostFulu = exclude(forkAll, [
|
|
104
|
-
ForkName.phase0,
|
|
105
|
-
ForkName.altair,
|
|
106
|
-
ForkName.bellatrix,
|
|
107
|
-
ForkName.capella,
|
|
108
|
-
ForkName.deneb,
|
|
109
|
-
ForkName.electra,
|
|
110
|
-
]);
|
|
111
|
-
export function isForkPostFulu(fork: ForkName): fork is ForkPostFulu {
|
|
112
|
-
return isForkPostElectra(fork) && fork !== ForkName.electra;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
export type ForkPreGloas = ForkPreFulu | ForkName.fulu;
|
|
116
|
-
export type ForkPostGloas = Exclude<ForkName, ForkPreGloas>;
|
|
117
|
-
export const forkPostGloas = exclude(forkAll, [
|
|
118
|
-
ForkName.phase0,
|
|
119
|
-
ForkName.altair,
|
|
120
|
-
ForkName.bellatrix,
|
|
121
|
-
ForkName.capella,
|
|
122
|
-
ForkName.deneb,
|
|
123
|
-
ForkName.electra,
|
|
124
|
-
ForkName.fulu,
|
|
125
|
-
]);
|
|
126
|
-
export function isForkPostGloas(fork: ForkName): fork is ForkPostGloas {
|
|
127
|
-
return isForkPostFulu(fork) && fork !== ForkName.fulu;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
/*
|
|
131
|
-
* Aliases only exported for backwards compatibility. This will be removed in
|
|
132
|
-
* lodestar v2.0. The types and guards above should be used in all places as
|
|
133
|
-
* they are more correct than using the "main feature" from a fork.
|
|
134
|
-
*/
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* @deprecated Use `ForkPostAltair` instead.
|
|
138
|
-
*/
|
|
139
|
-
export type ForkLightClient = ForkPostAltair;
|
|
140
|
-
/**
|
|
141
|
-
* @deprecated Use `ForkPreBellatrix` instead.
|
|
142
|
-
*/
|
|
143
|
-
export type ForkPreExecution = ForkPreBellatrix;
|
|
144
|
-
/**
|
|
145
|
-
* @deprecated Use `ForkPostBellatrix` instead.
|
|
146
|
-
*/
|
|
147
|
-
export type ForkExecution = ForkPostBellatrix;
|
|
148
|
-
/**
|
|
149
|
-
* @deprecated Use `ForkPreCapella` instead.
|
|
150
|
-
*/
|
|
151
|
-
export type ForkPreWithdrawals = ForkPreCapella;
|
|
152
|
-
/**
|
|
153
|
-
* @deprecated Use `ForkPostCapella` instead.
|
|
154
|
-
*/
|
|
155
|
-
export type ForkWithdrawals = ForkPostCapella;
|
|
156
|
-
/**
|
|
157
|
-
* @deprecated Use `ForkPreDeneb` instead.
|
|
158
|
-
*/
|
|
159
|
-
export type ForkPreBlobs = ForkPreDeneb;
|
|
160
|
-
/**
|
|
161
|
-
* @deprecated Use `ForkPostDeneb` instead.
|
|
162
|
-
*/
|
|
163
|
-
export type ForkBlobs = ForkPostDeneb;
|
|
164
|
-
/**
|
|
165
|
-
* @deprecated Use `forkPostAltair` instead.
|
|
166
|
-
*/
|
|
167
|
-
export const forkLightClient = forkPostAltair;
|
|
168
|
-
/**
|
|
169
|
-
* @deprecated Use `isForkPostAltair` instead.
|
|
170
|
-
*/
|
|
171
|
-
export const isForkLightClient = isForkPostAltair;
|
|
172
|
-
/**
|
|
173
|
-
* @deprecated Use `forkPostBellatrix` instead.
|
|
174
|
-
*/
|
|
175
|
-
export const forkExecution = forkPostBellatrix;
|
|
176
|
-
/**
|
|
177
|
-
* @deprecated Use `isForkPostBellatrix` instead.
|
|
178
|
-
*/
|
|
179
|
-
export const isForkExecution = isForkPostBellatrix;
|
|
180
|
-
/**
|
|
181
|
-
* @deprecated Use `forkPostCapella` instead.
|
|
182
|
-
*/
|
|
183
|
-
export const forkWithdrawals = forkPostCapella;
|
|
184
|
-
/**
|
|
185
|
-
* @deprecated Use `isForkPostCapella` instead.
|
|
186
|
-
*/
|
|
187
|
-
export const isForkWithdrawals = isForkPostCapella;
|
|
188
|
-
/**
|
|
189
|
-
* @deprecated Use `forkPostDeneb` instead.
|
|
190
|
-
*/
|
|
191
|
-
export const forkBlobs = forkPostDeneb;
|
|
192
|
-
/**
|
|
193
|
-
* @deprecated Use `isForkPostDeneb` instead.
|
|
194
|
-
*/
|
|
195
|
-
export const isForkBlobs = isForkPostDeneb;
|
package/src/index.ts
DELETED
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
import {PresetName} from "./presetName.js";
|
|
2
|
-
import {presetStatus} from "./presetStatus.js";
|
|
3
|
-
import {gnosisPreset} from "./presets/gnosis.js";
|
|
4
|
-
import {mainnetPreset} from "./presets/mainnet.js";
|
|
5
|
-
import {minimalPreset} from "./presets/minimal.js";
|
|
6
|
-
import {userOverrides, userSelectedPreset} from "./setPreset.js";
|
|
7
|
-
|
|
8
|
-
export * from "./forkName.js";
|
|
9
|
-
export {presetToJson} from "./json.js";
|
|
10
|
-
export type {BeaconPreset} from "./types.js";
|
|
11
|
-
export {PresetName};
|
|
12
|
-
|
|
13
|
-
const presets = {
|
|
14
|
-
[PresetName.mainnet]: mainnetPreset,
|
|
15
|
-
[PresetName.minimal]: minimalPreset,
|
|
16
|
-
[PresetName.gnosis]: gnosisPreset,
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
// Once this file is imported, freeze the preset so calling setActivePreset() will throw an error
|
|
20
|
-
presetStatus.frozen = true;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* The preset name currently exported by this library
|
|
24
|
-
*
|
|
25
|
-
* The `LODESTAR_PRESET` environment variable is used to select the active preset
|
|
26
|
-
* If `LODESTAR_PRESET` is not set, the default is `mainnet`.
|
|
27
|
-
*
|
|
28
|
-
* The active preset can be manually overridden with `setActivePreset`
|
|
29
|
-
*/
|
|
30
|
-
export const ACTIVE_PRESET =
|
|
31
|
-
userSelectedPreset ??
|
|
32
|
-
(typeof process !== "undefined" ? PresetName[process?.env?.LODESTAR_PRESET as PresetName] : undefined) ??
|
|
33
|
-
PresetName.mainnet;
|
|
34
|
-
export const activePreset = {...presets[ACTIVE_PRESET], ...userOverrides};
|
|
35
|
-
|
|
36
|
-
// These variables must be exported individually and explicitly
|
|
37
|
-
// in order to be accessible as top-level exports
|
|
38
|
-
export const {
|
|
39
|
-
MAX_COMMITTEES_PER_SLOT,
|
|
40
|
-
TARGET_COMMITTEE_SIZE,
|
|
41
|
-
MAX_VALIDATORS_PER_COMMITTEE,
|
|
42
|
-
SHUFFLE_ROUND_COUNT,
|
|
43
|
-
HYSTERESIS_QUOTIENT,
|
|
44
|
-
HYSTERESIS_DOWNWARD_MULTIPLIER,
|
|
45
|
-
HYSTERESIS_UPWARD_MULTIPLIER,
|
|
46
|
-
MIN_DEPOSIT_AMOUNT,
|
|
47
|
-
MAX_EFFECTIVE_BALANCE,
|
|
48
|
-
EFFECTIVE_BALANCE_INCREMENT,
|
|
49
|
-
MIN_ATTESTATION_INCLUSION_DELAY,
|
|
50
|
-
SLOTS_PER_EPOCH,
|
|
51
|
-
MIN_SEED_LOOKAHEAD,
|
|
52
|
-
MAX_SEED_LOOKAHEAD,
|
|
53
|
-
EPOCHS_PER_ETH1_VOTING_PERIOD,
|
|
54
|
-
SLOTS_PER_HISTORICAL_ROOT,
|
|
55
|
-
MIN_EPOCHS_TO_INACTIVITY_PENALTY,
|
|
56
|
-
EPOCHS_PER_HISTORICAL_VECTOR,
|
|
57
|
-
EPOCHS_PER_SLASHINGS_VECTOR,
|
|
58
|
-
HISTORICAL_ROOTS_LIMIT,
|
|
59
|
-
VALIDATOR_REGISTRY_LIMIT,
|
|
60
|
-
BASE_REWARD_FACTOR,
|
|
61
|
-
WHISTLEBLOWER_REWARD_QUOTIENT,
|
|
62
|
-
PROPOSER_REWARD_QUOTIENT,
|
|
63
|
-
INACTIVITY_PENALTY_QUOTIENT,
|
|
64
|
-
MIN_SLASHING_PENALTY_QUOTIENT,
|
|
65
|
-
PROPORTIONAL_SLASHING_MULTIPLIER,
|
|
66
|
-
MAX_PROPOSER_SLASHINGS,
|
|
67
|
-
MAX_ATTESTER_SLASHINGS,
|
|
68
|
-
MAX_ATTESTATIONS,
|
|
69
|
-
MAX_DEPOSITS,
|
|
70
|
-
MAX_VOLUNTARY_EXITS,
|
|
71
|
-
|
|
72
|
-
SYNC_COMMITTEE_SIZE,
|
|
73
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD,
|
|
74
|
-
INACTIVITY_PENALTY_QUOTIENT_ALTAIR,
|
|
75
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR,
|
|
76
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR,
|
|
77
|
-
MIN_SYNC_COMMITTEE_PARTICIPANTS,
|
|
78
|
-
UPDATE_TIMEOUT,
|
|
79
|
-
|
|
80
|
-
INACTIVITY_PENALTY_QUOTIENT_BELLATRIX,
|
|
81
|
-
MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX,
|
|
82
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX,
|
|
83
|
-
MAX_BYTES_PER_TRANSACTION,
|
|
84
|
-
MAX_TRANSACTIONS_PER_PAYLOAD,
|
|
85
|
-
BYTES_PER_LOGS_BLOOM,
|
|
86
|
-
MAX_EXTRA_DATA_BYTES,
|
|
87
|
-
|
|
88
|
-
MAX_BLS_TO_EXECUTION_CHANGES,
|
|
89
|
-
MAX_WITHDRAWALS_PER_PAYLOAD,
|
|
90
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP,
|
|
91
|
-
|
|
92
|
-
FIELD_ELEMENTS_PER_BLOB,
|
|
93
|
-
MAX_BLOB_COMMITMENTS_PER_BLOCK,
|
|
94
|
-
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH,
|
|
95
|
-
|
|
96
|
-
MAX_EFFECTIVE_BALANCE_ELECTRA,
|
|
97
|
-
MIN_ACTIVATION_BALANCE,
|
|
98
|
-
PENDING_DEPOSITS_LIMIT,
|
|
99
|
-
PENDING_PARTIAL_WITHDRAWALS_LIMIT,
|
|
100
|
-
PENDING_CONSOLIDATIONS_LIMIT,
|
|
101
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA,
|
|
102
|
-
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD,
|
|
103
|
-
|
|
104
|
-
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD,
|
|
105
|
-
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD,
|
|
106
|
-
MAX_ATTESTER_SLASHINGS_ELECTRA,
|
|
107
|
-
MAX_ATTESTATIONS_ELECTRA,
|
|
108
|
-
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP,
|
|
109
|
-
MAX_PENDING_DEPOSITS_PER_EPOCH,
|
|
110
|
-
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA,
|
|
111
|
-
|
|
112
|
-
NUMBER_OF_COLUMNS,
|
|
113
|
-
CELLS_PER_EXT_BLOB,
|
|
114
|
-
FIELD_ELEMENTS_PER_CELL,
|
|
115
|
-
FIELD_ELEMENTS_PER_EXT_BLOB,
|
|
116
|
-
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH,
|
|
117
|
-
|
|
118
|
-
PTC_SIZE,
|
|
119
|
-
MAX_PAYLOAD_ATTESTATIONS,
|
|
120
|
-
BUILDER_PENDING_WITHDRAWALS_LIMIT,
|
|
121
|
-
} = activePreset;
|
|
122
|
-
|
|
123
|
-
////////////
|
|
124
|
-
// Constants
|
|
125
|
-
////////////
|
|
126
|
-
|
|
127
|
-
// Exported directly on the index for faster accessing without commonjs compiled star import shenanigans
|
|
128
|
-
|
|
129
|
-
// Misc
|
|
130
|
-
|
|
131
|
-
export const GENESIS_SLOT = 0;
|
|
132
|
-
export const GENESIS_EPOCH = 0;
|
|
133
|
-
export const FAR_FUTURE_EPOCH = Infinity;
|
|
134
|
-
export const BASE_REWARDS_PER_EPOCH = 4;
|
|
135
|
-
export const DEPOSIT_CONTRACT_TREE_DEPTH = 2 ** 5; // 32
|
|
136
|
-
export const JUSTIFICATION_BITS_LENGTH = 4;
|
|
137
|
-
export const ZERO_HASH = Buffer.alloc(32, 0);
|
|
138
|
-
export const ZERO_HASH_HEX = "0x" + "00".repeat(32);
|
|
139
|
-
|
|
140
|
-
// Withdrawal prefixes
|
|
141
|
-
// Since the prefixes are just 1 byte, we define and use them as number
|
|
142
|
-
export const BLS_WITHDRAWAL_PREFIX = 0;
|
|
143
|
-
export const ETH1_ADDRESS_WITHDRAWAL_PREFIX = 1;
|
|
144
|
-
export const COMPOUNDING_WITHDRAWAL_PREFIX = 2;
|
|
145
|
-
export const BUILDER_WITHDRAWAL_PREFIX = 3;
|
|
146
|
-
|
|
147
|
-
// Domain types
|
|
148
|
-
|
|
149
|
-
export const DOMAIN_BEACON_PROPOSER = Uint8Array.from([0, 0, 0, 0]);
|
|
150
|
-
export const DOMAIN_BEACON_ATTESTER = Uint8Array.from([1, 0, 0, 0]);
|
|
151
|
-
export const DOMAIN_RANDAO = Uint8Array.from([2, 0, 0, 0]);
|
|
152
|
-
export const DOMAIN_DEPOSIT = Uint8Array.from([3, 0, 0, 0]);
|
|
153
|
-
export const DOMAIN_VOLUNTARY_EXIT = Uint8Array.from([4, 0, 0, 0]);
|
|
154
|
-
export const DOMAIN_SELECTION_PROOF = Uint8Array.from([5, 0, 0, 0]);
|
|
155
|
-
export const DOMAIN_AGGREGATE_AND_PROOF = Uint8Array.from([6, 0, 0, 0]);
|
|
156
|
-
export const DOMAIN_SYNC_COMMITTEE = Uint8Array.from([7, 0, 0, 0]);
|
|
157
|
-
export const DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF = Uint8Array.from([8, 0, 0, 0]);
|
|
158
|
-
export const DOMAIN_CONTRIBUTION_AND_PROOF = Uint8Array.from([9, 0, 0, 0]);
|
|
159
|
-
export const DOMAIN_BLS_TO_EXECUTION_CHANGE = Uint8Array.from([10, 0, 0, 0]);
|
|
160
|
-
export const DOMAIN_BEACON_BUILDER = Uint8Array.from([27, 0, 0, 0]);
|
|
161
|
-
export const DOMAIN_PTC_ATTESTER = Uint8Array.from([12, 0, 0, 0]);
|
|
162
|
-
|
|
163
|
-
// Application specific domains
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* `DOMAIN_APPLICATION_MASK` reserves the rest of the bitspace in `DomainType` for application
|
|
167
|
-
* usage. This means for some `DomainType` `DOMAIN_SOME_APPLICATION`, `DOMAIN_SOME_APPLICATION
|
|
168
|
-
* & DOMAIN_APPLICATION_MASK` **MUST** be non-zero. This expression for any other `DomainType`
|
|
169
|
-
* in the consensus specs **MUST** be zero.
|
|
170
|
-
*/
|
|
171
|
-
export const DOMAIN_APPLICATION_MASK = Uint8Array.from([0, 0, 0, 1]);
|
|
172
|
-
export const DOMAIN_APPLICATION_BUILDER = Uint8Array.from([0, 0, 0, 1]);
|
|
173
|
-
|
|
174
|
-
// Participation flag indices
|
|
175
|
-
|
|
176
|
-
export const TIMELY_SOURCE_FLAG_INDEX = 0;
|
|
177
|
-
export const TIMELY_TARGET_FLAG_INDEX = 1;
|
|
178
|
-
export const TIMELY_HEAD_FLAG_INDEX = 2;
|
|
179
|
-
|
|
180
|
-
// Incentivization weights
|
|
181
|
-
|
|
182
|
-
export const TIMELY_SOURCE_WEIGHT = 14;
|
|
183
|
-
export const TIMELY_TARGET_WEIGHT = 26;
|
|
184
|
-
export const TIMELY_HEAD_WEIGHT = 14;
|
|
185
|
-
export const SYNC_REWARD_WEIGHT = 2;
|
|
186
|
-
export const PROPOSER_WEIGHT = 8;
|
|
187
|
-
export const WEIGHT_DENOMINATOR = 64;
|
|
188
|
-
|
|
189
|
-
// altair misc
|
|
190
|
-
|
|
191
|
-
export const PARTICIPATION_FLAG_WEIGHTS = [TIMELY_SOURCE_WEIGHT, TIMELY_TARGET_WEIGHT, TIMELY_HEAD_WEIGHT];
|
|
192
|
-
|
|
193
|
-
// phase0 validator
|
|
194
|
-
|
|
195
|
-
export const TARGET_AGGREGATORS_PER_COMMITTEE = 16;
|
|
196
|
-
export const RANDOM_SUBNETS_PER_VALIDATOR = 1;
|
|
197
|
-
export const EPOCHS_PER_RANDOM_SUBNET_SUBSCRIPTION = 256;
|
|
198
|
-
/** Rationale: https://github.com/ethereum/consensus-specs/blob/v1.1.10/specs/phase0/p2p-interface.md#why-are-there-attestation_subnet_count-attestation-subnets */
|
|
199
|
-
export const ATTESTATION_SUBNET_COUNT = 64;
|
|
200
|
-
export const SUBNETS_PER_NODE = 2;
|
|
201
|
-
export const NODE_ID_BITS = 256;
|
|
202
|
-
export const ATTESTATION_SUBNET_PREFIX_BITS = Math.log2(ATTESTATION_SUBNET_COUNT);
|
|
203
|
-
export const EPOCHS_PER_SUBNET_SUBSCRIPTION = 256;
|
|
204
|
-
|
|
205
|
-
// altair validator
|
|
206
|
-
|
|
207
|
-
export const TARGET_AGGREGATORS_PER_SYNC_SUBCOMMITTEE = 16;
|
|
208
|
-
export const SYNC_COMMITTEE_SUBNET_COUNT = 4;
|
|
209
|
-
export const SYNC_COMMITTEE_SUBNET_SIZE = Math.floor(SYNC_COMMITTEE_SIZE / SYNC_COMMITTEE_SUBNET_COUNT);
|
|
210
|
-
|
|
211
|
-
// Lightclient pre-computed
|
|
212
|
-
/**
|
|
213
|
-
* ```ts
|
|
214
|
-
* config.types.altair.BeaconState.getPathGindex(["finalizedCheckpoint", "root"])
|
|
215
|
-
* ```
|
|
216
|
-
*/
|
|
217
|
-
export const FINALIZED_ROOT_GINDEX = 105;
|
|
218
|
-
/**
|
|
219
|
-
* ```ts
|
|
220
|
-
* Math.floor(Math.log2(FINALIZED_ROOT_GINDEX))
|
|
221
|
-
* ```
|
|
222
|
-
*/
|
|
223
|
-
export const FINALIZED_ROOT_DEPTH = 6;
|
|
224
|
-
export const FINALIZED_ROOT_INDEX = 41;
|
|
225
|
-
|
|
226
|
-
/**
|
|
227
|
-
* ```ts
|
|
228
|
-
* types.ssz.capella.BeaconBlockBody.getPathInfo(['executionPayload']).gindex
|
|
229
|
-
* ```
|
|
230
|
-
*/
|
|
231
|
-
export const BLOCK_BODY_EXECUTION_PAYLOAD_GINDEX = 25;
|
|
232
|
-
/**
|
|
233
|
-
* ```ts
|
|
234
|
-
* Math.floor(Math.log2(EXECUTION_PAYLOAD_GINDEX))
|
|
235
|
-
* ```
|
|
236
|
-
*/
|
|
237
|
-
export const BLOCK_BODY_EXECUTION_PAYLOAD_DEPTH = 4;
|
|
238
|
-
export const BLOCK_BODY_EXECUTION_PAYLOAD_INDEX = 9;
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* ```ts
|
|
242
|
-
* config.types.altair.BeaconState.getPathGindex(["currentSyncCommittee"])
|
|
243
|
-
* ```
|
|
244
|
-
*/
|
|
245
|
-
export const CURRENT_SYNC_COMMITTEE_GINDEX = 54;
|
|
246
|
-
/**
|
|
247
|
-
* ```ts
|
|
248
|
-
* Math.floor(Math.log2(CURRENT_SYNC_COMMITTEE_GINDEX))
|
|
249
|
-
* ```
|
|
250
|
-
*/
|
|
251
|
-
export const CURRENT_SYNC_COMMITTEE_DEPTH = 5;
|
|
252
|
-
export const CURRENT_SYNC_COMMITTEE_INDEX = 22;
|
|
253
|
-
/**
|
|
254
|
-
* ```ts
|
|
255
|
-
* config.types.altair.BeaconState.getPathGindex(["nextSyncCommittee"])
|
|
256
|
-
* ```
|
|
257
|
-
*/
|
|
258
|
-
export const NEXT_SYNC_COMMITTEE_GINDEX = 55;
|
|
259
|
-
/**
|
|
260
|
-
* ```ts
|
|
261
|
-
* Math.floor(Math.log2(NEXT_SYNC_COMMITTEE_GINDEX))
|
|
262
|
-
* ```
|
|
263
|
-
*/
|
|
264
|
-
export const NEXT_SYNC_COMMITTEE_DEPTH = 5;
|
|
265
|
-
export const NEXT_SYNC_COMMITTEE_INDEX = 23;
|
|
266
|
-
export const MAX_REQUEST_LIGHT_CLIENT_UPDATES = 128;
|
|
267
|
-
export const MAX_REQUEST_LIGHT_CLIENT_COMMITTEE_HASHES = 128;
|
|
268
|
-
|
|
269
|
-
/**
|
|
270
|
-
* Optimistic sync
|
|
271
|
-
*/
|
|
272
|
-
export const SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY = 128;
|
|
273
|
-
export const INTERVALS_PER_SLOT = 3;
|
|
274
|
-
|
|
275
|
-
// EIP-4844: Crypto const
|
|
276
|
-
export const BYTES_PER_FIELD_ELEMENT = 32;
|
|
277
|
-
export const BLOB_TX_TYPE = 0x03;
|
|
278
|
-
export const VERSIONED_HASH_VERSION_KZG = 0x01;
|
|
279
|
-
|
|
280
|
-
// ssz.deneb.BeaconBlockBody.getPathInfo(['blobKzgCommitments',0]).gindex
|
|
281
|
-
export const KZG_COMMITMENT_GINDEX0 = 221184;
|
|
282
|
-
export const KZG_COMMITMENT_SUBTREE_INDEX0 = KZG_COMMITMENT_GINDEX0 - 2 ** KZG_COMMITMENT_INCLUSION_PROOF_DEPTH;
|
|
283
|
-
|
|
284
|
-
// ssz.deneb.BlobSidecars.elementType.fixedSize
|
|
285
|
-
export const BLOBSIDECAR_FIXED_SIZE = 131928;
|
|
286
|
-
|
|
287
|
-
// Electra Misc
|
|
288
|
-
export const UNSET_DEPOSIT_REQUESTS_START_INDEX = 2n ** 64n - 1n;
|
|
289
|
-
export const FULL_EXIT_REQUEST_AMOUNT = 0;
|
|
290
|
-
export const FINALIZED_ROOT_GINDEX_ELECTRA = 169;
|
|
291
|
-
export const FINALIZED_ROOT_DEPTH_ELECTRA = 7;
|
|
292
|
-
export const FINALIZED_ROOT_INDEX_ELECTRA = 41;
|
|
293
|
-
export const CURRENT_SYNC_COMMITTEE_GINDEX_ELECTRA = 86;
|
|
294
|
-
export const CURRENT_SYNC_COMMITTEE_DEPTH_ELECTRA = 6;
|
|
295
|
-
export const CURRENT_SYNC_COMMITTEE_INDEX_ELECTRA = 22;
|
|
296
|
-
export const NEXT_SYNC_COMMITTEE_GINDEX_ELECTRA = 87;
|
|
297
|
-
export const NEXT_SYNC_COMMITTEE_DEPTH_ELECTRA = 6;
|
|
298
|
-
export const NEXT_SYNC_COMMITTEE_INDEX_ELECTRA = 23;
|
|
299
|
-
export const DEPOSIT_REQUEST_TYPE = 0x00;
|
|
300
|
-
export const WITHDRAWAL_REQUEST_TYPE = 0x01;
|
|
301
|
-
export const CONSOLIDATION_REQUEST_TYPE = 0x02;
|
|
302
|
-
|
|
303
|
-
export const BYTES_PER_CELL = FIELD_ELEMENTS_PER_CELL * BYTES_PER_FIELD_ELEMENT;
|
|
304
|
-
|
|
305
|
-
// ssz.fulu.BeaconBlockBody.getPathInfo(['blobKzgCommitments']).gindex
|
|
306
|
-
export const KZG_COMMITMENTS_GINDEX = 27;
|
|
307
|
-
export const KZG_COMMITMENTS_SUBTREE_INDEX = KZG_COMMITMENTS_GINDEX - 2 ** KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH;
|
|
308
|
-
|
|
309
|
-
// Gloas Misc
|
|
310
|
-
export const BUILDER_PAYMENT_THRESHOLD_NUMERATOR = 6;
|
|
311
|
-
export const BUILDER_PAYMENT_THRESHOLD_DENOMINATOR = 10;
|
package/src/json.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import {BeaconPreset, beaconPresetTypes} from "./types.js";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Render BeaconPreset to JSON strings
|
|
5
|
-
* - Numbers: Render as a quoted decimal string
|
|
6
|
-
*/
|
|
7
|
-
export function presetToJson(preset: BeaconPreset): Record<string, string> {
|
|
8
|
-
const json: Record<string, string> = {};
|
|
9
|
-
|
|
10
|
-
for (const key of Object.keys(preset) as (keyof BeaconPreset)[]) {
|
|
11
|
-
json[key] = serializePresetValue(preset[key]);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
return json;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Type Wrapper to ensure that all values of BeaconPreset are number.
|
|
19
|
-
* If there are more types, expand this function with a type switch
|
|
20
|
-
*/
|
|
21
|
-
function serializePresetValue(value: number): string {
|
|
22
|
-
return value.toString(10);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Parse JSON strings of BeaconPreset
|
|
27
|
-
* - Numbers: Convert quoted decimal string to number
|
|
28
|
-
*/
|
|
29
|
-
export function presetFromJson(json: Record<string, unknown>): Partial<BeaconPreset> {
|
|
30
|
-
const beaconPreset = {} as BeaconPreset;
|
|
31
|
-
|
|
32
|
-
for (const key of Object.keys(beaconPresetTypes) as (keyof BeaconPreset)[]) {
|
|
33
|
-
const value = json[key];
|
|
34
|
-
if (value !== undefined) {
|
|
35
|
-
beaconPreset[key] = deserializePresetValue(value, key);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
return beaconPreset;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Ensure that all values of parsed BeaconPreset are numbers
|
|
44
|
-
* If there are more types, expand this function with a type switch
|
|
45
|
-
*/
|
|
46
|
-
function deserializePresetValue(valueStr: unknown, keyName: string): number {
|
|
47
|
-
if (typeof valueStr !== "string") {
|
|
48
|
-
throw Error(`Invalid ${keyName} value ${valueStr as string} expected string`);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
const value = parseInt(valueStr, 10);
|
|
52
|
-
|
|
53
|
-
if (Number.isNaN(value)) {
|
|
54
|
-
throw Error(`Invalid ${keyName} value ${valueStr} expected number`);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return value;
|
|
58
|
-
}
|
package/src/presetName.ts
DELETED
package/src/presetStatus.ts
DELETED
package/src/presets/gnosis.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import {BeaconPreset} from "../types.js";
|
|
2
|
-
import {mainnetPreset} from "./mainnet.js";
|
|
3
|
-
|
|
4
|
-
// Gnosis preset
|
|
5
|
-
// https://github.com/gnosischain/specs/tree/master/consensus/preset/gnosis
|
|
6
|
-
|
|
7
|
-
export const gnosisPreset: BeaconPreset = {
|
|
8
|
-
...mainnetPreset,
|
|
9
|
-
|
|
10
|
-
/// NOTE: Only add diff values
|
|
11
|
-
|
|
12
|
-
// phase0
|
|
13
|
-
BASE_REWARD_FACTOR: 25,
|
|
14
|
-
SLOTS_PER_EPOCH: 16,
|
|
15
|
-
|
|
16
|
-
// altair
|
|
17
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD: 512,
|
|
18
|
-
|
|
19
|
-
// capella
|
|
20
|
-
MAX_WITHDRAWALS_PER_PAYLOAD: 8,
|
|
21
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: 8192,
|
|
22
|
-
};
|
package/src/presets/mainnet.ts
DELETED
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
import {BeaconPreset} from "../types.js";
|
|
2
|
-
|
|
3
|
-
// Mainnet preset
|
|
4
|
-
// https://github.com/ethereum/consensus-specs/tree/dev/presets/mainnet
|
|
5
|
-
|
|
6
|
-
export const mainnetPreset: BeaconPreset = {
|
|
7
|
-
// Misc
|
|
8
|
-
// ---------------------------------------------------------------
|
|
9
|
-
// 2**6 (= 64)
|
|
10
|
-
MAX_COMMITTEES_PER_SLOT: 64,
|
|
11
|
-
// 2**7 (= 128)
|
|
12
|
-
TARGET_COMMITTEE_SIZE: 128,
|
|
13
|
-
// 2**11 (= 2,048)
|
|
14
|
-
MAX_VALIDATORS_PER_COMMITTEE: 2048,
|
|
15
|
-
// See issue 563
|
|
16
|
-
SHUFFLE_ROUND_COUNT: 90,
|
|
17
|
-
// 4
|
|
18
|
-
HYSTERESIS_QUOTIENT: 4,
|
|
19
|
-
// 1 (minus 0.25)
|
|
20
|
-
HYSTERESIS_DOWNWARD_MULTIPLIER: 1,
|
|
21
|
-
// 5 (plus 1.25)
|
|
22
|
-
HYSTERESIS_UPWARD_MULTIPLIER: 5,
|
|
23
|
-
|
|
24
|
-
// Gwei values
|
|
25
|
-
// ---------------------------------------------------------------
|
|
26
|
-
// 2**0 * 10**9 (= 1,000,000,000) Gwei
|
|
27
|
-
MIN_DEPOSIT_AMOUNT: 1000000000,
|
|
28
|
-
// 2**5 * 10**9 (= 32,000,000,000) Gwei
|
|
29
|
-
MAX_EFFECTIVE_BALANCE: 32000000000,
|
|
30
|
-
// 2**0 * 10**9 (= 1,000,000,000) Gwei
|
|
31
|
-
EFFECTIVE_BALANCE_INCREMENT: 1000000000,
|
|
32
|
-
|
|
33
|
-
// Time parameters
|
|
34
|
-
// ---------------------------------------------------------------
|
|
35
|
-
// 2**0 (= 1) slots 12 seconds
|
|
36
|
-
MIN_ATTESTATION_INCLUSION_DELAY: 1,
|
|
37
|
-
// 2**5 (= 32) slots 6.4 minutes
|
|
38
|
-
SLOTS_PER_EPOCH: 32,
|
|
39
|
-
// 2**0 (= 1) epochs 6.4 minutes
|
|
40
|
-
MIN_SEED_LOOKAHEAD: 1,
|
|
41
|
-
// 2**2 (= 4) epochs 25.6 minutes
|
|
42
|
-
MAX_SEED_LOOKAHEAD: 4,
|
|
43
|
-
// 2**6 (= 64) epochs ~6.8 hours
|
|
44
|
-
EPOCHS_PER_ETH1_VOTING_PERIOD: 64,
|
|
45
|
-
// 2**13 (= 8,192) slots ~13 hours
|
|
46
|
-
SLOTS_PER_HISTORICAL_ROOT: 8192,
|
|
47
|
-
// 2**2 (= 4) epochs 25.6 minutes
|
|
48
|
-
MIN_EPOCHS_TO_INACTIVITY_PENALTY: 4,
|
|
49
|
-
|
|
50
|
-
// State vector lengths
|
|
51
|
-
// ---------------------------------------------------------------
|
|
52
|
-
// 2**16 (= 65,536) epochs ~0.8 years
|
|
53
|
-
EPOCHS_PER_HISTORICAL_VECTOR: 65536,
|
|
54
|
-
// 2**13 (= 8,192) epochs ~36 days
|
|
55
|
-
EPOCHS_PER_SLASHINGS_VECTOR: 8192,
|
|
56
|
-
// 2**24 (= 16,777,216) historical roots, ~26,131 years
|
|
57
|
-
HISTORICAL_ROOTS_LIMIT: 16777216,
|
|
58
|
-
// 2**40 (= 1,099,511,627,776) validator spots
|
|
59
|
-
VALIDATOR_REGISTRY_LIMIT: 1099511627776,
|
|
60
|
-
|
|
61
|
-
// Reward and penalty quotients
|
|
62
|
-
// ---------------------------------------------------------------
|
|
63
|
-
// 2**6 (= 64)
|
|
64
|
-
BASE_REWARD_FACTOR: 64,
|
|
65
|
-
// 2**9 (= 512)
|
|
66
|
-
WHISTLEBLOWER_REWARD_QUOTIENT: 512,
|
|
67
|
-
// 2**3 (= 8)
|
|
68
|
-
PROPOSER_REWARD_QUOTIENT: 8,
|
|
69
|
-
// 2**26 (= 67,108,864)
|
|
70
|
-
INACTIVITY_PENALTY_QUOTIENT: 67108864,
|
|
71
|
-
// 2**7 (= 128) (lower safety margin at Phase 0 genesis)
|
|
72
|
-
MIN_SLASHING_PENALTY_QUOTIENT: 128,
|
|
73
|
-
PROPORTIONAL_SLASHING_MULTIPLIER: 1,
|
|
74
|
-
|
|
75
|
-
// Max operations per block
|
|
76
|
-
// ---------------------------------------------------------------
|
|
77
|
-
// 2**4 (= 16)
|
|
78
|
-
MAX_PROPOSER_SLASHINGS: 16,
|
|
79
|
-
// 2**1 (= 2)
|
|
80
|
-
MAX_ATTESTER_SLASHINGS: 2,
|
|
81
|
-
// 2**7 (= 128)
|
|
82
|
-
MAX_ATTESTATIONS: 128,
|
|
83
|
-
// 2**4 (= 16)
|
|
84
|
-
MAX_DEPOSITS: 16,
|
|
85
|
-
// 2**4 (= 16)
|
|
86
|
-
MAX_VOLUNTARY_EXITS: 16,
|
|
87
|
-
|
|
88
|
-
// ALTAIR
|
|
89
|
-
/////////
|
|
90
|
-
SYNC_COMMITTEE_SIZE: 512,
|
|
91
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD: 256,
|
|
92
|
-
INACTIVITY_PENALTY_QUOTIENT_ALTAIR: 50331648,
|
|
93
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: 64,
|
|
94
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: 2,
|
|
95
|
-
MIN_SYNC_COMMITTEE_PARTICIPANTS: 1,
|
|
96
|
-
UPDATE_TIMEOUT: 8192,
|
|
97
|
-
|
|
98
|
-
// BELLATRIX
|
|
99
|
-
////////////
|
|
100
|
-
INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: 16777216,
|
|
101
|
-
MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: 32,
|
|
102
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: 3,
|
|
103
|
-
MAX_BYTES_PER_TRANSACTION: 1073741824,
|
|
104
|
-
MAX_TRANSACTIONS_PER_PAYLOAD: 1048576,
|
|
105
|
-
BYTES_PER_LOGS_BLOOM: 256,
|
|
106
|
-
MAX_EXTRA_DATA_BYTES: 32,
|
|
107
|
-
|
|
108
|
-
// CAPELLA
|
|
109
|
-
//////////
|
|
110
|
-
MAX_BLS_TO_EXECUTION_CHANGES: 16,
|
|
111
|
-
MAX_WITHDRAWALS_PER_PAYLOAD: 16,
|
|
112
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: 16384,
|
|
113
|
-
|
|
114
|
-
// DENEB
|
|
115
|
-
///////////
|
|
116
|
-
FIELD_ELEMENTS_PER_BLOB: 4096,
|
|
117
|
-
MAX_BLOB_COMMITMENTS_PER_BLOCK: 4096,
|
|
118
|
-
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: 17,
|
|
119
|
-
|
|
120
|
-
// ELECTRA
|
|
121
|
-
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: 8192,
|
|
122
|
-
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: 16,
|
|
123
|
-
MAX_ATTESTER_SLASHINGS_ELECTRA: 1,
|
|
124
|
-
MAX_ATTESTATIONS_ELECTRA: 8,
|
|
125
|
-
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: 8,
|
|
126
|
-
MAX_PENDING_DEPOSITS_PER_EPOCH: 16,
|
|
127
|
-
// 2**11 * 10**9 (= 2,048,000,000,000) Gwei
|
|
128
|
-
MAX_EFFECTIVE_BALANCE_ELECTRA: 2048000000000,
|
|
129
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: 4096,
|
|
130
|
-
MIN_ACTIVATION_BALANCE: 32000000000,
|
|
131
|
-
PENDING_DEPOSITS_LIMIT: 134217728,
|
|
132
|
-
PENDING_PARTIAL_WITHDRAWALS_LIMIT: 134217728,
|
|
133
|
-
PENDING_CONSOLIDATIONS_LIMIT: 262144,
|
|
134
|
-
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: 2,
|
|
135
|
-
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: 4096,
|
|
136
|
-
|
|
137
|
-
// FULU
|
|
138
|
-
///////////
|
|
139
|
-
NUMBER_OF_COLUMNS: 128,
|
|
140
|
-
CELLS_PER_EXT_BLOB: 128,
|
|
141
|
-
FIELD_ELEMENTS_PER_CELL: 64,
|
|
142
|
-
FIELD_ELEMENTS_PER_EXT_BLOB: 8192,
|
|
143
|
-
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: 4,
|
|
144
|
-
|
|
145
|
-
// GLOAS
|
|
146
|
-
PTC_SIZE: 512,
|
|
147
|
-
MAX_PAYLOAD_ATTESTATIONS: 4,
|
|
148
|
-
BUILDER_PENDING_WITHDRAWALS_LIMIT: 1048576, // 2**20
|
|
149
|
-
};
|
package/src/presets/minimal.ts
DELETED
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import {BeaconPreset} from "../types.js";
|
|
2
|
-
|
|
3
|
-
// Minimal preset
|
|
4
|
-
// https://github.com/ethereum/consensus-specs/tree/dev/presets/minimal
|
|
5
|
-
|
|
6
|
-
export const minimalPreset: BeaconPreset = {
|
|
7
|
-
// Misc
|
|
8
|
-
// ---------------------------------------------------------------
|
|
9
|
-
// [customized] Just 4 committees for slot for testing purposes
|
|
10
|
-
MAX_COMMITTEES_PER_SLOT: 4,
|
|
11
|
-
// [customized] unsecure, but fast
|
|
12
|
-
TARGET_COMMITTEE_SIZE: 4,
|
|
13
|
-
// 2**11 (= 2,048)
|
|
14
|
-
MAX_VALIDATORS_PER_COMMITTEE: 2048,
|
|
15
|
-
// [customized] Faster, but unsecure.
|
|
16
|
-
SHUFFLE_ROUND_COUNT: 10,
|
|
17
|
-
// 4
|
|
18
|
-
HYSTERESIS_QUOTIENT: 4,
|
|
19
|
-
// 1 (minus 0.25)
|
|
20
|
-
HYSTERESIS_DOWNWARD_MULTIPLIER: 1,
|
|
21
|
-
// 5 (plus 1.25)
|
|
22
|
-
HYSTERESIS_UPWARD_MULTIPLIER: 5,
|
|
23
|
-
|
|
24
|
-
// Gwei values
|
|
25
|
-
// ---------------------------------------------------------------
|
|
26
|
-
// 2**0 * 10**9 (= 1,000,000,000) Gwei
|
|
27
|
-
MIN_DEPOSIT_AMOUNT: 1000000000,
|
|
28
|
-
// 2**5 * 10**9 (= 32,000,000,000) Gwei
|
|
29
|
-
MAX_EFFECTIVE_BALANCE: 32000000000,
|
|
30
|
-
// 2**0 * 10**9 (= 1,000,000,000) Gwei
|
|
31
|
-
EFFECTIVE_BALANCE_INCREMENT: 1000000000,
|
|
32
|
-
|
|
33
|
-
// Time parameters
|
|
34
|
-
// ---------------------------------------------------------------
|
|
35
|
-
// 2**0 (= 1) slots 6 seconds
|
|
36
|
-
MIN_ATTESTATION_INCLUSION_DELAY: 1,
|
|
37
|
-
// [customized] fast epochs
|
|
38
|
-
SLOTS_PER_EPOCH: 8,
|
|
39
|
-
// 2**0 (= 1) epochs
|
|
40
|
-
MIN_SEED_LOOKAHEAD: 1,
|
|
41
|
-
// 2**2 (= 4) epochs
|
|
42
|
-
MAX_SEED_LOOKAHEAD: 4,
|
|
43
|
-
// [customized] higher frequency new deposits from eth1 for testing
|
|
44
|
-
EPOCHS_PER_ETH1_VOTING_PERIOD: 4,
|
|
45
|
-
// [customized] smaller state
|
|
46
|
-
SLOTS_PER_HISTORICAL_ROOT: 64,
|
|
47
|
-
// 2**2 (= 4) epochs
|
|
48
|
-
MIN_EPOCHS_TO_INACTIVITY_PENALTY: 4,
|
|
49
|
-
|
|
50
|
-
// State vector lengths
|
|
51
|
-
// ---------------------------------------------------------------
|
|
52
|
-
// [customized] smaller state
|
|
53
|
-
EPOCHS_PER_HISTORICAL_VECTOR: 64,
|
|
54
|
-
// [customized] smaller state
|
|
55
|
-
EPOCHS_PER_SLASHINGS_VECTOR: 64,
|
|
56
|
-
// 2**24 (= 16,777,216) historical roots
|
|
57
|
-
HISTORICAL_ROOTS_LIMIT: 16777216,
|
|
58
|
-
// 2**40 (= 1,099,511,627,776) validator spots
|
|
59
|
-
VALIDATOR_REGISTRY_LIMIT: 1099511627776,
|
|
60
|
-
|
|
61
|
-
// Reward and penalty quotients
|
|
62
|
-
// ---------------------------------------------------------------
|
|
63
|
-
// 2**6 (= 64)
|
|
64
|
-
BASE_REWARD_FACTOR: 64,
|
|
65
|
-
// 2**9 (= 512)
|
|
66
|
-
WHISTLEBLOWER_REWARD_QUOTIENT: 512,
|
|
67
|
-
// 2**3 (= 8)
|
|
68
|
-
PROPOSER_REWARD_QUOTIENT: 8,
|
|
69
|
-
// [customized] 2**25 (= 33,554,432)
|
|
70
|
-
INACTIVITY_PENALTY_QUOTIENT: 33554432,
|
|
71
|
-
// [customized] 2**6 (= 64)
|
|
72
|
-
MIN_SLASHING_PENALTY_QUOTIENT: 64,
|
|
73
|
-
// [customized] 2 (lower safety margin than Phase 0 genesis but different than mainnet config for testing)
|
|
74
|
-
PROPORTIONAL_SLASHING_MULTIPLIER: 2,
|
|
75
|
-
|
|
76
|
-
// Max operations per block
|
|
77
|
-
// ---------------------------------------------------------------
|
|
78
|
-
// 2**4 (= 16)
|
|
79
|
-
MAX_PROPOSER_SLASHINGS: 16,
|
|
80
|
-
// 2**1 (= 2)
|
|
81
|
-
MAX_ATTESTER_SLASHINGS: 2,
|
|
82
|
-
// 2**7 (= 128)
|
|
83
|
-
MAX_ATTESTATIONS: 128,
|
|
84
|
-
// 2**4 (= 16)
|
|
85
|
-
MAX_DEPOSITS: 16,
|
|
86
|
-
// 2**4 (= 16)
|
|
87
|
-
MAX_VOLUNTARY_EXITS: 16,
|
|
88
|
-
|
|
89
|
-
// ALTAIR
|
|
90
|
-
/////////
|
|
91
|
-
SYNC_COMMITTEE_SIZE: 32,
|
|
92
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD: 8,
|
|
93
|
-
INACTIVITY_PENALTY_QUOTIENT_ALTAIR: 50331648,
|
|
94
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: 64,
|
|
95
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: 2,
|
|
96
|
-
MIN_SYNC_COMMITTEE_PARTICIPANTS: 1,
|
|
97
|
-
UPDATE_TIMEOUT: 64,
|
|
98
|
-
|
|
99
|
-
// BELLATRIX
|
|
100
|
-
////////////
|
|
101
|
-
INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: 16777216,
|
|
102
|
-
MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: 32,
|
|
103
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: 3,
|
|
104
|
-
MAX_BYTES_PER_TRANSACTION: 1073741824,
|
|
105
|
-
MAX_TRANSACTIONS_PER_PAYLOAD: 1048576,
|
|
106
|
-
BYTES_PER_LOGS_BLOOM: 256,
|
|
107
|
-
MAX_EXTRA_DATA_BYTES: 32,
|
|
108
|
-
|
|
109
|
-
// CAPELLA
|
|
110
|
-
//////////
|
|
111
|
-
MAX_BLS_TO_EXECUTION_CHANGES: 16,
|
|
112
|
-
MAX_WITHDRAWALS_PER_PAYLOAD: 4,
|
|
113
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: 16,
|
|
114
|
-
|
|
115
|
-
// DENEB
|
|
116
|
-
///////////
|
|
117
|
-
FIELD_ELEMENTS_PER_BLOB: 4096,
|
|
118
|
-
|
|
119
|
-
// ELECTRA
|
|
120
|
-
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: 8192,
|
|
121
|
-
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: 16,
|
|
122
|
-
MAX_ATTESTER_SLASHINGS_ELECTRA: 1,
|
|
123
|
-
MAX_ATTESTATIONS_ELECTRA: 8,
|
|
124
|
-
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: 2,
|
|
125
|
-
MAX_PENDING_DEPOSITS_PER_EPOCH: 16,
|
|
126
|
-
// 2**11 * 10**9 (= 2,048,000,000,000) Gwei
|
|
127
|
-
MAX_EFFECTIVE_BALANCE_ELECTRA: 2048000000000,
|
|
128
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: 4096,
|
|
129
|
-
MIN_ACTIVATION_BALANCE: 32000000000,
|
|
130
|
-
PENDING_DEPOSITS_LIMIT: 134217728,
|
|
131
|
-
PENDING_PARTIAL_WITHDRAWALS_LIMIT: 64,
|
|
132
|
-
PENDING_CONSOLIDATIONS_LIMIT: 64,
|
|
133
|
-
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: 2,
|
|
134
|
-
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: 4096,
|
|
135
|
-
MAX_BLOB_COMMITMENTS_PER_BLOCK: 4096,
|
|
136
|
-
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: 17,
|
|
137
|
-
|
|
138
|
-
// FULU
|
|
139
|
-
///////////
|
|
140
|
-
NUMBER_OF_COLUMNS: 128,
|
|
141
|
-
CELLS_PER_EXT_BLOB: 128,
|
|
142
|
-
FIELD_ELEMENTS_PER_CELL: 64,
|
|
143
|
-
FIELD_ELEMENTS_PER_EXT_BLOB: 8192,
|
|
144
|
-
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: 4,
|
|
145
|
-
|
|
146
|
-
// GLOAS
|
|
147
|
-
PTC_SIZE: 2,
|
|
148
|
-
MAX_PAYLOAD_ATTESTATIONS: 4,
|
|
149
|
-
BUILDER_PENDING_WITHDRAWALS_LIMIT: 1048576, // 2**20
|
|
150
|
-
};
|
package/src/setPreset.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {presetFromJson} from "./json.js";
|
|
2
|
-
import {PresetName} from "./presetName.js";
|
|
3
|
-
import {presetStatus} from "./presetStatus.js";
|
|
4
|
-
import {BeaconPreset} from "./types.js";
|
|
5
|
-
|
|
6
|
-
export {PresetName, presetFromJson};
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* The preset name currently exported by this library
|
|
10
|
-
*
|
|
11
|
-
* The `LODESTAR_PRESET` environment variable is used to select the active preset
|
|
12
|
-
* If `LODESTAR_PRESET` is not set, the default is `mainnet`.
|
|
13
|
-
*
|
|
14
|
-
* The active preset can be manually overridden with `setActivePreset`
|
|
15
|
-
*/
|
|
16
|
-
export let userSelectedPreset: PresetName | null = null;
|
|
17
|
-
|
|
18
|
-
export let userOverrides: Partial<BeaconPreset> | undefined = undefined;
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Override the active preset
|
|
22
|
-
*
|
|
23
|
-
* WARNING: Lodestar libraries rely on preset values being _constant_, so the active preset must be set _before_ loading any other lodestar libraries.
|
|
24
|
-
*
|
|
25
|
-
* Only call this function if you _really_ know what you are doing.
|
|
26
|
-
*
|
|
27
|
-
* @param presetName - the preset to use as a base
|
|
28
|
-
* @param overrides - customized fields
|
|
29
|
-
*/
|
|
30
|
-
export function setActivePreset(presetName: PresetName | null, overrides?: Partial<BeaconPreset>): void {
|
|
31
|
-
if (presetStatus.frozen) {
|
|
32
|
-
throw Error(`Lodestar preset is already frozen. You must call setActivePreset() at the top of your
|
|
33
|
-
application entry point, before importing @lodestar/params, or any library that may import it.
|
|
34
|
-
|
|
35
|
-
\`\`\`
|
|
36
|
-
// index.ts
|
|
37
|
-
import {setActivePreset, PresetName} from "@lodestar/params/setPreset"
|
|
38
|
-
setActivePreset(PresetName.minimal)
|
|
39
|
-
// Now you can safely import from other paths and consume params
|
|
40
|
-
import {SLOTS_PER_EPOCH} from "@lodestar/params"
|
|
41
|
-
console.log({SLOTS_PER_EPOCH})
|
|
42
|
-
\`\`\`
|
|
43
|
-
`);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
userSelectedPreset = presetName;
|
|
47
|
-
userOverrides = overrides;
|
|
48
|
-
}
|
package/src/types.ts
DELETED
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compile-time chain configuration
|
|
3
|
-
*/
|
|
4
|
-
export type BeaconPreset = {
|
|
5
|
-
// Misc
|
|
6
|
-
MAX_COMMITTEES_PER_SLOT: number;
|
|
7
|
-
TARGET_COMMITTEE_SIZE: number;
|
|
8
|
-
MAX_VALIDATORS_PER_COMMITTEE: number;
|
|
9
|
-
|
|
10
|
-
SHUFFLE_ROUND_COUNT: number;
|
|
11
|
-
|
|
12
|
-
HYSTERESIS_QUOTIENT: number;
|
|
13
|
-
HYSTERESIS_DOWNWARD_MULTIPLIER: number;
|
|
14
|
-
HYSTERESIS_UPWARD_MULTIPLIER: number;
|
|
15
|
-
|
|
16
|
-
// Gwei Values
|
|
17
|
-
MIN_DEPOSIT_AMOUNT: number;
|
|
18
|
-
MAX_EFFECTIVE_BALANCE: number;
|
|
19
|
-
EFFECTIVE_BALANCE_INCREMENT: number;
|
|
20
|
-
|
|
21
|
-
// Time parameters
|
|
22
|
-
MIN_ATTESTATION_INCLUSION_DELAY: number;
|
|
23
|
-
SLOTS_PER_EPOCH: number;
|
|
24
|
-
MIN_SEED_LOOKAHEAD: number;
|
|
25
|
-
MAX_SEED_LOOKAHEAD: number;
|
|
26
|
-
EPOCHS_PER_ETH1_VOTING_PERIOD: number;
|
|
27
|
-
SLOTS_PER_HISTORICAL_ROOT: number;
|
|
28
|
-
MIN_EPOCHS_TO_INACTIVITY_PENALTY: number;
|
|
29
|
-
|
|
30
|
-
// State vector lengths
|
|
31
|
-
EPOCHS_PER_HISTORICAL_VECTOR: number;
|
|
32
|
-
EPOCHS_PER_SLASHINGS_VECTOR: number;
|
|
33
|
-
HISTORICAL_ROOTS_LIMIT: number;
|
|
34
|
-
VALIDATOR_REGISTRY_LIMIT: number;
|
|
35
|
-
|
|
36
|
-
// Reward and penalty quotients
|
|
37
|
-
BASE_REWARD_FACTOR: number;
|
|
38
|
-
WHISTLEBLOWER_REWARD_QUOTIENT: number;
|
|
39
|
-
PROPOSER_REWARD_QUOTIENT: number;
|
|
40
|
-
INACTIVITY_PENALTY_QUOTIENT: number;
|
|
41
|
-
MIN_SLASHING_PENALTY_QUOTIENT: number;
|
|
42
|
-
PROPORTIONAL_SLASHING_MULTIPLIER: number;
|
|
43
|
-
|
|
44
|
-
// Max operations per block
|
|
45
|
-
MAX_PROPOSER_SLASHINGS: number;
|
|
46
|
-
MAX_ATTESTER_SLASHINGS: number;
|
|
47
|
-
MAX_ATTESTATIONS: number;
|
|
48
|
-
MAX_DEPOSITS: number;
|
|
49
|
-
MAX_VOLUNTARY_EXITS: number;
|
|
50
|
-
|
|
51
|
-
// ALTAIR
|
|
52
|
-
/////////
|
|
53
|
-
SYNC_COMMITTEE_SIZE: number;
|
|
54
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD: number;
|
|
55
|
-
INACTIVITY_PENALTY_QUOTIENT_ALTAIR: number;
|
|
56
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: number;
|
|
57
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: number;
|
|
58
|
-
MIN_SYNC_COMMITTEE_PARTICIPANTS: number;
|
|
59
|
-
UPDATE_TIMEOUT: number;
|
|
60
|
-
|
|
61
|
-
// BELLATRIX
|
|
62
|
-
////////////
|
|
63
|
-
INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: number;
|
|
64
|
-
MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: number;
|
|
65
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: number;
|
|
66
|
-
MAX_BYTES_PER_TRANSACTION: number;
|
|
67
|
-
MAX_TRANSACTIONS_PER_PAYLOAD: number;
|
|
68
|
-
BYTES_PER_LOGS_BLOOM: number;
|
|
69
|
-
MAX_EXTRA_DATA_BYTES: number;
|
|
70
|
-
|
|
71
|
-
// CAPELLA
|
|
72
|
-
//////////
|
|
73
|
-
MAX_BLS_TO_EXECUTION_CHANGES: number;
|
|
74
|
-
MAX_WITHDRAWALS_PER_PAYLOAD: number;
|
|
75
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: number;
|
|
76
|
-
|
|
77
|
-
// DENEB
|
|
78
|
-
///////////
|
|
79
|
-
FIELD_ELEMENTS_PER_BLOB: number;
|
|
80
|
-
MAX_BLOB_COMMITMENTS_PER_BLOCK: number;
|
|
81
|
-
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: number;
|
|
82
|
-
|
|
83
|
-
// ELECTRA
|
|
84
|
-
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: number;
|
|
85
|
-
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: number;
|
|
86
|
-
MAX_ATTESTER_SLASHINGS_ELECTRA: number;
|
|
87
|
-
MAX_ATTESTATIONS_ELECTRA: number;
|
|
88
|
-
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: number;
|
|
89
|
-
MAX_PENDING_DEPOSITS_PER_EPOCH: number;
|
|
90
|
-
MAX_EFFECTIVE_BALANCE_ELECTRA: number;
|
|
91
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: number;
|
|
92
|
-
MIN_ACTIVATION_BALANCE: number;
|
|
93
|
-
PENDING_DEPOSITS_LIMIT: number;
|
|
94
|
-
PENDING_PARTIAL_WITHDRAWALS_LIMIT: number;
|
|
95
|
-
PENDING_CONSOLIDATIONS_LIMIT: number;
|
|
96
|
-
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: number;
|
|
97
|
-
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: number;
|
|
98
|
-
|
|
99
|
-
// FULU
|
|
100
|
-
///////////
|
|
101
|
-
NUMBER_OF_COLUMNS: number;
|
|
102
|
-
CELLS_PER_EXT_BLOB: number;
|
|
103
|
-
FIELD_ELEMENTS_PER_CELL: number;
|
|
104
|
-
FIELD_ELEMENTS_PER_EXT_BLOB: number;
|
|
105
|
-
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: number;
|
|
106
|
-
|
|
107
|
-
// GLOAS
|
|
108
|
-
PTC_SIZE: number;
|
|
109
|
-
MAX_PAYLOAD_ATTESTATIONS: number;
|
|
110
|
-
BUILDER_PENDING_WITHDRAWALS_LIMIT: number;
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Presets only contain numbers, just used to filter out extraneous keys
|
|
115
|
-
* when overriding the active preset with custom values from file
|
|
116
|
-
*/
|
|
117
|
-
export const beaconPresetTypes: BeaconPresetTypes = {
|
|
118
|
-
// Misc
|
|
119
|
-
MAX_COMMITTEES_PER_SLOT: "number",
|
|
120
|
-
TARGET_COMMITTEE_SIZE: "number",
|
|
121
|
-
MAX_VALIDATORS_PER_COMMITTEE: "number",
|
|
122
|
-
|
|
123
|
-
SHUFFLE_ROUND_COUNT: "number",
|
|
124
|
-
|
|
125
|
-
HYSTERESIS_QUOTIENT: "number",
|
|
126
|
-
HYSTERESIS_DOWNWARD_MULTIPLIER: "number",
|
|
127
|
-
HYSTERESIS_UPWARD_MULTIPLIER: "number",
|
|
128
|
-
|
|
129
|
-
// Gwei Values
|
|
130
|
-
MIN_DEPOSIT_AMOUNT: "number",
|
|
131
|
-
MAX_EFFECTIVE_BALANCE: "number",
|
|
132
|
-
EFFECTIVE_BALANCE_INCREMENT: "number",
|
|
133
|
-
|
|
134
|
-
// Time parameters
|
|
135
|
-
MIN_ATTESTATION_INCLUSION_DELAY: "number",
|
|
136
|
-
SLOTS_PER_EPOCH: "number",
|
|
137
|
-
MIN_SEED_LOOKAHEAD: "number",
|
|
138
|
-
MAX_SEED_LOOKAHEAD: "number",
|
|
139
|
-
EPOCHS_PER_ETH1_VOTING_PERIOD: "number",
|
|
140
|
-
SLOTS_PER_HISTORICAL_ROOT: "number",
|
|
141
|
-
MIN_EPOCHS_TO_INACTIVITY_PENALTY: "number",
|
|
142
|
-
|
|
143
|
-
// State vector lengths
|
|
144
|
-
EPOCHS_PER_HISTORICAL_VECTOR: "number",
|
|
145
|
-
EPOCHS_PER_SLASHINGS_VECTOR: "number",
|
|
146
|
-
HISTORICAL_ROOTS_LIMIT: "number",
|
|
147
|
-
VALIDATOR_REGISTRY_LIMIT: "number",
|
|
148
|
-
|
|
149
|
-
// Reward and penalty quotients
|
|
150
|
-
BASE_REWARD_FACTOR: "number",
|
|
151
|
-
WHISTLEBLOWER_REWARD_QUOTIENT: "number",
|
|
152
|
-
PROPOSER_REWARD_QUOTIENT: "number",
|
|
153
|
-
INACTIVITY_PENALTY_QUOTIENT: "number",
|
|
154
|
-
MIN_SLASHING_PENALTY_QUOTIENT: "number",
|
|
155
|
-
PROPORTIONAL_SLASHING_MULTIPLIER: "number",
|
|
156
|
-
|
|
157
|
-
// Max operations per block
|
|
158
|
-
MAX_PROPOSER_SLASHINGS: "number",
|
|
159
|
-
MAX_ATTESTER_SLASHINGS: "number",
|
|
160
|
-
MAX_ATTESTATIONS: "number",
|
|
161
|
-
MAX_DEPOSITS: "number",
|
|
162
|
-
MAX_VOLUNTARY_EXITS: "number",
|
|
163
|
-
|
|
164
|
-
// ALTAIR
|
|
165
|
-
/////////
|
|
166
|
-
SYNC_COMMITTEE_SIZE: "number",
|
|
167
|
-
EPOCHS_PER_SYNC_COMMITTEE_PERIOD: "number",
|
|
168
|
-
INACTIVITY_PENALTY_QUOTIENT_ALTAIR: "number",
|
|
169
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: "number",
|
|
170
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: "number",
|
|
171
|
-
MIN_SYNC_COMMITTEE_PARTICIPANTS: "number",
|
|
172
|
-
UPDATE_TIMEOUT: "number",
|
|
173
|
-
|
|
174
|
-
// BELLATRIX
|
|
175
|
-
////////////
|
|
176
|
-
INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: "number",
|
|
177
|
-
MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: "number",
|
|
178
|
-
PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: "number",
|
|
179
|
-
MAX_BYTES_PER_TRANSACTION: "number",
|
|
180
|
-
MAX_TRANSACTIONS_PER_PAYLOAD: "number",
|
|
181
|
-
BYTES_PER_LOGS_BLOOM: "number",
|
|
182
|
-
MAX_EXTRA_DATA_BYTES: "number",
|
|
183
|
-
|
|
184
|
-
// CAPELLA
|
|
185
|
-
//////////
|
|
186
|
-
MAX_BLS_TO_EXECUTION_CHANGES: "number",
|
|
187
|
-
MAX_WITHDRAWALS_PER_PAYLOAD: "number",
|
|
188
|
-
MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: "number",
|
|
189
|
-
|
|
190
|
-
// DENEB
|
|
191
|
-
///////////
|
|
192
|
-
FIELD_ELEMENTS_PER_BLOB: "number",
|
|
193
|
-
MAX_BLOB_COMMITMENTS_PER_BLOCK: "number",
|
|
194
|
-
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: "number",
|
|
195
|
-
|
|
196
|
-
// ELECTRA
|
|
197
|
-
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: "number",
|
|
198
|
-
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: "number",
|
|
199
|
-
MAX_ATTESTER_SLASHINGS_ELECTRA: "number",
|
|
200
|
-
MAX_ATTESTATIONS_ELECTRA: "number",
|
|
201
|
-
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: "number",
|
|
202
|
-
MAX_PENDING_DEPOSITS_PER_EPOCH: "number",
|
|
203
|
-
MAX_EFFECTIVE_BALANCE_ELECTRA: "number",
|
|
204
|
-
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: "number",
|
|
205
|
-
MIN_ACTIVATION_BALANCE: "number",
|
|
206
|
-
PENDING_DEPOSITS_LIMIT: "number",
|
|
207
|
-
PENDING_PARTIAL_WITHDRAWALS_LIMIT: "number",
|
|
208
|
-
PENDING_CONSOLIDATIONS_LIMIT: "number",
|
|
209
|
-
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: "number",
|
|
210
|
-
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: "number",
|
|
211
|
-
|
|
212
|
-
// FULU
|
|
213
|
-
///////////
|
|
214
|
-
NUMBER_OF_COLUMNS: "number",
|
|
215
|
-
CELLS_PER_EXT_BLOB: "number",
|
|
216
|
-
FIELD_ELEMENTS_PER_CELL: "number",
|
|
217
|
-
FIELD_ELEMENTS_PER_EXT_BLOB: "number",
|
|
218
|
-
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: "number",
|
|
219
|
-
|
|
220
|
-
// GLOAS
|
|
221
|
-
PTC_SIZE: "number",
|
|
222
|
-
MAX_PAYLOAD_ATTESTATIONS: "number",
|
|
223
|
-
BUILDER_PENDING_WITHDRAWALS_LIMIT: "number",
|
|
224
|
-
};
|
|
225
|
-
|
|
226
|
-
type BeaconPresetTypes = {
|
|
227
|
-
[K in keyof BeaconPreset]: "number";
|
|
228
|
-
};
|