@aztec-labs/p2p 6.0.0-rc.3 → 6.0.0
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 +1 -3
- package/dest/client/p2p_client.js +1 -2
- package/dest/config.d.ts +1 -11
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +0 -16
- package/dest/mem_pools/tx_pool_v2/deleted_pool.d.ts +1 -1
- package/dest/mem_pools/tx_pool_v2/deleted_pool.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/deleted_pool.js +1 -0
- package/dest/mem_pools/tx_pool_v2/eviction/eviction_manager.d.ts +2 -1
- 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 +25 -1
- package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts +3 -3
- package/dest/mem_pools/tx_pool_v2/eviction/interfaces.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.d.ts +2 -1
- package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.js +10 -1
- package/dest/mem_pools/tx_pool_v2/interfaces.d.ts +6 -1
- 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 +39 -8
- 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 +25 -13
- package/dest/msg_validators/epoch_cache_lookup.d.ts +15 -12
- package/dest/msg_validators/epoch_cache_lookup.d.ts.map +1 -1
- package/dest/msg_validators/epoch_cache_lookup.js +27 -18
- 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 +23 -15
- 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 +61 -13
- 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 +2 -3
- package/dest/services/dummy_service.d.ts +2 -1
- package/dest/services/dummy_service.d.ts.map +1 -1
- package/dest/services/dummy_service.js +1 -0
- package/dest/services/encoding.d.ts +2 -1
- package/dest/services/encoding.d.ts.map +1 -1
- package/dest/services/encoding.js +1 -0
- package/dest/services/libp2p/libp2p_service.d.ts +6 -2
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
- package/dest/services/libp2p/libp2p_service.js +38 -9
- 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 +5 -1
- package/dest/services/peer-manager/peer_scoring.d.ts +13 -1
- package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
- package/dest/services/peer-manager/peer_scoring.js +38 -0
- package/dest/services/reqresp/protocols/auth.d.ts +2 -1
- package/dest/services/reqresp/protocols/auth.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/auth.js +1 -0
- package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts +2 -1
- package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/block_txs/bitvector.js +1 -0
- 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 +13 -4
- package/dest/services/reqresp/protocols/goodbye.d.ts +2 -1
- package/dest/services/reqresp/protocols/goodbye.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/goodbye.js +1 -0
- package/dest/services/reqresp/protocols/ping.d.ts +2 -1
- package/dest/services/reqresp/protocols/ping.d.ts.map +1 -1
- package/dest/services/reqresp/protocols/ping.js +1 -0
- package/dest/services/reqresp/reqresp.d.ts +2 -1
- package/dest/services/reqresp/reqresp.d.ts.map +1 -1
- package/dest/services/reqresp/reqresp.js +1 -0
- package/dest/test-helpers/mock-pubsub.d.ts +2 -1
- package/dest/test-helpers/mock-pubsub.d.ts.map +1 -1
- package/dest/test-helpers/mock-pubsub.js +1 -0
- 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 +1 -0
- package/dest/test-helpers/testbench-utils.js +18 -6
- package/dest/testbench/p2p_client_testbench_worker.d.ts +1 -1
- package/dest/testbench/p2p_client_testbench_worker.d.ts.map +1 -1
- package/dest/testbench/p2p_client_testbench_worker.js +1 -0
- package/dest/testbench/worker_client_manager.d.ts +1 -1
- package/dest/testbench/worker_client_manager.d.ts.map +1 -1
- package/dest/testbench/worker_client_manager.js +2 -1
- package/dest/util.d.ts +1 -1
- package/dest/util.d.ts.map +1 -1
- package/dest/util.js +1 -0
- package/dest/versioning.d.ts +1 -1
- package/dest/versioning.d.ts.map +1 -1
- package/dest/versioning.js +1 -0
- package/package.json +16 -16
- package/src/bootstrap/bootstrap.ts +1 -2
- package/src/client/p2p_client.ts +1 -1
- package/src/config.ts +0 -11
- package/src/mem_pools/tx_pool_v2/README.md +2 -0
- package/src/mem_pools/tx_pool_v2/deleted_pool.ts +1 -0
- package/src/mem_pools/tx_pool_v2/eviction/eviction_manager.ts +28 -1
- package/src/mem_pools/tx_pool_v2/eviction/interfaces.ts +2 -2
- package/src/mem_pools/tx_pool_v2/eviction/low_priority_pre_add_rule.ts +11 -1
- package/src/mem_pools/tx_pool_v2/interfaces.ts +5 -0
- package/src/mem_pools/tx_pool_v2/tx_pool_v2_impl.ts +46 -11
- package/src/msg_validators/attestation_validator/README.md +4 -3
- package/src/msg_validators/attestation_validator/attestation_validator.ts +23 -11
- package/src/msg_validators/epoch_cache_lookup.ts +33 -15
- package/src/msg_validators/proposal_validator/README.md +5 -4
- package/src/msg_validators/proposal_validator/proposal_validator.ts +23 -14
- package/src/msg_validators/tx_validator/data_validator.ts +63 -18
- package/src/services/discv5/discV5_service.ts +2 -2
- package/src/services/dummy_service.ts +1 -0
- package/src/services/encoding.ts +1 -0
- package/src/services/libp2p/libp2p_service.ts +37 -8
- package/src/services/peer-manager/peer_manager.ts +5 -1
- package/src/services/peer-manager/peer_scoring.ts +43 -0
- package/src/services/reqresp/protocols/auth.ts +1 -0
- package/src/services/reqresp/protocols/block_txs/bitvector.ts +1 -0
- package/src/services/reqresp/protocols/block_txs/block_txs_handler.ts +17 -4
- package/src/services/reqresp/protocols/goodbye.ts +1 -0
- package/src/services/reqresp/protocols/ping.ts +2 -0
- package/src/services/reqresp/reqresp.ts +1 -0
- package/src/test-helpers/mock-pubsub.ts +1 -0
- package/src/test-helpers/reqresp-nodes.ts +1 -0
- package/src/test-helpers/testbench-utils.ts +6 -6
- package/src/testbench/p2p_client_testbench_worker.ts +1 -0
- package/src/testbench/worker_client_manager.ts +2 -1
- package/src/util.ts +1 -0
- package/src/versioning.ts +1 -0
|
@@ -12,6 +12,7 @@ import type { UInt64 } from '@aztec-labs/stdlib/types';
|
|
|
12
12
|
import { type TelemetryClient, WithTracer } from '@aztec-labs/telemetry-client';
|
|
13
13
|
import { type Message, type PeerId, TopicValidatorResult } from '@libp2p/interface';
|
|
14
14
|
import { ENR } from '@nethermindeth/enr';
|
|
15
|
+
import { Buffer } from 'buffer';
|
|
15
16
|
import type { P2PConfig } from '../../config.js';
|
|
16
17
|
import type { MemPools } from '../../mem_pools/interface.js';
|
|
17
18
|
import { type GossipMinFees, type GossipValidationFailure, type TransactionValidator } from '../../msg_validators/tx_validator/factory.js';
|
|
@@ -55,7 +56,10 @@ export declare class LibP2PService extends WithTracer implements P2PService {
|
|
|
55
56
|
private checkpointAttestationValidator;
|
|
56
57
|
private protocolVersion;
|
|
57
58
|
private topicStrings;
|
|
58
|
-
/**
|
|
59
|
+
/**
|
|
60
|
+
* Callback invoked when a second proposal is seen at one position, so the slot is marked as equivocated. It does not
|
|
61
|
+
* slash: the slasher attributes DUPLICATE_PROPOSAL per signer from the retained proposals.
|
|
62
|
+
*/
|
|
59
63
|
private duplicateProposalCallback?;
|
|
60
64
|
/** Callback invoked when an oversized block proposal is stored as slashing evidence (triggers slashing). */
|
|
61
65
|
private oversizedProposalCallback?;
|
|
@@ -257,4 +261,4 @@ export declare class LibP2PService extends WithTracer implements P2PService {
|
|
|
257
261
|
private stopLibP2P;
|
|
258
262
|
}
|
|
259
263
|
export {};
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicDJwX3NlcnZpY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9saWJwMnAvbGlicDJwX3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEtBQUssVUFBVSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFcEYsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUE2QyxNQUFNLDRCQUE0QixDQUFDO0FBR3BHLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTFFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLEtBQUssMEJBQTBCLEVBQXlCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxLQUFLLEVBQ1YsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixRQUFRLEVBQ1Isc0JBQXNCLEVBQ3ZCLE1BQU0sc0NBQXNDLENBQUM7QUFDOUMsT0FBTyxFQUNMLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLEtBQUssVUFBVSxFQUVmLGlCQUFpQixFQUVqQixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLCtCQUErQixFQUloQyxNQUFNLHdCQUF3QixDQUFDO0FBR2hDLE9BQU8sRUFBRSxFQUFFLEVBQTJCLE1BQU0sdUJBQXVCLENBQUM7QUFDcEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdkQsT0FBTyxFQUlMLEtBQUssZUFBZSxFQUNwQixVQUFVLEVBRVgsTUFBTSw4QkFBOEIsQ0FBQztBQWF0QyxPQUFPLEVBQUUsS0FBSyxPQUFP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
|
|
264
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicDJwX3NlcnZpY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9saWJwMnAvbGlicDJwX3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEtBQUssVUFBVSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFcEYsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUE2QyxNQUFNLDRCQUE0QixDQUFDO0FBR3BHLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTFFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLEtBQUssMEJBQTBCLEVBQXlCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxLQUFLLEVBQ1YsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixRQUFRLEVBQ1Isc0JBQXNCLEVBQ3ZCLE1BQU0sc0NBQXNDLENBQUM7QUFDOUMsT0FBTyxFQUNMLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLEtBQUssVUFBVSxFQUVmLGlCQUFpQixFQUVqQixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLCtCQUErQixFQUloQyxNQUFNLHdCQUF3QixDQUFDO0FBR2hDLE9BQU8sRUFBRSxFQUFFLEVBQXNELE1BQU0sdUJBQXVCLENBQUM7QUFDL0YsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdkQsT0FBTyxFQUlMLEtBQUssZUFBZSxFQUNwQixVQUFVLEVBRVgsTUFBTSw4QkFBOEIsQ0FBQztBQWF0QyxPQUFPLEVBQUUsS0FBSyxPQUFP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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libp2p_service.d.ts","sourceRoot":"","sources":["../../../src/services/libp2p/libp2p_service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAEpF,OAAO,EAAE,KAAK,MAAM,EAA6C,MAAM,4BAA4B,CAAC;AAGpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,KAAK,0BAA0B,EAAyB,MAAM,wBAAwB,CAAC;AAChG,OAAO,KAAK,EACV,6BAA6B,EAC7B,eAAe,EACf,QAAQ,EACR,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,KAAK,UAAU,EAEf,iBAAiB,EAEjB,SAAS,EACT,sBAAsB,EACtB,+BAA+B,EAIhC,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"libp2p_service.d.ts","sourceRoot":"","sources":["../../../src/services/libp2p/libp2p_service.ts"],"names":[],"mappings":"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"}
|
|
@@ -382,7 +382,7 @@ import { getNetworkTxGasLimits } from '@aztec-labs/stdlib/gas';
|
|
|
382
382
|
import { BlockProposal, CheckpointAttestation, CheckpointProposal, P2PMessage, PeerErrorSeverity, PeerErrorSeverityByHarshness, TopicType, ValidatedBlockProposal, ValidatedCheckpointProposalCore, createTopicString, getTopicsForConfig, metricsTopicStrToLabels } from '@aztec-labs/stdlib/p2p';
|
|
383
383
|
import { ConsensusTimetable, getDefaultCheckpointProposalSyncGrace } from '@aztec-labs/stdlib/timetable';
|
|
384
384
|
import { MerkleTreeId } from '@aztec-labs/stdlib/trees';
|
|
385
|
-
import { Tx } from '@aztec-labs/stdlib/tx';
|
|
385
|
+
import { Tx, isReceiverLocalStateDrift } from '@aztec-labs/stdlib/tx';
|
|
386
386
|
import { InvalidBlockProposalTxsError } from '@aztec-labs/stdlib/validators';
|
|
387
387
|
import { compressComponentVersions } from '@aztec-labs/stdlib/versioning';
|
|
388
388
|
import { Attributes, OtelMetricsAdapter, SpanStatusCode, WithTracer, trackSpan } from '@aztec-labs/telemetry-client';
|
|
@@ -397,6 +397,7 @@ import { TopicValidatorResult } from '@libp2p/interface';
|
|
|
397
397
|
import { tcp } from '@libp2p/tcp';
|
|
398
398
|
import { multiaddr } from '@multiformats/multiaddr';
|
|
399
399
|
import { ENR } from '@nethermindeth/enr';
|
|
400
|
+
import { Buffer } from 'buffer';
|
|
400
401
|
import { createLibp2p } from 'libp2p';
|
|
401
402
|
import { CheckpointProposalReceivedCallbackNotRegisteredError } from '../../errors/p2p-service.error.js';
|
|
402
403
|
import { BlockProposalValidator, CheckpointAttestationValidator, CheckpointProposalValidator, DoubleSpendTxValidator, FishermanAttestationValidator, getDefaultAllowedSetupFunctions } from '../../msg_validators/index.js';
|
|
@@ -510,7 +511,10 @@ _dec = trackSpan('Libp2pService.validateAndStoreCheckpointAttestation', (_peerId
|
|
|
510
511
|
checkpointAttestationValidator;
|
|
511
512
|
protocolVersion;
|
|
512
513
|
topicStrings;
|
|
513
|
-
/**
|
|
514
|
+
/**
|
|
515
|
+
* Callback invoked when a second proposal is seen at one position, so the slot is marked as equivocated. It does not
|
|
516
|
+
* slash: the slasher attributes DUPLICATE_PROPOSAL per signer from the retained proposals.
|
|
517
|
+
*/ duplicateProposalCallback;
|
|
514
518
|
/** Callback invoked when an oversized block proposal is stored as slashing evidence (triggers slashing). */ oversizedProposalCallback;
|
|
515
519
|
/** Callback invoked when a duplicate attestation is detected (triggers slashing). */ duplicateAttestationCallback;
|
|
516
520
|
/** Callback invoked when a valid checkpoint attestation is accepted into the pool. */ checkpointAttestationCallback;
|
|
@@ -953,14 +957,24 @@ _dec = trackSpan('Libp2pService.validateAndStoreCheckpointAttestation', (_peerId
|
|
|
953
957
|
* empty committee every signer is accepted, so two distinct honest proposers for the same slot look
|
|
954
958
|
* like equivocation; without an expected proposer there is no one to attribute the offense to.
|
|
955
959
|
* Mirrors the guard in checkpoint_equivocation_watcher, which refuses to slash when the slot has no
|
|
956
|
-
* proposer.
|
|
960
|
+
* proposer. While the slot's committee is not stable on L1 there is no expected proposer yet either.
|
|
957
961
|
*/ async canAttributeDuplicateProposal(slot) {
|
|
958
|
-
const expectedProposer = await this.epochCache.
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
+
const expectedProposer = await this.epochCache.lookupProposer(slot);
|
|
963
|
+
switch(expectedProposer.state){
|
|
964
|
+
case 'members':
|
|
965
|
+
return true;
|
|
966
|
+
case 'open':
|
|
967
|
+
case 'unstable':
|
|
968
|
+
this.logger.warn(`Not attributing duplicate proposal at slot ${slot}: no expected proposer (empty or not yet stable committee)`, {
|
|
969
|
+
slot,
|
|
970
|
+
committeeState: expectedProposer.state
|
|
971
|
+
});
|
|
972
|
+
return false;
|
|
973
|
+
case 'none':
|
|
974
|
+
// The proposal validator rejects a slot without a committee before duplicates are counted, so this needs the
|
|
975
|
+
// committee to vanish in between. Throwing makes the gossip validator reject the message, as it does for that.
|
|
976
|
+
throw new Error(`No committee on L1 for slot ${slot}`);
|
|
962
977
|
}
|
|
963
|
-
return true;
|
|
964
978
|
}
|
|
965
979
|
/**
|
|
966
980
|
* Registers a callback to be invoked when an oversized block proposal is stored as slashing evidence.
|
|
@@ -1339,9 +1353,24 @@ _dec = trackSpan('Libp2pService.validateAndStoreCheckpointAttestation', (_peerId
|
|
|
1339
1353
|
obj: tx
|
|
1340
1354
|
};
|
|
1341
1355
|
} else {
|
|
1356
|
+
// The final pool insert rebuilt a fresh validator and rejected a tx that passed the earlier
|
|
1357
|
+
// checks and proof. If the rejection is receiver-local state drift, the relayer forwarded a tx
|
|
1358
|
+
// valid from its own view - ignore without penalizing it; only a sender-attributable reject penalizes.
|
|
1359
|
+
const rejectionReasons = addResult.rejectionReasons?.get(txHash.toString()) ?? [];
|
|
1360
|
+
if (isReceiverLocalStateDrift(rejectionReasons)) {
|
|
1361
|
+
this.logger.verbose(`Ignoring gossiped tx ${txHash.toString()}: pool rejected on receiver-local state drift`, {
|
|
1362
|
+
source: source.toString(),
|
|
1363
|
+
reasons: rejectionReasons
|
|
1364
|
+
});
|
|
1365
|
+
return {
|
|
1366
|
+
result: TopicValidatorResult.Ignore,
|
|
1367
|
+
obj: tx
|
|
1368
|
+
};
|
|
1369
|
+
}
|
|
1342
1370
|
this.logger.warn(`Gossiped tx ${txHash.toString()} unexpectedly rejected by pool`, {
|
|
1343
1371
|
source: source.toString(),
|
|
1344
|
-
txHash: txHash.toString()
|
|
1372
|
+
txHash: txHash.toString(),
|
|
1373
|
+
reasons: rejectionReasons
|
|
1345
1374
|
});
|
|
1346
1375
|
return {
|
|
1347
1376
|
result: TopicValidatorResult.Reject,
|
|
@@ -208,4 +208,4 @@ export declare class PeerManager implements PeerManagerInterface {
|
|
|
208
208
|
handleAuthRequestFromPeer(_authRequest: AuthRequest, peerId: PeerId): Promise<StatusMessage>;
|
|
209
209
|
private updateAuthenticatedPeers;
|
|
210
210
|
}
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVlcl9tYW5hZ2VyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvcGVlci1tYW5hZ2VyL3BlZXJfbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSW5FLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBSXJFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFjLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBTTVELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRCxPQUFPLEVBQUUsV0FBVyxFQUFnQixNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQXVCLE1BQU0saUNBQWlDLENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFrQixLQUFLLFdBQVcsRUFBRSxNQUFNLG1C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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer_manager.d.ts","sourceRoot":"","sources":["../../../src/services/peer-manager/peer_manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"peer_manager.d.ts","sourceRoot":"","sources":["../../../src/services/peer-manager/peer_manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { compactArray } from '@aztec-labs/foundation/collection';
|
|
2
2
|
import { makeEthSignDigest, tryRecoverAddress } from '@aztec-labs/foundation/crypto/secp256k1-signer';
|
|
3
3
|
import { Fr } from '@aztec-labs/foundation/curves/bn254';
|
|
4
|
+
import { inspect } from '@aztec-labs/foundation/inspect';
|
|
4
5
|
import { createLogger } from '@aztec-labs/foundation/log';
|
|
5
6
|
import { bufferToHex } from '@aztec-labs/foundation/string';
|
|
6
7
|
import { DateProvider } from '@aztec-labs/foundation/timer';
|
|
7
8
|
import { peerIdFromString } from '@libp2p/peer-id';
|
|
8
9
|
import { ENR } from '@nethermindeth/enr';
|
|
9
|
-
import {
|
|
10
|
+
import { Buffer } from 'buffer';
|
|
10
11
|
import { PeerEvent } from '../../types/index.js';
|
|
11
12
|
import { ReqRespSubProtocol } from '../reqresp/interface.js';
|
|
12
13
|
import { AuthRequest, AuthResponse } from '../reqresp/protocols/auth.js';
|
|
@@ -343,6 +344,9 @@ export class PeerManager {
|
|
|
343
344
|
this.authenticatedValidatorAddressToPeerId.delete(validatorAddress.toString());
|
|
344
345
|
this.authenticatedPeerIdToValidatorAddress.delete(peerIdStr);
|
|
345
346
|
}
|
|
347
|
+
// Keep a disconnected non-healthy peer's score so a reconnect resumes its penalty rather than starting
|
|
348
|
+
// clean. The score and ban maps are bounded (PeerScoring retention caps), so retaining them cannot grow
|
|
349
|
+
// the heartbeat-scanned state without limit under identity churn. A healthy peer carries no penalty to keep.
|
|
346
350
|
if (this.peerScoring.getScoreState(peerIdStr) === PeerScoreState.Healthy) {
|
|
347
351
|
this.peerScoring.removePeer(peerIdStr);
|
|
348
352
|
}
|
|
@@ -47,6 +47,18 @@ export declare class PeerScoring {
|
|
|
47
47
|
/** Resets all peer scores. Useful for benchmarks to prevent cross-case contamination. */
|
|
48
48
|
resetAllScores(): void;
|
|
49
49
|
removePeer(peerId: string): void;
|
|
50
|
+
/**
|
|
51
|
+
* Bounds the score maps. When retention exceeds MAX_RETAINED_SCORED_PEERS, drops the least-recently-updated
|
|
52
|
+
* peer (front of iteration order) - its score has decayed longest and is closest to healthy - never the peer
|
|
53
|
+
* just updated. Keeps a reconnecting recent offender's penalty while capping churn-driven growth.
|
|
54
|
+
*/
|
|
55
|
+
private evictLeastRecentScoreIfOverCap;
|
|
56
|
+
/**
|
|
57
|
+
* Bounds the ban map. Bans share a fixed duration, so insertion order is expiry order; when over
|
|
58
|
+
* MAX_RETAINED_BANS the first entry is the earliest-expiring, so dropping it lifts the ban closest to
|
|
59
|
+
* expiring rather than letting identity churn grow the map without limit.
|
|
60
|
+
*/
|
|
61
|
+
private evictEarliestBanIfOverCap;
|
|
50
62
|
/**
|
|
51
63
|
* The single source of truth for whether a peer is banned. Returns the ban score while the ban is
|
|
52
64
|
* active, or undefined if the peer is not banned. A ban that has expired is lazily lifted before
|
|
@@ -62,4 +74,4 @@ export declare class PeerScoring {
|
|
|
62
74
|
bannedCount: number;
|
|
63
75
|
};
|
|
64
76
|
}
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVlcl9zY29yaW5nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvcGVlci1tYW5hZ2VyL3BlZXJfc2NvcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUdMLEtBQUssZUFBZSxFQUlyQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBdUJqRCxvQkFBWSxjQUFjO0lBQ3hCLE1BQU0sSUFBQTtJQUNOLFVBQVUsSUFBQTtJQUNWLE9BQU8sSUFBQTtDQUNSO0FBMEJELHFCQUFhLFdBQVc7SUFzQnBCLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWTtJQXJCL0IsT0FBTyxDQUFDLE1BQU0sQ0FBb0M7SUFDbEQsT0FBTyxDQUFDLE1BQU0sQ0FBa0M7SUFDaEQsT0FBTyxDQUFDLGNBQWMsQ0FBa0M7SUFDeEQsT0FBTyxDQUFDLGFBQWEsQ0FBYTtJQUNsQyxPQUFPLENBQUMsV0FBVyxDQUFPO0lBQzFCLGFBQWEsRUFBRTtTQUFHLEdBQUcsSUFBSSxpQkFBaUIsR0FBRyxNQUFNO0tBQUUsQ0FBQztJQUV0RCxPQUFPLENBQUMsZ0JBQWdCLENBQWdCO0lBRXhDLDBGQUEwRjtJQUMxRixPQUFPLENBQUMsV0FBVyxDQUFxQztJQUN4RDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQVM7SUFFdkMsWUFDRSxNQUFNLEVBQUUsU0FBUyxFQUNqQixTQUFTLEdBQUUsZUFBc0MsRUFDaEMsWUFBWSxHQUFFLFlBQWlDLEVBa0JqRTtJQUVNLFlBQVksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsVUFNN0Q7SUFFRCxXQUFXLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0F5QnREO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsWUFBWTtJQWNwQixjQUFjLElBQUksSUFBSSxDQWlCckI7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLElBQUksSUFBSSxDQU12QjtJQUVELHlGQUF5RjtJQUN6RixjQUFjLElBQUksSUFBSSxDQUlyQjtJQUVELFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FHL0I7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLDhCQUE4QjtJQVd0Qzs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLHlCQUF5QjtJQVVqQzs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLGlCQUFpQjtJQWF6QixRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxNQUFNLENBSS9CO0lBRU0sYUFBYSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsY0FBYyxDQVduRDtJQUVELFFBQVEsSUFBSTtRQUFFLFdBQVcsRUFBRSxNQUFNLENBQUM7UUFBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO1FBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQztRQUFDLFdBQVcsRUFBRSxNQUFNLENBQUE7S0FBRSxDQThCdEc7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer_scoring.d.ts","sourceRoot":"","sources":["../../../src/services/peer-manager/peer_scoring.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAGL,KAAK,eAAe,EAIrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAuBjD,oBAAY,cAAc;IACxB,MAAM,IAAA;IACN,UAAU,IAAA;IACV,OAAO,IAAA;CACR;
|
|
1
|
+
{"version":3,"file":"peer_scoring.d.ts","sourceRoot":"","sources":["../../../src/services/peer-manager/peer_scoring.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAGL,KAAK,eAAe,EAIrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAuBjD,oBAAY,cAAc;IACxB,MAAM,IAAA;IACN,UAAU,IAAA;IACV,OAAO,IAAA;CACR;AA0BD,qBAAa,WAAW;IAsBpB,OAAO,CAAC,QAAQ,CAAC,YAAY;IArB/B,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,WAAW,CAAO;IAC1B,aAAa,EAAE;SAAG,GAAG,IAAI,iBAAiB,GAAG,MAAM;KAAE,CAAC;IAEtD,OAAO,CAAC,gBAAgB,CAAgB;IAExC,0FAA0F;IAC1F,OAAO,CAAC,WAAW,CAAqC;IACxD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,YACE,MAAM,EAAE,SAAS,EACjB,SAAS,GAAE,eAAsC,EAChC,YAAY,GAAE,YAAiC,EAkBjE;IAEM,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,UAM7D;IAED,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAyBtD;IAED;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAcpB,cAAc,IAAI,IAAI,CAiBrB;IAED;;;;OAIG;IACH,gBAAgB,IAAI,IAAI,CAMvB;IAED,yFAAyF;IACzF,cAAc,IAAI,IAAI,CAIrB;IAED,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAG/B;IAED;;;;OAIG;IACH,OAAO,CAAC,8BAA8B;IAWtC;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;IAUjC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAazB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI/B;IAEM,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAWnD;IAED,QAAQ,IAAI;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CA8BtG;CACF"}
|
|
@@ -41,6 +41,11 @@ export var PeerScoreState = /*#__PURE__*/ function(PeerScoreState) {
|
|
|
41
41
|
const MIN_SCORE_BEFORE_BAN = -100;
|
|
42
42
|
const MIN_SCORE_BEFORE_DISCONNECT = -50;
|
|
43
43
|
const SCORE_CLEANUP_THRESHOLD = 0.1;
|
|
44
|
+
// Upper bounds on retained scoring state so a remote peer churning throwaway identities cannot grow the
|
|
45
|
+
// heartbeat-scanned maps without limit. Both sit far above any healthy non-connected count (maxPeerCount
|
|
46
|
+
// defaults to 100). Over the cap, the least-recently-updated score and the earliest-expiring ban are evicted.
|
|
47
|
+
const MAX_RETAINED_SCORED_PEERS = 4096;
|
|
48
|
+
const MAX_RETAINED_BANS = 4096;
|
|
44
49
|
export class PeerScoring {
|
|
45
50
|
dateProvider;
|
|
46
51
|
logger;
|
|
@@ -97,8 +102,13 @@ export class PeerScoring {
|
|
|
97
102
|
currentScore *= Math.pow(this.decayFactor, decayPeriods);
|
|
98
103
|
// Apply new score delta
|
|
99
104
|
currentScore += scoreDelta;
|
|
105
|
+
// Re-insert so the most recently updated peer moves to the end of iteration order; the first entry is
|
|
106
|
+
// then the least-recently-updated (most-decayed) peer, which is the one evicted when over the cap.
|
|
107
|
+
this.scores.delete(peerId);
|
|
108
|
+
this.lastUpdateTime.delete(peerId);
|
|
100
109
|
this.scores.set(peerId, currentScore);
|
|
101
110
|
this.lastUpdateTime.set(peerId, currentTime);
|
|
111
|
+
this.evictLeastRecentScoreIfOverCap(peerId);
|
|
102
112
|
this.maybeBanPeer(peerId, currentScore);
|
|
103
113
|
return currentScore;
|
|
104
114
|
}
|
|
@@ -116,6 +126,7 @@ export class PeerScoring {
|
|
|
116
126
|
expiry: this.dateProvider.now() + this.banDurationMs
|
|
117
127
|
};
|
|
118
128
|
this.bannedPeers.set(peerId, record);
|
|
129
|
+
this.evictEarliestBanIfOverCap(peerId);
|
|
119
130
|
this.logger.verbose(`Banning peer ${peerId} until ${new Date(record.expiry).toISOString()}`, {
|
|
120
131
|
peerId,
|
|
121
132
|
score,
|
|
@@ -163,6 +174,33 @@ export class PeerScoring {
|
|
|
163
174
|
this.lastUpdateTime.delete(peerId);
|
|
164
175
|
}
|
|
165
176
|
/**
|
|
177
|
+
* Bounds the score maps. When retention exceeds MAX_RETAINED_SCORED_PEERS, drops the least-recently-updated
|
|
178
|
+
* peer (front of iteration order) - its score has decayed longest and is closest to healthy - never the peer
|
|
179
|
+
* just updated. Keeps a reconnecting recent offender's penalty while capping churn-driven growth.
|
|
180
|
+
*/ evictLeastRecentScoreIfOverCap(keep) {
|
|
181
|
+
while(this.scores.size > MAX_RETAINED_SCORED_PEERS){
|
|
182
|
+
const oldest = this.scores.keys().next().value;
|
|
183
|
+
if (oldest === undefined || oldest === keep) {
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
this.scores.delete(oldest);
|
|
187
|
+
this.lastUpdateTime.delete(oldest);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Bounds the ban map. Bans share a fixed duration, so insertion order is expiry order; when over
|
|
192
|
+
* MAX_RETAINED_BANS the first entry is the earliest-expiring, so dropping it lifts the ban closest to
|
|
193
|
+
* expiring rather than letting identity churn grow the map without limit.
|
|
194
|
+
*/ evictEarliestBanIfOverCap(keep) {
|
|
195
|
+
while(this.bannedPeers.size > MAX_RETAINED_BANS){
|
|
196
|
+
const earliest = this.bannedPeers.keys().next().value;
|
|
197
|
+
if (earliest === undefined || earliest === keep) {
|
|
198
|
+
break;
|
|
199
|
+
}
|
|
200
|
+
this.bannedPeers.delete(earliest);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
166
204
|
* The single source of truth for whether a peer is banned. Returns the ban score while the ban is
|
|
167
205
|
* active, or undefined if the peer is not banned. A ban that has expired is lazily lifted before
|
|
168
206
|
* returning undefined, so callers never see a stale ban.
|
|
@@ -2,6 +2,7 @@ import { Buffer32 } from '@aztec-labs/foundation/buffer';
|
|
|
2
2
|
import { Fr } from '@aztec-labs/foundation/curves/bn254';
|
|
3
3
|
import { Signature } from '@aztec-labs/foundation/eth-signature';
|
|
4
4
|
import { BufferReader } from '@aztec-labs/foundation/serialize';
|
|
5
|
+
import { Buffer } from 'buffer';
|
|
5
6
|
import { StatusMessage } from './status.js';
|
|
6
7
|
export declare const VALIDATOR_AUTH_DOMAIN_SEPARATOR = "Aztec Validator Challenge:";
|
|
7
8
|
export declare const VALIDATOR_AUTH_FULL_CHALLENGE_ENCODED_LENGTH: number;
|
|
@@ -40,4 +41,4 @@ export declare class AuthResponse {
|
|
|
40
41
|
toBuffer(): Buffer<ArrayBufferLike>;
|
|
41
42
|
static random(): AuthResponse;
|
|
42
43
|
}
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcHJvdG9jb2xzL2F1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXpELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsZUFBTyxNQUFNLCtCQUErQiwrQkFBK0IsQ0FBQztBQUM1RSxlQUFPLE1BQU0sNENBQTRDLFFBQ2UsQ0FBQztBQU16RSxxQkFBYSxXQUFXO0lBRXBCLFFBQVEsQ0FBQyxNQUFNLEVBQUUsYUFBYTtJQUM5QixRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUU7SUFGeEIsWUFDVyxNQUFNLEVBQUUsYUFBYSxFQUNyQixTQUFTLEVBQUUsRUFBRSxFQUNwQjtJQUVKOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FNNUQ7SUFFRDs7O09BR0c7SUFDSCxRQUFRLDRCQUVQO0lBRUQsZ0JBQWdCLElBQUksUUFBUSxDQUczQjtJQUVELE1BQU0sQ0FBQyxNQUFNLElBQUksV0FBVyxDQUUzQjtDQUNGO0FBRUQscUJBQWEsWUFBWTtJQUVyQixRQUFRLENBQUMsTUFBTSxFQUFFLGFBQWE7SUFDOUIsUUFBUSxDQUFDLFNBQVMsRUFBRSxTQUFTO0lBRi9CLFlBQ1csTUFBTSxFQUFFLGFBQWEsRUFDckIsU0FBUyxFQUFFLFNBQVMsRUFDM0I7SUFDSjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxZQUFZLENBTTdEO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSw0QkFFUDtJQUVELE1BQU0sQ0FBQyxNQUFNLElBQUksWUFBWSxDQUU1QjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAqB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAqB,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAC5E,eAAO,MAAM,4CAA4C,QACe,CAAC;AAMzE,qBAAa,WAAW;IAEpB,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,SAAS,EAAE,EAAE;IAFxB,YACW,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,EAAE,EACpB;IAEJ;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAM5D;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED,gBAAgB,IAAI,QAAQ,CAG3B;IAED,MAAM,CAAC,MAAM,IAAI,WAAW,CAE3B;CACF;AAED,qBAAa,YAAY;IAErB,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAF/B,YACW,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,SAAS,EAC3B;IACJ;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,YAAY,CAM7D;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED,MAAM,CAAC,MAAM,IAAI,YAAY,CAE5B;CACF"}
|
|
@@ -3,6 +3,7 @@ import { keccak256 } from '@aztec-labs/foundation/crypto/keccak';
|
|
|
3
3
|
import { Fr } from '@aztec-labs/foundation/curves/bn254';
|
|
4
4
|
import { Signature } from '@aztec-labs/foundation/eth-signature';
|
|
5
5
|
import { BufferReader, serializeToBuffer } from '@aztec-labs/foundation/serialize';
|
|
6
|
+
import { Buffer } from 'buffer';
|
|
6
7
|
import { StatusMessage } from './status.js';
|
|
7
8
|
export const VALIDATOR_AUTH_DOMAIN_SEPARATOR = 'Aztec Validator Challenge:';
|
|
8
9
|
export const VALIDATOR_AUTH_FULL_CHALLENGE_ENCODED_LENGTH = VALIDATOR_AUTH_DOMAIN_SEPARATOR.length + Fr.random().toString().length;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BufferReader } from '@aztec-labs/foundation/serialize';
|
|
2
|
+
import { Buffer } from 'buffer';
|
|
2
3
|
/**
|
|
3
4
|
* BitVector helper class for representing and serializing bit vectors
|
|
4
5
|
*/
|
|
@@ -32,4 +33,4 @@ export declare class BitVector {
|
|
|
32
33
|
static fromBuffer(buffer: Buffer | BufferReader): BitVector;
|
|
33
34
|
static byteLength(length: number): number;
|
|
34
35
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0dmVjdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxcmVzcC9wcm90b2NvbHMvYmxvY2tfdHhzL2JpdHZlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLGtDQUFrQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFJaEM7O0dBRUc7QUFDSCxxQkFBYSxTQUFTO0lBQ3BCLE9BQU8sQ0FBQyxNQUFNLENBQVM7SUFDdkIsT0FBTyxDQUFDLE1BQU0sQ0FBUztJQUV2QixZQUFZLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFHekM7SUFTRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FtQnhEO0lBRUQsU0FBUyxJQUFJLE1BQU0sQ0FFbEI7SUFTRCxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBRTVCO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxJQUFJLE1BQU0sRUFBRSxDQUV6QjtJQUVEOztTQUVLO0lBQ0wsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRDs7OztTQUlLO0lBQ0wsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRDs7OztTQUlLO0lBQ0wsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxTQUFTLENBYTFEO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxVQUUvQjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitvector.d.ts","sourceRoot":"","sources":["../../../../../src/services/reqresp/protocols/block_txs/bitvector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"bitvector.d.ts","sourceRoot":"","sources":["../../../../../src/services/reqresp/protocols/block_txs/bitvector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IAEvB,YAAY,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAGzC;IASD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAmBxD;IAED,SAAS,IAAI,MAAM,CAElB;IASD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE5B;IAED;;;OAGG;IACH,cAAc,IAAI,MAAM,EAAE,CAEzB;IAED;;SAEK;IACL,OAAO,IAAI,OAAO,CAEjB;IAED;;;;SAIK;IACL,QAAQ,IAAI,MAAM,CAEjB;IAED;;;;SAIK;IACL,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAa1D;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,UAE/B;CACF"}
|
|
@@ -10,4 +10,4 @@ import type { ReqRespSubProtocolHandler } from '../../interface.js';
|
|
|
10
10
|
* @returns the BlockTxs request handler
|
|
11
11
|
*/
|
|
12
12
|
export declare function reqRespBlockTxsHandler(attestationPool: AttestationPoolApi, archiver: L2BlockSource, txPool: TxPoolV2): ReqRespSubProtocolHandler;
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfdHhzX2hhbmRsZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9yZXFyZXNwL3Byb3RvY29scy9ibG9ja190eHMvYmxvY2tfdHhzX2hhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFJOUQsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUNyRyxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMvRSxPQUFPLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3BFOzs7Ozs7R0FNRztBQUNILHdCQUFnQixzQkFBc0IsQ0FDcEMsZUFBZSxFQUFFLGtCQUFrQixFQUNuQyxRQUFRLEVBQUUsYUFBYSxFQUN2QixNQUFNLEVBQUUsUUFBUSxHQUNmLHlCQUF5QixDQTRFM0IifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block_txs_handler.d.ts","sourceRoot":"","sources":["../../../../../src/services/reqresp/protocols/block_txs/block_txs_handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AACrG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAKpE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,kBAAkB,EACnC,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,QAAQ,GACf,yBAAyB,
|
|
1
|
+
{"version":3,"file":"block_txs_handler.d.ts","sourceRoot":"","sources":["../../../../../src/services/reqresp/protocols/block_txs/block_txs_handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AACrG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAKpE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,kBAAkB,EACnC,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,QAAQ,GACf,yBAAyB,CA4E3B"}
|
|
@@ -23,10 +23,12 @@ import { BlockTxsRequest, BlockTxsResponse, MAX_BLOCK_TXS_PER_REQUEST } from './
|
|
|
23
23
|
cause: err
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
|
-
//
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
|
|
26
|
+
// Cheap early bound before any attestation-pool / archiver / tx-pool work: reject when the
|
|
27
|
+
// explicit-hash list, or the number of requested indices, already exceeds the per-request cap on
|
|
28
|
+
// its own. The index bitvector has no duplicate positions, so its set-bit count is a lower bound
|
|
29
|
+
// on the served set; the explicit-hash list is bounded as it was before. The deduplicated
|
|
30
|
+
// served-set cap below stays the authoritative gate for the dual-form (index + explicit) overlap.
|
|
31
|
+
if (request.txHashes.length > MAX_BLOCK_TXS_PER_REQUEST || request.txIndices.getTrueIndices().length > MAX_BLOCK_TXS_PER_REQUEST) {
|
|
30
32
|
throw new ReqRespStatusError(ReqRespStatus.BADLY_FORMED_REQUEST);
|
|
31
33
|
}
|
|
32
34
|
// In principle assume we haven't found the block. This is how that is signaled to the requester.
|
|
@@ -58,6 +60,13 @@ import { BlockTxsRequest, BlockTxsResponse, MAX_BLOCK_TXS_PER_REQUEST } from './
|
|
|
58
60
|
blockTxHashes.filter((_, idx)=>requestedIndices.has(idx)).forEach((h)=>requestedTxsHashes.add(h.toString()));
|
|
59
61
|
}
|
|
60
62
|
}
|
|
63
|
+
// One response is capped at MAX_BLOCK_TXS_PER_REQUEST transactions. Both request forms feed one
|
|
64
|
+
// deduplicated set - the dumb-peer requester sends the same txs by index and by explicit hash -
|
|
65
|
+
// so cap the deduplicated served count, not the raw sum, before fetching and serializing. This
|
|
66
|
+
// bounds the work one peer can drive while still accepting a legitimate dual-form batch.
|
|
67
|
+
if (requestedTxsHashes.size > MAX_BLOCK_TXS_PER_REQUEST) {
|
|
68
|
+
throw new ReqRespStatusError(ReqRespStatus.BADLY_FORMED_REQUEST);
|
|
69
|
+
}
|
|
61
70
|
// Finally, get the txs from the pool and create the response.
|
|
62
71
|
const responseTxs = (await txPool.getTxsByHash(Array.from(requestedTxsHashes).map((h)=>TxHash.fromString(h)))).filter((tx)=>!!tx);
|
|
63
72
|
const response = new BlockTxsResponse(new TxArray(...responseTxs), availableIndicesBitVector);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PeerId } from '@libp2p/interface';
|
|
2
|
+
import { Buffer } from 'buffer';
|
|
2
3
|
import type { PeerManagerInterface } from '../../peer-manager/interface.js';
|
|
3
4
|
import { type ReqRespSubProtocolHandler } from '../interface.js';
|
|
4
5
|
import type { ReqResp } from '../reqresp.js';
|
|
@@ -46,4 +47,4 @@ export declare class GoodbyeProtocolHandler {
|
|
|
46
47
|
* @returns A resolved promise with the goodbye response.
|
|
47
48
|
*/
|
|
48
49
|
export declare function reqGoodbyeHandler(peerManager: PeerManagerInterface): ReqRespSubProtocolHandler;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZGJ5ZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcHJvdG9jb2xzL2dvb2RieWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVoQyxPQUFPLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVFLE9BQU8sRUFBc0IsS0FBSyx5QkFBeUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JGLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3Qzs7R0FFRztBQUNILG9CQUFZLGFBQWE7SUFDdkIsMEZBQTBGO0lBQzFGLFFBQVEsSUFBTTtJQUNkLHNJQUFzSTtJQUN0SSxTQUFTLElBQU07SUFDZixnRkFBZ0Y7SUFDaEYsU0FBUyxJQUFNO0lBQ2YsMkVBQTJFO0lBQzNFLE1BQU0sSUFBTTtJQUNaLDJCQUEyQjtJQUMzQixhQUFhLElBQU07SUFDbkIscUJBQXFCO0lBQ3JCLE9BQU8sSUFBTTtDQUNkO0FBRUQsd0JBQWdCLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxhQUFhLEdBQUcsTUFBTSxDQUVqRTtBQUVELHdCQUFnQixtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FTakU7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxhQUFhLEdBQUcsTUFBTSxDQWdCakU7QUFFRDs7R0FFRztBQUNILHFCQUFhLHNCQUFzQjtJQUdyQixPQUFPLENBQUMsT0FBTztJQUYzQixPQUFPLENBQUMsTUFBTSxDQUF3QztJQUV0RCxZQUFvQixPQUFPLEVBQUUsT0FBTyxFQUFJO0lBRTNCLFdBQVcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxhQUFhLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQU83RTtDQUNGO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQUMsV0FBVyxFQUFFLG9CQUFvQixHQUFHLHlCQUF5QixDQVc5RiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goodbye.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/goodbye.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"goodbye.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/goodbye.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAsB,KAAK,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,oBAAY,aAAa;IACvB,0FAA0F;IAC1F,QAAQ,IAAM;IACd,sIAAsI;IACtI,SAAS,IAAM;IACf,gFAAgF;IAChF,SAAS,IAAM;IACf,2EAA2E;IAC3E,MAAM,IAAM;IACZ,2BAA2B;IAC3B,aAAa,IAAM;IACnB,qBAAqB;IACrB,OAAO,IAAM;CACd;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CASjE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAgBjE;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,MAAM,CAAwC;IAEtD,YAAoB,OAAO,EAAE,OAAO,EAAI;IAE3B,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAO7E;CACF;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,yBAAyB,CAW9F"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { Buffer } from 'buffer';
|
|
1
2
|
/**
|
|
2
3
|
* Handles the ping request.
|
|
3
4
|
* @param _msg - The ping request message.
|
|
4
5
|
* @returns A resolved promise with the pong response.
|
|
5
6
|
*/
|
|
6
7
|
export declare function pingHandler(_msg: any): Promise<Buffer>;
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcHJvdG9jb2xzL3BpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVoQzs7OztHQUlHO0FBQ0gsd0JBQWdCLFdBQVcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FFdEQifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/ping.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtD"}
|
|
1
|
+
{"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../../../src/services/reqresp/protocols/ping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtD"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type TelemetryClient } from '@aztec-labs/telemetry-client';
|
|
2
2
|
import type { PeerId } from '@libp2p/interface';
|
|
3
|
+
import { Buffer } from 'buffer';
|
|
3
4
|
import type { Libp2p } from 'libp2p';
|
|
4
5
|
import type { PeerScoring } from '../peer-manager/peer_scoring.js';
|
|
5
6
|
import { type P2PReqRespConfig } from './config.js';
|
|
@@ -104,4 +105,4 @@ export declare class ReqResp implements ReqRespInterface {
|
|
|
104
105
|
private categorizeResponseError;
|
|
105
106
|
private categorizeConnectionErrors;
|
|
106
107
|
}
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxcmVzcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3JlcXJlc3AvcmVxcmVzcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQWMsS0FBSyxlQUFlLEVBQWlDLE1BQU0sOEJBQThCLENBQUM7QUFDL0csT0FBTyxLQUFLLEVBQXNCLE1BQU0sRUFBVSxNQUFNLG1CQUFtQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBV3JDLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFJTCxLQUFLLGdCQUFnQixFQUN0QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sNENBQTRDLENBQUM7QUFDOUYsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssZUFBZSxFQUNwQixrQkFBa0IsRUFDbEIsS0FBSyx5QkFBeUIsRUFDOUIsS0FBSywwQkFBMEIsRUFDL0IsS0FBSyw0QkFBNEIsRUFDakMsS0FBSyxnQkFBZ0IsRUFHdEIsTUFBTSxnQkFBZ0IsQ0FBQztBQVN4Qjs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gscUJBQWEsT0FBUSxZQUFXLGdCQUFnQjtJQWlCNUMsT0FBTyxDQUFDLE1BQU07SUFDZCxPQUFPLENBQUMsV0FBVztJQUNuQixPQUFPLENBQUMsTUFBTTtJQWxCaEIsT0FBTyxDQUFDLDBCQUEwQixDQUFpRDtJQUNuRixPQUFPLENBQUMsYUFBYSxDQUEyQztJQUVoRSxPQUFPLENBQUMsbUJBQW1CLENBQTJDO0lBRXRFLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBb0I7SUFDN0MsT0FBTyxDQUFDLFdBQVcsQ0FBNkI7SUFFaEQsT0FBTyxDQUFDLGVBQWUsQ0FBa0I7SUFFekMsT0FBTyxDQUFDLGdCQUFnQixDQUErQjtJQUV2RCxPQUFPLENBQUMsT0FBTyxDQUFpQjtJQUVoQyxZQUNFLE1BQU0sRUFBRSxnQkFBZ0IsRUFDaEIsTUFBTSxFQUFFLE1BQU0sRUFDZCxXQUFXLEVBQUUsV0FBVyxFQUN4QixNQUFNLDhDQUE4QixFQUM1QyxVQUFVLEdBQUUsT0FBTyxDQUFDLDRCQUE0QixDQUFNLEVBQ3RELGVBQWUsR0FBRSxlQUFzQyxFQWdCeEQ7SUFFTSxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FRM0Q7SUFFTSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEdBQUcsSUFBSSxDQUUxRDtJQUVELElBQUksTUFBTSxrREFFVDtJQUVEOztPQUVHO0lBQ0gsb0JBQW9CLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLHVDQUF1QyxDQUFDLENBRXZGO0lBRUQ7O09BRUc7SUFDRyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsMEJBQTBCLGlCQWdCMUQ7SUFFSyxjQUFjLENBQUMsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSx5QkFBeUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBVXZHO0lBRUQ7O09BRUc7SUFDRyxJQUFJLGtCQWtCVDtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F3Qkc7SUFLVSxpQkFBaUIsQ0FDNUIsTUFBTSxFQUFFLE1BQU0sRUFDZCxXQUFXLEVBQUUsa0JBQWtCLEVBQy9CLE9BQU8sRUFBRSxNQUFNLEVBQ2YsV0FBVyxHQUFFLE1BQTJCLEdBQ3ZDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FnRTFCO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsT0FBTyxDQUFDLG1CQUFtQjtZQXlCYixXQUFXO1lBc0VYLGFBQWE7WUEwRWIsYUFBYTtZQW1EYixZQUFZO0lBbUMxQixPQUFPLENBQUMsa0JBQWtCO0lBTzFCOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsc0JBQXNCO0lBaUI5Qjs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLHVCQUF1QjtJQXlDL0IsT0FBTyxDQUFDLDBCQUEwQjtDQThEbkMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reqresp.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/reqresp.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,KAAK,eAAe,EAAiC,MAAM,8BAA8B,CAAC;AAC/G,OAAO,KAAK,EAAsB,MAAM,EAAU,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAWrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAiB,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EAGtB,MAAM,gBAAgB,CAAC;AASxB;;;;;;;;;;;;;GAaG;AACH,qBAAa,OAAQ,YAAW,gBAAgB;IAiB5C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAlBhB,OAAO,CAAC,0BAA0B,CAAiD;IACnF,OAAO,CAAC,aAAa,CAA2C;IAEhE,OAAO,CAAC,mBAAmB,CAA2C;IAEtE,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,WAAW,CAA6B;IAEhD,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,gBAAgB,CAA+B;IAEvD,OAAO,CAAC,OAAO,CAAiB;IAEhC,YACE,MAAM,EAAE,gBAAgB,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,MAAM,8CAA8B,EAC5C,UAAU,GAAE,OAAO,CAAC,4BAA4B,CAAM,EACtD,eAAe,GAAE,eAAsC,EAgBxD;IAEM,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAQ3D;IAEM,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAE1D;IAED,IAAI,MAAM,kDAET;IAED;;OAEG;IACH,oBAAoB,IAAI,IAAI,CAAC,iBAAiB,EAAE,uCAAuC,CAAC,CAEvF;IAED;;OAEG;IACG,KAAK,CAAC,mBAAmB,EAAE,0BAA0B,iBAgB1D;IAEK,cAAc,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAUvG;IAED;;OAEG;IACG,IAAI,kBAkBT;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IAKU,iBAAiB,CAC5B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,kBAAkB,EAC/B,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,MAA2B,GACvC,OAAO,CAAC,eAAe,CAAC,CAgE1B;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB;YAyBb,WAAW;YAsEX,aAAa;YA0Eb,aAAa;YAmDb,YAAY;IAmC1B,OAAO,CAAC,kBAAkB;IAO1B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAyC/B,OAAO,CAAC,0BAA0B;CA8DnC"}
|
|
1
|
+
{"version":3,"file":"reqresp.d.ts","sourceRoot":"","sources":["../../../src/services/reqresp/reqresp.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,KAAK,eAAe,EAAiC,MAAM,8BAA8B,CAAC;AAC/G,OAAO,KAAK,EAAsB,MAAM,EAAU,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAWrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAiB,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EAGtB,MAAM,gBAAgB,CAAC;AASxB;;;;;;;;;;;;;GAaG;AACH,qBAAa,OAAQ,YAAW,gBAAgB;IAiB5C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAlBhB,OAAO,CAAC,0BAA0B,CAAiD;IACnF,OAAO,CAAC,aAAa,CAA2C;IAEhE,OAAO,CAAC,mBAAmB,CAA2C;IAEtE,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,WAAW,CAA6B;IAEhD,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,gBAAgB,CAA+B;IAEvD,OAAO,CAAC,OAAO,CAAiB;IAEhC,YACE,MAAM,EAAE,gBAAgB,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,MAAM,8CAA8B,EAC5C,UAAU,GAAE,OAAO,CAAC,4BAA4B,CAAM,EACtD,eAAe,GAAE,eAAsC,EAgBxD;IAEM,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAQ3D;IAEM,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAE1D;IAED,IAAI,MAAM,kDAET;IAED;;OAEG;IACH,oBAAoB,IAAI,IAAI,CAAC,iBAAiB,EAAE,uCAAuC,CAAC,CAEvF;IAED;;OAEG;IACG,KAAK,CAAC,mBAAmB,EAAE,0BAA0B,iBAgB1D;IAEK,cAAc,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAUvG;IAED;;OAEG;IACG,IAAI,kBAkBT;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IAKU,iBAAiB,CAC5B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,kBAAkB,EAC/B,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,MAA2B,GACvC,OAAO,CAAC,eAAe,CAAC,CAgE1B;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB;YAyBb,WAAW;YAsEX,aAAa;YA0Eb,aAAa;YAmDb,YAAY;IAmC1B,OAAO,CAAC,kBAAkB;IAO1B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAyC/B,OAAO,CAAC,0BAA0B;CA8DnC"}
|