@aztec/p2p 0.0.1-commit.343b43af6 → 0.0.1-commit.350e0a4d
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 +130 -3
- package/dest/bootstrap/bootstrap.d.ts +1 -1
- package/dest/bootstrap/bootstrap.d.ts.map +1 -1
- package/dest/bootstrap/bootstrap.js +22 -6
- package/dest/client/factory.d.ts +4 -3
- package/dest/client/factory.d.ts.map +1 -1
- package/dest/client/factory.js +36 -19
- package/dest/client/interface.d.ts +48 -11
- package/dest/client/interface.d.ts.map +1 -1
- package/dest/client/p2p_client.d.ts +34 -19
- package/dest/client/p2p_client.d.ts.map +1 -1
- package/dest/client/p2p_client.js +115 -50
- package/dest/config.d.ts +147 -105
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +80 -24
- 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 +9 -16
- package/dest/errors/reqresp.error.d.ts.map +1 -1
- package/dest/errors/reqresp.error.js +10 -17
- 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 +101 -59
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool.js +272 -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 +224 -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 +9 -4
- package/dest/mem_pools/instrumentation.d.ts.map +1 -1
- package/dest/mem_pools/instrumentation.js +28 -9
- 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/deleted_pool.d.ts +3 -3
- package/dest/mem_pools/tx_pool_v2/deleted_pool.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/deleted_pool.js +6 -6
- 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 +3 -2
- 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 +39 -9
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/interfaces.js +2 -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_indices.d.ts +15 -1
- package/dest/mem_pools/tx_pool_v2/tx_pool_indices.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/tx_pool_indices.js +31 -0
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2.d.ts +12 -4
- 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 +22 -8
- package/dest/mem_pools/tx_pool_v2/tx_pool_v2_impl.d.ts +17 -4
- 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 +217 -120
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +10 -3
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
- package/dest/msg_validators/attestation_validator/attestation_validator.js +38 -15
- 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/proposal_validator/block_proposal_validator.d.ts +8 -3
- package/dest/msg_validators/proposal_validator/block_proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/block_proposal_validator.js +2 -2
- package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts +8 -3
- package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/checkpoint_proposal_validator.js +8 -2
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts +25 -3
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.js +85 -15
- 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 +22 -15
- package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/factory.js +51 -19
- package/dest/msg_validators/tx_validator/gas_validator.d.ts +47 -10
- package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/gas_validator.js +65 -48
- 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 +30 -3
- 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 +13 -2
- package/dest/services/discv5/discV5_service.d.ts.map +1 -1
- package/dest/services/discv5/discV5_service.js +119 -23
- package/dest/services/discv5/persisted_enr_store.d.ts +38 -0
- package/dest/services/discv5/persisted_enr_store.d.ts.map +1 -0
- package/dest/services/discv5/persisted_enr_store.js +145 -0
- package/dest/services/dummy_service.d.ts +15 -15
- package/dest/services/dummy_service.d.ts.map +1 -1
- package/dest/services/dummy_service.js +15 -16
- package/dest/services/encoding.d.ts +23 -6
- package/dest/services/encoding.d.ts.map +1 -1
- package/dest/services/encoding.js +32 -16
- package/dest/services/gossipsub/topic_score_params.d.ts +6 -12
- package/dest/services/gossipsub/topic_score_params.d.ts.map +1 -1
- package/dest/services/gossipsub/topic_score_params.js +4 -14
- 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 +45 -47
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
- package/dest/services/libp2p/libp2p_service.js +392 -300
- package/dest/services/peer-manager/peer_manager.d.ts +20 -3
- package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_manager.js +81 -25
- package/dest/services/peer-manager/peer_scoring.d.ts +34 -2
- package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_scoring.js +102 -13
- 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 +15 -3
- package/dest/services/reqresp/config.d.ts.map +1 -1
- package/dest/services/reqresp/config.js +11 -0
- 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 +3 -13
- 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 +73 -215
- package/dest/services/service.d.ts +25 -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 +13 -8
- 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 +15 -14
- package/dest/test-helpers/testbench-utils.d.ts.map +1 -1
- package/dest/test-helpers/testbench-utils.js +47 -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 +102 -40
- 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 +16 -16
- package/src/bootstrap/bootstrap.ts +17 -3
- package/src/client/factory.ts +57 -11
- package/src/client/interface.ts +44 -17
- package/src/client/p2p_client.ts +138 -83
- package/src/client/test/{tx_proposal_collector/README.md → p2p_client.batch_tx_requester.bench.README.md} +23 -53
- package/src/config.ts +160 -31
- package/src/errors/p2p-service.error.ts +11 -0
- package/src/errors/reqresp.error.ts +13 -19
- package/src/index.ts +0 -1
- package/src/mem_pools/attestation_pool/attestation_pool.ts +327 -242
- package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +244 -69
- package/src/mem_pools/attestation_pool/mocks.ts +13 -8
- package/src/mem_pools/index.ts +0 -3
- package/src/mem_pools/instrumentation.ts +18 -12
- package/src/mem_pools/tx_pool_v2/archive/tx_archive.ts +1 -9
- package/src/mem_pools/tx_pool_v2/deleted_pool.ts +7 -7
- package/src/mem_pools/tx_pool_v2/eviction/fee_payer_balance_eviction_rule.ts +3 -2
- 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 +37 -8
- package/src/mem_pools/tx_pool_v2/tx_metadata.ts +31 -9
- package/src/mem_pools/tx_pool_v2/tx_pool_indices.ts +35 -0
- package/src/mem_pools/tx_pool_v2/tx_pool_v2.ts +35 -9
- package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +243 -125
- package/src/msg_validators/attestation_validator/README.md +49 -0
- package/src/msg_validators/attestation_validator/attestation_validator.ts +46 -14
- package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +15 -7
- package/src/msg_validators/proposal_validator/README.md +123 -0
- package/src/msg_validators/proposal_validator/block_proposal_validator.ts +15 -3
- package/src/msg_validators/proposal_validator/checkpoint_proposal_validator.ts +26 -3
- package/src/msg_validators/proposal_validator/proposal_validator.ts +95 -12
- package/src/msg_validators/tx_validator/README.md +17 -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 +65 -21
- package/src/msg_validators/tx_validator/gas_validator.ts +99 -54
- package/src/msg_validators/tx_validator/index.ts +2 -0
- package/src/msg_validators/tx_validator/phases_validator.ts +33 -3
- 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 +126 -14
- package/src/services/discv5/persisted_enr_store.ts +158 -0
- package/src/services/dummy_service.ts +20 -39
- package/src/services/encoding.ts +35 -19
- package/src/services/gossipsub/README.md +33 -11
- package/src/services/gossipsub/topic_score_params.ts +9 -18
- package/src/services/libp2p/instrumentation.ts +14 -0
- package/src/services/libp2p/libp2p_service.ts +444 -339
- package/src/services/peer-manager/peer_manager.ts +89 -24
- package/src/services/peer-manager/peer_scoring.ts +102 -8
- package/src/services/reqresp/README.md +194 -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 +19 -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 +3 -13
- package/src/services/reqresp/reqresp.ts +84 -259
- package/src/services/service.ts +31 -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 +10 -8
- 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 +62 -28
- package/src/testbench/p2p_client_testbench_worker.ts +109 -56
- 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/msg_validators/clock_tolerance.d.ts +0 -21
- package/dest/msg_validators/clock_tolerance.d.ts.map +0 -1
- package/dest/msg_validators/clock_tolerance.js +0 -37
- 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/msg_validators/clock_tolerance.ts +0 -51
- 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/dest/config.d.ts
CHANGED
|
@@ -8,25 +8,23 @@ import { type TxFileStoreConfig } from './services/tx_file_store/config.js';
|
|
|
8
8
|
/**
|
|
9
9
|
* P2P client configuration values.
|
|
10
10
|
*/
|
|
11
|
-
export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, ChainConfig, TxCollectionConfig, TxFileStoreConfig, Pick<SequencerConfig, '
|
|
11
|
+
export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, ChainConfig, TxCollectionConfig, TxFileStoreConfig, Pick<SequencerConfig, 'expectedBlockProposalsPerSlot' | 'maxTxsPerBlock' | 'checkpointProposalSyncGraceSeconds' | 'maxBlocksPerCheckpoint'>, Required<Pick<SequencerConfig, 'blockDurationMs'>> {
|
|
12
12
|
/** Maximum transactions per block for validation. Overrides maxTxsPerBlock for gossip validation when set. */
|
|
13
13
|
validateMaxTxsPerBlock?: number;
|
|
14
|
-
/** Maximum
|
|
15
|
-
|
|
16
|
-
/** Maximum DA gas per block for validation. When set, txs exceeding this limit are rejected. */
|
|
17
|
-
validateMaxDABlockGas?: number;
|
|
14
|
+
/** Maximum transactions per checkpoint for validation. Used as fallback for maxTxsPerBlock when that is not set. */
|
|
15
|
+
validateMaxTxsPerCheckpoint?: number;
|
|
18
16
|
/** A flag dictating whether the P2P subsystem should be enabled. */
|
|
19
17
|
p2pEnabled: boolean;
|
|
20
18
|
/** The frequency in which to check for new L2 blocks. */
|
|
21
19
|
blockCheckIntervalMS: number;
|
|
22
|
-
/** The frequency in which to check for new L2 slots. */
|
|
23
|
-
slotCheckIntervalMS: number;
|
|
24
20
|
/** The number of blocks to fetch in a single batch. */
|
|
25
21
|
blockRequestBatchSize: number;
|
|
26
22
|
/** DEBUG: Disable colocation penalty - for testing purposes only */
|
|
27
23
|
debugDisableColocationPenalty: boolean;
|
|
28
24
|
/** The frequency in which to check for new peers. */
|
|
29
25
|
peerCheckIntervalMS: number;
|
|
26
|
+
/** How long to ban a peer after it fails MAX_DIAL_ATTEMPTS dials. */
|
|
27
|
+
peerFailedBanTimeMs: number;
|
|
30
28
|
/** Size of queue of L2 blocks to store. */
|
|
31
29
|
l2QueueSize: number;
|
|
32
30
|
/** The port for the P2P service. */
|
|
@@ -51,6 +49,10 @@ export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, Cha
|
|
|
51
49
|
maxPeerCount: number;
|
|
52
50
|
/** If announceUdpAddress or announceTcpAddress are not provided, query for the IP address of the machine. Default is false. */
|
|
53
51
|
queryForIp: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* 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).
|
|
54
|
+
*/
|
|
55
|
+
publicIpServices: string[];
|
|
54
56
|
/** The interval of the gossipsub heartbeat to perform maintenance tasks. */
|
|
55
57
|
gossipsubInterval: number;
|
|
56
58
|
/** The D parameter for the gossipsub protocol. */
|
|
@@ -69,6 +71,12 @@ export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, Cha
|
|
|
69
71
|
gossipsubMcacheGossip: number;
|
|
70
72
|
/** How long to keep message IDs in the seen cache (ms). */
|
|
71
73
|
gossipsubSeenTTL: number;
|
|
74
|
+
/**
|
|
75
|
+
* Maximum clock-disparity tolerance (ms) applied to proposal/attestation gossip receive windows. Both
|
|
76
|
+
* ends of each acceptance window are widened by this much so peers are not penalized for messages valid
|
|
77
|
+
* when sent but arriving slightly early or late due to clock skew (Ethereum's MAXIMUM_GOSSIP_CLOCK_DISPARITY).
|
|
78
|
+
*/
|
|
79
|
+
maxGossipClockDisparityMs: number;
|
|
72
80
|
/** The 'age' (in # of L2 blocks) of a processed tx after which we heavily penalize a peer for re-sending it. */
|
|
73
81
|
doubleSpendSeverePeerPenaltyWindow: number;
|
|
74
82
|
/** The weight of the tx topic for the gossipsub protocol. This determines how much the score for this specific topic contributes to the overall peer score. */
|
|
@@ -79,6 +87,8 @@ export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, Cha
|
|
|
79
87
|
gossipsubTxInvalidMessageDeliveriesDecay: number;
|
|
80
88
|
/** The values for the peer scoring system. Passed as a comma separated list of values in order: low, mid, high tolerance errors. */
|
|
81
89
|
peerPenaltyValues: number[];
|
|
90
|
+
/** How long (in seconds) a peer is banned for once its score drops below the ban threshold. */
|
|
91
|
+
peerBanDurationSeconds: number;
|
|
82
92
|
/** Limit of transactions to archive in the tx pool. Once the archived tx limit is reached, the oldest archived txs will be purged. */
|
|
83
93
|
archivedTxLimit: number;
|
|
84
94
|
/** A list of trusted peers. */
|
|
@@ -95,6 +105,8 @@ export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, Cha
|
|
|
95
105
|
maxPendingTxCount: number;
|
|
96
106
|
/** The node's seen message ID cache size */
|
|
97
107
|
seenMessageCacheSize: number;
|
|
108
|
+
/** Maximum number of (validator, tx) pairs to keep in the tx validation LRU cache. */
|
|
109
|
+
txValidationCacheSize: number;
|
|
98
110
|
/** True to disable the status handshake on peer connected. */
|
|
99
111
|
p2pDisableStatusHandshake?: boolean;
|
|
100
112
|
/** True to only permit validators to connect */
|
|
@@ -117,10 +129,39 @@ export interface P2PConfig extends P2PReqRespConfig, BatchTxRequesterConfig, Cha
|
|
|
117
129
|
broadcastEquivocatedProposals?: boolean;
|
|
118
130
|
/** Minimum age (ms) a transaction must have been in the pool before it's eligible for block building. */
|
|
119
131
|
minTxPoolAgeMs: number;
|
|
132
|
+
/**
|
|
133
|
+
* Number of full L2 slots to wait after a checkpoint's slot before declaring its txs missing
|
|
134
|
+
* for data-withholding slashing.
|
|
135
|
+
*/
|
|
136
|
+
slashDataWithholdingToleranceSlots: number;
|
|
137
|
+
/**
|
|
138
|
+
* Number of L2 slots after a mined block's slot to keep collecting its missing txs. Clamped
|
|
139
|
+
* up so that collection always runs at least until the data-withholding slash verdict is
|
|
140
|
+
* rendered (`block.slot + slashDataWithholdingToleranceSlots + 1`). Defaults to undefined,
|
|
141
|
+
* in which case the tolerance window is used directly.
|
|
142
|
+
*/
|
|
143
|
+
p2pMissingTxCollectionDeadlineSlots?: number;
|
|
120
144
|
/** Minimum percentage fee increase required to replace an existing tx via RPC (0 = no bump). */
|
|
121
145
|
priceBumpPercentage: bigint;
|
|
146
|
+
/**
|
|
147
|
+
* Number of slots behind the finalized tip to keep finalized txs for before deleting them. 0 deletes
|
|
148
|
+
* at the finalized tip (default).
|
|
149
|
+
*/
|
|
150
|
+
keepFinalizedTxsForSlots: number;
|
|
151
|
+
/** Drop incoming block and checkpoint proposals at the libp2p dispatch layer (for testing only) */
|
|
152
|
+
skipIncomingProposals?: boolean;
|
|
153
|
+
/** Accept proposal gossip regardless of slot timing (for testing only). */
|
|
154
|
+
skipProposalSlotValidation?: boolean;
|
|
155
|
+
/**
|
|
156
|
+
* Whether this node skips checkpoint proposal validation and always attests. When set, the checkpoint
|
|
157
|
+
* attestation is created and broadcast before the embedded last block is processed, so it is not delayed
|
|
158
|
+
* past the slot's attestation window by that block's re-execution. Mirrors the validator config flag.
|
|
159
|
+
*/
|
|
160
|
+
skipCheckpointProposalValidation?: boolean;
|
|
122
161
|
}
|
|
123
162
|
export declare const DEFAULT_P2P_PORT = 40400;
|
|
163
|
+
/** Default endpoints used to discover this machine's public IPv4 when `queryForIp` is enabled. */
|
|
164
|
+
export declare const DEFAULT_PUBLIC_IP_SERVICES: string[];
|
|
124
165
|
export declare const p2pConfigMappings: ConfigMappingsType<P2PConfig>;
|
|
125
166
|
/**
|
|
126
167
|
* Gets the config values for p2p client from environment variables.
|
|
@@ -131,104 +172,105 @@ export declare function getP2PDefaultConfig(): P2PConfig;
|
|
|
131
172
|
/**
|
|
132
173
|
* Required P2P config values for a bootstrap node.
|
|
133
174
|
*/
|
|
134
|
-
export type BootnodeConfig = Pick<P2PConfig, 'p2pIp' | 'p2pPort' | 'p2pBroadcastPort' | 'peerIdPrivateKey' | 'peerIdPrivateKeyPath' | 'bootstrapNodes' | 'listenAddress' | 'queryForIp'> & Required<Pick<P2PConfig, 'p2pIp' | 'p2pPort'>> & Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'> & Pick<ChainConfig, 'l1ChainId'>;
|
|
175
|
+
export type BootnodeConfig = Pick<P2PConfig, 'p2pIp' | 'p2pPort' | 'p2pBroadcastPort' | 'peerIdPrivateKey' | 'peerIdPrivateKeyPath' | 'bootstrapNodes' | 'listenAddress' | 'queryForIp' | 'publicIpServices'> & Required<Pick<P2PConfig, 'p2pIp' | 'p2pPort'>> & Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'> & Pick<ChainConfig, 'l1ChainId'>;
|
|
135
176
|
export declare const bootnodeConfigMappings: ConfigMappingsType<Pick<{
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
dialTimeoutMs:
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
177
|
+
maxTxsPerBlock: number;
|
|
178
|
+
maxBlocksPerCheckpoint: number;
|
|
179
|
+
blockDurationMs: number;
|
|
180
|
+
checkpointProposalSyncGraceSeconds: number;
|
|
181
|
+
expectedBlockProposalsPerSlot: number;
|
|
182
|
+
l1ChainId: number;
|
|
183
|
+
rollupVersion: number;
|
|
184
|
+
dataDirectory: string;
|
|
185
|
+
dataStoreMapSizeKb: number;
|
|
186
|
+
batchTxRequesterSmartParallelWorkerCount: number;
|
|
187
|
+
batchTxRequesterDumbParallelWorkerCount: number;
|
|
188
|
+
batchTxRequesterTxBatchSize: number;
|
|
189
|
+
batchTxRequesterBadPeerThreshold: number;
|
|
190
|
+
overallRequestTimeoutMs: number;
|
|
191
|
+
individualRequestTimeoutMs: number;
|
|
192
|
+
p2pOptimisticNegotiation: boolean;
|
|
193
|
+
dialTimeoutMs: number;
|
|
194
|
+
txCollectionFastNodesTimeoutBeforeReqRespMs: number;
|
|
195
|
+
txCollectionFastNodeIntervalMs: number;
|
|
196
|
+
txCollectionNodeRpcUrls: string[];
|
|
197
|
+
txCollectionFastMaxParallelRequestsPerNode: number;
|
|
198
|
+
txCollectionNodeRpcMaxBatchSize: number;
|
|
199
|
+
txCollectionFileStoreUrls: string[];
|
|
200
|
+
txCollectionFileStoreFastDelayMs: number;
|
|
201
|
+
txCollectionFileStoreFastWorkerCount: number;
|
|
202
|
+
txCollectionFileStoreFastBackoffBaseMs: number;
|
|
203
|
+
txCollectionFileStoreFastBackoffMaxMs: number;
|
|
204
|
+
txFileStoreUrl: string;
|
|
205
|
+
txFileStoreUploadConcurrency: number;
|
|
206
|
+
txFileStoreMaxQueueSize: number;
|
|
207
|
+
txFileStoreEnabled: boolean;
|
|
208
|
+
validateMaxTxsPerBlock: number;
|
|
209
|
+
validateMaxTxsPerCheckpoint: number;
|
|
210
|
+
p2pEnabled: boolean;
|
|
211
|
+
blockCheckIntervalMS: number;
|
|
212
|
+
blockRequestBatchSize: number;
|
|
213
|
+
debugDisableColocationPenalty: boolean;
|
|
214
|
+
peerCheckIntervalMS: number;
|
|
215
|
+
peerFailedBanTimeMs: number;
|
|
216
|
+
l2QueueSize: number;
|
|
217
|
+
p2pPort: number;
|
|
218
|
+
p2pBroadcastPort: number;
|
|
219
|
+
p2pIp: string;
|
|
220
|
+
listenAddress: string;
|
|
221
|
+
peerIdPrivateKey: SecretValue<string>;
|
|
222
|
+
peerIdPrivateKeyPath: string;
|
|
223
|
+
bootstrapNodes: string[];
|
|
224
|
+
bootstrapNodeEnrVersionCheck: boolean;
|
|
225
|
+
bootstrapNodesAsFullPeers: boolean;
|
|
226
|
+
maxPeerCount: number;
|
|
227
|
+
queryForIp: boolean;
|
|
228
|
+
publicIpServices: string[];
|
|
229
|
+
gossipsubInterval: number;
|
|
230
|
+
gossipsubD: number;
|
|
231
|
+
gossipsubDlo: number;
|
|
232
|
+
gossipsubDhi: number;
|
|
233
|
+
gossipsubDLazy: number;
|
|
234
|
+
gossipsubFloodPublish: boolean;
|
|
235
|
+
gossipsubMcacheLength: number;
|
|
236
|
+
gossipsubMcacheGossip: number;
|
|
237
|
+
gossipsubSeenTTL: number;
|
|
238
|
+
maxGossipClockDisparityMs: number;
|
|
239
|
+
doubleSpendSeverePeerPenaltyWindow: number;
|
|
240
|
+
gossipsubTxTopicWeight: number;
|
|
241
|
+
gossipsubTxInvalidMessageDeliveriesWeight: number;
|
|
242
|
+
gossipsubTxInvalidMessageDeliveriesDecay: number;
|
|
243
|
+
peerPenaltyValues: number[];
|
|
244
|
+
peerBanDurationSeconds: number;
|
|
245
|
+
archivedTxLimit: number;
|
|
246
|
+
trustedPeers: string[];
|
|
247
|
+
privatePeers: string[];
|
|
248
|
+
preferredPeers: string[];
|
|
249
|
+
p2pStoreMapSizeKb: number;
|
|
250
|
+
txPublicSetupAllowListExtend: AllowedElement[];
|
|
251
|
+
maxPendingTxCount: number;
|
|
252
|
+
seenMessageCacheSize: number;
|
|
253
|
+
txValidationCacheSize: number;
|
|
254
|
+
p2pDisableStatusHandshake: boolean;
|
|
255
|
+
p2pAllowOnlyValidators: boolean;
|
|
256
|
+
p2pDiscoveryDisabled: boolean;
|
|
257
|
+
p2pMaxFailedAuthAttemptsAllowed: number;
|
|
258
|
+
disableTransactions: boolean;
|
|
259
|
+
dropTransactionsProbability: number;
|
|
260
|
+
txPoolDeleteTxsAfterReorg: boolean;
|
|
261
|
+
debugP2PInstrumentMessages: boolean;
|
|
262
|
+
fishermanMode: boolean;
|
|
263
|
+
broadcastEquivocatedProposals: boolean;
|
|
264
|
+
minTxPoolAgeMs: number;
|
|
265
|
+
slashDataWithholdingToleranceSlots: number;
|
|
266
|
+
p2pMissingTxCollectionDeadlineSlots: number;
|
|
267
|
+
priceBumpPercentage: bigint;
|
|
268
|
+
keepFinalizedTxsForSlots: number;
|
|
269
|
+
skipIncomingProposals: boolean;
|
|
270
|
+
skipProposalSlotValidation: boolean;
|
|
271
|
+
skipCheckpointProposalValidation: boolean;
|
|
272
|
+
rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
|
|
273
|
+
}, "bootstrapNodes" | "dataDirectory" | "dataStoreMapSizeKb" | "l1ChainId" | "listenAddress" | "p2pBroadcastPort" | "p2pIp" | "p2pPort" | "peerIdPrivateKey" | "peerIdPrivateKeyPath" | "publicIpServices" | "queryForIp">>;
|
|
232
274
|
/**
|
|
233
275
|
* Parses a string to a list of allowed elements.
|
|
234
276
|
* Each entry is expected to be of one of the following formats:
|
|
@@ -243,4 +285,4 @@ export declare const bootnodeConfigMappings: ConfigMappingsType<Pick<{
|
|
|
243
285
|
* @returns A list of allowed elements
|
|
244
286
|
*/
|
|
245
287
|
export declare function parseAllowList(value: string): AllowedElement[];
|
|
246
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLGtCQUFrQixFQUN2QixXQUFXLEVBV1osTUFBTSwwQkFBMEIsQ0FBQztBQUlsQyxPQUFPLEVBQ0wsS0FBSyxjQUFjLEVBQ25CLEtBQUssV0FBVyxFQUNoQixLQUFLLGVBQWUsRUFHckIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXNCLE1BQU0sd0JBQXdCLENBQUM7QUFFbEYsT0FBTyxFQUNMLEtBQUssc0JBQXNCLEVBRTVCLE1BQU0saURBQWlELENBQUM7QUFDekQsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTRCLE1BQU0sOEJBQThCLENBQUM7QUFDL0YsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQThCLE1BQU0sb0NBQW9DLENBQUM7QUFDekcsT0FBTyxFQUFFLEtBQUssaUJBQWlCLEVBQTZCLE1BQU0sb0NBQW9DLENBQUM7QUFFdkc7O0dBRUc7QUFDSCxNQUFNLFdBQVcsU0FDZixTQUFRLGdCQUFnQixFQUN0QixzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsSUFBSSxDQUNGLGVBQWUsRUFDYiwrQkFBK0IsR0FDL0IsZ0JBQWdCLEdBQ2hCLG9DQUFvQyxHQUNwQyx3QkFBd0IsQ0FDM0IsRUFHRCxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BELDhHQUE4RztJQUM5RyxzQkFBc0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUVoQyxvSEFBb0g7SUFDcEgsMkJBQTJCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFckMsb0VBQW9FO0lBQ3BFLFVBQVUsRUFBRSxPQUFPLENBQUM7SUFFcEIseURBQXlEO0lBQ3pELG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUU3Qix1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
|
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,WAAW,EAWZ,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAElF,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,8BAA8B,CAAC;AAC/F,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,oCAAoC,CAAC;AACzG,OAAO,EAAE,KAAK,iBAAiB,EAA6B,MAAM,oCAAoC,CAAC;AAEvG;;GAEG;AACH,MAAM,WAAW,SACf,SAAQ,gBAAgB,EACtB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,IAAI,CACF,eAAe,EACb,+BAA+B,GAC/B,gBAAgB,GAChB,oCAAoC,GACpC,wBAAwB,CAC3B,EAGD,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IACpD,8GAA8G;IAC9G,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,oHAAoH;IACpH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,oEAAoE;IACpE,UAAU,EAAE,OAAO,CAAC;IAEpB,yDAAyD;IACzD,oBAAoB,EAAE,MAAM,CAAC;IAE7B,uDAAuD;IACvD,qBAAqB,EAAE,MAAM,CAAC;IAE9B,oEAAoE;IACpE,6BAA6B,EAAE,OAAO,CAAC;IAEvC,qDAAqD;IACrD,mBAAmB,EAAE,MAAM,CAAC;IAE5B,qEAAqE;IACrE,mBAAmB,EAAE,MAAM,CAAC;IAE5B,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IAEpB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAEhB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IAEtB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvC,4IAA4I;IAC5I,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,+CAA+C;IAC/C,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB,sEAAsE;IACtE,4BAA4B,EAAE,OAAO,CAAC;IAEtC,iGAAiG;IACjG,yBAAyB,EAAE,OAAO,CAAC;IAEnC,8GAA8G;IAC9G,YAAY,EAAE,MAAM,CAAC;IAErB,+HAA+H;IAC/H,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,4EAA4E;IAC5E,iBAAiB,EAAE,MAAM,CAAC;IAE1B,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IAEnB,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;IAErB,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;IAErB,sDAAsD;IACtD,cAAc,EAAE,MAAM,CAAC;IAEvB,qEAAqE;IACrE,qBAAqB,EAAE,OAAO,CAAC;IAE/B,sEAAsE;IACtE,qBAAqB,EAAE,MAAM,CAAC;IAE9B,iFAAiF;IACjF,qBAAqB,EAAE,MAAM,CAAC;IAE9B,2DAA2D;IAC3D,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,yBAAyB,EAAE,MAAM,CAAC;IAElC,gHAAgH;IAChH,kCAAkC,EAAE,MAAM,CAAC;IAE3C,gKAAgK;IAChK,sBAAsB,EAAE,MAAM,CAAC;IAE/B,iFAAiF;IACjF,yCAAyC,EAAE,MAAM,CAAC;IAElD,2GAA2G;IAC3G,wCAAwC,EAAE,MAAM,CAAC;IAEjD,oIAAoI;IACpI,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAE5B,+FAA+F;IAC/F,sBAAsB,EAAE,MAAM,CAAC;IAE/B,sIAAsI;IACtI,eAAe,EAAE,MAAM,CAAC;IAExB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,iCAAiC;IACjC,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB,gGAAgG;IAChG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,iEAAiE;IACjE,4BAA4B,EAAE,cAAc,EAAE,CAAC;IAE/C,4EAA4E;IAC5E,iBAAiB,EAAE,MAAM,CAAC;IAE1B,4CAA4C;IAC5C,oBAAoB,EAAE,MAAM,CAAC;IAE7B,sFAAsF;IACtF,qBAAqB,EAAE,MAAM,CAAC;IAE9B,8DAA8D;IAC9D,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,gDAAgD;IAChD,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iFAAiF;IACjF,+BAA+B,EAAE,MAAM,CAAC;IAExC,2HAA2H;IAC3H,mBAAmB,EAAE,OAAO,CAAC;IAE7B,kGAAkG;IAClG,2BAA2B,EAAE,MAAM,CAAC;IAEpC,yGAAyG;IACzG,yBAAyB,EAAE,OAAO,CAAC;IAEnC,oGAAoG;IACpG,0BAA0B,EAAE,OAAO,CAAC;IAEpC,iJAAiJ;IACjJ,aAAa,EAAE,OAAO,CAAC;IAEvB,2IAA2I;IAC3I,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC,yGAAyG;IACzG,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,kCAAkC,EAAE,MAAM,CAAC;IAE3C;;;;;OAKG;IACH,mCAAmC,CAAC,EAAE,MAAM,CAAC;IAE7C,gGAAgG;IAChG,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,wBAAwB,EAAE,MAAM,CAAC;IAEjC,mGAAmG;IACnG,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC,2EAA2E;IAC3E,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAErC;;;;OAIG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;CAC5C;AAED,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAEtC,kGAAkG;AAClG,eAAO,MAAM,0BAA0B,EAAE,MAAM,EAK9C,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CAuW3D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,SAAS,EACP,OAAO,GACP,SAAS,GACT,kBAAkB,GAClB,kBAAkB,GAClB,sBAAsB,GACtB,gBAAgB,GAChB,eAAe,GACf,YAAY,GACZ,kBAAkB,CACrB,GACC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC,GAC9C,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,oBAAoB,CAAC,GAC7D,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAiBjC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2NAGlC,CAAC;AA+BF;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE,CA2C9D"}
|
package/dest/config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { bigintConfigHelper, booleanConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, percentageConfigHelper, pickConfigMappings, secretStringConfigHelper } from '@aztec/foundation/config';
|
|
1
|
+
import { bigintConfigHelper, booleanConfigHelper, floatConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, optionalNumberConfigHelper, percentageConfigHelper, pickConfigMappings, secretStringConfigHelper } from '@aztec/foundation/config';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { FunctionSelector } from '@aztec/stdlib/abi/function-selector';
|
|
4
4
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
@@ -9,21 +9,22 @@ import { p2pReqRespConfigMappings } from './services/reqresp/config.js';
|
|
|
9
9
|
import { txCollectionConfigMappings } from './services/tx_collection/config.js';
|
|
10
10
|
import { txFileStoreConfigMappings } from './services/tx_file_store/config.js';
|
|
11
11
|
export const DEFAULT_P2P_PORT = 40400;
|
|
12
|
+
/** Default endpoints used to discover this machine's public IPv4 when `queryForIp` is enabled. */ export const DEFAULT_PUBLIC_IP_SERVICES = [
|
|
13
|
+
'https://api.ipify.org/',
|
|
14
|
+
'https://checkip.amazonaws.com/',
|
|
15
|
+
'https://ifconfig.me/ip',
|
|
16
|
+
'https://icanhazip.com/'
|
|
17
|
+
];
|
|
12
18
|
export const p2pConfigMappings = {
|
|
13
19
|
validateMaxTxsPerBlock: {
|
|
14
20
|
env: 'VALIDATOR_MAX_TX_PER_BLOCK',
|
|
15
21
|
description: 'Maximum transactions per block for validation. Overrides maxTxsPerBlock for gossip validation when set.',
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
validateMaxL2BlockGas: {
|
|
19
|
-
env: 'VALIDATOR_MAX_L2_BLOCK_GAS',
|
|
20
|
-
description: 'Maximum L2 gas per block for validation. When set, txs exceeding this limit are rejected.',
|
|
21
|
-
parseEnv: (val)=>val ? parseInt(val, 10) : undefined
|
|
22
|
+
...optionalNumberConfigHelper()
|
|
22
23
|
},
|
|
23
|
-
|
|
24
|
-
env: '
|
|
25
|
-
description: 'Maximum
|
|
26
|
-
|
|
24
|
+
validateMaxTxsPerCheckpoint: {
|
|
25
|
+
env: 'VALIDATOR_MAX_TX_PER_CHECKPOINT',
|
|
26
|
+
description: 'Maximum transactions per checkpoint for validation. Used as fallback for maxTxsPerBlock when that is not set.',
|
|
27
|
+
...optionalNumberConfigHelper()
|
|
27
28
|
},
|
|
28
29
|
p2pEnabled: {
|
|
29
30
|
env: 'P2P_ENABLED',
|
|
@@ -40,11 +41,6 @@ export const p2pConfigMappings = {
|
|
|
40
41
|
description: 'The frequency in which to check for new L2 blocks.',
|
|
41
42
|
...numberConfigHelper(100)
|
|
42
43
|
},
|
|
43
|
-
slotCheckIntervalMS: {
|
|
44
|
-
env: 'P2P_SLOT_CHECK_INTERVAL_MS',
|
|
45
|
-
description: 'The frequency in which to check for new L2 slots.',
|
|
46
|
-
...numberConfigHelper(1000)
|
|
47
|
-
},
|
|
48
44
|
debugDisableColocationPenalty: {
|
|
49
45
|
env: 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY',
|
|
50
46
|
description: 'DEBUG: Disable colocation penalty - NEVER set to true in production',
|
|
@@ -55,6 +51,11 @@ export const p2pConfigMappings = {
|
|
|
55
51
|
description: 'The frequency in which to check for new peers.',
|
|
56
52
|
...numberConfigHelper(30_000)
|
|
57
53
|
},
|
|
54
|
+
peerFailedBanTimeMs: {
|
|
55
|
+
env: 'P2P_PEER_FAILED_BAN_TIME_MS',
|
|
56
|
+
description: 'How long to ban a peer after it fails maximum dial attempts.',
|
|
57
|
+
...numberConfigHelper(5 * 60 * 1000)
|
|
58
|
+
},
|
|
58
59
|
l2QueueSize: {
|
|
59
60
|
env: 'P2P_L2_QUEUE_SIZE',
|
|
60
61
|
description: 'Size of queue of L2 blocks to store.',
|
|
@@ -113,6 +114,12 @@ export const p2pConfigMappings = {
|
|
|
113
114
|
description: 'If announceUdpAddress or announceTcpAddress are not provided, query for the IP address of the machine. Default is false.',
|
|
114
115
|
...booleanConfigHelper()
|
|
115
116
|
},
|
|
117
|
+
publicIpServices: {
|
|
118
|
+
env: 'P2P_PUBLIC_IP_SERVICES',
|
|
119
|
+
parseEnv: (val)=>val.split(',').map((s)=>s.trim()).filter(Boolean),
|
|
120
|
+
description: '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.',
|
|
121
|
+
defaultValue: DEFAULT_PUBLIC_IP_SERVICES
|
|
122
|
+
},
|
|
116
123
|
gossipsubInterval: {
|
|
117
124
|
env: 'P2P_GOSSIPSUB_INTERVAL_MS',
|
|
118
125
|
description: 'The interval of the gossipsub heartbeat to perform maintenance tasks.',
|
|
@@ -146,7 +153,7 @@ export const p2pConfigMappings = {
|
|
|
146
153
|
gossipsubMcacheLength: {
|
|
147
154
|
env: 'P2P_GOSSIPSUB_MCACHE_LENGTH',
|
|
148
155
|
description: 'The number of gossipsub interval message cache windows to keep.',
|
|
149
|
-
...numberConfigHelper(
|
|
156
|
+
...numberConfigHelper(12)
|
|
150
157
|
},
|
|
151
158
|
gossipsubMcacheGossip: {
|
|
152
159
|
env: 'P2P_GOSSIPSUB_MCACHE_GOSSIP',
|
|
@@ -158,20 +165,25 @@ export const p2pConfigMappings = {
|
|
|
158
165
|
description: 'How long to keep message IDs in the seen cache.',
|
|
159
166
|
...numberConfigHelper(20 * 60 * 1000)
|
|
160
167
|
},
|
|
168
|
+
maxGossipClockDisparityMs: {
|
|
169
|
+
env: 'P2P_MAX_GOSSIP_CLOCK_DISPARITY_MS',
|
|
170
|
+
description: 'Maximum clock-disparity tolerance (ms) applied to both ends of proposal/attestation gossip receive windows.',
|
|
171
|
+
...numberConfigHelper(500)
|
|
172
|
+
},
|
|
161
173
|
gossipsubTxTopicWeight: {
|
|
162
174
|
env: 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT',
|
|
163
175
|
description: 'The weight of the tx topic for the gossipsub protocol.',
|
|
164
|
-
...
|
|
176
|
+
...floatConfigHelper(1)
|
|
165
177
|
},
|
|
166
178
|
gossipsubTxInvalidMessageDeliveriesWeight: {
|
|
167
179
|
env: 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT',
|
|
168
180
|
description: 'The weight of the tx invalid message deliveries for the gossipsub protocol.',
|
|
169
|
-
...
|
|
181
|
+
...floatConfigHelper(-20)
|
|
170
182
|
},
|
|
171
183
|
gossipsubTxInvalidMessageDeliveriesDecay: {
|
|
172
184
|
env: 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY',
|
|
173
185
|
description: 'Determines how quickly the penalty for invalid message deliveries decays over time. Between 0 and 1.',
|
|
174
|
-
...
|
|
186
|
+
...floatConfigHelper(0.5)
|
|
175
187
|
},
|
|
176
188
|
peerPenaltyValues: {
|
|
177
189
|
env: 'P2P_PEER_PENALTY_VALUES',
|
|
@@ -183,6 +195,11 @@ export const p2pConfigMappings = {
|
|
|
183
195
|
50
|
|
184
196
|
]
|
|
185
197
|
},
|
|
198
|
+
peerBanDurationSeconds: {
|
|
199
|
+
env: 'P2P_PEER_BAN_DURATION_SECONDS',
|
|
200
|
+
description: 'How long (in seconds) a peer is banned for once its score drops below the ban threshold.',
|
|
201
|
+
...numberConfigHelper(24 * 60 * 60)
|
|
202
|
+
},
|
|
186
203
|
doubleSpendSeverePeerPenaltyWindow: {
|
|
187
204
|
env: 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW',
|
|
188
205
|
description: 'The "age" (in L2 blocks) of a tx after which we heavily penalize a peer for sending it.',
|
|
@@ -218,7 +235,7 @@ export const p2pConfigMappings = {
|
|
|
218
235
|
},
|
|
219
236
|
p2pStoreMapSizeKb: {
|
|
220
237
|
env: 'P2P_STORE_MAP_SIZE_KB',
|
|
221
|
-
|
|
238
|
+
...optionalNumberConfigHelper(),
|
|
222
239
|
description: 'The maximum possible size of the P2P DB in KB. Overwrites the general dataStoreMapSizeKb.'
|
|
223
240
|
},
|
|
224
241
|
txPublicSetupAllowListExtend: {
|
|
@@ -239,6 +256,11 @@ export const p2pConfigMappings = {
|
|
|
239
256
|
description: 'The number of messages to keep in the seen message cache',
|
|
240
257
|
...numberConfigHelper(100_000)
|
|
241
258
|
},
|
|
259
|
+
txValidationCacheSize: {
|
|
260
|
+
env: 'P2P_TX_VALIDATION_CACHE_SIZE',
|
|
261
|
+
description: 'Maximum number of items to keep in the tx validation LRU cache.',
|
|
262
|
+
...numberConfigHelper(5_000)
|
|
263
|
+
},
|
|
242
264
|
p2pDisableStatusHandshake: {
|
|
243
265
|
env: 'P2P_DISABLE_STATUS_HANDSHAKE',
|
|
244
266
|
description: 'True to disable the status handshake on peer connected.',
|
|
@@ -283,17 +305,50 @@ export const p2pConfigMappings = {
|
|
|
283
305
|
description: 'Broadcast block proposals even when a conflicting proposal for the same slot already exists in the pool (for testing purposes only).',
|
|
284
306
|
...booleanConfigHelper(false)
|
|
285
307
|
},
|
|
308
|
+
skipIncomingProposals: {
|
|
309
|
+
description: 'Drop incoming block and checkpoint proposals at the libp2p dispatch layer (for testing only)',
|
|
310
|
+
...booleanConfigHelper(false)
|
|
311
|
+
},
|
|
312
|
+
skipProposalSlotValidation: {
|
|
313
|
+
description: 'Accept proposal gossip regardless of slot timing (for testing only)',
|
|
314
|
+
...booleanConfigHelper(false)
|
|
315
|
+
},
|
|
316
|
+
skipCheckpointProposalValidation: {
|
|
317
|
+
description: 'Skip checkpoint proposal validation and always attest, broadcasting the attestation before processing the embedded last block',
|
|
318
|
+
...booleanConfigHelper(false)
|
|
319
|
+
},
|
|
286
320
|
minTxPoolAgeMs: {
|
|
287
321
|
env: 'P2P_MIN_TX_POOL_AGE_MS',
|
|
288
322
|
description: 'Minimum age (ms) a transaction must have been in the pool before it is eligible for block building.',
|
|
289
323
|
...numberConfigHelper(2_000)
|
|
290
324
|
},
|
|
325
|
+
slashDataWithholdingToleranceSlots: {
|
|
326
|
+
env: 'SLASH_DATA_WITHHOLDING_TOLERANCE_SLOTS',
|
|
327
|
+
description: '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.',
|
|
328
|
+
...numberConfigHelper(3)
|
|
329
|
+
},
|
|
330
|
+
p2pMissingTxCollectionDeadlineSlots: {
|
|
331
|
+
env: 'P2P_MISSING_TX_COLLECTION_DEADLINE_SLOTS',
|
|
332
|
+
description: '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.',
|
|
333
|
+
...optionalNumberConfigHelper()
|
|
334
|
+
},
|
|
291
335
|
priceBumpPercentage: {
|
|
292
336
|
env: 'P2P_RPC_PRICE_BUMP_PERCENTAGE',
|
|
293
337
|
description: 'Minimum percentage fee increase required to replace an existing tx via RPC. Even at 0%, replacement still requires paying at least 1 unit more.',
|
|
294
338
|
...bigintConfigHelper(10n)
|
|
295
339
|
},
|
|
296
|
-
|
|
340
|
+
keepFinalizedTxsForSlots: {
|
|
341
|
+
env: 'P2P_KEEP_FINALIZED_TXS_FOR_SLOTS',
|
|
342
|
+
description: 'Number of slots behind the finalized tip to keep finalized txs for before deleting them. 0 deletes at the finalized tip.',
|
|
343
|
+
...numberConfigHelper(0)
|
|
344
|
+
},
|
|
345
|
+
...pickConfigMappings(sharedSequencerConfigMappings, [
|
|
346
|
+
'expectedBlockProposalsPerSlot',
|
|
347
|
+
'maxTxsPerBlock',
|
|
348
|
+
'checkpointProposalSyncGraceSeconds',
|
|
349
|
+
'maxBlocksPerCheckpoint',
|
|
350
|
+
'blockDurationMs'
|
|
351
|
+
]),
|
|
297
352
|
...p2pReqRespConfigMappings,
|
|
298
353
|
...batchTxRequesterConfigMappings,
|
|
299
354
|
...chainConfigMappings,
|
|
@@ -320,7 +375,8 @@ const bootnodeConfigKeys = [
|
|
|
320
375
|
'dataStoreMapSizeKb',
|
|
321
376
|
'bootstrapNodes',
|
|
322
377
|
'l1ChainId',
|
|
323
|
-
'queryForIp'
|
|
378
|
+
'queryForIp',
|
|
379
|
+
'publicIpServices'
|
|
324
380
|
];
|
|
325
381
|
export const bootnodeConfigMappings = pickConfigMappings({
|
|
326
382
|
...p2pConfigMappings,
|
|
@@ -379,7 +435,7 @@ export const bootnodeConfigMappings = pickConfigMappings({
|
|
|
379
435
|
const flags = flagsString ? parseFlags(flagsString, trimmed) : {};
|
|
380
436
|
if (typeString === 'I') {
|
|
381
437
|
entries.push({
|
|
382
|
-
address: AztecAddress.
|
|
438
|
+
address: AztecAddress.fromStringUnsafe(identifierString),
|
|
383
439
|
selector,
|
|
384
440
|
...flags
|
|
385
441
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Checkpoint Proposal Received Callback Not Registered Error
|
|
2
|
+
*
|
|
3
|
+
* Error triggered if the allNodesCheckpointReceivedCallback is not registered
|
|
4
|
+
* @category Errors
|
|
5
|
+
*/
|
|
6
|
+
export declare class CheckpointProposalReceivedCallbackNotRegisteredError extends Error {
|
|
7
|
+
constructor();
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwLXNlcnZpY2UuZXJyb3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcnJvcnMvcDJwLXNlcnZpY2UuZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILHFCQUFhLG9EQUFxRCxTQUFRLEtBQUs7SUFDN0UsY0FHQztDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"p2p-service.error.d.ts","sourceRoot":"","sources":["../../src/errors/p2p-service.error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,oDAAqD,SAAQ,KAAK;IAC7E,cAGC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Checkpoint Proposal Received Callback Not Registered Error
|
|
2
|
+
*
|
|
3
|
+
* Error triggered if the allNodesCheckpointReceivedCallback is not registered
|
|
4
|
+
* @category Errors
|
|
5
|
+
*/ export class CheckpointProposalReceivedCallbackNotRegisteredError extends Error {
|
|
6
|
+
constructor(){
|
|
7
|
+
super('FATAL (allNodesCheckpointReceivedCallback): All nodes should register a checkpoint proposal handler');
|
|
8
|
+
this.name = 'CheckpointProposalReceivedCallbackNotRegisteredError';
|
|
9
|
+
}
|
|
10
|
+
}
|