@aztec-labs/p2p 6.0.0-rc.1 → 6.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/bootstrap/bootstrap.d.ts +2 -2
- package/dest/bootstrap/bootstrap.d.ts.map +1 -1
- package/dest/bootstrap/bootstrap.js +4 -2
- package/dest/client/factory.d.ts +3 -3
- package/dest/client/factory.d.ts.map +1 -1
- package/dest/client/factory.js +6 -6
- package/dest/client/interface.d.ts +1 -1
- package/dest/client/p2p_client.d.ts +1 -1
- package/dest/client/p2p_client.js +1 -1
- package/dest/config.d.ts +11 -1
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +16 -0
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +15 -3
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/attestation_pool.js +15 -0
- 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 +21 -0
- package/dest/mem_pools/tx_pool_v2/eviction/eviction_manager.d.ts +6 -2
- package/dest/mem_pools/tx_pool_v2/eviction/eviction_manager.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/eviction_manager.js +9 -0
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.d.ts +10 -8
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.js +22 -11
- package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts +6 -2
- package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/interfaces.js +2 -1
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts +11 -5
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts.map +1 -1
- 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 +111 -44
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +1 -1
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
- package/dest/msg_validators/attestation_validator/attestation_validator.js +3 -24
- package/dest/msg_validators/epoch_cache_lookup.d.ts +18 -0
- package/dest/msg_validators/epoch_cache_lookup.d.ts.map +1 -0
- package/dest/msg_validators/epoch_cache_lookup.js +29 -0
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.d.ts.map +1 -1
- package/dest/msg_validators/proposal_validator/proposal_validator.js +80 -82
- package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
- package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/data_validator.js +4 -3
- package/dest/msg_validators/tx_validator/factory.d.ts +40 -11
- package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/factory.js +36 -5
- package/dest/msg_validators/tx_validator/gas_validator.d.ts +18 -10
- package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/gas_validator.js +37 -27
- package/dest/services/discv5/discV5_service.d.ts +2 -2
- package/dest/services/discv5/discV5_service.d.ts.map +1 -1
- package/dest/services/discv5/discV5_service.js +3 -1
- package/dest/services/libp2p/libp2p_service.d.ts +18 -9
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
- package/dest/services/libp2p/libp2p_service.js +127 -29
- package/dest/services/peer-manager/peer_manager.d.ts +1 -1
- package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_manager.js +14 -0
- package/dest/services/tx_provider.d.ts +1 -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 +3 -1
- package/dest/test-helpers/mock-pubsub.js +1 -1
- package/dest/test-helpers/reqresp-nodes.d.ts +1 -1
- package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
- package/dest/test-helpers/reqresp-nodes.js +3 -1
- package/dest/test-helpers/testbench-utils.d.ts +4 -2
- package/dest/test-helpers/testbench-utils.d.ts.map +1 -1
- package/dest/test-helpers/testbench-utils.js +6 -0
- package/dest/testbench/p2p_client_testbench_worker.js +6 -2
- package/package.json +14 -14
- package/src/bootstrap/bootstrap.ts +3 -2
- package/src/client/factory.ts +7 -7
- package/src/client/interface.ts +1 -1
- package/src/client/p2p_client.ts +1 -1
- package/src/config.ts +11 -0
- package/src/mem_pools/attestation_pool/attestation_pool.ts +25 -0
- package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +31 -0
- package/src/mem_pools/tx_pool_v2/README.md +1 -1
- package/src/mem_pools/tx_pool_v2/eviction/eviction_manager.ts +13 -1
- package/src/mem_pools/tx_pool_v2/eviction/insufficient_fee_per_gas_eviction_rule.ts +17 -9
- package/src/mem_pools/tx_pool_v2/eviction/interfaces.ts +6 -1
- package/src/mem_pools/tx_pool_v2/interfaces.ts +10 -4
- package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +95 -40
- package/src/msg_validators/attestation_validator/attestation_validator.ts +3 -23
- package/src/msg_validators/epoch_cache_lookup.ts +33 -0
- package/src/msg_validators/proposal_validator/README.md +3 -3
- package/src/msg_validators/proposal_validator/proposal_validator.ts +78 -77
- package/src/msg_validators/tx_validator/README.md +12 -8
- package/src/msg_validators/tx_validator/data_validator.ts +4 -3
- package/src/msg_validators/tx_validator/factory.ts +60 -14
- package/src/msg_validators/tx_validator/gas_validator.ts +46 -34
- package/src/services/discv5/discV5_service.ts +2 -1
- package/src/services/libp2p/libp2p_service.ts +138 -34
- package/src/services/peer-manager/peer_manager.ts +14 -0
- package/src/services/tx_provider.ts +3 -0
- package/src/test-helpers/make-test-p2p-clients.ts +5 -1
- package/src/test-helpers/mock-pubsub.ts +3 -3
- package/src/test-helpers/reqresp-nodes.ts +5 -1
- package/src/test-helpers/testbench-utils.ts +13 -1
- package/src/testbench/p2p_client_testbench_worker.ts +10 -2
|
@@ -103,7 +103,11 @@ export async function makeTestP2PClient(
|
|
|
103
103
|
proofVerifier,
|
|
104
104
|
mockWorldState,
|
|
105
105
|
mockEpochCache,
|
|
106
|
-
{
|
|
106
|
+
{
|
|
107
|
+
getNextBlockMinFees: () => Promise.resolve(GasFees.empty()),
|
|
108
|
+
getAdmissionMinFees: () => Promise.resolve(GasFees.empty()),
|
|
109
|
+
getL1ForwardMinFees: () => Promise.resolve(GasFees.empty()),
|
|
110
|
+
},
|
|
107
111
|
'test-p2p-client',
|
|
108
112
|
undefined,
|
|
109
113
|
undefined,
|
|
@@ -4,7 +4,7 @@ import { sleep } from '@aztec-labs/foundation/sleep';
|
|
|
4
4
|
import type { AztecAsyncKVStore } from '@aztec-labs/kv-store';
|
|
5
5
|
import type { L2BlockSource } from '@aztec-labs/stdlib/block';
|
|
6
6
|
import type { ContractDataSource } from '@aztec-labs/stdlib/contract';
|
|
7
|
-
import type {
|
|
7
|
+
import type { TxAdmissionMinFeesProvider } from '@aztec-labs/stdlib/gas';
|
|
8
8
|
import type { ClientProtocolCircuitVerifier, WorldStateSynchronizer } from '@aztec-labs/stdlib/interfaces/server';
|
|
9
9
|
import type { TelemetryClient } from '@aztec-labs/telemetry-client';
|
|
10
10
|
import type { GossipsubEvents, GossipsubMessage } from '@chainsafe/libp2p-gossipsub';
|
|
@@ -54,7 +54,7 @@ export function getMockPubSubP2PServiceFactory(
|
|
|
54
54
|
proofVerifier: ClientProtocolCircuitVerifier;
|
|
55
55
|
worldStateSynchronizer: WorldStateSynchronizer;
|
|
56
56
|
peerStore: AztecAsyncKVStore;
|
|
57
|
-
|
|
57
|
+
nextBlockMinFeesProvider: TxAdmissionMinFeesProvider;
|
|
58
58
|
telemetry: TelemetryClient;
|
|
59
59
|
logger: Logger;
|
|
60
60
|
},
|
|
@@ -75,7 +75,7 @@ export function getMockPubSubP2PServiceFactory(
|
|
|
75
75
|
deps.epochCache,
|
|
76
76
|
deps.proofVerifier,
|
|
77
77
|
deps.worldStateSynchronizer,
|
|
78
|
-
deps.
|
|
78
|
+
deps.nextBlockMinFeesProvider,
|
|
79
79
|
deps.telemetry,
|
|
80
80
|
deps.logger,
|
|
81
81
|
);
|
|
@@ -172,7 +172,11 @@ export async function createTestLibP2PService(
|
|
|
172
172
|
epochCache,
|
|
173
173
|
proofVerifier,
|
|
174
174
|
worldStateSynchronizer,
|
|
175
|
-
{
|
|
175
|
+
{
|
|
176
|
+
getNextBlockMinFees: () => Promise.resolve(GasFees.empty()),
|
|
177
|
+
getAdmissionMinFees: () => Promise.resolve(GasFees.empty()),
|
|
178
|
+
getL1ForwardMinFees: () => Promise.resolve(GasFees.empty()),
|
|
179
|
+
},
|
|
176
180
|
telemetry,
|
|
177
181
|
);
|
|
178
182
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { EpochCacheInterface } from '@aztec-labs/epoch-cache';
|
|
2
|
-
import type { CheckpointProposalHash } from '@aztec-labs/foundation/branded-types';
|
|
2
|
+
import type { BlockProposalHash, CheckpointProposalHash } from '@aztec-labs/foundation/branded-types';
|
|
3
3
|
import { EpochNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
|
|
4
4
|
import type { Logger } from '@aztec-labs/foundation/log';
|
|
5
5
|
import type { L2Block, L2BlockId } from '@aztec-labs/stdlib/block';
|
|
@@ -281,6 +281,18 @@ export class InMemoryAttestationPool {
|
|
|
281
281
|
return Promise.resolve(false);
|
|
282
282
|
}
|
|
283
283
|
|
|
284
|
+
hasBlockProposal(
|
|
285
|
+
_slot: SlotNumber,
|
|
286
|
+
_indexWithinCheckpoint: number,
|
|
287
|
+
_payloadHash: BlockProposalHash,
|
|
288
|
+
): Promise<boolean> {
|
|
289
|
+
return Promise.resolve(false);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
hasCheckpointProposal(_slot: SlotNumber, _payloadHash: CheckpointProposalHash): Promise<boolean> {
|
|
293
|
+
return Promise.resolve(false);
|
|
294
|
+
}
|
|
295
|
+
|
|
284
296
|
isEmpty(): Promise<boolean> {
|
|
285
297
|
return Promise.resolve(this.proposals.size === 0 && this.checkpoints.size === 0);
|
|
286
298
|
}
|
|
@@ -133,7 +133,11 @@ class TestLibP2PService extends LibP2PService {
|
|
|
133
133
|
epochCache,
|
|
134
134
|
proofVerifier,
|
|
135
135
|
worldStateSynchronizer,
|
|
136
|
-
{
|
|
136
|
+
{
|
|
137
|
+
getNextBlockMinFees: () => Promise.resolve(GasFees.empty()),
|
|
138
|
+
getAdmissionMinFees: () => Promise.resolve(GasFees.empty()),
|
|
139
|
+
getL1ForwardMinFees: () => Promise.resolve(GasFees.empty()),
|
|
140
|
+
},
|
|
137
141
|
telemetry,
|
|
138
142
|
logger,
|
|
139
143
|
);
|
|
@@ -425,7 +429,11 @@ process.on('message', async msg => {
|
|
|
425
429
|
proofVerifier as ClientProtocolCircuitVerifier,
|
|
426
430
|
worldState,
|
|
427
431
|
epochCache,
|
|
428
|
-
{
|
|
432
|
+
{
|
|
433
|
+
getNextBlockMinFees: () => Promise.resolve(GasFees.empty()),
|
|
434
|
+
getAdmissionMinFees: () => Promise.resolve(GasFees.empty()),
|
|
435
|
+
getL1ForwardMinFees: () => Promise.resolve(GasFees.empty()),
|
|
436
|
+
},
|
|
429
437
|
'test-p2p-bench-worker',
|
|
430
438
|
undefined,
|
|
431
439
|
telemetry as TelemetryClient,
|