@aztec/p2p 0.0.0-test.1 → 0.0.1-commit.21caa21

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 (385) hide show
  1. package/dest/bootstrap/bootstrap.d.ts +1 -1
  2. package/dest/bootstrap/bootstrap.d.ts.map +1 -1
  3. package/dest/bootstrap/bootstrap.js +22 -9
  4. package/dest/client/factory.d.ts +14 -4
  5. package/dest/client/factory.d.ts.map +1 -1
  6. package/dest/client/factory.js +60 -24
  7. package/dest/client/index.d.ts +2 -1
  8. package/dest/client/index.d.ts.map +1 -1
  9. package/dest/client/index.js +1 -0
  10. package/dest/client/interface.d.ts +157 -0
  11. package/dest/client/interface.d.ts.map +1 -0
  12. package/dest/client/interface.js +9 -0
  13. package/dest/client/p2p_client.d.ts +72 -187
  14. package/dest/client/p2p_client.d.ts.map +1 -1
  15. package/dest/client/p2p_client.js +373 -177
  16. package/dest/config.d.ts +151 -125
  17. package/dest/config.d.ts.map +1 -1
  18. package/dest/config.js +183 -34
  19. package/dest/enr/generate-enr.d.ts +11 -3
  20. package/dest/enr/generate-enr.d.ts.map +1 -1
  21. package/dest/enr/generate-enr.js +27 -5
  22. package/dest/enr/index.d.ts +1 -1
  23. package/dest/errors/attestation-pool.error.d.ts +7 -0
  24. package/dest/errors/attestation-pool.error.d.ts.map +1 -0
  25. package/dest/errors/attestation-pool.error.js +12 -0
  26. package/dest/errors/reqresp.error.d.ts +1 -1
  27. package/dest/errors/reqresp.error.d.ts.map +1 -1
  28. package/dest/index.d.ts +4 -1
  29. package/dest/index.d.ts.map +1 -1
  30. package/dest/index.js +2 -0
  31. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +68 -8
  32. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
  33. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts +1 -1
  34. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts.map +1 -1
  35. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +214 -63
  36. package/dest/mem_pools/attestation_pool/index.d.ts +1 -1
  37. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts +21 -6
  38. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts.map +1 -1
  39. package/dest/mem_pools/attestation_pool/kv_attestation_pool.js +126 -25
  40. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts +19 -6
  41. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts.map +1 -1
  42. package/dest/mem_pools/attestation_pool/memory_attestation_pool.js +111 -21
  43. package/dest/mem_pools/attestation_pool/mocks.d.ts +225 -5
  44. package/dest/mem_pools/attestation_pool/mocks.d.ts.map +1 -1
  45. package/dest/mem_pools/attestation_pool/mocks.js +9 -15
  46. package/dest/mem_pools/index.d.ts +1 -1
  47. package/dest/mem_pools/instrumentation.d.ts +10 -12
  48. package/dest/mem_pools/instrumentation.d.ts.map +1 -1
  49. package/dest/mem_pools/instrumentation.js +35 -38
  50. package/dest/mem_pools/interface.d.ts +1 -1
  51. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +62 -13
  52. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +1 -1
  53. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +469 -97
  54. package/dest/mem_pools/tx_pool/index.d.ts +1 -1
  55. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts +34 -10
  56. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts.map +1 -1
  57. package/dest/mem_pools/tx_pool/memory_tx_pool.js +133 -36
  58. package/dest/mem_pools/tx_pool/priority.d.ts +1 -1
  59. package/dest/mem_pools/tx_pool/priority.js +1 -1
  60. package/dest/mem_pools/tx_pool/tx_pool.d.ts +65 -9
  61. package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +1 -1
  62. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +1 -1
  63. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +1 -1
  64. package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +264 -39
  65. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +4 -2
  66. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
  67. package/dest/msg_validators/attestation_validator/attestation_validator.js +45 -9
  68. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts +20 -0
  69. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts.map +1 -0
  70. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.js +67 -0
  71. package/dest/msg_validators/attestation_validator/index.d.ts +2 -1
  72. package/dest/msg_validators/attestation_validator/index.d.ts.map +1 -1
  73. package/dest/msg_validators/attestation_validator/index.js +1 -0
  74. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts +6 -2
  75. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts.map +1 -1
  76. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.js +73 -12
  77. package/dest/msg_validators/block_proposal_validator/index.d.ts +1 -1
  78. package/dest/msg_validators/index.d.ts +1 -1
  79. package/dest/msg_validators/msg_seen_validator/msg_seen_validator.d.ts +10 -0
  80. package/dest/msg_validators/msg_seen_validator/msg_seen_validator.d.ts.map +1 -0
  81. package/dest/msg_validators/msg_seen_validator/msg_seen_validator.js +36 -0
  82. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts +1 -1
  83. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts.map +1 -1
  84. package/dest/msg_validators/tx_validator/allowed_public_setup.d.ts +3 -0
  85. package/dest/msg_validators/tx_validator/allowed_public_setup.d.ts.map +1 -0
  86. package/dest/msg_validators/tx_validator/allowed_public_setup.js +27 -0
  87. package/dest/msg_validators/tx_validator/archive_cache.d.ts +14 -0
  88. package/dest/msg_validators/tx_validator/archive_cache.d.ts.map +1 -0
  89. package/dest/msg_validators/tx_validator/archive_cache.js +22 -0
  90. package/dest/msg_validators/tx_validator/block_header_validator.d.ts +1 -1
  91. package/dest/msg_validators/tx_validator/block_header_validator.d.ts.map +1 -1
  92. package/dest/msg_validators/tx_validator/block_header_validator.js +4 -4
  93. package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
  94. package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
  95. package/dest/msg_validators/tx_validator/data_validator.js +56 -86
  96. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts +1 -3
  97. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts.map +1 -1
  98. package/dest/msg_validators/tx_validator/double_spend_validator.js +21 -27
  99. package/dest/msg_validators/tx_validator/factory.d.ts +15 -0
  100. package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -0
  101. package/dest/msg_validators/tx_validator/factory.js +74 -0
  102. package/dest/msg_validators/tx_validator/gas_validator.d.ts +11 -0
  103. package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -0
  104. package/dest/msg_validators/tx_validator/gas_validator.js +115 -0
  105. package/dest/msg_validators/tx_validator/index.d.ts +8 -1
  106. package/dest/msg_validators/tx_validator/index.d.ts.map +1 -1
  107. package/dest/msg_validators/tx_validator/index.js +7 -0
  108. package/dest/msg_validators/tx_validator/metadata_validator.d.ts +8 -4
  109. package/dest/msg_validators/tx_validator/metadata_validator.d.ts.map +1 -1
  110. package/dest/msg_validators/tx_validator/metadata_validator.js +39 -20
  111. package/dest/msg_validators/tx_validator/phases_validator.d.ts +14 -0
  112. package/dest/msg_validators/tx_validator/phases_validator.d.ts.map +1 -0
  113. package/dest/msg_validators/tx_validator/phases_validator.js +93 -0
  114. package/dest/msg_validators/tx_validator/test_utils.d.ts +17 -0
  115. package/dest/msg_validators/tx_validator/test_utils.d.ts.map +1 -0
  116. package/dest/msg_validators/tx_validator/test_utils.js +22 -0
  117. package/dest/msg_validators/tx_validator/timestamp_validator.d.ts +12 -0
  118. package/dest/msg_validators/tx_validator/timestamp_validator.d.ts.map +1 -0
  119. package/dest/msg_validators/tx_validator/timestamp_validator.js +32 -0
  120. package/dest/msg_validators/tx_validator/tx_permitted_validator.d.ts +8 -0
  121. package/dest/msg_validators/tx_validator/tx_permitted_validator.d.ts.map +1 -0
  122. package/dest/msg_validators/tx_validator/tx_permitted_validator.js +24 -0
  123. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts +1 -1
  124. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts.map +1 -1
  125. package/dest/msg_validators/tx_validator/tx_proof_validator.js +6 -5
  126. package/dest/services/data_store.d.ts +1 -1
  127. package/dest/services/data_store.d.ts.map +1 -1
  128. package/dest/services/discv5/discV5_service.d.ts +10 -9
  129. package/dest/services/discv5/discV5_service.d.ts.map +1 -1
  130. package/dest/services/discv5/discV5_service.js +63 -36
  131. package/dest/services/dummy_service.d.ts +50 -11
  132. package/dest/services/dummy_service.d.ts.map +1 -1
  133. package/dest/services/dummy_service.js +88 -5
  134. package/dest/services/encoding.d.ts +26 -7
  135. package/dest/services/encoding.d.ts.map +1 -1
  136. package/dest/services/encoding.js +73 -5
  137. package/dest/services/gossipsub/scoring.d.ts +1 -1
  138. package/dest/services/index.d.ts +5 -1
  139. package/dest/services/index.d.ts.map +1 -1
  140. package/dest/services/index.js +4 -0
  141. package/dest/services/libp2p/instrumentation.d.ts +20 -0
  142. package/dest/services/libp2p/instrumentation.d.ts.map +1 -0
  143. package/dest/services/libp2p/instrumentation.js +164 -0
  144. package/dest/services/libp2p/libp2p_service.d.ts +78 -89
  145. package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
  146. package/dest/services/libp2p/libp2p_service.js +698 -246
  147. package/dest/services/peer-manager/interface.d.ts +23 -0
  148. package/dest/services/peer-manager/interface.d.ts.map +1 -0
  149. package/dest/services/peer-manager/interface.js +1 -0
  150. package/dest/services/peer-manager/metrics.d.ts +6 -2
  151. package/dest/services/peer-manager/metrics.d.ts.map +1 -1
  152. package/dest/services/peer-manager/metrics.js +22 -2
  153. package/dest/services/peer-manager/peer_manager.d.ts +102 -22
  154. package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
  155. package/dest/services/peer-manager/peer_manager.js +549 -72
  156. package/dest/services/peer-manager/peer_scoring.d.ts +7 -2
  157. package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
  158. package/dest/services/peer-manager/peer_scoring.js +40 -2
  159. package/dest/services/reqresp/config.d.ts +11 -9
  160. package/dest/services/reqresp/config.d.ts.map +1 -1
  161. package/dest/services/reqresp/config.js +18 -4
  162. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts +2 -2
  163. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts.map +1 -1
  164. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.js +10 -6
  165. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts +31 -17
  166. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts.map +1 -1
  167. package/dest/services/reqresp/connection-sampler/connection_sampler.js +142 -84
  168. package/dest/services/reqresp/index.d.ts +3 -2
  169. package/dest/services/reqresp/index.d.ts.map +1 -1
  170. package/dest/services/reqresp/index.js +2 -1
  171. package/dest/services/reqresp/interface.d.ts +73 -24
  172. package/dest/services/reqresp/interface.d.ts.map +1 -1
  173. package/dest/services/reqresp/interface.js +45 -26
  174. package/dest/services/reqresp/metrics.d.ts +1 -1
  175. package/dest/services/reqresp/metrics.d.ts.map +1 -1
  176. package/dest/services/reqresp/protocols/auth.d.ts +43 -0
  177. package/dest/services/reqresp/protocols/auth.d.ts.map +1 -0
  178. package/dest/services/reqresp/protocols/auth.js +71 -0
  179. package/dest/services/reqresp/protocols/block.d.ts +6 -1
  180. package/dest/services/reqresp/protocols/block.d.ts.map +1 -1
  181. package/dest/services/reqresp/protocols/block.js +28 -5
  182. package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts +30 -0
  183. package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts.map +1 -0
  184. package/dest/services/reqresp/protocols/block_txs/bitvector.js +75 -0
  185. package/dest/services/reqresp/protocols/block_txs/block_txs_handler.d.ts +11 -0
  186. package/dest/services/reqresp/protocols/block_txs/block_txs_handler.d.ts.map +1 -0
  187. package/dest/services/reqresp/protocols/block_txs/block_txs_handler.js +39 -0
  188. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts +47 -0
  189. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts.map +1 -0
  190. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.js +75 -0
  191. package/dest/services/reqresp/protocols/block_txs/index.d.ts +4 -0
  192. package/dest/services/reqresp/protocols/block_txs/index.d.ts.map +1 -0
  193. package/dest/services/reqresp/protocols/block_txs/index.js +3 -0
  194. package/dest/services/reqresp/protocols/goodbye.d.ts +3 -5
  195. package/dest/services/reqresp/protocols/goodbye.d.ts.map +1 -1
  196. package/dest/services/reqresp/protocols/goodbye.js +7 -7
  197. package/dest/services/reqresp/protocols/index.d.ts +3 -1
  198. package/dest/services/reqresp/protocols/index.d.ts.map +1 -1
  199. package/dest/services/reqresp/protocols/index.js +2 -0
  200. package/dest/services/reqresp/protocols/ping.d.ts +1 -3
  201. package/dest/services/reqresp/protocols/ping.d.ts.map +1 -1
  202. package/dest/services/reqresp/protocols/status.d.ts +39 -7
  203. package/dest/services/reqresp/protocols/status.d.ts.map +1 -1
  204. package/dest/services/reqresp/protocols/status.js +72 -5
  205. package/dest/services/reqresp/protocols/tx.d.ts +13 -2
  206. package/dest/services/reqresp/protocols/tx.d.ts.map +1 -1
  207. package/dest/services/reqresp/protocols/tx.js +34 -6
  208. package/dest/services/reqresp/rate-limiter/index.d.ts +1 -1
  209. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +6 -4
  210. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
  211. package/dest/services/reqresp/rate-limiter/rate_limiter.js +10 -2
  212. package/dest/services/reqresp/rate-limiter/rate_limits.d.ts +1 -1
  213. package/dest/services/reqresp/rate-limiter/rate_limits.d.ts.map +1 -1
  214. package/dest/services/reqresp/rate-limiter/rate_limits.js +21 -1
  215. package/dest/services/reqresp/reqresp.d.ts +24 -66
  216. package/dest/services/reqresp/reqresp.d.ts.map +1 -1
  217. package/dest/services/reqresp/reqresp.js +298 -207
  218. package/dest/services/reqresp/status.d.ts +10 -4
  219. package/dest/services/reqresp/status.d.ts.map +1 -1
  220. package/dest/services/reqresp/status.js +9 -2
  221. package/dest/services/service.d.ts +23 -19
  222. package/dest/services/service.d.ts.map +1 -1
  223. package/dest/services/tx_collection/config.d.ts +25 -0
  224. package/dest/services/tx_collection/config.d.ts.map +1 -0
  225. package/dest/services/tx_collection/config.js +58 -0
  226. package/dest/services/tx_collection/fast_tx_collection.d.ts +50 -0
  227. package/dest/services/tx_collection/fast_tx_collection.d.ts.map +1 -0
  228. package/dest/services/tx_collection/fast_tx_collection.js +300 -0
  229. package/dest/services/tx_collection/index.d.ts +3 -0
  230. package/dest/services/tx_collection/index.d.ts.map +1 -0
  231. package/dest/services/tx_collection/index.js +2 -0
  232. package/dest/services/tx_collection/instrumentation.d.ts +10 -0
  233. package/dest/services/tx_collection/instrumentation.d.ts.map +1 -0
  234. package/dest/services/tx_collection/instrumentation.js +34 -0
  235. package/dest/services/tx_collection/slow_tx_collection.d.ts +52 -0
  236. package/dest/services/tx_collection/slow_tx_collection.d.ts.map +1 -0
  237. package/dest/services/tx_collection/slow_tx_collection.js +177 -0
  238. package/dest/services/tx_collection/tx_collection.d.ts +109 -0
  239. package/dest/services/tx_collection/tx_collection.d.ts.map +1 -0
  240. package/dest/services/tx_collection/tx_collection.js +128 -0
  241. package/dest/services/tx_collection/tx_collection_sink.d.ts +30 -0
  242. package/dest/services/tx_collection/tx_collection_sink.d.ts.map +1 -0
  243. package/dest/services/tx_collection/tx_collection_sink.js +111 -0
  244. package/dest/services/tx_collection/tx_source.d.ts +18 -0
  245. package/dest/services/tx_collection/tx_source.d.ts.map +1 -0
  246. package/dest/services/tx_collection/tx_source.js +31 -0
  247. package/dest/services/tx_provider.d.ts +49 -0
  248. package/dest/services/tx_provider.d.ts.map +1 -0
  249. package/dest/services/tx_provider.js +210 -0
  250. package/dest/services/tx_provider_instrumentation.d.ts +13 -0
  251. package/dest/services/tx_provider_instrumentation.d.ts.map +1 -0
  252. package/dest/services/tx_provider_instrumentation.js +34 -0
  253. package/dest/test-helpers/generate-peer-id-private-keys.d.ts +1 -1
  254. package/dest/test-helpers/get-ports.d.ts +1 -1
  255. package/dest/test-helpers/get-ports.d.ts.map +1 -1
  256. package/dest/test-helpers/index.d.ts +2 -1
  257. package/dest/test-helpers/index.d.ts.map +1 -1
  258. package/dest/test-helpers/index.js +1 -0
  259. package/dest/test-helpers/make-enrs.d.ts +1 -1
  260. package/dest/test-helpers/make-enrs.d.ts.map +1 -1
  261. package/dest/test-helpers/make-enrs.js +4 -5
  262. package/dest/test-helpers/make-test-p2p-clients.d.ts +33 -5
  263. package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -1
  264. package/dest/test-helpers/make-test-p2p-clients.js +86 -16
  265. package/dest/test-helpers/mock-pubsub.d.ts +59 -0
  266. package/dest/test-helpers/mock-pubsub.d.ts.map +1 -0
  267. package/dest/test-helpers/mock-pubsub.js +130 -0
  268. package/dest/test-helpers/mock-tx-helpers.d.ts +12 -0
  269. package/dest/test-helpers/mock-tx-helpers.d.ts.map +1 -0
  270. package/dest/test-helpers/mock-tx-helpers.js +19 -0
  271. package/dest/test-helpers/reqresp-nodes.d.ts +15 -11
  272. package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
  273. package/dest/test-helpers/reqresp-nodes.js +62 -28
  274. package/dest/testbench/p2p_client_testbench_worker.d.ts +1 -1
  275. package/dest/testbench/p2p_client_testbench_worker.js +103 -29
  276. package/dest/testbench/parse_log_file.d.ts +1 -1
  277. package/dest/testbench/parse_log_file.js +4 -4
  278. package/dest/testbench/testbench.d.ts +1 -1
  279. package/dest/testbench/testbench.js +4 -4
  280. package/dest/testbench/worker_client_manager.d.ts +1 -6
  281. package/dest/testbench/worker_client_manager.d.ts.map +1 -1
  282. package/dest/testbench/worker_client_manager.js +11 -19
  283. package/dest/types/index.d.ts +4 -2
  284. package/dest/types/index.d.ts.map +1 -1
  285. package/dest/types/index.js +2 -0
  286. package/dest/util.d.ts +24 -16
  287. package/dest/util.d.ts.map +1 -1
  288. package/dest/util.js +75 -69
  289. package/dest/versioning.d.ts +4 -4
  290. package/dest/versioning.d.ts.map +1 -1
  291. package/dest/versioning.js +8 -3
  292. package/package.json +32 -27
  293. package/src/bootstrap/bootstrap.ts +27 -11
  294. package/src/client/factory.ts +136 -45
  295. package/src/client/index.ts +1 -0
  296. package/src/client/interface.ts +198 -0
  297. package/src/client/p2p_client.ts +469 -330
  298. package/src/config.ts +305 -134
  299. package/src/enr/generate-enr.ts +39 -6
  300. package/src/errors/attestation-pool.error.ts +13 -0
  301. package/src/index.ts +4 -0
  302. package/src/mem_pools/attestation_pool/attestation_pool.ts +75 -7
  303. package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +264 -65
  304. package/src/mem_pools/attestation_pool/kv_attestation_pool.ts +173 -34
  305. package/src/mem_pools/attestation_pool/memory_attestation_pool.ts +156 -30
  306. package/src/mem_pools/attestation_pool/mocks.ts +11 -10
  307. package/src/mem_pools/instrumentation.ts +43 -44
  308. package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +549 -108
  309. package/src/mem_pools/tx_pool/memory_tx_pool.ts +153 -44
  310. package/src/mem_pools/tx_pool/priority.ts +1 -1
  311. package/src/mem_pools/tx_pool/tx_pool.ts +67 -8
  312. package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +217 -34
  313. package/src/msg_validators/attestation_validator/attestation_validator.ts +54 -11
  314. package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +91 -0
  315. package/src/msg_validators/attestation_validator/index.ts +1 -0
  316. package/src/msg_validators/block_proposal_validator/block_proposal_validator.ts +82 -14
  317. package/src/msg_validators/msg_seen_validator/msg_seen_validator.ts +36 -0
  318. package/src/msg_validators/tx_validator/allowed_public_setup.ts +35 -0
  319. package/src/msg_validators/tx_validator/archive_cache.ts +28 -0
  320. package/src/msg_validators/tx_validator/block_header_validator.ts +4 -4
  321. package/src/msg_validators/tx_validator/data_validator.ts +81 -69
  322. package/src/msg_validators/tx_validator/double_spend_validator.ts +19 -17
  323. package/src/msg_validators/tx_validator/factory.ts +109 -0
  324. package/src/msg_validators/tx_validator/gas_validator.ts +134 -0
  325. package/src/msg_validators/tx_validator/index.ts +7 -0
  326. package/src/msg_validators/tx_validator/metadata_validator.ts +58 -21
  327. package/src/msg_validators/tx_validator/phases_validator.ts +116 -0
  328. package/src/msg_validators/tx_validator/test_utils.ts +43 -0
  329. package/src/msg_validators/tx_validator/timestamp_validator.ts +46 -0
  330. package/src/msg_validators/tx_validator/tx_permitted_validator.ts +17 -0
  331. package/src/msg_validators/tx_validator/tx_proof_validator.ts +6 -5
  332. package/src/services/discv5/discV5_service.ts +84 -38
  333. package/src/services/dummy_service.ts +147 -9
  334. package/src/services/encoding.ts +80 -5
  335. package/src/services/index.ts +4 -0
  336. package/src/services/libp2p/instrumentation.ts +167 -0
  337. package/src/services/libp2p/libp2p_service.ts +866 -294
  338. package/src/services/peer-manager/interface.ts +29 -0
  339. package/src/services/peer-manager/metrics.ts +26 -1
  340. package/src/services/peer-manager/peer_manager.ts +654 -78
  341. package/src/services/peer-manager/peer_scoring.ts +46 -3
  342. package/src/services/reqresp/config.ts +26 -9
  343. package/src/services/reqresp/connection-sampler/batch_connection_sampler.ts +12 -6
  344. package/src/services/reqresp/connection-sampler/connection_sampler.ts +148 -95
  345. package/src/services/reqresp/index.ts +2 -0
  346. package/src/services/reqresp/interface.ts +91 -36
  347. package/src/services/reqresp/metrics.ts +4 -1
  348. package/src/services/reqresp/protocols/auth.ts +83 -0
  349. package/src/services/reqresp/protocols/block.ts +24 -3
  350. package/src/services/reqresp/protocols/block_txs/bitvector.ts +90 -0
  351. package/src/services/reqresp/protocols/block_txs/block_txs_handler.ts +53 -0
  352. package/src/services/reqresp/protocols/block_txs/block_txs_reqresp.ts +79 -0
  353. package/src/services/reqresp/protocols/block_txs/index.ts +3 -0
  354. package/src/services/reqresp/protocols/goodbye.ts +9 -7
  355. package/src/services/reqresp/protocols/index.ts +2 -0
  356. package/src/services/reqresp/protocols/status.ts +117 -5
  357. package/src/services/reqresp/protocols/tx.ts +35 -6
  358. package/src/services/reqresp/rate-limiter/rate_limiter.ts +12 -3
  359. package/src/services/reqresp/rate-limiter/rate_limits.ts +21 -1
  360. package/src/services/reqresp/reqresp.ts +387 -256
  361. package/src/services/reqresp/status.ts +12 -3
  362. package/src/services/service.ts +45 -21
  363. package/src/services/tx_collection/config.ts +84 -0
  364. package/src/services/tx_collection/fast_tx_collection.ts +340 -0
  365. package/src/services/tx_collection/index.ts +2 -0
  366. package/src/services/tx_collection/instrumentation.ts +43 -0
  367. package/src/services/tx_collection/slow_tx_collection.ts +233 -0
  368. package/src/services/tx_collection/tx_collection.ts +215 -0
  369. package/src/services/tx_collection/tx_collection_sink.ts +129 -0
  370. package/src/services/tx_collection/tx_source.ts +37 -0
  371. package/src/services/tx_provider.ts +216 -0
  372. package/src/services/tx_provider_instrumentation.ts +44 -0
  373. package/src/test-helpers/index.ts +1 -0
  374. package/src/test-helpers/make-enrs.ts +4 -5
  375. package/src/test-helpers/make-test-p2p-clients.ts +111 -21
  376. package/src/test-helpers/mock-pubsub.ts +188 -0
  377. package/src/test-helpers/mock-tx-helpers.ts +24 -0
  378. package/src/test-helpers/reqresp-nodes.ts +86 -35
  379. package/src/testbench/p2p_client_testbench_worker.ts +151 -25
  380. package/src/testbench/parse_log_file.ts +4 -4
  381. package/src/testbench/testbench.ts +4 -4
  382. package/src/testbench/worker_client_manager.ts +17 -23
  383. package/src/types/index.ts +2 -0
  384. package/src/util.ts +105 -91
  385. package/src/versioning.ts +11 -4
