@aztec/p2p 0.76.4 → 0.77.0-testnet-ignition.21

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 (241) hide show
  1. package/dest/bootstrap/bootstrap.d.ts +2 -2
  2. package/dest/bootstrap/bootstrap.d.ts.map +1 -1
  3. package/dest/bootstrap/bootstrap.js +55 -41
  4. package/dest/client/factory.d.ts +8 -6
  5. package/dest/client/factory.d.ts.map +1 -1
  6. package/dest/client/factory.js +8 -10
  7. package/dest/client/index.js +0 -1
  8. package/dest/client/p2p_client.d.ts +7 -4
  9. package/dest/client/p2p_client.d.ts.map +1 -1
  10. package/dest/client/p2p_client.js +492 -514
  11. package/dest/config.d.ts +8 -10
  12. package/dest/config.d.ts.map +1 -1
  13. package/dest/config.js +54 -47
  14. package/dest/enr/generate-enr.d.ts +9 -0
  15. package/dest/enr/generate-enr.d.ts.map +1 -0
  16. package/dest/enr/generate-enr.js +30 -0
  17. package/dest/enr/index.d.ts +2 -0
  18. package/dest/enr/index.d.ts.map +1 -0
  19. package/dest/enr/index.js +1 -0
  20. package/dest/errors/reqresp.error.js +6 -10
  21. package/dest/index.js +0 -1
  22. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +1 -1
  23. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
  24. package/dest/mem_pools/attestation_pool/attestation_pool.js +6 -2
  25. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts +1 -1
  26. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts.map +1 -1
  27. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +65 -33
  28. package/dest/mem_pools/attestation_pool/index.js +0 -1
  29. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts +3 -3
  30. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts.map +1 -1
  31. package/dest/mem_pools/attestation_pool/kv_attestation_pool.js +23 -20
  32. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts +2 -2
  33. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts.map +1 -1
  34. package/dest/mem_pools/attestation_pool/memory_attestation_pool.js +22 -26
  35. package/dest/mem_pools/attestation_pool/mocks.d.ts +3 -2
  36. package/dest/mem_pools/attestation_pool/mocks.d.ts.map +1 -1
  37. package/dest/mem_pools/attestation_pool/mocks.js +12 -7
  38. package/dest/mem_pools/index.d.ts +2 -2
  39. package/dest/mem_pools/index.d.ts.map +1 -1
  40. package/dest/mem_pools/index.js +1 -2
  41. package/dest/mem_pools/instrumentation.d.ts +1 -1
  42. package/dest/mem_pools/instrumentation.d.ts.map +1 -1
  43. package/dest/mem_pools/instrumentation.js +35 -39
  44. package/dest/mem_pools/interface.d.ts +3 -3
  45. package/dest/mem_pools/interface.d.ts.map +1 -1
  46. package/dest/mem_pools/interface.js +3 -2
  47. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +2 -2
  48. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +1 -1
  49. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +129 -136
  50. package/dest/mem_pools/tx_pool/index.js +0 -1
  51. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts +2 -2
  52. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts.map +1 -1
  53. package/dest/mem_pools/tx_pool/memory_tx_pool.js +46 -44
  54. package/dest/mem_pools/tx_pool/priority.d.ts +1 -1
  55. package/dest/mem_pools/tx_pool/priority.d.ts.map +1 -1
  56. package/dest/mem_pools/tx_pool/priority.js +1 -3
  57. package/dest/mem_pools/tx_pool/tx_pool.d.ts +1 -1
  58. package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +1 -1
  59. package/dest/mem_pools/tx_pool/tx_pool.js +3 -2
  60. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +1 -1
  61. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +1 -1
  62. package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +109 -39
  63. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +2 -2
  64. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
  65. package/dest/msg_validators/attestation_validator/attestation_validator.js +4 -4
  66. package/dest/msg_validators/attestation_validator/index.js +0 -1
  67. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts +2 -2
  68. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts.map +1 -1
  69. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.js +3 -3
  70. package/dest/msg_validators/block_proposal_validator/index.js +0 -1
  71. package/dest/msg_validators/index.js +0 -1
  72. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts +1 -1
  73. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts.map +1 -1
  74. package/dest/msg_validators/tx_validator/aggregate_tx_validator.js +9 -11
  75. package/dest/msg_validators/tx_validator/block_header_validator.d.ts +2 -2
  76. package/dest/msg_validators/tx_validator/block_header_validator.d.ts.map +1 -1
  77. package/dest/msg_validators/tx_validator/block_header_validator.js +18 -13
  78. package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
  79. package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
  80. package/dest/msg_validators/tx_validator/data_validator.js +102 -33
  81. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts +1 -1
  82. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts.map +1 -1
  83. package/dest/msg_validators/tx_validator/double_spend_validator.js +34 -20
  84. package/dest/msg_validators/tx_validator/index.js +0 -1
  85. package/dest/msg_validators/tx_validator/metadata_validator.d.ts +2 -2
  86. package/dest/msg_validators/tx_validator/metadata_validator.d.ts.map +1 -1
  87. package/dest/msg_validators/tx_validator/metadata_validator.js +30 -27
  88. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts +2 -1
  89. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts.map +1 -1
  90. package/dest/msg_validators/tx_validator/tx_proof_validator.js +17 -12
  91. package/dest/services/data_store.js +57 -57
  92. package/dest/services/discv5/discV5_service.d.ts +2 -0
  93. package/dest/services/discv5/discV5_service.d.ts.map +1 -1
  94. package/dest/services/discv5/discV5_service.js +64 -36
  95. package/dest/services/dummy_service.d.ts +4 -2
  96. package/dest/services/dummy_service.d.ts.map +1 -1
  97. package/dest/services/dummy_service.js +41 -59
  98. package/dest/services/encoding.d.ts +3 -3
  99. package/dest/services/encoding.d.ts.map +1 -1
  100. package/dest/services/encoding.js +10 -9
  101. package/dest/services/gossipsub/scoring.d.ts +7 -0
  102. package/dest/services/gossipsub/scoring.d.ts.map +1 -0
  103. package/dest/services/gossipsub/scoring.js +10 -0
  104. package/dest/services/index.js +0 -1
  105. package/dest/services/libp2p/libp2p_service.d.ts +10 -33
  106. package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
  107. package/dest/services/libp2p/libp2p_service.js +682 -673
  108. package/dest/services/peer-manager/metrics.js +14 -7
  109. package/dest/services/peer-manager/peer_manager.d.ts +24 -6
  110. package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
  111. package/dest/services/peer-manager/peer_manager.js +390 -340
  112. package/dest/services/peer-manager/peer_scoring.d.ts +3 -3
  113. package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
  114. package/dest/services/peer-manager/peer_scoring.js +21 -19
  115. package/dest/services/reqresp/config.js +4 -5
  116. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts +2 -2
  117. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts.map +1 -1
  118. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.js +35 -28
  119. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts +1 -1
  120. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts.map +1 -1
  121. package/dest/services/reqresp/connection-sampler/connection_sampler.js +67 -61
  122. package/dest/services/reqresp/index.js +1 -3
  123. package/dest/services/reqresp/interface.d.ts +2 -2
  124. package/dest/services/reqresp/interface.d.ts.map +1 -1
  125. package/dest/services/reqresp/interface.js +27 -31
  126. package/dest/services/reqresp/metrics.d.ts +1 -1
  127. package/dest/services/reqresp/metrics.d.ts.map +1 -1
  128. package/dest/services/reqresp/metrics.js +23 -10
  129. package/dest/services/reqresp/protocols/block.d.ts +2 -2
  130. package/dest/services/reqresp/protocols/block.d.ts.map +1 -1
  131. package/dest/services/reqresp/protocols/block.js +1 -2
  132. package/dest/services/reqresp/protocols/goodbye.d.ts +5 -5
  133. package/dest/services/reqresp/protocols/goodbye.d.ts.map +1 -1
  134. package/dest/services/reqresp/protocols/goodbye.js +36 -41
  135. package/dest/services/reqresp/protocols/index.js +1 -3
  136. package/dest/services/reqresp/protocols/ping.js +1 -3
  137. package/dest/services/reqresp/protocols/status.js +1 -3
  138. package/dest/services/reqresp/protocols/tx.d.ts +3 -3
  139. package/dest/services/reqresp/protocols/tx.d.ts.map +1 -1
  140. package/dest/services/reqresp/protocols/tx.js +6 -9
  141. package/dest/services/reqresp/rate-limiter/index.js +0 -1
  142. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +9 -9
  143. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
  144. package/dest/services/reqresp/rate-limiter/rate_limiter.js +53 -46
  145. package/dest/services/reqresp/rate-limiter/rate_limits.js +16 -17
  146. package/dest/services/reqresp/reqresp.d.ts +4 -4
  147. package/dest/services/reqresp/reqresp.d.ts.map +1 -1
  148. package/dest/services/reqresp/reqresp.js +467 -464
  149. package/dest/services/reqresp/status.js +16 -17
  150. package/dest/services/service.d.ts +3 -2
  151. package/dest/services/service.d.ts.map +1 -1
  152. package/dest/services/service.js +3 -4
  153. package/dest/test-helpers/generate-peer-id-private-keys.js +2 -4
  154. package/dest/test-helpers/get-ports.js +3 -3
  155. package/dest/test-helpers/index.js +0 -1
  156. package/dest/test-helpers/make-enrs.d.ts +1 -1
  157. package/dest/test-helpers/make-enrs.d.ts.map +1 -1
  158. package/dest/test-helpers/make-enrs.js +3 -6
  159. package/dest/test-helpers/make-test-p2p-clients.d.ts +7 -6
  160. package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -1
  161. package/dest/test-helpers/make-test-p2p-clients.js +10 -12
  162. package/dest/test-helpers/reqresp-nodes.d.ts +18 -7
  163. package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
  164. package/dest/test-helpers/reqresp-nodes.js +64 -40
  165. package/dest/testbench/p2p_client_testbench_worker.js +61 -45
  166. package/dest/testbench/parse_log_file.d.ts +2 -0
  167. package/dest/testbench/parse_log_file.d.ts.map +1 -0
  168. package/dest/testbench/parse_log_file.js +131 -0
  169. package/dest/testbench/testbench.d.ts +2 -0
  170. package/dest/testbench/testbench.d.ts.map +1 -0
  171. package/dest/testbench/testbench.js +141 -0
  172. package/dest/{services/types.d.ts → types/index.d.ts} +1 -1
  173. package/dest/types/index.d.ts.map +1 -0
  174. package/dest/types/index.js +28 -0
  175. package/dest/util.d.ts +5 -5
  176. package/dest/util.d.ts.map +1 -1
  177. package/dest/util.js +23 -34
  178. package/dest/versioning.d.ts +3 -3
  179. package/dest/versioning.d.ts.map +1 -1
  180. package/dest/versioning.js +7 -12
  181. package/package.json +15 -13
  182. package/src/bootstrap/bootstrap.ts +30 -17
  183. package/src/client/factory.ts +9 -12
  184. package/src/client/p2p_client.ts +13 -24
  185. package/src/config.ts +14 -15
  186. package/src/enr/generate-enr.ts +39 -0
  187. package/src/enr/index.ts +1 -0
  188. package/src/mem_pools/attestation_pool/attestation_pool.ts +1 -1
  189. package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +4 -3
  190. package/src/mem_pools/attestation_pool/kv_attestation_pool.ts +3 -3
  191. package/src/mem_pools/attestation_pool/memory_attestation_pool.ts +2 -2
  192. package/src/mem_pools/attestation_pool/mocks.ts +5 -5
  193. package/src/mem_pools/index.ts +2 -2
  194. package/src/mem_pools/instrumentation.ts +4 -3
  195. package/src/mem_pools/interface.ts +3 -3
  196. package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +4 -4
  197. package/src/mem_pools/tx_pool/memory_tx_pool.ts +3 -3
  198. package/src/mem_pools/tx_pool/priority.ts +1 -1
  199. package/src/mem_pools/tx_pool/tx_pool.ts +1 -1
  200. package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +4 -3
  201. package/src/msg_validators/attestation_validator/attestation_validator.ts +2 -2
  202. package/src/msg_validators/block_proposal_validator/block_proposal_validator.ts +2 -2
  203. package/src/msg_validators/tx_validator/aggregate_tx_validator.ts +1 -1
  204. package/src/msg_validators/tx_validator/block_header_validator.ts +2 -2
  205. package/src/msg_validators/tx_validator/data_validator.ts +57 -4
  206. package/src/msg_validators/tx_validator/double_spend_validator.ts +17 -12
  207. package/src/msg_validators/tx_validator/metadata_validator.ts +2 -2
  208. package/src/msg_validators/tx_validator/tx_proof_validator.ts +2 -6
  209. package/src/services/discv5/discV5_service.ts +33 -8
  210. package/src/services/dummy_service.ts +4 -2
  211. package/src/services/encoding.ts +3 -3
  212. package/src/services/gossipsub/scoring.ts +13 -0
  213. package/src/services/libp2p/libp2p_service.ts +124 -146
  214. package/src/services/peer-manager/peer_manager.ts +71 -13
  215. package/src/services/peer-manager/peer_scoring.ts +3 -3
  216. package/src/services/reqresp/connection-sampler/batch_connection_sampler.ts +2 -2
  217. package/src/services/reqresp/connection-sampler/connection_sampler.ts +9 -3
  218. package/src/services/reqresp/interface.ts +4 -3
  219. package/src/services/reqresp/metrics.ts +1 -1
  220. package/src/services/reqresp/protocols/block.ts +3 -3
  221. package/src/services/reqresp/protocols/goodbye.ts +7 -7
  222. package/src/services/reqresp/protocols/tx.ts +5 -5
  223. package/src/services/reqresp/rate-limiter/rate_limiter.ts +22 -18
  224. package/src/services/reqresp/reqresp.ts +18 -11
  225. package/src/services/service.ts +3 -2
  226. package/src/test-helpers/make-enrs.ts +1 -1
  227. package/src/test-helpers/make-test-p2p-clients.ts +9 -7
  228. package/src/test-helpers/reqresp-nodes.ts +32 -18
  229. package/src/testbench/p2p_client_testbench_worker.ts +16 -9
  230. package/src/testbench/parse_log_file.ts +175 -0
  231. package/src/testbench/testbench.ts +157 -0
  232. package/src/util.ts +5 -5
  233. package/src/versioning.ts +7 -7
  234. package/dest/services/libp2p/libp2p_logger.d.ts +0 -7
  235. package/dest/services/libp2p/libp2p_logger.d.ts.map +0 -1
  236. package/dest/services/libp2p/libp2p_logger.js +0 -67
  237. package/dest/services/types.d.ts.map +0 -1
  238. package/dest/services/types.js +0 -35
  239. package/src/services/libp2p/libp2p_logger.ts +0 -78
  240. package/src/testbench/scripts/run_testbench.sh +0 -7
  241. /package/src/{services/types.ts → types/index.ts} +0 -0
