@lodestar/beacon-node 1.50.0-dev.0837ebd402 → 1.50.0-dev.09bef4706f

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 (188) hide show
  1. package/lib/api/impl/beacon/blocks/index.d.ts.map +1 -1
  2. package/lib/api/impl/beacon/blocks/index.js +7 -2
  3. package/lib/api/impl/beacon/blocks/index.js.map +1 -1
  4. package/lib/api/impl/validator/index.d.ts.map +1 -1
  5. package/lib/api/impl/validator/index.js +57 -17
  6. package/lib/api/impl/validator/index.js.map +1 -1
  7. package/lib/chain/ColumnReconstructionTracker.d.ts +0 -2
  8. package/lib/chain/ColumnReconstructionTracker.d.ts.map +1 -1
  9. package/lib/chain/ColumnReconstructionTracker.js +4 -5
  10. package/lib/chain/ColumnReconstructionTracker.js.map +1 -1
  11. package/lib/chain/beaconProposerCache.d.ts +6 -0
  12. package/lib/chain/beaconProposerCache.d.ts.map +1 -1
  13. package/lib/chain/beaconProposerCache.js +16 -0
  14. package/lib/chain/beaconProposerCache.js.map +1 -1
  15. package/lib/chain/blocks/blockInput/blockInput.d.ts +1 -1
  16. package/lib/chain/blocks/blockInput/blockInput.d.ts.map +1 -1
  17. package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
  18. package/lib/chain/blocks/importBlock.d.ts.map +1 -1
  19. package/lib/chain/blocks/importBlock.js +8 -6
  20. package/lib/chain/blocks/importBlock.js.map +1 -1
  21. package/lib/chain/chain.d.ts +1 -0
  22. package/lib/chain/chain.d.ts.map +1 -1
  23. package/lib/chain/chain.js +16 -2
  24. package/lib/chain/chain.js.map +1 -1
  25. package/lib/chain/interface.d.ts +3 -1
  26. package/lib/chain/interface.d.ts.map +1 -1
  27. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  28. package/lib/chain/prepareNextSlot.js +15 -6
  29. package/lib/chain/prepareNextSlot.js.map +1 -1
  30. package/lib/chain/produceBlock/computeNewStateRoot.d.ts.map +1 -1
  31. package/lib/chain/produceBlock/computeNewStateRoot.js.map +1 -1
  32. package/lib/chain/produceBlock/produceBlockBody.d.ts +8 -0
  33. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  34. package/lib/chain/produceBlock/produceBlockBody.js +48 -34
  35. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  36. package/lib/chain/reprocess.d.ts +2 -1
  37. package/lib/chain/reprocess.d.ts.map +1 -1
  38. package/lib/chain/reprocess.js +2 -1
  39. package/lib/chain/reprocess.js.map +1 -1
  40. package/lib/chain/seenCache/seenGossipBlockInput.d.ts.map +1 -1
  41. package/lib/chain/seenCache/seenGossipBlockInput.js +1 -1
  42. package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
  43. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
  44. package/lib/chain/stateCache/persistentCheckpointsCache.js +1 -1
  45. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  46. package/lib/chain/validatorMonitor.d.ts.map +1 -1
  47. package/lib/chain/validatorMonitor.js +6 -4
  48. package/lib/chain/validatorMonitor.js.map +1 -1
  49. package/lib/constants/constants.d.ts +1 -0
  50. package/lib/constants/constants.d.ts.map +1 -1
  51. package/lib/constants/constants.js +1 -0
  52. package/lib/constants/constants.js.map +1 -1
  53. package/lib/db/repositories/blockArchive.js +2 -2
  54. package/lib/db/repositories/blockArchive.js.map +1 -1
  55. package/lib/db/repositories/blockArchiveIndex.d.ts +1 -1
  56. package/lib/db/repositories/blockArchiveIndex.d.ts.map +1 -1
  57. package/lib/db/repositories/blockArchiveIndex.js +1 -2
  58. package/lib/db/repositories/blockArchiveIndex.js.map +1 -1
  59. package/lib/execution/engine/blobVersionedHashes.d.ts +9 -0
  60. package/lib/execution/engine/blobVersionedHashes.d.ts.map +1 -0
  61. package/lib/execution/engine/blobVersionedHashes.js +74 -0
  62. package/lib/execution/engine/blobVersionedHashes.js.map +1 -0
  63. package/lib/execution/engine/http.d.ts +45 -13
  64. package/lib/execution/engine/http.d.ts.map +1 -1
  65. package/lib/execution/engine/http.js +236 -198
  66. package/lib/execution/engine/http.js.map +1 -1
  67. package/lib/execution/engine/index.d.ts +3 -2
  68. package/lib/execution/engine/index.d.ts.map +1 -1
  69. package/lib/execution/engine/index.js +33 -8
  70. package/lib/execution/engine/index.js.map +1 -1
  71. package/lib/execution/engine/interface.d.ts +1 -1
  72. package/lib/execution/engine/interface.d.ts.map +1 -1
  73. package/lib/execution/engine/jsonRpcHttpClient.d.ts.map +1 -1
  74. package/lib/execution/engine/jsonRpcHttpClient.js +14 -4
  75. package/lib/execution/engine/jsonRpcHttpClient.js.map +1 -1
  76. package/lib/execution/engine/jsonRpcTransport.d.ts +25 -0
  77. package/lib/execution/engine/jsonRpcTransport.d.ts.map +1 -0
  78. package/lib/execution/engine/jsonRpcTransport.js +158 -0
  79. package/lib/execution/engine/jsonRpcTransport.js.map +1 -0
  80. package/lib/execution/engine/restHttpClient.d.ts +71 -0
  81. package/lib/execution/engine/restHttpClient.d.ts.map +1 -0
  82. package/lib/execution/engine/restHttpClient.js +201 -0
  83. package/lib/execution/engine/restHttpClient.js.map +1 -0
  84. package/lib/execution/engine/restTransport.d.ts +48 -0
  85. package/lib/execution/engine/restTransport.d.ts.map +1 -0
  86. package/lib/execution/engine/restTransport.js +411 -0
  87. package/lib/execution/engine/restTransport.js.map +1 -0
  88. package/lib/execution/engine/sszTypes.d.ts +1261 -0
  89. package/lib/execution/engine/sszTypes.d.ts.map +1 -0
  90. package/lib/execution/engine/sszTypes.js +216 -0
  91. package/lib/execution/engine/sszTypes.js.map +1 -0
  92. package/lib/execution/engine/transport.d.ts +39 -0
  93. package/lib/execution/engine/transport.d.ts.map +1 -0
  94. package/lib/execution/engine/transport.js +2 -0
  95. package/lib/execution/engine/transport.js.map +1 -0
  96. package/lib/execution/engine/transportMetrics.d.ts +5 -1
  97. package/lib/execution/engine/transportMetrics.d.ts.map +1 -1
  98. package/lib/execution/engine/types.d.ts +2 -0
  99. package/lib/execution/engine/types.d.ts.map +1 -1
  100. package/lib/execution/engine/types.js +31 -63
  101. package/lib/execution/engine/types.js.map +1 -1
  102. package/lib/execution/engine/utils.d.ts.map +1 -1
  103. package/lib/execution/engine/utils.js +9 -2
  104. package/lib/execution/engine/utils.js.map +1 -1
  105. package/lib/metrics/metrics/lodestar.d.ts +7 -0
  106. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  107. package/lib/metrics/metrics/lodestar.js +12 -1
  108. package/lib/metrics/metrics/lodestar.js.map +1 -1
  109. package/lib/network/core/events.d.ts +5 -1
  110. package/lib/network/core/events.d.ts.map +1 -1
  111. package/lib/network/core/events.js +8 -0
  112. package/lib/network/core/events.js.map +1 -1
  113. package/lib/network/gossip/topic.d.ts +0 -14
  114. package/lib/network/gossip/topic.d.ts.map +1 -1
  115. package/lib/network/processor/gossipHandlers.js +1 -1
  116. package/lib/network/processor/gossipHandlers.js.map +1 -1
  117. package/lib/network/processor/index.js +3 -3
  118. package/lib/network/processor/index.js.map +1 -1
  119. package/lib/network/reqresp/rateLimit.js +2 -2
  120. package/lib/network/reqresp/rateLimit.js.map +1 -1
  121. package/lib/network/subnets/attnetsService.d.ts.map +1 -1
  122. package/lib/network/subnets/attnetsService.js +3 -1
  123. package/lib/network/subnets/attnetsService.js.map +1 -1
  124. package/lib/node/notifier.d.ts.map +1 -1
  125. package/lib/node/notifier.js +12 -13
  126. package/lib/node/notifier.js.map +1 -1
  127. package/lib/node/options.d.ts +3 -2
  128. package/lib/node/options.d.ts.map +1 -1
  129. package/lib/node/options.js +2 -2
  130. package/lib/node/options.js.map +1 -1
  131. package/lib/sync/unknownBlock.d.ts.map +1 -1
  132. package/lib/sync/unknownBlock.js +3 -2
  133. package/lib/sync/unknownBlock.js.map +1 -1
  134. package/lib/util/asyncIterableToEvents.d.ts +10 -2
  135. package/lib/util/asyncIterableToEvents.d.ts.map +1 -1
  136. package/lib/util/asyncIterableToEvents.js +29 -3
  137. package/lib/util/asyncIterableToEvents.js.map +1 -1
  138. package/lib/util/clock.d.ts.map +1 -1
  139. package/lib/util/clock.js +3 -4
  140. package/lib/util/clock.js.map +1 -1
  141. package/lib/util/sszBytes.d.ts +2 -2
  142. package/lib/util/sszBytes.d.ts.map +1 -1
  143. package/lib/util/sszBytes.js +22 -14
  144. package/lib/util/sszBytes.js.map +1 -1
  145. package/package.json +16 -15
  146. package/src/api/impl/beacon/blocks/index.ts +10 -3
  147. package/src/api/impl/validator/index.ts +78 -19
  148. package/src/chain/ColumnReconstructionTracker.ts +4 -6
  149. package/src/chain/beaconProposerCache.ts +19 -1
  150. package/src/chain/blocks/blockInput/blockInput.ts +1 -1
  151. package/src/chain/blocks/importBlock.ts +9 -6
  152. package/src/chain/chain.ts +18 -2
  153. package/src/chain/interface.ts +4 -1
  154. package/src/chain/prepareNextSlot.ts +22 -6
  155. package/src/chain/produceBlock/computeNewStateRoot.ts +9 -2
  156. package/src/chain/produceBlock/produceBlockBody.ts +78 -39
  157. package/src/chain/reprocess.ts +2 -1
  158. package/src/chain/seenCache/seenGossipBlockInput.ts +2 -1
  159. package/src/chain/stateCache/persistentCheckpointsCache.ts +4 -1
  160. package/src/chain/validatorMonitor.ts +7 -4
  161. package/src/constants/constants.ts +1 -0
  162. package/src/db/repositories/blockArchive.ts +2 -2
  163. package/src/db/repositories/blockArchiveIndex.ts +2 -3
  164. package/src/execution/engine/blobVersionedHashes.ts +72 -0
  165. package/src/execution/engine/http.ts +304 -271
  166. package/src/execution/engine/index.ts +42 -7
  167. package/src/execution/engine/interface.ts +1 -1
  168. package/src/execution/engine/jsonRpcHttpClient.ts +12 -5
  169. package/src/execution/engine/jsonRpcTransport.ts +247 -0
  170. package/src/execution/engine/restHttpClient.ts +269 -0
  171. package/src/execution/engine/restTransport.ts +575 -0
  172. package/src/execution/engine/sszTypes.ts +354 -0
  173. package/src/execution/engine/transport.ts +61 -0
  174. package/src/execution/engine/transportMetrics.ts +2 -1
  175. package/src/execution/engine/types.ts +42 -80
  176. package/src/execution/engine/utils.ts +12 -2
  177. package/src/metrics/metrics/lodestar.ts +12 -1
  178. package/src/network/core/events.ts +16 -1
  179. package/src/network/processor/gossipHandlers.ts +1 -1
  180. package/src/network/processor/index.ts +3 -3
  181. package/src/network/reqresp/rateLimit.ts +2 -2
  182. package/src/network/subnets/attnetsService.ts +8 -3
  183. package/src/node/notifier.ts +14 -13
  184. package/src/node/options.ts +10 -1
  185. package/src/sync/unknownBlock.ts +3 -2
  186. package/src/util/asyncIterableToEvents.ts +44 -5
  187. package/src/util/clock.ts +3 -4
  188. package/src/util/sszBytes.ts +25 -12
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,8BAA8B,EAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAA6B,uBAAuB,EAAC,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAmC,cAAc,EAAC,MAAM,YAAY,CAAC;AAE5E,OAAO,EAAC,mBAAmB,EAAE,uBAAuB,EAAE,8BAA8B,EAAC,CAAC;AAEtF,MAAM,MAAM,mBAAmB,GAC3B,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,GAAG,uBAAuB,CAAC,GAC3C,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAAG,uBAAuB,CAAC,GAC1C;IAAC,IAAI,EAAE,UAAU,CAAA;CAAC,CAAC;AACvB,eAAO,MAAM,0BAA0B,EAAE,mBAAoD,CAAC;AAE9F,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAGlB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,uBAAuB,EAC7B,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAWlB;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAclB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,uBAAuB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,8BAA8B,EAC9B,cAAc,EACf,MAAM,WAAW,CAAC;AACnB,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAA6B,uBAAuB,EAAC,MAAM,WAAW,CAAC;AAG9E,OAAO,EAAmC,cAAc,EAAC,MAAM,YAAY,CAAC;AAE5E,OAAO,EAAC,mBAAmB,EAAE,uBAAuB,EAAE,8BAA8B,EAAE,cAAc,EAAC,CAAC;AACtG,YAAY,EAAC,aAAa,EAAC,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAC3B,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,GAAG,uBAAuB,CAAC,GAC3C,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAAG,uBAAuB,CAAC,GAC1C;IAAC,IAAI,EAAE,UAAU,CAAA;CAAC,CAAC;AACvB,eAAO,MAAM,0BAA0B,EAAE,mBAAoD,CAAC;AAE9F,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAGlB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,uBAAuB,EAC7B,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAuClB;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAclB"}
@@ -1,26 +1,51 @@
1
- import { fromHex, toPrintableUrl } from "@lodestar/utils";
1
+ import { LodestarError, fromHex, toPrintableUrl } from "@lodestar/utils";
2
+ import { getLodestarClientVersion } from "../../util/metadata.js";
2
3
  import { ExecutionEngineDisabled } from "./disabled.js";
