@lodestar/beacon-node 1.50.0-dev.db953a4f93 → 1.50.0-dev.dff4197219

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 (247) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +6 -1
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/api/impl/beacon/index.d.ts.map +1 -1
  5. package/lib/api/impl/beacon/index.js +13 -0
  6. package/lib/api/impl/beacon/index.js.map +1 -1
  7. package/lib/api/impl/beacon/state/index.d.ts.map +1 -1
  8. package/lib/api/impl/beacon/state/index.js +28 -6
  9. package/lib/api/impl/beacon/state/index.js.map +1 -1
  10. package/lib/api/impl/debug/index.d.ts.map +1 -1
  11. package/lib/api/impl/debug/index.js +26 -18
  12. package/lib/api/impl/debug/index.js.map +1 -1
  13. package/lib/api/impl/validator/index.d.ts +1 -0
  14. package/lib/api/impl/validator/index.d.ts.map +1 -1
  15. package/lib/api/impl/validator/index.js +23 -1
  16. package/lib/api/impl/validator/index.js.map +1 -1
  17. package/lib/chain/archiveStore/archiveStore.d.ts +5 -0
  18. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  19. package/lib/chain/archiveStore/archiveStore.js +14 -24
  20. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  21. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts +2 -2
  22. package/lib/chain/archiveStore/historicalState/getHistoricalState.d.ts.map +1 -1
  23. package/lib/chain/archiveStore/historicalState/getHistoricalState.js +5 -7
  24. package/lib/chain/archiveStore/historicalState/getHistoricalState.js.map +1 -1
  25. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +1 -1
  26. package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
  27. package/lib/chain/archiveStore/historicalState/types.d.ts +2 -2
  28. package/lib/chain/archiveStore/historicalState/types.d.ts.map +1 -1
  29. package/lib/chain/archiveStore/historicalState/worker.js +1 -1
  30. package/lib/chain/archiveStore/historicalState/worker.js.map +1 -1
  31. package/lib/chain/archiveStore/interface.d.ts +1 -1
  32. package/lib/chain/archiveStore/interface.d.ts.map +1 -1
  33. package/lib/chain/archiveStore/utils/pruneHistory.d.ts +1 -1
  34. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +1 -1
  35. package/lib/chain/archiveStore/utils/pruneHistory.js +2 -1
  36. package/lib/chain/archiveStore/utils/pruneHistory.js.map +1 -1
  37. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  38. package/lib/chain/blocks/importBlock.js +13 -6
  39. package/lib/chain/blocks/importBlock.js.map +1 -1
  40. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts +2 -1
  41. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts.map +1 -1
  42. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  43. package/lib/chain/blocks/verifyBlock.js +7 -7
  44. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  45. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts +2 -1
  46. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts.map +1 -1
  47. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js +5 -4
  48. package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js.map +1 -1
  49. package/lib/chain/chain.d.ts +9 -5
  50. package/lib/chain/chain.d.ts.map +1 -1
  51. package/lib/chain/chain.js +87 -33
  52. package/lib/chain/chain.js.map +1 -1
  53. package/lib/chain/emitter.d.ts +7 -1
  54. package/lib/chain/emitter.d.ts.map +1 -1
  55. package/lib/chain/emitter.js +5 -0
  56. package/lib/chain/emitter.js.map +1 -1
  57. package/lib/chain/errors/envelopeReconstructionError.d.ts +5 -0
  58. package/lib/chain/errors/envelopeReconstructionError.d.ts.map +1 -1
  59. package/lib/chain/errors/envelopeReconstructionError.js +2 -0
  60. package/lib/chain/errors/envelopeReconstructionError.js.map +1 -1
  61. package/lib/chain/errors/gossipValidation.d.ts +3 -1
  62. package/lib/chain/errors/gossipValidation.d.ts.map +1 -1
  63. package/lib/chain/errors/gossipValidation.js +2 -0
  64. package/lib/chain/errors/gossipValidation.js.map +1 -1
  65. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  66. package/lib/chain/forkChoice/index.js +2 -0
  67. package/lib/chain/forkChoice/index.js.map +1 -1
  68. package/lib/chain/interface.d.ts +3 -2
  69. package/lib/chain/interface.d.ts.map +1 -1
  70. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +4 -2
  71. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  72. package/lib/chain/opPools/aggregatedAttestationPool.js +30 -8
  73. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  74. package/lib/chain/opPools/proposerPreferencesPool.d.ts +4 -4
  75. package/lib/chain/opPools/proposerPreferencesPool.d.ts.map +1 -1
  76. package/lib/chain/opPools/proposerPreferencesPool.js +14 -11
  77. package/lib/chain/opPools/proposerPreferencesPool.js.map +1 -1
  78. package/lib/chain/options.d.ts +2 -1
  79. package/lib/chain/options.d.ts.map +1 -1
  80. package/lib/chain/options.js +1 -1
  81. package/lib/chain/options.js.map +1 -1
  82. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  83. package/lib/chain/prepareNextSlot.js +5 -2
  84. package/lib/chain/prepareNextSlot.js.map +1 -1
  85. package/lib/chain/produceBlock/computeNewStateRoot.js +1 -1
  86. package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
  87. package/lib/chain/produceBlock/produceBlockBody.d.ts +3 -1
  88. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  89. package/lib/chain/produceBlock/produceBlockBody.js +6 -2
  90. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  91. package/lib/chain/regen/regen.d.ts +2 -0
  92. package/lib/chain/regen/regen.d.ts.map +1 -1
  93. package/lib/chain/regen/regen.js +10 -4
  94. package/lib/chain/regen/regen.js.map +1 -1
  95. package/lib/chain/seenCache/seenGossipBlockInput.d.ts +7 -0
  96. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  97. package/lib/chain/seenCache/seenGossipBlockInput.js +21 -0
  98. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  99. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts +9 -2
  100. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts.map +1 -1
  101. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js +23 -13
  102. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js.map +1 -1
  103. package/lib/chain/shufflingCache.d.ts +18 -8
  104. package/lib/chain/shufflingCache.d.ts.map +1 -1
  105. package/lib/chain/shufflingCache.js +72 -18
  106. package/lib/chain/shufflingCache.js.map +1 -1
  107. package/lib/chain/validatorMonitor.d.ts +5 -1
  108. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  109. package/lib/chain/validatorMonitor.js +64 -54
  110. package/lib/chain/validatorMonitor.js.map +1 -1
  111. package/lib/db/beacon.d.ts +2 -0
  112. package/lib/db/beacon.d.ts.map +1 -1
  113. package/lib/db/beacon.js +3 -0
  114. package/lib/db/beacon.js.map +1 -1
  115. package/lib/db/buckets.d.ts +2 -1
  116. package/lib/db/buckets.d.ts.map +1 -1
  117. package/lib/db/buckets.js +1 -0
  118. package/lib/db/buckets.js.map +1 -1
  119. package/lib/db/interface.d.ts +2 -0
  120. package/lib/db/interface.d.ts.map +1 -1
  121. package/lib/db/repositories/blockArchiveIndex.d.ts +2 -2
  122. package/lib/db/repositories/blockArchiveIndex.d.ts.map +1 -1
  123. package/lib/db/repositories/earliestAvailableSlot.d.ts +11 -0
  124. package/lib/db/repositories/earliestAvailableSlot.d.ts.map +1 -0
  125. package/lib/db/repositories/earliestAvailableSlot.js +19 -0
  126. package/lib/db/repositories/earliestAvailableSlot.js.map +1 -0
  127. package/lib/execution/engine/disabled.d.ts +0 -2
  128. package/lib/execution/engine/disabled.d.ts.map +1 -1
  129. package/lib/execution/engine/disabled.js +0 -6
  130. package/lib/execution/engine/disabled.js.map +1 -1
  131. package/lib/execution/engine/http.d.ts +1 -3
  132. package/lib/execution/engine/http.d.ts.map +1 -1
  133. package/lib/execution/engine/http.js +2 -17
  134. package/lib/execution/engine/http.js.map +1 -1
  135. package/lib/execution/engine/interface.d.ts +2 -4
  136. package/lib/execution/engine/interface.d.ts.map +1 -1
  137. package/lib/execution/engine/mock.d.ts +0 -2
  138. package/lib/execution/engine/mock.d.ts.map +1 -1
  139. package/lib/execution/engine/mock.js +0 -8
  140. package/lib/execution/engine/mock.js.map +1 -1
  141. package/lib/execution/engine/types.d.ts +0 -8
  142. package/lib/execution/engine/types.d.ts.map +1 -1
  143. package/lib/execution/engine/types.js.map +1 -1
  144. package/lib/metrics/metrics/lodestar.d.ts +7 -0
  145. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  146. package/lib/metrics/metrics/lodestar.js +17 -0
  147. package/lib/metrics/metrics/lodestar.js.map +1 -1
  148. package/lib/metrics/metrics.d.ts +7 -3
  149. package/lib/metrics/metrics.d.ts.map +1 -1
  150. package/lib/metrics/metrics.js +4 -4
  151. package/lib/metrics/metrics.js.map +1 -1
  152. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  153. package/lib/network/processor/gossipHandlers.js +62 -63
  154. package/lib/network/processor/gossipHandlers.js.map +1 -1
  155. package/lib/network/processor/gossipValidatorFn.d.ts +7 -3
  156. package/lib/network/processor/gossipValidatorFn.d.ts.map +1 -1
  157. package/lib/network/processor/gossipValidatorFn.js +7 -3
  158. package/lib/network/processor/gossipValidatorFn.js.map +1 -1
  159. package/lib/network/processor/index.d.ts +9 -0
  160. package/lib/network/processor/index.d.ts.map +1 -1
  161. package/lib/network/processor/index.js +77 -10
  162. package/lib/network/processor/index.js.map +1 -1
  163. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js +1 -1
  164. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js.map +1 -1
  165. package/lib/node/nodejs.d.ts +3 -1
  166. package/lib/node/nodejs.d.ts.map +1 -1
  167. package/lib/node/nodejs.js +27 -4
  168. package/lib/node/nodejs.js.map +1 -1
  169. package/lib/sync/range/batch.d.ts +11 -5
  170. package/lib/sync/range/batch.d.ts.map +1 -1
  171. package/lib/sync/range/batch.js +21 -17
  172. package/lib/sync/range/batch.js.map +1 -1
  173. package/lib/sync/range/chain.d.ts +4 -4
  174. package/lib/sync/range/chain.d.ts.map +1 -1
  175. package/lib/sync/range/chain.js +12 -6
  176. package/lib/sync/range/chain.js.map +1 -1
  177. package/lib/sync/range/range.d.ts.map +1 -1
  178. package/lib/sync/range/range.js +75 -29
  179. package/lib/sync/range/range.js.map +1 -1
  180. package/lib/sync/unknownBlock.d.ts +5 -2
  181. package/lib/sync/unknownBlock.d.ts.map +1 -1
  182. package/lib/sync/unknownBlock.js +49 -24
  183. package/lib/sync/unknownBlock.js.map +1 -1
  184. package/lib/sync/utils/downloadByRange.d.ts +38 -14
  185. package/lib/sync/utils/downloadByRange.d.ts.map +1 -1
  186. package/lib/sync/utils/downloadByRange.js +84 -39
  187. package/lib/sync/utils/downloadByRange.js.map +1 -1
  188. package/lib/util/execution.d.ts +9 -11
  189. package/lib/util/execution.d.ts.map +1 -1
  190. package/lib/util/execution.js +5 -1
  191. package/lib/util/execution.js.map +1 -1
  192. package/package.json +17 -17
  193. package/src/api/impl/beacon/blocks/index.ts +7 -4
  194. package/src/api/impl/beacon/index.ts +15 -0
  195. package/src/api/impl/beacon/state/index.ts +43 -6
  196. package/src/api/impl/debug/index.ts +28 -19
  197. package/src/api/impl/validator/index.ts +24 -2
  198. package/src/chain/archiveStore/archiveStore.ts +19 -25
  199. package/src/chain/archiveStore/historicalState/getHistoricalState.ts +5 -7
  200. package/src/chain/archiveStore/historicalState/historicalStateRegen.ts +1 -1
  201. package/src/chain/archiveStore/historicalState/types.ts +2 -2
  202. package/src/chain/archiveStore/historicalState/worker.ts +1 -2
  203. package/src/chain/archiveStore/interface.ts +1 -1
  204. package/src/chain/archiveStore/utils/pruneHistory.ts +4 -1
  205. package/src/chain/blocks/importBlock.ts +16 -5
  206. package/src/chain/blocks/payloadEnvelopeInput/types.ts +2 -1
  207. package/src/chain/blocks/verifyBlock.ts +8 -6
  208. package/src/chain/blocks/verifyBlocksStateTransitionOnly.ts +6 -3
  209. package/src/chain/chain.ts +115 -35
  210. package/src/chain/emitter.ts +7 -1
  211. package/src/chain/errors/envelopeReconstructionError.ts +3 -0
  212. package/src/chain/errors/gossipValidation.ts +2 -0
  213. package/src/chain/forkChoice/index.ts +2 -0
  214. package/src/chain/interface.ts +3 -2
  215. package/src/chain/opPools/aggregatedAttestationPool.ts +34 -10
  216. package/src/chain/opPools/proposerPreferencesPool.ts +14 -10
  217. package/src/chain/options.ts +3 -3
  218. package/src/chain/prepareNextSlot.ts +6 -3
  219. package/src/chain/produceBlock/computeNewStateRoot.ts +1 -1
  220. package/src/chain/produceBlock/produceBlockBody.ts +8 -1
  221. package/src/chain/regen/regen.ts +12 -4
  222. package/src/chain/seenCache/seenGossipBlockInput.ts +23 -0
  223. package/src/chain/seenCache/seenPayloadEnvelopeInput.ts +31 -13
  224. package/src/chain/shufflingCache.ts +84 -22
  225. package/src/chain/validatorMonitor.ts +75 -57
  226. package/src/db/beacon.ts +3 -0
  227. package/src/db/buckets.ts +1 -0
  228. package/src/db/interface.ts +2 -0
  229. package/src/db/repositories/earliestAvailableSlot.ts +19 -0
  230. package/src/execution/engine/disabled.ts +0 -8
  231. package/src/execution/engine/http.ts +1 -30
  232. package/src/execution/engine/interface.ts +2 -6
  233. package/src/execution/engine/mock.ts +1 -19
  234. package/src/execution/engine/types.ts +0 -10
  235. package/src/metrics/metrics/lodestar.ts +18 -0
  236. package/src/metrics/metrics.ts +21 -6
  237. package/src/network/processor/gossipHandlers.ts +93 -76
  238. package/src/network/processor/gossipValidatorFn.ts +13 -3
  239. package/src/network/processor/index.ts +89 -10
  240. package/src/network/reqresp/handlers/executionPayloadEnvelopesByRoot.ts +1 -1
  241. package/src/node/nodejs.ts +35 -3
  242. package/src/sync/range/batch.ts +25 -19
  243. package/src/sync/range/chain.ts +15 -8
  244. package/src/sync/range/range.ts +76 -30
  245. package/src/sync/unknownBlock.ts +62 -25
  246. package/src/sync/utils/downloadByRange.ts +123 -58
  247. package/src/util/execution.ts +16 -8