@@ -1,54 +1,52 @@
1
- import { L2Block, Tx, TxHash } from '@aztec/circuit-types';
2
1
  import { Fr } from '@aztec/foundation/fields';
2
+ import { L2Block } from '@aztec/stdlib/block';
3
+ import { Tx, TxHash } from '@aztec/stdlib/tx';
3
4
  /*
4
5
  * Request Response Sub Protocols
5
- */
6
- export const PING_PROTOCOL = '/aztec/req/ping/0.1.0';
6
+ */ export const PING_PROTOCOL = '/aztec/req/ping/0.1.0';
7
7
  export const STATUS_PROTOCOL = '/aztec/req/status/0.1.0';
8
8
  export const GOODBYE_PROTOCOL = '/aztec/req/goodbye/0.1.0';
9
9
  export const TX_REQ_PROTOCOL = '/aztec/req/tx/0.1.0';
10
10
  export const BLOCK_REQ_PROTOCOL = '/aztec/req/block/0.1.0';
11
- export var ReqRespSubProtocol;
12
- (function (ReqRespSubProtocol) {
13
- ReqRespSubProtocol["PING"] = "/aztec/req/ping/0.1.0";
14
- ReqRespSubProtocol["STATUS"] = "/aztec/req/status/0.1.0";
15
- ReqRespSubProtocol["GOODBYE"] = "/aztec/req/goodbye/0.1.0";
16
- ReqRespSubProtocol["TX"] = "/aztec/req/tx/0.1.0";
17
- ReqRespSubProtocol["BLOCK"] = "/aztec/req/block/0.1.0";
18
- })(ReqRespSubProtocol || (ReqRespSubProtocol = {}));
19
- export const noopValidator = () => Promise.resolve(true);
11
+ export var ReqRespSubProtocol = /*#__PURE__*/ function(ReqRespSubProtocol) {
12
+ ReqRespSubProtocol[ReqRespSubProtocol["PING"] = PING_PROTOCOL] = "PING";
13
+ ReqRespSubProtocol[ReqRespSubProtocol["STATUS"] = STATUS_PROTOCOL] = "STATUS";
14
+ ReqRespSubProtocol[ReqRespSubProtocol["GOODBYE"] = GOODBYE_PROTOCOL] = "GOODBYE";
15
+ ReqRespSubProtocol[ReqRespSubProtocol["TX"] = TX_REQ_PROTOCOL] = "TX";
16
+ ReqRespSubProtocol[ReqRespSubProtocol["BLOCK"] = BLOCK_REQ_PROTOCOL] = "BLOCK";
17
+ return ReqRespSubProtocol;
18
+ }({});
19
+ export const noopValidator = ()=>Promise.resolve(true);
20
20
  export const DEFAULT_SUB_PROTOCOL_VALIDATORS = {
21
21
  [ReqRespSubProtocol.PING]: noopValidator,
22
22
  [ReqRespSubProtocol.STATUS]: noopValidator,
23
23
  [ReqRespSubProtocol.TX]: noopValidator,
24
24
  [ReqRespSubProtocol.GOODBYE]: noopValidator,
25
- [ReqRespSubProtocol.BLOCK]: noopValidator,
25
+ [ReqRespSubProtocol.BLOCK]: noopValidator
26
26
  };
