@aztec/p2p 0.0.1-commit.dbf9cec → 0.0.1-commit.ddcf04837

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 (339) hide show
  1. package/README.md +129 -3
  2. package/dest/client/factory.d.ts +2 -2
  3. package/dest/client/factory.d.ts.map +1 -1
  4. package/dest/client/factory.js +25 -11
  5. package/dest/client/interface.d.ts +9 -2
  6. package/dest/client/interface.d.ts.map +1 -1
  7. package/dest/client/p2p_client.d.ts +3 -2
  8. package/dest/client/p2p_client.d.ts.map +1 -1
  9. package/dest/client/p2p_client.js +46 -38
  10. package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker.js +17 -6
  11. package/dest/config.d.ts +125 -100
  12. package/dest/config.d.ts.map +1 -1
  13. package/dest/config.js +92 -33
  14. package/dest/errors/p2p-service.error.d.ts +9 -0
  15. package/dest/errors/p2p-service.error.d.ts.map +1 -0
  16. package/dest/errors/p2p-service.error.js +10 -0
  17. package/dest/index.d.ts +1 -2
  18. package/dest/index.d.ts.map +1 -1
  19. package/dest/index.js +0 -1
  20. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +7 -5
  21. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
  22. package/dest/mem_pools/attestation_pool/attestation_pool.js +16 -9
  23. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +6 -6
  24. package/dest/mem_pools/index.d.ts +1 -2
  25. package/dest/mem_pools/index.d.ts.map +1 -1
  26. package/dest/mem_pools/instrumentation.d.ts +4 -2
  27. package/dest/mem_pools/instrumentation.d.ts.map +1 -1
  28. package/dest/mem_pools/instrumentation.js +16 -14
  29. package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.d.ts +1 -1
  30. package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.d.ts.map +1 -1
  31. package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.js +2 -1
  32. package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts +7 -1
  33. package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts.map +1 -1
  34. package/dest/mem_pools/tx_pool_v2/eviction/invalid_txs_after_reorg_rule.js +2 -2
  35. package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.d.ts +1 -1
  36. package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.d.ts.map +1 -1
  37. package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.js +8 -6
  38. package/dest/mem_pools/tx_pool_v2/eviction/nullifier_conflict_rule.d.ts +2 -2
  39. package/dest/mem_pools/tx_pool_v2/eviction/nullifier_conflict_rule.d.ts.map +1 -1
  40. package/dest/mem_pools/tx_pool_v2/eviction/nullifier_conflict_rule.js +2 -2
  41. package/dest/mem_pools/tx_pool_v2/interfaces.d.ts +9 -5
  42. package/dest/mem_pools/tx_pool_v2/interfaces.d.ts.map +1 -1
  43. package/dest/mem_pools/tx_pool_v2/interfaces.js +2 -1
  44. package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts +25 -10
  45. package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts.map +1 -1
  46. package/dest/mem_pools/tx_pool_v2/tx_metadata.js +39 -12
  47. package/dest/mem_pools/tx_pool_v2/tx_pool_indices.d.ts +1 -1
  48. package/dest/mem_pools/tx_pool_v2/tx_pool_indices.d.ts.map +1 -1
  49. package/dest/mem_pools/tx_pool_v2/tx_pool_indices.js +26 -43
  50. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts +4 -2
  51. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts.map +1 -1
  52. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.js +6 -0
  53. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts +2 -1
  54. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts.map +1 -1
  55. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.js +24 -6
  56. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +5 -2
  57. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
  58. package/dest/msg_validators/attestation_validator/attestation_validator.js +20 -11
  59. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts +4 -2
  60. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts.map +1 -1
  61. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.js +2 -2
  62. package/dest/msg_validators/clock_tolerance.d.ts +12 -1
  63. package/dest/msg_validators/clock_tolerance.d.ts.map +1 -1
  64. package/dest/msg_validators/clock_tolerance.js +54 -3
  65. package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts +7 -4
  66. package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts.map +1 -1
  67. package/dest/msg_validators/proposal_validator/block_proposal_validator.js +10 -2
  68. package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts +7 -4
  69. package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts.map +1 -1
  70. package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.js +16 -2
  71. package/dest/msg_validators/proposal_validator/proposal_validator.d.ts +15 -8
  72. package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
  73. package/dest/msg_validators/proposal_validator/proposal_validator.js +67 -47
  74. package/dest/msg_validators/tx_validator/allowed_public_setup.d.ts +2 -1
  75. package/dest/msg_validators/tx_validator/allowed_public_setup.d.ts.map +1 -1
  76. package/dest/msg_validators/tx_validator/allowed_public_setup.js +24 -20
  77. package/dest/msg_validators/tx_validator/allowed_setup_helpers.d.ts +17 -0
  78. package/dest/msg_validators/tx_validator/allowed_setup_helpers.d.ts.map +1 -0
  79. package/dest/msg_validators/tx_validator/allowed_setup_helpers.js +24 -0
  80. package/dest/msg_validators/tx_validator/archive_cache.js +1 -1
  81. package/dest/msg_validators/tx_validator/contract_instance_validator.d.ts +9 -0
  82. package/dest/msg_validators/tx_validator/contract_instance_validator.d.ts.map +1 -0
  83. package/dest/msg_validators/tx_validator/contract_instance_validator.js +48 -0
  84. package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
  85. package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
  86. package/dest/msg_validators/tx_validator/data_validator.js +35 -2
  87. package/dest/msg_validators/tx_validator/factory.d.ts +23 -4
  88. package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
  89. package/dest/msg_validators/tx_validator/factory.js +36 -10
  90. package/dest/msg_validators/tx_validator/fee_payer_balance.d.ts +1 -1
  91. package/dest/msg_validators/tx_validator/fee_payer_balance.d.ts.map +1 -1
  92. package/dest/msg_validators/tx_validator/fee_payer_balance.js +6 -2
  93. package/dest/msg_validators/tx_validator/gas_validator.d.ts +13 -4
  94. package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
  95. package/dest/msg_validators/tx_validator/gas_validator.js +49 -17
  96. package/dest/msg_validators/tx_validator/index.d.ts +2 -1
  97. package/dest/msg_validators/tx_validator/index.d.ts.map +1 -1
  98. package/dest/msg_validators/tx_validator/index.js +1 -0
  99. package/dest/msg_validators/tx_validator/metadata_validator.d.ts +1 -1
  100. package/dest/msg_validators/tx_validator/metadata_validator.d.ts.map +1 -1
  101. package/dest/msg_validators/tx_validator/metadata_validator.js +4 -4
  102. package/dest/msg_validators/tx_validator/phases_validator.d.ts +22 -2
  103. package/dest/msg_validators/tx_validator/phases_validator.d.ts.map +1 -1
  104. package/dest/msg_validators/tx_validator/phases_validator.js +72 -24
  105. package/dest/services/data_store.d.ts +1 -1
  106. package/dest/services/data_store.d.ts.map +1 -1
  107. package/dest/services/data_store.js +5 -5
  108. package/dest/services/dummy_service.d.ts +6 -3
  109. package/dest/services/dummy_service.d.ts.map +1 -1
  110. package/dest/services/dummy_service.js +6 -1
  111. package/dest/services/encoding.d.ts +5 -1
  112. package/dest/services/encoding.d.ts.map +1 -1
  113. package/dest/services/encoding.js +7 -1
  114. package/dest/services/gossipsub/topic_score_params.d.ts +13 -2
  115. package/dest/services/gossipsub/topic_score_params.d.ts.map +1 -1
  116. package/dest/services/gossipsub/topic_score_params.js +21 -4
  117. package/dest/services/libp2p/libp2p_service.d.ts +15 -25
  118. package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
  119. package/dest/services/libp2p/libp2p_service.js +165 -126
  120. package/dest/services/peer-manager/metrics.d.ts +3 -1
  121. package/dest/services/peer-manager/metrics.d.ts.map +1 -1
  122. package/dest/services/peer-manager/metrics.js +6 -0
  123. package/dest/services/peer-manager/peer_manager.d.ts +6 -2
  124. package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
  125. package/dest/services/peer-manager/peer_manager.js +39 -11
  126. package/dest/services/peer-manager/peer_scoring.d.ts +7 -2
  127. package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
  128. package/dest/services/peer-manager/peer_scoring.js +32 -10
  129. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts +11 -8
  130. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts.map +1 -1
  131. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.js +69 -65
  132. package/dest/services/reqresp/batch-tx-requester/interface.d.ts +3 -2
  133. package/dest/services/reqresp/batch-tx-requester/interface.d.ts.map +1 -1
  134. package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts +5 -4
  135. package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts.map +1 -1
  136. package/dest/services/reqresp/batch-tx-requester/missing_txs.js +13 -7
  137. package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts +3 -1
  138. package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts.map +1 -1
  139. package/dest/services/reqresp/batch-tx-requester/peer_collection.js +3 -0
  140. package/dest/services/reqresp/config.d.ts +3 -3
  141. package/dest/services/reqresp/config.d.ts.map +1 -1
  142. package/dest/services/reqresp/interface.d.ts +14 -9
  143. package/dest/services/reqresp/interface.d.ts.map +1 -1
  144. package/dest/services/reqresp/interface.js +10 -11
  145. package/dest/services/reqresp/metrics.d.ts +1 -1
  146. package/dest/services/reqresp/metrics.d.ts.map +1 -1
  147. package/dest/services/reqresp/metrics.js +0 -1
  148. package/dest/services/reqresp/protocols/index.d.ts +1 -2
  149. package/dest/services/reqresp/protocols/index.d.ts.map +1 -1
  150. package/dest/services/reqresp/protocols/index.js +0 -1
  151. package/dest/services/reqresp/protocols/tx.d.ts +1 -1
  152. package/dest/services/reqresp/protocols/tx.d.ts.map +1 -1
  153. package/dest/services/reqresp/protocols/tx.js +1 -3
  154. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +5 -4
  155. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
  156. package/dest/services/reqresp/rate-limiter/rate_limiter.js +10 -8
  157. package/dest/services/reqresp/rate-limiter/rate_limits.d.ts +1 -1
  158. package/dest/services/reqresp/rate-limiter/rate_limits.d.ts.map +1 -1
  159. package/dest/services/reqresp/rate-limiter/rate_limits.js +0 -10
  160. package/dest/services/reqresp/reqresp.d.ts +4 -2
  161. package/dest/services/reqresp/reqresp.d.ts.map +1 -1
  162. package/dest/services/reqresp/reqresp.js +28 -11
  163. package/dest/services/service.d.ts +5 -2
  164. package/dest/services/service.d.ts.map +1 -1
  165. package/dest/services/tx_collection/fast_tx_collection.d.ts +1 -4
  166. package/dest/services/tx_collection/fast_tx_collection.d.ts.map +1 -1
  167. package/dest/services/tx_collection/fast_tx_collection.js +57 -73
  168. package/dest/services/tx_collection/file_store_tx_source.d.ts +5 -4
  169. package/dest/services/tx_collection/file_store_tx_source.d.ts.map +1 -1
  170. package/dest/services/tx_collection/file_store_tx_source.js +39 -29
  171. package/dest/services/tx_collection/proposal_tx_collector.d.ts +6 -7
  172. package/dest/services/tx_collection/proposal_tx_collector.d.ts.map +1 -1
  173. package/dest/services/tx_collection/proposal_tx_collector.js +4 -4
  174. package/dest/services/tx_collection/request_tracker.d.ts +53 -0
  175. package/dest/services/tx_collection/request_tracker.d.ts.map +1 -0
  176. package/dest/services/tx_collection/request_tracker.js +84 -0
  177. package/dest/services/tx_collection/slow_tx_collection.js +1 -1
  178. package/dest/services/tx_collection/tx_collection.d.ts +3 -6
  179. package/dest/services/tx_collection/tx_collection.d.ts.map +1 -1
  180. package/dest/services/tx_collection/tx_source.d.ts +6 -5
  181. package/dest/services/tx_collection/tx_source.d.ts.map +1 -1
  182. package/dest/services/tx_collection/tx_source.js +9 -7
  183. package/dest/test-helpers/make-test-p2p-clients.d.ts +1 -1
  184. package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -1
  185. package/dest/test-helpers/mock-pubsub.d.ts +11 -3
  186. package/dest/test-helpers/mock-pubsub.d.ts.map +1 -1
  187. package/dest/test-helpers/mock-pubsub.js +35 -10
  188. package/dest/test-helpers/reqresp-nodes.d.ts +1 -1
  189. package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
  190. package/dest/test-helpers/reqresp-nodes.js +1 -2
  191. package/dest/test-helpers/testbench-utils.d.ts +1 -1
  192. package/dest/test-helpers/testbench-utils.d.ts.map +1 -1
  193. package/dest/test-helpers/testbench-utils.js +23 -3
  194. package/dest/testbench/p2p_client_testbench_worker.js +68 -16
  195. package/dest/testbench/worker_client_manager.d.ts +10 -1
  196. package/dest/testbench/worker_client_manager.d.ts.map +1 -1
  197. package/dest/testbench/worker_client_manager.js +55 -3
  198. package/dest/util.d.ts +1 -1
  199. package/package.json +14 -14
  200. package/src/client/factory.ts +43 -14
  201. package/src/client/interface.ts +9 -1
  202. package/src/client/p2p_client.ts +50 -39
  203. package/src/client/test/tx_proposal_collector/proposal_tx_collector_worker.ts +19 -9
  204. package/src/config.ts +137 -35
  205. package/src/errors/p2p-service.error.ts +11 -0
  206. package/src/index.ts +0 -1
  207. package/src/mem_pools/attestation_pool/attestation_pool.ts +17 -12
  208. package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +6 -6
  209. package/src/mem_pools/index.ts +0 -3
  210. package/src/mem_pools/instrumentation.ts +17 -13
  211. package/src/mem_pools/tx_pool_v2/README.md +9 -1
  212. package/src/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.ts +2 -1
  213. package/src/mem_pools/tx_pool_v2/eviction/interfaces.ts +11 -1
  214. package/src/mem_pools/tx_pool_v2/eviction/invalid_txs_after_reorg_rule.ts +3 -3
  215. package/src/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.ts +15 -6
  216. package/src/mem_pools/tx_pool_v2/eviction/nullifier_conflict_rule.ts +2 -1
  217. package/src/mem_pools/tx_pool_v2/interfaces.ts +9 -4
  218. package/src/mem_pools/tx_pool_v2/tx_metadata.ts +60 -14
  219. package/src/mem_pools/tx_pool_v2/tx_pool_indices.ts +29 -43
  220. package/src/mem_pools/tx_pool_v2/tx_pool_v2.ts +16 -1
  221. package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +28 -6
  222. package/src/msg_validators/attestation_validator/README.md +49 -0
  223. package/src/msg_validators/attestation_validator/attestation_validator.ts +21 -9
  224. package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +4 -1
  225. package/src/msg_validators/clock_tolerance.ts +72 -3
  226. package/src/msg_validators/proposal_validator/README.md +123 -0
  227. package/src/msg_validators/proposal_validator/block_proposal_validator.ts +17 -4
  228. package/src/msg_validators/proposal_validator/checkpoint_proposal_validator.ts +23 -7
  229. package/src/msg_validators/proposal_validator/proposal_validator.ts +79 -49
  230. package/src/msg_validators/tx_validator/README.md +5 -1
  231. package/src/msg_validators/tx_validator/allowed_public_setup.ts +22 -27
  232. package/src/msg_validators/tx_validator/allowed_setup_helpers.ts +31 -0
  233. package/src/msg_validators/tx_validator/archive_cache.ts +1 -1
  234. package/src/msg_validators/tx_validator/contract_instance_validator.ts +56 -0
  235. package/src/msg_validators/tx_validator/data_validator.ts +42 -1
  236. package/src/msg_validators/tx_validator/factory.ts +43 -3
  237. package/src/msg_validators/tx_validator/fee_payer_balance.ts +6 -2
  238. package/src/msg_validators/tx_validator/gas_validator.ts +65 -16
  239. package/src/msg_validators/tx_validator/index.ts +1 -0
  240. package/src/msg_validators/tx_validator/metadata_validator.ts +12 -4
  241. package/src/msg_validators/tx_validator/phases_validator.ts +82 -27
  242. package/src/services/data_store.ts +5 -13
  243. package/src/services/dummy_service.ts +8 -2
  244. package/src/services/encoding.ts +9 -1
  245. package/src/services/gossipsub/topic_score_params.ts +36 -4
  246. package/src/services/libp2p/libp2p_service.ts +164 -139
  247. package/src/services/peer-manager/metrics.ts +7 -0
  248. package/src/services/peer-manager/peer_manager.ts +45 -11
  249. package/src/services/peer-manager/peer_scoring.ts +27 -5
  250. package/src/services/reqresp/README.md +229 -0
  251. package/src/services/reqresp/batch-tx-requester/README.md +46 -7
  252. package/src/services/reqresp/batch-tx-requester/batch_tx_requester.ts +64 -69
  253. package/src/services/reqresp/batch-tx-requester/interface.ts +2 -1
  254. package/src/services/reqresp/batch-tx-requester/missing_txs.ts +13 -6
  255. package/src/services/reqresp/batch-tx-requester/peer_collection.ts +5 -0
  256. package/src/services/reqresp/config.ts +2 -2
  257. package/src/services/reqresp/interface.ts +21 -11
  258. package/src/services/reqresp/metrics.ts +0 -1
  259. package/src/services/reqresp/protocols/index.ts +0 -1
  260. package/src/services/reqresp/protocols/tx.ts +1 -3
  261. package/src/services/reqresp/rate-limiter/rate_limiter.ts +13 -9
  262. package/src/services/reqresp/rate-limiter/rate_limits.ts +0 -10
  263. package/src/services/reqresp/reqresp.ts +37 -12
  264. package/src/services/service.ts +6 -1
  265. package/src/services/tx_collection/fast_tx_collection.ts +57 -83
  266. package/src/services/tx_collection/file_store_tx_source.ts +43 -31
  267. package/src/services/tx_collection/proposal_tx_collector.ts +8 -13
  268. package/src/services/tx_collection/request_tracker.ts +127 -0
  269. package/src/services/tx_collection/slow_tx_collection.ts +1 -1
  270. package/src/services/tx_collection/tx_collection.ts +3 -5
  271. package/src/services/tx_collection/tx_source.ts +8 -7
  272. package/src/test-helpers/make-test-p2p-clients.ts +1 -1
  273. package/src/test-helpers/mock-pubsub.ts +31 -5
  274. package/src/test-helpers/reqresp-nodes.ts +3 -3
  275. package/src/test-helpers/testbench-utils.ts +30 -3
  276. package/src/testbench/p2p_client_testbench_worker.ts +72 -15
  277. package/src/testbench/worker_client_manager.ts +68 -6
  278. package/src/util.ts +1 -1
  279. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +0 -125
  280. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +0 -1
  281. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +0 -596
  282. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts +0 -32
  283. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts.map +0 -1
  284. package/dest/mem_pools/tx_pool/eviction/eviction_manager.js +0 -112
  285. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts +0 -157
  286. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts.map +0 -1
  287. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.js +0 -52
  288. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts +0 -16
  289. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts.map +0 -1
  290. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.js +0 -122
  291. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts +0 -17
  292. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts.map +0 -1
  293. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.js +0 -84
  294. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts +0 -19
  295. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts.map +0 -1
  296. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.js +0 -78
  297. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts +0 -26
  298. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts.map +0 -1
  299. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.js +0 -84
  300. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts +0 -25
  301. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts.map +0 -1
  302. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.js +0 -57
  303. package/dest/mem_pools/tx_pool/index.d.ts +0 -3
  304. package/dest/mem_pools/tx_pool/index.d.ts.map +0 -1
  305. package/dest/mem_pools/tx_pool/index.js +0 -2
  306. package/dest/mem_pools/tx_pool/priority.d.ts +0 -12
  307. package/dest/mem_pools/tx_pool/priority.d.ts.map +0 -1
  308. package/dest/mem_pools/tx_pool/priority.js +0 -15
  309. package/dest/mem_pools/tx_pool/tx_pool.d.ts +0 -127
  310. package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +0 -1
  311. package/dest/mem_pools/tx_pool/tx_pool.js +0 -3
  312. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +0 -7
  313. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +0 -1
  314. package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +0 -400
  315. package/dest/msg_validators/proposal_validator/proposal_validator_test_suite.d.ts +0 -23
  316. package/dest/msg_validators/proposal_validator/proposal_validator_test_suite.d.ts.map +0 -1
  317. package/dest/msg_validators/proposal_validator/proposal_validator_test_suite.js +0 -212
  318. package/dest/services/reqresp/protocols/block.d.ts +0 -9
  319. package/dest/services/reqresp/protocols/block.d.ts.map +0 -1
  320. package/dest/services/reqresp/protocols/block.js +0 -32
  321. package/dest/services/tx_collection/missing_txs_tracker.d.ts +0 -32
  322. package/dest/services/tx_collection/missing_txs_tracker.d.ts.map +0 -1
  323. package/dest/services/tx_collection/missing_txs_tracker.js +0 -27
  324. package/src/mem_pools/tx_pool/README.md +0 -270
  325. package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +0 -746
  326. package/src/mem_pools/tx_pool/eviction/eviction_manager.ts +0 -132
  327. package/src/mem_pools/tx_pool/eviction/eviction_strategy.ts +0 -208
  328. package/src/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.ts +0 -162
  329. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.ts +0 -104
  330. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.ts +0 -93
  331. package/src/mem_pools/tx_pool/eviction/low_priority_eviction_rule.ts +0 -106
  332. package/src/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.ts +0 -75
  333. package/src/mem_pools/tx_pool/index.ts +0 -2
  334. package/src/mem_pools/tx_pool/priority.ts +0 -20
  335. package/src/mem_pools/tx_pool/tx_pool.ts +0 -141
  336. package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +0 -319
  337. package/src/msg_validators/proposal_validator/proposal_validator_test_suite.ts +0 -230
  338. package/src/services/reqresp/protocols/block.ts +0 -37
  339. package/src/services/tx_collection/missing_txs_tracker.ts +0 -52