3
- import { ExecutionEngineHttp, defaultExecutionEngineHttpOpts, } from "./http.js";
4
+ import { ExecutionEngineHttp, defaultExecutionEngineHttpOpts, engineApiModes, } from "./http.js";
4
5
  import { JsonRpcHttpClient } from "./jsonRpcHttpClient.js";
6
+ import { JsonRpcEngineTransport } from "./jsonRpcTransport.js";
5
7
  import { ExecutionEngineMockBackend } from "./mock.js";
8
+ import { EngineRestHttpClient } from "./restHttpClient.js";
9
+ import { RestEngineTransport, formatClientVersionHeader } from "./restTransport.js";
6
10
  import { ExecutionEngineMockJsonRpcClient } from "./utils.js";
7
- export { ExecutionEngineHttp, ExecutionEngineDisabled, defaultExecutionEngineHttpOpts };
11
+ export { ExecutionEngineHttp, ExecutionEngineDisabled, defaultExecutionEngineHttpOpts, engineApiModes };
8
12
  export const defaultExecutionEngineOpts = defaultExecutionEngineHttpOpts;
9
13
  export function getExecutionEngineFromBackend(backend, modules) {
10
14
  const rpc = new ExecutionEngineMockJsonRpcClient(backend);
11
- return new ExecutionEngineHttp(rpc, modules);
15
+ return new ExecutionEngineHttp({ jsonRpc: new JsonRpcEngineTransport(rpc) }, modules);
12
16
  }
