@aztec/prover-node 0.0.1-commit.b655e406 → 0.0.1-commit.b9865e97

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.
Files changed (58) hide show
  1. package/dest/actions/download-epoch-proving-job.d.ts +4 -4
  2. package/dest/actions/download-epoch-proving-job.js +1 -1
  3. package/dest/actions/index.d.ts +1 -1
  4. package/dest/actions/rerun-epoch-proving-job.d.ts +5 -3
  5. package/dest/actions/rerun-epoch-proving-job.d.ts.map +1 -1
  6. package/dest/actions/rerun-epoch-proving-job.js +105 -25
  7. package/dest/actions/upload-epoch-proof-failure.d.ts +2 -2
  8. package/dest/actions/upload-epoch-proof-failure.d.ts.map +1 -1
  9. package/dest/bin/run-failed-epoch.d.ts +1 -1
  10. package/dest/bin/run-failed-epoch.js +6 -5
  11. package/dest/config.d.ts +8 -10
  12. package/dest/config.d.ts.map +1 -1
  13. package/dest/config.js +19 -21
  14. package/dest/factory.d.ts +20 -16
  15. package/dest/factory.d.ts.map +1 -1
  16. package/dest/factory.js +48 -63
  17. package/dest/index.d.ts +2 -1
  18. package/dest/index.d.ts.map +1 -1
  19. package/dest/index.js +1 -0
  20. package/dest/job/epoch-proving-job-data.d.ts +8 -6
  21. package/dest/job/epoch-proving-job-data.d.ts.map +1 -1
  22. package/dest/job/epoch-proving-job-data.js +25 -18
  23. package/dest/job/epoch-proving-job.d.ts +11 -13
  24. package/dest/job/epoch-proving-job.d.ts.map +1 -1
  25. package/dest/job/epoch-proving-job.js +669 -111
  26. package/dest/metrics.d.ts +24 -3
  27. package/dest/metrics.d.ts.map +1 -1
  28. package/dest/metrics.js +77 -98
  29. package/dest/monitors/epoch-monitor.d.ts +3 -2
  30. package/dest/monitors/epoch-monitor.d.ts.map +1 -1
  31. package/dest/monitors/epoch-monitor.js +14 -20
  32. package/dest/monitors/index.d.ts +1 -1
  33. package/dest/prover-node-publisher.d.ts +33 -11
  34. package/dest/prover-node-publisher.d.ts.map +1 -1
  35. package/dest/prover-node-publisher.js +248 -46
  36. package/dest/prover-node.d.ts +30 -19
  37. package/dest/prover-node.d.ts.map +1 -1
  38. package/dest/prover-node.js +512 -81
  39. package/dest/prover-publisher-factory.d.ts +10 -6
  40. package/dest/prover-publisher-factory.d.ts.map +1 -1
  41. package/dest/prover-publisher-factory.js +7 -5
  42. package/dest/test/index.d.ts +1 -1
  43. package/dest/test/index.d.ts.map +1 -1
  44. package/package.json +27 -25
  45. package/src/actions/download-epoch-proving-job.ts +1 -1
  46. package/src/actions/rerun-epoch-proving-job.ts +20 -7
  47. package/src/actions/upload-epoch-proof-failure.ts +1 -1
  48. package/src/bin/run-failed-epoch.ts +5 -3
  49. package/src/config.ts +27 -33
  50. package/src/factory.ts +81 -103
  51. package/src/index.ts +1 -0
  52. package/src/job/epoch-proving-job-data.ts +31 -25
  53. package/src/job/epoch-proving-job.ts +228 -117
  54. package/src/metrics.ts +102 -82
  55. package/src/monitors/epoch-monitor.ts +10 -17
  56. package/src/prover-node-publisher.ts +302 -66
  57. package/src/prover-node.ts +135 -86
  58. package/src/prover-publisher-factory.ts +19 -11
@@ -8,11 +8,11 @@ export declare function downloadEpochProvingJob(location: string, log: Logger, c
8
8
  dataDirectory: string;
9
9
  jobDataDownloadPath: string;
10
10
  }): Promise<{
11
- rollupVersion: number;
12
11
  l2BlockNumber: number;
13
12
  l2BlockHash: string;
14
- rollupAddress: import("@aztec/foundation/schemas").EthAddress;
15
- l1ChainId: number;
16
13
  l1BlockNumber: number;
14
+ l1ChainId: number;
15
+ rollupVersion: number;
16
+ rollupAddress: import("@aztec/foundation/eth-address").EthAddress;
17
17
  }>;
18
- //# sourceMappingURL=download-epoch-proving-job.d.ts.map
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQtZXBvY2gtcHJvdmluZy1qb2IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL2Rvd25sb2FkLWVwb2NoLXByb3Zpbmctam9iLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBVXBEOzs7O0dBSUc7QUFDSCx3QkFBc0IsdUJBQXVCLENBQzNDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLEdBQUcsRUFBRSxNQUFNLEVBQ1gsTUFBTSxFQUFFO0lBQ04sYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixtQkFBbUIsRUFBRSxNQUFNLENBQUM7Q0FDN0I7Ozs7Ozs7R0FxQkYifQ==
@@ -25,7 +25,7 @@ import { deserializeEpochProvingJobData } from '../job/epoch-proving-job-data.js
25
25
  }, log, {
26
26
  ...config,
27
27
  ...metadata,
28
- snapshotsUrl: location
28
+ fileStore
29
29
  });