@@ -1,19 +1,239 @@
1
1
  import type { Secp256k1Signer } from '@aztec/foundation/crypto';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
  import { BlockAttestation } from '@aztec/stdlib/p2p';
4
- import { TxHash } from '@aztec/stdlib/tx';
5
- import { type LocalAccount } from 'viem/accounts';
6
4
  /** Generate Account
7
5
  *
8
6
  * Create a random signer
9
7
  * @returns A random viem signer
10
8
  */
11
- export declare const generateAccount: () => LocalAccount;
9
+ export declare const generateAccount: () => {
10
+ address: `0x${string}`;
11
+ nonceManager?: import("viem/accounts").NonceManager | undefined;
12
+ sign?: ((parameters: {
13
+ hash: `0x${string}`;
14
+ }) => Promise<`0x${string}`>) | undefined;
15
+ signAuthorization?: ((parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>) | undefined;
16
+ signMessage: ({ message }: {
17
+ message: import("viem").SignableMessage;
18
+ }) => Promise<`0x${string}`>;
19
+ signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
20
+ serializer?: serializer | undefined;
21
+ } | undefined) => Promise<`0x${string}`>;
22
+ signTypedData: <const typedData extends Record<string, unknown> | {
23
+ [x: string]: readonly import("viem").TypedDataParameter[];
24
+ [x: `address[${string}]`]: undefined;
25
+ [x: `bool[${string}]`]: undefined;
26
+ [x: `bytes10[${string}]`]: undefined;
27
+ [x: `bytes11[${string}]`]: undefined;
28
+ [x: `bytes12[${string}]`]: undefined;
29
+ [x: `bytes13[${string}]`]: undefined;
30
+ [x: `bytes14[${string}]`]: undefined;
31
+ [x: `bytes15[${string}]`]: undefined;
32
+ [x: `bytes16[${string}]`]: undefined;
33
+ [x: `bytes17[${string}]`]: undefined;
34
+ [x: `bytes18[${string}]`]: undefined;
35
+ [x: `bytes19[${string}]`]: undefined;
36
+ [x: `bytes1[${string}]`]: undefined;
37
+ [x: `bytes20[${string}]`]: undefined;
38
+ [x: `bytes21[${string}]`]: undefined;
39
+ [x: `bytes22[${string}]`]: undefined;
40
+ [x: `bytes23[${string}]`]: undefined;
41
+ [x: `bytes24[${string}]`]: undefined;
42
+ [x: `bytes25[${string}]`]: undefined;
43
+ [x: `bytes26[${string}]`]: undefined;
44
+ [x: `bytes27[${string}]`]: undefined;
45
+ [x: `bytes28[${string}]`]: undefined;
46
+ [x: `bytes29[${string}]`]: undefined;
47
+ [x: `bytes2[${string}]`]: undefined;
48
+ [x: `bytes30[${string}]`]: undefined;
49
+ [x: `bytes31[${string}]`]: undefined;
50
+ [x: `bytes32[${string}]`]: undefined;
51
+ [x: `bytes3[${string}]`]: undefined;
52
+ [x: `bytes4[${string}]`]: undefined;
53
+ [x: `bytes5[${string}]`]: undefined;
54
+ [x: `bytes6[${string}]`]: undefined;
55
+ [x: `bytes7[${string}]`]: undefined;
56
+ [x: `bytes8[${string}]`]: undefined;
57
+ [x: `bytes9[${string}]`]: undefined;
58
+ [x: `bytes[${string}]`]: undefined;
59
+ [x: `function[${string}]`]: undefined;
60
+ [x: `int104[${string}]`]: undefined;
61
+ [x: `int112[${string}]`]: undefined;
62
+ [x: `int120[${string}]`]: undefined;
63
+ [x: `int128[${string}]`]: undefined;
64
+ [x: `int136[${string}]`]: undefined;
65
+ [x: `int144[${string}]`]: undefined;
66
+ [x: `int152[${string}]`]: undefined;
67
+ [x: `int160[${string}]`]: undefined;
68
+ [x: `int168[${string}]`]: undefined;
69
+ [x: `int16[${string}]`]: undefined;
70
+ [x: `int176[${string}]`]: undefined;
71
+ [x: `int184[${string}]`]: undefined;
72
+ [x: `int192[${string}]`]: undefined;
73
+ [x: `int200[${string}]`]: undefined;
74
+ [x: `int208[${string}]`]: undefined;
75
+ [x: `int216[${string}]`]: undefined;
76
+ [x: `int224[${string}]`]: undefined;
77
+ [x: `int232[${string}]`]: undefined;
78
+ [x: `int240[${string}]`]: undefined;
79
+ [x: `int248[${string}]`]: undefined;
80
+ [x: `int24[${string}]`]: undefined;
81
+ [x: `int256[${string}]`]: undefined;
82
+ [x: `int32[${string}]`]: undefined;
83
+ [x: `int40[${string}]`]: undefined;
84
+ [x: `int48[${string}]`]: undefined;
85
+ [x: `int56[${string}]`]: undefined;
86
+ [x: `int64[${string}]`]: undefined;
87
+ [x: `int72[${string}]`]: undefined;
88
+ [x: `int80[${string}]`]: undefined;
89
+ [x: `int88[${string}]`]: undefined;
90
+ [x: `int8[${string}]`]: undefined;
91
+ [x: `int96[${string}]`]: undefined;
92
+ [x: `int[${string}]`]: undefined;
93
+ [x: `string[${string}]`]: undefined;
94
+ [x: `uint104[${string}]`]: undefined;
95
+ [x: `uint112[${string}]`]: undefined;
96
+ [x: `uint120[${string}]`]: undefined;
97
+ [x: `uint128[${string}]`]: undefined;
98
+ [x: `uint136[${string}]`]: undefined;
99
+ [x: `uint144[${string}]`]: undefined;
100
+ [x: `uint152[${string}]`]: undefined;
101
+ [x: `uint160[${string}]`]: undefined;
102
+ [x: `uint168[${string}]`]: undefined;
103
+ [x: `uint16[${string}]`]: undefined;
104
+ [x: `uint176[${string}]`]: undefined;
105
+ [x: `uint184[${string}]`]: undefined;
106
+ [x: `uint192[${string}]`]: undefined;
107
+ [x: `uint200[${string}]`]: undefined;
108
+ [x: `uint208[${string}]`]: undefined;
109
+ [x: `uint216[${string}]`]: undefined;
110
+ [x: `uint224[${string}]`]: undefined;
111
+ [x: `uint232[${string}]`]: undefined;
112
+ [x: `uint240[${string}]`]: undefined;
113
+ [x: `uint248[${string}]`]: undefined;
114
+ [x: `uint24[${string}]`]: undefined;
115
+ [x: `uint256[${string}]`]: undefined;
116
+ [x: `uint32[${string}]`]: undefined;
117
+ [x: `uint40[${string}]`]: undefined;
118
+ [x: `uint48[${string}]`]: undefined;
119
+ [x: `uint56[${string}]`]: undefined;
120
+ [x: `uint64[${string}]`]: undefined;
121
+ [x: `uint72[${string}]`]: undefined;
122
+ [x: `uint80[${string}]`]: undefined;
123
+ [x: `uint88[${string}]`]: undefined;
124
+ [x: `uint8[${string}]`]: undefined;
125
+ [x: `uint96[${string}]`]: undefined;
126
+ [x: `uint[${string}]`]: undefined;
127
+ address?: undefined;
128
+ bool?: undefined;
129
+ bytes?: undefined;
130
+ bytes1?: undefined;
131
+ bytes10?: undefined;
132
+ bytes11?: undefined;
133
+ bytes12?: undefined;
134
+ bytes13?: undefined;
135
+ bytes14?: undefined;
136
+ bytes15?: undefined;
137
+ bytes16?: undefined;
138
+ bytes17?: undefined;
139
+ bytes18?: undefined;
140
+ bytes19?: undefined;
141
+ bytes2?: undefined;
142
+ bytes20?: undefined;
143
+ bytes21?: undefined;
144
+ bytes22?: undefined;
145
+ bytes23?: undefined;
146
+ bytes24?: undefined;
147
+ bytes25?: undefined;
148
+ bytes26?: undefined;
149
+ bytes27?: undefined;
150
+ bytes28?: undefined;
151
+ bytes29?: undefined;
152
+ bytes3?: undefined;
153
+ bytes30?: undefined;
154
+ bytes31?: undefined;
155
+ bytes32?: undefined;
156
+ bytes4?: undefined;
157
+ bytes5?: undefined;
158
+ bytes6?: undefined;
159
+ bytes7?: undefined;
160
+ bytes8?: undefined;
161
+ bytes9?: undefined;
162
+ int104?: undefined;
163
+ int112?: undefined;
164
+ int120?: undefined;
165
+ int128?: undefined;
166
+ int136?: undefined;
167
+ int144?: undefined;
168
+ int152?: undefined;
169
+ int16?: undefined;
170
+ int160?: undefined;
171
+ int168?: undefined;
172
+ int176?: undefined;
173
+ int184?: undefined;
174
+ int192?: undefined;
175
+ int200?: undefined;
176
+ int208?: undefined;
177
+ int216?: undefined;
178
+ int224?: undefined;
179
+ int232?: undefined;
180
+ int24?: undefined;
181
+ int240?: undefined;
182
+ int248?: undefined;
183
+ int256?: undefined;
184
+ int32?: undefined;
185
+ int40?: undefined;
186
+ int48?: undefined;
187
+ int56?: undefined;
188
+ int64?: undefined;
189
+ int72?: undefined;
190
+ int8?: undefined;
191
+ int80?: undefined;
192
+ int88?: undefined;
193
+ int96?: undefined;
194
+ string?: undefined;
195
+ uint104?: undefined;
196
+ uint112?: undefined;
197
+ uint120?: undefined;
198
+ uint128?: undefined;
199
+ uint136?: undefined;
200
+ uint144?: undefined;
201
+ uint152?: undefined;
202
+ uint16?: undefined;
203
+ uint160?: undefined;
204
+ uint168?: undefined;
205
+ uint176?: undefined;
206
+ uint184?: undefined;
207
+ uint192?: undefined;
208
+ uint200?: undefined;
209
+ uint208?: undefined;
210
+ uint216?: undefined;
211
+ uint224?: undefined;
212
+ uint232?: undefined;
213
+ uint24?: undefined;
214
+ uint240?: undefined;
215
+ uint248?: undefined;
216
+ uint256?: undefined;
217
+ uint32?: undefined;
218
+ uint40?: undefined;
219
+ uint48?: undefined;
220
+ uint56?: undefined;
221
+ uint64?: undefined;
222
+ uint72?: undefined;
223
+ uint8?: undefined;
224
+ uint80?: undefined;
225
+ uint88?: undefined;
226
+ uint96?: undefined;
227
+ }, primaryType extends "EIP712Domain" | keyof typedData = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<`0x${string}`>;
228
+ publicKey: `0x${string}`;
229
+ source: string;
230
+ type: "local";
231
+ };
12
232
  /** Mock Attestation
13
233
  *
14
234
  * @param signer A viem signer to create a signature
15
235
  * @param slot The slot number the attestation is for
16
236
  * @returns A Block Attestation
17
237
  */
