@lodestar/config 1.35.0-dev.e9dd48f165 → 1.35.0-dev.f45a2be721

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +4 -4
  2. package/lib/beaconConfig.d.ts.map +1 -0
  3. package/lib/chainConfig/configs/mainnet.d.ts.map +1 -0
  4. package/lib/chainConfig/configs/mainnet.js +24 -1
  5. package/lib/chainConfig/configs/mainnet.js.map +1 -1
  6. package/lib/chainConfig/configs/minimal.d.ts.map +1 -0
  7. package/lib/chainConfig/configs/minimal.js +24 -1
  8. package/lib/chainConfig/configs/minimal.js.map +1 -1
  9. package/lib/chainConfig/default.d.ts.map +1 -0
  10. package/lib/chainConfig/index.d.ts +2 -2
  11. package/lib/chainConfig/index.d.ts.map +1 -0
  12. package/lib/chainConfig/index.js +7 -2
  13. package/lib/chainConfig/index.js.map +1 -1
  14. package/lib/chainConfig/json.d.ts.map +1 -0
  15. package/lib/chainConfig/networks/chiado.d.ts.map +1 -0
  16. package/lib/chainConfig/networks/chiado.js +3 -0
  17. package/lib/chainConfig/networks/chiado.js.map +1 -1
  18. package/lib/chainConfig/networks/ephemery.d.ts.map +1 -0
  19. package/lib/chainConfig/networks/ephemery.js +3 -0
  20. package/lib/chainConfig/networks/ephemery.js.map +1 -1
  21. package/lib/chainConfig/networks/gnosis.d.ts.map +1 -0
  22. package/lib/chainConfig/networks/gnosis.js +3 -0
  23. package/lib/chainConfig/networks/gnosis.js.map +1 -1
  24. package/lib/chainConfig/networks/holesky.d.ts.map +1 -0
  25. package/lib/chainConfig/networks/holesky.js +14 -2
  26. package/lib/chainConfig/networks/holesky.js.map +1 -1
  27. package/lib/chainConfig/networks/hoodi.d.ts.map +1 -0
  28. package/lib/chainConfig/networks/hoodi.js +14 -2
  29. package/lib/chainConfig/networks/hoodi.js.map +1 -1
  30. package/lib/chainConfig/networks/mainnet.d.ts.map +1 -0
  31. package/lib/chainConfig/networks/sepolia.d.ts.map +1 -0
  32. package/lib/chainConfig/networks/sepolia.js +14 -2
  33. package/lib/chainConfig/networks/sepolia.js.map +1 -1
  34. package/lib/chainConfig/types.d.ts +12 -0
  35. package/lib/chainConfig/types.d.ts.map +1 -0
  36. package/lib/chainConfig/types.js +12 -0
  37. package/lib/chainConfig/types.js.map +1 -1
  38. package/lib/configs.d.ts.map +1 -0
  39. package/lib/default.d.ts +1 -1
  40. package/lib/default.d.ts.map +1 -0
  41. package/lib/forkConfig/index.d.ts.map +1 -0
  42. package/lib/forkConfig/index.js +30 -3
  43. package/lib/forkConfig/index.js.map +1 -1
  44. package/lib/forkConfig/types.d.ts +7 -2
  45. package/lib/forkConfig/types.d.ts.map +1 -0
  46. package/lib/genesisConfig/index.d.ts.map +1 -0
  47. package/lib/genesisConfig/index.js.map +1 -1
  48. package/lib/genesisConfig/types.d.ts.map +1 -0
  49. package/lib/index.d.ts +2 -2
  50. package/lib/index.d.ts.map +1 -0
  51. package/lib/index.js +2 -2
  52. package/lib/index.js.map +1 -1
  53. package/lib/networks.d.ts.map +1 -0
  54. package/lib/utils/validateBlobSchedule.d.ts.map +1 -0
  55. package/package.json +12 -10
  56. package/src/beaconConfig.ts +31 -0
  57. package/src/chainConfig/configs/mainnet.ts +172 -0
  58. package/src/chainConfig/configs/minimal.ts +167 -0
  59. package/src/chainConfig/default.ts +19 -0
  60. package/src/chainConfig/index.ts +33 -0
  61. package/src/chainConfig/json.ts +175 -0
  62. package/src/chainConfig/networks/chiado.ts +52 -0
  63. package/src/chainConfig/networks/ephemery.ts +74 -0
  64. package/src/chainConfig/networks/gnosis.ts +77 -0
  65. package/src/chainConfig/networks/holesky.ts +67 -0
  66. package/src/chainConfig/networks/hoodi.ts +67 -0
  67. package/src/chainConfig/networks/mainnet.ts +19 -0
  68. package/src/chainConfig/networks/sepolia.ts +64 -0
  69. package/src/chainConfig/types.ts +267 -0
  70. package/src/configs.ts +4 -0
  71. package/src/default.ts +6 -0
  72. package/src/forkConfig/index.ts +236 -0
  73. package/src/forkConfig/types.ts +68 -0
  74. package/src/genesisConfig/index.ts +180 -0
  75. package/src/genesisConfig/types.ts +29 -0
  76. package/src/index.ts +4 -0
  77. package/src/networks.ts +65 -0
  78. package/src/utils/validateBlobSchedule.ts +32 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/forkConfig/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAC9G,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAE7E,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,QAAQ,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,CAAC;AAE1D,MAAM,MAAM,cAAc,GAAG;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,gBAAgB,EAAE,SAAS,CAAA;CAAC,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,wDAAwD;IACxD,KAAK,EAAE;SAAE,CAAC,IAAI,QAAQ,GAAG,QAAQ;KAAC,CAAC;IACnC,wBAAwB,EAAE,QAAQ,EAAE,CAAC;IACrC,yBAAyB,EAAE,QAAQ,EAAE,CAAC;IACtC,iCAAiC,EAAE,YAAY,EAAE,CAAC;IAClD,kCAAkC,EAAE,YAAY,EAAE,CAAC;IAEnD,2DAA2D;IAC3D,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAAC;IAClC,4DAA4D;IAC5D,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC3C,sDAAsD;IACtD,sBAAsB,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAAC;IACnD,6CAA6C;IAC7C,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAAC;IAClC,wDAAwD;IACxD,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IAChC,yDAAyD;IACzD,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC;IACzC,gDAAgD;IAChD,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACpC,iCAAiC;IACjC,YAAY,CAAC,CAAC,SAAS,QAAQ,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IACvE,4CAA4C;IAC5C,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAChE,+CAA+C;IAC/C,yBAAyB,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACtE,2CAA2C;IAC3C,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;IAC9D,+CAA+C;IAC/C,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;IAC1C,2CAA2C;IAC3C,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,cAAc,CAAC;IAEhD,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5C,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC1C,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5C,wBAAwB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjD,wBAAwB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IAEjD,yDAAyD;IACzD,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;CACzD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/genesisConfig/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,KAAK,EAAE,UAAU,EAAE,IAAI,EAA6B,MAAM,iBAAiB,CAAC;AAEhG,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAC,aAAa,EAAgB,MAAM,YAAY,CAAC;AAExD,YAAY,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAElD,wBAAgB,mBAAmB,CAAC,eAAe,EAAE,eAAe,EAAE,qBAAqB,EAAE,IAAI,GAAG,aAAa,CAmIhH;AAsBD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,EAAE,qBAAqB,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,CAgBhH"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/genesisConfig/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/genesisConfig/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/genesisConfig/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAC,YAAY,EAAC,MAAM,wBAAwB,CAAC;AAEpD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,YAAY,CAAC;IAC9E,6BAA6B,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,IAAI,CAAC;IAC3F,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU,CAAC;IAC5D,0BAA0B,CAAC,QAAQ,EAAE,YAAY,GAAG,aAAa,CAAC;CACnE,CAAC;AAEF,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC;IACnF;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;IAExE,yBAAyB,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC;IAE3E,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC;CACtC"}
