@aztec/aztec-node 0.0.1-commit.3fd054f6 → 0.0.1-commit.431c48d

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 (75) hide show
  1. package/dest/aztec-node/block_response_helpers.d.ts +25 -0
  2. package/dest/aztec-node/block_response_helpers.d.ts.map +1 -0
  3. package/dest/aztec-node/block_response_helpers.js +112 -0
  4. package/dest/aztec-node/config.d.ts +16 -4
  5. package/dest/aztec-node/config.d.ts.map +1 -1
  6. package/dest/aztec-node/config.js +15 -5
  7. package/dest/aztec-node/node_public_calls_simulator.d.ts +90 -0
  8. package/dest/aztec-node/node_public_calls_simulator.d.ts.map +1 -0
  9. package/dest/aztec-node/node_public_calls_simulator.js +346 -0
  10. package/dest/aztec-node/public_data_overrides.d.ts +13 -0
  11. package/dest/aztec-node/public_data_overrides.d.ts.map +1 -0
  12. package/dest/aztec-node/public_data_overrides.js +21 -0
  13. package/dest/aztec-node/register_node_rpc_handlers.d.ts +11 -0
  14. package/dest/aztec-node/register_node_rpc_handlers.d.ts.map +1 -0
  15. package/dest/aztec-node/register_node_rpc_handlers.js +48 -0
  16. package/dest/aztec-node/server.d.ts +126 -133
  17. package/dest/aztec-node/server.d.ts.map +1 -1
  18. package/dest/aztec-node/server.js +400 -846
  19. package/dest/bin/index.js +31 -15
  20. package/dest/factory.d.ts +33 -0
  21. package/dest/factory.d.ts.map +1 -0
  22. package/dest/factory.js +523 -0
  23. package/dest/index.d.ts +3 -1
  24. package/dest/index.d.ts.map +1 -1
  25. package/dest/index.js +2 -0
  26. package/dest/modules/block_parameter.d.ts +25 -0
  27. package/dest/modules/block_parameter.d.ts.map +1 -0
  28. package/dest/modules/block_parameter.js +100 -0
  29. package/dest/modules/node_block_provider.d.ts +21 -0
  30. package/dest/modules/node_block_provider.d.ts.map +1 -0
  31. package/dest/modules/node_block_provider.js +114 -0
  32. package/dest/modules/node_tx_receipt.d.ts +24 -0
  33. package/dest/modules/node_tx_receipt.d.ts.map +1 -0
  34. package/dest/modules/node_tx_receipt.js +70 -0
  35. package/dest/modules/node_world_state_queries.d.ts +68 -0
  36. package/dest/modules/node_world_state_queries.d.ts.map +1 -0
  37. package/dest/modules/node_world_state_queries.js +272 -0
  38. package/dest/modules/unseen_block_hold_off.d.ts +52 -0
  39. package/dest/modules/unseen_block_hold_off.d.ts.map +1 -0
  40. package/dest/modules/unseen_block_hold_off.js +150 -0
  41. package/dest/sentinel/config.d.ts +3 -2
  42. package/dest/sentinel/config.d.ts.map +1 -1
  43. package/dest/sentinel/config.js +15 -5
  44. package/dest/sentinel/factory.d.ts +5 -3
  45. package/dest/sentinel/factory.d.ts.map +1 -1
  46. package/dest/sentinel/factory.js +12 -5
  47. package/dest/sentinel/sentinel.d.ts +145 -21
  48. package/dest/sentinel/sentinel.d.ts.map +1 -1
  49. package/dest/sentinel/sentinel.js +226 -104
  50. package/dest/sentinel/store.d.ts +8 -8
  51. package/dest/sentinel/store.d.ts.map +1 -1
  52. package/dest/sentinel/store.js +25 -17
  53. package/dest/test/index.d.ts +3 -3
  54. package/dest/test/index.d.ts.map +1 -1
  55. package/package.json +28 -26
  56. package/src/aztec-node/block_response_helpers.ts +161 -0
  57. package/src/aztec-node/config.ts +30 -7
  58. package/src/aztec-node/node_public_calls_simulator.ts +383 -0
  59. package/src/aztec-node/public_data_overrides.ts +35 -0
  60. package/src/aztec-node/register_node_rpc_handlers.ts +41 -0
  61. package/src/aztec-node/server.ts +530 -1091
  62. package/src/bin/index.ts +39 -16
  63. package/src/factory.ts +688 -0
  64. package/src/index.ts +2 -0
  65. package/src/modules/block_parameter.ts +93 -0
  66. package/src/modules/node_block_provider.ts +153 -0
  67. package/src/modules/node_tx_receipt.ts +115 -0
  68. package/src/modules/node_world_state_queries.ts +376 -0
  69. package/src/modules/unseen_block_hold_off.ts +199 -0
  70. package/src/sentinel/README.md +103 -0
  71. package/src/sentinel/config.ts +18 -6
  72. package/src/sentinel/factory.ts +21 -6
  73. package/src/sentinel/sentinel.ts +276 -129
  74. package/src/sentinel/store.ts +26 -18
  75. package/src/test/index.ts +2 -2