30
30
  const dataPath = urlJoin(location, 'data.bin');
31
31
  const localPath = config.jobDataDownloadPath;
@@ -1,3 +1,3 @@
1
1
  export * from './download-epoch-proving-job.js';
2
2
  export * from './rerun-epoch-proving-job.js';
3
- //# sourceMappingURL=index.d.ts.map
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw4QkFBOEIsQ0FBQyJ9
@@ -1,11 +1,13 @@
1
+ import type { L1ContractsConfig } from '@aztec/ethereum/config';
1
2
  import type { Logger } from '@aztec/foundation/log';
2
- import type { DataStoreConfig } from '@aztec/kv-store/config';
3
3
  import { type ProverClientConfig } from '@aztec/prover-client';
4
4
  import { ProverBrokerConfig } from '@aztec/prover-client/broker';
5
+ import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
6
+ import type { GenesisData } from '@aztec/stdlib/world-state';
5
7
  /**
6
8
  * Given a local folder where `downloadEpochProvingJob` was called, creates a new archiver and world state
7
9
  * using the state snapshots, and creates a new epoch proving job to prove the downloaded proving job.
8
10
  * Proving is done with a local proving broker and agents as specified by the config.
9
11
  */
10
- export declare function rerunEpochProvingJob(localPath: string, log: Logger, config: DataStoreConfig & ProverBrokerConfig & ProverClientConfig): Promise<"initialized" | "processing" | "awaiting-prover" | "publishing-proof" | "completed" | "failed" | "stopped" | "timed-out" | "reorg">;
11
- //# sourceMappingURL=rerun-epoch-proving-job.d.ts.map
12
+ export declare function rerunEpochProvingJob(localPath: string, log: Logger, config: DataStoreConfig & ProverBrokerConfig & ProverClientConfig & Pick<L1ContractsConfig, 'aztecEpochDuration'>, genesis?: GenesisData): Promise<"awaiting-prover" | "completed" | "failed" | "initialized" | "processing" | "publishing-proof" | "reorg" | "stopped" | "timed-out">;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVydW4tZXBvY2gtcHJvdmluZy1qb2IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL3JlcnVuLWVwb2NoLXByb3Zpbmctam9iLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQXNCLE1BQU0sc0JBQXNCLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUErQixNQUFNLDZCQUE2QixDQUFDO0FBRTlGLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBVTdEOzs7O0dBSUc7QUFDSCx3QkFBc0Isb0JBQW9CLENBQ3hDLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLEdBQUcsRUFBRSxNQUFNLEVBQ1gsTUFBTSxFQUFFLGVBQWUsR0FBRyxrQkFBa0IsR0FBRyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsb0JBQW9CLENBQUMsRUFDakgsT0FBTyxDQUFDLEVBQUUsV0FBVywrSUErQ3RCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"rerun-epoch-proving-job.d.ts","sourceRoot":"","sources":["../../src/actions/rerun-epoch-proving-job.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,kBAAkB,EAAsB,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAA+B,MAAM,6BAA6B,CAAC;AAW9F;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,eAAe,GAAG,kBAAkB,GAAG,kBAAkB,+IAqClE"}
1
+ {"version":3,"file":"rerun-epoch-proving-job.d.ts","sourceRoot":"","sources":["../../src/actions/rerun-epoch-proving-job.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,kBAAkB,EAAsB,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAA+B,MAAM,6BAA6B,CAAC;AAE9F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAU7D;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,eAAe,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,EACjH,OAAO,CAAC,EAAE,WAAW,+IA+CtB"}
@@ -1,4 +1,69 @@
1
- import { createArchiverStore } from '@aztec/archiver';
1
+ function _ts_add_disposable_resource(env, value, async) {
2
+ if (value !== null && value !== void 0) {
3
+ if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
+ var dispose, inner;
5
+ if (async) {
6
+ if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
+ dispose = value[Symbol.asyncDispose];
8
+ }
9
+ if (dispose === void 0) {
10
+ if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
+ dispose = value[Symbol.dispose];
12
+ if (async) inner = dispose;
13
+ }
14
+ if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
+ if (inner) dispose = function() {
16
+ try {
17
+ inner.call(this);
18
+ } catch (e) {
19
+ return Promise.reject(e);
20
+ }
21
+ };
22
+ env.stack.push({
23
+ value: value,
24
+ dispose: dispose,
25
+ async: async
26
+ });
27
+ } else if (async) {
28
+ env.stack.push({
29
+ async: true
30
+ });
31
+ }
32
+ return value;
33
+ }
34
+ function _ts_dispose_resources(env) {
35
+ var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
36
+ var e = new Error(message);
37
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
38
+ };
39
+ return (_ts_dispose_resources = function _ts_dispose_resources(env) {
40
+ function fail(e) {
41
+ env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
42
+ env.hasError = true;
43
+ }
44
+ var r, s = 0;
45
+ function next() {
46
+ while(r = env.stack.pop()){
47
+ try {
48
+ if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
49
+ if (r.dispose) {
50
+ var result = r.dispose.call(r.value);
51
+ if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
52
+ fail(e);
53
+ return next();
54
+ });
55
+ } else s |= 1;
56
+ } catch (e) {
57
+ fail(e);
58
+ }
59
+ }
60
+ if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
61
+ if (env.hasError) throw env.error;
62
+ }
63
+ return next();
64
+ })(env);
65
+ }
66
+ import { createArchiverStore, createContractDataSource } from '@aztec/archiver';
2
67
  import { createProverClient } from '@aztec/prover-client';