package/lib/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
+ export * from "./beaconConfig.js";
1
2
  export * from "./chainConfig/index.js";
2
- export * from "./genesisConfig/index.js";
3
3
  export * from "./forkConfig/index.js";
4
- export * from "./beaconConfig.js";
4
+ export * from "./genesisConfig/index.js";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC"}
package/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
+ export * from "./beaconConfig.js";
1
2
  export * from "./chainConfig/index.js";
2
- export * from "./genesisConfig/index.js";
3
3
  export * from "./forkConfig/index.js";
4
- export * from "./beaconConfig.js";
4
+ export * from "./genesisConfig/index.js";
5
5
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../src/networks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,iBAAiB,EAAC,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAC,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAC,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAC,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AAErE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;AACzG,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,WAAW,CAQhE,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,WAAW,CA6BxD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateBlobSchedule.d.ts","sourceRoot":"","sources":["../../src/utils/validateBlobSchedule.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAErD,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CA4BrE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodestar/config",
3
- "version": "1.35.0-dev.e9dd48f165",
3
+ "version": "1.35.0-dev.f45a2be721",
4
4
  "description": "Chain configuration required for lodestar",
5
5
  "author": "ChainSafe Systems",
6
6
  "license": "Apache-2.0",
@@ -11,15 +11,19 @@
11
11
  "type": "module",
