@aztec/p2p 0.0.1-commit.ef17749e1 → 0.0.1-commit.f1b29a41e

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 (226) hide show
  1. package/README.md +129 -3
  2. package/dest/client/factory.d.ts +1 -1
  3. package/dest/client/factory.d.ts.map +1 -1
  4. package/dest/client/factory.js +23 -10
  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 +37 -12
  10. package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker.js +17 -6
  11. package/dest/config.d.ts +13 -1
  12. package/dest/config.d.ts.map +1 -1
  13. package/dest/config.js +20 -0
  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 +4 -4
  21. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
  22. package/dest/mem_pools/attestation_pool/attestation_pool.js +6 -5
  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/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.d.ts +1 -1
  27. package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.d.ts.map +1 -1
  28. package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.js +2 -1
  29. package/dest/mem_pools/tx_pool_v2/interfaces.d.ts +7 -5
  30. package/dest/mem_pools/tx_pool_v2/interfaces.d.ts.map +1 -1
  31. package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts +9 -2
  32. package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts.map +1 -1
  33. package/dest/mem_pools/tx_pool_v2/tx_metadata.js +12 -2
  34. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts +4 -2
  35. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts.map +1 -1
  36. package/dest/mem_pools/tx_pool_v2/tx_pool_v2.js +3 -0
  37. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts +1 -1
  38. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts.map +1 -1
  39. package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.js +19 -5
  40. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +1 -1
  41. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
  42. package/dest/msg_validators/attestation_validator/attestation_validator.js +5 -4
  43. package/dest/msg_validators/clock_tolerance.d.ts +1 -1
  44. package/dest/msg_validators/clock_tolerance.d.ts.map +1 -1
  45. package/dest/msg_validators/clock_tolerance.js +4 -3
  46. package/dest/msg_validators/proposal_validator/proposal_validator.d.ts +1 -1
  47. package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
  48. package/dest/msg_validators/proposal_validator/proposal_validator.js +5 -5
  49. package/dest/msg_validators/tx_validator/contract_instance_validator.d.ts +9 -0
  50. package/dest/msg_validators/tx_validator/contract_instance_validator.d.ts.map +1 -0
  51. package/dest/msg_validators/tx_validator/contract_instance_validator.js +48 -0
  52. package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
  53. package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
  54. package/dest/msg_validators/tx_validator/data_validator.js +35 -2
  55. package/dest/msg_validators/tx_validator/factory.d.ts +23 -4
  56. package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
  57. package/dest/msg_validators/tx_validator/factory.js +36 -10
  58. package/dest/msg_validators/tx_validator/gas_validator.d.ts +13 -4
  59. package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
  60. package/dest/msg_validators/tx_validator/gas_validator.js +39 -9
  61. package/dest/msg_validators/tx_validator/phases_validator.d.ts +21 -1
  62. package/dest/msg_validators/tx_validator/phases_validator.d.ts.map +1 -1
  63. package/dest/msg_validators/tx_validator/phases_validator.js +28 -1
  64. package/dest/services/dummy_service.d.ts +5 -3
  65. package/dest/services/dummy_service.d.ts.map +1 -1
  66. package/dest/services/dummy_service.js +5 -1
  67. package/dest/services/encoding.d.ts +5 -1
  68. package/dest/services/encoding.d.ts.map +1 -1
  69. package/dest/services/encoding.js +7 -1
  70. package/dest/services/libp2p/libp2p_service.d.ts +14 -11
  71. package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
  72. package/dest/services/libp2p/libp2p_service.js +136 -65
  73. package/dest/services/peer-manager/peer_manager.d.ts +6 -2
  74. package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
  75. package/dest/services/peer-manager/peer_manager.js +22 -8
  76. package/dest/services/peer-manager/peer_scoring.d.ts +5 -2
  77. package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
  78. package/dest/services/peer-manager/peer_scoring.js +28 -10
  79. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts +11 -8
  80. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts.map +1 -1
  81. package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.js +69 -65
  82. package/dest/services/reqresp/batch-tx-requester/interface.d.ts +3 -2
  83. package/dest/services/reqresp/batch-tx-requester/interface.d.ts.map +1 -1
  84. package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts +5 -4
  85. package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts.map +1 -1
  86. package/dest/services/reqresp/batch-tx-requester/missing_txs.js +13 -7
  87. package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts +3 -1
  88. package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts.map +1 -1
  89. package/dest/services/reqresp/batch-tx-requester/peer_collection.js +3 -0
  90. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +5 -4
  91. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
  92. package/dest/services/reqresp/rate-limiter/rate_limiter.js +10 -8
  93. package/dest/services/reqresp/reqresp.d.ts +1 -1
  94. package/dest/services/reqresp/reqresp.d.ts.map +1 -1
  95. package/dest/services/reqresp/reqresp.js +17 -9
  96. package/dest/services/service.d.ts +5 -2
  97. package/dest/services/service.d.ts.map +1 -1
  98. package/dest/services/tx_collection/fast_tx_collection.d.ts +1 -4
  99. package/dest/services/tx_collection/fast_tx_collection.d.ts.map +1 -1
  100. package/dest/services/tx_collection/fast_tx_collection.js +57 -73
  101. package/dest/services/tx_collection/file_store_tx_source.d.ts +5 -4
  102. package/dest/services/tx_collection/file_store_tx_source.d.ts.map +1 -1
  103. package/dest/services/tx_collection/file_store_tx_source.js +39 -29
  104. package/dest/services/tx_collection/proposal_tx_collector.d.ts +6 -7
  105. package/dest/services/tx_collection/proposal_tx_collector.d.ts.map +1 -1
  106. package/dest/services/tx_collection/proposal_tx_collector.js +4 -4
  107. package/dest/services/tx_collection/request_tracker.d.ts +53 -0
  108. package/dest/services/tx_collection/request_tracker.d.ts.map +1 -0
  109. package/dest/services/tx_collection/request_tracker.js +84 -0
  110. package/dest/services/tx_collection/slow_tx_collection.js +1 -1
  111. package/dest/services/tx_collection/tx_collection.d.ts +3 -6
  112. package/dest/services/tx_collection/tx_collection.d.ts.map +1 -1
  113. package/dest/services/tx_collection/tx_source.d.ts +6 -5
  114. package/dest/services/tx_collection/tx_source.d.ts.map +1 -1
  115. package/dest/services/tx_collection/tx_source.js +9 -7
  116. package/dest/test-helpers/testbench-utils.d.ts +1 -1
  117. package/dest/test-helpers/testbench-utils.d.ts.map +1 -1
  118. package/dest/test-helpers/testbench-utils.js +22 -3
  119. package/dest/testbench/p2p_client_testbench_worker.js +44 -15
  120. package/dest/testbench/worker_client_manager.d.ts +1 -1
  121. package/dest/testbench/worker_client_manager.d.ts.map +1 -1
  122. package/dest/testbench/worker_client_manager.js +0 -1
  123. package/package.json +14 -14
  124. package/src/client/factory.ts +41 -13
  125. package/src/client/interface.ts +9 -1
  126. package/src/client/p2p_client.ts +39 -14
  127. package/src/client/test/tx_proposal_collector/proposal_tx_collector_worker.ts +18 -8
  128. package/src/config.ts +33 -0
  129. package/src/errors/p2p-service.error.ts +11 -0
  130. package/src/index.ts +0 -1
  131. package/src/mem_pools/attestation_pool/attestation_pool.ts +7 -5
  132. package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +6 -6
  133. package/src/mem_pools/index.ts +0 -3
  134. package/src/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.ts +2 -1
  135. package/src/mem_pools/tx_pool_v2/interfaces.ts +6 -4
  136. package/src/mem_pools/tx_pool_v2/tx_metadata.ts +18 -2
  137. package/src/mem_pools/tx_pool_v2/tx_pool_v2.ts +13 -1
  138. package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +20 -5
  139. package/src/msg_validators/attestation_validator/README.md +49 -0
  140. package/src/msg_validators/attestation_validator/attestation_validator.ts +5 -4
  141. package/src/msg_validators/clock_tolerance.ts +4 -3
  142. package/src/msg_validators/proposal_validator/README.md +123 -0
  143. package/src/msg_validators/proposal_validator/proposal_validator.ts +6 -5
  144. package/src/msg_validators/tx_validator/README.md +5 -1
  145. package/src/msg_validators/tx_validator/contract_instance_validator.ts +56 -0
  146. package/src/msg_validators/tx_validator/data_validator.ts +42 -1
  147. package/src/msg_validators/tx_validator/factory.ts +43 -3
  148. package/src/msg_validators/tx_validator/gas_validator.ts +41 -8
  149. package/src/msg_validators/tx_validator/phases_validator.ts +31 -1
  150. package/src/services/dummy_service.ts +7 -2
  151. package/src/services/encoding.ts +9 -1
  152. package/src/services/libp2p/libp2p_service.ts +137 -79
  153. package/src/services/peer-manager/peer_manager.ts +26 -8
  154. package/src/services/peer-manager/peer_scoring.ts +21 -5
  155. package/src/services/reqresp/README.md +229 -0
  156. package/src/services/reqresp/batch-tx-requester/README.md +46 -7
  157. package/src/services/reqresp/batch-tx-requester/batch_tx_requester.ts +64 -69
  158. package/src/services/reqresp/batch-tx-requester/interface.ts +2 -1
  159. package/src/services/reqresp/batch-tx-requester/missing_txs.ts +13 -6
  160. package/src/services/reqresp/batch-tx-requester/peer_collection.ts +5 -0
  161. package/src/services/reqresp/rate-limiter/rate_limiter.ts +13 -9
  162. package/src/services/reqresp/reqresp.ts +19 -11
  163. package/src/services/service.ts +6 -1
  164. package/src/services/tx_collection/fast_tx_collection.ts +57 -83
  165. package/src/services/tx_collection/file_store_tx_source.ts +43 -31
  166. package/src/services/tx_collection/proposal_tx_collector.ts +8 -13
  167. package/src/services/tx_collection/request_tracker.ts +127 -0
  168. package/src/services/tx_collection/slow_tx_collection.ts +1 -1
  169. package/src/services/tx_collection/tx_collection.ts +3 -5
  170. package/src/services/tx_collection/tx_source.ts +8 -7
  171. package/src/test-helpers/testbench-utils.ts +29 -3
  172. package/src/testbench/p2p_client_testbench_worker.ts +43 -14
  173. package/src/testbench/worker_client_manager.ts +0 -1
  174. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +0 -125
  175. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +0 -1
  176. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +0 -596
  177. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts +0 -32
  178. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts.map +0 -1
  179. package/dest/mem_pools/tx_pool/eviction/eviction_manager.js +0 -112
  180. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts +0 -157
  181. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts.map +0 -1
  182. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.js +0 -52
  183. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts +0 -16
  184. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts.map +0 -1
  185. package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.js +0 -122
  186. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts +0 -17
  187. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts.map +0 -1
  188. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.js +0 -84
  189. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts +0 -19
  190. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts.map +0 -1
  191. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.js +0 -78
  192. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts +0 -26
  193. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts.map +0 -1
  194. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.js +0 -84
  195. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts +0 -25
  196. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts.map +0 -1
  197. package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.js +0 -57
  198. package/dest/mem_pools/tx_pool/index.d.ts +0 -3
  199. package/dest/mem_pools/tx_pool/index.d.ts.map +0 -1
  200. package/dest/mem_pools/tx_pool/index.js +0 -2
  201. package/dest/mem_pools/tx_pool/priority.d.ts +0 -12
  202. package/dest/mem_pools/tx_pool/priority.d.ts.map +0 -1
  203. package/dest/mem_pools/tx_pool/priority.js +0 -15
  204. package/dest/mem_pools/tx_pool/tx_pool.d.ts +0 -127
  205. package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +0 -1
  206. package/dest/mem_pools/tx_pool/tx_pool.js +0 -3
  207. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +0 -7
  208. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +0 -1
  209. package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +0 -400
  210. package/dest/services/tx_collection/missing_txs_tracker.d.ts +0 -32
  211. package/dest/services/tx_collection/missing_txs_tracker.d.ts.map +0 -1
  212. package/dest/services/tx_collection/missing_txs_tracker.js +0 -27
  213. package/src/mem_pools/tx_pool/README.md +0 -270
  214. package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +0 -746
  215. package/src/mem_pools/tx_pool/eviction/eviction_manager.ts +0 -132
  216. package/src/mem_pools/tx_pool/eviction/eviction_strategy.ts +0 -208
  217. package/src/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.ts +0 -162
  218. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.ts +0 -104
  219. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.ts +0 -93
  220. package/src/mem_pools/tx_pool/eviction/low_priority_eviction_rule.ts +0 -106
  221. package/src/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.ts +0 -75
  222. package/src/mem_pools/tx_pool/index.ts +0 -2
  223. package/src/mem_pools/tx_pool/priority.ts +0 -20
  224. package/src/mem_pools/tx_pool/tx_pool.ts +0 -141
  225. package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +0 -319
  226. package/src/services/tx_collection/missing_txs_tracker.ts +0 -52
