@aztec/p2p 0.0.1-commit.b2a5d0dd1 → 0.0.1-commit.b3d3157a
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.
- package/dest/bootstrap/bootstrap.d.ts +1 -1
- package/dest/bootstrap/bootstrap.d.ts.map +1 -1
- package/dest/bootstrap/bootstrap.js +9 -1
- package/dest/client/factory.d.ts +3 -3
- package/dest/client/factory.d.ts.map +1 -1
- package/dest/client/factory.js +12 -9
- package/dest/client/interface.d.ts +6 -4
- package/dest/client/interface.d.ts.map +1 -1
- package/dest/client/p2p_client.d.ts +11 -8
- package/dest/client/p2p_client.d.ts.map +1 -1
- package/dest/client/p2p_client.js +53 -17
- package/dest/config.d.ts +43 -17
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +48 -8
- package/dest/errors/reqresp.error.d.ts +1 -20
- package/dest/errors/reqresp.error.d.ts.map +1 -1
- package/dest/errors/reqresp.error.js +0 -21
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +93 -55
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool.js +258 -195
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +175 -59
- package/dest/mem_pools/attestation_pool/mocks.d.ts +1 -1
- package/dest/mem_pools/attestation_pool/mocks.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/mocks.js +6 -4
- package/dest/mem_pools/instrumentation.d.ts +1 -1
- package/dest/mem_pools/instrumentation.d.ts.map +1 -1
- package/dest/mem_pools/instrumentation.js +17 -1
- package/dest/mem_pools/tx_pool_v2/archive/tx_archive.d.ts +1 -5
- package/dest/mem_pools/tx_pool_v2/archive/tx_archive.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/archive/tx_archive.js +1 -7
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.js +73 -83
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +5 -2
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
- package/dest/msg_validators/attestation_validator/attestation_validator.js +18 -2
- package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts +5 -3
- package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts.map +1 -1
- package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.js +3 -4
- package/dest/msg_validators/clock_tolerance.d.ts +1 -1
- package/dest/msg_validators/clock_tolerance.d.ts.map +1 -1
- package/dest/msg_validators/clock_tolerance.js +13 -11
- package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts +5 -2
- package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts +5 -2
- package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts +8 -2
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.js +28 -2
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts +1 -1
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.js +8 -15
- package/dest/msg_validators/tx_validator/allowed_public_setup.js +3 -3
- package/dest/msg_validators/tx_validator/cached_tx_validator.d.ts +15 -0
- package/dest/msg_validators/tx_validator/cached_tx_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/cached_tx_validator.js +19 -0
- package/dest/msg_validators/tx_validator/data_validator.d.ts +2 -1
- package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/data_validator.js +1 -0
- package/dest/msg_validators/tx_validator/factory.d.ts +5 -4
- package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/factory.js +11 -7
- package/dest/msg_validators/tx_validator/index.d.ts +3 -1
- package/dest/msg_validators/tx_validator/index.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/index.js +2 -0
- package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts +2 -1
- package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/tx_proof_validator.js +2 -0
- package/dest/msg_validators/tx_validator/tx_validation_cache.d.ts +48 -0
- package/dest/msg_validators/tx_validator/tx_validation_cache.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/tx_validation_cache.js +68 -0
- package/dest/services/discv5/discV5_service.d.ts +2 -1
- package/dest/services/discv5/discV5_service.d.ts.map +1 -1
- package/dest/services/discv5/discV5_service.js +35 -8
- package/dest/services/dummy_service.d.ts +10 -17
- package/dest/services/dummy_service.d.ts.map +1 -1
- package/dest/services/dummy_service.js +9 -18
- package/dest/services/libp2p/libp2p_service.d.ts +19 -21
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
- package/dest/services/libp2p/libp2p_service.js +147 -148
- package/dest/services/peer-manager/peer_manager.d.ts +1 -1
- package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_manager.js +1 -0
- package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts +1 -8
- package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.js +35 -44
- package/dest/services/reqresp/batch-tx-requester/interface.d.ts +8 -5
- package/dest/services/reqresp/batch-tx-requester/interface.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/tx_validator.d.ts +5 -14
- package/dest/services/reqresp/batch-tx-requester/tx_validator.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/tx_validator.js +6 -20
- package/dest/services/reqresp/interface.d.ts +3 -10
- package/dest/services/reqresp/interface.d.ts.map +1 -1
- package/dest/services/reqresp/interface.js +0 -9
- package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts +4 -3
- package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/block_txs/bitvector.js +3 -2
- package/dest/services/reqresp/protocols/block_txs/block_txs_handler.d.ts +1 -1
- package/dest/services/reqresp/protocols/block_txs/block_txs_handler.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/block_txs/block_txs_handler.js +31 -28
- package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts +12 -7
- package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.js +42 -24
- package/dest/services/reqresp/reqresp.d.ts +5 -29
- package/dest/services/reqresp/reqresp.d.ts.map +1 -1
- package/dest/services/reqresp/reqresp.js +16 -206
- package/dest/services/service.d.ts +7 -13
- package/dest/services/service.d.ts.map +1 -1
- package/dest/services/tx_collection/config.d.ts +2 -23
- package/dest/services/tx_collection/config.d.ts.map +1 -1
- package/dest/services/tx_collection/config.js +2 -55
- package/dest/services/tx_collection/file_store_tx_collection.d.ts +12 -28
- package/dest/services/tx_collection/file_store_tx_collection.d.ts.map +1 -1
- package/dest/services/tx_collection/file_store_tx_collection.js +43 -83
- package/dest/services/tx_collection/index.d.ts +2 -3
- package/dest/services/tx_collection/index.d.ts.map +1 -1
- package/dest/services/tx_collection/index.js +0 -1
- package/dest/services/tx_collection/instrumentation.d.ts +1 -1
- package/dest/services/tx_collection/instrumentation.d.ts.map +1 -1
- package/dest/services/tx_collection/instrumentation.js +0 -2
- package/dest/services/tx_collection/tx_collection.d.ts +35 -51
- package/dest/services/tx_collection/tx_collection.d.ts.map +1 -1
- package/dest/services/tx_collection/tx_collection.js +275 -119
- package/dest/services/tx_collection/tx_collection_sink.d.ts +1 -1
- package/dest/services/tx_collection/tx_collection_sink.js +2 -2
- package/dest/services/tx_file_store/tx_file_store.d.ts +1 -3
- package/dest/services/tx_file_store/tx_file_store.d.ts.map +1 -1
- package/dest/services/tx_file_store/tx_file_store.js +4 -14
- package/dest/services/tx_provider.d.ts +3 -1
- package/dest/services/tx_provider.d.ts.map +1 -1
- package/dest/services/tx_provider.js +3 -0
- package/dest/test-helpers/make-test-p2p-clients.d.ts +1 -1
- package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -1
- package/dest/test-helpers/make-test-p2p-clients.js +1 -1
- package/dest/test-helpers/mock-pubsub.d.ts +13 -7
- package/dest/test-helpers/mock-pubsub.d.ts.map +1 -1
- package/dest/test-helpers/mock-pubsub.js +12 -37
- package/dest/test-helpers/reqresp-nodes.d.ts +4 -5
- package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
- package/dest/test-helpers/reqresp-nodes.js +11 -15
- package/dest/test-helpers/test_tx_provider.d.ts +3 -1
- package/dest/test-helpers/test_tx_provider.d.ts.map +1 -1
- package/dest/test-helpers/test_tx_provider.js +3 -0
- package/dest/test-helpers/testbench-utils.d.ts +12 -14
- package/dest/test-helpers/testbench-utils.d.ts.map +1 -1
- package/dest/test-helpers/testbench-utils.js +19 -14
- package/dest/testbench/p2p_client_testbench_worker.d.ts +3 -5
- package/dest/testbench/p2p_client_testbench_worker.d.ts.map +1 -1
- package/dest/testbench/p2p_client_testbench_worker.js +13 -24
- package/dest/testbench/worker_client_manager.d.ts +3 -6
- package/dest/testbench/worker_client_manager.d.ts.map +1 -1
- package/dest/testbench/worker_client_manager.js +2 -8
- package/dest/util.d.ts +11 -6
- package/dest/util.d.ts.map +1 -1
- package/dest/util.js +35 -14
- package/dest/versioning.d.ts +3 -6
- package/dest/versioning.d.ts.map +1 -1
- package/dest/versioning.js +3 -24
- package/package.json +15 -14
- package/src/bootstrap/bootstrap.ts +9 -1
- package/src/client/factory.ts +20 -5
- package/src/client/interface.ts +6 -10
- package/src/client/p2p_client.ts +61 -36
- package/src/client/test/{tx_proposal_collector/README.md → p2p_client.batch_tx_requester.bench.README.md} +23 -53
- package/src/config.ts +94 -6
- package/src/errors/reqresp.error.ts +0 -25
- package/src/mem_pools/attestation_pool/attestation_pool.ts +309 -238
- package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +198 -62
- package/src/mem_pools/attestation_pool/mocks.ts +13 -8
- package/src/mem_pools/instrumentation.ts +5 -1
- package/src/mem_pools/tx_pool_v2/archive/tx_archive.ts +1 -9
- package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +73 -90
- package/src/msg_validators/attestation_validator/attestation_validator.ts +21 -1
- package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +11 -7
- package/src/msg_validators/clock_tolerance.ts +13 -12
- package/src/msg_validators/proposal_validator/block_proposal_validator.ts +9 -2
- package/src/msg_validators/proposal_validator/checkpoint_proposal_validator.ts +14 -2
- package/src/msg_validators/proposal_validator/proposal_validator.ts +39 -2
- package/src/msg_validators/tx_validator/aggregate_tx_validator.ts +3 -12
- package/src/msg_validators/tx_validator/allowed_public_setup.ts +3 -3
- package/src/msg_validators/tx_validator/cached_tx_validator.ts +31 -0
- package/src/msg_validators/tx_validator/data_validator.ts +2 -0
- package/src/msg_validators/tx_validator/factory.ts +15 -6
- package/src/msg_validators/tx_validator/index.ts +2 -0
- package/src/msg_validators/tx_validator/tx_proof_validator.ts +2 -0
- package/src/msg_validators/tx_validator/tx_validation_cache.ts +101 -0
- package/src/services/discv5/discV5_service.ts +38 -5
- package/src/services/dummy_service.ts +12 -43
- package/src/services/libp2p/libp2p_service.ts +169 -167
- package/src/services/peer-manager/peer_manager.ts +1 -0
- package/src/services/reqresp/README.md +0 -14
- package/src/services/reqresp/batch-tx-requester/batch_tx_requester.ts +39 -52
- package/src/services/reqresp/batch-tx-requester/interface.ts +11 -4
- package/src/services/reqresp/batch-tx-requester/tx_validator.ts +12 -25
- package/src/services/reqresp/interface.ts +2 -38
- package/src/services/reqresp/protocols/block_txs/bitvector.ts +3 -2
- package/src/services/reqresp/protocols/block_txs/block_txs_handler.ts +34 -30
- package/src/services/reqresp/protocols/block_txs/block_txs_reqresp.ts +47 -20
- package/src/services/reqresp/reqresp.ts +11 -251
- package/src/services/service.ts +9 -30
- package/src/services/tx_collection/config.ts +3 -80
- package/src/services/tx_collection/file_store_tx_collection.ts +54 -103
- package/src/services/tx_collection/index.ts +1 -6
- package/src/services/tx_collection/instrumentation.ts +1 -7
- package/src/services/tx_collection/tx_collection.ts +330 -173
- package/src/services/tx_collection/tx_collection_sink.ts +2 -2
- package/src/services/tx_file_store/tx_file_store.ts +5 -17
- package/src/services/tx_provider.ts +5 -0
- package/src/test-helpers/make-test-p2p-clients.ts +1 -0
- package/src/test-helpers/mock-pubsub.ts +17 -60
- package/src/test-helpers/reqresp-nodes.ts +8 -20
- package/src/test-helpers/test_tx_provider.ts +5 -0
- package/src/test-helpers/testbench-utils.ts +23 -27
- package/src/testbench/p2p_client_testbench_worker.ts +16 -42
- package/src/testbench/worker_client_manager.ts +4 -19
- package/src/util.ts +32 -17
- package/src/versioning.ts +3 -33
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker.d.ts +0 -2
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker.d.ts.map +0 -1
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker.js +0 -318
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker_protocol.d.ts +0 -73
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker_protocol.d.ts.map +0 -1
- package/dest/client/test/tx_proposal_collector/proposal_tx_collector_worker_protocol.js +0 -8
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts +0 -64
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts.map +0 -1
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.js +0 -151
- package/dest/services/tx_collection/fast_tx_collection.d.ts +0 -51
- package/dest/services/tx_collection/fast_tx_collection.d.ts.map +0 -1
- package/dest/services/tx_collection/fast_tx_collection.js +0 -311
- package/dest/services/tx_collection/proposal_tx_collector.d.ts +0 -48
- package/dest/services/tx_collection/proposal_tx_collector.d.ts.map +0 -1
- package/dest/services/tx_collection/proposal_tx_collector.js +0 -50
- package/dest/services/tx_collection/slow_tx_collection.d.ts +0 -57
- package/dest/services/tx_collection/slow_tx_collection.d.ts.map +0 -1
- package/dest/services/tx_collection/slow_tx_collection.js +0 -211
- package/src/client/test/tx_proposal_collector/proposal_tx_collector_worker.ts +0 -357
- package/src/client/test/tx_proposal_collector/proposal_tx_collector_worker_protocol.ts +0 -43
- package/src/services/reqresp/connection-sampler/batch_connection_sampler.ts +0 -161
- package/src/services/tx_collection/fast_tx_collection.ts +0 -361
- package/src/services/tx_collection/proposal_tx_collector.ts +0 -108
- package/src/services/tx_collection/slow_tx_collection.ts +0 -266
|
@@ -60,4 +60,4 @@ export declare function makeTestP2PClients(numberOfPeers: number, testConfig: Ma
|
|
|
60
60
|
enr: string;
|
|
61
61
|
}[]>;
|
|
62
62
|
export declare function startTestP2PClients(clients: P2PClient[]): Promise<void>;
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZS10ZXN0LXAycC1jbGllbnRzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC1oZWxwZXJzL21ha2UtdGVzdC1wMnAtY2xpZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFLbEUsT0FBTyxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUk5RSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDekYsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJdEUsT0FBTyxFQUFFLEtBQUssb0JBQW9CLEVBQWtDLE1BQU0sa0JBQWtCLENBQUM7QUFHN0YsTUFBTSxXQUFXLHdCQUF3QjtJQUN2QyxtQkFBbUIsRUFBRSxlQUFlLENBQUM7SUFDckMsVUFBVSxFQUFFLFFBQVEsQ0FBQztJQUNyQixjQUFjLEVBQUUsVUFBVSxDQUFDO0lBQzNCLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQztJQUN2QyxrQkFBa0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUM3QixhQUFhLEVBQUUsU0FBUyxDQUFDO0lBQ3pCLGtCQUFrQixDQUFDLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNoQixvQkFBb0IsQ0FBQyxFQUFFLG9CQUFvQixDQUFDO0NBQzdDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFzQix5QkFBeUIsQ0FDN0MsZ0JBQWdCLEVBQUUsTUFBTSxFQUN4QixJQUFJLEVBQUUsTUFBTSxFQUNaLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFDZixPQUFPLEVBQUUsd0JBQXdCLHNCQU1sQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0IsaUJBQWlCLENBQ3JDLGdCQUFnQixFQUFFLE1BQU0sRUFDeEIsSUFBSSxFQUFFLE1BQU0sRUFDWixLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQ2YsRUFDRSxrQkFBeUIsRUFDekIsYUFBYSxFQUNiLGtCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLGNBQWMsRUFDZCxjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLE1BQXdDLEVBQ3pDLEVBQUUsd0JBQXdCLHNCQTRDNUI7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFzQiwwQkFBMEIsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSx3QkFBd0I7Ozs7O0tBdUMzRztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQXNCLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLHdCQUF3Qjs7Ozs7S0FnQ25HO0FBRUQsd0JBQXNCLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBRzdEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-test-p2p-clients.d.ts","sourceRoot":"","sources":["../../src/test-helpers/make-test-p2p-clients.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAKlE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAI9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAItE,OAAO,EAAE,KAAK,oBAAoB,EAAkC,MAAM,kBAAkB,CAAC;AAG7F,MAAM,WAAW,wBAAwB;IACvC,mBAAmB,EAAE,eAAe,CAAC;IACrC,UAAU,EAAE,QAAQ,CAAC;IACrB,cAAc,EAAE,UAAU,CAAC;IAC3B,cAAc,EAAE,sBAAsB,CAAC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE,wBAAwB,sBAMlC;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EAAE,EACf,EACE,kBAAyB,EACzB,aAAa,EACb,kBAAuB,EACvB,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,MAAwC,EACzC,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"make-test-p2p-clients.d.ts","sourceRoot":"","sources":["../../src/test-helpers/make-test-p2p-clients.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAKlE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAI9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAItE,OAAO,EAAE,KAAK,oBAAoB,EAAkC,MAAM,kBAAkB,CAAC;AAG7F,MAAM,WAAW,wBAAwB;IACvC,mBAAmB,EAAE,eAAe,CAAC;IACrC,UAAU,EAAE,QAAQ,CAAC;IACrB,cAAc,EAAE,UAAU,CAAC;IAC3B,cAAc,EAAE,sBAAsB,CAAC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE,wBAAwB,sBAMlC;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EAAE,EACf,EACE,kBAAyB,EACzB,aAAa,EACb,kBAAuB,EACvB,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,MAAwC,EACzC,EAAE,wBAAwB,sBA4C5B;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,wBAAwB;;;;;KAuC3G;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,wBAAwB;;;;;KAgCnG;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,iBAG7D"}
|
|
@@ -57,7 +57,7 @@ import { AlwaysFalseCircuitVerifier, AlwaysTrueCircuitVerifier } from './reqresp
|
|
|
57
57
|
store: kvStore,
|
|
58
58
|
logger,
|
|
59
59
|
p2pServiceFactory: mockGossipSubNetwork && getMockPubSubP2PServiceFactory(mockGossipSubNetwork)
|
|
60
|
-
});
|
|
60
|
+
}, await l2BlockSource.getInitialHeader().hash());
|
|
61
61
|
return client;
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
@@ -4,7 +4,7 @@ import { type Libp2pStatus, type PeerId, type PublishResult, type TopicValidator
|
|
|
4
4
|
import { LibP2PService } from '../services/index.js';
|
|
5
5
|
import type { P2PReqRespConfig } from '../services/reqresp/config.js';
|
|
6
6
|
import type { ConnectionSampler } from '../services/reqresp/connection-sampler/connection_sampler.js';
|
|
7
|
-
import {
|
|
7
|
+
import type { ReqRespInterface, ReqRespResponse, ReqRespSubProtocol, ReqRespSubProtocolHandler, ReqRespSubProtocolHandlers } from '../services/reqresp/interface.js';
|
|
8
8
|
import type { PubSubLibp2p } from '../util.js';
|
|
9
9
|
type GossipSubService = PubSubLibp2p['services']['pubsub'];
|
|
10
10
|
/**
|
|
@@ -14,8 +14,8 @@ type GossipSubService = PubSubLibp2p['services']['pubsub'];
|
|
|
14
14
|
export declare function getMockPubSubP2PServiceFactory(network: MockGossipSubNetwork): (...args: Parameters<(typeof LibP2PService)['new']>) => Promise<LibP2PService>;
|
|
15
15
|
/**
|
|
16
16
|
* Mock implementation of ReqRespInterface that routes requests to other peers' handlers through the mock network.
|
|
17
|
-
* When a peer calls
|
|
18
|
-
*
|
|
17
|
+
* When a peer calls sendRequestToPeer, the mock looks up the target peer's registered handler for the
|
|
18
|
+
* sub-protocol and invokes it, simulating the request-response protocol without actual libp2p streams.
|
|
19
19
|
*/
|
|
20
20
|
declare class MockReqResp implements ReqRespInterface {
|
|
21
21
|
private peerId;
|
|
@@ -25,11 +25,10 @@ declare class MockReqResp implements ReqRespInterface {
|
|
|
25
25
|
constructor(peerId: PeerId, network: MockGossipSubNetwork);
|
|
26
26
|
updateConfig(_config: Partial<P2PReqRespConfig>): void;
|
|
27
27
|
setShouldRejectPeer(): void;
|
|
28
|
-
start(subProtocolHandlers: Partial<ReqRespSubProtocolHandlers
|
|
29
|
-
addSubProtocol(subProtocol: ReqRespSubProtocol, handler: ReqRespSubProtocolHandler
|
|
28
|
+
start(subProtocolHandlers: Partial<ReqRespSubProtocolHandlers>): Promise<void>;
|
|
29
|
+
addSubProtocol(subProtocol: ReqRespSubProtocol, handler: ReqRespSubProtocolHandler): Promise<void>;
|
|
30
30
|
stop(): Promise<void>;
|
|
31
31
|
getHandler(subProtocol: ReqRespSubProtocol): ReqRespSubProtocolHandler | undefined;
|
|
32
|
-
sendBatchRequest<SubProtocol extends ReqRespSubProtocol>(subProtocol: SubProtocol, requests: InstanceType<SubProtocolMap[SubProtocol]['request']>[], pinnedPeer: PeerId | undefined, _timeoutMs?: number, _maxPeers?: number, _maxRetryAttempts?: number): Promise<InstanceType<SubProtocolMap[SubProtocol]['response']>[]>;
|
|
33
32
|
sendRequestToPeer(peerId: PeerId, subProtocol: ReqRespSubProtocol, payload: Buffer, _dialTimeout?: number): Promise<ReqRespResponse>;
|
|
34
33
|
getConnectionSampler(): Pick<ConnectionSampler, 'getPeerListSortedByConnectionCountAsc'>;
|
|
35
34
|
}
|
|
@@ -47,6 +46,13 @@ export declare class MockPubSub implements PubSubLibp2p {
|
|
|
47
46
|
pubsub: Pick<import("@chainsafe/libp2p-gossipsub").GossipSub, "addEventListener" | "direct" | "getMeshPeers" | "publish" | "removeEventListener" | "reportMessageValidationResult" | "subscribe"> & {
|
|
48
47
|
score: Pick<import("@chainsafe/libp2p-gossipsub/score").PeerScore, "score">;
|
|
49
48
|
};
|
|
49
|
+
components: {
|
|
50
|
+
addressManager: {
|
|
51
|
+
addObservedAddr: () => void;
|
|
52
|
+
confirmObservedAddr: () => void;
|
|
53
|
+
removeObservedAddr: () => void;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
50
56
|
};
|
|
51
57
|
start(): void | Promise<void>;
|
|
52
58
|
stop(): void | Promise<void>;
|
|
@@ -90,4 +96,4 @@ export declare class MockGossipSubNetwork {
|
|
|
90
96
|
publishToPeers(topic: TopicStr, data: Uint8Array, sender: PeerId): Promise<void>;
|
|
91
97
|
}
|
|
92
98
|
export {};
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay1wdWJzdWIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LWhlbHBlcnMvbW9jay1wdWJzdWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckYsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEcsT0FBTyxFQUNMLEtBQUssWUFBWSxFQUNqQixLQUFLLE1BQU0sRUFDWCxLQUFLLGFBQWEsRUFDbEIsS0FBSyxvQkFBb0IsRUFDekIsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUFJM0IsT0FBTyxFQUErQyxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRyxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3RFLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDdEcsT0FBTyxLQUFLLEVBQ1YsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMzQixNQUFNLGtDQUFrQyxDQUFDO0FBRzFDLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUvQyxLQUFLLGdCQUFnQixHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUUzRDs7O0dBR0c7QUFDSCx3QkFBZ0IsOEJBQThCLENBQzVDLE9BQU8sRUFBRSxvQkFBb0IsR0FDNUIsQ0FBQyxHQUFHLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQyxPQUFPLGFBQWEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQXdDaEY7QUFFRDs7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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock-pubsub.d.ts","sourceRoot":"","sources":["../../src/test-helpers/mock-pubsub.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AACpG,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAA+C,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8DAA8D,CAAC;AACtG,OAAO,
|
|
1
|
+
{"version":3,"file":"mock-pubsub.d.ts","sourceRoot":"","sources":["../../src/test-helpers/mock-pubsub.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AACpG,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAA+C,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8DAA8D,CAAC;AACtG,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,KAAK,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,oBAAoB,GAC5B,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAwChF;AAED;;;;GAIG;AACH,cAAM,WAAY,YAAW,gBAAgB;IAKzC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IALjB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,MAAM,CAAyC;IAEvD,YACU,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,oBAAoB,EAGtC;IAED,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAG;IACzD,mBAAmB,IAAI,IAAI,CAAG;IAE9B,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7E;IAED,cAAc,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjG;IAED,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAGpB;IAED,UAAU,CAAC,WAAW,EAAE,kBAAkB,GAAG,yBAAyB,GAAG,SAAS,CAEjF;IAEK,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,kBAAkB,EAC/B,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,eAAe,CAAC,CAiB1B;IAED,oBAAoB,IAAI,IAAI,CAAC,iBAAiB,EAAE,uCAAuC,CAAC,CAQvF;CACF;AAED;;;;GAIG;AACH,qBAAa,UAAW,YAAW,YAAY;IAMpC,MAAM,EAAE,MAAM;IALhB,MAAM,EAAE,YAAY,CAAa;IAExC,OAAO,CAAC,SAAS,CAAmB;IAEpC,YACS,MAAM,EAAE,MAAM,EACrB,OAAO,EAAE,oBAAoB,EAG9B;IAED,IAAI,QAAQ;;;;;;;;;;;MAWX;IAED,KAAK,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAG5B;IACD,IAAI,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAG3B;CACF;AAED,cAAM,oBAAqB,SAAQ,iBAAiB,CAAC,eAAe,CAAE,YAAW,gBAAgB;IAMtF,MAAM,EAAE,MAAM;IACrB,OAAO,CAAC,OAAO;IANjB,OAAO,CAAC,MAAM,CAA2C;IAClD,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAa;IACnD,SAAgB,MAAM,cAAqB;IAE3C,YACS,MAAM,EAAE,MAAM,EACb,OAAO,EAAE,oBAAoB,EAItC;IAED,KAAK;;MAEH;IAEI,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAI5F;IAED,OAAO,CAAC,GAAG,EAAE,gBAAgB,QAM5B;IAED,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAG/B;IAED,6BAA6B,CAAC,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,GAAG,IAAI,CAKnH;IAED,YAAY,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,EAAE,CAQ1C;CACF;AAED;;;;GAIG;AACH,qBAAa,oBAAoB;IAQ7B,qFAAqF;IACrF,OAAO,CAAC,kBAAkB;IAR5B,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,SAAS,CAAK;IAEtB,OAAO,CAAC,MAAM,CAAmD;IAEjE;IACE,qFAAqF;IAC7E,kBAAkB,GAAE,MAAU,EACpC;IAEG,qBAAqB,IAAI,MAAM,CAErC;IAEM,QAAQ,IAAI,MAAM,EAAE,CAE1B;IAEM,YAAY,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAEpD;IAEM,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAElD;IAEM,eAAe,IAAI,WAAW,EAAE,CAEtC;IAEY,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB5F;CACF"}
|
|
@@ -2,7 +2,6 @@ import { createLogger } from '@aztec/foundation/log';
|
|
|
2
2
|
import { sleep } from '@aztec/foundation/sleep';
|
|
3
3
|
import { TypedEventEmitter } from '@libp2p/interface';
|
|
4
4
|
import { DummyPeerDiscoveryService, DummyPeerManager, LibP2PService } from '../services/index.js';
|
|
5
|
-
import { responseFromBuffer } from '../services/reqresp/interface.js';
|
|
6
5
|
import { ReqRespStatus } from '../services/reqresp/status.js';
|
|
7
6
|
import { GossipSubEvent } from '../types/index.js';
|
|
8
7
|
/**
|
|
@@ -21,8 +20,8 @@ import { GossipSubEvent } from '../types/index.js';
|
|
|
21
20
|
}
|
|
22
21
|
/**
|
|
23
22
|
* Mock implementation of ReqRespInterface that routes requests to other peers' handlers through the mock network.
|
|
24
|
-
* When a peer calls
|
|
25
|
-
*
|
|
23
|
+
* When a peer calls sendRequestToPeer, the mock looks up the target peer's registered handler for the
|
|
24
|
+
* sub-protocol and invokes it, simulating the request-response protocol without actual libp2p streams.
|
|
26
25
|
*/ class MockReqResp {
|
|
27
26
|
peerId;
|
|
28
27
|
network;
|
|
@@ -37,11 +36,11 @@ import { GossipSubEvent } from '../types/index.js';
|
|
|
37
36
|
}
|
|
38
37
|
updateConfig(_config) {}
|
|
39
38
|
setShouldRejectPeer() {}
|
|
40
|
-
start(subProtocolHandlers
|
|
39
|
+
start(subProtocolHandlers) {
|
|
41
40
|
Object.assign(this.handlers, subProtocolHandlers);
|
|
42
41
|
return Promise.resolve();
|
|
43
42
|
}
|
|
44
|
-
addSubProtocol(subProtocol, handler
|
|
43
|
+
addSubProtocol(subProtocol, handler) {
|
|
45
44
|
this.handlers[subProtocol] = handler;
|
|
46
45
|
return Promise.resolve();
|
|
47
46
|
}
|
|
@@ -52,37 +51,6 @@ import { GossipSubEvent } from '../types/index.js';
|
|
|
52
51
|
getHandler(subProtocol) {
|
|
53
52
|
return this.handlers[subProtocol];
|
|
54
53
|
}
|
|
55
|
-
async sendBatchRequest(subProtocol, requests, pinnedPeer, _timeoutMs, _maxPeers, _maxRetryAttempts) {
|
|
56
|
-
const responses = [];
|
|
57
|
-
const peers = this.network.getReqRespPeers().filter((p)=>!p.peerId.equals(this.peerId));
|
|
58
|
-
const targetPeers = pinnedPeer ? peers.filter((p)=>p.peerId.equals(pinnedPeer)) : peers;
|
|
59
|
-
const delayMs = this.network.getPropagationDelayMs();
|
|
60
|
-
if (delayMs > 0) {
|
|
61
|
-
await sleep(delayMs);
|
|
62
|
-
}
|
|
63
|
-
for (const request of requests){
|
|
64
|
-
const requestBuffer = request.toBuffer();
|
|
65
|
-
for (const peer of targetPeers){
|
|
66
|
-
const handler = peer.getHandler(subProtocol);
|
|
67
|
-
if (!handler) {
|
|
68
|
-
continue;
|
|
69
|
-
}
|
|
70
|
-
try {
|
|
71
|
-
const responseBuffer = await handler(this.peerId, requestBuffer);
|
|
72
|
-
if (responseBuffer.length > 0) {
|
|
73
|
-
const response = responseFromBuffer(subProtocol, responseBuffer);
|
|
74
|
-
responses.push(response);
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
} catch (err) {
|
|
78
|
-
this.logger.debug(`Mock reqresp handler error from peer ${peer.peerId}`, {
|
|
79
|
-
err
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return responses;
|
|
85
|
-
}
|
|
86
54
|
async sendRequestToPeer(peerId, subProtocol, payload, _dialTimeout) {
|
|
87
55
|
const peer = this.network.getReqRespPeers().find((p)=>p.peerId.equals(peerId));
|
|
88
56
|
const handler = peer?.getHandler(subProtocol);
|
|
@@ -129,7 +97,14 @@ import { GossipSubEvent } from '../types/index.js';
|
|
|
129
97
|
}
|
|
130
98
|
get services() {
|
|
131
99
|
return {
|
|
132
|
-
pubsub: this.gossipSub
|
|
100
|
+
pubsub: this.gossipSub,
|
|
101
|
+
components: {
|
|
102
|
+
addressManager: {
|
|
103
|
+
addObservedAddr: ()=>{},
|
|
104
|
+
confirmObservedAddr: ()=>{},
|
|
105
|
+
removeObservedAddr: ()=>{}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
133
108
|
};
|
|
134
109
|
}
|
|
135
110
|
start() {
|
|
@@ -9,11 +9,11 @@ import type { PeerId } from '@libp2p/interface';
|
|
|
9
9
|
import { SignableENR } from '@nethermindeth/enr';
|
|
10
10
|
import { type Libp2p } from 'libp2p';
|
|
11
11
|
import { BootstrapNode } from '../bootstrap/bootstrap.js';
|
|
12
|
-
import type
|
|
12
|
+
import { type BootnodeConfig } from '../config.js';
|
|
13
13
|
import type { MemPools } from '../mem_pools/interface.js';
|
|
14
14
|
import { LibP2PService } from '../services/libp2p/libp2p_service.js';
|
|
15
15
|
import { PeerScoring } from '../services/peer-manager/peer_scoring.js';
|
|
16
|
-
import { type ReqRespSubProtocolHandlers, type ReqRespSubProtocolRateLimits
|
|
16
|
+
import { type ReqRespSubProtocolHandlers, type ReqRespSubProtocolRateLimits } from '../services/reqresp/interface.js';
|
|
17
17
|
import { ReqResp } from '../services/reqresp/reqresp.js';
|
|
18
18
|
import { type FullLibp2p } from '../util.js';
|
|
19
19
|
/**
|
|
@@ -38,13 +38,12 @@ export type ReqRespNode = {
|
|
|
38
38
|
req: ReqResp;
|
|
39
39
|
};
|
|
40
40
|
export declare const MOCK_SUB_PROTOCOL_HANDLERS: ReqRespSubProtocolHandlers;
|
|
41
|
-
export declare const MOCK_SUB_PROTOCOL_VALIDATORS: ReqRespSubProtocolValidators;
|
|
42
41
|
/**
|
|
43
42
|
* @param numberOfNodes - the number of nodes to create
|
|
44
43
|
* @returns An array of the created nodes
|
|
45
44
|
*/
|
|
46
45
|
export declare const createNodes: (peerScoring: PeerScoring, numberOfNodes: number, rateLimits?: Partial<ReqRespSubProtocolRateLimits>) => Promise<ReqRespNode[]>;
|
|
47
|
-
export declare const startNodes: (nodes: ReqRespNode[], subProtocolHandlers?: ReqRespSubProtocolHandlers
|
|
46
|
+
export declare const startNodes: (nodes: ReqRespNode[], subProtocolHandlers?: ReqRespSubProtocolHandlers) => Promise<void>;
|
|
48
47
|
export declare const stopNodes: (nodes: ReqRespNode[]) => Promise<void>;
|
|
49
48
|
export declare const createReqResp: (peerScoring: PeerScoring, rateLimits?: Partial<ReqRespSubProtocolRateLimits>) => Promise<ReqRespNode>;
|
|
50
49
|
export declare const connectToPeers: (nodes: ReqRespNode[]) => Promise<void>;
|
|
@@ -66,4 +65,4 @@ export declare function createBootstrapNodeFromPrivateKey(privateKey: string, po
|
|
|
66
65
|
*/
|
|
67
66
|
export declare function getBootstrapNodeEnr(privateKey: string, port: number): Promise<SignableENR>;
|
|
68
67
|
export declare function createBootstrapNode(port: number, telemetry?: TelemetryClient, chainConfig?: ChainConfig): Promise<BootstrapNode>;
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxcmVzcC1ub2Rlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QtaGVscGVycy9yZXFyZXNwLW5vZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3JELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBb0IsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpFLE9BQU8sS0FBSyxFQUNWLDZCQUE2QixFQUM3QiwwQkFBMEIsRUFDMUIsc0JBQXNCLEVBQ3ZCLE1BQU0saUNBQWlDLENBQUM7QUFFekMsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFM0MsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHlCQUF5QixDQUFDO0FBT25GLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBSWhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQW9DLE1BQU0sUUFBUSxDQUFDO0FBRXZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQThDLE1BQU0sY0FBYyxDQUFDO0FBQy9GLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFdkUsT0FBTyxFQUVMLEtBQUssMEJBQTBCLEVBQy9CLEtB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reqresp-nodes.d.ts","sourceRoot":"","sources":["../../src/test-helpers/reqresp-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,KAAK,WAAW,EAAoB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,KAAK,EACV,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAOnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,KAAK,MAAM,EAAoC,MAAM,QAAQ,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"reqresp-nodes.d.ts","sourceRoot":"","sources":["../../src/test-helpers/reqresp-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,KAAK,WAAW,EAAoB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,KAAK,EACV,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAOnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,KAAK,MAAM,EAAoC,MAAM,QAAQ,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,KAAK,cAAc,EAA8C,MAAM,cAAc,CAAC;AAC/F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAEvE,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EAClC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,KAAK,UAAU,EAA2E,MAAM,YAAY,CAAC;AAGtH;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,GAAE,MAAM,EAAO,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,eAAe,GAAE,OAAe,EAChC,KAAK,GAAE,OAAc,GACpB,OAAO,CAAC,UAAU,CAAC,CAyCrB;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,aAAa,sBAAe,EAC5B,QAAQ,EAAE,aAAa,GAAG,kBAAkB,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,eAAe,EAC1B,IAAI,GAAE,MAAU,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,GAAE,WAA8B,0BA0D5C;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,OAAO,CAAC;CACd,CAAC;AAGF,eAAO,MAAM,0BAA0B,EAAE,0BAOxC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,iIAMvB,CAAC;AAEF,eAAO,MAAM,UAAU,2FAItB,CAAC;AAEF,eAAO,MAAM,SAAS,yCAGrB,CAAC;AAGF,eAAO,MAAM,aAAa,wGAazB,CAAC;AAGF,eAAO,MAAM,cAAc,yCAU1B,CAAC;AAGF,qBAAa,yBAA0B,YAAW,6BAA6B;IAC7E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpB;IACD,WAAW,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAExD;CACF;AACD,qBAAa,0BAA2B,YAAW,6BAA6B;IAC9E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpB;IACD,WAAW,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAExD;CACF;AAGD,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,cAAc,CAapH;AAED,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,eAAsC,EACjD,WAAW,GAAE,WAA8B,GAC1C,OAAO,CAAC,aAAa,CAAC,CAGxB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,wBAOzE;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,eAAsC,EACjD,WAAW,GAAE,WAA8B,GAC1C,OAAO,CAAC,aAAa,CAAC,CAKxB"}
|
|
@@ -18,12 +18,13 @@ import { SignableENR } from '@nethermindeth/enr';
|
|
|
18
18
|
import getPort from 'get-port';
|
|
19
19
|
import { createLibp2p } from 'libp2p';
|
|
20
20
|
import { BootstrapNode } from '../bootstrap/bootstrap.js';
|
|
21
|
+
import { DEFAULT_PUBLIC_IP_SERVICES } from '../config.js';
|
|
21
22
|
import { DiscV5Service } from '../services/discv5/discV5_service.js';
|
|
22
23
|
import { APP_SPECIFIC_WEIGHT } from '../services/gossipsub/scoring.js';
|
|
23
24
|
import { LibP2PService } from '../services/libp2p/libp2p_service.js';
|
|
24
25
|
import { PeerManager } from '../services/peer-manager/peer_manager.js';
|
|
25
26
|
import { PeerScoring } from '../services/peer-manager/peer_scoring.js';
|
|
26
|
-
import { ReqRespSubProtocol
|
|
27
|
+
import { ReqRespSubProtocol } from '../services/reqresp/interface.js';
|
|
27
28
|
import { pingHandler } from '../services/reqresp/protocols/index.js';
|
|
28
29
|
import { ReqResp } from '../services/reqresp/reqresp.js';
|
|
29
30
|
import { convertToMultiaddr, createLibP2PPeerIdFromPrivateKey } from '../util.js';
|
|
@@ -56,7 +57,11 @@ import { getVersions } from '../versioning.js';
|
|
|
56
57
|
services: {
|
|
57
58
|
identify: identify({
|
|
58
59
|
protocolPrefix: 'aztec'
|
|
59
|
-
})
|
|
60
|
+
}),
|
|
61
|
+
components: (components)=>({
|
|
62
|
+
connectionManager: components.connectionManager,
|
|
63
|
+
addressManager: components.addressManager
|
|
64
|
+
})
|
|
60
65
|
}
|
|
61
66
|
};
|
|
62
67
|
if (boostrapAddrs.length > 0) {
|
|
@@ -120,25 +125,15 @@ export const MOCK_SUB_PROTOCOL_HANDLERS = {
|
|
|
120
125
|
[ReqRespSubProtocol.AUTH]: (_msg)=>Promise.resolve(Buffer.from('auth')),
|
|
121
126
|
[ReqRespSubProtocol.BLOCK_TXS]: (_msg)=>Promise.resolve(Buffer.from('block_txs'))
|
|
122
127
|
};
|
|
123
|
-
// By default, all requests are valid
|
|
124
|
-
// If you want to test an invalid response, you can override the validator
|
|
125
|
-
export const MOCK_SUB_PROTOCOL_VALIDATORS = {
|
|
126
|
-
[ReqRespSubProtocol.PING]: noopValidator,
|
|
127
|
-
[ReqRespSubProtocol.STATUS]: noopValidator,
|
|
128
|
-
[ReqRespSubProtocol.TX]: noopValidator,
|
|
129
|
-
[ReqRespSubProtocol.GOODBYE]: noopValidator,
|
|
130
|
-
[ReqRespSubProtocol.AUTH]: noopValidator,
|
|
131
|
-
[ReqRespSubProtocol.BLOCK_TXS]: noopValidator
|
|
132
|
-
};
|
|
133
128
|
/**
|
|
134
129
|
* @param numberOfNodes - the number of nodes to create
|
|
135
130
|
* @returns An array of the created nodes
|
|
136
131
|
*/ export const createNodes = (peerScoring, numberOfNodes, rateLimits = {})=>{
|
|
137
132
|
return timesParallel(numberOfNodes, ()=>createReqResp(peerScoring, rateLimits));
|
|
138
133
|
};
|
|
139
|
-
export const startNodes = async (nodes, subProtocolHandlers = MOCK_SUB_PROTOCOL_HANDLERS
|
|
134
|
+
export const startNodes = async (nodes, subProtocolHandlers = MOCK_SUB_PROTOCOL_HANDLERS)=>{
|
|
140
135
|
for (const node of nodes){
|
|
141
|
-
await node.req.start(subProtocolHandlers
|
|
136
|
+
await node.req.start(subProtocolHandlers);
|
|
142
137
|
}
|
|
143
138
|
};
|
|
144
139
|
export const stopNodes = async (nodes)=>{
|
|
@@ -211,7 +206,8 @@ export function createBootstrapNodeConfig(privateKey, port, chainConfig) {
|
|
|
211
206
|
dataStoreMapSizeKb: 0,
|
|
212
207
|
bootstrapNodes: [],
|
|
213
208
|
listenAddress: '127.0.0.1',
|
|
214
|
-
queryForIp: false
|
|
209
|
+
queryForIp: false,
|
|
210
|
+
publicIpServices: DEFAULT_PUBLIC_IP_SERVICES
|
|
215
211
|
};
|
|
216
212
|
}
|
|
217
213
|
export function createBootstrapNodeFromPrivateKey(privateKey, port, telemetry = getTelemetryClient(), chainConfig = emptyChainConfig) {
|
|
@@ -20,6 +20,8 @@ export declare class TestTxProvider implements ITxProvider {
|
|
|
20
20
|
txs: Tx[];
|
|
21
21
|
missingTxs: TxHash[];
|
|
22
22
|
}>;
|
|
23
|
+
/** Returns whether each tx hash is in the seeded collection. */
|
|
24
|
+
hasTxs(txHashes: TxHash[]): Promise<boolean[]>;
|
|
23
25
|
/** Get txs for a block proposal, returning any seeded txs that match the requested hashes. */
|
|
24
26
|
getTxsForBlockProposal(blockProposal: BlockProposal, _blockNumber: BlockNumber, _opts: {
|
|
25
27
|
pinnedPeer: PeerId | undefined;
|
|
@@ -37,4 +39,4 @@ export declare class TestTxProvider implements ITxProvider {
|
|
|
37
39
|
}>;
|
|
38
40
|
private getTxsByHashes;
|
|
39
41
|
}
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF90eF9wcm92aWRlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QtaGVscGVycy90ZXN0X3R4X3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVuRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVoRDs7OztHQUlHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLFdBQVc7SUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FBOEI7SUFFekMsOERBQThEO0lBQzlELElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLFFBSWI7SUFFRCxxQ0FBcUM7SUFDckMsS0FBSyxTQUVKO0lBRUQsaUVBQWlFO0lBQ2pFLGVBQWUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFBO0tBQUUsQ0FBQyxDQUVoRjtJQUVELGdFQUFnRTtJQUNoRSxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUU3QztJQUVELDhGQUE4RjtJQUM5RixzQkFBc0IsQ0FDcEIsYUFBYSxFQUFFLGFBQWEsRUFDNUIsWUFBWSxFQUFFLFdBQVcsRUFDekIsS0FBSyxFQUFFO1FBQUUsVUFBVSxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7UUFBQyxRQUFRLEVBQUUsSUFBSSxDQUFBO0tBQUUsR0FDeEQsT0FBTyxDQUFDO1FBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFBO0tBQUUsQ0FBQyxDQUU5QztJQUVELDRGQUE0RjtJQUM1RixjQUFjLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7UUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFBO0tBQUUsR0FBRyxPQUFPLENBQUM7UUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUE7S0FBRSxDQUFDLENBR3RHO0lBRUQsT0FBTyxDQUFDLGNBQWM7Q0FldkIifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test_tx_provider.d.ts","sourceRoot":"","sources":["../../src/test-helpers/test_tx_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,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;AAEhD;;;;GAIG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,GAAG,CAA8B;IAEzC,8DAA8D;IAC9D,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,QAIb;IAED,qCAAqC;IACrC,KAAK,SAEJ;IAED,iEAAiE;IACjE,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAEhF;IAED,8FAA8F;IAC9F,sBAAsB,CACpB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,WAAW,EACzB,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,GACxD,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAE9C;IAED,4FAA4F;IAC5F,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAGtG;IAED,OAAO,CAAC,cAAc;CAevB"}
|
|
1
|
+
{"version":3,"file":"test_tx_provider.d.ts","sourceRoot":"","sources":["../../src/test-helpers/test_tx_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,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;AAEhD;;;;GAIG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,GAAG,CAA8B;IAEzC,8DAA8D;IAC9D,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,QAIb;IAED,qCAAqC;IACrC,KAAK,SAEJ;IAED,iEAAiE;IACjE,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAEhF;IAED,gEAAgE;IAChE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAE7C;IAED,8FAA8F;IAC9F,sBAAsB,CACpB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,WAAW,EACzB,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,GACxD,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAE9C;IAED,4FAA4F;IAC5F,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAGtG;IAED,OAAO,CAAC,cAAc;CAevB"}
|
|
@@ -15,6 +15,9 @@
|
|
|
15
15
|
/** Returns txs from the seeded collection given their hashes. */ getAvailableTxs(txHashes) {
|
|
16
16
|
return this.getTxsByHashes(txHashes);
|
|
17
17
|
}
|
|
18
|
+
/** Returns whether each tx hash is in the seeded collection. */ hasTxs(txHashes) {
|
|
19
|
+
return Promise.resolve(txHashes.map((h)=>this.txs.has(h.toString())));
|
|
20
|
+
}
|
|
18
21
|
/** Get txs for a block proposal, returning any seeded txs that match the requested hashes. */ getTxsForBlockProposal(blockProposal, _blockNumber, _opts) {
|
|
19
22
|
return this.getTxsByHashes(blockProposal.txHashes);
|
|
20
23
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { EpochCacheInterface } from '@aztec/epoch-cache';
|
|
2
|
+
import type { CheckpointProposalHash } from '@aztec/foundation/branded-types';
|
|
2
3
|
import { SlotNumber } from '@aztec/foundation/branded-types';
|
|
3
4
|
import type { Logger } from '@aztec/foundation/log';
|
|
4
5
|
import type { L2Block, L2BlockId } from '@aztec/stdlib/block';
|
|
5
6
|
import type { WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
|
|
6
|
-
import type { BlockProposal, CheckpointAttestation,
|
|
7
|
+
import type { BlockProposal, CheckpointAttestation, CheckpointProposalCore } from '@aztec/stdlib/p2p';
|
|
7
8
|
import { type BlockHeader, Tx, TxHash } from '@aztec/stdlib/tx';
|
|
8
9
|
import EventEmitter from 'events';
|
|
9
10
|
import type { TryAddResult } from '../mem_pools/attestation_pool/attestation_pool.js';
|
|
@@ -63,14 +64,19 @@ export declare class InMemoryTxPool extends EventEmitter implements TxPoolV2 {
|
|
|
63
64
|
*/
|
|
64
65
|
export declare class InMemoryAttestationPool {
|
|
65
66
|
private proposals;
|
|
67
|
+
private checkpoints;
|
|
66
68
|
tryAddBlockProposal(blockProposal: BlockProposal): Promise<TryAddResult>;
|
|
67
|
-
|
|
68
|
-
tryAddCheckpointProposal(
|
|
69
|
-
getCheckpointProposal(
|
|
69
|
+
getBlockProposalByArchive(id: string): Promise<BlockProposal | undefined>;
|
|
70
|
+
tryAddCheckpointProposal(proposal: CheckpointProposalCore): Promise<TryAddResult>;
|
|
71
|
+
getCheckpointProposal(slot: SlotNumber): Promise<CheckpointProposalCore | undefined>;
|
|
72
|
+
getProposalsForSlot(slot: SlotNumber): Promise<{
|
|
73
|
+
blockProposals: BlockProposal[];
|
|
74
|
+
checkpointProposals: CheckpointProposalCore[];
|
|
75
|
+
}>;
|
|
70
76
|
addOwnCheckpointAttestations(_attestations: CheckpointAttestation[]): Promise<void>;
|
|
71
77
|
deleteOlderThan(_slot: SlotNumber): Promise<void>;
|
|
72
78
|
getCheckpointAttestationsForSlot(_slot: SlotNumber): Promise<CheckpointAttestation[]>;
|
|
73
|
-
getCheckpointAttestationsForSlotAndProposal(_slot: SlotNumber,
|
|
79
|
+
getCheckpointAttestationsForSlotAndProposal(_slot: SlotNumber, _proposalPayloadHash: CheckpointProposalHash): Promise<CheckpointAttestation[]>;
|
|
74
80
|
tryAddCheckpointAttestation(_attestation: CheckpointAttestation): Promise<TryAddResult>;
|
|
75
81
|
hasBlockProposalsForSlot(_slot: SlotNumber): Promise<boolean>;
|
|
76
82
|
isEmpty(): Promise<boolean>;
|
|
@@ -109,14 +115,6 @@ export declare function installUnlimitedRateLimitsOnReqResp(reqResp: any): void;
|
|
|
109
115
|
* Distribution patterns for benchmark transaction distribution.
|
|
110
116
|
*/
|
|
111
117
|
export type DistributionPattern = 'uniform' | 'sparse' | 'pinned-only';
|
|
112
|
-
/**
|
|
113
|
-
* Collector implementation types for benchmarking.
|
|
114
|
-
*/
|
|
115
|
-
export type CollectorType = 'batch-requester' | 'send-batch-request';
|
|
116
|
-
/**
|
|
117
|
-
* Display names for collector types (for output/logging only).
|
|
118
|
-
*/
|
|
119
|
-
export declare const COLLECTOR_DISPLAY_NAMES: Record<CollectorType, string>;
|
|
120
118
|
/**
|
|
121
119
|
* Benchmark timing constants.
|
|
122
120
|
*/
|
|
@@ -160,4 +158,4 @@ export declare function filterTxsByDistribution(allTxs: Tx[], peerIndex: number,
|
|
|
160
158
|
* Ensures we return before the outer timeout while maintaining a minimum.
|
|
161
159
|
*/
|
|
162
160
|
export declare function calculateInternalTimeout(timeoutMs: number): number;
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGJlbmNoLXV0aWxzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC1oZWxwZXJzL3Rlc3RiZW5jaC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFlLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzFFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlFLE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEUsT0FBTyxZQUFZLE1BQU0sUUFBUSxDQUFDO0FBRWxDLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3RGLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEcsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHdEU7Ozs7R0FJRztBQUNILHFCQUFhLGNBQWUsU0FBUSxZQUFhLFlBQVcsUUFBUTtJQUNsRSxPQUFPLENBQUMsU0FBUyxDQUF5QjtJQUMxQyxPQUFPLENBQUMsTUFBTSxDQUF1QjtJQUVyQyxTQUFTLENBQUMsTUFBTSxFQUFF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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testbench-utils.d.ts","sourceRoot":"","sources":["../../src/test-helpers/testbench-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAe,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"testbench-utils.d.ts","sourceRoot":"","sources":["../../src/test-helpers/testbench-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -172,6 +172,7 @@ import { RateLimitStatus } from '../services/reqresp/rate-limiter/rate_limiter.j
|
|
|
172
172
|
* Provides minimal implementation without persistence.
|
|
173
173
|
*/ export class InMemoryAttestationPool {
|
|
174
174
|
proposals = new Map();
|
|
175
|
+
checkpoints = new Map();
|
|
175
176
|
tryAddBlockProposal(blockProposal) {
|
|
176
177
|
const id = blockProposal.archive.toString();
|
|
177
178
|
const alreadyExists = this.proposals.has(id);
|
|
@@ -189,25 +190,36 @@ import { RateLimitStatus } from '../services/reqresp/rate-limiter/rate_limiter.j
|
|
|
189
190
|
count: 1
|
|
190
191
|
});
|
|
191
192
|
}
|
|
192
|
-
|
|
193
|
+
getBlockProposalByArchive(id) {
|
|
193
194
|
return Promise.resolve(this.proposals.get(id));
|
|
194
195
|
}
|
|
195
|
-
tryAddCheckpointProposal(
|
|
196
|
+
tryAddCheckpointProposal(proposal) {
|
|
197
|
+
const proposals = this.checkpoints.get(proposal.slotNumber) ?? [];
|
|
198
|
+
proposals.push(proposal);
|
|
199
|
+
this.checkpoints.set(proposal.slotNumber, proposals);
|
|
196
200
|
return Promise.resolve({
|
|
197
201
|
added: true,
|
|
198
202
|
alreadyExists: false,
|
|
199
203
|
count: 1
|
|
200
204
|
});
|
|
201
205
|
}
|
|
202
|
-
getCheckpointProposal(
|
|
203
|
-
return Promise.resolve(
|
|
206
|
+
getCheckpointProposal(slot) {
|
|
207
|
+
return Promise.resolve(this.checkpoints.get(slot)?.[0]);
|
|
208
|
+
}
|
|
209
|
+
getProposalsForSlot(slot) {
|
|
210
|
+
return Promise.resolve({
|
|
211
|
+
blockProposals: [
|
|
212
|
+
...this.proposals.values()
|
|
213
|
+
].filter((proposal)=>proposal.slotNumber === slot),
|
|
214
|
+
checkpointProposals: this.checkpoints.get(slot) ?? []
|
|
215
|
+
});
|
|
204
216
|
}
|
|
205
217
|
async addOwnCheckpointAttestations(_attestations) {}
|
|
206
218
|
async deleteOlderThan(_slot) {}
|
|
207
219
|
getCheckpointAttestationsForSlot(_slot) {
|
|
208
220
|
return Promise.resolve([]);
|
|
209
221
|
}
|
|
210
|
-
getCheckpointAttestationsForSlotAndProposal(_slot,
|
|
222
|
+
getCheckpointAttestationsForSlotAndProposal(_slot, _proposalPayloadHash) {
|
|
211
223
|
return Promise.resolve([]);
|
|
212
224
|
}
|
|
213
225
|
tryAddCheckpointAttestation(_attestation) {
|
|
@@ -221,10 +233,11 @@ import { RateLimitStatus } from '../services/reqresp/rate-limiter/rate_limiter.j
|
|
|
221
233
|
return Promise.resolve(false);
|
|
222
234
|
}
|
|
223
235
|
isEmpty() {
|
|
224
|
-
return Promise.resolve(this.proposals.size === 0);
|
|
236
|
+
return Promise.resolve(this.proposals.size === 0 && this.checkpoints.size === 0);
|
|
225
237
|
}
|
|
226
238
|
resetState() {
|
|
227
239
|
this.proposals.clear();
|
|
240
|
+
this.checkpoints.clear();
|
|
228
241
|
}
|
|
229
242
|
}
|
|
230
243
|
/**
|
|
@@ -248,8 +261,6 @@ import { RateLimitStatus } from '../services/reqresp/rate-limiter/rate_limiter.j
|
|
|
248
261
|
ts: 0n,
|
|
249
262
|
nowMs: 0n
|
|
250
263
|
}),
|
|
251
|
-
isProposerPipeliningEnabled: ()=>false,
|
|
252
|
-
pipeliningOffset: ()=>0,
|
|
253
264
|
computeProposerIndex: ()=>0n,
|
|
254
265
|
getCurrentAndNextSlot: ()=>({
|
|
255
266
|
currentSlot: SlotNumber.ZERO,
|
|
@@ -328,12 +339,6 @@ import { RateLimitStatus } from '../services/reqresp/rate-limiter/rate_limiter.j
|
|
|
328
339
|
rateLimiter.getRateLimits = ()=>UNLIMITED_RATE_LIMIT_QUOTA;
|
|
329
340
|
rateLimiter.allow = ()=>RateLimitStatus.Allowed;
|
|
330
341
|
}
|
|
331
|
-
/**
|
|
332
|
-
* Display names for collector types (for output/logging only).
|
|
333
|
-
*/ export const COLLECTOR_DISPLAY_NAMES = {
|
|
334
|
-
'batch-requester': 'batch-requester (new)',
|
|
335
|
-
'send-batch-request': 'send-batch-request (old)'
|
|
336
|
-
};
|
|
337
342
|
/**
|
|
338
343
|
* Benchmark timing constants.
|
|
339
344
|
*/ export const BENCHMARK_CONSTANTS = {
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
export type { DistributionPattern
|
|
3
|
-
export { COLLECTOR_DISPLAY_NAMES } from '../test-helpers/testbench-utils.js';
|
|
1
|
+
import { type DistributionPattern } from '../test-helpers/index.js';
|
|
2
|
+
export type { DistributionPattern } from '../test-helpers/testbench-utils.js';
|
|
4
3
|
export interface BenchReqRespCommand {
|
|
5
4
|
type: 'BENCH_REQRESP';
|
|
6
5
|
txCount: number;
|
|
7
6
|
peerCount: number;
|
|
8
7
|
distribution: DistributionPattern;
|
|
9
|
-
collectorType: CollectorType;
|
|
10
8
|
timeoutMs: number;
|
|
11
9
|
isAggregator: boolean;
|
|
12
10
|
peerIndex: number;
|
|
@@ -25,4 +23,4 @@ export interface BenchResultMessage {
|
|
|
25
23
|
export interface BenchReadyMessage {
|
|
26
24
|
type: 'BENCH_READY';
|
|
27
25
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwX2NsaWVudF90ZXN0YmVuY2hfd29ya2VyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdGJlbmNoL3AycF9jbGllbnRfdGVzdGJlbmNoX3dvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2Q0EsT0FBTyxFQUVMLEtBQUssbUJBQW1CLEVBT3pCLE1BQU0sMEJBQTBCLENBQUM7QUFHbEMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFOUUsTUFBTSxXQUFXLG1CQUFtQjtJQUNsQyxJQUFJLEVBQUUsZUFBZSxDQUFDO0lBQ3RCLE9BQU8sRUFBRSxNQUFNLENBQUM7SUFDaEIsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixZQUFZLEVBQUUsbUJBQW1CLENBQUM7SUFDbEMsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixZQUFZLEVBQUUsT0FBTyxDQUFDO0lBQ3RCLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsZUFBZSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLFlBQVksQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN0QixXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3BCLElBQUksRUFBRSxNQUFNLENBQUM7Q0FDZDtBQUVELE1BQU0sV0FBVyxrQkFBa0I7SUFDakMsSUFBSSxFQUFFLGNBQWMsQ0FBQztJQUNyQixVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLFlBQVksRUFBRSxNQUFNLENBQUM7SUFDckIsT0FBTyxFQUFFLE9BQU8sQ0FBQztJQUNqQixLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDaEI7QUFFRCxNQUFNLFdBQVcsaUJBQWlCO0lBQ2hDLElBQUksRUFBRSxhQUFhLENBQUM7Q0FDckIifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p2p_client_testbench_worker.d.ts","sourceRoot":"","sources":["../../src/testbench/p2p_client_testbench_worker.ts"],"names":[],"mappings":"AA6CA,OAAO,EAEL,KAAK,
|
|
1
|
+
{"version":3,"file":"p2p_client_testbench_worker.d.ts","sourceRoot":"","sources":["../../src/testbench/p2p_client_testbench_worker.ts"],"names":[],"mappings":"AA6CA,OAAO,EAEL,KAAK,mBAAmB,EAOzB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAE9E,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,mBAAmB,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;CACrB"}
|