13
17
  export function getExecutionEngineHttp(opts, modules) {
18
+ const jwtSecret = opts.jwtSecretHex ? fromHex(opts.jwtSecretHex) : undefined;
19
+ const metrics = modules.metrics?.executionEnginerHttpClient;
20
+ const engineApi = opts.engineApi ?? "auto";
21
+ if (engineApi === "ssz" && opts.urls.length !== 1) {
22
+ throw new LodestarError({ code: "ENGINE_REST_REQUIRES_SINGLE_URL", count: opts.urls.length });
23
+ }
24
+ if (engineApi === "auto" && opts.urls.length > 1) {
25
+ modules.logger.debug("Using JSON-RPC for multiple execution URLs", { count: opts.urls.length });
26
+ }
14
27
  const rpc = new JsonRpcHttpClient(opts.urls, {
15
28
  ...opts,
16
29
  signal: modules.signal,
17
- metrics: modules.metrics?.executionEnginerHttpClient,
18
- jwtSecret: opts.jwtSecretHex ? fromHex(opts.jwtSecretHex) : undefined,
30
+ metrics,
31
+ jwtSecret,
19
32
  jwtId: opts.jwtId,
20
33
  jwtVersion: opts.jwtVersion,
21
34
  });
22
- modules.logger.info("Execution client", { urls: opts.urls.map(toPrintableUrl).toString() });
23
- return new ExecutionEngineHttp(rpc, modules, opts);
35
+ const rest = engineApi === "json-rpc" || opts.urls.length !== 1
36
+ ? undefined
37
+ : new RestEngineTransport(new EngineRestHttpClient(opts.urls, {
38
+ signal: modules.signal,
39
+ timeout: opts.timeout,
40
+ retries: opts.retries,
41
+ retryDelay: opts.retryDelay,
42
+ jwtSecret,
43
+ jwtId: opts.jwtId,
44
+ clientVersion: formatClientVersionHeader(getLodestarClientVersion(opts)),
45
+ metrics,
46
+ }), metrics);
47
+ modules.logger.info("Execution client", { urls: opts.urls.map(toPrintableUrl).toString(), engineApi });
48
+ return new ExecutionEngineHttp({ jsonRpc: new JsonRpcEngineTransport(rpc), rest }, modules, opts);
24
49
  }