27
27
  /**
28
28
  * Default handler for unimplemented sub protocols, this SHOULD be overwritten
29
29
  * by the service, but is provided as a fallback
30
- */
31
- const defaultHandler = (_msg) => {
30
+ */ const defaultHandler = (_msg)=>{
32
31
  return Promise.resolve(Buffer.from('unimplemented'));
33
32
  };
34
33
  /**
35
34
  * Default sub protocol handlers - this SHOULD be overwritten by the service,
36
- */
37
- export const DEFAULT_SUB_PROTOCOL_HANDLERS = {
35
+ */ export const DEFAULT_SUB_PROTOCOL_HANDLERS = {
38
36
  [ReqRespSubProtocol.PING]: defaultHandler,
39
37
  [ReqRespSubProtocol.STATUS]: defaultHandler,
40
38
  [ReqRespSubProtocol.TX]: defaultHandler,
41
39
  [ReqRespSubProtocol.GOODBYE]: defaultHandler,
42
- [ReqRespSubProtocol.BLOCK]: defaultHandler,
40
+ [ReqRespSubProtocol.BLOCK]: defaultHandler
43
41
  };
44
42
  /**
45
43
  * RequestableBuffer is a wrapper around a buffer that allows it to be
46
44
  * used in generic request response protocols
47
45
  *
48
46
  * An instance of the RequestResponsePair defined above
49
- */
50
- export class RequestableBuffer {
51
- constructor(buffer) {
47
+ */ export class RequestableBuffer {
48
+ buffer;
49
+ constructor(buffer){
52
50
  this.buffer = buffer;
53
51
  }
54
52
  toBuffer() {
@@ -62,27 +60,25 @@ export class RequestableBuffer {
62
60
  * A mapping from each protocol to their request and response types
63
61
  * This defines the request and response types for each sub protocol, used primarily
64
62
  * as a type rather than an object
65
- */
66
- export const subProtocolMap = {
63
+ */ export const subProtocolMap = {
67
64
  [ReqRespSubProtocol.PING]: {
68
65
  request: RequestableBuffer,
69
- response: RequestableBuffer,
66
+ response: RequestableBuffer
70
67
  },
71
68
  [ReqRespSubProtocol.STATUS]: {
72
69
  request: RequestableBuffer,
73
- response: RequestableBuffer,
70
+ response: RequestableBuffer
74
71
  },
75
72
  [ReqRespSubProtocol.TX]: {
76
73
  request: TxHash,
77
- response: Tx,
74
+ response: Tx
78
75
  },
79
76
  [ReqRespSubProtocol.GOODBYE]: {
80
77
  request: RequestableBuffer,
81
- response: RequestableBuffer,
78
+ response: RequestableBuffer
82
79
  },
83
80
  [ReqRespSubProtocol.BLOCK]: {
84
- request: Fr, // block number
85
- response: L2Block,
86
- },
81
+ request: Fr,
82
+ response: L2Block
83
+ }
87
84
  };
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU05Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyx1QkFBdUIsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcseUJBQXlCLENBQUM7QUFDekQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsMEJBQTBCLENBQUM7QUFDM0QsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLHFCQUFxQixDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLHdCQUF3QixDQUFDO0FBRTNELE1BQU0sQ0FBTixJQUFZLGtCQU1YO0FBTkQsV0FBWSxrQkFBa0I7SUFDNUIsb0RBQW9CLENBQUE7SUFDcEIsd0RBQXdCLENBQUE7SUFDeEIsMERBQTBCLENBQUE7SUFDMUIsZ0RBQW9CLENBQUE7SUFDcEIsc0RBQTBCLENBQUE7QUFDNUIsQ0FBQyxFQU5XLGtCQUFrQixLQUFsQixrQkFBa0IsUUFNN0I7QUErQ0QsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFpQnpELE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFpQztJQUMzRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLGFBQWE7SUFDeEMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxhQUFhO0lBQzFDLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLEVBQUUsYUFBYTtJQUN0QyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxFQUFFLGFBQWE7SUFDM0MsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxhQUFhO0NBQzFDLENBQUM7QUFVRjs7O0dBR0c7QUFDSCxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQVMsRUFBbUIsRUFBRTtJQUNwRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0FBQ3ZELENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQStCO0lBQ3ZFLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsY0FBYztJQUN6QyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUFFLGNBQWM7SUFDM0MsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO0lBQ3ZDLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEVBQUUsY0FBYztJQUM1QyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFLGNBQWM7Q0FDM0MsQ0FBQztBQW9CRjs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBbUIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7SUFBRyxDQUFDO0lBRXJDLFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBYztRQUM5QixPQUFPLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUNGO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBbUI7SUFDNUMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN6QixPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLFFBQVEsRUFBRSxpQkFBaUI7S0FDNUI7SUFDRCxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzNCLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsUUFBUSxFQUFFLGlCQUFpQjtLQUM1QjtJQUNELENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDdkIsT0FBTyxFQUFFLE1BQU07UUFDZixRQUFRLEVBQUUsRUFBRTtLQUNiO0lBQ0QsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUM1QixPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLFFBQVEsRUFBRSxpQkFBaUI7S0FDNUI7SUFDRCxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzFCLE9BQU8sRUFBRSxFQUFFLEVBQUUsZUFBZTtRQUM1QixRQUFRLEVBQUUsT0FBTztLQUNsQjtDQUNGLENBQUMifQ==
@@ -1,4 +1,4 @@
1
- import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
1
+ import type { TelemetryClient, Tracer } from '@aztec/telemetry-client';
2
2
  export declare class ReqRespMetrics {
3
3
  readonly telemetryClient: TelemetryClient;
4
4
  readonly tracer: Tracer;
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/metrics.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAsB,MAAM,yBAAyB,CAAC;AAEhG,qBAAa,cAAc;IASb,QAAQ,CAAC,eAAe,EAAE,eAAe;IARrD,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IAEjD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAgB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAgB;gBAEjC,eAAe,EAAE,eAAe,EAAE,IAAI,SAAY;IA4BhE,iBAAiB,CAAC,QAAQ,EAAE,MAAM;IAIlC,qBAAqB,CAAC,QAAQ,EAAE,MAAM;IAItC,kBAAkB,CAAC,QAAQ,EAAE,MAAM;IAInC,mBAAmB,CAAC,QAAQ,EAAE,MAAM;CAG5C"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/metrics.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAiB,MAAM,yBAAyB,CAAC;AAEtF,qBAAa,cAAc;IASb,QAAQ,CAAC,eAAe,EAAE,eAAe;IARrD,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IAEjD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAgB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAgB;gBAEjC,eAAe,EAAE,eAAe,EAAE,IAAI,SAAY;IA4BhE,iBAAiB,CAAC,QAAQ,EAAE,MAAM;IAIlC,qBAAqB,CAAC,QAAQ,EAAE,MAAM;IAItC,kBAAkB,CAAC,QAAQ,EAAE,MAAM;IAInC,mBAAmB,CAAC,QAAQ,EAAE,MAAM;CAG5C"}
@@ -1,42 +1,55 @@
1
1
  // Request response metrics
2
2
  import { Attributes, Metrics, ValueType } from '@aztec/telemetry-client';
3
3
  export class ReqRespMetrics {
4
- constructor(telemetryClient, name = 'ReqResp') {
4
+ telemetryClient;
5
+ tracer;
6
+ sentRequests;
7
+ receivedRequests;
8
+ failedOutboundRequests;
9
+ failedInboundRequests;
10
+ constructor(telemetryClient, name = 'ReqResp'){
5
11
  this.telemetryClient = telemetryClient;
6
12
  this.tracer = telemetryClient.getTracer(name);
7
13
  const meter = telemetryClient.getMeter(name);
8
14
  this.sentRequests = meter.createUpDownCounter(Metrics.P2P_REQ_RESP_SENT_REQUESTS, {
9
15
  description: 'Number of requests sent to peers',
10
16
  unit: 'requests',
11
- valueType: ValueType.INT,
17
+ valueType: ValueType.INT
12
18
  });
13
19
  this.receivedRequests = meter.createUpDownCounter(Metrics.P2P_REQ_RESP_RECEIVED_REQUESTS, {
14
20
  description: 'Number of requests received from peers',
15
21
  unit: 'requests',
16
- valueType: ValueType.INT,
22
+ valueType: ValueType.INT
17
23
  });
18
24
  this.failedOutboundRequests = meter.createUpDownCounter(Metrics.P2P_REQ_RESP_FAILED_OUTBOUND_REQUESTS, {
19
25
  description: 'Number of failed outbound requests - nodes not getting valid responses',
20
26
  unit: 'requests',
21
- valueType: ValueType.INT,
27
+ valueType: ValueType.INT
22
28
  });
23
29
  this.failedInboundRequests = meter.createUpDownCounter(Metrics.P2P_REQ_RESP_FAILED_INBOUND_REQUESTS, {
24
30
  description: 'Number of failed inbound requests - node failing to respond to requests',
25
31
  unit: 'requests',
26
- valueType: ValueType.INT,
32
+ valueType: ValueType.INT
27
33
  });
28
34
  }
29
35
  recordRequestSent(protocol) {
30
- this.sentRequests.add(1, { [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol });
36
+ this.sentRequests.add(1, {
37
+ [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol
38
+ });
31
39
  }
32
40
  recordRequestReceived(protocol) {
33
- this.receivedRequests.add(1, { [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol });
41
+ this.receivedRequests.add(1, {
42
+ [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol
43
+ });
34
44
  }
35
45
  recordRequestError(protocol) {
36
- this.failedOutboundRequests.add(1, { [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol });
46
+ this.failedOutboundRequests.add(1, {
47
+ [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol
48
+ });
37
49
  }
38
50
  recordResponseError(protocol) {
39
- this.failedInboundRequests.add(1, { [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol });
51
+ this.failedInboundRequests.add(1, {
52
+ [Attributes.P2P_REQ_RESP_PROTOCOL]: protocol
53
+ });
40
54
  }
41
55
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL21ldHJpY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMkJBQTJCO0FBQzNCLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3pFLE1BQU0sT0FBTyxjQUFjO0lBU3pCLFlBQXFCLGVBQWdDLEVBQUUsSUFBSSxHQUFHLFNBQVM7UUFBbEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ25ELElBQUksQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QyxNQUFNLEtBQUssR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQywwQkFBMEIsRUFBRTtZQUNoRixXQUFXLEVBQUUsa0NBQWtDO1lBQy9DLElBQUksRUFBRSxVQUFVO1lBQ2hCLFNBQVMsRUFBRSxTQUFTLENBQUMsR0FBRztTQUN6QixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsRUFBRTtZQUN4RixXQUFXLEVBQUUsd0NBQXdDO1lBQ3JELElBQUksRUFBRSxVQUFVO1lBQ2hCLFNBQVMsRUFBRSxTQUFTLENBQUMsR0FBRztTQUN6QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsRUFBRTtZQUNyRyxXQUFXLEVBQUUsd0VBQXdFO1lBQ3JGLElBQUksRUFBRSxVQUFVO1lBQ2hCLFNBQVMsRUFBRSxTQUFTLENBQUMsR0FBRztTQUN6QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsRUFBRTtZQUNuRyxXQUFXLEVBQUUseUVBQXlFO1lBQ3RGLElBQUksRUFBRSxVQUFVO1lBQ2hCLFNBQVMsRUFBRSxTQUFTLENBQUMsR0FBRztTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0saUJBQWlCLENBQUMsUUFBZ0I7UUFDdkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxRQUFnQjtRQUMzQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU0sa0JBQWtCLENBQUMsUUFBZ0I7UUFDeEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFFBQWdCO1FBQ3pDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7Q0FDRiJ9
@@ -1,4 +1,4 @@
1
- import { type L2BlockSource } from '@aztec/circuit-types';
2
- import { type ReqRespSubProtocolHandler } from '../interface.js';
1
+ import type { L2BlockSource } from '@aztec/stdlib/block';
2
+ import type { ReqRespSubProtocolHandler } from '../interface.js';
3
3
  export declare function reqRespBlockHandler(l2BlockSource: L2BlockSource): ReqRespSubProtocolHandler;
4
4
  //# sourceMappingURL=block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEjE,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,GAAG,yBAAyB,CAO3F"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/block.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIzD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEjE,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,GAAG,yBAAyB,CAO3F"}
@@ -1,9 +1,8 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
2
  export function reqRespBlockHandler(l2BlockSource) {
3
- return async (_peerId, msg) => {
3
+ return async (_peerId, msg)=>{
4
4
  const blockNumber = Fr.fromBuffer(msg);
5
5
  const foundBlock = await l2BlockSource.getBlock(Number(blockNumber));
6
6
  return foundBlock ? foundBlock.toBuffer() : Buffer.alloc(0);
7
7
  };
8
8
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9wcm90b2NvbHMvYmxvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBTTlDLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxhQUE0QjtJQUM5RCxPQUFPLEtBQUssRUFBRSxPQUFlLEVBQUUsR0FBVyxFQUFFLEVBQUU7UUFDNUMsTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2QyxNQUFNLFVBQVUsR0FBRyxNQUFNLGFBQWEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDckUsT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -1,17 +1,17 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  /// <reference types="node" resolution-mode="require"/>
3
- import { type PeerId } from '@libp2p/interface';
4
- import { type PeerManager } from '../../peer-manager/peer_manager.js';
3
+ import type { PeerId } from '@libp2p/interface';
4
+ import type { PeerManager } from '../../peer-manager/peer_manager.js';
5
5
  import { type ReqRespSubProtocolHandler } from '../interface.js';
6
- import { type ReqResp } from '../reqresp.js';
6
+ import type { ReqResp } from '../reqresp.js';
7
7
  /**
8
8
  * Enum defining the possible reasons for a goodbye message.
9
9
  */
10
10
  export declare enum GoodByeReason {
11
11
  /** The peer has shutdown, will be received whenever a peer's node is routinely stopped */
12
12
  SHUTDOWN = 1,
13
- /** Whenever the peer must disconnect due to maintaining max peers */
14
- DISCONNECTED = 2,
13
+ /** The max peer count has been reached, will be received whenever a low scoring peer is disconnected to satisfy the max peer count */
14
+ MAX_PEERS = 2,
15
15
  /** The peer has a low score, will be received whenever a peer's score is low */
16
16
  LOW_SCORE = 3,
17
17
  /** The peer has been banned, will be received whenever a peer is banned */
@@ -1 +1 @@
1
- {"version":3,"file":"goodbye.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/goodbye.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAsB,KAAK,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,oBAAY,aAAa;IACvB,0FAA0F;IAC1F,QAAQ,IAAM;IACd,qEAAqE;IACrE,YAAY,IAAM;IAClB,gFAAgF;IAChF,SAAS,IAAM;IACf,2EAA2E;IAC3E,MAAM,IAAM;IACZ,2BAA2B;IAC3B,aAAa,IAAM;IACnB,qBAAqB;IACrB,OAAO,IAAM;CACd;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CASjE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAgBjE;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,MAAM,CAAwC;gBAElC,OAAO,EAAE,OAAO;IAEvB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ/E;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,yBAAyB,CASrF"}
1
+ {"version":3,"file":"goodbye.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/goodbye.ts"],"names":[],"mappings":";;AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAsB,KAAK,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,oBAAY,aAAa;IACvB,0FAA0F;IAC1F,QAAQ,IAAM;IACd,sIAAsI;IACtI,SAAS,IAAM;IACf,gFAAgF;IAChF,SAAS,IAAM;IACf,2EAA2E;IAC3E,MAAM,IAAM;IACZ,2BAA2B;IAC3B,aAAa,IAAM;IACnB,qBAAqB;IACrB,OAAO,IAAM;CACd;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CASjE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAgBjE;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,MAAM,CAAwC;gBAElC,OAAO,EAAE,OAAO;IAEvB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ/E;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,yBAAyB,CASrF"}
@@ -2,24 +2,19 @@ import { createLogger } from '@aztec/foundation/log';
2
2
  import { ReqRespSubProtocol } from '../interface.js';
3
3
  /**
4
4
  * Enum defining the possible reasons for a goodbye message.
5
- */
6
- export var GoodByeReason;
7
- (function (GoodByeReason) {
8
- /** The peer has shutdown, will be received whenever a peer's node is routinely stopped */
9
- GoodByeReason[GoodByeReason["SHUTDOWN"] = 1] = "SHUTDOWN";
10
- /** Whenever the peer must disconnect due to maintaining max peers */
11
- GoodByeReason[GoodByeReason["DISCONNECTED"] = 2] = "DISCONNECTED";
12
- /** The peer has a low score, will be received whenever a peer's score is low */
13
- GoodByeReason[GoodByeReason["LOW_SCORE"] = 3] = "LOW_SCORE";
14
- /** The peer has been banned, will be received whenever a peer is banned */
15
- GoodByeReason[GoodByeReason["BANNED"] = 4] = "BANNED";
16
- /** Wrong network / fork */
17
- GoodByeReason[GoodByeReason["WRONG_NETWORK"] = 5] = "WRONG_NETWORK";
18
- /** Unknown reason */
19
- GoodByeReason[GoodByeReason["UNKNOWN"] = 6] = "UNKNOWN";
20
- })(GoodByeReason || (GoodByeReason = {}));
5
+ */ export var GoodByeReason = /*#__PURE__*/ function(GoodByeReason) {
6
+ /** The peer has shutdown, will be received whenever a peer's node is routinely stopped */ GoodByeReason[GoodByeReason["SHUTDOWN"] = 1] = "SHUTDOWN";
7
+ /** The max peer count has been reached, will be received whenever a low scoring peer is disconnected to satisfy the max peer count */ GoodByeReason[GoodByeReason["MAX_PEERS"] = 2] = "MAX_PEERS";
8
+ /** The peer has a low score, will be received whenever a peer's score is low */ GoodByeReason[GoodByeReason["LOW_SCORE"] = 3] = "LOW_SCORE";
9
+ /** The peer has been banned, will be received whenever a peer is banned */ GoodByeReason[GoodByeReason["BANNED"] = 4] = "BANNED";
10
+ /** Wrong network / fork */ GoodByeReason[GoodByeReason["WRONG_NETWORK"] = 5] = "WRONG_NETWORK";
11
+ /** Unknown reason */ GoodByeReason[GoodByeReason["UNKNOWN"] = 6] = "UNKNOWN";
12
+ return GoodByeReason;
13
+ }({});
21
14
  export function encodeGoodbyeReason(reason) {
22
- return Buffer.from([reason]);
15
+ return Buffer.from([
16
+ reason
17
+ ]);
23
18
  }
24
19
  export function decodeGoodbyeReason(buffer) {
25
20
  try {
@@ -27,47 +22,47 @@ export function decodeGoodbyeReason(buffer) {
27
22
  throw new Error('Invalid goodbye reason buffer length');
28
23
  }
29
24
  return buffer[0];
30
- }
31
- catch (error) {
32
- return GoodByeReason.UNKNOWN;
25
+ } catch (error) {
26
+ return 6;
33
27
  }
34
28
  }
35
29
  /**
36
30
  * Pretty prints the goodbye reason.
37
31
  * @param reason - The goodbye reason.
38
32
  * @returns The pretty printed goodbye reason.
39
- */
40
- export function prettyGoodbyeReason(reason) {
41
- switch (reason) {
42
- case GoodByeReason.SHUTDOWN:
33
+ */ export function prettyGoodbyeReason(reason) {
34
+ switch(reason){
35
+ case 1:
43
36
  return 'shutdown';
44
- case GoodByeReason.DISCONNECTED:
45
- return 'disconnected';
46
- case GoodByeReason.LOW_SCORE:
37
+ case 2:
38
+ return 'max_peers';
39
+ case 3:
47
40
  return 'low_score';
48
- case GoodByeReason.BANNED:
41
+ case 4:
49
42
  return 'banned';
50
43
  // TODO(#11328): implement
51
- case GoodByeReason.WRONG_NETWORK:
44
+ case 5:
52
45
  return 'wrong_network';
53
- case GoodByeReason.UNKNOWN:
46
+ case 6:
54
47
  return 'unknown';
55
48
  }
56
49
  }
57
50
  /**
58
51
  * Handles a goodbye message request
59
- */
60
- export class GoodbyeProtocolHandler {
61
- constructor(reqresp) {
52
+ */ export class GoodbyeProtocolHandler {
53
+ reqresp;
54
+ logger;
55
+ constructor(reqresp){
62
56
  this.reqresp = reqresp;
63
57
  this.logger = createLogger('p2p:goodbye-protocol');
64
58
  }
65
59
  async sendGoodbye(peerId, reason) {
66
60
  try {
67
- await this.reqresp.sendRequestToPeer(peerId, ReqRespSubProtocol.GOODBYE, Buffer.from([reason]));
61
+ await this.reqresp.sendRequestToPeer(peerId, ReqRespSubProtocol.GOODBYE, Buffer.from([
62
+ reason
63
+ ]));
68
64
  this.logger.debug(`Sent goodbye to peer ${peerId.toString()} with reason ${reason}`);
69
- }
70
- catch (error) {
65
+ } catch (error) {
71
66
  this.logger.debug(`Failed to send goodbye to peer ${peerId.toString()}: ${error}`);
72
67
  }
73
68
  }
@@ -80,13 +75,13 @@ export class GoodbyeProtocolHandler {
80
75
  *
81
76
  * @param peerManager - The peer manager.
82
77
  * @returns A resolved promise with the goodbye response.
83
- */
84
- export function reqGoodbyeHandler(peerManager) {
85
- return (peerId, _msg) => {
78
+ */ export function reqGoodbyeHandler(peerManager) {
79
+ return (peerId, _msg)=>{
86
80
  const reason = decodeGoodbyeReason(_msg);
87
81
  peerManager.goodbyeReceived(peerId, reason);
88
82
  // Return a buffer of length 1 as an acknowledgement: this is allowed to fail
89
- return Promise.resolve(Buffer.from([0x0]));
83
+ return Promise.resolve(Buffer.from([
84
+ 0x0
85
+ ]));
90
86
  };
91
87
  }
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZGJ5ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy9nb29kYnllLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUtyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWtDLE1BQU0saUJBQWlCLENBQUM7QUFHckY7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxhQWFYO0FBYkQsV0FBWSxhQUFhO0lBQ3ZCLDBGQUEwRjtJQUMxRix5REFBYyxDQUFBO0lBQ2QscUVBQXFFO0lBQ3JFLGlFQUFrQixDQUFBO0lBQ2xCLGdGQUFnRjtJQUNoRiwyREFBZSxDQUFBO0lBQ2YsMkVBQTJFO0lBQzNFLHFEQUFZLENBQUE7SUFDWiwyQkFBMkI7SUFDM0IsbUVBQW1CLENBQUE7SUFDbkIscUJBQXFCO0lBQ3JCLHVEQUFhLENBQUE7QUFDZixDQUFDLEVBYlcsYUFBYSxLQUFiLGFBQWEsUUFheEI7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBcUI7SUFDdkQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUFDLE1BQWM7SUFDaEQsSUFBSSxDQUFDO1FBQ0gsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFrQixDQUFDO0lBQ3BDLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFxQjtJQUN2RCxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxhQUFhLENBQUMsUUFBUTtZQUN6QixPQUFPLFVBQVUsQ0FBQztRQUNwQixLQUFLLGFBQWEsQ0FBQyxZQUFZO1lBQzdCLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssYUFBYSxDQUFDLFNBQVM7WUFDMUIsT0FBTyxXQUFXLENBQUM7UUFDckIsS0FBSyxhQUFhLENBQUMsTUFBTTtZQUN2QixPQUFPLFFBQVEsQ0FBQztRQUNsQiwwQkFBMEI7UUFDMUIsS0FBSyxhQUFhLENBQUMsYUFBYTtZQUM5QixPQUFPLGVBQWUsQ0FBQztRQUN6QixLQUFLLGFBQWEsQ0FBQyxPQUFPO1lBQ3hCLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLFlBQW9CLE9BQWdCO1FBQWhCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFGNUIsV0FBTSxHQUFHLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBRWYsQ0FBQztJQUVqQyxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQWMsRUFBRSxNQUFxQjtRQUM1RCxJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixNQUFNLENBQUMsUUFBUSxFQUFFLGdCQUFnQixNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsa0NBQWtDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxXQUF3QjtJQUN4RCxPQUFPLENBQUMsTUFBYyxFQUFFLElBQVksRUFBRSxFQUFFO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpDLFdBQVcsQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRTVDLDZFQUE2RTtRQUM3RSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -1,9 +1,7 @@
1
1
  /**
2
2
  * Request Response protocol handlers
3
- */
4
- export * from './ping.js';
3
+ */ export * from './ping.js';
5
4
  export * from './status.js';
6
5
  export * from './tx.js';
7
6
  export * from './goodbye.js';
8
7
  export * from './block.js';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9wcm90b2NvbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFlBQVksQ0FBQyJ9
@@ -2,8 +2,6 @@
2
2
  * Handles the ping request.
3
3
  * @param _msg - The ping request message.
4
4
  * @returns A resolved promise with the pong response.
5
- */
6
- export function pingHandler(_msg) {
5
+ */ export function pingHandler(_msg) {
7
6
  return Promise.resolve(Buffer.from('pong'));
8
7
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy9waW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQVM7SUFDbkMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUM5QyxDQUFDIn0=
@@ -2,8 +2,6 @@
2
2
  * Handles the status request.
3
3
  * @param _msg - The status request message.
4
4
  * @returns A resolved promise with the ok response.
5
- */
6
- export function statusHandler(_msg) {
5
+ */ export function statusHandler(_msg) {
7
6
  return Promise.resolve(Buffer.from('ok'));
8
7
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcHJvdG9jb2xzL3N0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUFTO0lBQ3JDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDNUMsQ0FBQyJ9
@@ -1,6 +1,6 @@
1
- import { type P2PClientType } from '@aztec/circuit-types';
2
- import { type MemPools } from '../../../mem_pools/interface.js';
3
- import { type ReqRespSubProtocolHandler } from '../interface.js';
1
+ import type { P2PClientType } from '@aztec/stdlib/p2p';
2
+ import type { MemPools } from '../../../mem_pools/interface.js';
3
+ import type { ReqRespSubProtocolHandler } from '../interface.js';
4
4
  /**
5
5
  * We want to keep the logic of the req resp handler in this file, but we do not have a reference to the mempools here
6
6
  * so we need to pass it in as a parameter.
@@ -1 +1 @@
1
- {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,yBAAyB,CAY1G"}
1
+ {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/tx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,aAAa,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,yBAAyB,CAY1G"}
@@ -1,4 +1,4 @@
1
- import { TxHash } from '@aztec/circuit-types/tx_hash';
1
+ import { TxHash } from '@aztec/stdlib/tx';
2
2
  /**
3
3
  * We want to keep the logic of the req resp handler in this file, but we do not have a reference to the mempools here
4
4
  * so we need to pass it in as a parameter.
@@ -6,18 +6,15 @@ import { TxHash } from '@aztec/circuit-types/tx_hash';
6
6
  * Handler for tx requests
7
7
  * @param mempools - the mempools
8
8
  * @returns the tx response message
9
- */
10
- export function reqRespTxHandler(mempools) {
9
+ */ export function reqRespTxHandler(mempools) {
11
10
  /**
12
- * Handler for tx requests
13
- * @param msg - the tx request message
14
- * @returns the tx response message
15
- */
16
- return async (_peerId, msg) => {
11
+ * Handler for tx requests
12
+ * @param msg - the tx request message
13
+ * @returns the tx response message
14
+ */ return async (_peerId, msg)=>{
17
15
  const txHash = TxHash.fromBuffer(msg);
18
16
  const foundTx = await mempools.txPool.getTxByHash(txHash);
19
17
  const buf = foundTx ? foundTx.toBuffer() : Buffer.alloc(0);
20
18
  return buf;
21
19
  };
22
20
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9wcm90b2NvbHMvdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBT3REOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQTBCLFFBQXFCO0lBQzdFOzs7O09BSUc7SUFDSCxPQUFPLEtBQUssRUFBRSxPQUFlLEVBQUUsR0FBVyxFQUFFLEVBQUU7UUFDNUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFELE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -1,2 +1 @@
1
1
  export { RequestResponseRateLimiter } from './rate_limiter.js';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9yYXRlLWxpbWl0ZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUMifQ==
@@ -1,6 +1,6 @@
1
- import { type PeerId } from '@libp2p/interface';
2
- import { type PeerScoring } from '../../peer-manager/peer_scoring.js';
3
- import { type ReqRespSubProtocol, type ReqRespSubProtocolRateLimits } from '../interface.js';
1
+ import type { PeerId } from '@libp2p/interface';
2
+ import type { PeerScoring } from '../../peer-manager/peer_scoring.js';
3
+ import type { ReqRespSubProtocol, ReqRespSubProtocolRateLimits } from '../interface.js';
4
4
  /**
5
5
  * GCRARateLimiter: A Generic Cell Rate Algorithm (GCRA) based rate limiter.
6
6
  *
@@ -32,11 +32,12 @@ export declare class GCRARateLimiter {
32
32
  constructor(quotaCount: number, quotaTimeMs: number);
33
33
  allow(): boolean;
34
34
  }
35
- declare enum RateLimitStatus {
36
- Allowed = 0,
37
- DeniedGlobal = 1,
38
- DeniedPeer = 2
35
+ export declare enum RateLimitStatus {
36
+ DeniedGlobal = 0,
37
+ DeniedPeer = 1,
38
+ Allowed = 2
39
39
  }
40
+ export declare function prettyPrintRateLimitStatus(status: RateLimitStatus): "DeniedGlobal" | "DeniedPeer" | "Allowed";
40
41
  /**
41
42
  * SubProtocolRateLimiter: A rate limiter for managing request rates on a per-peer and global basis for a specific subprotocol.
42
43
  *
@@ -91,12 +92,11 @@ export declare class RequestResponseRateLimiter {
91
92
  private cleanupInterval;
92
93
  constructor(peerScoring: PeerScoring, rateLimits?: ReqRespSubProtocolRateLimits);
93
94
  start(): void;
94
- allow(subProtocol: ReqRespSubProtocol, peerId: PeerId): boolean;
95
+ allow(subProtocol: ReqRespSubProtocol, peerId: PeerId): RateLimitStatus;
95
96
  cleanupInactivePeers(): void;
96
97
  /**
97
98
  * Make sure to call destroy on each of the sub protocol rate limiters when cleaning up
98
99
  */
99
100
  stop(): void;
100
101
  }
101
- export {};
102
102
  //# sourceMappingURL=rate_limiter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rate_limiter.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/rate-limiter/rate_limiter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAM7F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAe;IAE1B,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC;;;OAGG;gBACS,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAMnD,KAAK,IAAI,OAAO;CAWjB;AASD,aAAK,eAAe;IAClB,OAAO,IAAA;IACP,YAAY,IAAA;IACZ,UAAU,IAAA;CACX;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAOhH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAwBtC,oBAAoB;CAQrB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,0BAA0B;IAKzB,OAAO,CAAC,WAAW;IAJ/B,OAAO,CAAC,uBAAuB,CAAkD;IAEjF,OAAO,CAAC,eAAe,CAAyC;gBAE5C,WAAW,EAAE,WAAW,EAAE,UAAU,GAAE,4BAAkD;IAgB5G,KAAK;IAML,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAoB/D,oBAAoB;IAIpB;;OAEG;IACH,IAAI;CAGL"}
1
+ {"version":3,"file":"rate_limiter.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/rate-limiter/rate_limiter.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAMxF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAe;IAE1B,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC;;;OAGG;gBACS,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAMnD,KAAK,IAAI,OAAO;CAWjB;AASD,oBAAY,eAAe;IACzB,YAAY,IAAA;IACZ,UAAU,IAAA;IACV,OAAO,IAAA;CACR;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,6CASjE;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAOhH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAwBtC,oBAAoB;CAQrB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,0BAA0B;IAKzB,OAAO,CAAC,WAAW;IAJ/B,OAAO,CAAC,uBAAuB,CAAkD;IAEjF,OAAO,CAAC,eAAe,CAAyC;gBAE5C,WAAW,EAAE,WAAW,EAAE,UAAU,GAAE,4BAAkD;IAgB5G,KAAK;IAML,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;IAavE,oBAAoB;IAIpB;;OAEG;IACH,IAAI;CAGL"}