@@ -1 +1 @@
1
- {"version":3,"file":"lodestar.js","sourceRoot":"","sources":["../../../src/metrics/metrics/lodestar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lodestar.js","sourceRoot":"","sources":["../../../src/metrics/metrics/lodestar.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,15 @@ import { BeaconMetrics } from "./metrics/beacon.js";
5
5
  import { LodestarMetrics } from "./metrics/lodestar.js";
6
6
  import { MetricsOptions } from "./options.js";
7
7
  import { RegistryMetricCreator } from "./utils/registryMetricCreator.js";
8
- export type Metrics = BeaconMetrics & ForkChoiceMetrics & BeaconStateTransitionMetrics & LodestarMetrics & {
8
+ export type Metrics = BeaconMetrics & ForkChoiceMetrics & LodestarMetrics & {
9
+ /** Null when we use native state transition metrics instead */
10
+ stateTransition: BeaconStateTransitionMetrics | null;
9
11
  register: RegistryMetricCreator;
10
12
  close: () => void;
11
13
  };
12
- export declare function createMetrics(opts: MetricsOptions, genesisTime: number, externalRegistries?: Registry[], { collectNodeMetrics }?: {
14
+ export type CreateMetricsOptions = {
15
+ includeStateTransitionMetrics?: boolean;
13
16
  collectNodeMetrics?: boolean;
14
- }): Metrics;
17
+ };
18
+ export declare function createMetrics(opts: MetricsOptions, genesisTime: number, externalRegistries?: Registry[], createOpts?: CreateMetricsOptions): Metrics;
15
19
  //# sourceMappingURL=metrics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAC,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAuB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAC,4BAA4B,EAAa,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAC,aAAa,EAAsB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAC,eAAe,EAAwB,MAAM,uBAAuB,CAAC;AAE7E,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAEvE,MAAM,MAAM,OAAO,GAAG,aAAa,GACjC,iBAAiB,GACjB,4BAA4B,GAC5B,eAAe,GAAG;IAAC,QAAQ,EAAE,qBAAqB,CAAC;IAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CAAC,CAAC;AAEzE,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,EACpB,WAAW,EAAE,MAAM,EACnB,kBAAkB,GAAE,QAAQ,EAAO,EACnC,EAAC,kBAAyB,EAAC,GAAE;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAM,GAC/D,OAAO,CAiCT"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/metrics/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAC,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAuB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAC,4BAA4B,EAAa,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAC,aAAa,EAAsB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAC,eAAe,EAAwB,MAAM,uBAAuB,CAAC;AAE7E,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAEvE,MAAM,MAAM,OAAO,GAAG,aAAa,GACjC,iBAAiB,GACjB,eAAe,GAAG;IAChB,+DAA+D;IAC/D,eAAe,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACrD,QAAQ,EAAE,qBAAqB,CAAC;IAChC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG;IAOjC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,EACpB,WAAW,EAAE,MAAM,EACnB,kBAAkB,GAAE,QAAQ,EAAO,EACnC,UAAU,GAAE,oBAAyB,GACpC,OAAO,CAiCT"}
@@ -4,17 +4,17 @@ import { createBeaconMetrics } from "./metrics/beacon.js";
4
4
  import { createLodestarMetrics } from "./metrics/lodestar.js";
5
5
  import { collectNodeJSMetrics } from "./nodeJsMetrics.js";
6
6
  import { RegistryMetricCreator } from "./utils/registryMetricCreator.js";
7
- export function createMetrics(opts, genesisTime, externalRegistries = [], { collectNodeMetrics = true } = {}) {
7
+ export function createMetrics(opts, genesisTime, externalRegistries = [], createOpts = {}) {
8
8
  const register = new RegistryMetricCreator();
9
9
  const beacon = createBeaconMetrics(register);
10
10
  const forkChoice = getForkChoiceMetrics(register);
11
11
  const lodestar = createLodestarMetrics(register, opts.metadata, genesisTime);
12
- const stateTransition = getMetrics(register);
12
+ const stateTransition = createOpts.includeStateTransitionMetrics === false ? null : getMetrics(register);
13
13
  const onUnhandledRejection = (_error) => {
14
14
  lodestar.unhandledPromiseRejections.inc();
15
15
  };
16
16
  process.on("unhandledRejection", onUnhandledRejection);
17
- const nodeJsMetricsClose = collectNodeMetrics ? collectNodeJSMetrics(register) : () => { };
17
+ const nodeJsMetricsClose = createOpts.collectNodeMetrics === false ? () => { } : collectNodeJSMetrics(register);
18
18
  const close = () => {
19
19
  process.removeListener("unhandledRejection", onUnhandledRejection);
20
20
  nodeJsMetricsClose();
@@ -29,7 +29,7 @@ export function createMetrics(opts, genesisTime, externalRegistries = [], { coll
29
29
  ...beacon,
30
30
  ...forkChoice,
31
31
  ...lodestar,
32
- ...stateTransition,
32
+ stateTransition,
33
33
  register,
34
34
  close,
35
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/metrics/metrics.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAA+B,UAAU,EAAC,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAgB,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAkB,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAOvE,MAAM,UAAU,aAAa,CAC3B,IAAoB,EACpB,WAAmB,EACnB,kBAAkB,GAAe,EAAE,EACnC,EAAC,kBAAkB,GAAG,IAAI,EAAC,GAAmC,EAAE;IAEhE,MAAM,QAAQ,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE7C,MAAM,oBAAoB,GAAG,CAAC,MAAe,EAAQ,EAAE;QACrD,QAAQ,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC;IAC5C,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAS,EAAE,GAAE,CAAC,CAAC;IAChG,MAAM,KAAK,GAAG,GAAS,EAAE;QACvB,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;QACnE,kBAAkB,EAAE,CAAC;IACvB,CAAC,CAAC;IAEF,4BAA4B;IAC5B,KAAK,MAAM,gBAAgB,IAAI,kBAAkB,EAAE,CAAC;QAClD,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAC1D,QAAQ,CAAC,cAAc,CAAC,MAAmC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,MAAM;QACT,GAAG,UAAU;QACb,GAAG,QAAQ;QACX,GAAG,eAAe;QAClB,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/metrics/metrics.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAA+B,UAAU,EAAC,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAgB,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAkB,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAsBvE,MAAM,UAAU,aAAa,CAC3B,IAAoB,EACpB,WAAmB,EACnB,kBAAkB,GAAe,EAAE,EACnC,UAAU,GAAyB,EAAE;IAErC,MAAM,QAAQ,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,MAAM,eAAe,GAAG,UAAU,CAAC,6BAA6B,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEzG,MAAM,oBAAoB,GAAG,CAAC,MAAe,EAAQ,EAAE;QACrD,QAAQ,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC;IAC5C,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,GAAS,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACrH,MAAM,KAAK,GAAG,GAAS,EAAE;QACvB,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;QACnE,kBAAkB,EAAE,CAAC;IACvB,CAAC,CAAC;IAEF,4BAA4B;IAC5B,KAAK,MAAM,gBAAgB,IAAI,kBAAkB,EAAE,CAAC;QAClD,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAC1D,QAAQ,CAAC,cAAc,CAAC,MAAmC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,MAAM;QACT,GAAG,UAAU;QACb,GAAG,QAAQ;QACX,eAAe;QACf,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gossipHandlers.d.ts","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAkB,MAAM,kBAAkB,CAAC;AAc/D,OAAO,EACL,IAAI,EAGJ,IAAI,EASL,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAW,MAAM,EAAmB,MAAM,iBAAiB,CAAC;AA8BnE,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AA2BtD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAI/C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EAGL,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wDAAwD;IACxD,sCAAsC,CAAC,EAAE,OAAO,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAKF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAE1G;AAk7CD;;GAEG;AACH,wBAAsB,gCAAgC,CAAC,CAAC,EACtD,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,IAAI,GACd,OAAO,CAAC,CAAC,CAAC,CA+BZ"}
1
+ {"version":3,"file":"gossipHandlers.d.ts","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAkB,MAAM,kBAAkB,CAAC;AAc/D,OAAO,EACL,IAAI,EAIJ,IAAI,EASL,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAW,MAAM,EAAmB,MAAM,iBAAiB,CAAC;AA8BnE,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AA4BtD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAI/C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EAGL,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wDAAwD;IACxD,sCAAsC,CAAC,EAAE,OAAO,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAKF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAE1G;AAi8CD;;GAEG;AACH,wBAAsB,gCAAgC,CAAC,CAAC,EACtD,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,IAAI,GACd,OAAO,CAAC,CAAC,CAAC,CA+BZ"}
@@ -1,7 +1,7 @@
1
1
  import { routes } from "@lodestar/api";
2
2
  import { PayloadStatus } from "@lodestar/fork-choice";
3
3
  import { ForkSeq, NUMBER_OF_COLUMNS, isForkPostElectra, isForkPostGloas, } from "@lodestar/params";
4
- import { computeTimeAtSlot } from "@lodestar/state-transition";
4
+ import { computeTimeAtSlot, signedBlockToSignedHeader } from "@lodestar/state-transition";
5
5
  import { isGloasDataColumnSidecar, ssz, sszTypesFor, } from "@lodestar/types";
6
6
  import { LogLevel, toHex, toRootHex } from "@lodestar/utils";
7
7
  import { BlockInputSource, isBlockInputColumns, } from "../../chain/blocks/blockInput/index.js";
@@ -14,7 +14,7 @@ import { validateGossipBlobSidecar } from "../../chain/validation/blobSidecar.js
14
14
  import { validateGossipFuluDataColumnSidecar, validateGossipGloasDataColumnSidecar, } from "../../chain/validation/dataColumnSidecar.js";
15
15
  import { validateGossipExecutionPayloadBid } from "../../chain/validation/executionPayloadBid.js";
16
16
  import { validateGossipExecutionPayloadEnvelope } from "../../chain/validation/executionPayloadEnvelope.js";
17
- import { toElectraSingleAttestation, validateGossipAggregateAndProof, validateGossipAttestationsSameAttData, validateGossipAttesterSlashing, validateGossipBlock, validateGossipBlsToExecutionChange, validateGossipProposerSlashing, validateGossipSyncCommittee, validateGossipVoluntaryExit, validateSyncCommitteeGossipContributionAndProof, } from "../../chain/validation/index.js";
17
+ import { toElectraSingleAttestation, validateGossipAggregateAndProof, validateGossipAttestationsSameAttData, validateGossipAttesterSlashing, validateGossipBlock, validateGossipBlsToExecutionChange, validateGossipProposerSlashing, validateGossipSyncCommittee, validateGossipVoluntaryExit, validateSyncCommitteeGossipContributionAndProof, verifyBlockProposerSignature, } from "../../chain/validation/index.js";
18
18
  import { validateLightClientFinalityUpdate } from "../../chain/validation/lightClientFinalityUpdate.js";
19
19
  import { validateLightClientOptimisticUpdate } from "../../chain/validation/lightClientOptimisticUpdate.js";
20
20
  import { validateGossipPayloadAttestationMessage } from "../../chain/validation/payloadAttestationMessage.js";
@@ -51,28 +51,10 @@ export function getGossipHandlers(modules, options) {
51
51
  */
52
52
  function getSequentialHandlers(modules, options) {
53
53
  const { chain, config, metrics, logger, core } = modules;
54
- async function validateBeaconBlock(signedBlock, fork, peerIdStr, seenTimestampSec) {
55
- const slot = signedBlock.message.slot;
56
- const forkTypes = config.getForkTypes(slot);
57
- const blockRootHex = toRootHex(forkTypes.BeaconBlock.hashTreeRoot(signedBlock.message));
58
- const delaySec = chain.clock.secFromSlot(slot, seenTimestampSec);
59
- const recvToValLatency = Date.now() / 1000 - seenTimestampSec;
60
- // always set block to seen cache for all forks so that we don't need to download it
61
- // TODO: validate block before adding to cache
62
- // tracked in https://github.com/ChainSafe/lodestar/issues/7957
63
- const logCtx = {
64
- slot,
65
- root: blockRootHex,
66
- currentSlot: chain.clock.currentSlot,
67
- peerId: peerIdStr,
68
- delaySec,
69
- recvToValLatency,
70
- };
71
- logger.debug("Received gossip block", { ...logCtx });
72
- // optimistically add gossip block to the seen cache
73
- // if validation fails, we will NOT forward this gossip block to peers
74
- // - if PARENT_BLOCK_UNKNOWN error, blockInput will then be queued inside BlockInputSync. If the gossip block is really invalid, it will be pruned there
75
- // - if other validator errors, blockInput will stay in the seen cache and will be pruned on finalization
54
+ /**
55
+ * Add a gossip block to the seen caches. The proposer signature of the block MUST be verified.
56
+ */
57
+ function cacheSignatureVerifiedBlock(signedBlock, blockRootHex, fork, peerIdStr, seenTimestampSec) {
76
58
  const blockInput = chain.seenBlockInputCache.getByBlock({
77
59
  block: signedBlock,
78
60
  blockRootHex,
@@ -80,8 +62,7 @@ function getSequentialHandlers(modules, options) {
80
62
  seenTimestampSec,
81
63
  peerIdStr,
82
64
  });
83
- // Optimistically seed the payload-envelope cache too, mirroring seenBlockInputCache above.
84
- // This ensures we have PayloadEnvelopeInput, even through "PARENT_BLOCK_UNKNOWN" error
65
+ // Also seed the payload-envelope cache, so we have PayloadEnvelopeInput even through "PARENT_BLOCK_UNKNOWN" error
85
66
  // see https://github.com/ChainSafe/lodestar/issues/9475
86
67
  if (isForkPostGloas(fork)) {
87
68
  chain.seenPayloadEnvelopeInputCache.add({
@@ -94,8 +75,27 @@ function getSequentialHandlers(modules, options) {
94
75
  source: PayloadEnvelopeInputSource.gossip,
95
76
  });
96
77
  }
78
+ return blockInput;
79
+ }
80
+ async function validateBeaconBlock(signedBlock, fork, peerIdStr, seenTimestampSec) {
81
+ const slot = signedBlock.message.slot;
82
+ const forkTypes = config.getForkTypes(slot);
83
+ const blockRootHex = toRootHex(forkTypes.BeaconBlock.hashTreeRoot(signedBlock.message));
84
+ const delaySec = chain.clock.secFromSlot(slot, seenTimestampSec);
85
+ const recvToValLatency = Date.now() / 1000 - seenTimestampSec;
86
+ const logCtx = {
87
+ slot,
88
+ root: blockRootHex,
89
+ currentSlot: chain.clock.currentSlot,
90
+ peerId: peerIdStr,
91
+ delaySec,
92
+ recvToValLatency,
93
+ };
94
+ logger.debug("Received gossip block", { ...logCtx });
95
+ chain.seenBlockInputCache.markValidatingBlock(blockRootHex);
97
96
  try {
98
97
  const { skippedSlots } = await validateGossipBlock(config, chain, signedBlock, fork);
98
+ const blockInput = cacheSignatureVerifiedBlock(signedBlock, blockRootHex, fork, peerIdStr, seenTimestampSec);
99
99
  const blockInputMeta = blockInput.getLogMeta();
100
100
  const recvToValidation = Date.now() / 1000 - seenTimestampSec;
101
101
  const validationTime = recvToValidation - recvToValLatency;
@@ -115,44 +115,41 @@ function getSequentialHandlers(modules, options) {
115
115
  catch (e) {
116
116
  if (e instanceof BlockGossipError) {
117
117
  logger.debug("Gossip block has error", { slot, root: blockRootHex, code: e.type.code });
118
- if ((e.type.code === BlockErrorCode.PARENT_BLOCK_UNKNOWN ||
119
- e.type.code === BlockErrorCode.PARENT_PAYLOAD_UNKNOWN) &&
120
- blockInput) {
118
+ if (e.type.code === BlockErrorCode.PARENT_BLOCK_UNKNOWN ||
119
+ e.type.code === BlockErrorCode.PARENT_PAYLOAD_UNKNOWN) {
120
+ // The block is retained for unknown parent sync without full validation. Authenticate it first, this
121
+ // does not need the parent state
122
+ const proposerIndex = signedBlock.message.proposerIndex;
123
+ await verifyBlockProposerSignature(chain, signedBlock, blockRootHex);
124
+ chain.seenBlockProposers.observeBlockRoot(slot, proposerIndex, blockRootHex, signedBlockToSignedHeader(config, signedBlock));
125
+ // Check again after the signature verification so concurrent proposals cannot both be retained
126
+ if (chain.seenBlockProposers.isKnown(slot, proposerIndex)) {
127
+ if (chain.seenBlockProposers.isRepeatProposal(slot, proposerIndex, blockRootHex)) {
128
+ throw new BlockGossipError(GossipAction.IGNORE, {
129
+ code: BlockErrorCode.REPEAT_PROPOSAL,
130
+ proposerIndex,
131
+ root: blockRootHex,
132
+ });
133
+ }
134
+ throw new BlockGossipError(GossipAction.IGNORE, { code: BlockErrorCode.ALREADY_KNOWN, root: blockRootHex });
135
+ }
136
+ chain.seenBlockProposers.add(slot, proposerIndex, blockRootHex);
137
+ const blockInput = cacheSignatureVerifiedBlock(signedBlock, blockRootHex, fork, peerIdStr, seenTimestampSec);
121
138
  chain.emitter.emit(ChainEvent.blockUnknownParent, {
122
139
  blockInput,
123
140
  peer: peerIdStr,
124
141
  source: BlockInputSource.gossip,
125
142
  });
126
- // throw error (don't prune the blockInput)
127
143
  throw e;
128
144
  }
129
- // IGNORE means the block is acceptable (e.g. FUTURE_SLOT, ALREADY_KNOWN), just not propagated.
130
- // Keep the optimistically-added cache entries; they are pruned on finalization. Only REJECT
131
- // (provably invalid), unexpected errors and repeat proposals that are not imported prune.
132
- if (e.action === GossipAction.IGNORE) {
133
- // Only a signature-verified sibling is imported by the beacon_block handler, any other repeat proposal
134
- // is dropped from the caches and re-downloaded by sync if it ever becomes relevant. Its signature was not
135
- // verified, so only its own entry is removed, never its claimed ancestors
136
- if (e.type.code === BlockErrorCode.REPEAT_PROPOSAL &&
137
- !chain.seenBlockProposers.hasBlockRoot(slot, signedBlock.message.proposerIndex, blockRootHex)) {
138
- chain.seenBlockInputCache.remove(blockRootHex);
139
- if (isForkPostGloas(fork)) {
140
- chain.seenPayloadEnvelopeInputCache.remove(blockRootHex);
141
- }
142
- }
143
- throw e;
145
+ if (e.action === GossipAction.REJECT) {
146
+ chain.persistInvalidSszValue(forkTypes.SignedBeaconBlock, signedBlock, `gossip_reject_slot_${slot}`, blockRootHex);
144
147
  }
145
- chain.persistInvalidSszValue(forkTypes.SignedBeaconBlock, signedBlock, `gossip_reject_slot_${slot}`, blockRootHex);
146
- }
147
- // REJECT or unexpected (non-BlockGossipError) error: drop the optimistically-added entries from
148
- // both caches, keeping them consistent. The block may carry any parent root, so only its own entry is removed
149
- chain.seenBlockInputCache.remove(blockRootHex);
150
- if (isForkPostGloas(fork)) {
151
- chain.seenPayloadEnvelopeInputCache.remove(blockRootHex);
152
148
  }
153
149
  throw e;
154
150
  }
155
151
  finally {
152
+ chain.seenBlockInputCache.unmarkValidatingBlock(blockRootHex);
156
153
  // The block received from the network may have established an equivocation, either by conflicting
157
154
  // with a previously observed block root (REPEAT_PROPOSAL) or with a root observed during validation
158
155
  const proposerIndex = signedBlock.message.proposerIndex;
@@ -549,17 +546,16 @@ function getSequentialHandlers(modules, options) {
549
546
  e.type.code === BlockErrorCode.REPEAT_PROPOSAL &&
550
547
  // Only a signature-verified sibling recorded in the seen cache is imported. The cache holds at most two
551
548
  // roots per proposer and slot, which bounds full imports over gossip to one alternate
552
- chain.seenBlockProposers.hasBlockRoot(signedBlock.message.slot, e.type.proposerIndex, e.type.root)) {
553
- // blockInput was optimistically seeded in validateBeaconBlock and retained on IGNORE
554
- const blockInput = chain.seenBlockInputCache.get(e.type.root);
555
- if (blockInput) {
556
- // We're returning IGNORE (thrown below), so this block is not forwarded to peers. Unlike the
557
- // happy path there is no rush to forward, so we don't need to wrap in callInNextEventLoop.
558
- chain.serializedCache.set(signedBlock, serializedData);
559
- // this is technically not a valid gossip block but gossip validation is a cheap subset of checks
560
- // this runs the full state transition, so importing an equivocating-but-valid block here is safe.
561
- handleValidBeaconBlock(blockInput, peerIdStr, seenTimestampSec);
562
- }
549
+ chain.seenBlockProposers.hasBlockRoot(signedBlock.message.slot, e.type.proposerIndex, e.type.root) &&
550
+ // A sibling with an unknown parent cannot be imported, sync fetches it if its branch becomes relevant
551
+ chain.forkChoice.getBlockHexDefaultStatus(toRootHex(signedBlock.message.parentRoot)) !== null) {
552
+ const blockInput = cacheSignatureVerifiedBlock(signedBlock, e.type.root, topic.boundary.fork, peerIdStr, seenTimestampSec);
553
+ // We're returning IGNORE (thrown below), so this block is not forwarded to peers. Unlike the
554
+ // happy path there is no rush to forward, so we don't need to wrap in callInNextEventLoop.
555
+ chain.serializedCache.set(signedBlock, serializedData);
556
+ // this is technically not a valid gossip block but gossip validation is a cheap subset of checks
557
+ // this runs the full state transition, so importing an equivocating-but-valid block here is safe.
558
+ handleValidBeaconBlock(blockInput, peerIdStr, seenTimestampSec);
563
559
  }
564
560
  // rethrow so gossipValidatorFn maps IGNORE -> TopicValidatorResult.Ignore (message not forwarded)
565
561
  throw e;
@@ -981,6 +977,9 @@ function getSequentialHandlers(modules, options) {
981
977
  case PayloadErrorCode.ENVELOPE_VERIFICATION_ERROR:
982
978
  case PayloadErrorCode.EXECUTION_ENGINE_INVALID:
983
979
  core.reportPeer(peerIdStr, PeerAction.LowToleranceError, "BadGossipPayload");
980
+ // The builder may have signed another envelope that is valid, keeping this one would make
981
+ // by-root and range sync reuse it and never import the payload
982
+ chain.seenPayloadEnvelopeInputCache.removeInvalid(payloadInput);
984
983
  // Misbehaving peer, but could highlight an issue in another client
985
984
  logLevel = LogLevel.warn;
986
985
  break;