@@ -1,52 +0,0 @@
1
- import { TxHash } from '@aztec/stdlib/tx';
2
- import type { Tx } from '@aztec/stdlib/tx';
3
-
4
- /**
5
- * Tracks which transactions are still missing and need to be fetched.
6
- * Allows external code to mark transactions as fetched, enabling coordination
7
- * between multiple fetching mechanisms (e.g., BatchTxRequester and Rpc Node requests).
8
- */
9
- export interface IMissingTxsTracker {
10
- /** Returns the set of transaction hashes that are still missing. */
11
- get missingTxHashes(): Set<string>;
12
- /** Size of this.missingTxHashes */
13
- get numberOfMissingTxs(): number;
14
- /** Are all requested txs are fetched */
15
- allFetched(): boolean;
16
- /** Checks that transaction is still missing */
17
- isMissing(txHash: string): boolean;
18
- /** Marks a transaction as fetched. Returns true if it was previously missing. */
19
- markFetched(tx: Tx): boolean;
20
- /** Get list of collected txs */
21
- get collectedTxs(): Tx[];
22
- }
23
-
24
- export class MissingTxsTracker implements IMissingTxsTracker {
25
- public readonly collectedTxs: Tx[] = [];
26
-
27
- private constructor(public readonly missingTxHashes: Set<string>) {}
28
-
29
- public static fromArray(hashes: TxHash[] | string[]) {
30
- return new MissingTxsTracker(new Set(hashes.map(hash => hash.toString())));
31
- }
32
-
33
- markFetched(tx: Tx): boolean {
34
- if (this.missingTxHashes.delete(tx.txHash.toString())) {
35
- this.collectedTxs.push(tx);
36
- return true;
37
- }
38
- return false;
39
- }
40
-
41
- get numberOfMissingTxs(): number {
42
- return this.missingTxHashes.size;
43
- }
44
-
45
- allFetched(): boolean {
46
- return this.numberOfMissingTxs === 0;
47
- }
48
-
49
- isMissing(txHash: string): boolean {
50
- return this.missingTxHashes.has(txHash.toString());
51
- }
52
- }