3
68
  import { createAndStartProvingBroker } from '@aztec/prover-client/broker';
4
69
  import { PublicProcessorFactory } from '@aztec/simulator/server';
@@ -12,29 +77,44 @@ import { ProverNodeJobMetrics } from '../metrics.js';
12
77
  * Given a local folder where `downloadEpochProvingJob` was called, creates a new archiver and world state
13
78
  * using the state snapshots, and creates a new epoch proving job to prove the downloaded proving job.
14
79
  * Proving is done with a local proving broker and agents as specified by the config.
15
- */ export async function rerunEpochProvingJob(localPath, log, config) {
16
- const jobData = deserializeEpochProvingJobData(readFileSync(localPath));
17
- log.info(`Loaded proving job data for epoch ${jobData.epochNumber}`);
18
- const telemetry = getTelemetryClient();
19
- const metrics = new ProverNodeJobMetrics(telemetry.getMeter('prover-job'), telemetry.getTracer('prover-job'));
20
- const worldState = await createWorldState(config);
21
- const archiver = await createArchiverStore(config);
22
- const publicProcessorFactory = new PublicProcessorFactory(archiver);
23
- const publisher = {
24
- submitEpochProof: ()=>Promise.resolve(true)
80
+ */ export async function rerunEpochProvingJob(localPath, log, config, genesis) {
81
+ const env = {
82
+ stack: [],
83
+ error: void 0,
84
+ hasError: false
25
85
  };
26
- const l2BlockSourceForReorgDetection = undefined;
27
- const deadline = undefined;
28
- // This starts a local proving broker that does not get exposed as a service. This should be good enough for
29
- // smallish epochs to be proven if we run on a large machine, but as epochs grow larger, we may want to switch
30
- // this out for a live proving broker with multiple agents that we can connect to.
31
- const broker = await createAndStartProvingBroker(config, telemetry);
32
- const prover = await createProverClient(config, worldState, broker, telemetry);
33
- const provingJob = new EpochProvingJob(jobData, worldState, prover.createEpochProver(), publicProcessorFactory, publisher, l2BlockSourceForReorgDetection, metrics, deadline, {
34
- skipEpochCheck: true
35
- });
36
- log.info(`Rerunning epoch proving job for epoch ${jobData.epochNumber}`);
37
- await provingJob.run();
38
- log.info(`Completed job for epoch ${jobData.epochNumber} with status ${provingJob.getState()}`);
39
- return provingJob.getState();
86
+ try {
87
+ const jobData = deserializeEpochProvingJobData(readFileSync(localPath));
88
+ log.info(`Loaded proving job data for epoch ${jobData.epochNumber}`);
89
+ const telemetry = getTelemetryClient();
90
+ const metrics = new ProverNodeJobMetrics(telemetry.getMeter('prover-job'), telemetry.getTracer('prover-job'));
91
+ const worldState = _ts_add_disposable_resource(env, await createWorldState(config, genesis), true);
92
+ const initialBlockHash = await worldState.getInitialHeader().hash();
93
+ const archiver = await createArchiverStore(config, initialBlockHash);
94
+ const publicProcessorFactory = new PublicProcessorFactory(createContractDataSource(archiver), undefined, undefined, log.getBindings());
95
+ const publisher = {
96
+ submitEpochProof: ()=>Promise.resolve(true),
97
+ analyzeEpochProofSubmission: ()=>Promise.resolve()
98
+ };
99
+ const l2BlockSourceForReorgDetection = undefined;
100
+ const deadline = undefined;
101
+ // This starts a local proving broker that does not get exposed as a service. This should be good enough for
102
+ // smallish epochs to be proven if we run on a large machine, but as epochs grow larger, we may want to switch
103
+ // this out for a live proving broker with multiple agents that we can connect to.
104
+ const broker = await createAndStartProvingBroker(config, telemetry);
105
+ const prover = await createProverClient(config, worldState, broker, telemetry);
106
+ const provingJob = new EpochProvingJob(jobData, worldState, prover.createEpochProver(), publicProcessorFactory, publisher, l2BlockSourceForReorgDetection, metrics, deadline, {
107
+ skipEpochCheck: true
108
+ }, log.getBindings());
109
+ log.info(`Rerunning epoch proving job for epoch ${jobData.epochNumber}`);
110
+ await provingJob.run();
111
+ log.info(`Completed job for epoch ${jobData.epochNumber} with status ${provingJob.getState()}`);
112
+ return provingJob.getState();
113
+ } catch (e) {
114
+ env.error = e;
115
+ env.hasError = true;
116
+ } finally{
117
+ const result = _ts_dispose_resources(env);
118
+ if (result) await result;
119
+ }
40
120
  }
@@ -1,8 +1,8 @@
1
1
  import { type Archiver } from '@aztec/archiver';
2
2
  import type { Logger } from '@aztec/foundation/log';
3
- import type { DataStoreConfig } from '@aztec/kv-store/config';
4
3
  import type { ChainConfig } from '@aztec/stdlib/config';
5
4
  import type { WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
5
+ import type { DataStoreConfig } from '@aztec/stdlib/kv-store';
6
6
  import { type EpochProvingJobData } from '../job/epoch-proving-job-data.js';
7
7
  type UploadEpochProofConfig = Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> & Pick<DataStoreConfig, 'dataDirectory'>;
8
8
  /**
@@ -12,4 +12,4 @@ type UploadEpochProofConfig = Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
12
12
  */
13
13
  export declare function uploadEpochProofFailure(location: string, jobId: string, jobData: EpochProvingJobData, archiver: Archiver, worldState: WorldStateSynchronizer, config: UploadEpochProofConfig, log: Logger): Promise<string>;
14
14
  export {};
15
- //# sourceMappingURL=upload-epoch-proof-failure.d.ts.map
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWVwb2NoLXByb29mLWZhaWx1cmUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL3VwbG9hZC1lcG9jaC1wcm9vZi1mYWlsdXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsS0FBSyxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdyRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdwRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlFLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBUTlELE9BQU8sRUFBRSxLQUFLLG1CQUFtQixFQUFnQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTFHLEtBQUssc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUt4SDs7OztHQUlHO0FBQ0gsd0JBQXNCLHVCQUF1QixDQUMzQyxRQUFRLEVBQUUsTUFBTSxFQUNoQixLQUFLLEVBQUUsTUFBTSxFQUNiLE9BQU8sRUFBRSxtQkFBbUIsRUFDNUIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsVUFBVSxFQUFFLHNCQUFzQixFQUNsQyxNQUFNLEVBQUUsc0JBQXNCLEVBQzlCLEdBQUcsRUFBRSxNQUFNLG1CQXVDWiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"upload-epoch-proof-failure.d.ts","sourceRoot":"","sources":["../../src/actions/upload-epoch-proof-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAQ9E,OAAO,EAAE,KAAK,mBAAmB,EAAgC,MAAM,kCAAkC,CAAC;AAE1G,KAAK,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAKxH;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,sBAAsB,EAClC,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,MAAM,mBAuCZ"}
1
+ {"version":3,"file":"upload-epoch-proof-failure.d.ts","sourceRoot":"","sources":["../../src/actions/upload-epoch-proof-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAQ9D,OAAO,EAAE,KAAK,mBAAmB,EAAgC,MAAM,kCAAkC,CAAC;AAE1G,KAAK,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAKxH;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,sBAAsB,EAClC,MAAM,EAAE,sBAAsB,EAC9B,GAAG,EAAE,MAAM,mBAuCZ"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=run-failed-epoch.d.ts.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLWZhaWxlZC1lcG9jaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jpbi9ydW4tZmFpbGVkLWVwb2NoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -1,4 +1,5 @@
1
- /* eslint-disable no-console */ import { EthAddress } from '@aztec/foundation/eth-address';
1
+ /* eslint-disable no-console */ import { getL1ContractsConfigEnvVars } from '@aztec/ethereum/config';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
2
3
  import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
3
4
  import { createLogger } from '@aztec/foundation/log';
4
5
  import { downloadEpochProvingJob, getProverNodeConfigFromEnv, rerunEpochProvingJob } from '@aztec/prover-node';
@@ -15,8 +16,10 @@ async function rerunFailedEpoch(provingJobUrl, baseLocalDir) {
15
16
  const jobPath = join(localDir, 'data.bin');
16
17
  const dataDir = join(localDir, 'state');
17
18
  const env = getProverNodeConfigFromEnv();
19
+ const l1Config = getL1ContractsConfigEnvVars();
18
20
  const config = {
19
- ...getProverNodeConfigFromEnv(),
21
+ ...env,
22
+ ...l1Config,
20
23
  dataDirectory: dataDir,
21
24
  dataStoreMapSizeKb: env.dataStoreMapSizeKb ?? 1024 * 1024,
22
25
  proverId: env.proverId ?? EthAddress.random()
@@ -38,9 +41,7 @@ async function rerunFailedEpoch(provingJobUrl, baseLocalDir) {
38
41
  logger.info(`Rerunning proving job from ${jobPath} with state from ${dataDir}`, metadata);
39
42
  const result = await rerunEpochProvingJob(jobPath, logger, {
40
43
  ...config,
41
- l1Contracts: {
42
- rollupAddress: metadata.rollupAddress
43
- },
44
+ rollupAddress: metadata.rollupAddress,
44
45
  rollupVersion: metadata.rollupVersion
45
46
  });
46
47
  console.error(`Epoch proving job complete with result ${result}`);
package/dest/config.d.ts CHANGED
@@ -1,16 +1,13 @@
1
- import { type ArchiverConfig } from '@aztec/archiver/config';
2
1
  import type { ACVMConfig, BBConfig } from '@aztec/bb-prover/config';
3
- import { type GenesisStateConfig } from '@aztec/ethereum';
4
2
  import { type ConfigMappingsType } from '@aztec/foundation/config';
5
- import { type DataStoreConfig } from '@aztec/kv-store/config';
6
- import { type KeyStore, type KeyStoreConfig } from '@aztec/node-keystore';
3
+ import { type KeyStoreConfig } from '@aztec/node-keystore/config';
4
+ import type { KeyStore } from '@aztec/node-keystore/types';
7
5
  import { type SharedNodeConfig } from '@aztec/node-lib/config';
8
- import { type P2PConfig } from '@aztec/p2p/config';
9
- import { type ProverAgentConfig, type ProverBrokerConfig } from '@aztec/prover-client/broker';
6
+ import { type ProverAgentConfig, type ProverBrokerConfig } from '@aztec/prover-client/broker/config';
10
7
  import { type ProverClientUserConfig } from '@aztec/prover-client/config';
11
- import { type PublisherConfig, type TxSenderConfig } from '@aztec/sequencer-client/config';
12
- import { type WorldStateConfig } from '@aztec/world-state/config';
13
- export type ProverNodeConfig = ArchiverConfig & ProverClientUserConfig & P2PConfig & WorldStateConfig & PublisherConfig & TxSenderConfig & DataStoreConfig & KeyStoreConfig & SharedNodeConfig & SpecificProverNodeConfig & GenesisStateConfig;
8
+ import { type ProverPublisherConfig, type ProverTxSenderConfig } from '@aztec/sequencer-client/config';
9
+ import { type DataStoreConfig } from '@aztec/stdlib/kv-store';
10
+ export type ProverNodeConfig = ProverClientUserConfig & ProverPublisherConfig & ProverTxSenderConfig & DataStoreConfig & KeyStoreConfig & SpecificProverNodeConfig & Pick<SharedNodeConfig, 'web3SignerUrl'>;
14
11
  export type SpecificProverNodeConfig = {
15
12
  proverNodeMaxPendingJobs: number;
16
13
  proverNodePollingIntervalMs: number;
@@ -23,9 +20,10 @@ export type SpecificProverNodeConfig = {
23
20
  txGatheringBatchSize: number;
24
21
  txGatheringMaxParallelRequestsPerNode: number;
25
22
  };
23
+ export declare const specificProverNodeConfigMappings: ConfigMappingsType<SpecificProverNodeConfig>;
26
24
  export declare const proverNodeConfigMappings: ConfigMappingsType<ProverNodeConfig>;
27
25
  export declare function getProverNodeConfigFromEnv(): ProverNodeConfig;
28
26
  export declare function getProverNodeBrokerConfigFromEnv(): ProverBrokerConfig;
29
27
  export declare function getProverNodeAgentConfigFromEnv(): ProverAgentConfig & BBConfig & ACVMConfig;
30
28
  export declare function createKeyStoreForProver(config: ProverNodeConfig): KeyStore | undefined;
31
- //# sourceMappingURL=config.d.ts.map
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRSxPQUFPLEVBQ0wsS0FBSyxrQkFBa0IsRUFLeEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQTBCLE1BQU0sNkJBQTZCLENBQUM7QUFFMUYsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTRCLE1BQU0sd0JBQXdCLENBQUM7QUFDekYsT0FBTyxFQUNMLEtBQUssaUJBQWlCLEVBQ3RCLEtBQUssa0JBQWtCLEVBR3hCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFFLEtBQUssc0JBQXNCLEVBQWdELE1BQU0sNkJBQTZCLENBQUM7QUFDeEgsT0FBTyxFQUNMLEtBQUsscUJBQXFCLEVBQzFCLEtBQUssb0JBQW9CLEVBRzFCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHdCQUF3QixDQUFDO0FBRWxGLE1BQU0sTUFBTSxnQkFBZ0IsR0FBRyxzQkFBc0IsR0FDbkQscUJBQXFCLEdBQ3JCLG9CQUFvQixHQUNwQixlQUFlLEdBQ2YsY0FBYyxHQUNkLHdCQUF3QixHQUN4QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFFMUMsTUFBTSxNQUFNLHdCQUF3QixHQUFHO0lBQ3JDLHdCQUF3QixFQUFFLE1BQU0sQ0FBQztJQUNqQywyQkFBMkIsRUFBRSxNQUFNLENBQUM7SUFDcEMsbUNBQW1DLEVBQUUsTUFBTSxDQUFDO0lBQzVDLDBCQUEwQixFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDL0MsNkJBQTZCLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUNsRCw2QkFBNkIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUN4QyxvQkFBb0IsRUFBRSxNQUFNLENBQUM7SUFDN0IscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0lBQzlCLG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUM3QixxQ0FBcUMsRUFBRSxNQUFNLENBQUM7Q0FDL0MsQ0FBQztBQUVGLGVBQU8sTUFBTSxnQ0FBZ0MsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FrRHpGLENBQUM7QUFFRixlQUFPLE1BQU0sd0JBQXdCLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBUXpFLENBQUM7QUFFRix3QkFBZ0IsMEJBQTBCLElBQUksZ0JBQWdCLENBRTdEO0FBRUQsd0JBQWdCLGdDQUFnQyxJQUFJLGtCQUFrQixDQUlyRTtBQUVELHdCQUFnQiwrQkFBK0IsSUFBSSxpQkFBaUIsR0FBRyxRQUFRLEdBQUcsVUFBVSxDQUszRjtBQTBERCx3QkFBZ0IsdUJBQXVCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixHQUFHLFFBQVEsR0FBRyxTQUFTLENBU3RGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,wBAAwB,CAAC;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,iBAAiB,CAAC;AACtF,OAAO,EACL,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAA+C,MAAM,sBAAsB,CAAC;AACvH,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAGxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,sBAAsB,EAAgD,MAAM,6BAA6B,CAAC;AACxH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,cAAc,EAGpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,2BAA2B,CAAC;AAE5F,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAC3C,sBAAsB,GACtB,SAAS,GACT,gBAAgB,GAChB,eAAe,GACf,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,wBAAwB,GACxB,kBAAkB,CAAC;AAErB,MAAM,MAAM,wBAAwB,GAAG;IACrC,wBAAwB,EAAE,MAAM,CAAC;IACjC,2BAA2B,EAAE,MAAM,CAAC;IACpC,mCAAmC,EAAE,MAAM,CAAC;IAC5C,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAC;IAClD,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qCAAqC,EAAE,MAAM,CAAC;CAC/C,CAAC;AAsDF,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,gBAAgB,CAYzE,CAAC;AAEF,wBAAgB,0BAA0B,IAAI,gBAAgB,CAE7D;AAED,wBAAgB,gCAAgC,IAAI,kBAAkB,CAIrE;AAED,wBAAgB,+BAA+B,IAAI,iBAAiB,GAAG,QAAQ,GAAG,UAAU,CAK3F;AA0DD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAMtF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EACL,KAAK,kBAAkB,EAKxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,6BAA6B,CAAC;AAE1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,KAAK,gBAAgB,EAA4B,MAAM,wBAAwB,CAAC;AACzF,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAGxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,KAAK,sBAAsB,EAAgD,MAAM,6BAA6B,CAAC;AACxH,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAG1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAElF,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GACnD,qBAAqB,GACrB,oBAAoB,GACpB,eAAe,GACf,cAAc,GACd,wBAAwB,GACxB,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;AAE1C,MAAM,MAAM,wBAAwB,GAAG;IACrC,wBAAwB,EAAE,MAAM,CAAC;IACjC,2BAA2B,EAAE,MAAM,CAAC;IACpC,mCAAmC,EAAE,MAAM,CAAC;IAC5C,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAC;IAClD,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qCAAqC,EAAE,MAAM,CAAC;CAC/C,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,kBAAkB,CAAC,wBAAwB,CAkDzF,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,kBAAkB,CAAC,gBAAgB,CAQzE,CAAC;AAEF,wBAAgB,0BAA0B,IAAI,gBAAgB,CAE7D;AAED,wBAAgB,gCAAgC,IAAI,kBAAkB,CAIrE;AAED,wBAAgB,+BAA+B,IAAI,iBAAiB,GAAG,QAAQ,GAAG,UAAU,CAK3F;AA0DD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAStF"}
package/dest/config.js CHANGED
@@ -1,15 +1,12 @@
1
- import { archiverConfigMappings } from '@aztec/archiver/config';
2
- import { genesisStateConfigMappings } from '@aztec/ethereum';
3
- import { booleanConfigHelper, getConfigFromMappings, numberConfigHelper } from '@aztec/foundation/config';
4
- import { dataConfigMappings } from '@aztec/kv-store/config';
5
- import { ethPrivateKeySchema, keyStoreConfigMappings } from '@aztec/node-keystore';
1
+ import { booleanConfigHelper, getConfigFromMappings, numberConfigHelper, pickConfigMappings } from '@aztec/foundation/config';
2
+ import { keyStoreConfigMappings } from '@aztec/node-keystore/config';
3
+ import { ethPrivateKeySchema } from '@aztec/node-keystore/schemas';
6
4
  import { sharedNodeConfigMappings } from '@aztec/node-lib/config';
7
- import { p2pConfigMappings } from '@aztec/p2p/config';
8
- import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker';
5
+ import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/prover-client/broker/config';
9
6
  import { bbConfigMappings, proverClientConfigMappings } from '@aztec/prover-client/config';
10
- import { getPublisherConfigMappings, getTxSenderConfigMappings } from '@aztec/sequencer-client/config';
11
- import { worldStateConfigMappings } from '@aztec/world-state/config';
12
- const specificProverNodeConfigMappings = {
7
+ import { proverPublisherConfigMappings, proverTxSenderConfigMappings } from '@aztec/sequencer-client/config';
8
+ import { dataConfigMappings } from '@aztec/stdlib/kv-store';
9
+ export const specificProverNodeConfigMappings = {
13
10
  proverNodeMaxPendingJobs: {
14
11
  env: 'PROVER_NODE_MAX_PENDING_JOBS',
15
12
  description: 'The maximum number of pending jobs for the prover node',
@@ -23,7 +20,7 @@ const specificProverNodeConfigMappings = {
23
20
  proverNodeMaxParallelBlocksPerEpoch: {
24
21
  env: 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH',
25
22
  description: 'The Maximum number of blocks to process in parallel while proving an epoch',
26
- ...numberConfigHelper(32)
23
+ ...numberConfigHelper(0)
27
24
  },
28
25
  proverNodeFailedEpochStore: {
29
26
  env: 'PROVER_NODE_FAILED_EPOCH_STORE',
@@ -63,15 +60,13 @@ const specificProverNodeConfigMappings = {
63
60
  export const proverNodeConfigMappings = {
64
61
  ...dataConfigMappings,
65
62
  ...keyStoreConfigMappings,
66
- ...archiverConfigMappings,
67
63
  ...proverClientConfigMappings,
68
- ...p2pConfigMappings,
69
- ...worldStateConfigMappings,
70
- ...getPublisherConfigMappings('PROVER'),
71
- ...getTxSenderConfigMappings('PROVER'),
64
+ ...proverPublisherConfigMappings,
65
+ ...proverTxSenderConfigMappings,
72
66
  ...specificProverNodeConfigMappings,
73
- ...genesisStateConfigMappings,
74
- ...sharedNodeConfigMappings
67
+ ...pickConfigMappings(sharedNodeConfigMappings, [
68
+ 'web3SignerUrl'
69
+ ])
75
70
  };
76
71
  export function getProverNodeConfigFromEnv() {
77
72
  return getConfigFromMappings(proverNodeConfigMappings);
@@ -93,7 +88,7 @@ function createKeyStoreFromWeb3Signer(config) {
93
88
  return undefined;
94
89
  }
95
90
  // Also, we need at least one publisher address.
96
- const publishers = config.publisherAddresses ?? [];
91
+ const publishers = config.proverPublisherAddresses ?? [];
97
92
  if (publishers.length === 0) {
98
93
  return undefined;
99
94
  }
@@ -111,7 +106,7 @@ function createKeyStoreFromWeb3Signer(config) {
111
106
  }
112
107
  function createKeyStoreFromPublisherKeys(config) {
113
108
  // Extract the publisher keys from the provided config.
114
- const publisherKeys = config.publisherPrivateKeys ? config.publisherPrivateKeys.map((k)=>ethPrivateKeySchema.parse(k.getValue())) : [];
109
+ const publisherKeys = config.proverPublisherPrivateKeys ? config.proverPublisherPrivateKeys.map((k)=>ethPrivateKeySchema.parse(k.getValue())) : [];
115
110
  // There must be at least 1.
116
111
  if (publisherKeys.length === 0) {
117
112
  return undefined;
@@ -132,7 +127,10 @@ function createKeyStoreFromPublisherKeys(config) {
132
127
  }
133
128
  export function createKeyStoreForProver(config) {
134
129
  if (config.web3SignerUrl !== undefined && config.web3SignerUrl.length > 0) {
135
- return createKeyStoreFromWeb3Signer(config);
130
+ const keyStore = createKeyStoreFromWeb3Signer(config);
131
+ if (keyStore) {
132
+ return keyStore;
133
+ }
136
134
  }
137
135
  return createKeyStoreFromPublisherKeys(config);
138
136
  }
package/dest/factory.d.ts CHANGED
@@ -1,29 +1,33 @@
1
- import { type Archiver } from '@aztec/archiver';
2
- import { type BlobSinkClientInterface } from '@aztec/blob-sink/client';
3
- import { L1TxUtils } from '@aztec/ethereum';
1
+ import type { Archiver } from '@aztec/archiver';
2
+ import type { BlobClientInterface } from '@aztec/blob-client/client';
3
+ import type { EpochCacheInterface } from '@aztec/epoch-cache';
4
+ import { L1TxUtils } from '@aztec/ethereum/l1-tx-utils';
4
5
  import { type Logger } from '@aztec/foundation/log';
5
6
  import { DateProvider } from '@aztec/foundation/timer';
6
- import type { DataStoreConfig } from '@aztec/kv-store/config';
7
- import { type KeyStoreConfig } from '@aztec/node-keystore';
8
- import type { AztecNode, ProvingJobBroker } from '@aztec/stdlib/interfaces/server';
9
- import type { PublicDataTreeLeaf } from '@aztec/stdlib/trees';
7
+ import { KeystoreManager } from '@aztec/node-keystore';
8
+ import { type ProverClientUserConfig } from '@aztec/prover-client';
9
+ import { type ProverPublisherConfig, type ProverTxSenderConfig } from '@aztec/sequencer-client';
10
+ import type { ITxProvider, ProverConfig, ProvingJobBroker, Service, WorldStateSynchronizer } from '@aztec/stdlib/interfaces/server';
10
11
  import { type TelemetryClient } from '@aztec/telemetry-client';
11
- import { type ProverNodeConfig } from './config.js';
12
+ import type { SpecificProverNodeConfig } from './config.js';
12
13
  import { ProverNode } from './prover-node.js';
13
14
  import { ProverPublisherFactory } from './prover-publisher-factory.js';
14
15
  export type ProverNodeDeps = {
15
16
  telemetry?: TelemetryClient;
16
17
  log?: Logger;
17
- aztecNodeTxProvider?: Pick<AztecNode, 'getTxsByHash'>;
18
- archiver?: Archiver;
18
+ archiver: Archiver;
19
19
  publisherFactory?: ProverPublisherFactory;
20
- blobSinkClient?: BlobSinkClientInterface;
21
20
  broker?: ProvingJobBroker;
22
21
  l1TxUtils?: L1TxUtils;
23
22
  dateProvider?: DateProvider;
23
+ worldStateSynchronizer: WorldStateSynchronizer;
24
+ p2pClient: {
25
+ getTxProvider(): ITxProvider;
26
+ } & Partial<Service>;
27
+ epochCache: EpochCacheInterface;
28
+ blobClient: BlobClientInterface;
29
+ keyStoreManager?: KeystoreManager;
24
30
  };
25
- /** Creates a new prover node given a config. */
26
- export declare function createProverNode(userConfig: ProverNodeConfig & DataStoreConfig & KeyStoreConfig, deps?: ProverNodeDeps, options?: {
27
- prefilledPublicData?: PublicDataTreeLeaf[];
28
- }): Promise<ProverNode>;
29
- //# sourceMappingURL=factory.d.ts.map
31
+ /** Creates a new prover node subsystem given a config and dependencies */
32
+ export declare function createProverNode(userConfig: SpecificProverNodeConfig & ProverConfig & ProverClientUserConfig & ProverPublisherConfig & ProverTxSenderConfig, deps: ProverNodeDeps): Promise<ProverNode>;
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVyRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUd4RCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV2RCxPQUFPLEVBQTJCLEtBQUssc0JBQXNCLEVBQXNCLE1BQU0sc0JBQXNCLENBQUM7QUFFaEgsT0FBTyxFQUNMLEtBQUsscUJBQXFCLEVBQzFCLEtBQUssb0JBQW9CLEVBRTFCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxLQUFLLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsT0FBTyxFQUNQLHNCQUFzQixFQUN2QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBYSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx5QkFBeUIsQ0FBQztBQUk5RixPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFdkUsTUFBTSxNQUFNLGNBQWMsR0FBRztJQUMzQixTQUFTLENBQUMsRUFBRSxlQUFlLENBQUM7SUFDNUIsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2IsUUFBUSxFQUFFLFFBQVEsQ0FBQztJQUNuQixnQkFBZ0IsQ0FBQyxFQUFFLHNCQUFzQixDQUFDO0lBQzFDLE1BQU0sQ0FBQyxFQUFFLGdCQUFnQixDQUFDO0lBQzFCLFNBQVMsQ0FBQyxFQUFFLFNBQVMsQ0FBQztJQUN0QixZQUFZLENBQUMsRUFBRSxZQUFZLENBQUM7SUFDNUIsc0JBQXNCLEVBQUUsc0JBQXNCLENBQUM7SUFDL0MsU0FBUyxFQUFFO1FBQUUsYUFBYSxJQUFJLFdBQVcsQ0FBQTtLQUFFLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELFVBQVUsRUFBRSxtQkFBbUIsQ0FBQztJQUNoQyxVQUFVLEVBQUUsbUJBQW1CLENBQUM7SUFDaEMsZUFBZSxDQUFDLEVBQUUsZUFBZSxDQUFDO0NBQ25DLENBQUM7QUFFRiwwRUFBMEU7QUFDMUUsd0JBQXNCLGdCQUFnQixDQUNwQyxVQUFVLEVBQUUsd0JBQXdCLEdBQ2xDLFlBQVksR0FDWixzQkFBc0IsR0FDdEIscUJBQXFCLEdBQ3JCLG9CQUFvQixFQUN0QixJQUFJLEVBQUUsY0FBYyx1QkF1SXJCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,SAAS,EAAyD,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,cAAc,EAAkD,MAAM,sBAAsB,CAAC;AAM3G,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAa,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAK9F,OAAO,EAAE,KAAK,gBAAgB,EAA2B,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,gDAAgD;AAChD,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,gBAAgB,GAAG,eAAe,GAAG,cAAc,EAC/D,IAAI,GAAE,cAAmB,EACzB,OAAO,GAAE;IACP,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACvC,uBAyKP"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAI9D,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAGxD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAA2B,KAAK,sBAAsB,EAAsB,MAAM,sBAAsB,CAAC;AAEhH,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAa,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAI9F,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,SAAS,EAAE;QAAE,aAAa,IAAI,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,UAAU,EAAE,mBAAmB,CAAC;IAChC,UAAU,EAAE,mBAAmB,CAAC;IAChC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,0EAA0E;AAC1E,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,wBAAwB,GAClC,YAAY,GACZ,sBAAsB,GACtB,qBAAqB,GACrB,oBAAoB,EACtB,IAAI,EAAE,cAAc,uBAuIrB"}