@lodestar/beacon-node 1.42.0-dev.4411584fd8 → 1.42.0-dev.5f9f015475

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 (130) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +35 -16
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/chain/blocks/blockInput/types.d.ts +3 -3
  5. package/lib/chain/blocks/blockInput/types.d.ts.map +1 -1
  6. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  7. package/lib/chain/blocks/importBlock.js +18 -2
  8. package/lib/chain/blocks/importBlock.js.map +1 -1
  9. package/lib/chain/blocks/importExecutionPayload.d.ts +48 -0
  10. package/lib/chain/blocks/importExecutionPayload.d.ts.map +1 -0
  11. package/lib/chain/blocks/importExecutionPayload.js +159 -0
  12. package/lib/chain/blocks/importExecutionPayload.js.map +1 -0
  13. package/lib/chain/blocks/payloadEnvelopeInput/index.d.ts +3 -0
  14. package/lib/chain/blocks/payloadEnvelopeInput/index.d.ts.map +1 -0
  15. package/lib/chain/blocks/payloadEnvelopeInput/index.js +3 -0
  16. package/lib/chain/blocks/payloadEnvelopeInput/index.js.map +1 -0
  17. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts +80 -0
  18. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.d.ts.map +1 -0
  19. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js +248 -0
  20. package/lib/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.js.map +1 -0
  21. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts +29 -0
  22. package/lib/chain/blocks/payloadEnvelopeInput/types.d.ts.map +1 -0
  23. package/lib/chain/blocks/payloadEnvelopeInput/types.js +11 -0
  24. package/lib/chain/blocks/payloadEnvelopeInput/types.js.map +1 -0
  25. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts +15 -0
  26. package/lib/chain/blocks/payloadEnvelopeProcessor.d.ts.map +1 -0
  27. package/lib/chain/blocks/payloadEnvelopeProcessor.js +46 -0
  28. package/lib/chain/blocks/payloadEnvelopeProcessor.js.map +1 -0
  29. package/lib/chain/blocks/types.d.ts +7 -0
  30. package/lib/chain/blocks/types.d.ts.map +1 -1
  31. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts +12 -0
  32. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.d.ts.map +1 -0
  33. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js +40 -0
  34. package/lib/chain/blocks/writePayloadEnvelopeInputToDb.js.map +1 -0
  35. package/lib/chain/chain.d.ts +7 -2
  36. package/lib/chain/chain.d.ts.map +1 -1
  37. package/lib/chain/chain.js +28 -3
  38. package/lib/chain/chain.js.map +1 -1
  39. package/lib/chain/errors/executionPayloadEnvelope.d.ts +12 -2
  40. package/lib/chain/errors/executionPayloadEnvelope.d.ts.map +1 -1
  41. package/lib/chain/errors/executionPayloadEnvelope.js +3 -1
  42. package/lib/chain/errors/executionPayloadEnvelope.js.map +1 -1
  43. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  44. package/lib/chain/forkChoice/index.js +0 -10
  45. package/lib/chain/forkChoice/index.js.map +1 -1
  46. package/lib/chain/interface.d.ts +6 -3
  47. package/lib/chain/interface.d.ts.map +1 -1
  48. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +1 -1
  49. package/lib/chain/produceBlock/computeNewStateRoot.js +6 -1
  50. package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
  51. package/lib/chain/regen/interface.d.ts +2 -0
  52. package/lib/chain/regen/interface.d.ts.map +1 -1
  53. package/lib/chain/regen/interface.js +2 -0
  54. package/lib/chain/regen/interface.js.map +1 -1
  55. package/lib/chain/seenCache/index.d.ts +1 -1
  56. package/lib/chain/seenCache/index.d.ts.map +1 -1
  57. package/lib/chain/seenCache/index.js +1 -1
  58. package/lib/chain/seenCache/index.js.map +1 -1
  59. package/lib/chain/seenCache/seenGossipBlockInput.js +2 -2
  60. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  61. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts +38 -0
  62. package/lib/chain/seenCache/seenPayloadEnvelopeInput.d.ts.map +1 -0
  63. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js +76 -0
  64. package/lib/chain/seenCache/seenPayloadEnvelopeInput.js.map +1 -0
  65. package/lib/chain/validation/executionPayloadEnvelope.d.ts.map +1 -1
  66. package/lib/chain/validation/executionPayloadEnvelope.js +30 -19
  67. package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
  68. package/lib/chain/validation/syncCommittee.d.ts +2 -2
  69. package/lib/chain/validation/syncCommittee.d.ts.map +1 -1
  70. package/lib/chain/validation/syncCommittee.js +12 -11
  71. package/lib/chain/validation/syncCommittee.js.map +1 -1
  72. package/lib/chain/validatorMonitor.d.ts +2 -1
  73. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  74. package/lib/chain/validatorMonitor.js +3 -0
  75. package/lib/chain/validatorMonitor.js.map +1 -1
  76. package/lib/metrics/metrics/lodestar.d.ts +28 -0
  77. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  78. package/lib/metrics/metrics/lodestar.js +74 -0
  79. package/lib/metrics/metrics/lodestar.js.map +1 -1
  80. package/lib/network/gossip/encoding.d.ts.map +1 -1
  81. package/lib/network/gossip/encoding.js +15 -0
  82. package/lib/network/gossip/encoding.js.map +1 -1
  83. package/lib/network/processor/extractSlotRootFns.d.ts.map +1 -1
  84. package/lib/network/processor/extractSlotRootFns.js +14 -4
  85. package/lib/network/processor/extractSlotRootFns.js.map +1 -1
  86. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  87. package/lib/network/processor/gossipHandlers.js +38 -8
  88. package/lib/network/processor/gossipHandlers.js.map +1 -1
  89. package/lib/sync/unknownBlock.d.ts +2 -8
  90. package/lib/sync/unknownBlock.d.ts.map +1 -1
  91. package/lib/sync/unknownBlock.js +7 -40
  92. package/lib/sync/unknownBlock.js.map +1 -1
  93. package/lib/util/sszBytes.d.ts +4 -1
  94. package/lib/util/sszBytes.d.ts.map +1 -1
  95. package/lib/util/sszBytes.js +69 -12
  96. package/lib/util/sszBytes.js.map +1 -1
  97. package/package.json +15 -15
  98. package/src/api/impl/beacon/blocks/index.ts +36 -17
  99. package/src/chain/blocks/blockInput/types.ts +3 -3
  100. package/src/chain/blocks/importBlock.ts +36 -2
  101. package/src/chain/blocks/importExecutionPayload.ts +241 -0
  102. package/src/chain/blocks/payloadEnvelopeInput/index.ts +2 -0
  103. package/src/chain/blocks/payloadEnvelopeInput/payloadEnvelopeInput.ts +336 -0
  104. package/src/chain/blocks/payloadEnvelopeInput/types.ts +33 -0
  105. package/src/chain/blocks/payloadEnvelopeProcessor.ts +61 -0
  106. package/src/chain/blocks/types.ts +8 -0
  107. package/src/chain/blocks/writePayloadEnvelopeInputToDb.ts +55 -0
  108. package/src/chain/chain.ts +37 -3
  109. package/src/chain/errors/executionPayloadEnvelope.ts +6 -2
  110. package/src/chain/forkChoice/index.ts +0 -10
  111. package/src/chain/interface.ts +6 -3
  112. package/src/chain/produceBlock/computeNewStateRoot.ts +6 -1
  113. package/src/chain/regen/interface.ts +2 -0
  114. package/src/chain/seenCache/index.ts +1 -1
  115. package/src/chain/seenCache/seenGossipBlockInput.ts +2 -2
  116. package/src/chain/seenCache/seenPayloadEnvelopeInput.ts +106 -0
  117. package/src/chain/validation/executionPayloadEnvelope.ts +38 -25
  118. package/src/chain/validation/syncCommittee.ts +15 -14
  119. package/src/chain/validatorMonitor.ts +10 -0
  120. package/src/metrics/metrics/lodestar.ts +77 -0
  121. package/src/network/gossip/encoding.ts +16 -0
  122. package/src/network/processor/extractSlotRootFns.ts +18 -5
  123. package/src/network/processor/gossipHandlers.ts +44 -7
  124. package/src/sync/unknownBlock.ts +9 -49
  125. package/src/util/sszBytes.ts +90 -10
  126. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts +0 -15
  127. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.d.ts.map +0 -1
  128. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js +0 -28
  129. package/lib/chain/seenCache/seenExecutionPayloadEnvelope.js.map +0 -1
  130. package/src/chain/seenCache/seenExecutionPayloadEnvelope.ts +0 -34