12
12
  "exports": {
13
13
  ".": {
14
+ "bun": "./src/index.ts",
14
15
  "import": "./lib/index.js"
15
16
  },
16
17
  "./default": {
18
+ "bun": "./src/default.ts",
17
19
  "import": "./lib/default.js"
18
20
  },
19
21
  "./networks": {
22
+ "bun": "./src/networks.ts",
20
23
  "import": "./lib/networks.js"
21
24
  },
22
25
  "./configs": {
26
+ "bun": "./src/configs.ts",
23
27
  "import": "./lib/configs.js"
24
28
  }
25
29
  },
@@ -34,11 +38,9 @@
34
38
  },
35
39
  "types": "lib/index.d.ts",
36
40
  "files": [
37
- "lib/**/*.js",
38
- "lib/**/*.js.map",
39
- "lib/**/*.d.ts",
40
- "*.d.ts",
41
- "*.js"
41
+ "src",
42
+ "lib",
43
+ "!**/*.tsbuildinfo"
42
44
  ],
43
45
  "scripts": {
44
46
  "clean": "rm -rf lib && rm -f *.tsbuildinfo",
@@ -65,9 +67,9 @@
65
67
  ],
66
68
  "dependencies": {
67
69
  "@chainsafe/ssz": "^1.2.2",
68
- "@lodestar/params": "1.35.0-dev.e9dd48f165",
69
- "@lodestar/types": "1.35.0-dev.e9dd48f165",
70
- "@lodestar/utils": "1.35.0-dev.e9dd48f165"
70
+ "@lodestar/params": "1.35.0-dev.f45a2be721",
71
+ "@lodestar/types": "1.35.0-dev.f45a2be721",
72
+ "@lodestar/utils": "1.35.0-dev.f45a2be721"
71
73
  },
72
- "gitHead": "82df91624346f748ec7695eb2caf4160417c989f"
74
+ "gitHead": "580c5c222b9d61894860d10fd17b7808fba59b23"
73
75
  }