25
50
  export function initializeExecutionEngine(opts, modules) {
26
51
  switch (opts.mode) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/engine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAC,uBAAuB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,mBAAmB,EAGnB,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAC,0BAA0B,EAA0B,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAC,gCAAgC,EAAiB,MAAM,YAAY,CAAC;AAE5E,OAAO,EAAC,mBAAmB,EAAE,uBAAuB,EAAE,8BAA8B,EAAC,CAAC;AAMtF,MAAM,CAAC,MAAM,0BAA0B,GAAwB,8BAA8B,CAAC;AAE9F,MAAM,UAAU,6BAA6B,CAC3C,OAAuB,EACvB,OAA+B;IAE/B,MAAM,GAAG,GAAG,IAAI,gCAAgC,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,IAAI,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,IAA6B,EAC7B,OAA+B;IAE/B,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE;QAC3C,GAAG,IAAI;QACP,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,0BAA0B;QACpD,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;QACrE,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IACH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAC,CAAC,CAAC;IAC1F,OAAO,IAAI,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAyB,EACzB,OAA+B;IAE/B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,UAAU;YACb,OAAO,IAAI,uBAAuB,EAAE,CAAC;QAEvC,KAAK,MAAM;YACT,OAAO,6BAA6B,CAAC,IAAI,0BAA0B,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAEtF,KAAK,MAAM;YACT,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE/C;YACE,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/engine/index.ts"],"names":[],"mappings":"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"}
@@ -114,7 +114,7 @@ export interface IExecutionEngine {
114
114
  executionRequests?: ExecutionRequests;
115
115
  shouldOverrideBuilder?: boolean;
116
116
  }>;
117
- /** Amsterdam: payload bodies including the block access list (null if the EL no longer has it) */
117
+ /** Amsterdam: includes the block access list; REST returns null for bodies outside the Amsterdam era. */
118
118
  getPayloadBodiesByHashV2(blockHash: DATA[]): Promise<(ExecutionPayloadBodyV2 | null)[]>;
119
119
  getBlobs(fork: ForkPostFulu, versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<BlobAndProofV2[] | null>;
120
120
  getBlobs(fork: ForkPreFulu, versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<(BlobAndProof | null)[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAC9G,OAAO,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAC,SAAS,EAAE,cAAc,EAAE,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAC,sBAAsB,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,EAAC,IAAI,EAAC,MAAM,YAAY,CAAC;AAEhC,OAAO,EAAC,cAAc,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAC,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;AACtD,eAAO,MAAM,UAAU,+BAAyB,CAAC;AAEjD,oBAAY,sBAAsB;IAChC,6BAA6B;IAC7B,KAAK,UAAU;IACf,+BAA+B;IAC/B,OAAO,YAAY;IACnB,kCAAkC;IAClC,OAAO,YAAY;IACnB;;;OAGG;IACH,QAAQ,aAAa;IACrB,2BAA2B;IAC3B,kBAAkB,uBAAuB;IACzC,eAAe;IACf,OAAO,YAAY;IACnB,qBAAqB;IACrB,WAAW,gBAAgB;IAC3B,wFAAwF;IACxF,wBAAwB,6BAA6B;CACtD;AAED,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,WAAW,gBAAgB;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAC5B,OAAO,oBAAoB,GAC3B,OAAO,uBAAuB,GAC9B,OAAO,0BAA0B,GACjC,OAAO,4BAA4B,GACnC,OAAO,yBAAyB,CAAC;AAErC,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,oBAAoB,CAQjF;AAED,MAAM,MAAM,sBAAsB,GAC9B;IACE,MAAM,EAAE,sBAAsB,CAAC,OAAO,GAAG,sBAAsB,CAAC,QAAQ,CAAC;IACzE,eAAe,EAAE,IAAI,CAAC;IACtB,eAAe,EAAE,IAAI,CAAC;CACvB,GACD;IAAC,MAAM,EAAE,sBAAsB,CAAC,KAAK,CAAC;IAAC,eAAe,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,IAAI,CAAA;CAAC,GACvF;IAAC,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAC,GACzG;IACE,MAAM,EACF,sBAAsB,CAAC,kBAAkB,GACzC,sBAAsB,CAAC,OAAO,GAC9B,sBAAsB,CAAC,WAAW,CAAC;IACvC,eAAe,EAAE,IAAI,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEN,MAAM,MAAM,sBAAsB,GAC9B,sBAAsB,CAAC,KAAK,GAC5B,sBAAsB,CAAC,OAAO,GAC9B,sBAAsB,CAAC,OAAO,CAAC;AAEnC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IAGvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IACnC,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,UAAU,EAAE,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IAErC,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAE9C,cAAc,EAAE,cAAc,CAAC;IAC/B;;;;;;;;OAQG;IACH,gBAAgB,CACd,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,CAAC,EAAE,eAAe,EACjC,qBAAqB,CAAC,EAAE,IAAI,EAC5B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEnC;;;;;;;;;;;OAWG;IACH,sBAAsB,CACpB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,UAAU,CACR,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC;QACT,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,qBAAqB,EAAE,GAAG,CAAC;QAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QACtC,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,CAAC,CAAC;IAEH,yGAAyG;IACzG,wBAAwB,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAExF,QAAQ,CACN,IAAI,EAAE,YAAY,EAClB,eAAe,EAAE,eAAe,EAChC,OAAO,CAAC,EAAE,UAAU,EAAE,GACrB,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;IACpC,QAAQ,CACN,IAAI,EAAE,WAAW,EACjB,eAAe,EAAE,eAAe,EAChC,OAAO,CAAC,EAAE,UAAU,EAAE,GACrB,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"jsonRpcHttpClient.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsonRpcHttpClient.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
@@ -179,16 +179,26 @@ export class JsonRpcHttpClient {
179
179
  signal: controller.signal,
180
180
  });
181
181
  const streamTimer = this.metrics?.streamTime.startTimer({ routeId });
182
- const bodyText = await res.text();
182
+ let bodyText;
183
+ try {
184
+ bodyText = await res.text();
185
+ }
186
+ finally {
187
+ streamTimer?.();
188
+ }
183
189
  this.metrics?.responseBytes.inc({ routeId }, bodyText.length);
184
190
  if (!res.ok) {
185
191
  // Infura errors:
186
192
  // - No project ID: Forbidden: {"jsonrpc":"2.0","id":0,"error":{"code":-32600,"message":"project ID is required","data":{"reason":"project ID not provided","see":"https://infura.io/dashboard"}}}
187
193
  throw new HttpRpcError(res.status, `${res.statusText}: ${bodyText.slice(0, maxStringLengthToPrint)}`);
188
194
  }
189
- const bodyJson = parseJson(bodyText);
190
- streamTimer?.();
191
- return bodyJson;
195
+ const parseTimer = this.metrics?.responseParseTime.startTimer({ routeId, encoding: "json" });
196
+ try {
197
+ return parseJson(bodyText);
198
+ }
199
+ finally {
200
+ parseTimer?.();
201
+ }
192
202
  }
193
203
  catch (e) {
194
204
  this.metrics?.requestErrors.inc({ routeId });
@@ -1 +1 @@
1
- {"version":3,"file":"jsonRpcHttpClient.js","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsonRpcHttpClient.js","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { ForkName } from "@lodestar/params";
2
+ import { ExecutionPayload, ExecutionRequests, Root, RootHex } from "@lodestar/types";
3
+ import { BlobAndProof } from "@lodestar/types/deneb";
4
+ import { BlobAndProofV2 } from "@lodestar/types/fulu";
5
+ import { ClientVersion, PayloadAttributes, PayloadId, VersionedHashes } from "./interface.js";
6
+ import { IJsonRpcHttpClient, JsonRpcHttpClientEventEmitter } from "./jsonRpcHttpClient.js";
7
+ import { ForkchoiceUpdatedResult, GetPayloadResult, IEngineTransport, PayloadStatusResult } from "./transport.js";
8
+ import { ExecutionPayloadBodyV2 } from "./types.js";
9
+ /**
10
+ * Legacy `engine_*` JSON-RPC methods
11
+ * https://github.com/ethereum/execution-apis/tree/main/src/engine
12
+ */
13
+ export declare class JsonRpcEngineTransport implements IEngineTransport {
14
+ private readonly rpc;
15
+ constructor(rpc: IJsonRpcHttpClient);
16
+ get emitter(): JsonRpcHttpClientEventEmitter;
17
+ newPayload(fork: ForkName, executionPayload: ExecutionPayload, versionedHashes?: VersionedHashes, parentBeaconBlockRoot?: Root, executionRequests?: ExecutionRequests): Promise<PayloadStatusResult>;
18
+ forkchoiceUpdated(fork: ForkName, headBlockHash: RootHex, safeBlockHash: RootHex, finalizedBlockHash: RootHex, payloadAttributes?: PayloadAttributes): Promise<ForkchoiceUpdatedResult>;
19
+ getPayload(fork: ForkName, payloadId: PayloadId): Promise<GetPayloadResult>;
20
+ getPayloadBodiesByHashV2(blockHashes: RootHex[]): Promise<(ExecutionPayloadBodyV2 | null)[]>;
21
+ getBlobsV1(versionedHashes: VersionedHashes): Promise<(BlobAndProof | null)[]>;
22
+ getBlobsV2(versionedHashes: VersionedHashes, buffers?: Uint8Array[]): Promise<BlobAndProofV2[] | null>;
23
+ getClientVersion(clientVersion: ClientVersion): Promise<ClientVersion[]>;
24
+ }
25
+ //# sourceMappingURL=jsonRpcTransport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonRpcTransport.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAU,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAC,gBAAgB,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAC,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAa,aAAa,EAAE,iBAAiB,EAAE,SAAS,EAAE,eAAe,EAAC,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAC,kBAAkB,EAAE,6BAA6B,EAAU,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAC,uBAAuB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAChH,OAAO,EAIL,sBAAsB,EAYvB,MAAM,YAAY,CAAC;AAmBpB;;;GAGG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;IACjD,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAhC,YAA6B,GAAG,EAAE,kBAAkB,EAAI;IAExD,IAAI,OAAO,IAAI,6BAA6B,CAE3C;IAEK,UAAU,CACd,IAAI,EAAE,QAAQ,EACd,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,CAAC,EAAE,eAAe,EACjC,qBAAqB,CAAC,EAAE,IAAI,EAC5B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,OAAO,CAAC,mBAAmB,CAAC,CA6C9B;IAEK,iBAAiB,CACrB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,CAAC,EAAE,iBAAiB,GACpC,OAAO,CAAC,uBAAuB,CAAC,CAoBlC;IAEK,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA6BhF;IAEK,wBAAwB,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC,EAAE,CAAC,CAQjG;IAEK,UAAU,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,CAenF;IAEK,UAAU,CAAC,eAAe,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAsC3G;IAEK,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAY7E;CACF"}
@@ -0,0 +1,158 @@
1
+ import { ForkName, ForkSeq } from "@lodestar/params";
2
+ import { strip0xPrefix } from "@lodestar/utils";
3
+ import { ClientCode } from "./interface.js";
4
+ import { BLOB_AND_PROOF_V2_RPC_BYTES, assertReqSizeLimit, deserializeBlobAndProofs, deserializeBlobAndProofsV2, deserializeBlobAndProofsV2IntoBytes, deserializeExecutionPayloadBodyV2, parseExecutionPayload, serializeBeaconBlockRoot, serializeExecutionPayload, serializeExecutionRequests, serializePayloadAttributes, serializeVersionedHashes, } from "./types.js";
5
+ import { bytesToData } from "./utils.js";
6
+ /**
7
+ * Maximum number of version hashes that can be sent in a getBlobs request
8
+ * Clients must support at least 128 versionedHashes, so we avoid sending more
9
+ * https://github.com/ethereum/execution-apis/blob/main/src/engine/cancun.md#specification-3
10
+ */
11
+ const MAX_VERSIONED_HASHES = 128;
12
+ // Define static options once to prevent extra allocations
13
+ const notifyNewPayloadOpts = { routeId: "notifyNewPayload" };
14
+ const forkchoiceUpdatedOpts = { routeId: "forkchoiceUpdated" };
15
+ const getPayloadOpts = { routeId: "getPayload" };
16
+ const getPayloadBodiesByHashOpts = { routeId: "getPayloadBodiesByHash" };
17
+ const getBlobsV1Opts = { routeId: "getBlobsV1" };
18
+ const getBlobsV2Opts = { routeId: "getBlobsV2" };
19
+ const getClientVersionOpts = { routeId: "getClientVersion" };
20
+ /**
21
+ * Legacy `engine_*` JSON-RPC methods
22
+ * https://github.com/ethereum/execution-apis/tree/main/src/engine
23
+ */
24
+ export class JsonRpcEngineTransport {
25
+ rpc;
26
+ constructor(rpc) {
27
+ this.rpc = rpc;
28
+ }
29
+ get emitter() {
30
+ return this.rpc.emitter;
31
+ }
32
+ async newPayload(fork, executionPayload, versionedHashes, parentBeaconBlockRoot, executionRequests) {
33
+ const serializedExecutionPayload = serializeExecutionPayload(fork, executionPayload);
34
+ if (ForkSeq[fork] >= ForkSeq.deneb) {
35
+ if (versionedHashes === undefined) {
36
+ throw Error(`versionedHashes required in notifyNewPayload for fork=${fork}`);
37
+ }
38
+ if (parentBeaconBlockRoot === undefined) {
39
+ throw Error(`parentBlockRoot required in notifyNewPayload for fork=${fork}`);
40
+ }
41
+ const serializedVersionedHashes = serializeVersionedHashes(versionedHashes);
42
+ const serializedParentBeaconBlockRoot = serializeBeaconBlockRoot(parentBeaconBlockRoot);
43
+ if (ForkSeq[fork] >= ForkSeq.electra) {
44
+ if (executionRequests === undefined) {
45
+ throw Error(`executionRequests required in notifyNewPayload for fork=${fork}`);
46
+ }
47
+ const method = ForkSeq[fork] >= ForkSeq.gloas ? "engine_newPayloadV5" : "engine_newPayloadV4";
48
+ return this.rpc.fetchWithRetries({
49
+ method,
50
+ params: [
51
+ serializedExecutionPayload,
52
+ serializedVersionedHashes,
53
+ serializedParentBeaconBlockRoot,
54
+ serializeExecutionRequests(fork, executionRequests),
55
+ ],
56
+ }, notifyNewPayloadOpts);
57
+ }
58
+ const method = "engine_newPayloadV3";
59
+ return this.rpc.fetchWithRetries({ method, params: [serializedExecutionPayload, serializedVersionedHashes, serializedParentBeaconBlockRoot] }, notifyNewPayloadOpts);
60
+ }
61
+ const method = ForkSeq[fork] >= ForkSeq.capella ? "engine_newPayloadV2" : "engine_newPayloadV1";
62
+ return this.rpc.fetchWithRetries({ method, params: [serializedExecutionPayload] }, notifyNewPayloadOpts);
63
+ }
64
+ async forkchoiceUpdated(fork, headBlockHash, safeBlockHash, finalizedBlockHash, payloadAttributes) {
65
+ const method = ForkSeq[fork] >= ForkSeq.gloas
66
+ ? "engine_forkchoiceUpdatedV4"
67
+ : ForkSeq[fork] >= ForkSeq.deneb
68
+ ? "engine_forkchoiceUpdatedV3"
69
+ : ForkSeq[fork] >= ForkSeq.capella
70
+ ? "engine_forkchoiceUpdatedV2"
71
+ : "engine_forkchoiceUpdatedV1";
72
+ const payloadAttributesRpc = payloadAttributes ? serializePayloadAttributes(payloadAttributes) : undefined;
73
+ // If we are just fcUing and not asking execution for payload, retry is not required
74
+ // and we can move on, as the next fcU will be issued soon on the new slot
75
+ const fcUReqOpts = payloadAttributes !== undefined ? forkchoiceUpdatedOpts : { ...forkchoiceUpdatedOpts, retries: 0 };
76
+ const { payloadStatus, payloadId } = await this.rpc.fetchWithRetries({ method, params: [{ headBlockHash, safeBlockHash, finalizedBlockHash }, payloadAttributesRpc] }, fcUReqOpts);
77
+ return { payloadStatus, payloadId: payloadId && payloadId !== "0x" ? payloadId : null };
78
+ }
79
+ async getPayload(fork, payloadId) {
80
+ let method;
81
+ switch (fork) {
82
+ case ForkName.phase0:
83
+ case ForkName.altair:
84
+ case ForkName.bellatrix:
85
+ method = "engine_getPayloadV1";
86
+ break;
87
+ case ForkName.capella:
88
+ method = "engine_getPayloadV2";
89
+ break;
90
+ case ForkName.deneb:
91
+ method = "engine_getPayloadV3";
92
+ break;
93
+ case ForkName.electra:
94
+ method = "engine_getPayloadV4";
95
+ break;
96
+ case ForkName.fulu:
97
+ method = "engine_getPayloadV5";
98
+ break;
99
+ default:
100
+ method = "engine_getPayloadV6";
101
+ break;
102
+ }
103
+ const payloadResponse = await this.rpc.fetchWithRetries({ method, params: [payloadId] }, getPayloadOpts);
104
+ return parseExecutionPayload(fork, payloadResponse);
105
+ }
106
+ async getPayloadBodiesByHashV2(blockHashes) {
107
+ const method = "engine_getPayloadBodiesByHashV2";
108
+ assertReqSizeLimit(blockHashes.length, 32);
109
+ const response = await this.rpc.fetchWithRetries({ method, params: [blockHashes] }, getPayloadBodiesByHashOpts);
110
+ return response.map(deserializeExecutionPayloadBodyV2);
111
+ }
112
+ async getBlobsV1(versionedHashes) {
113
+ assertReqSizeLimit(versionedHashes.length, MAX_VERSIONED_HASHES);
114
+ const versionedHashesHex = versionedHashes.map(bytesToData);
115
+ const response = await this.rpc.fetchWithRetries({ method: "engine_getBlobsV1", params: [versionedHashesHex] }, getBlobsV1Opts);
116
+ if (response.length !== versionedHashesHex.length) {
117
+ throw Error(`Invalid engine_getBlobsV1 response length=${response.length} versionedHashes=${versionedHashesHex.length}`);
118
+ }
119
+ return response.map(deserializeBlobAndProofs);
120
+ }
121
+ async getBlobsV2(versionedHashes, buffers) {
122
+ assertReqSizeLimit(versionedHashes.length, MAX_VERSIONED_HASHES);
123
+ const versionedHashesHex = versionedHashes.map(bytesToData);
124
+ if (buffers) {
125
+ // Callers preallocate one buffer per max blobs of the epoch, only the first entries are used
126
+ if (buffers.length < versionedHashesHex.length) {
127
+ throw Error(`Not enough buffers length=${buffers.length} versionedHashes=${versionedHashesHex.length}`);
128
+ }
129
+ for (const [i, buffer] of buffers.entries()) {
130
+ if (buffer.length !== BLOB_AND_PROOF_V2_RPC_BYTES) {
131
+ throw Error(`Invalid buffer[${i}] length=${buffer.length} expected=${BLOB_AND_PROOF_V2_RPC_BYTES}`);
132
+ }
133
+ }
134
+ }
135
+ const response = await this.rpc.fetchWithRetries({ method: "engine_getBlobsV2", params: [versionedHashesHex] }, getBlobsV2Opts);
136
+ // engine_getBlobsV2 does not return partial responses. It returns null if any blob is not found
137
+ if (response == null) {
138
+ return null;
139
+ }
140
+ if (response.length !== versionedHashesHex.length) {
141
+ throw Error(`Invalid engine_getBlobsV2 response length=${response.length} versionedHashes=${versionedHashesHex.length}`);
142
+ }
143
+ if (buffers) {
144
+ // getBlobsV2() is designed to called once per slot so we expect to have buffers
145
+ return response.map((data, i) => deserializeBlobAndProofsV2IntoBytes(data, buffers[i]));
146
+ }
147
+ return response.map(deserializeBlobAndProofsV2);
148
+ }
149
+ async getClientVersion(clientVersion) {
150
+ const method = "engine_getClientVersionV1";
151
+ const response = await this.rpc.fetchWithRetries({ method, params: [{ ...clientVersion, commit: `0x${clientVersion.commit}` }] }, getClientVersionOpts);
152
+ return response.map((cv) => {
153
+ const code = cv.code in ClientCode ? ClientCode[cv.code] : ClientCode.XX;
154
+ return { code, name: cv.name, version: cv.version, commit: strip0xPrefix(cv.commit) };
155
+ });
156
+ }
157
+ }
158
+ //# sourceMappingURL=jsonRpcTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonRpcTransport.js","sourceRoot":"","sources":["../../../src/execution/engine/jsonRpcTransport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { LodestarError } from "@lodestar/utils";
2
+ import { JsonRpcHttpClientEventEmitter, JsonRpcHttpClientMetrics, ReqOpts } from "./jsonRpcHttpClient.js";
3
+ import { ExecutionForkName } from "./sszTypes.js";
4
+ export declare const ENGINE_REST_BASE_PATH = "/engine/v1";
5
+ export declare const EXECUTION_VERSION_HEADER = "Eth-Execution-Version";
6
+ export declare const CLIENT_VERSION_HEADER = "X-Engine-Client-Version";
7
+ export declare const MEDIA_TYPE_SSZ = "application/octet-stream";
8
+ export declare const MEDIA_TYPE_JSON = "application/json";
9
+ export type EngineRestRequest = {
10
+ method: "GET" | "POST";
11
+ /** Path relative to the `/engine/v1` base path */
12
+ path: string;
13
+ query?: Record<string, string | number>;
14
+ /** Sets the `Eth-Execution-Version` header on fork-scoped endpoints */
15
+ executionFork?: ExecutionForkName;
16
+ /** SSZ encoded request body */
17
+ body?: Uint8Array;
18
+ responseType: "ssz" | "json";
19
+ };
20
+ export type EngineRestResponse = {
21
+ status: number;
22
+ /** Empty on `204 No Content` */
23
+ body: Uint8Array;
24
+ };
25
+ /** Non-2xx response, `type` and `detail` are taken from the problem+json body when present */
26
+ export declare class EngineRestError extends Error {
27
+ readonly status: number;
28
+ readonly type: string | null;
29
+ readonly detail: string | null;
30
+ constructor(status: number, type: string | null, detail: string | null, routeId: string);
31
+ }
32
+ export declare class EngineRestResponseError extends LodestarError<{
33
+ code: "ENGINE_REST_INVALID_RESPONSE";
34
+ routeId: string;
35
+ reason: string;
36
+ }> {
37
+ constructor(routeId: string, reason: string);
38
+ }
39
+ export type EngineRestHttpClientOpts = {
40
+ signal?: AbortSignal;
41
+ timeout?: number;
42
+ retries?: number;
43
+ retryDelay?: number;
44
+ /** HS256 secret, a fresh token is generated for every request as ELs check `iat` freshness */
45
+ jwtSecret?: Uint8Array;
46
+ /** Included as `id` claim if `jwtSecret` is provided */
47
+ jwtId?: string;
48
+ /** Value of the `X-Engine-Client-Version` header, the `clv` JWT claim is removed in the REST API */
49
+ clientVersion?: string;
50
+ metrics?: JsonRpcHttpClientMetrics | null;
51
+ };
52
+ /**
53
+ * HTTP/1.1 client for the REST engine API. Only transport concerns live here, encoding of
54
+ * request and response bodies is up to the caller.
55
+ */
56
+ export declare class EngineRestHttpClient {
57
+ private readonly urls;
58
+ private readonly opts;
59
+ readonly emitter: JsonRpcHttpClientEventEmitter;
60
+ private readonly metrics;
61
+ constructor(urls: string[], opts?: EngineRestHttpClientOpts);
62
+ /** Perform request with retries, emitting response and error events consumed by the engine state tracking */
63
+ request(req: EngineRestRequest, opts?: ReqOpts): Promise<EngineRestResponse>;
64
+ /** Perform request with retries without emitting events, used to probe support for the REST API */
65
+ requestWithRetries(req: EngineRestRequest, opts?: ReqOpts): Promise<EngineRestResponse>;
66
+ private requestAnyUrl;
67
+ private requestOneUrl;
68
+ }
69
+ /** Client errors are deterministic apart from timeouts and rate limits, transport failures and server errors are retried */
70
+ export declare function isRetryableEngineRestError(e: Error): boolean;
71
+ //# sourceMappingURL=restHttpClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restHttpClient.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/restHttpClient.ts"],"names":[],"mappings":"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"}