@aztec/p2p 0.0.1-commit.b33fc05d0 → 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/README.md +129 -3
- 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 +4 -3
- package/dest/client/factory.d.ts.map +1 -1
- package/dest/client/factory.js +26 -14
- package/dest/client/interface.d.ts +14 -5
- package/dest/client/interface.d.ts.map +1 -1
- package/dest/client/p2p_client.d.ts +13 -9
- package/dest/client/p2p_client.d.ts.map +1 -1
- package/dest/client/p2p_client.js +88 -26
- package/dest/config.d.ts +135 -99
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +62 -7
- package/dest/errors/p2p-service.error.d.ts +9 -0
- package/dest/errors/p2p-service.error.d.ts.map +1 -0
- package/dest/errors/p2p-service.error.js +10 -0
- 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/index.d.ts +1 -2
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +0 -1
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +99 -59
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool.js +265 -199
- 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 +181 -65
- 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/index.d.ts +1 -2
- package/dest/mem_pools/index.d.ts.map +1 -1
- 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/eviction/fee_payer_balance_eviction_rule.d.ts +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.js +2 -1
- package/dest/mem_pools/tx_pool_v2/eviction/index.d.ts +2 -1
- package/dest/mem_pools/tx_pool_v2/eviction/index.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/index.js +1 -0
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.d.ts +16 -0
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.js +62 -0
- package/dest/mem_pools/tx_pool_v2/eviction/invalid_txs_after_reorg_rule.js +2 -2
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts +10 -5
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts +13 -3
- package/dest/mem_pools/tx_pool_v2/tx_metadata.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_metadata.js +20 -7
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts +4 -2
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2.js +3 -0
- 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 +84 -86
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +9 -3
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
- package/dest/msg_validators/attestation_validator/attestation_validator.js +37 -12
- package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts +7 -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 +4 -5
- package/dest/msg_validators/clock_tolerance.d.ts +12 -1
- package/dest/msg_validators/clock_tolerance.d.ts.map +1 -1
- package/dest/msg_validators/clock_tolerance.js +56 -3
- package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts +6 -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 +6 -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 +10 -2
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.js +46 -12
- 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/archive_cache.js +1 -1
- 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/contract_instance_validator.d.ts +9 -0
- package/dest/msg_validators/tx_validator/contract_instance_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/contract_instance_validator.js +48 -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 +36 -2
- package/dest/msg_validators/tx_validator/factory.d.ts +14 -5
- package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/factory.js +36 -13
- package/dest/msg_validators/tx_validator/gas_validator.d.ts +36 -4
- package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/gas_validator.js +50 -33
- 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/phases_validator.d.ts +21 -1
- package/dest/msg_validators/tx_validator/phases_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/phases_validator.js +28 -1
- 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/data_store.d.ts +1 -1
- package/dest/services/data_store.d.ts.map +1 -1
- package/dest/services/data_store.js +5 -5
- 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 +11 -15
- package/dest/services/dummy_service.d.ts.map +1 -1
- package/dest/services/dummy_service.js +12 -16
- package/dest/services/encoding.d.ts +5 -1
- package/dest/services/encoding.d.ts.map +1 -1
- package/dest/services/encoding.js +7 -1
- package/dest/services/gossipsub/topic_score_params.d.ts +13 -2
- package/dest/services/gossipsub/topic_score_params.d.ts.map +1 -1
- package/dest/services/gossipsub/topic_score_params.js +21 -4
- package/dest/services/libp2p/instrumentation.d.ts +3 -1
- package/dest/services/libp2p/instrumentation.d.ts.map +1 -1
- package/dest/services/libp2p/instrumentation.js +14 -0
- package/dest/services/libp2p/libp2p_service.d.ts +36 -46
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
- package/dest/services/libp2p/libp2p_service.js +272 -262
- package/dest/services/peer-manager/peer_manager.d.ts +6 -2
- package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_manager.js +38 -10
- package/dest/services/peer-manager/peer_scoring.d.ts +7 -2
- package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_scoring.js +32 -10
- package/dest/services/reqresp/batch-tx-requester/batch_tx_requester.d.ts +4 -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 +81 -86
- package/dest/services/reqresp/batch-tx-requester/interface.d.ts +10 -6
- package/dest/services/reqresp/batch-tx-requester/interface.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts +5 -4
- package/dest/services/reqresp/batch-tx-requester/missing_txs.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/missing_txs.js +13 -7
- package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts +3 -1
- package/dest/services/reqresp/batch-tx-requester/peer_collection.d.ts.map +1 -1
- package/dest/services/reqresp/batch-tx-requester/peer_collection.js +3 -0
- 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/config.d.ts +3 -3
- package/dest/services/reqresp/config.d.ts.map +1 -1
- package/dest/services/reqresp/interface.d.ts +16 -18
- package/dest/services/reqresp/interface.d.ts.map +1 -1
- package/dest/services/reqresp/interface.js +10 -20
- package/dest/services/reqresp/metrics.d.ts +1 -1
- package/dest/services/reqresp/metrics.d.ts.map +1 -1
- package/dest/services/reqresp/metrics.js +0 -1
- 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/protocols/index.d.ts +1 -2
- package/dest/services/reqresp/protocols/index.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/index.js +0 -1
- package/dest/services/reqresp/protocols/tx.d.ts +1 -1
- package/dest/services/reqresp/protocols/tx.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/tx.js +1 -3
- package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +5 -4
- package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
- package/dest/services/reqresp/rate-limiter/rate_limiter.js +10 -8
- package/dest/services/reqresp/rate-limiter/rate_limits.d.ts +1 -1
- package/dest/services/reqresp/rate-limiter/rate_limits.d.ts.map +1 -1
- package/dest/services/reqresp/rate-limiter/rate_limits.js +0 -10
- package/dest/services/reqresp/reqresp.d.ts +7 -29
- package/dest/services/reqresp/reqresp.d.ts.map +1 -1
- package/dest/services/reqresp/reqresp.js +41 -214
- package/dest/services/service.d.ts +9 -12
- 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/file_store_tx_source.d.ts +5 -4
- package/dest/services/tx_collection/file_store_tx_source.d.ts.map +1 -1
- package/dest/services/tx_collection/file_store_tx_source.js +39 -29
- 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/request_tracker.d.ts +53 -0
- package/dest/services/tx_collection/request_tracker.d.ts.map +1 -0
- package/dest/services/tx_collection/request_tracker.js +84 -0
- package/dest/services/tx_collection/tx_collection.d.ts +36 -55
- 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_collection/tx_source.d.ts +6 -5
- package/dest/services/tx_collection/tx_source.d.ts.map +1 -1
- package/dest/services/tx_collection/tx_source.js +9 -7
- 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 +5 -2
- package/dest/test-helpers/mock-pubsub.d.ts +23 -9
- package/dest/test-helpers/mock-pubsub.d.ts.map +1 -1
- package/dest/test-helpers/mock-pubsub.js +44 -44
- 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 +16 -18
- 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 +38 -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 +83 -38
- package/dest/testbench/worker_client_manager.d.ts +10 -6
- package/dest/testbench/worker_client_manager.d.ts.map +1 -1
- package/dest/testbench/worker_client_manager.js +51 -9
- 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 +49 -7
- package/src/client/interface.ts +15 -11
- package/src/client/p2p_client.ts +104 -47
- package/src/client/test/{tx_proposal_collector/README.md → p2p_client.batch_tx_requester.bench.README.md} +23 -53
- package/src/config.ts +123 -6
- package/src/errors/p2p-service.error.ts +11 -0
- package/src/errors/reqresp.error.ts +0 -25
- package/src/index.ts +0 -1
- package/src/mem_pools/attestation_pool/attestation_pool.ts +316 -241
- package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +204 -68
- package/src/mem_pools/attestation_pool/mocks.ts +13 -8
- package/src/mem_pools/index.ts +0 -3
- 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/eviction/fee_payer_balance_eviction_rule.ts +2 -1
- package/src/mem_pools/tx_pool_v2/eviction/index.ts +1 -0
- package/src/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.ts +65 -0
- package/src/mem_pools/tx_pool_v2/eviction/invalid_txs_after_reorg_rule.ts +3 -3
- package/src/mem_pools/tx_pool_v2/interfaces.ts +9 -4
- package/src/mem_pools/tx_pool_v2/tx_metadata.ts +31 -9
- package/src/mem_pools/tx_pool_v2/tx_pool_v2.ts +13 -1
- package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +85 -92
- package/src/msg_validators/attestation_validator/README.md +49 -0
- package/src/msg_validators/attestation_validator/attestation_validator.ts +41 -9
- package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +14 -7
- package/src/msg_validators/clock_tolerance.ts +73 -3
- package/src/msg_validators/proposal_validator/README.md +123 -0
- package/src/msg_validators/proposal_validator/block_proposal_validator.ts +12 -2
- package/src/msg_validators/proposal_validator/checkpoint_proposal_validator.ts +17 -2
- package/src/msg_validators/proposal_validator/proposal_validator.ts +54 -10
- package/src/msg_validators/tx_validator/README.md +15 -3
- 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/archive_cache.ts +1 -1
- package/src/msg_validators/tx_validator/cached_tx_validator.ts +31 -0
- package/src/msg_validators/tx_validator/contract_instance_validator.ts +56 -0
- package/src/msg_validators/tx_validator/data_validator.ts +44 -1
- package/src/msg_validators/tx_validator/factory.ts +46 -8
- package/src/msg_validators/tx_validator/gas_validator.ts +82 -33
- package/src/msg_validators/tx_validator/index.ts +2 -0
- package/src/msg_validators/tx_validator/phases_validator.ts +31 -1
- 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/data_store.ts +5 -13
- package/src/services/discv5/discV5_service.ts +38 -5
- package/src/services/dummy_service.ts +14 -39
- package/src/services/encoding.ts +9 -1
- package/src/services/gossipsub/topic_score_params.ts +36 -4
- package/src/services/libp2p/instrumentation.ts +14 -0
- package/src/services/libp2p/libp2p_service.ts +302 -300
- package/src/services/peer-manager/peer_manager.ts +44 -10
- package/src/services/peer-manager/peer_scoring.ts +27 -5
- package/src/services/reqresp/README.md +215 -0
- package/src/services/reqresp/batch-tx-requester/README.md +46 -7
- package/src/services/reqresp/batch-tx-requester/batch_tx_requester.ts +77 -95
- package/src/services/reqresp/batch-tx-requester/interface.ts +13 -5
- package/src/services/reqresp/batch-tx-requester/missing_txs.ts +13 -6
- package/src/services/reqresp/batch-tx-requester/peer_collection.ts +5 -0
- package/src/services/reqresp/batch-tx-requester/tx_validator.ts +12 -25
- package/src/services/reqresp/config.ts +2 -2
- package/src/services/reqresp/interface.ts +21 -47
- package/src/services/reqresp/metrics.ts +0 -1
- 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/protocols/index.ts +0 -1
- package/src/services/reqresp/protocols/tx.ts +1 -3
- package/src/services/reqresp/rate-limiter/rate_limiter.ts +13 -9
- package/src/services/reqresp/rate-limiter/rate_limits.ts +0 -10
- package/src/services/reqresp/reqresp.ts +45 -260
- package/src/services/service.ts +12 -28
- 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/file_store_tx_source.ts +43 -31
- package/src/services/tx_collection/index.ts +1 -6
- package/src/services/tx_collection/instrumentation.ts +1 -7
- package/src/services/tx_collection/request_tracker.ts +127 -0
- package/src/services/tx_collection/tx_collection.ts +331 -176
- package/src/services/tx_collection/tx_collection_sink.ts +2 -2
- package/src/services/tx_collection/tx_source.ts +8 -7
- 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 +3 -0
- package/src/test-helpers/mock-pubsub.ts +46 -60
- package/src/test-helpers/reqresp-nodes.ts +12 -22
- package/src/test-helpers/test_tx_provider.ts +5 -0
- package/src/test-helpers/testbench-utils.ts +50 -28
- package/src/testbench/p2p_client_testbench_worker.ts +87 -54
- package/src/testbench/worker_client_manager.ts +59 -20
- 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 -304
- 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/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +0 -125
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +0 -596
- package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts +0 -32
- package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/eviction_manager.js +0 -112
- package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts +0 -157
- package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/eviction_strategy.js +0 -52
- package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts +0 -16
- package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.js +0 -122
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts +0 -17
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.js +0 -84
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts +0 -19
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.js +0 -78
- package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts +0 -26
- package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.js +0 -84
- package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts +0 -25
- package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.js +0 -57
- package/dest/mem_pools/tx_pool/index.d.ts +0 -3
- package/dest/mem_pools/tx_pool/index.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/index.js +0 -2
- package/dest/mem_pools/tx_pool/priority.d.ts +0 -12
- package/dest/mem_pools/tx_pool/priority.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/priority.js +0 -16
- package/dest/mem_pools/tx_pool/tx_pool.d.ts +0 -127
- package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/tx_pool.js +0 -3
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +0 -7
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +0 -1
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +0 -402
- 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/reqresp/protocols/block.d.ts +0 -9
- package/dest/services/reqresp/protocols/block.d.ts.map +0 -1
- package/dest/services/reqresp/protocols/block.js +0 -32
- package/dest/services/tx_collection/fast_tx_collection.d.ts +0 -54
- package/dest/services/tx_collection/fast_tx_collection.d.ts.map +0 -1
- package/dest/services/tx_collection/fast_tx_collection.js +0 -327
- package/dest/services/tx_collection/missing_txs_tracker.d.ts +0 -32
- package/dest/services/tx_collection/missing_txs_tracker.d.ts.map +0 -1
- package/dest/services/tx_collection/missing_txs_tracker.js +0 -27
- package/dest/services/tx_collection/proposal_tx_collector.d.ts +0 -49
- 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 -345
- package/src/client/test/tx_proposal_collector/proposal_tx_collector_worker_protocol.ts +0 -43
- package/src/mem_pools/tx_pool/README.md +0 -270
- package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +0 -746
- package/src/mem_pools/tx_pool/eviction/eviction_manager.ts +0 -132
- package/src/mem_pools/tx_pool/eviction/eviction_strategy.ts +0 -208
- package/src/mem_pools/tx_pool/eviction/fee_payer_balance_eviction_rule.ts +0 -162
- package/src/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.ts +0 -104
- package/src/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.ts +0 -93
- package/src/mem_pools/tx_pool/eviction/low_priority_eviction_rule.ts +0 -106
- package/src/mem_pools/tx_pool/eviction/nullifier_conflict_pre_add_rule.ts +0 -75
- package/src/mem_pools/tx_pool/index.ts +0 -2
- package/src/mem_pools/tx_pool/priority.ts +0 -23
- package/src/mem_pools/tx_pool/tx_pool.ts +0 -141
- package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +0 -321
- package/src/services/reqresp/connection-sampler/batch_connection_sampler.ts +0 -161
- package/src/services/reqresp/protocols/block.ts +0 -37
- package/src/services/tx_collection/fast_tx_collection.ts +0 -387
- package/src/services/tx_collection/missing_txs_tracker.ts +0 -52
- package/src/services/tx_collection/proposal_tx_collector.ts +0 -113
- package/src/services/tx_collection/slow_tx_collection.ts +0 -266
package/src/config.ts
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
getConfigFromMappings,
|
|
7
7
|
getDefaultConfig,
|
|
8
8
|
numberConfigHelper,
|
|
9
|
+
optionalNumberConfigHelper,
|
|
9
10
|
percentageConfigHelper,
|
|
10
11
|
pickConfigMappings,
|
|
11
12
|
secretStringConfigHelper,
|
|
@@ -39,10 +40,21 @@ export interface P2PConfig
|
|
|
39
40
|
ChainConfig,
|
|
40
41
|
TxCollectionConfig,
|
|
41
42
|
TxFileStoreConfig,
|
|
42
|
-
Pick<
|
|
43
|
+
Pick<
|
|
44
|
+
SequencerConfig,
|
|
45
|
+
| 'blockDurationMs'
|
|
46
|
+
| 'expectedBlockProposalsPerSlot'
|
|
47
|
+
| 'l1PublishingTime'
|
|
48
|
+
| 'maxTxsPerBlock'
|
|
49
|
+
| 'attestationPropagationTime'
|
|
50
|
+
| 'maxBlocksPerCheckpoint'
|
|
51
|
+
> {
|
|
43
52
|
/** Maximum transactions per block for validation. Overrides maxTxsPerBlock for gossip validation when set. */
|
|
44
53
|
validateMaxTxsPerBlock?: number;
|
|
45
54
|
|
|
55
|
+
/** Maximum transactions per checkpoint for validation. Used as fallback for maxTxsPerBlock when that is not set. */
|
|
56
|
+
validateMaxTxsPerCheckpoint?: number;
|
|
57
|
+
|
|
46
58
|
/** Maximum L2 gas per block for validation. When set, txs exceeding this limit are rejected. */
|
|
47
59
|
validateMaxL2BlockGas?: number;
|
|
48
60
|
|
|
@@ -67,6 +79,9 @@ export interface P2PConfig
|
|
|
67
79
|
/** The frequency in which to check for new peers. */
|
|
68
80
|
peerCheckIntervalMS: number;
|
|
69
81
|
|
|
82
|
+
/** How long to ban a peer after it fails MAX_DIAL_ATTEMPTS dials. */
|
|
83
|
+
peerFailedBanTimeMs: number;
|
|
84
|
+
|
|
70
85
|
/** Size of queue of L2 blocks to store. */
|
|
71
86
|
l2QueueSize: number;
|
|
72
87
|
|
|
@@ -103,6 +118,11 @@ export interface P2PConfig
|
|
|
103
118
|
/** If announceUdpAddress or announceTcpAddress are not provided, query for the IP address of the machine. Default is false. */
|
|
104
119
|
queryForIp: boolean;
|
|
105
120
|
|
|
121
|
+
/**
|
|
122
|
+
* HTTPS URLs that return plain-text public IPv4, tried in order when resolving the announce IP (e.g. when `queryForIp` is true and `p2pIp` is unset).
|
|
123
|
+
*/
|
|
124
|
+
publicIpServices: string[];
|
|
125
|
+
|
|
106
126
|
/** The interval of the gossipsub heartbeat to perform maintenance tasks. */
|
|
107
127
|
gossipsubInterval: number;
|
|
108
128
|
|
|
@@ -169,6 +189,9 @@ export interface P2PConfig
|
|
|
169
189
|
/** The node's seen message ID cache size */
|
|
170
190
|
seenMessageCacheSize: number;
|
|
171
191
|
|
|
192
|
+
/** Maximum number of (validator, tx) pairs to keep in the tx validation LRU cache. */
|
|
193
|
+
txValidationCacheSize: number;
|
|
194
|
+
|
|
172
195
|
/** True to disable the status handshake on peer connected. */
|
|
173
196
|
p2pDisableStatusHandshake?: boolean;
|
|
174
197
|
|
|
@@ -201,28 +224,69 @@ export interface P2PConfig
|
|
|
201
224
|
/** Minimum age (ms) a transaction must have been in the pool before it's eligible for block building. */
|
|
202
225
|
minTxPoolAgeMs: number;
|
|
203
226
|
|
|
227
|
+
/**
|
|
228
|
+
* Number of full L2 slots to wait after a checkpoint's slot before declaring its txs missing
|
|
229
|
+
* for data-withholding slashing.
|
|
230
|
+
*/
|
|
231
|
+
slashDataWithholdingToleranceSlots: number;
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Number of L2 slots after a mined block's slot to keep collecting its missing txs. Clamped
|
|
235
|
+
* up so that collection always runs at least until the data-withholding slash verdict is
|
|
236
|
+
* rendered (`block.slot + slashDataWithholdingToleranceSlots + 1`). Defaults to undefined,
|
|
237
|
+
* in which case the tolerance window is used directly.
|
|
238
|
+
*/
|
|
239
|
+
p2pMissingTxCollectionDeadlineSlots?: number;
|
|
240
|
+
|
|
204
241
|
/** Minimum percentage fee increase required to replace an existing tx via RPC (0 = no bump). */
|
|
205
242
|
priceBumpPercentage: bigint;
|
|
243
|
+
|
|
244
|
+
/** Drop incoming block and checkpoint proposals at the libp2p dispatch layer (for testing only) */
|
|
245
|
+
skipIncomingProposals?: boolean;
|
|
246
|
+
|
|
247
|
+
/** Accept proposal gossip regardless of slot timing (for testing only). */
|
|
248
|
+
skipProposalSlotValidation?: boolean;
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* Whether this node skips checkpoint proposal validation and always attests. When set, the checkpoint
|
|
252
|
+
* attestation is created and broadcast before the embedded last block is processed, so it is not delayed
|
|
253
|
+
* past the slot's attestation window by that block's re-execution. Mirrors the validator config flag.
|
|
254
|
+
*/
|
|
255
|
+
skipCheckpointProposalValidation?: boolean;
|
|
206
256
|
}
|
|
207
257
|
|
|
208
258
|
export const DEFAULT_P2P_PORT = 40400;
|
|
209
259
|
|
|
260
|
+
/** Default endpoints used to discover this machine's public IPv4 when `queryForIp` is enabled. */
|
|
261
|
+
export const DEFAULT_PUBLIC_IP_SERVICES: string[] = [
|
|
262
|
+
'https://api.ipify.org/',
|
|
263
|
+
'https://checkip.amazonaws.com/',
|
|
264
|
+
'https://ifconfig.me/ip',
|
|
265
|
+
'https://icanhazip.com/',
|
|
266
|
+
];
|
|
267
|
+
|
|
210
268
|
export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
211
269
|
validateMaxTxsPerBlock: {
|
|
212
270
|
env: 'VALIDATOR_MAX_TX_PER_BLOCK',
|
|
213
271
|
description:
|
|
214
272
|
'Maximum transactions per block for validation. Overrides maxTxsPerBlock for gossip validation when set.',
|
|
215
|
-
|
|
273
|
+
...optionalNumberConfigHelper(),
|
|
274
|
+
},
|
|
275
|
+
validateMaxTxsPerCheckpoint: {
|
|
276
|
+
env: 'VALIDATOR_MAX_TX_PER_CHECKPOINT',
|
|
277
|
+
description:
|
|
278
|
+
'Maximum transactions per checkpoint for validation. Used as fallback for maxTxsPerBlock when that is not set.',
|
|
279
|
+
...optionalNumberConfigHelper(),
|
|
216
280
|
},
|
|
217
281
|
validateMaxL2BlockGas: {
|
|
218
282
|
env: 'VALIDATOR_MAX_L2_BLOCK_GAS',
|
|
219
283
|
description: 'Maximum L2 gas per block for validation. When set, txs exceeding this limit are rejected.',
|
|
220
|
-
|
|
284
|
+
...optionalNumberConfigHelper(),
|
|
221
285
|
},
|
|
222
286
|
validateMaxDABlockGas: {
|
|
223
287
|
env: 'VALIDATOR_MAX_DA_BLOCK_GAS',
|
|
224
288
|
description: 'Maximum DA gas per block for validation. When set, txs exceeding this limit are rejected.',
|
|
225
|
-
|
|
289
|
+
...optionalNumberConfigHelper(),
|
|
226
290
|
},
|
|
227
291
|
p2pEnabled: {
|
|
228
292
|
env: 'P2P_ENABLED',
|
|
@@ -254,6 +318,11 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
254
318
|
description: 'The frequency in which to check for new peers.',
|
|
255
319
|
...numberConfigHelper(30_000),
|
|
256
320
|
},
|
|
321
|
+
peerFailedBanTimeMs: {
|
|
322
|
+
env: 'P2P_PEER_FAILED_BAN_TIME_MS',
|
|
323
|
+
description: 'How long to ban a peer after it fails maximum dial attempts.',
|
|
324
|
+
...numberConfigHelper(5 * 60 * 1000),
|
|
325
|
+
},
|
|
257
326
|
l2QueueSize: {
|
|
258
327
|
env: 'P2P_L2_QUEUE_SIZE',
|
|
259
328
|
description: 'Size of queue of L2 blocks to store.',
|
|
@@ -314,6 +383,17 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
314
383
|
'If announceUdpAddress or announceTcpAddress are not provided, query for the IP address of the machine. Default is false.',
|
|
315
384
|
...booleanConfigHelper(),
|
|
316
385
|
},
|
|
386
|
+
publicIpServices: {
|
|
387
|
+
env: 'P2P_PUBLIC_IP_SERVICES',
|
|
388
|
+
parseEnv: (val: string) =>
|
|
389
|
+
val
|
|
390
|
+
.split(',')
|
|
391
|
+
.map(s => s.trim())
|
|
392
|
+
.filter(Boolean),
|
|
393
|
+
description:
|
|
394
|
+
'Comma-separated HTTPS URLs that return plain-text public IPv4. Used when P2P_QUERY_FOR_IP is true and P2P_IP is unset. Tried in order until one succeeds.',
|
|
395
|
+
defaultValue: DEFAULT_PUBLIC_IP_SERVICES,
|
|
396
|
+
},
|
|
317
397
|
gossipsubInterval: {
|
|
318
398
|
env: 'P2P_GOSSIPSUB_INTERVAL_MS',
|
|
319
399
|
description: 'The interval of the gossipsub heartbeat to perform maintenance tasks.',
|
|
@@ -347,7 +427,7 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
347
427
|
gossipsubMcacheLength: {
|
|
348
428
|
env: 'P2P_GOSSIPSUB_MCACHE_LENGTH',
|
|
349
429
|
description: 'The number of gossipsub interval message cache windows to keep.',
|
|
350
|
-
...numberConfigHelper(
|
|
430
|
+
...numberConfigHelper(12),
|
|
351
431
|
},
|
|
352
432
|
gossipsubMcacheGossip: {
|
|
353
433
|
env: 'P2P_GOSSIPSUB_MCACHE_GOSSIP',
|
|
@@ -419,7 +499,7 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
419
499
|
},
|
|
420
500
|
p2pStoreMapSizeKb: {
|
|
421
501
|
env: 'P2P_STORE_MAP_SIZE_KB',
|
|
422
|
-
|
|
502
|
+
...optionalNumberConfigHelper(),
|
|
423
503
|
description: 'The maximum possible size of the P2P DB in KB. Overwrites the general dataStoreMapSizeKb.',
|
|
424
504
|
},
|
|
425
505
|
txPublicSetupAllowListExtend: {
|
|
@@ -442,6 +522,11 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
442
522
|
description: 'The number of messages to keep in the seen message cache',
|
|
443
523
|
...numberConfigHelper(100_000), // 100K
|
|
444
524
|
},
|
|
525
|
+
txValidationCacheSize: {
|
|
526
|
+
env: 'P2P_TX_VALIDATION_CACHE_SIZE',
|
|
527
|
+
description: 'Maximum number of items to keep in the tx validation LRU cache.',
|
|
528
|
+
...numberConfigHelper(5_000),
|
|
529
|
+
},
|
|
445
530
|
p2pDisableStatusHandshake: {
|
|
446
531
|
env: 'P2P_DISABLE_STATUS_HANDSHAKE',
|
|
447
532
|
description: 'True to disable the status handshake on peer connected.',
|
|
@@ -478,6 +563,11 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
478
563
|
description: 'Alters the format of p2p messages to include things like broadcast timestamp FOR TESTING ONLY',
|
|
479
564
|
...booleanConfigHelper(false),
|
|
480
565
|
},
|
|
566
|
+
l1PublishingTime: {
|
|
567
|
+
env: 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT',
|
|
568
|
+
description: 'How much time (in seconds) we allow in the slot for publishing the L1 tx (defaults to 1 L1 slot).',
|
|
569
|
+
...optionalNumberConfigHelper(),
|
|
570
|
+
},
|
|
481
571
|
fishermanMode: {
|
|
482
572
|
env: 'FISHERMAN_MODE',
|
|
483
573
|
description:
|
|
@@ -489,11 +579,36 @@ export const p2pConfigMappings: ConfigMappingsType<P2PConfig> = {
|
|
|
489
579
|
'Broadcast block proposals even when a conflicting proposal for the same slot already exists in the pool (for testing purposes only).',
|
|
490
580
|
...booleanConfigHelper(false),
|
|
491
581
|
},
|
|
582
|
+
skipIncomingProposals: {
|
|
583
|
+
description: 'Drop incoming block and checkpoint proposals at the libp2p dispatch layer (for testing only)',
|
|
584
|
+
...booleanConfigHelper(false),
|
|
585
|
+
},
|
|
586
|
+
skipProposalSlotValidation: {
|
|
587
|
+
description: 'Accept proposal gossip regardless of slot timing (for testing only)',
|
|
588
|
+
...booleanConfigHelper(false),
|
|
589
|
+
},
|
|
590
|
+
skipCheckpointProposalValidation: {
|
|
591
|
+
description:
|
|
592
|
+
'Skip checkpoint proposal validation and always attest, broadcasting the attestation before processing the embedded last block',
|
|
593
|
+
...booleanConfigHelper(false),
|
|
594
|
+
},
|
|
492
595
|
minTxPoolAgeMs: {
|
|
493
596
|
env: 'P2P_MIN_TX_POOL_AGE_MS',
|
|
494
597
|
description: 'Minimum age (ms) a transaction must have been in the pool before it is eligible for block building.',
|
|
495
598
|
...numberConfigHelper(2_000),
|
|
496
599
|
},
|
|
600
|
+
slashDataWithholdingToleranceSlots: {
|
|
601
|
+
env: 'SLASH_DATA_WITHHOLDING_TOLERANCE_SLOTS',
|
|
602
|
+
description:
|
|
603
|
+
'L2 slots to wait after a checkpoint slot before declaring its txs missing. Drives both the data-withholding slasher check and the missing-tx collection deadline.',
|
|
604
|
+
...numberConfigHelper(3),
|
|
605
|
+
},
|
|
606
|
+
p2pMissingTxCollectionDeadlineSlots: {
|
|
607
|
+
env: 'P2P_MISSING_TX_COLLECTION_DEADLINE_SLOTS',
|
|
608
|
+
description:
|
|
609
|
+
'Optional deadline (in L2 slots after the block slot) for collecting missing txs for unproven mined blocks. Clamped up to the data-withholding tolerance window so collection never gives up before the slash verdict.',
|
|
610
|
+
...optionalNumberConfigHelper(),
|
|
611
|
+
},
|
|
497
612
|
priceBumpPercentage: {
|
|
498
613
|
env: 'P2P_RPC_PRICE_BUMP_PERCENTAGE',
|
|
499
614
|
description:
|
|
@@ -533,6 +648,7 @@ export type BootnodeConfig = Pick<
|
|
|
533
648
|
| 'bootstrapNodes'
|
|
534
649
|
| 'listenAddress'
|
|
535
650
|
| 'queryForIp'
|
|
651
|
+
| 'publicIpServices'
|
|
536
652
|
> &
|
|
537
653
|
Required<Pick<P2PConfig, 'p2pIp' | 'p2pPort'>> &
|
|
538
654
|
Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'> &
|
|
@@ -550,6 +666,7 @@ const bootnodeConfigKeys: (keyof BootnodeConfig)[] = [
|
|
|
550
666
|
'bootstrapNodes',
|
|
551
667
|
'l1ChainId',
|
|
552
668
|
'queryForIp',
|
|
669
|
+
'publicIpServices',
|
|
553
670
|
];
|
|
554
671
|
|
|
555
672
|
export const bootnodeConfigMappings = pickConfigMappings(
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Checkpoint Proposal Received Callback Not Registered Error
|
|
2
|
+
*
|
|
3
|
+
* Error triggered if the allNodesCheckpointReceivedCallback is not registered
|
|
4
|
+
* @category Errors
|
|
5
|
+
*/
|
|
6
|
+
export class CheckpointProposalReceivedCallbackNotRegisteredError extends Error {
|
|
7
|
+
constructor() {
|
|
8
|
+
super('FATAL (allNodesCheckpointReceivedCallback): All nodes should register a checkpoint proposal handler');
|
|
9
|
+
this.name = 'CheckpointProposalReceivedCallbackNotRegisteredError';
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -8,28 +8,3 @@ export class IndividualReqRespTimeoutError extends Error {
|
|
|
8
8
|
super(`Request to peer timed out`);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
/** Collective request timeout error
|
|
13
|
-
*
|
|
14
|
-
* This error will be thrown when a req resp request times out regardless of the peer.
|
|
15
|
-
* @category Errors
|
|
16
|
-
*/
|
|
17
|
-
export class CollectiveReqRespTimeoutError extends Error {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(`Request to all peers timed out`);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
/** Invalid response error
|
|
24
|
-
*
|
|
25
|
-
* This error will be thrown when a response is received that is not valid.
|
|
26
|
-
*
|
|
27
|
-
* This error does not need to be punished as message validators will handle punishing invalid
|
|
28
|
-
* requests
|
|
29
|
-
* @category Errors
|
|
30
|
-
*/
|
|
31
|
-
export class InvalidResponseError extends Error {
|
|
32
|
-
constructor() {
|
|
33
|
-
super(`Invalid response received`);
|
|
34
|
-
}
|
|
35
|
-
}
|
package/src/index.ts
CHANGED
|
@@ -6,7 +6,6 @@ export * from './client/index.js';
|
|
|
6
6
|
export * from './enr/index.js';
|
|
7
7
|
export * from './config.js';
|
|
8
8
|
export * from './mem_pools/attestation_pool/index.js';
|
|
9
|
-
export * from './mem_pools/tx_pool/index.js';
|
|
10
9
|
export * from './mem_pools/tx_pool_v2/index.js';
|
|
11
10
|
export * from './msg_validators/index.js';
|
|
12
11
|
export * from './services/index.js';
|