@@ -0,0 +1,31 @@
1
+ import {Root} from "@lodestar/types";
2
+ import {ChainConfig, createChainConfig} from "./chainConfig/index.js";
3
+ import {ForkConfig, createForkConfig} from "./forkConfig/index.js";
4
+ import {createCachedGenesis} from "./genesisConfig/index.js";
5
+ import {CachedGenesis} from "./genesisConfig/types.js";
6
+
7
+ /**
8
+ * Chain run-time configuration with additional fork schedule helpers
9
+ */
10
+ export type ChainForkConfig = ChainConfig & ForkConfig;
11
+
12
+ export type BeaconConfig = ChainForkConfig & CachedGenesis;
13
+
14
+ /**
15
+ * Create an `BeaconConfig`, filling in missing values with preset defaults
16
+ */
17
+ export function createChainForkConfig(chainConfig: Partial<ChainConfig>): ChainForkConfig {
18
+ const fullChainConfig = createChainConfig(chainConfig);
19
+ return {
20
+ ...fullChainConfig,
21
+ ...createForkConfig(fullChainConfig),
22
+ };
23
+ }
24
+
25
+ export function createBeaconConfig(chainConfig: Partial<ChainConfig>, genesisValidatorsRoot: Root): BeaconConfig {
26
+ const chainForkConfig = createChainForkConfig(chainConfig);
27
+ return {
28
+ ...chainForkConfig,
29
+ ...createCachedGenesis(chainForkConfig, genesisValidatorsRoot),
30
+ };
31
+ }
@@ -0,0 +1,172 @@
1
+ import {PresetName} from "@lodestar/params";
2
+ import {fromHex as b} from "@lodestar/utils";
3
+ import {ChainConfig} from "../types.js";
4
+
5
+ // Mainnet config
6
+ // https://github.com/ethereum/consensus-specs/blob/dev/configs/mainnet.yaml
7
+
8
+ export const chainConfig: ChainConfig = {
9
+ // Extends the mainnet preset
10
+ PRESET_BASE: PresetName.mainnet,
11
+ CONFIG_NAME: "mainnet",
12
+
13
+ // Transition
14
+ // Estimated: Sept 15, 2022
15
+ TERMINAL_TOTAL_DIFFICULTY: BigInt("58750000000000000000000"),
16
+ TERMINAL_BLOCK_HASH: b("0x0000000000000000000000000000000000000000000000000000000000000000"),
17
+ TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: Infinity,
18
+
19
+ // Genesis
20
+ // ---------------------------------------------------------------
21
+ // `2**14` (= 16,384)
22
+ MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: 16384,
23
+ // Dec 1, 2020, 12pm UTC
24
+ MIN_GENESIS_TIME: 1606824000,
25
+ // Mainnet initial fork version, recommend altering for testnets
26
+ GENESIS_FORK_VERSION: b("0x00000000"),
27
+ // 604800 seconds (7 days)
28
+ GENESIS_DELAY: 604800,
29
+
30
+ // Forking
31
+ // ---------------------------------------------------------------
32
+ // Some forks are disabled for now:
33
+ // - These may be re-assigned to another fork-version later
34
+ // - Temporarily set to max uint64 value: 2**64 - 1
35
+
36
+ // Altair
37
+ ALTAIR_FORK_VERSION: b("0x01000000"),
38
+ ALTAIR_FORK_EPOCH: 74240, // Oct 27, 2021, 10:56:23am UTC
39
+ // Bellatrix
40
+ BELLATRIX_FORK_VERSION: b("0x02000000"),
41
+ BELLATRIX_FORK_EPOCH: 144896, // Sept 6, 2022, 11:34:47am UTC
42
+
43
+ // Capella
44
+ CAPELLA_FORK_VERSION: b("0x03000000"),
45
+ CAPELLA_FORK_EPOCH: 194048, // April 12 (epoch: 194048 slot: 6209536 UTC: 4/12/2023, 10:27:35 PM)
46
+
47
+ // Deneb
48
+ DENEB_FORK_VERSION: b("0x04000000"),
49
+ DENEB_FORK_EPOCH: 269568, // March 13, 2024, 01:55:35pm UTC
50
+
51
+ // ELECTRA
52
+ ELECTRA_FORK_VERSION: b("0x05000000"),
53
+ ELECTRA_FORK_EPOCH: 364032, // May 7, 2025, 10:05:11am UTC
54
+
55
+ // FULU
56
+ FULU_FORK_VERSION: b("0x06000000"),
57
+ FULU_FORK_EPOCH: Infinity,
58
+
59
+ // GLOAS
60
+ GLOAS_FORK_VERSION: b("0x07000000"),
61
+ GLOAS_FORK_EPOCH: Infinity,
62
+
63
+ // Time parameters
64
+ // ---------------------------------------------------------------
65
+ // 12 seconds (DEPRECATED)
66
+ SECONDS_PER_SLOT: 12,
67
+ // 12000 milliseconds, 12 seconds
68
+ SLOT_DURATION_MS: 12000,
69
+ // 14 (estimate from Eth1 mainnet)
70
+ SECONDS_PER_ETH1_BLOCK: 14,
71
+ // 2**8 (= 256) epochs ~27 hours
72
+ MIN_VALIDATOR_WITHDRAWABILITY_DELAY: 256,
73
+ // 2**8 (= 256) epochs ~27 hours
74
+ SHARD_COMMITTEE_PERIOD: 256,
75
+ // 2**11 (= 2,048) Eth1 blocks ~8 hours
76
+ ETH1_FOLLOW_DISTANCE: 2048,
77
+ // 1667 basis points, ~17% of SLOT_DURATION_MS
78
+ PROPOSER_REORG_CUTOFF_BPS: 1667,
79
+ // 3333 basis points, ~33% of SLOT_DURATION_MS
80
+ ATTESTATION_DUE_BPS: 3333,
81
+ // 6667 basis points, ~67% of SLOT_DURATION_MS
82
+ AGGREGATE_DUE_BPS: 6667,
83
+
84
+ // Altair
85
+ // 3333 basis points, ~33% of SLOT_DURATION_MS
86
+ SYNC_MESSAGE_DUE_BPS: 3333,
87
+ // 6667 basis points, ~67% of SLOT_DURATION_MS
88
+ CONTRIBUTION_DUE_BPS: 6667,
89
+
90
+ // 25% of SLOT_DURATION_MS
91
+ ATTESTATION_DUE_BPS_GLOAS: 2500,
92
+ // 50% of SLOT_DURATION_MS
93
+ AGGREGATE_DUE_BPS_GLOAS: 5000,
94
+ // 25% of SLOT_DURATION_MS
95
+ SYNC_MESSAGE_DUE_BPS_GLOAS: 2500,
96
+ // 50% of SLOT_DURATION_MS
97
+ CONTRIBUTION_DUE_BPS_GLOAS: 5000,
98
+ // 75% of SLOT_DURATION_MS
99
+ PAYLOAD_ATTESTATION_DUE_BPS: 7500,
100
+
101
+ // Validator cycle
102
+ // ---------------------------------------------------------------
103
+ // 2**2 (= 4)
104
+ INACTIVITY_SCORE_BIAS: 4,
105
+ // 2**4 (= 16)
106
+ INACTIVITY_SCORE_RECOVERY_RATE: 16,
107
+ // 2**4 * 10**9 (= 16,000,000,000) Gwei
108
+ EJECTION_BALANCE: 16000000000,
109
+ // 2**2 (= 4)
110
+ MIN_PER_EPOCH_CHURN_LIMIT: 4,
111
+ // 2**3 (= 8)
112
+ MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: 8,
113
+ // 2**16 (= 65,536)
114
+ CHURN_LIMIT_QUOTIENT: 65536,
115
+
116
+ // Fork choice
117
+ // ---------------------------------------------------------------
118
+ // 40%
119
+ PROPOSER_SCORE_BOOST: 40,
120
+ REORG_HEAD_WEIGHT_THRESHOLD: 20,
121
+ REORG_PARENT_WEIGHT_THRESHOLD: 160,
122
+ REORG_MAX_EPOCHS_SINCE_FINALIZATION: 2,
123
+
124
+ // Deposit contract
125
+ // ---------------------------------------------------------------
126
+ // Ethereum PoW Mainnet
127
+ DEPOSIT_CHAIN_ID: 1,
128
+ DEPOSIT_NETWORK_ID: 1,
129
+ DEPOSIT_CONTRACT_ADDRESS: b("0x00000000219ab540356cBB839Cbe05303d7705Fa"),
130
+
131
+ // Networking
132
+ // ---------------------------------------------------------------
133
+ // 2**10 (= 1024)
134
+ MAX_REQUEST_BLOCKS: 1024,
135
+ // `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 33024, ~5 months)
136
+ MIN_EPOCHS_FOR_BLOCK_REQUESTS: 33024,
137
+
138
+ // Deneb
139
+ // 2**7 (= 128)
140
+ MAX_REQUEST_BLOCKS_DENEB: 128,
141
+ // `2**12` (= 4096 epochs, ~18 days)
142
+ MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096,
143
+ BLOB_SIDECAR_SUBNET_COUNT: 6,
144
+ MAX_BLOBS_PER_BLOCK: 6,
145
+ // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
146
+ MAX_REQUEST_BLOB_SIDECARS: 768,
147
+
148
+ // Electra
149
+ // 2**8 * 10**9 (= 256,000,000,000)
150
+ MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 256000000000,
151
+ // 2**7 * 10**9 (= 128,000,000,000)
152
+ MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 128000000000,
153
+ BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: 9,
154
+ MAX_BLOBS_PER_BLOCK_ELECTRA: 9,
155
+ // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK_ELECTRA
156
+ MAX_REQUEST_BLOB_SIDECARS_ELECTRA: 1152,
157
+
158
+ // Fulu
159
+ NUMBER_OF_CUSTODY_GROUPS: 128,
160
+ DATA_COLUMN_SIDECAR_SUBNET_COUNT: 128,
161
+ MAX_REQUEST_DATA_COLUMN_SIDECARS: 16384,
162
+ SAMPLES_PER_SLOT: 8,
163
+ CUSTODY_REQUIREMENT: 4,
164
+ VALIDATOR_CUSTODY_REQUIREMENT: 8,
165
+ BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: 32000000000,
166
+ // `2**12` (= 4096 epochs, ~18 days)
167
+ MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: 4096,
168
+
169
+ // Blob Scheduling
170
+ // ---------------------------------------------------------------
171
+ BLOB_SCHEDULE: [],
172
+ };
@@ -0,0 +1,167 @@
1
+ import {PresetName} from "@lodestar/params";
2
+ import {fromHex as b} from "@lodestar/utils";
3
+ import {ChainConfig} from "../types.js";
4
+
5
+ // Minimal config
6
+ // https://github.com/ethereum/consensus-specs/blob/dev/configs/minimal.yaml
7
+
8
+ export const chainConfig: ChainConfig = {
9
+ // Extends the minimal preset
10
+ PRESET_BASE: PresetName.minimal,
11
+ CONFIG_NAME: "minimal",
12
+
13
+ // Transition
14
+ // 2**256-2**10 for testing minimal network
15
+ TERMINAL_TOTAL_DIFFICULTY: BigInt("115792089237316195423570985008687907853269984665640564039457584007913129638912"),
16
+ TERMINAL_BLOCK_HASH: b("0x0000000000000000000000000000000000000000000000000000000000000000"),
17
+ TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: Infinity,
18
+
19
+ // Genesis
20
+ // ---------------------------------------------------------------
21
+ // [customized]
22
+ MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: 64,
23
+ // Jan 3, 2020
24
+ MIN_GENESIS_TIME: 1578009600,
25
+ // Highest byte set to 0x01 to avoid collisions with mainnet versioning
26
+ GENESIS_FORK_VERSION: b("0x00000001"),
27
+ // [customized] Faster to spin up testnets, but does not give validator reasonable warning time for genesis
28
+ GENESIS_DELAY: 300,
29
+
30
+ // Forking
31
+ // ---------------------------------------------------------------
32
+ // Values provided for illustrative purposes.
33
+ // Individual tests/testnets may set different values.
34
+
35
+ // Altair
36
+ ALTAIR_FORK_VERSION: b("0x01000001"),
37
+ ALTAIR_FORK_EPOCH: 74240, // Oct 27, 2021, 10:56:23am UTC
38
+ // Bellatrix
39
+ BELLATRIX_FORK_VERSION: b("0x02000001"),
40
+ BELLATRIX_FORK_EPOCH: Infinity,
41
+ // Capella
42
+ CAPELLA_FORK_VERSION: b("0x03000001"),
43
+ CAPELLA_FORK_EPOCH: Infinity,
44
+ // Deneb
45
+ DENEB_FORK_VERSION: b("0x04000001"),
46
+ DENEB_FORK_EPOCH: Infinity,
47
+ // ELECTRA
48
+ ELECTRA_FORK_VERSION: b("0x05000001"),
49
+ ELECTRA_FORK_EPOCH: Infinity,
50
+ // FULU
51
+ FULU_FORK_VERSION: b("0x06000001"),
52
+ FULU_FORK_EPOCH: Infinity,
53
+ // GLOAS
54
+ GLOAS_FORK_VERSION: b("0x07000001"),
55
+ GLOAS_FORK_EPOCH: Infinity,
56
+
57
+ // Time parameters
58
+ // ---------------------------------------------------------------
59
+ // [customized] Faster for testing purposes (DEPRECATED)
60
+ SECONDS_PER_SLOT: 6,
61
+ // [customized] 6000 milliseconds, 6 seconds
62
+ SLOT_DURATION_MS: 6000,
63
+ // 14 (estimate from Eth1 mainnet)
64
+ SECONDS_PER_ETH1_BLOCK: 14,
65
+ // 2**8 (= 256) epochs
66
+ MIN_VALIDATOR_WITHDRAWABILITY_DELAY: 256,
67
+ // [customized] higher frequency of committee turnover and faster time to acceptable voluntary exit
68
+ SHARD_COMMITTEE_PERIOD: 64,
69
+ // [customized] process deposits more quickly, but insecure
70
+ ETH1_FOLLOW_DISTANCE: 16,
71
+ // 1667 basis points, ~17% of SLOT_DURATION_MS
72
+ PROPOSER_REORG_CUTOFF_BPS: 1667,
73
+ // 3333 basis points, ~33% of SLOT_DURATION_MS
74
+ ATTESTATION_DUE_BPS: 3333,
75
+ // 6667 basis points, ~67% of SLOT_DURATION_MS
76
+ AGGREGATE_DUE_BPS: 6667,
77
+
78
+ // Altair
79
+ // 3333 basis points, ~33% of SLOT_DURATION_MS
80
+ SYNC_MESSAGE_DUE_BPS: 3333,
81
+ // 6667 basis points, ~67% of SLOT_DURATION_MS
82
+ CONTRIBUTION_DUE_BPS: 6667,
83
+
84
+ // 25% of SLOT_DURATION_MS
85
+ ATTESTATION_DUE_BPS_GLOAS: 2500,
86
+ // 50% of SLOT_DURATION_MS
87
+ AGGREGATE_DUE_BPS_GLOAS: 5000,
88
+ // 25% of SLOT_DURATION_MS
89
+ SYNC_MESSAGE_DUE_BPS_GLOAS: 2500,
90
+ // 50% of SLOT_DURATION_MS
91
+ CONTRIBUTION_DUE_BPS_GLOAS: 5000,
92
+ // 75% of SLOT_DURATION_MS
93
+ PAYLOAD_ATTESTATION_DUE_BPS: 7500,
94
+
95
+ // Validator cycle
96
+ // ---------------------------------------------------------------
97
+ // 2**2 (= 4)
98
+ INACTIVITY_SCORE_BIAS: 4,
99
+ // 2**4 (= 16)
100
+ INACTIVITY_SCORE_RECOVERY_RATE: 16,
101
+ // 2**4 * 10**9 (= 16,000,000,000) Gwei
102
+ EJECTION_BALANCE: 16000000000,
103
+ // 2**2 (= 4)
104
+ MIN_PER_EPOCH_CHURN_LIMIT: 2,
105
+ // [customized]
106
+ MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: 4,
107
+ // [customized] scale queue churn at much lower validator counts for testing
108
+ CHURN_LIMIT_QUOTIENT: 32,
109
+
110
+ // Fork choice
111
+ // ---------------------------------------------------------------
112
+ // 40%
113
+ PROPOSER_SCORE_BOOST: 40,
114
+ REORG_HEAD_WEIGHT_THRESHOLD: 20,
115
+ REORG_PARENT_WEIGHT_THRESHOLD: 160,
116
+ REORG_MAX_EPOCHS_SINCE_FINALIZATION: 2,
117
+
118
+ // Deposit contract
119
+ // ---------------------------------------------------------------
120
+ // Ethereum Goerli testnet
121
+ DEPOSIT_CHAIN_ID: 5,
122
+ DEPOSIT_NETWORK_ID: 5,
123
+ // Configured on a per testnet basis
124
+ DEPOSIT_CONTRACT_ADDRESS: b("0x1234567890123456789012345678901234567890"),
125
+
126
+ // Networking
127
+ // ---------------------------------------------------------------
128
+ // 2**10 (= 1024)
129
+ MAX_REQUEST_BLOCKS: 1024,
130
+ // [customized] `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 272)
131
+ MIN_EPOCHS_FOR_BLOCK_REQUESTS: 272,
132
+
133
+ // Deneb
134
+ // 2**7 (= 128)
135
+ MAX_REQUEST_BLOCKS_DENEB: 128,
136
+ // `2**12` (= 4096 epochs, ~18 days)
137
+ MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096,
138
+ BLOB_SIDECAR_SUBNET_COUNT: 6,
139
+ MAX_BLOBS_PER_BLOCK: 6,
140
+ // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
141
+ MAX_REQUEST_BLOB_SIDECARS: 768,
142
+
143
+ // Electra
144
+ // 2**7 * 10**9 (= 128,000,000,000)
145
+ MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: 128000000000,
146
+ // 2**6 * 10**9 (= 64,000,000,000)
147
+ MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: 64000000000,
148
+ BLOB_SIDECAR_SUBNET_COUNT_ELECTRA: 9,
149
+ MAX_BLOBS_PER_BLOCK_ELECTRA: 9,
150
+ // MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK_ELECTRA
151
+ MAX_REQUEST_BLOB_SIDECARS_ELECTRA: 1152,
152
+
153
+ // Fulu
154
+ NUMBER_OF_CUSTODY_GROUPS: 128,
155
+ DATA_COLUMN_SIDECAR_SUBNET_COUNT: 128,
156
+ MAX_REQUEST_DATA_COLUMN_SIDECARS: 16384,
157
+ SAMPLES_PER_SLOT: 8,
158
+ CUSTODY_REQUIREMENT: 4,
159
+ VALIDATOR_CUSTODY_REQUIREMENT: 8,
160
+ BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: 32000000000,
161
+ // `2**12` (= 4096 epochs, ~18 days)
162
+ MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: 4096,
163
+
164
+ // Blob Scheduling
165
+ // ---------------------------------------------------------------
166
+ BLOB_SCHEDULE: [],
167
+ };
@@ -0,0 +1,19 @@
1
+ import {ACTIVE_PRESET, PresetName} from "@lodestar/params";
2
+ import {chainConfig as mainnet} from "./configs/mainnet.js";
3
+ import {chainConfig as minimal} from "./configs/minimal.js";
4
+ import {ChainConfig} from "./types.js";
5
+
6
+ let defaultChainConfig: ChainConfig;
7
+
8
+ switch (ACTIVE_PRESET) {
9
+ case PresetName.minimal:
10
+ defaultChainConfig = minimal;
11
+ break;
12
+ case PresetName.mainnet:
13
+ defaultChainConfig = mainnet;
14
+ break;
15
+ default:
16
+ defaultChainConfig = mainnet;
17
+ }
18
+
19
+ export {defaultChainConfig};
@@ -0,0 +1,33 @@
1
+ import {ACTIVE_PRESET} from "@lodestar/params";
2
+ import {defaultChainConfig} from "./default.js";
3
+ import {ChainConfig} from "./types.js";
4
+
5
+ export * from "./default.js";
6
+ export {chainConfigFromJson, chainConfigToJson, deserializeBlobSchedule, specValuesToJson} from "./json.js";
7
+ export * from "./types.js";
8
+
9
+ /**
10
+ * Create an `ChainConfig`, filling in missing values with preset defaults
11
+ */
12
+ export function createChainConfig(input: Partial<ChainConfig>): ChainConfig {
13
+ const config = {
14
+ // Set the config first with default preset values
15
+ ...defaultChainConfig,
16
+ // Override with input
17
+ ...input,
18
+ };
19
+
20
+ // Set SLOT_DURATION_MS if SECONDS_PER_SLOT is provided but SLOT_DURATION_MS is not.
21
+ // This is to provide backward compatibility until Gloas is live
22
+ if (input.SLOT_DURATION_MS === undefined) {
23
+ config.SLOT_DURATION_MS = config.SECONDS_PER_SLOT * 1000;
24
+ }
25
+
26
+ // Assert that the preset matches the active preset
27
+ if (config.PRESET_BASE !== ACTIVE_PRESET) {
28
+ throw new Error(
29
+ `Can only create a config for the active preset: ACTIVE_PRESET=${ACTIVE_PRESET} PRESET_BASE=${config.PRESET_BASE}`
30
+ );
31
+ }
32
+ return config;
33
+ }