@lodestar/beacon-node 1.43.0-dev.180030f946 → 1.43.0-dev.23543891df

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 (110) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +5 -4
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts.map +1 -1
  5. package/lib/chain/blocks/verifyBlocksSanityChecks.js +15 -4
  6. package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
  7. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js +2 -2
  8. package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js.map +1 -1
  9. package/lib/chain/chain.d.ts +2 -1
  10. package/lib/chain/chain.d.ts.map +1 -1
  11. package/lib/chain/chain.js +3 -1
  12. package/lib/chain/chain.js.map +1 -1
  13. package/lib/chain/errors/index.d.ts +1 -0
  14. package/lib/chain/errors/index.d.ts.map +1 -1
  15. package/lib/chain/errors/index.js +1 -0
  16. package/lib/chain/errors/index.js.map +1 -1
  17. package/lib/chain/errors/proposerPreferences.d.ts +33 -0
  18. package/lib/chain/errors/proposerPreferences.d.ts.map +1 -0
  19. package/lib/chain/errors/proposerPreferences.js +13 -0
  20. package/lib/chain/errors/proposerPreferences.js.map +1 -0
  21. package/lib/chain/interface.d.ts +2 -1
  22. package/lib/chain/interface.d.ts.map +1 -1
  23. package/lib/chain/interface.js.map +1 -1
  24. package/lib/chain/opPools/payloadAttestationPool.d.ts +2 -2
  25. package/lib/chain/opPools/payloadAttestationPool.d.ts.map +1 -1
  26. package/lib/chain/opPools/payloadAttestationPool.js +4 -4
  27. package/lib/chain/opPools/payloadAttestationPool.js.map +1 -1
  28. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  29. package/lib/chain/produceBlock/produceBlockBody.js +9 -4
  30. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  31. package/lib/chain/regen/interface.d.ts +1 -0
  32. package/lib/chain/regen/interface.d.ts.map +1 -1
  33. package/lib/chain/regen/interface.js +1 -0
  34. package/lib/chain/regen/interface.js.map +1 -1
  35. package/lib/chain/seenCache/index.d.ts +1 -0
  36. package/lib/chain/seenCache/index.d.ts.map +1 -1
  37. package/lib/chain/seenCache/index.js +1 -0
  38. package/lib/chain/seenCache/index.js.map +1 -1
  39. package/lib/chain/seenCache/seenProposerPreferences.d.ts +15 -0
  40. package/lib/chain/seenCache/seenProposerPreferences.d.ts.map +1 -0
  41. package/lib/chain/seenCache/seenProposerPreferences.js +25 -0
  42. package/lib/chain/seenCache/seenProposerPreferences.js.map +1 -0
  43. package/lib/chain/validation/proposerPreferences.d.ts +8 -0
  44. package/lib/chain/validation/proposerPreferences.d.ts.map +1 -0
  45. package/lib/chain/validation/proposerPreferences.js +69 -0
  46. package/lib/chain/validation/proposerPreferences.js.map +1 -0
  47. package/lib/metrics/metrics/lodestar.d.ts +1 -0
  48. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  49. package/lib/metrics/metrics/lodestar.js +4 -0
  50. package/lib/metrics/metrics/lodestar.js.map +1 -1
  51. package/lib/network/gossip/interface.d.ts +7 -1
  52. package/lib/network/gossip/interface.d.ts.map +1 -1
  53. package/lib/network/gossip/interface.js +1 -0
  54. package/lib/network/gossip/interface.js.map +1 -1
  55. package/lib/network/gossip/scoringParameters.d.ts.map +1 -1
  56. package/lib/network/gossip/scoringParameters.js +12 -1
  57. package/lib/network/gossip/scoringParameters.js.map +1 -1
  58. package/lib/network/gossip/topic.d.ts +27 -766
  59. package/lib/network/gossip/topic.d.ts.map +1 -1
  60. package/lib/network/gossip/topic.js +6 -0
  61. package/lib/network/gossip/topic.js.map +1 -1
  62. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  63. package/lib/network/processor/gossipHandlers.js +10 -6
  64. package/lib/network/processor/gossipHandlers.js.map +1 -1
  65. package/lib/network/processor/gossipQueues/index.d.ts.map +1 -1
  66. package/lib/network/processor/gossipQueues/index.js +5 -0
  67. package/lib/network/processor/gossipQueues/index.js.map +1 -1
  68. package/lib/network/processor/index.d.ts.map +1 -1
  69. package/lib/network/processor/index.js +1 -0
  70. package/lib/network/processor/index.js.map +1 -1
  71. package/lib/sync/types.d.ts +34 -0
  72. package/lib/sync/types.d.ts.map +1 -1
  73. package/lib/sync/types.js +34 -0
  74. package/lib/sync/types.js.map +1 -1
  75. package/lib/sync/unknownBlock.d.ts +24 -1
  76. package/lib/sync/unknownBlock.d.ts.map +1 -1
  77. package/lib/sync/unknownBlock.js +649 -53
  78. package/lib/sync/unknownBlock.js.map +1 -1
  79. package/lib/sync/utils/downloadByRoot.d.ts.map +1 -1
  80. package/lib/sync/utils/downloadByRoot.js +6 -2
  81. package/lib/sync/utils/downloadByRoot.js.map +1 -1
  82. package/lib/sync/utils/pendingBlocksTree.d.ts +0 -1
  83. package/lib/sync/utils/pendingBlocksTree.d.ts.map +1 -1
  84. package/lib/sync/utils/pendingBlocksTree.js +0 -9
  85. package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
  86. package/package.json +15 -15
  87. package/src/api/impl/beacon/blocks/index.ts +7 -4
  88. package/src/chain/blocks/verifyBlocksSanityChecks.ts +16 -7
  89. package/src/chain/blocks/verifyExecutionPayloadEnvelope.ts +2 -2
  90. package/src/chain/chain.ts +3 -0
  91. package/src/chain/errors/index.ts +1 -0
  92. package/src/chain/errors/proposerPreferences.ts +39 -0
  93. package/src/chain/interface.ts +2 -0
  94. package/src/chain/opPools/payloadAttestationPool.ts +4 -8
  95. package/src/chain/produceBlock/produceBlockBody.ts +12 -4
  96. package/src/chain/regen/interface.ts +1 -0
  97. package/src/chain/seenCache/index.ts +1 -0
  98. package/src/chain/seenCache/seenProposerPreferences.ts +29 -0
  99. package/src/chain/validation/proposerPreferences.ts +91 -0
  100. package/src/metrics/metrics/lodestar.ts +4 -0
  101. package/src/network/gossip/interface.ts +6 -0
  102. package/src/network/gossip/scoringParameters.ts +14 -1
  103. package/src/network/gossip/topic.ts +6 -0
  104. package/src/network/processor/gossipHandlers.ts +15 -6
  105. package/src/network/processor/gossipQueues/index.ts +5 -0
  106. package/src/network/processor/index.ts +1 -0
  107. package/src/sync/types.ts +72 -0
  108. package/src/sync/unknownBlock.ts +810 -57
  109. package/src/sync/utils/downloadByRoot.ts +12 -2
  110. package/src/sync/utils/pendingBlocksTree.ts +0 -15
