@aztec/end-to-end 3.0.0-rc.5 → 4.0.0-nightly.20260107
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/bench/client_flows/data_extractor.js +3 -1
- package/dest/bench/utils.d.ts +2 -2
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +10 -6
- package/dest/e2e_epochs/epochs_test.d.ts +2 -1
- package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
- package/dest/e2e_epochs/epochs_test.js +8 -5
- package/dest/e2e_fees/fees_test.d.ts +3 -1
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +4 -2
- package/dest/e2e_p2p/p2p_network.js +1 -1
- package/dest/e2e_p2p/shared.d.ts +1 -1
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +4 -4
- package/dest/fixtures/e2e_prover_test.d.ts +1 -3
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +6 -9
- package/dest/fixtures/fixtures.d.ts +2 -3
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +1 -2
- package/dest/fixtures/snapshot_manager.d.ts +1 -3
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +5 -32
- package/dest/fixtures/utils.d.ts +7 -4
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +16 -24
- package/dest/spartan/utils.d.ts +37 -6
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +137 -27
- package/package.json +38 -38
- package/src/bench/client_flows/data_extractor.ts +1 -1
- package/src/bench/utils.ts +11 -7
- package/src/e2e_epochs/epochs_test.ts +20 -7
- package/src/e2e_fees/fees_test.ts +5 -4
- package/src/e2e_p2p/p2p_network.ts +1 -1
- package/src/e2e_p2p/shared.ts +6 -5
- package/src/fixtures/e2e_prover_test.ts +4 -7
- package/src/fixtures/fixtures.ts +1 -3
- package/src/fixtures/snapshot_manager.ts +7 -41
- package/src/fixtures/utils.ts +15 -28
- package/src/spartan/utils.ts +192 -18
|
@@ -11,8 +11,7 @@ import {
|
|
|
11
11
|
TestCircuitVerifier,
|
|
12
12
|
} from '@aztec/bb-prover';
|
|
13
13
|
import { BackendType, Barretenberg } from '@aztec/bb.js';
|
|
14
|
-
import {
|
|
15
|
-
import type { BlobSinkServer } from '@aztec/blob-sink/server';
|
|
14
|
+
import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
|
|
16
15
|
import type { DeployAztecL1ContractsReturnType } from '@aztec/ethereum/deploy-aztec-l1-contracts';
|
|
17
16
|
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
18
17
|
import { SecretValue } from '@aztec/foundation/config';
|
|
@@ -69,7 +68,6 @@ export class FullProverTest {
|
|
|
69
68
|
aztecNode!: AztecNode;
|
|
70
69
|
aztecNodeAdmin!: AztecNodeAdmin;
|
|
71
70
|
cheatCodes!: CheatCodes;
|
|
72
|
-
blobSink!: BlobSinkServer;
|
|
73
71
|
private provenComponents: ProvenSetup[] = [];
|
|
74
72
|
private bbConfigCleanup?: () => Promise<void>;
|
|
75
73
|
private acvmConfigCleanup?: () => Promise<void>;
|
|
@@ -169,11 +167,11 @@ export class FullProverTest {
|
|
|
169
167
|
aztecNode: this.aztecNode,
|
|
170
168
|
deployL1ContractsValues: this.l1Contracts,
|
|
171
169
|
cheatCodes: this.cheatCodes,
|
|
172
|
-
blobSink: this.blobSink,
|
|
173
170
|
} = this.context);
|
|
174
171
|
this.aztecNodeAdmin = this.context.aztecNode;
|
|
175
172
|
|
|
176
|
-
const
|
|
173
|
+
const config = this.context.aztecNodeConfig;
|
|
174
|
+
const blobClient = await createBlobClientWithFileStores(config, this.logger);
|
|
177
175
|
|
|
178
176
|
// Configure a full prover PXE
|
|
179
177
|
let acvmConfig: Awaited<ReturnType<typeof getACVMConfig>> | undefined;
|
|
@@ -243,7 +241,7 @@ export class FullProverTest {
|
|
|
243
241
|
this.logger.verbose('Starting archiver for new prover node');
|
|
244
242
|
const archiver = await createArchiver(
|
|
245
243
|
{ ...this.context.aztecNodeConfig, dataDirectory: undefined },
|
|
246
|
-
{
|
|
244
|
+
{ blobClient, dateProvider: this.context.dateProvider },
|
|
247
245
|
{ blockUntilSync: true },
|
|
248
246
|
);
|
|
249
247
|
|
|
@@ -283,7 +281,6 @@ export class FullProverTest {
|
|
|
283
281
|
{
|
|
284
282
|
aztecNodeTxProvider: this.aztecNode,
|
|
285
283
|
archiver: archiver as Archiver,
|
|
286
|
-
blobSinkClient,
|
|
287
284
|
},
|
|
288
285
|
{ prefilledPublicData },
|
|
289
286
|
);
|
package/src/fixtures/fixtures.ts
CHANGED
|
@@ -8,7 +8,7 @@ export const shouldCollectMetrics = () => {
|
|
|
8
8
|
};
|
|
9
9
|
|
|
10
10
|
export const TEST_PEER_CHECK_INTERVAL_MS = 1000;
|
|
11
|
-
export const
|
|
11
|
+
export const TEST_MAX_PENDING_TX_POOL_COUNT = 10_000; // Number of max pending TXs ~ 1.56GB
|
|
12
12
|
|
|
13
13
|
export const MNEMONIC = 'test test test test test test test test test test test junk';
|
|
14
14
|
export const privateKey = Buffer.from('ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80', 'hex');
|
|
@@ -24,5 +24,3 @@ export const NO_L1_TO_L2_MSG_ERROR =
|
|
|
24
24
|
/No non-nullified L1 to L2 message found for message hash|Tried to consume nonexistent L1-to-L2 message/;
|
|
25
25
|
export const STATIC_CALL_STATE_MODIFICATION_ERROR = /Static call cannot update the state.*/;
|
|
26
26
|
export const STATIC_CONTEXT_ASSERTION_ERROR = /Assertion failed: Function .* can only be called statically.*/;
|
|
27
|
-
|
|
28
|
-
export const DEFAULT_BLOB_SINK_PORT = '5052';
|
|
@@ -9,7 +9,6 @@ import type { Logger } from '@aztec/aztec.js/log';
|
|
|
9
9
|
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
10
10
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
11
11
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
12
|
-
import { type BlobSinkServer, createBlobSinkServer } from '@aztec/blob-sink/server';
|
|
13
12
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
14
13
|
import { getL1ContractsConfigEnvVars } from '@aztec/ethereum/config';
|
|
15
14
|
import { deployMulticall3 } from '@aztec/ethereum/contracts';
|
|
@@ -40,14 +39,13 @@ import type { Anvil } from '@viem/anvil';
|
|
|
40
39
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
|
|
41
40
|
import { copySync, removeSync } from 'fs-extra/esm';
|
|
42
41
|
import fs from 'fs/promises';
|
|
43
|
-
import getPort from 'get-port';
|
|
44
42
|
import { tmpdir } from 'os';
|
|
45
43
|
import path, { join } from 'path';
|
|
46
44
|
import type { Hex } from 'viem';
|
|
47
45
|
import { mnemonicToAccount } from 'viem/accounts';
|
|
48
46
|
import { foundry } from 'viem/chains';
|
|
49
47
|
|
|
50
|
-
import { MNEMONIC,
|
|
48
|
+
import { MNEMONIC, TEST_MAX_PENDING_TX_POOL_COUNT, TEST_PEER_CHECK_INTERVAL_MS } from './fixtures.js';
|
|
51
49
|
import { getACVMConfig } from './get_acvm_config.js';
|
|
52
50
|
import { getBBConfig } from './get_bb_config.js';
|
|
53
51
|
import {
|
|
@@ -56,6 +54,7 @@ import {
|
|
|
56
54
|
getLogger,
|
|
57
55
|
getPrivateKeyFromIndex,
|
|
58
56
|
getSponsoredFPCAddress,
|
|
57
|
+
setupSharedBlobStorage,
|
|
59
58
|
} from './utils.js';
|
|
60
59
|
import { getEndToEndTestTelemetryClient } from './with_telemetry_utils.js';
|
|
61
60
|
|
|
@@ -72,7 +71,6 @@ export type SubsystemsContext = {
|
|
|
72
71
|
cheatCodes: CheatCodes;
|
|
73
72
|
sequencer: SequencerClient;
|
|
74
73
|
dateProvider: TestDateProvider;
|
|
75
|
-
blobSink: BlobSinkServer;
|
|
76
74
|
initialFundedAccounts: InitialAccountData[];
|
|
77
75
|
directoryToCleanup?: string;
|
|
78
76
|
};
|
|
@@ -275,7 +273,6 @@ async function teardown(context: SubsystemsContext | undefined) {
|
|
|
275
273
|
await context.bbConfig?.cleanup();
|
|
276
274
|
await tryStop(context.anvil);
|
|
277
275
|
await tryStop(context.watcher);
|
|
278
|
-
await tryStop(context.blobSink);
|
|
279
276
|
await tryRmDir(context.directoryToCleanup, logger);
|
|
280
277
|
} catch (err) {
|
|
281
278
|
logger.error('Error during teardown', err);
|
|
@@ -297,8 +294,6 @@ async function setupFromFresh(
|
|
|
297
294
|
): Promise<SubsystemsContext> {
|
|
298
295
|
logger.verbose(`Initializing state...`);
|
|
299
296
|
|
|
300
|
-
const blobSinkPort = await getPort();
|
|
301
|
-
|
|
302
297
|
// Default to no slashing
|
|
303
298
|
opts.slasherFlavor ??= 'none';
|
|
304
299
|
deployL1ContractsArgs.slasherFlavor ??= opts.slasherFlavor;
|
|
@@ -307,7 +302,7 @@ async function setupFromFresh(
|
|
|
307
302
|
// TODO: For some reason this is currently the union of a bunch of subsystems. That needs fixing.
|
|
308
303
|
const aztecNodeConfig: AztecNodeConfig & SetupOptions = { ...getConfigEnvVars(), ...opts };
|
|
309
304
|
aztecNodeConfig.peerCheckIntervalMS = TEST_PEER_CHECK_INTERVAL_MS;
|
|
310
|
-
aztecNodeConfig.
|
|
305
|
+
aztecNodeConfig.maxPendingTxCount = opts.maxPendingTxCount ?? TEST_MAX_PENDING_TX_POOL_COUNT;
|
|
311
306
|
// Only enable proving if specifically requested.
|
|
312
307
|
aztecNodeConfig.realProofs = !!opts.realProofs;
|
|
313
308
|
// Only enforce the time table if requested
|
|
@@ -326,7 +321,8 @@ async function setupFromFresh(
|
|
|
326
321
|
} else {
|
|
327
322
|
aztecNodeConfig.dataDirectory = statePath;
|
|
328
323
|
}
|
|
329
|
-
|
|
324
|
+
|
|
325
|
+
await setupSharedBlobStorage(aztecNodeConfig);
|
|
330
326
|
|
|
331
327
|
const hdAccount = mnemonicToAccount(MNEMONIC, { addressIndex: 0 });
|
|
332
328
|
const publisherPrivKeyRaw = hdAccount.getHdKey().privateKey;
|
|
@@ -413,20 +409,6 @@ async function setupFromFresh(
|
|
|
413
409
|
|
|
414
410
|
const telemetry = await getEndToEndTestTelemetryClient(opts.metricsPort);
|
|
415
411
|
|
|
416
|
-
// Setup blob sink service
|
|
417
|
-
const blobSink = await createBlobSinkServer(
|
|
418
|
-
{
|
|
419
|
-
l1ChainId: aztecNodeConfig.l1ChainId,
|
|
420
|
-
l1RpcUrls: aztecNodeConfig.l1RpcUrls,
|
|
421
|
-
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
422
|
-
port: blobSinkPort,
|
|
423
|
-
dataDirectory: aztecNodeConfig.dataDirectory,
|
|
424
|
-
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb,
|
|
425
|
-
},
|
|
426
|
-
telemetry,
|
|
427
|
-
);
|
|
428
|
-
await blobSink.start();
|
|
429
|
-
|
|
430
412
|
logger.info('Creating and synching an aztec node...');
|
|
431
413
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
432
414
|
aztecNodeConfig,
|
|
@@ -476,7 +458,6 @@ async function setupFromFresh(
|
|
|
476
458
|
watcher,
|
|
477
459
|
cheatCodes,
|
|
478
460
|
dateProvider,
|
|
479
|
-
blobSink,
|
|
480
461
|
initialFundedAccounts,
|
|
481
462
|
directoryToCleanup,
|
|
482
463
|
};
|
|
@@ -491,18 +472,16 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
|
|
|
491
472
|
const directoryToCleanup = path.join(tmpdir(), randomBytes(8).toString('hex'));
|
|
492
473
|
await fs.mkdir(directoryToCleanup, { recursive: true });
|
|
493
474
|
|
|
494
|
-
// Run the blob sink on a random port
|
|
495
|
-
const blobSinkPort = await getPort();
|
|
496
|
-
|
|
497
475
|
// TODO: For some reason this is currently the union of a bunch of subsystems. That needs fixing.
|
|
498
476
|
const aztecNodeConfig: AztecNodeConfig & SetupOptions = JSON.parse(
|
|
499
477
|
readFileSync(`${statePath}/aztec_node_config.json`, 'utf-8'),
|
|
500
478
|
reviver,
|
|
501
479
|
);
|
|
502
480
|
aztecNodeConfig.dataDirectory = statePath;
|
|
503
|
-
aztecNodeConfig.blobSinkUrl = `http://127.0.0.1:${blobSinkPort}`;
|
|
504
481
|
aztecNodeConfig.listenAddress = '127.0.0.1';
|
|
505
482
|
|
|
483
|
+
await setupSharedBlobStorage(aztecNodeConfig);
|
|
484
|
+
|
|
506
485
|
const initialFundedAccounts: InitialAccountData[] =
|
|
507
486
|
JSON.parse(readFileSync(`${statePath}/accounts.json`, 'utf-8'), reviver) || [];
|
|
508
487
|
const { prefilledPublicData } = await getGenesisValues(initialFundedAccounts.map(a => a.address));
|
|
@@ -542,18 +521,6 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
|
|
|
542
521
|
await watcher.start();
|
|
543
522
|
|
|
544
523
|
const telemetry = await initTelemetryClient(getTelemetryConfig());
|
|
545
|
-
const blobSink = await createBlobSinkServer(
|
|
546
|
-
{
|
|
547
|
-
l1ChainId: aztecNodeConfig.l1ChainId,
|
|
548
|
-
l1RpcUrls: aztecNodeConfig.l1RpcUrls,
|
|
549
|
-
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
550
|
-
port: blobSinkPort,
|
|
551
|
-
dataDirectory: statePath,
|
|
552
|
-
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb,
|
|
553
|
-
},
|
|
554
|
-
telemetry,
|
|
555
|
-
);
|
|
556
|
-
await blobSink.start();
|
|
557
524
|
|
|
558
525
|
logger.verbose('Creating aztec node...');
|
|
559
526
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
@@ -603,7 +570,6 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
|
|
|
603
570
|
watcher,
|
|
604
571
|
cheatCodes,
|
|
605
572
|
dateProvider,
|
|
606
|
-
blobSink,
|
|
607
573
|
initialFundedAccounts,
|
|
608
574
|
directoryToCleanup,
|
|
609
575
|
};
|
package/src/fixtures/utils.ts
CHANGED
|
@@ -10,8 +10,7 @@ import { type Logger, createLogger } from '@aztec/aztec.js/log';
|
|
|
10
10
|
import { type AztecNode, createAztecNodeClient, waitForNode } from '@aztec/aztec.js/node';
|
|
11
11
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
12
12
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
13
|
-
import {
|
|
14
|
-
import { type BlobSinkServer, createBlobSinkServer } from '@aztec/blob-sink/server';
|
|
13
|
+
import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
|
|
15
14
|
import { SPONSORED_FPC_SALT } from '@aztec/constants';
|
|
16
15
|
import { isAnvilTestChain } from '@aztec/ethereum/chain';
|
|
17
16
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
@@ -70,7 +69,6 @@ import { getGenesisValues } from '@aztec/world-state/testing';
|
|
|
70
69
|
import type { Anvil } from '@viem/anvil';
|
|
71
70
|
import { randomBytes } from 'crypto';
|
|
72
71
|
import fs from 'fs/promises';
|
|
73
|
-
import getPort from 'get-port';
|
|
74
72
|
import { tmpdir } from 'os';
|
|
75
73
|
import * as path from 'path';
|
|
76
74
|
import type { Hex } from 'viem';
|
|
@@ -91,6 +89,16 @@ import { isMetricsLoggingRequested, setupMetricsLogger } from './logging.js';
|
|
|
91
89
|
export { deployAndInitializeTokenAndBridgeContracts } from '../shared/cross_chain_test_harness.js';
|
|
92
90
|
export { startAnvil };
|
|
93
91
|
|
|
92
|
+
/**
|
|
93
|
+
* Sets up shared blob storage using FileStore in the data directory.
|
|
94
|
+
*/
|
|
95
|
+
export async function setupSharedBlobStorage(config: { dataDirectory?: string } & Record<string, any>): Promise<void> {
|
|
96
|
+
const sharedBlobPath = path.join(config.dataDirectory!, 'shared-blobs');
|
|
97
|
+
await fs.mkdir(sharedBlobPath, { recursive: true });
|
|
98
|
+
config.blobFileStoreUrls = [`file://${sharedBlobPath}`];
|
|
99
|
+
config.blobFileStoreUploadUrl = `file://${sharedBlobPath}`;
|
|
100
|
+
}
|
|
101
|
+
|
|
94
102
|
const { AZTEC_NODE_URL = '' } = process.env;
|
|
95
103
|
const getAztecUrl = () => AZTEC_NODE_URL;
|
|
96
104
|
|
|
@@ -232,7 +240,6 @@ async function setupWithRemoteEnvironment(
|
|
|
232
240
|
mockGossipSubNetwork: undefined,
|
|
233
241
|
watcher: undefined,
|
|
234
242
|
dateProvider: undefined,
|
|
235
|
-
blobSink: undefined,
|
|
236
243
|
telemetryClient: undefined,
|
|
237
244
|
teardown,
|
|
238
245
|
};
|
|
@@ -312,8 +319,6 @@ export type EndToEndContext = {
|
|
|
312
319
|
watcher: AnvilTestWatcher | undefined;
|
|
313
320
|
/** Allows tweaking current system time, used by the epoch cache only (undefined if connected to remote environment) */
|
|
314
321
|
dateProvider: TestDateProvider | undefined;
|
|
315
|
-
/** The blob sink (undefined if connected to remote environment) */
|
|
316
|
-
blobSink: BlobSinkServer | undefined;
|
|
317
322
|
/** Telemetry client */
|
|
318
323
|
telemetryClient: TelemetryClient | undefined;
|
|
319
324
|
/** Mock gossip sub network used for gossipping messages (only if mockGossipSubNetwork was set to true in opts) */
|
|
@@ -489,21 +494,7 @@ export async function setup(
|
|
|
489
494
|
|
|
490
495
|
const telemetry = await getTelemetryClient(opts.telemetryConfig);
|
|
491
496
|
|
|
492
|
-
|
|
493
|
-
const blobSinkPort = await getPort();
|
|
494
|
-
const blobSink = await createBlobSinkServer(
|
|
495
|
-
{
|
|
496
|
-
l1ChainId: config.l1ChainId,
|
|
497
|
-
l1RpcUrls: config.l1RpcUrls,
|
|
498
|
-
l1Contracts: config.l1Contracts,
|
|
499
|
-
port: blobSinkPort,
|
|
500
|
-
dataDirectory: config.dataDirectory,
|
|
501
|
-
dataStoreMapSizeKb: config.dataStoreMapSizeKb,
|
|
502
|
-
},
|
|
503
|
-
telemetry,
|
|
504
|
-
);
|
|
505
|
-
await blobSink.start();
|
|
506
|
-
config.blobSinkUrl = `http://localhost:${blobSinkPort}`;
|
|
497
|
+
await setupSharedBlobStorage(config);
|
|
507
498
|
|
|
508
499
|
logger.verbose('Creating and synching an aztec node', config);
|
|
509
500
|
|
|
@@ -519,8 +510,6 @@ export async function setup(
|
|
|
519
510
|
config.bbWorkingDirectory = bbConfig.bbWorkingDirectory;
|
|
520
511
|
}
|
|
521
512
|
|
|
522
|
-
const blobSinkClient = createBlobSinkClient(config, { logger: createLogger('node:blob-sink:client') });
|
|
523
|
-
|
|
524
513
|
let mockGossipSubNetwork: MockGossipSubNetwork | undefined;
|
|
525
514
|
let p2pClientDeps: P2PClientDeps<P2PClientType.Full> | undefined = undefined;
|
|
526
515
|
|
|
@@ -559,7 +548,7 @@ export async function setup(
|
|
|
559
548
|
|
|
560
549
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
561
550
|
config, // REFACTOR: createAndSync mutates this config
|
|
562
|
-
{ dateProvider,
|
|
551
|
+
{ dateProvider, telemetry, p2pClientDeps, logger: createLogger('node:MAIN-aztec-node') },
|
|
563
552
|
{ prefilledPublicData },
|
|
564
553
|
);
|
|
565
554
|
const sequencerClient = aztecNode.getSequencer();
|
|
@@ -647,7 +636,6 @@ export async function setup(
|
|
|
647
636
|
await tryStop(watcher, logger);
|
|
648
637
|
await tryStop(anvil, logger);
|
|
649
638
|
|
|
650
|
-
await tryStop(blobSink, logger);
|
|
651
639
|
await tryRmDir(directoryToCleanup, logger);
|
|
652
640
|
} catch (err) {
|
|
653
641
|
logger.error(`Error during e2e test teardown`, err);
|
|
@@ -657,7 +645,6 @@ export async function setup(
|
|
|
657
645
|
return {
|
|
658
646
|
aztecNode,
|
|
659
647
|
aztecNodeAdmin: aztecNode,
|
|
660
|
-
blobSink,
|
|
661
648
|
cheatCodes,
|
|
662
649
|
ethCheatCodes,
|
|
663
650
|
config,
|
|
@@ -852,13 +839,13 @@ export function createAndSyncProverNode(
|
|
|
852
839
|
stop: () => Promise.resolve(),
|
|
853
840
|
};
|
|
854
841
|
|
|
855
|
-
const
|
|
842
|
+
const blobClient = await createBlobClientWithFileStores(aztecNodeConfig, createLogger('blob-client:prover-node'));
|
|
856
843
|
|
|
857
844
|
// Creating temp store and archiver for simulated prover node
|
|
858
845
|
const archiverConfig = { ...aztecNodeConfig, dataDirectory: proverNodeConfig.dataDirectory };
|
|
859
846
|
const archiver = await createArchiver(
|
|
860
847
|
archiverConfig,
|
|
861
|
-
{
|
|
848
|
+
{ blobClient, dateProvider: proverNodeDeps.dateProvider },
|
|
862
849
|
{ blockUntilSync: true },
|
|
863
850
|
);
|
|
864
851
|
|