Parent Log: http://ci.aztec-labs.com/aaadd3aef9ab971c Command: 4ef547fa5e299294:ISOLATE=1:NAME=p2p/src/client/p2p_client.integration.test.ts LOG_LEVEL=debug yarn-project/scripts/run_test.sh p2p/src/client/p2p_client.integration.test.ts Commit: https://github.com/AztecProtocol/aztec-packages/commit/d4893155ff105399557b55c16450c39921c70d11 Env: REF_NAME=gh-readonly-queue/next/pr-15218-7edf16da6c056f9499e2dfd9c71fb9b7580f9bfc CURRENT_VERSION=0.87.6 CI_FULL=1 Date: Tue Jun 24 10:27:22 UTC 2025 System: ARCH=amd64 CPUS=128 MEM=493Gi HOSTNAME=pr-15218_amd64_x1-full Resources: CPU_LIST=0-127 CPUS=2 MEM=8g TIMEOUT=600s History: http://ci.aztec-labs.com/list/history_efa11ee7aa0bfe9b_next 10:27:22 +++ id -u 10:27:22 +++ id -g 10:27:22 ++ docker run -d --name p2p_src_client_p2p_client.integration.test.ts --net=none --cpuset-cpus=0-127 --cpus=2 --memory=8g --user 1000:1000 -v/home/aztec-dev:/home/aztec-dev --mount type=tmpfs,target=/tmp,tmpfs-size=1g --workdir /home/aztec-dev/aztec-packages -e HOME -e VERBOSE -e GIT_CONFIG_GLOBAL=/home/aztec-dev/aztec-packages/build-images/src/home/.gitconfig -e FORCE_COLOR=true -e CPUS -e MEM aztecprotocol/build:3.0 /bin/bash -c 'timeout -v 600s bash -c '\''LOG_LEVEL=debug yarn-project/scripts/run_test.sh p2p/src/client/p2p_client.integration.test.ts'\''' 10:27:22 + cid=557173df42284c0f46d2a8b91e875faafcec0238cb59a83cc2ed74cf3c6464f1 10:27:22 + set +x 10:27:23 {"level":25,"time":1750760843986,"pid":7,"hostname":"557173df4228","module":"logger","msg":"Logger initialized with level debug"} 10:27:33 [10:27:33.918] INFO: p2p:test:integration Starting test p2p client integration returns undefined if unable to find a transaction from another peer 10:27:34 [10:27:34.069] DEBUG: foundation:randomness_singleton Using true randomness 10:27:34 {"level":20,"time":1750760854153,"pid":7,"hostname":"557173df4228","name":"bb.js","name":"bb_wasm_sync","msg":"Fetching bb wasm from default location"} 10:27:34 {"level":20,"time":1750760854373,"pid":7,"hostname":"557173df4228","name":"bb.js","name":"bb_wasm_sync","msg":"Compiling bb wasm of 12113510 bytes"} 10:27:44 [10:27:44.755] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:27:44 [10:27:44.760] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-Vuu02P with size: 10485760 KB (LMDB v2) 10:27:44 [10:27:44.762] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:27:44 [10:27:44.770] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-O62J3c with size: 10485760 KB (LMDB v2) 10:27:44 [10:27:44.770] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:27:44 [10:27:44.772] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-x6zPDw with size: 10485760 KB (LMDB v2) 10:27:44 [10:27:44.773] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:27:44 [10:27:44.775] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:27:44 [10:27:44.777] INFO: p2p:test:integration Tearing down state for p2p client integration returns undefined if unable to find a transaction from another peer 10:27:44 [10:27:44.777] INFO: p2p:test:integration Shut down p2p clients 10:27:44 [10:27:44.806] INFO: p2p:test:integration Starting test p2p client integration can request a transaction from another peer 10:27:45 {"level":20,"time":1750760854459,"pid":7,"hostname":"557173df4228","name":"bb.js","name":"bb_wasm_sync","msg":"Compilation of bb wasm complete"} 10:27:45 {"level":20,"time":1750760854460,"pid":7,"hostname":"557173df4228","name":"bb.js","name":"bb_wasm_sync","msg":"Initializing bb wasm: initial memory 32 pages 2MiB; max memory: 65536 pages, 4096MiB; threads: 1; shared memory: true"} 10:27:54 [10:27:54.277] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:27:54 [10:27:54.281] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-wypiL5 with size: 10485760 KB (LMDB v2) 10:27:54 [10:27:54.282] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:27:54 [10:27:54.284] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-LWggxL with size: 10485760 KB (LMDB v2) 10:27:54 [10:27:54.285] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:27:54 [10:27:54.287] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-OXVMUX with size: 10485760 KB (LMDB v2) 10:27:54 [10:27:54.287] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:27:54 [10:27:54.289] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:27:54 [10:27:54.290] INFO: p2p:test:integration Tearing down state for p2p client integration can request a transaction from another peer 10:27:54 [10:27:54.291] INFO: p2p:test:integration Shut down p2p clients 10:27:54 [10:27:54.294] INFO: p2p:test:integration Starting test p2p client integration will penalize peers that send invalid proofs 10:28:03 [10:28:03.806] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:03 [10:28:03.809] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-A78oGv with size: 10485760 KB (LMDB v2) 10:28:03 [10:28:03.809] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:03 [10:28:03.818] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-75wxTH with size: 10485760 KB (LMDB v2) 10:28:03 [10:28:03.819] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:03 [10:28:03.823] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-Y2SPkk with size: 10485760 KB (LMDB v2) 10:28:03 [10:28:03.823] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:03 [10:28:03.825] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:03 [10:28:03.827] INFO: p2p:test:integration Tearing down state for p2p client integration will penalize peers that send invalid proofs 10:28:03 [10:28:03.827] INFO: p2p:test:integration Shut down p2p clients 10:28:03 [10:28:03.830] INFO: p2p:test:integration Starting test p2p client integration will penalize peers that send the wrong transaction 10:28:13 [10:28:13.743] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:13 [10:28:13.746] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-4TWpZf with size: 10485760 KB (LMDB v2) 10:28:13 [10:28:13.747] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:13 [10:28:13.750] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-cUsIXs with size: 10485760 KB (LMDB v2) 10:28:13 [10:28:13.750] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:13 [10:28:13.752] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-5kLGk9 with size: 10485760 KB (LMDB v2) 10:28:13 [10:28:13.753] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:13 [10:28:13.754] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:13 [10:28:13.755] INFO: p2p:test:integration Tearing down state for p2p client integration will penalize peers that send the wrong transaction 10:28:13 [10:28:13.756] INFO: p2p:test:integration Shut down p2p clients 10:28:13 [10:28:13.758] INFO: p2p:test:integration Starting test p2p client integration will propagate messages to peers at the same version 10:28:23 [10:28:23.936] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:23 [10:28:23.951] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-ZH9PH2 with size: 10485760 KB (LMDB v2) 10:28:23 [10:28:23.953] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:23 [10:28:23.955] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-cI2nJR with size: 10485760 KB (LMDB v2) 10:28:23 [10:28:23.956] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:23 [10:28:23.960] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-uNAODR with size: 10485760 KB (LMDB v2) 10:28:23 [10:28:23.960] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:23 [10:28:23.963] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:23 [10:28:23.965] INFO: p2p:test:integration Tearing down state for p2p client integration will propagate messages to peers at the same version 10:28:23 [10:28:23.965] INFO: p2p:test:integration Shut down p2p clients 10:28:23 [10:28:23.968] INFO: p2p:test:integration Starting test p2p client integration should not disconnect clients when it returns correct status 10:28:33 [10:28:33.909] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:33 [10:28:33.912] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-cRUJJ9 with size: 10485760 KB (LMDB v2) 10:28:33 [10:28:33.912] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:33 [10:28:33.925] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-o9sTog with size: 10485760 KB (LMDB v2) 10:28:33 [10:28:33.926] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:33 [10:28:33.930] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-U2byX7 with size: 10485760 KB (LMDB v2) 10:28:33 [10:28:33.930] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:33 [10:28:33.932] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:33 [10:28:33.933] INFO: p2p:test:integration Tearing down state for p2p client integration should not disconnect clients when it returns correct status 10:28:33 [10:28:33.933] INFO: p2p:test:integration Shut down p2p clients 10:28:33 [10:28:33.936] INFO: p2p:test:integration Starting test p2p client integration should disconnect client when it returns status with wrong version 10:28:43 [10:28:43.702] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:43 [10:28:43.704] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-QemB0P with size: 10485760 KB (LMDB v2) 10:28:43 [10:28:43.705] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:43 [10:28:43.710] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-MWWVps with size: 10485760 KB (LMDB v2) 10:28:43 [10:28:43.710] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:43 [10:28:43.712] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-r7sUB7 with size: 10485760 KB (LMDB v2) 10:28:43 [10:28:43.713] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:43 [10:28:43.716] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:43 [10:28:43.717] INFO: p2p:test:integration Tearing down state for p2p client integration should disconnect client when it returns status with wrong version 10:28:43 [10:28:43.718] INFO: p2p:test:integration Shut down p2p clients 10:28:43 [10:28:43.720] INFO: p2p:test:integration Starting test p2p client integration should disconnect client when it returns an invalid status 10:28:53 [10:28:53.809] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:28:53 [10:28:53.812] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-kqIXdF with size: 10485760 KB (LMDB v2) 10:28:53 [10:28:53.812] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:28:53 [10:28:53.814] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-BNxv7q with size: 10485760 KB (LMDB v2) 10:28:53 [10:28:53.814] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:28:53 [10:28:53.816] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-qDQvMU with size: 10485760 KB (LMDB v2) 10:28:53 [10:28:53.816] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:28:53 [10:28:53.818] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:28:53 [10:28:53.819] INFO: p2p:test:integration Tearing down state for p2p client integration should disconnect client when it returns an invalid status 10:28:53 [10:28:53.819] INFO: p2p:test:integration Shut down p2p clients 10:28:53 [10:28:53.821] INFO: p2p:test:integration Starting test p2p client integration propagates messages using mocked gossip sub network 10:29:04 [10:29:04.761] VERBOSE: archiver:mock_l2_block_source Created 100 blocks in the mock L2 block source 10:29:04 [10:29:04.764] DEBUG: kv-store:lmdb-v2:test Created temporary data store at: /tmp/test-UrttSy with size: 10485760 KB (LMDB v2) 10:29:04 [10:29:04.765] INFO: kv-store:lmdb-v2:test Starting data store with maxReaders 16 10:29:04 [10:29:04.769] DEBUG: p2p-archive:lmdb-v2 Created temporary data store at: /tmp/p2p-archive-7EbHYx with size: 10485760 KB (LMDB v2) 10:29:04 [10:29:04.769] INFO: p2p-archive:lmdb-v2 Starting data store with maxReaders 16 10:29:04 [10:29:04.771] DEBUG: p2p-peer:lmdb-v2 Created temporary data store at: /tmp/p2p-peers-TnjXVf with size: 10485760 KB (LMDB v2) 10:29:04 [10:29:04.771] INFO: p2p-peer:lmdb-v2 Starting data store with maxReaders 16 10:29:04 [10:29:04.773] VERBOSE: p2p:0 P2P is enabled. Using LibP2P service. 10:29:04 [10:29:04.774] INFO: p2p:test:integration Tearing down state for p2p client integration propagates messages using mocked gossip sub network 10:29:04 [10:29:04.775] INFO: p2p:test:integration Shut down p2p clients 10:29:04 FAIL src/client/p2p_client.integration.test.ts (101.09 s) 10:29:04 p2p client integration 10:29:04 returns undefined if unable to find a transaction from another peer (10869 ms) 10:29:04 can request a transaction from another peer (9487 ms) 10:29:04 will penalize peers that send invalid proofs (9534 ms) 10:29:04 will penalize peers that send the wrong transaction (9927 ms) 10:29:04 will propagate messages to peers at the same version (10209 ms) 10:29:04 should not disconnect clients when it returns correct status (9966 ms) 10:29:04 should disconnect client when it returns status with wrong version (9783 ms) 10:29:04 should disconnect client when it returns an invalid status (10100 ms) 10:29:04 propagates messages using mocked gossip sub network (10954 ms) 10:29:04 10:29:04 p2p client integration › returns undefined if unable to find a transaction from another peer 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:225:9) 10:29:04 10:29:04 p2p client integration › can request a transaction from another peer 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:256:9) 10:29:04 10:29:04 p2p client integration › will penalize peers that send invalid proofs 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:292:9) 10:29:04 10:29:04 p2p client integration › will penalize peers that send the wrong transaction 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:335:9) 10:29:04 10:29:04 p2p client integration › will propagate messages to peers at the same version 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:395:32) 10:29:04 10:29:04 p2p client integration › should not disconnect clients when it returns correct status 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeTestP2PClients (test-helpers/make-test-p2p-clients.ts:189:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:538:9) 10:29:04 10:29:04 p2p client integration › should disconnect client when it returns status with wrong version 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeTestP2PClients (test-helpers/make-test-p2p-clients.ts:189:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:573:9) 10:29:04 10:29:04 p2p client integration › should disconnect client when it returns an invalid status 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeTestP2PClients (test-helpers/make-test-p2p-clients.ts:189:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:609:9) 10:29:04 10:29:04 p2p client integration › propagates messages using mocked gossip sub network 10:29:04 10:29:04 TypeError: config.peerIdPrivateKey.getValue is not a function 10:29:04 10:29:04 135 | 10:29:04 136 | // If the peerIdPrivateKey is provided in the config, we use it and persist it in either a file or the node's store 10:29:04 > 137 | if (config.peerIdPrivateKey && config.peerIdPrivateKey.getValue().trim()) { 10:29:04 | ^ 10:29:04 138 | if (peerIdPrivateKeyFilePath) { 10:29:04 139 | await writePrivateKeyToFile(peerIdPrivateKeyFilePath, config.peerIdPrivateKey.getValue()); 10:29:04 140 | } else { 10:29:04 10:29:04 at getValue (util.ts:137:58) 10:29:04 at getPeerIdPrivateKey (client/factory.ts:75:34) 10:29:04 at makeTestP2PClient (test-helpers/make-test-p2p-clients.ts:98:18) 10:29:04 at makeAndStartTestP2PClient (test-helpers/make-test-p2p-clients.ts:47:18) 10:29:04 at makeAndStartTestP2PClients (test-helpers/make-test-p2p-clients.ts:142:20) 10:29:04 at Object.<anonymous> (client/p2p_client.integration.test.ts:679:32) 10:29:04 10:29:04 Test Suites: 1 failed, 1 total 10:29:04 Tests: 9 failed, 9 total 10:29:04 Snapshots: 0 total 10:29:04 Time: 101.196 s 10:29:04 Ran all test suites matching p2p/src/client/p2p_client.integration.test.ts. 10:29:04 Force exiting Jest: Have you considered using `--detectOpenHandles` to detect async operations that kept running after all tests finished?