@@ -1,6 +1,13 @@
1
1
  import {routes} from "@lodestar/api";
2
2
  import {ChainForkConfig} from "@lodestar/config";
3
- import {ForkPostDeneb, ForkPostFulu, ForkPreFulu, isForkPostDeneb, isForkPostFulu} from "@lodestar/params";
3
+ import {
4
+ ForkPostDeneb,
5
+ ForkPostFulu,
6
+ ForkPreFulu,
7
+ isForkPostDeneb,
8
+ isForkPostFulu,
9
+ isForkPostGloas,
10
+ } from "@lodestar/params";
4
11
  import {BlobIndex, ColumnIndex, SignedBeaconBlock, Slot, deneb, fulu} from "@lodestar/types";
5
12
  import {LodestarError, byteArrayEquals, fromHex, prettyPrintIndices, toHex, toRootHex} from "@lodestar/utils";
6
13
  import {isBlockInputBlobs, isBlockInputColumns} from "../../chain/blocks/blockInput/blockInput.js";
@@ -263,7 +270,10 @@ export async function fetchByRoot({
263
270
  blockRoot,
264
271
  });
265
272
  const forkName = config.getForkName(block.message.slot);
266
- if (isForkPostFulu(forkName)) {
273
+ if (isForkPostGloas(forkName)) {
274
+ // Post-gloas block sync only needs the block body. Payload columns stay on the
275
+ // payload/envelope path and are queued independently in the network processor.
276
+ } else if (isForkPostFulu(forkName)) {
267
277
  columnSidecarResult = await fetchAndValidateColumns({
268
278
  config,
269
279
  chain,
@@ -40,21 +40,6 @@ function addToDescendantBlocks(
40
40
  return descendantBlocks;
41
41
  }
42
42
 
43
- export function getDescendantBlocks(
44
- blockRootHex: RootHex,
45
- blocks: Map<RootHex, BlockInputSyncCacheItem>
46
- ): BlockInputSyncCacheItem[] {
47
- const descendantBlocks: BlockInputSyncCacheItem[] = [];
48
-
49
- for (const block of blocks.values()) {
50
- if ((isPendingBlockInput(block) ? block.blockInput.parentRootHex : undefined) === blockRootHex) {
51
- descendantBlocks.push(block);
52
- }
53
- }
54
-
55
- return descendantBlocks;
56
- }
57
-
58
43
  export type UnknownAndAncestorBlocks = {
59
44
  unknowns: BlockInputSyncCacheItem[];
60
45
  ancestors: PendingBlockInput[];