@@ -1,6 +1,3 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { L2Block } from '@aztec/stdlib/block';
3
- import { MAX_L2_BLOCK_SIZE_KB } from '@aztec/stdlib/p2p';
4
1
  import { TxArray, TxHashArray } from '@aztec/stdlib/tx';
5
2
  import { AuthRequest, AuthResponse } from './protocols/auth.js';
6
3
  import { BlockTxsRequest, BlockTxsResponse, calculateBlockTxsResponseSize } from './protocols/block_txs/block_txs_reqresp.js';
@@ -12,7 +9,6 @@ import { calculateTxResponseSize } from './protocols/tx.js';
12
9
  export const STATUS_PROTOCOL = '/aztec/req/status/1.0.0';
13
10
  export const GOODBYE_PROTOCOL = '/aztec/req/goodbye/1.0.0';
14
11
  export const TX_REQ_PROTOCOL = '/aztec/req/tx/1.0.0';
15
- export const BLOCK_REQ_PROTOCOL = '/aztec/req/block/1.0.0';
16
12
  export const AUTH_PROTOCOL = '/aztec/req/auth/1.0.0';
17
13
  export const BLOCK_TXS_REQ_PROTOCOL = '/aztec/req/block_txs/1.0.0';
18
14
  export var ReqRespSubProtocol = /*#__PURE__*/ function(ReqRespSubProtocol) {
@@ -20,18 +16,26 @@ export var ReqRespSubProtocol = /*#__PURE__*/ function(ReqRespSubProtocol) {
20
16
  ReqRespSubProtocol[ReqRespSubProtocol["STATUS"] = STATUS_PROTOCOL] = "STATUS";
21
17
  ReqRespSubProtocol[ReqRespSubProtocol["GOODBYE"] = GOODBYE_PROTOCOL] = "GOODBYE";
22
18
  ReqRespSubProtocol[ReqRespSubProtocol["TX"] = TX_REQ_PROTOCOL] = "TX";
23
- ReqRespSubProtocol[ReqRespSubProtocol["BLOCK"] = BLOCK_REQ_PROTOCOL] = "BLOCK";
24
19
  ReqRespSubProtocol[ReqRespSubProtocol["AUTH"] = AUTH_PROTOCOL] = "AUTH";
25
20
  ReqRespSubProtocol[ReqRespSubProtocol["BLOCK_TXS"] = BLOCK_TXS_REQ_PROTOCOL] = "BLOCK_TXS";
26
21
  return ReqRespSubProtocol;
27
22
  }({});
28
23
  export const noopValidator = ()=>Promise.resolve(true);
24
+ /**
25
+ * Protocols that are always allowed without authentication, even when p2pAllowOnlyValidators is enabled.
26
+ * These are needed for the handshake and connection management flow.
27
+ * All other protocols require the remote peer to be authenticated.
28
+ */ export const UNAUTHENTICATED_ALLOWED_PROTOCOLS = new Set([
29
+ ReqRespSubProtocol.PING,
30
+ ReqRespSubProtocol.STATUS,
31
+ ReqRespSubProtocol.AUTH,
32
+ ReqRespSubProtocol.GOODBYE
33
+ ]);
29
34
  export const DEFAULT_SUB_PROTOCOL_VALIDATORS = {
30
35
  [ReqRespSubProtocol.PING]: noopValidator,
31
36
  [ReqRespSubProtocol.STATUS]: noopValidator,
32
37
  [ReqRespSubProtocol.TX]: noopValidator,
33
38
  [ReqRespSubProtocol.GOODBYE]: noopValidator,
34
- [ReqRespSubProtocol.BLOCK]: noopValidator,
35
39
  [ReqRespSubProtocol.AUTH]: noopValidator,
36
40
  [ReqRespSubProtocol.BLOCK_TXS]: noopValidator
37
41
  };
@@ -90,10 +94,6 @@ export const DEFAULT_SUB_PROTOCOL_VALIDATORS = {
90
94
  request: RequestableBuffer,
91
95
  response: RequestableBuffer
92
96
  },
93
- [ReqRespSubProtocol.BLOCK]: {
94
- request: Fr,
95
- response: L2Block
96
- },
97
97
  [ReqRespSubProtocol.AUTH]: {
98
98
  request: AuthRequest,
99
99
  response: AuthResponse
@@ -109,7 +109,6 @@ export const DEFAULT_SUB_PROTOCOL_VALIDATORS = {
109
109
  */ export const subProtocolSizeCalculators = {
110
110
  [ReqRespSubProtocol.TX]: calculateTxResponseSize,
111
111
  [ReqRespSubProtocol.BLOCK_TXS]: calculateBlockTxsResponseSize,
112
- [ReqRespSubProtocol.BLOCK]: ()=>MAX_L2_BLOCK_SIZE_KB,
113
112
  [ReqRespSubProtocol.STATUS]: ()=>1,
114
113
  [ReqRespSubProtocol.PING]: ()=>1,
115
114
  [ReqRespSubProtocol.AUTH]: ()=>1,
@@ -13,4 +13,4 @@ export declare class ReqRespMetrics {
13
13
  recordRequestError(protocol: ReqRespSubProtocol): void;
14
14
  recordResponseError(protocol: ReqRespSubProtocol): void;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFpQixNQUFNLHlCQUF5QixDQUFDO0FBRXRGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBELHFCQUFhLGNBQWM7SUFVdkIsUUFBUSxDQUFDLGVBQWUsRUFBRSxlQUFlO0lBVDNDLFNBQWdCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFFL0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQWdCO0lBQzdDLE9BQU8sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQWdCO0lBRWpELE9BQU8sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQWdCO0lBQ3ZELE9BQU8sQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQWdCO0lBRXRELFlBQ1csZUFBZSxFQUFFLGVBQWUsRUFDekMsSUFBSSxTQUFZLEVBa0NqQjtJQUVNLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsUUFFcEQ7SUFFTSxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLFFBRXhEO0lBRU0sa0JBQWtCLENBQUMsUUFBUSxFQUFFLGtCQUFrQixRQUVyRDtJQUVNLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsUUFFdEQ7Q0FDRiJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFpQixNQUFNLHlCQUF5QixDQUFDO0FBRXRGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBELHFCQUFhLGNBQWM7SUFVdkIsUUFBUSxDQUFDLGVBQWUsRUFBRSxlQUFlO0lBVDNDLFNBQWdCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFFL0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQWdCO0lBQzdDLE9BQU8sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQWdCO0lBRWpELE9BQU8sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQWdCO0lBQ3ZELE9BQU8sQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQWdCO0lBRXRELFlBQ1csZUFBZSxFQUFFLGVBQWUsRUFDekMsSUFBSSxTQUFZLEVBaUNqQjtJQUVNLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsUUFFcEQ7SUFFTSxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLFFBRXhEO0lBRU0sa0JBQWtCLENBQUMsUUFBUSxFQUFFLGtCQUFrQixRQUVyRDtJQUVNLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxrQkFBa0IsUUFFdEQ7Q0FDRiJ9
@@ -1 +1 @@
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,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,qBAAa,cAAc;IAUvB,QAAQ,CAAC,eAAe,EAAE,eAAe;IAT3C,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;IAEtD,YACW,eAAe,EAAE,eAAe,EACzC,IAAI,SAAY,EAkCjB;IAEM,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,QAEpD;IAEM,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,QAExD;IAEM,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,QAErD;IAEM,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,QAEtD;CACF"}
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,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,qBAAa,cAAc;IAUvB,QAAQ,CAAC,eAAe,EAAE,eAAe;IAT3C,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;IAEtD,YACW,eAAe,EAAE,eAAe,EACzC,IAAI,SAAY,EAiCjB;IAEM,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,QAEpD;IAEM,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,QAExD;IAEM,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,QAErD;IAEM,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,QAEtD;CACF"}
@@ -18,7 +18,6 @@ export class ReqRespMetrics {
18
18
  ReqRespSubProtocol.STATUS,
19
19
  ReqRespSubProtocol.GOODBYE,
20
20
  ReqRespSubProtocol.TX,
21
- ReqRespSubProtocol.BLOCK,
22
21
  ReqRespSubProtocol.AUTH,
23
22
  ReqRespSubProtocol.BLOCK_TXS
24
23
  ]
@@ -5,7 +5,6 @@ export * from './ping.js';
5
5
  export * from './status.js';
6
6
  export * from './tx.js';
7
7
  export * from './goodbye.js';
8
- export * from './block.js';
9
8
  export * from './auth.js';
10
9
  export * from './block_txs/index.js';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsc0JBQXNCLENBQUMifQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsc0JBQXNCLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC"}
@@ -4,6 +4,5 @@
4
4
  export * from './status.js';
5
5
  export * from './tx.js';
6
6
  export * from './goodbye.js';
7
- export * from './block.js';
8
7
  export * from './auth.js';
9
8
  export * from './block_txs/index.js';
@@ -26,4 +26,4 @@ export declare function chunkTxHashesRequest(hashes: TxHash[], chunkSize?: numbe
26
26
  * @returns Expected response size in KB
27
27
  */
28
28
  export declare function calculateTxResponseSize(requestBuffer: Buffer): number;
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy90eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQVcsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSWhFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakU7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxHQUFHLHlCQUF5QixDQXdCOUU7QUFFRDs7Ozs7Ozs7R0FRRztBQUdILHdCQUFnQixvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxTQUFJLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUV4RjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsdUJBQXVCLENBQUMsYUFBYSxFQUFFLE1BQU0sR0FBRyxNQUFNLENBY3JFIn0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy90eC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQVcsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSWhFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakU7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxHQUFHLHlCQUF5QixDQXdCOUU7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxTQUFJLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUV4RjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsdUJBQXVCLENBQUMsYUFBYSxFQUFFLE1BQU0sR0FBRyxNQUFNLENBY3JFIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/tx.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,MAAM,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAGjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAwB9E;AAED;;;;;;;;GAQG;AAGH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAExF;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAcrE"}
1
+ {"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/tx.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,MAAM,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAGjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAwB9E;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAExF;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAcrE"}
@@ -42,9 +42,7 @@ import { ReqRespStatus, ReqRespStatusError } from '../status.js';
42
42
  * @param chunkSize - The size of each chunk. Default is 8. Reasoning:
43
43
  * Per: https://github.com/AztecProtocol/aztec-packages/issues/15149#issuecomment-2999054485
44
44
  * we define Q as max number of transactions per batch, the comment explains why we use 8.
45
- */ //TODO: (mralj) chunk size should by default be 8, this is just temporary until the protocol is implemented correctly
46
- //more info: https://github.com/AztecProtocol/aztec-packages/pull/15516#pullrequestreview-2995474321
47
- export function chunkTxHashesRequest(hashes, chunkSize = 1) {
45
+ */ export function chunkTxHashesRequest(hashes, chunkSize = 8) {
48
46
  return chunk(hashes, chunkSize).map((chunk)=>new TxHashArray(...chunk));
49
47
  }
50
48
  /**
@@ -46,9 +46,10 @@ export declare function prettyPrintRateLimitStatus(status: RateLimitStatus): "Al
46
46
  * 2. Individual rate limits for each peer.
47
47
  *
48
48
  * How it works:
49
- * - When a request comes in, it first checks against the global rate limit.
50
- * - If the global limit allows, it then checks against the specific peer's rate limit.
51
- * - The request is only allowed if both the global and peer-specific limits allow it.
49
+ * - When a request comes in, it first checks against the peer's individual rate limit.
50
+ * - If the peer limit allows, it then checks against the global rate limit.
51
+ * - The request is only allowed if both the peer-specific and global limits allow it.
52
+ * - Checking peer limit first ensures a rate-limited peer cannot exhaust the global quota.
52
53
  * - It automatically creates and manages rate limiters for new peers as they make requests.
53
54
  * - It periodically cleans up rate limiters for inactive peers to conserve memory.
54
55
  *
@@ -101,4 +102,4 @@ export declare class RequestResponseRateLimiter {
101
102
  stop(): void;
102
103
  getRateLimits(protocol: ReqRespSubProtocol): ProtocolRateLimitQuota;
103
104
  }
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZV9saW1pdGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9yYXRlLWxpbWl0ZXIvcmF0ZV9saW1pdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLDRCQUE0QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNaEg7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxxQkFBYSxlQUFlO0lBRTFCLE9BQU8sQ0FBQyxHQUFHLENBQVM7SUFFcEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBUztJQUUxQyxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBUztJQUV2Qzs7O09BR0c7SUFDSCxZQUFZLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFJbEQ7SUFFRCxLQUFLLElBQUksT0FBTyxDQVVmO0NBQ0Y7QUFTRCxvQkFBWSxlQUFlO0lBQ3pCLFlBQVksSUFBQTtJQUNaLFVBQVUsSUFBQTtJQUNWLE9BQU8sSUFBQTtDQUNSO0FBRUQsd0JBQWdCLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxlQUFlLDZDQVNqRTtBQUVEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILHFCQUFhLHNCQUFzQjtJQUNqQyxPQUFPLENBQUMsWUFBWSxDQUEyQztJQUMvRCxPQUFPLENBQUMsYUFBYSxDQUFrQjtJQUN2QyxPQUFPLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBUztJQUN4QyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBUztJQUV6QyxZQUFZLGNBQWMsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUsvRztJQUVELEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLGVBQWUsQ0FzQnJDO0lBRUQsb0JBQW9CLFNBT25CO0NBQ0Y7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUNILHFCQUFhLDBCQUEwQjtJQU9uQyxPQUFPLENBQUMsV0FBVztJQU5yQixPQUFPLENBQUMsdUJBQXVCLENBQWtEO0lBQ2pGLE9BQU8sQ0FBQyxVQUFVLENBQStCO0lBRWpELE9BQU8sQ0FBQyxlQUFlLENBQXlDO0lBRWhFLFlBQ1UsV0FBVyxFQUFFLFdBQVcsRUFDaEMsVUFBVSxHQUFFLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBTSxFQWdCdkQ7SUFFRCxLQUFLLFNBSUo7SUFFRCxLQUFLLENBQUMsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZUFBZSxDQVd0RTtJQUVELG9CQUFvQixTQUVuQjtJQUVEOztPQUVHO0lBQ0gsSUFBSSxTQUVIO0lBRUQsYUFBYSxDQUFDLFFBQVEsRUFBRSxrQkFBa0IsR0FBRyxzQkFBc0IsQ0FFbEU7Q0FDRiJ9
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZV9saW1pdGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9yYXRlLWxpbWl0ZXIvcmF0ZV9saW1pdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLDRCQUE0QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNaEg7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxxQkFBYSxlQUFlO0lBRTFCLE9BQU8sQ0FBQyxHQUFHLENBQVM7SUFFcEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBUztJQUUxQyxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBUztJQUV2Qzs7O09BR0c7SUFDSCxZQUFZLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFJbEQ7SUFFRCxLQUFLLElBQUksT0FBTyxDQVVmO0NBQ0Y7QUFTRCxvQkFBWSxlQUFlO0lBQ3pCLFlBQVksSUFBQTtJQUNaLFVBQVUsSUFBQTtJQUNWLE9BQU8sSUFBQTtDQUNSO0FBRUQsd0JBQWdCLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxlQUFlLDZDQVNqRTtBQUVEOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gscUJBQWEsc0JBQXNCO0lBQ2pDLE9BQU8sQ0FBQyxZQUFZLENBQTJDO0lBQy9ELE9BQU8sQ0FBQyxhQUFhLENBQWtCO0lBQ3ZDLE9BQU8sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFTO0lBQ3hDLE9BQU8sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFTO0lBRXpDLFlBQVksY0FBYyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBSy9HO0lBRUQsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZUFBZSxDQXlCckM7SUFFRCxvQkFBb0IsU0FPbkI7Q0FDRjtBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBQ0gscUJBQWEsMEJBQTBCO0lBT25DLE9BQU8sQ0FBQyxXQUFXO0lBTnJCLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBa0Q7SUFDakYsT0FBTyxDQUFDLFVBQVUsQ0FBK0I7SUFFakQsT0FBTyxDQUFDLGVBQWUsQ0FBeUM7SUFFaEUsWUFDVSxXQUFXLEVBQUUsV0FBVyxFQUNoQyxVQUFVLEdBQUUsT0FBTyxDQUFDLDRCQUE0QixDQUFNLEVBZ0J2RDtJQUVELEtBQUssU0FJSjtJQUVELEtBQUssQ0FBQyxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxlQUFlLENBV3RFO0lBRUQsb0JBQW9CLFNBRW5CO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFNBRUg7SUFFRCxhQUFhLENBQUMsUUFBUSxFQUFFLGtCQUFrQixHQUFHLHNCQUFzQixDQUVsRTtDQUNGIn0=
@@ -1 +1 @@
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,sBAAsB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAMhH;;;;;;;;;;;;;;;;;;;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;IACH,YAAY,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAIlD;IAED,KAAK,IAAI,OAAO,CAUf;CACF;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;IAEzC,YAAY,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAK/G;IAED,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAsBrC;IAED,oBAAoB,SAOnB;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,0BAA0B;IAOnC,OAAO,CAAC,WAAW;IANrB,OAAO,CAAC,uBAAuB,CAAkD;IACjF,OAAO,CAAC,UAAU,CAA+B;IAEjD,OAAO,CAAC,eAAe,CAAyC;IAEhE,YACU,WAAW,EAAE,WAAW,EAChC,UAAU,GAAE,OAAO,CAAC,4BAA4B,CAAM,EAgBvD;IAED,KAAK,SAIJ;IAED,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe,CAWtE;IAED,oBAAoB,SAEnB;IAED;;OAEG;IACH,IAAI,SAEH;IAED,aAAa,CAAC,QAAQ,EAAE,kBAAkB,GAAG,sBAAsB,CAElE;CACF"}
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,sBAAsB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAMhH;;;;;;;;;;;;;;;;;;;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;IACH,YAAY,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAIlD;IAED,KAAK,IAAI,OAAO,CAUf;CACF;AASD,oBAAY,eAAe;IACzB,YAAY,IAAA;IACZ,UAAU,IAAA;IACV,OAAO,IAAA;CACR;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,6CASjE;AAED;;;;;;;;;;;;;;;;GAgBG;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;IAEzC,YAAY,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAK/G;IAED,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAyBrC;IAED,oBAAoB,SAOnB;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,0BAA0B;IAOnC,OAAO,CAAC,WAAW;IANrB,OAAO,CAAC,uBAAuB,CAAkD;IACjF,OAAO,CAAC,UAAU,CAA+B;IAEjD,OAAO,CAAC,eAAe,CAAyC;IAEhE,YACU,WAAW,EAAE,WAAW,EAChC,UAAU,GAAE,OAAO,CAAC,4BAA4B,CAAM,EAgBvD;IAED,KAAK,SAIJ;IAED,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe,CAWtE;IAED,oBAAoB,SAEnB;IAED;;OAEG;IACH,IAAI,SAEH;IAED,aAAa,CAAC,QAAQ,EAAE,kBAAkB,GAAG,sBAAsB,CAElE;CACF"}
@@ -74,9 +74,10 @@ export function prettyPrintRateLimitStatus(status) {
74
74
  * 2. Individual rate limits for each peer.
75
75
  *
76
76
  * How it works:
77
- * - When a request comes in, it first checks against the global rate limit.
78
- * - If the global limit allows, it then checks against the specific peer's rate limit.
79
- * - The request is only allowed if both the global and peer-specific limits allow it.
77
+ * - When a request comes in, it first checks against the peer's individual rate limit.
78
+ * - If the peer limit allows, it then checks against the global rate limit.
79
+ * - The request is only allowed if both the peer-specific and global limits allow it.
80
+ * - Checking peer limit first ensures a rate-limited peer cannot exhaust the global quota.
80
81
  * - It automatically creates and manages rate limiters for new peers as they make requests.
81
82
  * - It periodically cleans up rate limiters for inactive peers to conserve memory.
82
83
  *
@@ -93,9 +94,6 @@ export function prettyPrintRateLimitStatus(status) {
93
94
  this.peerQuotaTimeMs = peerQuotaTimeMs;
94
95
  }
95
96
  allow(peerId) {
96
- if (!this.globalLimiter.allow()) {
97
- return 0;
98
- }
99
97
  const peerIdStr = peerId.toString();
100
98
  let peerLimiter = this.peerLimiters.get(peerIdStr);
101
99
  if (!peerLimiter) {
@@ -108,10 +106,14 @@ export function prettyPrintRateLimitStatus(status) {
108
106
  } else {
109
107
  peerLimiter.lastAccess = Date.now();
110
108
  }
111
- const peerLimitAllowed = peerLimiter.limiter.allow();
112
- if (!peerLimitAllowed) {
109
+ // Check peer limit first: a rate-limited peer must not consume global quota,
110
+ // otherwise one spamming peer can starve all others by exhausting the global bucket.
111
+ if (!peerLimiter.limiter.allow()) {
113
112
  return 1;
114
113
  }
114
+ if (!this.globalLimiter.allow()) {
115
+ return 0;
116
+ }
115
117
  return 2;
116
118
  }
117
119
  cleanupInactivePeers() {
@@ -1,3 +1,3 @@
1
1
  import { type ReqRespSubProtocolRateLimits } from '../interface.js';
2
2
  export declare const DEFAULT_RATE_LIMITS: ReqRespSubProtocolRateLimits;
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZV9saW1pdHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3JhdGUtbGltaXRlci9yYXRlX2xpbWl0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLEtBQUssNEJBQTRCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd4RixlQUFPLE1BQU0sbUJBQW1CLEVBQUUsNEJBdUVqQyxDQUFDIn0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZV9saW1pdHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3JhdGUtbGltaXRlci9yYXRlX2xpbWl0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLEtBQUssNEJBQTRCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd4RixlQUFPLE1BQU0sbUJBQW1CLEVBQUUsNEJBNkRqQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"rate_limits.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/rate-limiter/rate_limits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAGxF,eAAO,MAAM,mBAAmB,EAAE,4BAuEjC,CAAC"}
1
+ {"version":3,"file":"rate_limits.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/rate-limiter/rate_limits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAGxF,eAAO,MAAM,mBAAmB,EAAE,4BA6DjC,CAAC"}
@@ -41,16 +41,6 @@ export const DEFAULT_RATE_LIMITS = {
41
41
  quotaCount: 200
42
42
  }
43
43
  },
44
- [ReqRespSubProtocol.BLOCK]: {
45
- peerLimit: {
46
- quotaTimeMs: 1000,
47
- quotaCount: 2
48
- },
49
- globalLimit: {
50
- quotaTimeMs: 1000,
51
- quotaCount: 5
52
- }
53
- },
54
44
  [ReqRespSubProtocol.GOODBYE]: {
55
45
  peerLimit: {
56
46
  quotaTimeMs: 1000,
@@ -4,7 +4,7 @@ import type { Libp2p } from 'libp2p';
4
4
  import type { PeerScoring } from '../peer-manager/peer_scoring.js';
5
5
  import { type P2PReqRespConfig } from './config.js';
6
6
  import { ConnectionSampler } from './connection-sampler/connection_sampler.js';
7
- import { type ReqRespInterface, type ReqRespResponse, ReqRespSubProtocol, type ReqRespSubProtocolHandler, type ReqRespSubProtocolHandlers, type ReqRespSubProtocolRateLimits, type ReqRespSubProtocolValidators, type SubProtocolMap } from './interface.js';
7
+ import { type ReqRespInterface, type ReqRespResponse, ReqRespSubProtocol, type ReqRespSubProtocolHandler, type ReqRespSubProtocolHandlers, type ReqRespSubProtocolRateLimits, type ReqRespSubProtocolValidators, type ShouldRejectPeer, type SubProtocolMap } from './interface.js';
8
8
  /**
9
9
  * The Request Response Service
10
10
  *
@@ -30,9 +30,11 @@ export declare class ReqResp implements ReqRespInterface {
30
30
  private connectionSampler;
31
31
  private rateLimiter;
32
32
  private snappyTransform;
33
+ private shouldRejectPeer;
33
34
  private metrics;
34
35
  constructor(config: P2PReqRespConfig, libp2p: Libp2p, peerScoring: PeerScoring, logger?: import("@aztec/foundation/log").Logger, rateLimits?: Partial<ReqRespSubProtocolRateLimits>, telemetryClient?: TelemetryClient);
35
36
  updateConfig(config: Partial<P2PReqRespConfig>): void;
37
+ setShouldRejectPeer(checker: ShouldRejectPeer): void;
36
38
  get tracer(): import("@aztec/telemetry-client").Tracer;
37
39
  /**
38
40
  * Get the connection sampler instance
@@ -126,4 +128,4 @@ export declare class ReqResp implements ReqRespInterface {
126
128
  private categorizeResponseError;
127
129
  private categorizeConnectionErrors;
128
130
  }
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxcmVzcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcmVxcmVzcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsS0FBSyxlQUFlLEVBQWlDLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsT0FBTyxLQUFLLEVBQXNCLE1BQU0sRUFBVSxNQUFNLG1CQUFtQixDQUFDO0FBQzVFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQVVyQyxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBR0wsS0FBSyxnQkFBZ0IsRUFDdEIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixNQUFNLDRDQUE0QyxDQUFDO0FBQzlGLE9BQU8sRUFFTCxLQUFLLGdCQUFnQixFQUNyQixLQUFLLGVBQWUsRUFDcEIsa0JBQWtCLEVBQ2xCLEtBQUsseUJBQXlCLEVBQzlCLEtBQUssMEJBQTBCLEVBQy9CLEtBQUssNEJBQTRCLEVBQ2pDLEtBQUssNEJBQTRCLEVBQ2pDLEtBQUssY0FBYyxFQUdwQixNQUFNLGdCQUFnQixDQUFDO0FBU3hCOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxxQkFBYSxPQUFRLFlBQVcsZ0JBQWdCO0lBZ0I1QyxPQUFPLENBQUMsTUFBTTtJQUNkLE9BQU8sQ0FBQyxXQUFXO0lBQ25CLE9BQU8sQ0FBQyxNQUFNO0lBakJoQixPQUFPLENBQUMsMEJBQTBCLENBQWlEO0lBQ25GLE9BQU8sQ0FBQyxhQUFhLENBQTJDO0lBRWhFLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBMkM7SUFDdEUsT0FBTyxDQUFDLHFCQUFxQixDQUE2QztJQUUxRSxPQUFPLENBQUMsaUJBQWlCLENBQW9CO0lBQzdDLE9BQU8sQ0FBQyxXQUFXLENBQTZCO0lBRWhELE9BQU8sQ0FBQyxlQUFlLENBQWtCO0lBRXpDLE9BQU8sQ0FBQyxPQUFPLENBQWlCO0lBRWhDLFlBQ0UsTUFBTSxFQUFFLGdCQUFnQixFQUNoQixNQUFNLEVBQUUsTUFBTSxFQUNkLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLE1BQU0seUNBQThCLEVBQzVDLFVBQVUsR0FBRSxPQUFPLENBQUMsNEJBQTRCLENBQU0sRUFDdEQsZUFBZSxHQUFFLGVBQXNDLEVBZ0J4RDtJQUVNLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsSUFBSSxDQVEzRDtJQUVELElBQUksTUFBTSw2Q0FFVDtJQUVEOztPQUVHO0lBQ0gsb0JBQW9CLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLHVDQUF1QyxDQUFDLENBRXZGO0lBRUQ7O09BRUc7SUFDRyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsNEJBQTRCLGlCQWdCL0c7SUFFSyxjQUFjLENBQ2xCLFdBQVcsRUFBRSxrQkFBa0IsRUFDL0IsT0FBTyxFQUFFLHlCQUF5QixFQUNsQyxTQUFTLEdBQUUsNEJBQTRCLENBQUMsa0JBQWtCLENBQWdELEdBQ3pHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FXZjtJQUVEOztPQUVHO0lBQ0csSUFBSSxrQkFrQlQ7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BcUJHO0lBUUcsZ0JBQWdCLENBQUMsV0FBVyxTQUFTLGtCQUFrQixFQUMzRCxXQUFXLEVBQUUsV0FBVyxFQUN4QixRQUFRLEVBQUUsWUFBWSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQ2hFLFVBQVUsRUFBRSxNQUFNLEdBQUcsU0FBUyxFQUM5QixTQUFTLFNBQVEsRUFDakIsUUFBUSxTQUErQyxFQUN2RCxnQkFBZ0IsU0FBSSxHQUNuQixPQUFPLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FxTGxFO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXdCRztJQUtVLGlCQUFpQixDQUM1QixNQUFNLEVBQUUsTUFBTSxFQUNkLFdBQVcsRUFBRSxrQkFBa0IsRUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFDZixXQUFXLEdBQUUsTUFBMkIsR0FDdkMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQTJEMUI7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCxPQUFPLENBQUMsbUJBQW1CO1lBaUJiLFdBQVc7WUFrRVgsYUFBYTtZQWlFYixhQUFhO1lBd0NiLFlBQVk7SUFtQzFCLE9BQU8sQ0FBQyxrQkFBa0I7SUFPMUI7Ozs7T0FJRztJQUNILE9BQU8sQ0FBQyxzQkFBc0I7SUFpQjlCOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsdUJBQXVCO0lBeUIvQixPQUFPLENBQUMsMEJBQTBCO0NBOERuQyJ9
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxcmVzcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcmVxcmVzcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsS0FBSyxlQUFlLEVBQWlDLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsT0FBTyxLQUFLLEVBQXNCLE1BQU0sRUFBVSxNQUFNLG1CQUFtQixDQUFDO0FBQzVFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQVVyQyxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBR0wsS0FBSyxnQkFBZ0IsRUFDdEIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixNQUFNLDRDQUE0QyxDQUFDO0FBQzlGLE9BQU8sRUFFTCxLQUFLLGdCQUFnQixFQUNyQixLQUFLLGVBQWUsRUFDcEIsa0JBQWtCLEVBQ2xCLEtBQUsseUJBQXlCLEVBQzlCLEtBQUssMEJBQTBCLEVBQy9CLEtBQUssNEJBQTRCLEVBQ2pDLEtBQUssNEJBQTRCLEVBQ2pDLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssY0FBYyxFQUlwQixNQUFNLGdCQUFnQixDQUFDO0FBU3hCOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxxQkFBYSxPQUFRLFlBQVcsZ0JBQWdCO0lBa0I1QyxPQUFPLENBQUMsTUFBTTtJQUNkLE9BQU8sQ0FBQyxXQUFXO0lBQ25CLE9BQU8sQ0FBQyxNQUFNO0lBbkJoQixPQUFPLENBQUMsMEJBQTBCLENBQWlEO0lBQ25GLE9BQU8sQ0FBQyxhQUFhLENBQTJDO0lBRWhFLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBMkM7SUFDdEUsT0FBTyxDQUFDLHFCQUFxQixDQUE2QztJQUUxRSxPQUFPLENBQUMsaUJBQWlCLENBQW9CO0lBQzdDLE9BQU8sQ0FBQyxXQUFXLENBQTZCO0lBRWhELE9BQU8sQ0FBQyxlQUFlLENBQWtCO0lBRXpDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBK0I7SUFFdkQsT0FBTyxDQUFDLE9BQU8sQ0FBaUI7SUFFaEMsWUFDRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQ2hCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsV0FBVyxFQUFFLFdBQVcsRUFDeEIsTUFBTSx5Q0FBOEIsRUFDNUMsVUFBVSxHQUFFLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBTSxFQUN0RCxlQUFlLEdBQUUsZUFBc0MsRUFnQnhEO0lBRU0sWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBUTNEO0lBRU0sbUJBQW1CLENBQUMsT0FBTyxFQUFFLGdCQUFnQixHQUFHLElBQUksQ0FFMUQ7SUFFRCxJQUFJLE1BQU0sNkNBRVQ7SUFFRDs7T0FFRztJQUNILG9CQUFvQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSx1Q0FBdUMsQ0FBQyxDQUV2RjtJQUVEOztPQUVHO0lBQ0csS0FBSyxDQUFDLG1CQUFtQixFQUFFLDBCQUEwQixFQUFFLHFCQUFxQixFQUFFLDRCQUE0QixpQkFnQi9HO0lBRUssY0FBYyxDQUNsQixXQUFXLEVBQUUsa0JBQWtCLEVBQy9CLE9BQU8sRUFBRSx5QkFBeUIsRUFDbEMsU0FBUyxHQUFFLDRCQUE0QixDQUFDLGtCQUFrQixDQUFnRCxHQUN6RyxPQUFPLENBQUMsSUFBSSxDQUFDLENBV2Y7SUFFRDs7T0FFRztJQUNHLElBQUksa0JBa0JUO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXFCRztJQVFHLGdCQUFnQixDQUFDLFdBQVcsU0FBUyxrQkFBa0IsRUFDM0QsV0FBVyxFQUFFLFdBQVcsRUFDeEIsUUFBUSxFQUFFLFlBQVksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUNoRSxVQUFVLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFDOUIsU0FBUyxTQUFRLEVBQ2pCLFFBQVEsU0FBK0MsRUFDdkQsZ0JBQWdCLFNBQUksR0FDbkIsT0FBTyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLENBcUxsRTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F3Qkc7SUFLVSxpQkFBaUIsQ0FDNUIsTUFBTSxFQUFFLE1BQU0sRUFDZCxXQUFXLEVBQUUsa0JBQWtCLEVBQy9CLE9BQU8sRUFBRSxNQUFNLEVBQ2YsV0FBVyxHQUFFLE1BQTJCLEdBQ3ZDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0EyRDFCO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsT0FBTyxDQUFDLG1CQUFtQjtZQWlCYixXQUFXO1lBNERYLGFBQWE7WUEwRWIsYUFBYTtZQXdDYixZQUFZO0lBbUMxQixPQUFPLENBQUMsa0JBQWtCO0lBTzFCOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsc0JBQXNCO0lBaUI5Qjs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLHVCQUF1QjtJQXVDL0IsT0FBTyxDQUFDLDBCQUEwQjtDQThEbkMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"reqresp.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/reqresp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reqresp.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/reqresp.ts"],"names":[],"mappings":"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"}
@@ -380,11 +380,11 @@ import { PeerErrorSeverity } from '@aztec/stdlib/p2p';
380
380
  import { Attributes, getTelemetryClient, trackSpan } from '@aztec/telemetry-client';
381
381
  import { pipeline } from 'node:stream/promises';
382
382
  import { CollectiveReqRespTimeoutError, IndividualReqRespTimeoutError, InvalidResponseError } from '../../errors/reqresp.error.js';
383
- import { SnappyTransform } from '../encoding.js';
383
+ import { OversizedSnappyResponseError, SnappyTransform } from '../encoding.js';
384
384
  import { DEFAULT_INDIVIDUAL_REQUEST_TIMEOUT_MS, DEFAULT_REQRESP_DIAL_TIMEOUT_MS } from './config.js';
385
385
  import { BatchConnectionSampler } from './connection-sampler/batch_connection_sampler.js';
386
386
  import { ConnectionSampler, RandomSampler } from './connection-sampler/connection_sampler.js';
387
- import { DEFAULT_SUB_PROTOCOL_VALIDATORS, ReqRespSubProtocol, responseFromBuffer, subProtocolSizeCalculators } from './interface.js';
387
+ import { DEFAULT_SUB_PROTOCOL_VALIDATORS, ReqRespSubProtocol, UNAUTHENTICATED_ALLOWED_PROTOCOLS, responseFromBuffer, subProtocolSizeCalculators } from './interface.js';
388
388
  import { ReqRespMetrics } from './metrics.js';
389
389
  import { RateLimitStatus, RequestResponseRateLimiter, prettyPrintRateLimitStatus } from './rate-limiter/rate_limiter.js';
390
390
  import { ReqRespStatus, ReqRespStatusError, parseStatusChunk, prettyPrintReqRespStatus } from './status.js';
@@ -441,6 +441,7 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
441
441
  connectionSampler;
442
442
  rateLimiter;
443
443
  snappyTransform;
444
+ shouldRejectPeer;
444
445
  metrics;
445
446
  constructor(config, libp2p, peerScoring, logger = createLogger('p2p:reqresp'), rateLimits = {}, telemetryClient = getTelemetryClient()){
446
447
  this.libp2p = libp2p;
@@ -465,6 +466,9 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
465
466
  this.dialTimeoutMs = config.dialTimeoutMs;
466
467
  }
467
468
  }
469
+ setShouldRejectPeer(checker) {
470
+ this.shouldRejectPeer = checker;
471
+ }
468
472
  get tracer() {
469
473
  return this.metrics.tracer;
470
474
  }
@@ -611,7 +615,7 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
611
615
  return status === ReqRespStatus.RATE_LIMIT_EXCEEDED;
612
616
  };
613
617
  for (const index of indices){
614
- this.logger.info(`Sending request ${index} to peer ${peerAsString}`);
618
+ this.logger.trace(`Sending request ${index} to peer ${peerAsString}`);
615
619
  const response = await this.sendRequestToPeer(peer, subProtocol, requestBuffers[index]);
616
620
  // Check the status of the response buffer
617
621
  if (response.status !== ReqRespStatus.SUCCESS) {
@@ -729,7 +733,7 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
729
733
  ]), this.individualRequestTimeoutMs, ()=>timeoutErr);
730
734
  return resp;
731
735
  } catch (e) {
732
- this.logger.warn(`SUBPROTOCOL: ${subProtocol}\n`, e);
736
+ this.logger.debug(`SUBPROTOCOL: ${subProtocol}\n`, e);
733
737
  // On error we immediately abort the stream, this is preferred way,
734
738
  // because it signals to the sender that error happened, whereas
735
739
  // closing the stream only closes our side and is much slower
@@ -807,14 +811,10 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
807
811
  data: message
808
812
  };
809
813
  } catch (e) {
814
+ // All errors (invalid status bytes, oversized snappy responses, corrupt data, etc.)
815
+ // are re-thrown so the caller can penalize the peer via handleResponseError.
810
816
  this.logger.debug(`Reading message failed: ${e.message}`);
811
- let status = ReqRespStatus.UNKNOWN;
812
- if (e instanceof ReqRespStatusError) {
813
- status = e.status;
814
- }
815
- return {
816
- status
817
- };
817
+ throw e;
818
818
  }
819
819
  }
820
820
  /**
@@ -842,6 +842,11 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
842
842
  this.logger.verbose(`Rate limit exceeded ${prettyPrintRateLimitStatus(rateLimitStatus)} for ${protocol} from ${connection.remotePeer}`);
843
843
  throw new ReqRespStatusError(ReqRespStatus.RATE_LIMIT_EXCEEDED);
844
844
  }
845
+ // When p2pAllowOnlyValidators is enabled, reject unauthenticated peers on data protocols
846
+ if (!UNAUTHENTICATED_ALLOWED_PROTOCOLS.has(protocol) && (this.shouldRejectPeer?.(connection.remotePeer.toString()) ?? false)) {
847
+ this.logger.debug(`Rejecting unauthenticated peer ${connection.remotePeer} on gated protocol ${protocol}`);
848
+ throw new ReqRespStatusError(ReqRespStatus.FAILURE);
849
+ }
845
850
  await this.processStream(protocol, incomingStream);
846
851
  } catch (err) {
847
852
  this.metrics.recordResponseError(protocol);
@@ -978,6 +983,18 @@ _dec = trackSpan('ReqResp.sendBatchRequest', (subProtocol, requests)=>({
978
983
  this.logger.debug(`Non-punishable error in ${subProtocol}: ${e.message}`, logTags);
979
984
  return undefined;
980
985
  }
986
+ // Invalid status byte: the peer sent a status byte that doesn't match any known status code.
987
+ // This is a protocol violation, penalize harshly.
988
+ if (e instanceof ReqRespStatusError) {
989
+ this.logger.warn(`Invalid status byte from peer ${peerId.toString()} in ${subProtocol}: ${e.message}`, logTags);
990
+ return PeerErrorSeverity.LowToleranceError;
991
+ }
992
+ // Oversized snappy response: the peer is sending data that exceeds the allowed size.
993
+ // This is a protocol violation that wastes bandwidth, so penalize harshly.
994
+ if (e instanceof OversizedSnappyResponseError) {
995
+ this.logger.warn(`Oversized response from peer ${peerId.toString()} in ${subProtocol}: ${e.message}`, logTags);
996
+ return PeerErrorSeverity.LowToleranceError;
997
+ }
981
998
  return this.categorizeConnectionErrors(e, peerId, subProtocol);
982
999
  }
983
1000
  /*
@@ -79,7 +79,10 @@ export interface P2PService {
79
79
  */
80
80
  sendBatchRequest<Protocol extends ReqRespSubProtocol>(protocol: Protocol, requests: InstanceType<SubProtocolMap[Protocol]['request']>[], pinnedPeerId?: PeerId, timeoutMs?: number, maxPeers?: number, maxRetryAttempts?: number): Promise<InstanceType<SubProtocolMap[Protocol]['response']>[]>;
81
81
  registerBlockReceivedCallback(callback: P2PBlockReceivedCallback): void;
82
- registerCheckpointReceivedCallback(callback: P2PCheckpointReceivedCallback): void;
82
+ registerValidatorCheckpointReceivedCallback(callback: P2PCheckpointReceivedCallback): void;
83
+ registerAllNodesCheckpointReceivedCallback(callback: P2PCheckpointReceivedCallback): void;
84
+ /** Fires the all-nodes checkpoint callback for our own proposal (gossipsub doesn't deliver own messages). */
85
+ notifyOwnCheckpointProposal(checkpoint: CheckpointProposalCore): Promise<void>;
83
86
  /**
84
87
  * Registers a callback invoked when a duplicate proposal is detected (equivocation).
85
88
  * The callback is triggered on the first duplicate (when count goes from 1 to 2).
@@ -140,4 +143,4 @@ export interface PeerDiscoveryService extends EventEmitter {
140
143
  getEnr(): ENR | undefined;
141
144
  bootstrapNodeEnrs: ENR[];
142
145
  }
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsVUFBVSxFQUNWLFNBQVMsRUFDVixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTNDLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxZQUFZLE1BQU0sUUFBUSxDQUFDO0FBRXZDLE9BQU8sS0FBSyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDL0YsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEtBQUssRUFDVixrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLDRCQUE0QixFQUM1QixjQUFjLEVBQ2YsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFN0Usb0JBQVksa0JBQWtCO0lBQzVCLE9BQU8sWUFBWTtJQUNuQixPQUFPLFlBQVk7Q0FDcEI7QUFFRDs7OztHQUlHO0FB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
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsVUFBVSxFQUNWLFNBQVMsRUFDVixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTNDLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxZQUFZLE1BQU0sUUFBUSxDQUFDO0FBRXZDLE9BQU8sS0FBSyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDL0YsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEtBQUssRUFDVixrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLDRCQUE0QixFQUM1QixjQUFjLEVBQ2YsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFN0Usb0JBQVksa0JBQWtCO0lBQzVCLE9BQU8sWUFBWTtJQUNuQixPQUFPLFlBQVk7Q0FDcEI7QUFFRDs7OztHQUlHO0FB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
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/services/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/services/service.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { BlockNumber } from '@aztec/foundation/branded-types';
2
2
  import { type Logger } from '@aztec/foundation/log';
3
3
  import { DateProvider } from '@aztec/foundation/timer';
4
- import type { BlockProposal } from '@aztec/stdlib/p2p';
5
4
  import { type Tx, TxHash } from '@aztec/stdlib/tx';
6
5
  import type { PeerId } from '@libp2p/interface';
7
6
  import type { BatchTxRequesterLibP2PService } from '../reqresp/batch-tx-requester/interface.js';
@@ -26,8 +25,6 @@ export declare class FastTxCollection {
26
25
  pinnedPeer?: PeerId;
27
26
  }): Promise<Tx[]>;
28
27
  protected collectFast(request: FastCollectionRequest, opts: {
29
- proposal?: BlockProposal;
30
- deadline: Date;
31
28
  pinnedPeer?: PeerId;
32
29
  }): Promise<void>;
33
30
  private collectFastFromNodes;
@@ -51,4 +48,4 @@ export declare class FastTxCollection {
51
48
  */
52
49
  stopCollectingForBlocksAfter(blockNumber: BlockNumber): void;
53
50
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFzdF90eF9jb2xsZWN0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvdHhfY29sbGVjdGlvbi9mYXN0X3R4X2NvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRzlELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRSxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5ELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR2hELE9BQU8sS0FBSyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEcsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdEQsT0FBTyxFQUVMLEtBQUssbUJBQW1CLEVBRXpCLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM1RixPQUFPLEtBQUssRUFBZ0IsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxxQkFBYSxnQkFBZ0I7SUFPekIsT0FBTyxDQUFDLEtBQUs7SUFDYixPQUFPLENBQUMsZ0JBQWdCO0lBQ3hCLE9BQU8sQ0FBQyxNQUFNO0lBQ2QsT0FBTyxDQUFDLFlBQVk7SUFDcEIsT0FBTyxDQUFDLEdBQUc7SUFUYixTQUFTLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFhO0lBQzNELE9BQU8sQ0FBQyxtQkFBbUIsQ0FBc0I7SUFFakQsWUFDRSxVQUFVLEVBQUUsNkJBQTZCLEVBQ2pDLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFDakIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLE1BQU0sRUFBRSxrQkFBa0IsRUFDMUIsWUFBWSxHQUFFLFlBQWlDLEVBQy9DLEdBQUcsR0FBRSxNQUFrRCxFQUMvRCxtQkFBbUIsQ0FBQyxFQUFFLG1CQUFtQixFQVMxQztJQUVZLElBQUksa0JBR2hCO0lBRU0seUJBQXlCLCtCQUUvQjtJQUVZLGNBQWMsQ0FDekIsS0FBSyxFQUFFLDBCQUEwQixFQUNqQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQzdCLElBQUksRUFBRTtRQUFFLFFBQVEsRUFBRSxJQUFJLENBQUM7UUFBQyxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxpQkEwQzlDO0lBRUQsVUFBZ0IsV0FBVyxDQUN6QixPQUFPLEVBQUUscUJBQXFCLEVBQzlCLElBQUksRUFBRTtRQUFFLFFBQVEsQ0FBQyxFQUFFLGFBQWEsQ0FBQztRQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7UUFBQyxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxpQkErQ3hFO1lBUWEsb0JBQW9CO1lBZ0JwQixtQkFBbUI7WUF5Rm5CLHFCQUFxQjtJQXlEbkMseUdBQXlHO0lBQ3pHLE9BQU8sQ0FBQyxhQUFhO0lBUXJCOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLFFBc0J4QjtJQUVEOzs7T0FHRztJQUNJLDJCQUEyQixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsSUFBSSxDQU9qRTtJQUVEOzs7T0FHRztJQUNJLDRCQUE0QixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsSUFBSSxDQU9sRTtDQUNGIn0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFzdF90eF9jb2xsZWN0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvdHhfY29sbGVjdGlvbi9mYXN0X3R4X2NvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5ELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR2hELE9BQU8sS0FBSyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEcsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdEQsT0FBTyxFQUVMLEtBQUssbUJBQW1CLEVBRXpCLE1BQU0sNEJBQTRCLENBQUM7QUFFcEMsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM1RixPQUFPLEtBQUssRUFBZ0IsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQyxxQkFBYSxnQkFBZ0I7SUFPekIsT0FBTyxDQUFDLEtBQUs7SUFDYixPQUFPLENBQUMsZ0JBQWdCO0lBQ3hCLE9BQU8sQ0FBQyxNQUFNO0lBQ2QsT0FBTyxDQUFDLFlBQVk7SUFDcEIsT0FBTyxDQUFDLEdBQUc7SUFUYixTQUFTLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFhO0lBQzNELE9BQU8sQ0FBQyxtQkFBbUIsQ0FBc0I7SUFFakQsWUFDRSxVQUFVLEVBQUUsNkJBQTZCLEVBQ2pDLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFDakIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLE1BQU0sRUFBRSxrQkFBa0IsRUFDMUIsWUFBWSxHQUFFLFlBQWlDLEVBQy9DLEdBQUcsR0FBRSxNQUFrRCxFQUMvRCxtQkFBbUIsQ0FBQyxFQUFFLG1CQUFtQixFQVMxQztJQUVZLElBQUksa0JBS2hCO0lBRU0seUJBQXlCLCtCQUUvQjtJQUVZLGNBQWMsQ0FDekIsS0FBSyxFQUFFLDBCQUEwQixFQUNqQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQzdCLElBQUksRUFBRTtRQUFFLFFBQVEsRUFBRSxJQUFJLENBQUM7UUFBQyxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxpQkFrQzlDO0lBRUQsVUFBZ0IsV0FBVyxDQUFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxJQUFJLEVBQUU7UUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxpQkF5Q3hGO1lBUWEsb0JBQW9CO1lBZ0JwQixtQkFBbUI7WUEwRm5CLHFCQUFxQjtJQWtEbkMseUdBQXlHO0lBQ3pHLE9BQU8sQ0FBQyxhQUFhO0lBUXJCOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLFFBcUJ4QjtJQUVEOzs7T0FHRztJQUNJLDJCQUEyQixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsSUFBSSxDQU1qRTtJQUVEOzs7T0FHRztJQUNJLDRCQUE0QixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsSUFBSSxDQU1sRTtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"fast_tx_collection.d.ts","sourceRoot":"","sources":["../../../src/services/tx_collection/fast_tx_collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,YAAY,EAAW,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAgB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,GAAG;IATb,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAa;IAC3D,OAAO,CAAC,mBAAmB,CAAsB;IAEjD,YACE,UAAU,EAAE,6BAA6B,EACjC,KAAK,EAAE,QAAQ,EAAE,EACjB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,kBAAkB,EAC1B,YAAY,GAAE,YAAiC,EAC/C,GAAG,GAAE,MAAkD,EAC/D,mBAAmB,CAAC,EAAE,mBAAmB,EAS1C;IAEY,IAAI,kBAGhB;IAEM,yBAAyB,+BAE/B;IAEY,cAAc,CACzB,KAAK,EAAE,0BAA0B,EACjC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,EAC7B,IAAI,EAAE;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,iBA0C9C;IAED,UAAgB,WAAW,CACzB,OAAO,EAAE,qBAAqB,EAC9B,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,aAAa,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,iBA+CxE;YAQa,oBAAoB;YAgBpB,mBAAmB;YAyFnB,qBAAqB;IAyDnC,yGAAyG;IACzG,OAAO,CAAC,aAAa;IAQrB;;;OAGG;IACI,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,QAsBxB;IAED;;;OAGG;IACI,2BAA2B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAOjE;IAED;;;OAGG;IACI,4BAA4B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAOlE;CACF"}
1
+ {"version":3,"file":"fast_tx_collection.d.ts","sourceRoot":"","sources":["../../../src/services/tx_collection/fast_tx_collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,YAAY,EAAW,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAgB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,GAAG;IATb,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAa;IAC3D,OAAO,CAAC,mBAAmB,CAAsB;IAEjD,YACE,UAAU,EAAE,6BAA6B,EACjC,KAAK,EAAE,QAAQ,EAAE,EACjB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,kBAAkB,EAC1B,YAAY,GAAE,YAAiC,EAC/C,GAAG,GAAE,MAAkD,EAC/D,mBAAmB,CAAC,EAAE,mBAAmB,EAS1C;IAEY,IAAI,kBAKhB;IAEM,yBAAyB,+BAE/B;IAEY,cAAc,CACzB,KAAK,EAAE,0BAA0B,EACjC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,EAC7B,IAAI,EAAE;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,iBAkC9C;IAED,UAAgB,WAAW,CAAC,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,iBAyCxF;YAQa,oBAAoB;YAgBpB,mBAAmB;YA0FnB,qBAAqB;IAkDnC,yGAAyG;IACzG,OAAO,CAAC,aAAa;IAQrB;;;OAGG;IACI,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,QAqBxB;IAED;;;OAGG;IACI,2BAA2B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAMjE;IAED;;;OAGG;IACI,4BAA4B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAMlE;CACF"}