18
- export declare const mockAttestation: (signer: Secp256k1Signer, slot?: number, archive?: Fr, txs?: TxHash[]) => Promise<BlockAttestation>;
19
- //# sourceMappingURL=mocks.d.ts.map
238
+ export declare const mockAttestation: (signer: Secp256k1Signer, slot?: number, archive?: Fr) => BlockAttestation;
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZW1fcG9vbHMvYXR0ZXN0YXRpb25fcG9vbC9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxFQUNMLGdCQUFnQixFQUlqQixNQUFNLG1CQUFtQixDQUFDO0FBSzNCOzs7O0dBSUc7QUFDSCxlQUFPLE1BQU0sZUFBZTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBRzNCLENBQUM7QUFFRjs7Ozs7R0FLRztBQUNILGVBQU8sTUFBTSxlQUFlLDRFQWdCM0IsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/attestation_pool/mocks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAIjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,KAAK,YAAY,EAA2C,MAAM,eAAe,CAAC;AAE3F;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAO,YAGlC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,WAClB,eAAe,SACjB,MAAM,YACH,EAAE,QACN,MAAM,EAAE,KACZ,QAAQ,gBAAgB,CAS1B,CAAC"}
1
+ {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/attestation_pool/mocks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAIjB,MAAM,mBAAmB,CAAC;AAK3B;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAG3B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,4EAgB3B,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
2
  import { BlockAttestation, ConsensusPayload, SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '@aztec/stdlib/p2p';
3
- import { makeHeader } from '@aztec/stdlib/testing';
4
- import { TxHash } from '@aztec/stdlib/tx';
3
+ import { makeL2BlockHeader } from '@aztec/stdlib/testing';
5
4
  import { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';
6
5
  /** Generate Account
7
6
  *
@@ -16,18 +15,13 @@ import { generatePrivateKey, privateKeyToAccount } from 'viem/accounts';
16
15
  * @param signer A viem signer to create a signature
17
16
  * @param slot The slot number the attestation is for
18
17
  * @returns A Block Attestation
19
- */ export const mockAttestation = async (signer, slot = 0, archive = Fr.random(), txs = [
20
- 0,
21
- 1,
22
- 2,
23
- 3,
24
- 4,
25
- 5
26
- ].map(()=>TxHash.random()))=>{
18
+ */ export const mockAttestation = (signer, slot = 0, archive = Fr.random())=>{
27
19
  // Use arbitrary numbers for all other than slot
28
- const header = makeHeader(1, 2, slot);
29
- const payload = new ConsensusPayload(header, archive, txs);
30
- const hash = await getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
31
- const signature = signer.sign(hash);
32
- return new BlockAttestation(payload, signature);
20
+ const header = makeL2BlockHeader(1, 2, slot);
21
+ const payload = new ConsensusPayload(header.toCheckpointHeader(), archive);
22
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
23
+ const attestationSignature = signer.sign(attestationHash);
24
+ const proposalHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockProposal);
25
+ const proposerSignature = signer.sign(proposalHash);
26
+ return new BlockAttestation(payload, attestationSignature, proposerSignature);
33
27
  };
@@ -1,4 +1,4 @@
1
1
  export { type AttestationPool } from './attestation_pool/attestation_pool.js';
2
2
  export { type MemPools } from './interface.js';
3
3
  export { type TxPool } from './tx_pool/tx_pool.js';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZW1fcG9vbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUMifQ==
@@ -4,27 +4,25 @@ export declare enum PoolName {
4
4
  TX_POOL = "TxPool",
5
5
  ATTESTATION_POOL = "AttestationPool"
6
6
  }
7
+ export type PoolStatsCallback = () => Promise<{
8
+ itemCount: number | Record<string, number>;
9
+ }>;
7
10
  /**
8
11
  * Instrumentation class for the Pools (TxPool, AttestationPool, etc).
9
12
  */
10
13
  export declare class PoolInstrumentation<PoolObject extends Gossipable> {
14
+ private poolStats;
11
15
  /** The number of txs in the mempool */
12
16
  private objectsInMempool;
17
+ private addObjectCounter;
13
18
  /** Tracks tx size */
14
19
  private objectSize;
15
20
  private dbMetrics;
16
21
  private defaultAttributes;
17
- constructor(telemetry: TelemetryClient, name: PoolName, dbStats?: LmdbStatsCallback);
22
+ private meter;
23
+ constructor(telemetry: TelemetryClient, name: PoolName, poolStats: PoolStatsCallback, dbStats?: LmdbStatsCallback);
18
24
  recordSize(poolObject: PoolObject): void;
19
- /**
20
- * Updates the metrics with the new objects.
21
- * @param txs - The objects to record
22
- */
23
- recordAddedObjects(count?: number, status?: string): void;
24
- /**
25
- * Updates the metrics by removing objects from the mempool.
26
- * @param count - The number of objects to remove from the mempool
27
- */
28
- recordRemovedObjects(count?: number, status?: string): void;
25
+ incrementAddedObjects(count: number): void;
26
+ private observeStats;
29
27
  }
30
- //# sourceMappingURL=instrumentation.d.ts.map
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1bWVudGF0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWVtX3Bvb2xzL2luc3RydW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBS0wsS0FBSyxpQkFBaUIsRUFLdEIsS0FBSyxlQUFlLEVBRXJCLE1BQU0seUJBQXlCLENBQUM7QUFFakMsb0JBQVksUUFBUTtJQUNsQixPQUFPLFdBQVc7SUFDbEIsZ0JBQWdCLG9CQUFvQjtDQUNyQztBQStCRCxNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxPQUFPLENBQUM7SUFDNUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0NBQzVDLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gscUJBQWEsbUJBQW1CLENBQUMsVUFBVSxTQUFTLFVBQVU7SUFlMUQsT0FBTyxDQUFDLFNBQVM7SUFkbkIsdUNBQXVDO0lBQ3ZDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBa0I7SUFDMUMsT0FBTyxDQUFDLGdCQUFnQixDQUFnQjtJQUN4QyxxQkFBcUI7SUFDckIsT0FBTyxDQUFDLFVBQVUsQ0FBWTtJQUU5QixPQUFPLENBQUMsU0FBUyxDQUFjO0lBRS9CLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUMxQixPQUFPLENBQUMsS0FBSyxDQUFRO0lBRXJCLFlBQ0UsU0FBUyxFQUFFLGVBQWUsRUFDMUIsSUFBSSxFQUFFLFFBQVEsRUFDTixTQUFTLEVBQUUsaUJBQWlCLEVBQ3BDLE9BQU8sQ0FBQyxFQUFFLGlCQUFpQixFQTZCNUI7SUFFTSxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsUUFFdkM7SUFFTSxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxRQUV6QztJQUVELE9BQU8sQ0FBQyxZQUFZLENBWWxCO0NBQ0gifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/mem_pools/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAIL,KAAK,iBAAiB,EAGtB,KAAK,eAAe,EAErB,MAAM,yBAAyB,CAAC;AAEjC,oBAAY,QAAQ;IAClB,OAAO,WAAW;IAClB,gBAAgB,oBAAoB;CACrC;AA4BD;;GAEG;AACH,qBAAa,mBAAmB,CAAC,UAAU,SAAS,UAAU;IAC5D,uCAAuC;IACvC,OAAO,CAAC,gBAAgB,CAAgB;IACxC,qBAAqB;IACrB,OAAO,CAAC,UAAU,CAAY;IAE9B,OAAO,CAAC,SAAS,CAAc;IAE/B,OAAO,CAAC,iBAAiB,CAAC;gBAEd,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,iBAAiB;IAwB5E,UAAU,CAAC,UAAU,EAAE,UAAU;IAIxC;;;OAGG;IACI,kBAAkB,CAAC,KAAK,SAAI,EAAE,MAAM,CAAC,EAAE,MAAM;IAiBpD;;;OAGG;IACI,oBAAoB,CAAC,KAAK,SAAI,EAAE,MAAM,CAAC,EAAE,MAAM;CAgBvD"}
1
+ {"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../src/mem_pools/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAKL,KAAK,iBAAiB,EAKtB,KAAK,eAAe,EAErB,MAAM,yBAAyB,CAAC;AAEjC,oBAAY,QAAQ;IAClB,OAAO,WAAW;IAClB,gBAAgB,oBAAoB;CACrC;AA+BD,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC;IAC5C,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C,CAAC,CAAC;AAEH;;GAEG;AACH,qBAAa,mBAAmB,CAAC,UAAU,SAAS,UAAU;IAe1D,OAAO,CAAC,SAAS;IAdnB,uCAAuC;IACvC,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,gBAAgB,CAAgB;IACxC,qBAAqB;IACrB,OAAO,CAAC,UAAU,CAAY;IAE9B,OAAO,CAAC,SAAS,CAAc;IAE/B,OAAO,CAAC,iBAAiB,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAQ;IAErB,YACE,SAAS,EAAE,eAAe,EAC1B,IAAI,EAAE,QAAQ,EACN,SAAS,EAAE,iBAAiB,EACpC,OAAO,CAAC,EAAE,iBAAiB,EA6B5B;IAEM,UAAU,CAAC,UAAU,EAAE,UAAU,QAEvC;IAEM,qBAAqB,CAAC,KAAK,EAAE,MAAM,QAEzC;IAED,OAAO,CAAC,YAAY,CAYlB;CACH"}
@@ -12,12 +12,14 @@ export var PoolName = /*#__PURE__*/ function(PoolName) {
12
12
  if (name === "TxPool") {
13
13
  return {
14
14
  objectInMempool: Metrics.MEMPOOL_TX_COUNT,
15
- objectSize: Metrics.MEMPOOL_TX_SIZE
15
+ objectSize: Metrics.MEMPOOL_TX_SIZE,
16
+ itemsAdded: Metrics.MEMPOOL_TX_ADDED_COUNT
16
17
  };
17
18
  } else if (name === "AttestationPool") {
18
19
  return {
19
20
  objectInMempool: Metrics.MEMPOOL_ATTESTATIONS_COUNT,
20
- objectSize: Metrics.MEMPOOL_ATTESTATIONS_SIZE
21
+ objectSize: Metrics.MEMPOOL_ATTESTATIONS_SIZE,
22
+ itemsAdded: Metrics.MEMPOOL_ATTESTATIONS_ADDED_COUNT
21
23
  };
22
24
  }
23
25
  throw new Error('Invalid pool type');
@@ -25,60 +27,55 @@ export var PoolName = /*#__PURE__*/ function(PoolName) {
25
27
  /**
26
28
  * Instrumentation class for the Pools (TxPool, AttestationPool, etc).
27
29
  */ export class PoolInstrumentation {
30
+ poolStats;
28
31
  /** The number of txs in the mempool */ objectsInMempool;
32
+ addObjectCounter;
29
33
  /** Tracks tx size */ objectSize;
30
34
  dbMetrics;
31
35
  defaultAttributes;
32
- constructor(telemetry, name, dbStats){
33
- const meter = telemetry.getMeter(name);
36
+ meter;
37
+ constructor(telemetry, name, poolStats, dbStats){
38
+ this.poolStats = poolStats;
39
+ this.observeStats = async (observer)=>{
40
+ const { itemCount } = await this.poolStats();
41
+ if (typeof itemCount === 'number') {
42
+ observer.observe(this.objectsInMempool, itemCount, this.defaultAttributes);
43
+ } else {
44
+ for (const [status, count] of Object.entries(itemCount)){
45
+ observer.observe(this.objectsInMempool, count, {
46
+ ...this.defaultAttributes,
47
+ [Attributes.STATUS]: status
48
+ });
49
+ }
50
+ }
51
+ };
52
+ this.meter = telemetry.getMeter(name);
34
53
  this.defaultAttributes = {
35
54
  [Attributes.POOL_NAME]: name
36
55
  };
37
56
  const metricsLabels = getMetricsLabels(name);
38
- this.objectsInMempool = meter.createUpDownCounter(metricsLabels.objectInMempool, {
57
+ this.objectsInMempool = this.meter.createObservableGauge(metricsLabels.objectInMempool, {
39
58
  description: 'The current number of transactions in the mempool'
40
59
  });
41
- this.objectSize = meter.createHistogram(metricsLabels.objectSize, {
60
+ this.objectSize = this.meter.createHistogram(metricsLabels.objectSize, {
42
61
  unit: 'By',
43
62
  description: 'The size of transactions in the mempool'
44
63
  });
45
- this.dbMetrics = new LmdbMetrics(meter, {
64
+ this.dbMetrics = new LmdbMetrics(this.meter, {
46
65
  [Attributes.DB_DATA_TYPE]: 'tx-pool'
47
66
  }, dbStats);
67
+ this.addObjectCounter = this.meter.createUpDownCounter(metricsLabels.itemsAdded, {
68
+ description: 'The number of transactions added to the mempool'
69
+ });
70
+ this.meter.addBatchObservableCallback(this.observeStats, [
71
+ this.objectsInMempool
72
+ ]);
48
73
  }
49
74
  recordSize(poolObject) {
50
75
  this.objectSize.record(poolObject.getSize());
51
76
  }
52
- /**
53
- * Updates the metrics with the new objects.
54
- * @param txs - The objects to record
55
- */ recordAddedObjects(count = 1, status) {
56
- if (count < 0) {
57
- throw new Error('Count must be positive');
58
- }
59
- if (count === 0) {
60
- return;
61
- }
62
- const attributes = status ? {
63
- ...this.defaultAttributes,
64
- [Attributes.STATUS]: status
65
- } : this.defaultAttributes;
66
- this.objectsInMempool.add(count, attributes);
67
- }
68
- /**
69
- * Updates the metrics by removing objects from the mempool.
70
- * @param count - The number of objects to remove from the mempool
71
- */ recordRemovedObjects(count = 1, status) {
72
- if (count < 0) {
73
- throw new Error('Count must be positive');
74
- }
75
- if (count === 0) {
76
- return;
77
- }
78
- const attributes = status ? {
79
- ...this.defaultAttributes,
80
- [Attributes.STATUS]: status
81
- } : this.defaultAttributes;
82
- this.objectsInMempool.add(-1 * count, attributes);
77
+ incrementAddedObjects(count) {
78
+ this.addObjectCounter.add(count);
83
79
  }
80
+ observeStats;
84
81
  }
@@ -8,4 +8,4 @@ export type MemPools<T extends P2PClientType = P2PClientType.Full> = {
8
8
  txPool: TxPool;
9
9
  attestationPool?: T extends P2PClientType.Full ? AttestationPool : undefined;
10
10
  };
11
- //# sourceMappingURL=interface.d.ts.map
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWVtX3Bvb2xzL2ludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRDs7R0FFRztBQUNILE1BQU0sTUFBTSxRQUFRLENBQUMsQ0FBQyxTQUFTLGFBQWEsR0FBRyxhQUFhLENBQUMsSUFBSSxJQUFJO0lBQ25FLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixlQUFlLENBQUMsRUFBRSxDQUFDLFNBQVMsYUFBYSxDQUFDLElBQUksR0FBRyxlQUFlLEdBQUcsU0FBUyxDQUFDO0NBQzlFLENBQUMifQ==
@@ -1,13 +1,20 @@
1
1
  import { type Logger } from '@aztec/foundation/log';
2
+ import type { TypedEventEmitter } from '@aztec/foundation/types';
2
3
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
3
- import { Tx, TxHash } from '@aztec/stdlib/tx';
4
+ import type { MerkleTreeReadOperations, WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
5
+ import { BlockHeader, Tx, TxHash } from '@aztec/stdlib/tx';
4
6
  import { type TelemetryClient } from '@aztec/telemetry-client';
5
- import type { TxPool } from './tx_pool.js';
7
+ import { ArchiveCache } from '../../msg_validators/tx_validator/archive_cache.js';
8
+ import { GasTxValidator } from '../../msg_validators/tx_validator/gas_validator.js';
9
+ import type { TxPool, TxPoolEvents, TxPoolOptions } from './tx_pool.js';
10
+ declare const AztecKVTxPool_base: new () => TypedEventEmitter<TxPoolEvents>;
6
11
  /**
7
12
  * KV implementation of the Transaction Pool.
8
13
  */
9
- export declare class AztecKVTxPool implements TxPool {
14
+ export declare class AztecKVTxPool extends AztecKVTxPool_base implements TxPool {
10
15
  #private;
16
+ /** The tx evicion logic will kick after pool size is greater than maxTxPoolSize * txPoolOverflowFactor */
17
+ txPoolOverflowFactor: number;
11
18
  /**
12
19
  * Class constructor for KV TxPool. Initiates our transaction pool as an AztecMap.
13
20
  * @param store - A KV store for live txs in the pool.
@@ -16,18 +23,32 @@ export declare class AztecKVTxPool implements TxPool {
16
23
  * @param archivedTxLimit - The number of txs to archive.
17
24
  * @param log - A logger.
18
25
  */
19
- constructor(store: AztecAsyncKVStore, archive: AztecAsyncKVStore, telemetry?: TelemetryClient, archivedTxLimit?: number, log?: Logger);
20
- markAsMined(txHashes: TxHash[], blockNumber: number): Promise<void>;
26
+ constructor(store: AztecAsyncKVStore, archive: AztecAsyncKVStore, worldStateSynchronizer: WorldStateSynchronizer, telemetry?: TelemetryClient, config?: TxPoolOptions, log?: Logger);
27
+ private countTxs;
28
+ isEmpty(): Promise<boolean>;
29
+ /**
30
+ * Marks transactions as mined in a block and updates the pool state accordingly.
31
+ * Removes the transactions from the pending set and adds them to the mined set.
32
+ * Also evicts any transactions that become invalid after the block is mined.
33
+ * @param txHashes - Array of transaction hashes that were mined
34
+ * @param blockHeader - The header of the block the transactions were mined in
35
+ */
36
+ markAsMined(txHashes: TxHash[], blockHeader: BlockHeader): Promise<void>;
21
37
  markMinedAsPending(txHashes: TxHash[]): Promise<void>;
22
38
  getPendingTxHashes(): Promise<TxHash[]>;
23
39
  getMinedTxHashes(): Promise<[TxHash, number][]>;
24
- getTxStatus(txHash: TxHash): Promise<'pending' | 'mined' | undefined>;
40
+ getPendingTxCount(): Promise<number>;
41
+ getMinedTxCount(): Promise<number>;
42
+ getTxStatus(txHash: TxHash): Promise<'pending' | 'mined' | 'deleted' | undefined>;
25
43
  /**
26
44
  * Checks if a transaction exists in the pool and returns it.
27
45
  * @param txHash - The generated tx hash.
28
46
  * @returns The transaction, if found, 'undefined' otherwise.
29
47
  */
30
48
  getTxByHash(txHash: TxHash): Promise<Tx | undefined>;
49
+ getTxsByHash(txHashes: TxHash[]): Promise<(Tx | undefined)[]>;
50
+ hasTxs(txHashes: TxHash[]): Promise<boolean[]>;
51
+ hasTx(txHash: TxHash): Promise<boolean>;
31
52
  /**
32
53
  * Checks if an archived tx exists and returns it.
33
54
  * @param txHash - The tx hash.
@@ -39,13 +60,19 @@ export declare class AztecKVTxPool implements TxPool {
39
60
  * @param txs - An array of txs to be added to the pool.
40
61
  * @returns Empty promise.
41
62
  */
42
- addTxs(txs: Tx[]): Promise<void>;
63
+ addTxs(txs: Tx[], opts?: {
64
+ source?: string;
65
+ }): Promise<number>;
43
66
  /**
44
67
  * Deletes transactions from the pool. Tx hashes that are not present are ignored.
45
- * @param txHashes - An array of tx hashes to be removed from the tx pool.
68
+ * Mined transactions are soft-deleted with a timestamp, pending transactions are permanently deleted.
69
+ * @param txHashes - An array of tx hashes to be deleted from the tx pool.
46
70
  * @returns Empty promise.
47
71
  */
48
- deleteTxs(txHashes: TxHash[]): Promise<void>;
72
+ deleteTxs(txHashes: TxHash[], opts?: {
73
+ eviction?: boolean;
74
+ permanently?: boolean;
75
+ }): Promise<void>;
49
76
  /**
50
77
  * Gets all the transactions stored in the pool.
51
78
  * @returns Array of tx objects in the order they were added to the pool.
@@ -56,11 +83,33 @@ export declare class AztecKVTxPool implements TxPool {
56
83
  * @returns An array of transaction hashes found in the tx pool.
57
84
  */
58
85
  getAllTxHashes(): Promise<TxHash[]>;
86
+ updateConfig({ maxTxPoolSize, txPoolOverflowFactor, archivedTxLimit }: TxPoolOptions): void;
87
+ markTxsAsNonEvictable(txHashes: TxHash[]): Promise<void>;
59
88
  /**
60
- * Archives a list of txs for future reference. The number of archived txs is limited by the specified archivedTxLimit.
61
- * @param txs - The list of transactions to archive.
62
- * @returns Empty promise.
89
+ * Permanently deletes deleted mined transactions from blocks up to and including the specified block number.
90
+ * @param blockNumber - Block number threshold. Deleted mined txs from this block or earlier will be permanently deleted.
91
+ * @returns The number of transactions permanently deleted.
92
+ */
93
+ cleanupDeletedMinedTxs(blockNumber: number): Promise<number>;
94
+ /**
95
+ * Creates a GasTxValidator instance.
96
+ * @param db - DB for the validator to use
97
+ * @returns A GasTxValidator instance
98
+ */
99
+ protected createGasTxValidator(db: MerkleTreeReadOperations): GasTxValidator;
100
+ /**
101
+ * Creates an ArchiveCache instance.
102
+ * @param db - DB for the cache to use
103
+ * @returns An ArchiveCache instance
63
104
  */
105
+ protected createArchiveCache(db: MerkleTreeReadOperations): ArchiveCache;
106
+ private getPendingTxByHash;
64
107
  private archiveTxs;
108
+ private evictLowPriorityTxs;
109
+ private evictInvalidTxsAfterMining;
110
+ private evictInvalidTxsAfterReorg;
111
+ private addPendingTxIndices;
112
+ private removePendingTxIndices;
65
113
  }
66
- //# sourceMappingURL=aztec_kv_tx_pool.d.ts.map
114
+ export {};
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfa3ZfdHhfcG9vbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21lbV9wb29scy90eF9wb29sL2F6dGVjX2t2X3R4X3Bvb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQTBELE1BQU0saUJBQWlCLENBQUM7QUFHakgsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUl4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXNCLE1BQU0seUJBQXlCLENBQUM7QUFLbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUdwRixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFeEU7O0dBRUc7QUFDSCxxQkFBYSxhQUFjLFNBQVEsa0JBQTRELFlBQVcsTUFBTTs7SUFTOUcsMEdBQTBHO0lBQzFHLG9CQUFvQixFQUFFLE1BQU0sQ0FBSztJQWdEakM7Ozs7Ozs7T0FPRztJQUNILFlBQ0UsS0FBSyxFQUFFLGlCQUFpQixFQUN4QixPQUFPLEVBQUUsaUJBQWlCLEVBQzFCLHNCQUFzQixFQUFFLHNCQUFzQixFQUM5QyxTQUFTLEdBQUUsZUFBc0MsRUFDakQsTUFBTSxHQUFFLGFBQWtCLEVBQzFCLEdBQUcsU0FBOEIsRUEwQmxDO0lBRUQsT0FBTyxDQUFDLFFBQVEsQ0FT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
@@ -1 +1 @@
1
- {"version":3,"file":"aztec_kv_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/aztec_kv_tx_pool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAqC,MAAM,iBAAiB,CAAC;AAG5F,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAInF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM;;IA4B1C;;;;;;;OAOG;gBAED,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,SAAS,GAAE,eAAsC,EACjD,eAAe,GAAE,MAAU,EAC3B,GAAG,SAA8B;IAgB5B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/C,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKvC,gBAAgB,IAAI,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAK/C,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAalF;;;;OAIG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAUjE;;;;OAIG;IACU,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAUzE;;;;OAIG;IACU,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B7C;;;;OAIG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCnD;;;OAGG;IACU,SAAS,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IASvC;;;OAGG;IACU,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKhD;;;;OAIG;YACW,UAAU;CAiCzB"}
1
+ {"version":3,"file":"aztec_kv_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/aztec_kv_tx_pool.ts"],"names":[],"mappings":"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"}