package/src/bin/index.ts CHANGED
@@ -1,11 +1,23 @@
1
1
  #!/usr/bin/env -S node --no-warnings
2
+ import {
3
+ type NamespacedApiHandlers,
4
+ createNamespacedSafeJsonRpcServer,
5
+ startHttpRpcServer,
6
+ } from '@aztec/foundation/json-rpc/server';
2
7
  import { createLogger } from '@aztec/foundation/log';
3
- import { AztecNodeApiSchema } from '@aztec/stdlib/interfaces/client';
4
- import { createTracedJsonRpcServer } from '@aztec/telemetry-client';
8
+ import { getRpcCorsAllowedOrigins } from '@aztec/stdlib/config';
9
+ import {
10
+ getOtelJsonRpcDiagnosticsMiddleware,
11
+ getOtelJsonRpcPropagationMiddleware,
12
+ getOtelJsonRpcServerMetricsMiddleware,
13
+ } from '@aztec/telemetry-client';
5
14
 
6
- import http from 'http';
7
-
8
- import { type AztecNodeConfig, AztecNodeService, getConfigEnvVars } from '../index.js';
15
+ import {
16
+ type AztecNodeConfig,
17
+ createAztecNodeService,
18
+ getConfigEnvVars,
19
+ registerAztecNodeRpcHandlers,
20
+ } from '../index.js';
9
21
 
10
22
  const { AZTEC_NODE_PORT = 8081, API_PREFIX = '' } = process.env;
11
23
 
@@ -14,10 +26,8 @@ const logger = createLogger('node');
14
26
  /**
15
27
  * Creates the node from provided config
16
28
  */
17
- async function createAndDeployAztecNode() {
18
- const aztecNodeConfig: AztecNodeConfig = { ...getConfigEnvVars() };
19
-
20
- return await AztecNodeService.createAndSync(aztecNodeConfig);
29
+ async function createAndDeployAztecNode(aztecNodeConfig: AztecNodeConfig) {
30
+ return await createAztecNodeService(aztecNodeConfig);
21
31
  }
22
32
 
23
33
  /**
@@ -26,7 +36,8 @@ async function createAndDeployAztecNode() {
26
36
  async function main() {
27
37
  logger.info(`Setting up Aztec Node...`);
28
38
 
29
- const aztecNode = await createAndDeployAztecNode();
39
+ const aztecNodeConfig: AztecNodeConfig = { ...getConfigEnvVars() };
40
+ const aztecNode = await createAndDeployAztecNode(aztecNodeConfig);
30
41
 
31
42
  const shutdown = async () => {
32
43
  logger.info('Shutting down...');
@@ -39,12 +50,24 @@ async function main() {
39
50
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
40
51
  process.once('SIGTERM', shutdown);
41
52
 
42
- const rpcServer = createTracedJsonRpcServer(aztecNode, AztecNodeApiSchema);
43
- const app = rpcServer.getApp(API_PREFIX);
44
-
45
- // eslint-disable-next-line @typescript-eslint/no-misused-promises
46
- const httpServer = http.createServer(app.callback());
47
- httpServer.listen(+AZTEC_NODE_PORT);
53
+ const services: NamespacedApiHandlers = {};
54
+ registerAztecNodeRpcHandlers(aztecNode, services, undefined, {
55
+ p2pHealthMinPeers: aztecNodeConfig.p2pHealthMinPeers,
56
+ });
57
+ const rpcServer = createNamespacedSafeJsonRpcServer(services, {
58
+ diagnostic: getOtelJsonRpcDiagnosticsMiddleware(),
59
+ middlewares: [getOtelJsonRpcServerMetricsMiddleware(), getOtelJsonRpcPropagationMiddleware()],
60
+ maxBatchSize: aztecNodeConfig.rpcMaxBatchSize,
61
+ maxBodySizeBytes: aztecNodeConfig.rpcMaxBodySize,
62
+ corsAllowedHeaders: aztecNodeConfig.rpcCorsAllowedHeaders ?? [],
63
+ corsAllowedOrigins: getRpcCorsAllowedOrigins(aztecNodeConfig),
64
+ });
65
+ await startHttpRpcServer(rpcServer, {
66
+ port: +AZTEC_NODE_PORT,
67
+ apiPrefix: API_PREFIX,
68
+ keepAliveTimeoutMs: aztecNodeConfig.rpcHttpKeepAliveTimeoutMs,
69
+ headersTimeoutMs: aztecNodeConfig.rpcHttpHeadersTimeoutMs,
70
+ });
48
71
  logger.info(`Aztec Node JSON-RPC Server listening on port ${AZTEC_NODE_PORT}`);
49
72
  }
50
73