@@ -1,28 +0,0 @@
1
- /**
2
- * Cache to prevent processing multiple execution payload envelopes for the same block root.
3
- * Only one builder qualifies to submit an execution payload for a given slot.
4
- * We only keep track of envelopes of unfinalized slots.
5
- * [IGNORE] The node has not seen another valid `SignedExecutionPayloadEnvelope` for this block root.
6
- */
7
- export class SeenExecutionPayloadEnvelopes {
8
- slotByBlockRoot = new Map();
9
- finalizedSlot = 0;
10
- isKnown(blockRoot) {
11
- return this.slotByBlockRoot.has(blockRoot);
12
- }
13
- add(blockRoot, slot) {
14
- if (slot < this.finalizedSlot) {
15
- throw Error(`slot ${slot} < finalizedSlot ${this.finalizedSlot}`);
16
- }
17
- this.slotByBlockRoot.set(blockRoot, slot);
18
- }
19
- prune(finalizedSlot) {
20
- this.finalizedSlot = finalizedSlot;
21
- for (const [blockRoot, slot] of this.slotByBlockRoot.entries()) {
22
- if (slot < finalizedSlot) {
23
- this.slotByBlockRoot.delete(blockRoot);
24
- }
25
- }
26
- }
27
- }
28
- //# sourceMappingURL=seenExecutionPayloadEnvelope.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"seenExecutionPayloadEnvelope.js","sourceRoot":"","sources":["../../../src/chain/seenCache/seenExecutionPayloadEnvelope.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,OAAO,6BAA6B;IACvB,eAAe,GAAG,IAAI,GAAG,EAAiB,CAAC;IACpD,aAAa,GAAS,CAAC,CAAC;IAEhC,OAAO,CAAC,SAAkB,EAAW;QACnC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAAA,CAC5C;IAED,GAAG,CAAC,SAAkB,EAAE,IAAU,EAAQ;QACxC,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9B,MAAM,KAAK,CAAC,QAAQ,IAAI,oBAAoB,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAAA,CAC3C;IAED,KAAK,CAAC,aAAmB,EAAQ;QAC/B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/D,IAAI,IAAI,GAAG,aAAa,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IAAA,CACF;CACF"}
@@ -1,34 +0,0 @@
1
- import {RootHex, Slot} from "@lodestar/types";
2
-
3
- /**
4
- * Cache to prevent processing multiple execution payload envelopes for the same block root.
5
- * Only one builder qualifies to submit an execution payload for a given slot.
6
- * We only keep track of envelopes of unfinalized slots.
7
- * [IGNORE] The node has not seen another valid `SignedExecutionPayloadEnvelope` for this block root.
8
- */
9
- export class SeenExecutionPayloadEnvelopes {
10
- private readonly slotByBlockRoot = new Map<RootHex, Slot>();
11
- private finalizedSlot: Slot = 0;
12
-
13
- isKnown(blockRoot: RootHex): boolean {
14
- return this.slotByBlockRoot.has(blockRoot);
15
- }
16
-
17
- add(blockRoot: RootHex, slot: Slot): void {
18
- if (slot < this.finalizedSlot) {
19
- throw Error(`slot ${slot} < finalizedSlot ${this.finalizedSlot}`);
20
- }
21
-
22
- this.slotByBlockRoot.set(blockRoot, slot);
23
- }
24
-
25
- prune(finalizedSlot: Slot): void {
26
- this.finalizedSlot = finalizedSlot;
27
-
28
- for (const [blockRoot, slot] of this.slotByBlockRoot.entries()) {
29
- if (slot < finalizedSlot) {
30
- this.slotByBlockRoot.delete(blockRoot);
31
- }
32
- }
33
- }
34
- }