@aztec/prover-client 0.65.1 → 0.65.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dest/config.d.ts +4 -10
  2. package/dest/config.d.ts.map +1 -1
  3. package/dest/config.js +8 -7
  4. package/dest/index.d.ts +1 -0
  5. package/dest/index.d.ts.map +1 -1
  6. package/dest/index.js +2 -1
  7. package/dest/mocks/test_context.js +3 -2
  8. package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
  9. package/dest/orchestrator/block-building-helpers.js +10 -18
  10. package/dest/orchestrator/block-proving-state.js +2 -2
  11. package/dest/prover-agent/memory-proving-queue.d.ts +10 -8
  12. package/dest/prover-agent/memory-proving-queue.d.ts.map +1 -1
  13. package/dest/prover-agent/memory-proving-queue.js +35 -35
  14. package/dest/prover-agent/prover-agent.d.ts +1 -0
  15. package/dest/prover-agent/prover-agent.d.ts.map +1 -1
  16. package/dest/prover-agent/prover-agent.js +12 -9
  17. package/dest/proving_broker/caching_broker_facade.d.ts +30 -0
  18. package/dest/proving_broker/caching_broker_facade.d.ts.map +1 -0
  19. package/dest/proving_broker/caching_broker_facade.js +150 -0
  20. package/dest/proving_broker/factory.d.ts +4 -0
  21. package/dest/proving_broker/factory.d.ts.map +1 -0
  22. package/dest/proving_broker/factory.js +17 -0
  23. package/dest/proving_broker/index.d.ts +9 -0
  24. package/dest/proving_broker/index.d.ts.map +1 -0
  25. package/dest/proving_broker/index.js +9 -0
  26. package/dest/proving_broker/proof_store.d.ts +46 -0
  27. package/dest/proving_broker/proof_store.d.ts.map +1 -0
  28. package/dest/proving_broker/proof_store.js +37 -0
  29. package/dest/proving_broker/prover_cache/memory.d.ts +9 -0
  30. package/dest/proving_broker/prover_cache/memory.d.ts.map +1 -0
  31. package/dest/proving_broker/prover_cache/memory.js +16 -0
  32. package/dest/proving_broker/proving_agent.d.ts +11 -6
  33. package/dest/proving_broker/proving_agent.d.ts.map +1 -1
  34. package/dest/proving_broker/proving_agent.js +48 -20
  35. package/dest/proving_broker/proving_broker.d.ts +17 -16
  36. package/dest/proving_broker/proving_broker.d.ts.map +1 -1
  37. package/dest/proving_broker/proving_broker.js +44 -23
  38. package/dest/proving_broker/proving_broker_database/memory.d.ts +14 -0
  39. package/dest/proving_broker/proving_broker_database/memory.d.ts.map +1 -0
  40. package/dest/proving_broker/proving_broker_database/memory.js +35 -0
  41. package/dest/proving_broker/proving_broker_database/persisted.d.ts +15 -0
  42. package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -0
  43. package/dest/proving_broker/proving_broker_database/persisted.js +35 -0
  44. package/dest/proving_broker/{proving_job_database.d.ts → proving_broker_database.d.ts} +8 -8
  45. package/dest/proving_broker/proving_broker_database.d.ts.map +1 -0
  46. package/dest/proving_broker/proving_broker_database.js +2 -0
  47. package/dest/proving_broker/proving_job_controller.d.ts +13 -8
  48. package/dest/proving_broker/proving_job_controller.d.ts.map +1 -1
  49. package/dest/proving_broker/proving_job_controller.js +43 -43
  50. package/dest/proving_broker/rpc.d.ts +11 -0
  51. package/dest/proving_broker/rpc.d.ts.map +1 -0
  52. package/dest/proving_broker/rpc.js +44 -0
  53. package/dest/test/mock_prover.d.ts +15 -1
  54. package/dest/test/mock_prover.d.ts.map +1 -1
  55. package/dest/test/mock_prover.js +36 -1
  56. package/dest/tx-prover/factory.d.ts +2 -1
  57. package/dest/tx-prover/factory.d.ts.map +1 -1
  58. package/dest/tx-prover/factory.js +3 -3
  59. package/dest/tx-prover/tx-prover.d.ts +13 -7
  60. package/dest/tx-prover/tx-prover.d.ts.map +1 -1
  61. package/dest/tx-prover/tx-prover.js +52 -35
  62. package/package.json +14 -12
  63. package/src/config.ts +17 -16
  64. package/src/index.ts +1 -0
  65. package/src/mocks/test_context.ts +2 -2
  66. package/src/orchestrator/block-building-helpers.ts +22 -33
  67. package/src/orchestrator/block-proving-state.ts +1 -1
  68. package/src/prover-agent/memory-proving-queue.ts +43 -44
  69. package/src/prover-agent/prover-agent.ts +16 -20
  70. package/src/proving_broker/caching_broker_facade.ts +312 -0
  71. package/src/proving_broker/factory.ts +21 -0
  72. package/src/proving_broker/index.ts +8 -0
  73. package/src/proving_broker/proof_store.ts +106 -0
  74. package/src/proving_broker/prover_cache/memory.ts +20 -0
  75. package/src/proving_broker/proving_agent.ts +75 -20
  76. package/src/proving_broker/proving_broker.ts +98 -65
  77. package/src/proving_broker/proving_broker_database/memory.ts +43 -0
  78. package/src/proving_broker/proving_broker_database/persisted.ts +45 -0
  79. package/src/proving_broker/{proving_job_database.ts → proving_broker_database.ts} +7 -12
  80. package/src/proving_broker/proving_job_controller.ts +54 -46
  81. package/src/proving_broker/rpc.ts +64 -0
  82. package/src/test/mock_prover.ts +51 -0
  83. package/src/tx-prover/factory.ts +7 -2
  84. package/src/tx-prover/tx-prover.ts +78 -46
  85. package/dest/proving_broker/proving_broker_interface.d.ts +0 -61
  86. package/dest/proving_broker/proving_broker_interface.d.ts.map +0 -1
  87. package/dest/proving_broker/proving_broker_interface.js +0 -2
  88. package/dest/proving_broker/proving_job_database/memory.d.ts +0 -14
  89. package/dest/proving_broker/proving_job_database/memory.d.ts.map +0 -1
  90. package/dest/proving_broker/proving_job_database/memory.js +0 -35
  91. package/dest/proving_broker/proving_job_database/persisted.d.ts +0 -15
  92. package/dest/proving_broker/proving_job_database/persisted.d.ts.map +0 -1
  93. package/dest/proving_broker/proving_job_database/persisted.js +0 -35
  94. package/dest/proving_broker/proving_job_database.d.ts.map +0 -1
  95. package/dest/proving_broker/proving_job_database.js +0 -2
  96. package/src/proving_broker/proving_broker_interface.ts +0 -74
  97. package/src/proving_broker/proving_job_database/memory.ts +0 -43
  98. package/src/proving_broker/proving_job_database/persisted.ts +0 -45
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/proving_broker/proving_broker_database/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAExG,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,qBAAa,sBAAuB,YAAW,qBAAqB;IAClE,OAAO,CAAC,IAAI,CAAuC;IACnD,OAAO,CAAC,OAAO,CAAoD;IAEnE,aAAa,CAAC,EAAE,EAAE,YAAY,GAAG,UAAU,GAAG,SAAS;IAIvD,mBAAmB,CAAC,EAAE,EAAE,YAAY,GAAG,uBAAuB,GAAG,SAAS;IAI1E,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzD,cAAc,IAAI,QAAQ,CAAC,CAAC,UAAU,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAC;CAK/E"}
@@ -0,0 +1,35 @@
1
+ export class InMemoryBrokerDatabase {
2
+ constructor() {
3
+ this.jobs = new Map();
4
+ this.results = new Map();
5
+ }
6
+ getProvingJob(id) {
7
+ return this.jobs.get(id);
8
+ }
9
+ getProvingJobResult(id) {
10
+ return this.results.get(id);
11
+ }
12
+ addProvingJob(request) {
13
+ this.jobs.set(request.id, request);
14
+ return Promise.resolve();
15
+ }
16
+ setProvingJobResult(id, value) {
17
+ this.results.set(id, { status: 'fulfilled', value });
18
+ return Promise.resolve();
19
+ }
20
+ setProvingJobError(id, reason) {
21
+ this.results.set(id, { status: 'rejected', reason });
22
+ return Promise.resolve();
23
+ }
24
+ deleteProvingJobAndResult(id) {
25
+ this.jobs.delete(id);
26
+ this.results.delete(id);
27
+ return Promise.resolve();
28
+ }
29
+ *allProvingJobs() {
30
+ for (const item of this.jobs.values()) {
31
+ yield [item, this.results.get(item.id)];
32
+ }
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3ZpbmdfYnJva2VyL3Byb3ZpbmdfYnJva2VyX2RhdGFiYXNlL21lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLE9BQU8sc0JBQXNCO0lBQW5DO1FBQ1UsU0FBSSxHQUFHLElBQUksR0FBRyxFQUE0QixDQUFDO1FBQzNDLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBeUMsQ0FBQztJQW9DckUsQ0FBQztJQWxDQyxhQUFhLENBQUMsRUFBZ0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsRUFBZ0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQW1CO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkMsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELG1CQUFtQixDQUFDLEVBQWdCLEVBQUUsS0FBZTtRQUNuRCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDckQsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLEVBQWdCLEVBQUUsTUFBYztRQUNqRCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDckQsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELHlCQUF5QixDQUFDLEVBQWdCO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hCLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxDQUFDLGNBQWM7UUFDYixLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUN0QyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBVSxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0NBQ0YifQ==
@@ -0,0 +1,15 @@
1
+ import { type ProofUri, ProvingJob, type ProvingJobId, ProvingJobSettledResult } from '@aztec/circuit-types';
2
+ import { type AztecKVStore } from '@aztec/kv-store';
3
+ import { type ProvingBrokerDatabase } from '../proving_broker_database.js';
4
+ export declare class KVBrokerDatabase implements ProvingBrokerDatabase {
5
+ private store;
6
+ private jobs;
7
+ private jobResults;
8
+ constructor(store: AztecKVStore);
9
+ addProvingJob(job: ProvingJob): Promise<void>;
10
+ allProvingJobs(): Iterable<[ProvingJob, ProvingJobSettledResult | undefined]>;
11
+ deleteProvingJobAndResult(id: ProvingJobId): Promise<void>;
12
+ setProvingJobError(id: ProvingJobId, reason: string): Promise<void>;
13
+ setProvingJobResult(id: ProvingJobId, value: ProofUri): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=persisted.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persisted.d.ts","sourceRoot":"","sources":["../../../src/proving_broker/proving_broker_database/persisted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE7G,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,qBAAa,gBAAiB,YAAW,qBAAqB;IAIhD,OAAO,CAAC,KAAK;IAHzB,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,UAAU,CAAiC;gBAE/B,KAAK,EAAE,YAAY;IAKjC,aAAa,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,cAAc,IAAI,QAAQ,CAAC,CAAC,UAAU,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAC;IAS9E,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAOpD,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAI5E"}
@@ -0,0 +1,35 @@
1
+ import { ProvingJob, ProvingJobSettledResult } from '@aztec/circuit-types';
2
+ import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
3
+ export class KVBrokerDatabase {
4
+ constructor(store) {
5
+ this.store = store;
6
+ this.jobs = store.openMap('proving_jobs');
7
+ this.jobResults = store.openMap('proving_job_results');
8
+ }
9
+ async addProvingJob(job) {
10
+ await this.jobs.set(job.id, jsonStringify(job));
11
+ }
12
+ *allProvingJobs() {
13
+ for (const jobStr of this.jobs.values()) {
14
+ const job = jsonParseWithSchema(jobStr, ProvingJob);
15
+ const resultStr = this.jobResults.get(job.id);
16
+ const result = resultStr ? jsonParseWithSchema(resultStr, ProvingJobSettledResult) : undefined;
17
+ yield [job, result];
18
+ }
19
+ }
20
+ deleteProvingJobAndResult(id) {
21
+ return this.store.transaction(() => {
22
+ void this.jobs.delete(id);
23
+ void this.jobResults.delete(id);
24
+ });
25
+ }
26
+ async setProvingJobError(id, reason) {
27
+ const result = { status: 'rejected', reason };
28
+ await this.jobResults.set(id, jsonStringify(result));
29
+ }
30
+ async setProvingJobResult(id, value) {
31
+ const result = { status: 'fulfilled', value };
32
+ await this.jobResults.set(id, jsonStringify(result));
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc2lzdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3ZpbmdfYnJva2VyL3Byb3ZpbmdfYnJva2VyX2RhdGFiYXNlL3BlcnNpc3RlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFVBQVUsRUFBcUIsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFLaEYsTUFBTSxPQUFPLGdCQUFnQjtJQUkzQixZQUFvQixLQUFtQjtRQUFuQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ3JDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFlO1FBQ2pDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsQ0FBQyxjQUFjO1FBQ2IsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDeEMsTUFBTSxHQUFHLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QyxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDL0YsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVELHlCQUF5QixDQUFDLEVBQWdCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQ2pDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDMUIsS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBZ0IsRUFBRSxNQUFjO1FBQ3ZELE1BQU0sTUFBTSxHQUE0QixFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDdkUsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxFQUFnQixFQUFFLEtBQWU7UUFDekQsTUFBTSxNQUFNLEdBQTRCLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUN2RSxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0YifQ==
@@ -1,35 +1,35 @@
1
- import { type V2ProofOutput, type V2ProvingJob, type V2ProvingJobId, type V2ProvingJobResult } from '@aztec/circuit-types';
1
+ import { type ProofUri, type ProvingJob, type ProvingJobId, type ProvingJobSettledResult } from '@aztec/circuit-types';
2
2
  /**
3
3
  * A database for storing proof requests and their results
4
4
  */
5
- export interface ProvingJobDatabase {
5
+ export interface ProvingBrokerDatabase {
6
6
  /**
7
7
  * Saves a proof request so it can be retrieved later
8
8
  * @param request - The proof request to save
9
9
  */
10
- addProvingJob(request: V2ProvingJob): Promise<void>;
10
+ addProvingJob(request: ProvingJob): Promise<void>;
11
11
  /**
12
12
  * Removes a proof request from the backend
13
13
  * @param id - The ID of the proof request to remove
14
14
  */
15
- deleteProvingJobAndResult(id: V2ProvingJobId): Promise<void>;
15
+ deleteProvingJobAndResult(id: ProvingJobId): Promise<void>;
16
16
  /**
17
17
  * Returns an iterator over all saved proving jobs
18
18
  */
19
- allProvingJobs(): Iterable<[V2ProvingJob, V2ProvingJobResult | undefined]>;
19
+ allProvingJobs(): Iterable<[ProvingJob, ProvingJobSettledResult | undefined]>;
20
20
  /**
21
21
  * Saves the result of a proof request
22
22
  * @param id - The ID of the proof request to save the result for
23
23
  * @param ProvingRequestType - The type of proof that was requested
24
24
  * @param value - The result of the proof request
25
25
  */
26
- setProvingJobResult(id: V2ProvingJobId, value: V2ProofOutput): Promise<void>;
26
+ setProvingJobResult(id: ProvingJobId, value: ProofUri): Promise<void>;
27
27
  /**
28
28
  * Saves an error that occurred while processing a proof request
29
29
  * @param id - The ID of the proof request to save the error for
30
30
  * @param ProvingRequestType - The type of proof that was requested
31
31
  * @param err - The error that occurred while processing the proof request
32
32
  */
33
- setProvingJobError(id: V2ProvingJobId, err: Error): Promise<void>;
33
+ setProvingJobError(id: ProvingJobId, err: string): Promise<void>;
34
34
  }
35
- //# sourceMappingURL=proving_job_database.d.ts.map
35
+ //# sourceMappingURL=proving_broker_database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proving_broker_database.d.ts","sourceRoot":"","sources":["../../src/proving_broker/proving_broker_database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEvH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;;OAGG;IACH,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;OAEG;IACH,cAAc,IAAI,QAAQ,CAAC,CAAC,UAAU,EAAE,uBAAuB,GAAG,SAAS,CAAC,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19icm9rZXJfZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmluZ19icm9rZXIvcHJvdmluZ19icm9rZXJfZGF0YWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -1,24 +1,29 @@
1
- import { type ServerCircuitProver, type V2ProofOutput, type V2ProvingJob, type V2ProvingJobId } from '@aztec/circuit-types';
2
- export declare enum ProvingJobStatus {
1
+ import { type ProvingJobId, type ProvingJobInputs, type ProvingJobResultsMap, ProvingRequestType, type ServerCircuitProver } from '@aztec/circuit-types';
2
+ export declare enum ProvingJobControllerStatus {
3
3
  IDLE = "idle",
4
4
  PROVING = "proving",
5
- DONE = "done"
5
+ DONE = "done",
6
+ ABORTED = "aborted"
7
+ }
8
+ interface ProvingJobCompletionCallback<T extends ProvingRequestType = ProvingRequestType> {
9
+ (jobId: ProvingJobId, type: T, error: Error | undefined, result: ProvingJobResultsMap[T] | undefined): void | Promise<void>;
6
10
  }
7
- type ProvingJobCompletionCallback = (error: Error | undefined, result: V2ProofOutput | undefined) => void | Promise<void>;
8
11
  export declare class ProvingJobController {
9
- private job;
12
+ private jobId;
13
+ private inputs;
10
14
  private startedAt;
11
15
  private circuitProver;
12
16
  private onComplete;
13
17
  private status;
14
18
  private promise?;
15
19
  private abortController;
16
- constructor(job: V2ProvingJob, startedAt: number, circuitProver: ServerCircuitProver, onComplete: ProvingJobCompletionCallback);
20
+ constructor(jobId: ProvingJobId, inputs: ProvingJobInputs, startedAt: number, circuitProver: ServerCircuitProver, onComplete: ProvingJobCompletionCallback);
17
21
  start(): void;
18
- getStatus(): ProvingJobStatus;
22
+ getStatus(): ProvingJobControllerStatus;
19
23
  abort(): void;
20
- getJobId(): V2ProvingJobId;
24
+ getJobId(): ProvingJobId;
21
25
  getStartedAt(): number;
26
+ getProofTypeName(): string;
22
27
  private generateProof;
23
28
  }
24
29
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"proving_job_controller.d.ts","sourceRoot":"","sources":["../../src/proving_broker/proving_job_controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,gBAAgB;IAC1B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,KAAK,4BAA4B,GAAG,CAClC,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,MAAM,EAAE,aAAa,GAAG,SAAS,KAC9B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,qBAAa,oBAAoB;IAM7B,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,UAAU;IARpB,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,OAAO,CAAC,CAAgB;IAChC,OAAO,CAAC,eAAe,CAAyB;gBAGtC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,4BAA4B;IAG3C,KAAK,IAAI,IAAI;IA0Bb,SAAS,IAAI,gBAAgB;IAI7B,KAAK,IAAI,IAAI;IAQb,QAAQ,IAAI,cAAc;IAI1B,YAAY,IAAI,MAAM;YAIf,aAAa;CAsE5B"}
1
+ {"version":3,"file":"proving_job_controller.d.ts","sourceRoot":"","sources":["../../src/proving_broker/proving_job_controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAE9B,oBAAY,0BAA0B;IACpC,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED,UAAU,4BAA4B,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;IACtF,CACE,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,SAAS,GAC1C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAED,qBAAa,oBAAoB;IAM7B,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,UAAU;IATpB,OAAO,CAAC,MAAM,CAA+D;IAC7E,OAAO,CAAC,OAAO,CAAC,CAAgB;IAChC,OAAO,CAAC,eAAe,CAAyB;gBAGtC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,4BAA4B;IAG3C,KAAK,IAAI,IAAI;IAmCb,SAAS,IAAI,0BAA0B;IAIvC,KAAK,IAAI,IAAI;IASb,QAAQ,IAAI,YAAY;IAIxB,YAAY,IAAI,MAAM;IAItB,gBAAgB,IAAI,MAAM;YAInB,aAAa;CA0D5B"}
@@ -1,35 +1,43 @@
1
1
  import { ProvingRequestType, } from '@aztec/circuit-types';
2
- export var ProvingJobStatus;
3
- (function (ProvingJobStatus) {
4
- ProvingJobStatus["IDLE"] = "idle";
5
- ProvingJobStatus["PROVING"] = "proving";
6
- ProvingJobStatus["DONE"] = "done";
7
- })(ProvingJobStatus || (ProvingJobStatus = {}));
2
+ export var ProvingJobControllerStatus;
3
+ (function (ProvingJobControllerStatus) {
4
+ ProvingJobControllerStatus["IDLE"] = "idle";
5
+ ProvingJobControllerStatus["PROVING"] = "proving";
6
+ ProvingJobControllerStatus["DONE"] = "done";
7
+ ProvingJobControllerStatus["ABORTED"] = "aborted";
8
+ })(ProvingJobControllerStatus || (ProvingJobControllerStatus = {}));
8
9
  export class ProvingJobController {
9
- constructor(job, startedAt, circuitProver, onComplete) {
10
- this.job = job;
10
+ constructor(jobId, inputs, startedAt, circuitProver, onComplete) {
11
+ this.jobId = jobId;
12
+ this.inputs = inputs;
11
13
  this.startedAt = startedAt;
12
14
  this.circuitProver = circuitProver;
13
15
  this.onComplete = onComplete;
14
- this.status = ProvingJobStatus.IDLE;
16
+ this.status = ProvingJobControllerStatus.IDLE;
15
17
  this.abortController = new AbortController();
16
18
  }
17
19
  start() {
18
- if (this.status !== ProvingJobStatus.IDLE) {
20
+ if (this.status !== ProvingJobControllerStatus.IDLE) {
19
21
  return;
20
22
  }
21
- this.status = ProvingJobStatus.PROVING;
23
+ this.status = ProvingJobControllerStatus.PROVING;
22
24
  this.promise = this.generateProof()
23
25
  .then(result => {
24
- this.status = ProvingJobStatus.DONE;
25
- return this.onComplete(undefined, result);
26
+ if (this.status === ProvingJobControllerStatus.ABORTED) {
27
+ return;
28
+ }
29
+ this.status = ProvingJobControllerStatus.DONE;
30
+ return this.onComplete(this.jobId, this.inputs.type, undefined, result);
26
31
  }, error => {
27
- this.status = ProvingJobStatus.DONE;
32
+ if (this.status === ProvingJobControllerStatus.ABORTED) {
33
+ return;
34
+ }
28
35
  if (error.name === 'AbortError') {
29
36
  // Ignore abort errors
30
37
  return;
31
38
  }
32
- return this.onComplete(error, undefined);
39
+ this.status = ProvingJobControllerStatus.DONE;
40
+ return this.onComplete(this.jobId, this.inputs.type, error, undefined);
33
41
  })
34
42
  .catch(_ => {
35
43
  // ignore completion errors
@@ -39,68 +47,60 @@ export class ProvingJobController {
39
47
  return this.status;
40
48
  }
41
49
  abort() {
42
- if (this.status !== ProvingJobStatus.PROVING) {
50
+ if (this.status !== ProvingJobControllerStatus.PROVING) {
43
51
  return;
44
52
  }
53
+ this.status = ProvingJobControllerStatus.ABORTED;
45
54
  this.abortController.abort();
46
55
  }
47
56
  getJobId() {
48
- return this.job.id;
57
+ return this.jobId;
49
58
  }
50
59
  getStartedAt() {
51
60
  return this.startedAt;
52
61
  }
62
+ getProofTypeName() {
63
+ return ProvingRequestType[this.inputs.type];
64
+ }
53
65
  async generateProof() {
54
- const { type, inputs } = this.job;
66
+ const { type, inputs } = this.inputs;
55
67
  const signal = this.abortController.signal;
56
68
  switch (type) {
57
69
  case ProvingRequestType.PUBLIC_VM: {
58
- const value = await this.circuitProver.getAvmProof(inputs, signal);
59
- return { type, value };
70
+ return await this.circuitProver.getAvmProof(inputs, signal);
60
71
  }
61
72
  case ProvingRequestType.PRIVATE_BASE_ROLLUP: {
62
- const value = await this.circuitProver.getPrivateBaseRollupProof(inputs, signal);
63
- return { type, value };
73
+ return await this.circuitProver.getPrivateBaseRollupProof(inputs, signal);
64
74
  }
65
75
  case ProvingRequestType.PUBLIC_BASE_ROLLUP: {
66
- const value = await this.circuitProver.getPublicBaseRollupProof(inputs, signal);
67
- return { type, value };
76
+ return await this.circuitProver.getPublicBaseRollupProof(inputs, signal);
68
77
  }
69
78
  case ProvingRequestType.MERGE_ROLLUP: {
70
- const value = await this.circuitProver.getMergeRollupProof(inputs, signal);
71
- return { type, value };
79
+ return await this.circuitProver.getMergeRollupProof(inputs, signal);
72
80
  }
73
81
  case ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP: {
74
- const value = await this.circuitProver.getEmptyBlockRootRollupProof(inputs, signal);
75
- return { type, value };
82
+ return await this.circuitProver.getEmptyBlockRootRollupProof(inputs, signal);
76
83
  }
77
84
  case ProvingRequestType.BLOCK_ROOT_ROLLUP: {
78
- const value = await this.circuitProver.getBlockRootRollupProof(inputs, signal);
79
- return { type, value };
85
+ return await this.circuitProver.getBlockRootRollupProof(inputs, signal);
80
86
  }
81
87
  case ProvingRequestType.BLOCK_MERGE_ROLLUP: {
82
- const value = await this.circuitProver.getBlockMergeRollupProof(inputs, signal);
83
- return { type, value };
88
+ return await this.circuitProver.getBlockMergeRollupProof(inputs, signal);
84
89
  }
85
90
  case ProvingRequestType.ROOT_ROLLUP: {
86
- const value = await this.circuitProver.getRootRollupProof(inputs, signal);
87
- return { type, value };
91
+ return await this.circuitProver.getRootRollupProof(inputs, signal);
88
92
  }
89
93
  case ProvingRequestType.BASE_PARITY: {
90
- const value = await this.circuitProver.getBaseParityProof(inputs, signal);
91
- return { type, value };
94
+ return await this.circuitProver.getBaseParityProof(inputs, signal);
92
95
  }
93
96
  case ProvingRequestType.ROOT_PARITY: {
94
- const value = await this.circuitProver.getRootParityProof(inputs, signal);
95
- return { type, value };
97
+ return await this.circuitProver.getRootParityProof(inputs, signal);
96
98
  }
97
99
  case ProvingRequestType.PRIVATE_KERNEL_EMPTY: {
98
- const value = await this.circuitProver.getEmptyPrivateKernelProof(inputs, signal);
99
- return { type, value };
100
+ return await this.circuitProver.getEmptyPrivateKernelProof(inputs, signal);
100
101
  }
101
102
  case ProvingRequestType.TUBE_PROOF: {
102
- const value = await this.circuitProver.getTubeProof(inputs, signal);
103
- return { type, value };
103
+ return await this.circuitProver.getTubeProof(inputs, signal);
104
104
  }
105
105
  default: {
106
106
  const _exhaustive = type;
@@ -109,4 +109,4 @@ export class ProvingJobController {
109
109
  }
110
110
  }
111
111
  }
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19qb2JfY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aW5nX2Jyb2tlci9wcm92aW5nX2pvYl9jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxrQkFBa0IsR0FLbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixNQUFNLENBQU4sSUFBWSxnQkFJWDtBQUpELFdBQVksZ0JBQWdCO0lBQzFCLGlDQUFhLENBQUE7SUFDYix1Q0FBbUIsQ0FBQTtJQUNuQixpQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFJM0I7QUFPRCxNQUFNLE9BQU8sb0JBQW9CO0lBSy9CLFlBQ1UsR0FBaUIsRUFDakIsU0FBaUIsRUFDakIsYUFBa0MsRUFDbEMsVUFBd0M7UUFIeEMsUUFBRyxHQUFILEdBQUcsQ0FBYztRQUNqQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQVIxQyxXQUFNLEdBQXFCLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUVqRCxvQkFBZSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFPN0MsQ0FBQztJQUVHLEtBQUs7UUFDVixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUU7YUFDaEMsSUFBSSxDQUNILE1BQU0sQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7WUFDcEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFB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
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19qb2JfY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aW5nX2Jyb2tlci9wcm92aW5nX2pvYl9jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxrQkFBa0IsR0FFbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixNQUFNLENBQU4sSUFBWSwwQkFLWDtBQUxELFdBQVksMEJBQTBCO0lBQ3BDLDJDQUFhLENBQUE7SUFDYixpREFBbUIsQ0FBQTtJQUNuQiwyQ0FBYSxDQUFBO0lBQ2IsaURBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLDBCQUEwQixLQUExQiwwQkFBMEIsUUFLckM7QUFXRCxNQUFNLE9BQU8sb0JBQW9CO0lBSy9CLFlBQ1UsS0FBbUIsRUFDbkIsTUFBd0IsRUFDeEIsU0FBaUIsRUFDakIsYUFBa0MsRUFDbEMsVUFBd0M7UUFKeEMsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQUN4QixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQVQxQyxXQUFNLEdBQStCLDBCQUEwQixDQUFDLElBQUksQ0FBQztRQUVyRSxvQkFBZSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFRN0MsQ0FBQztJQUVHLEtBQUs7UUFDVixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssMEJBQTBCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEQsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLDBCQUEwQixDQUFDLE9BQU8sQ0FBQztRQUNqRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUU7YUFDaEMsSUFBSSxDQUNILE1BQU0sQ0FBQyxFQUFFO1lBQ1AsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFL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
@@ -0,0 +1,11 @@
1
+ import { type ProvingJobBroker, type ProvingJobConsumer, type ProvingJobProducer } from '@aztec/circuit-types';
2
+ import { type SafeJsonRpcServer } from '@aztec/foundation/json-rpc/server';
3
+ import { type ApiSchemaFor } from '@aztec/foundation/schemas';
4
+ export declare const ProvingJobProducerSchema: ApiSchemaFor<ProvingJobProducer>;
5
+ export declare const ProvingJobConsumerSchema: ApiSchemaFor<ProvingJobConsumer>;
6
+ export declare const ProvingJobBrokerSchema: ApiSchemaFor<ProvingJobBroker>;
7
+ export declare function createProvingBrokerServer(broker: ProvingJobBroker): SafeJsonRpcServer;
8
+ export declare function createProvingJobBrokerClient(url: string, fetch?: (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, noRetry?: boolean | undefined) => Promise<any>): ProvingJobBroker;
9
+ export declare function createProvingJobProducerClient(url: string, fetch?: (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, noRetry?: boolean | undefined) => Promise<any>): ProvingJobProducer;
10
+ export declare function createProvingJobConsumerClient(url: string, fetch?: (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, noRetry?: boolean | undefined) => Promise<any>): ProvingJobConsumer;
11
+ //# sourceMappingURL=rpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/proving_broker/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EAIxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,iBAAiB,EAA2B,MAAM,mCAAmC,CAAC;AACpG,OAAO,EAAE,KAAK,YAAY,EAAY,MAAM,2BAA2B,CAAC;AAaxE,eAAO,MAAM,wBAAwB,EAAE,YAAY,CAAC,kBAAkB,CAKrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,YAAY,CAAC,kBAAkB,CAQrE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAAY,CAAC,gBAAgB,CAGjE,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,gBAAgB,GAAG,iBAAiB,CAErF;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,wHAA8B,GAAG,gBAAgB,CAE/G;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,wHAA8B,GAAG,kBAAkB,CAEnH;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,wHAA8B,GAAG,kBAAkB,CAEnH"}
@@ -0,0 +1,44 @@
1
+ import { ProofUri, ProvingJob, ProvingJobId, ProvingJobSettledResult, ProvingJobStatus, ProvingRequestType, } from '@aztec/circuit-types';
2
+ import { createSafeJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
3
+ import { createSafeJsonRpcServer } from '@aztec/foundation/json-rpc/server';
4
+ import { optional } from '@aztec/foundation/schemas';
5
+ import { z } from 'zod';
6
+ const ProvingJobFilterSchema = z.object({
7
+ allowList: z.array(z.nativeEnum(ProvingRequestType)),
8
+ });
9
+ const GetProvingJobResponse = z.object({
10
+ job: ProvingJob,
11
+ time: z.number(),
12
+ });
13
+ export const ProvingJobProducerSchema = {
14
+ enqueueProvingJob: z.function().args(ProvingJob).returns(z.void()),
15
+ getProvingJobStatus: z.function().args(ProvingJobId).returns(ProvingJobStatus),
16
+ removeAndCancelProvingJob: z.function().args(ProvingJobId).returns(z.void()),
17
+ waitForJobToSettle: z.function().args(ProvingJobId).returns(ProvingJobSettledResult),
18
+ };
19
+ export const ProvingJobConsumerSchema = {
20
+ getProvingJob: z.function().args(optional(ProvingJobFilterSchema)).returns(GetProvingJobResponse.optional()),
21
+ reportProvingJobError: z.function().args(ProvingJobId, z.string(), optional(z.boolean())).returns(z.void()),
22
+ reportProvingJobProgress: z
23
+ .function()
24
+ .args(ProvingJobId, z.number(), optional(ProvingJobFilterSchema))
25
+ .returns(GetProvingJobResponse.optional()),
26
+ reportProvingJobSuccess: z.function().args(ProvingJobId, ProofUri).returns(z.void()),
27
+ };
28
+ export const ProvingJobBrokerSchema = {
29
+ ...ProvingJobConsumerSchema,
30
+ ...ProvingJobProducerSchema,
31
+ };
32
+ export function createProvingBrokerServer(broker) {
33
+ return createSafeJsonRpcServer(broker, ProvingJobBrokerSchema);
34
+ }
35
+ export function createProvingJobBrokerClient(url, fetch = makeFetch([1, 2, 3], false)) {
36
+ return createSafeJsonRpcClient(url, ProvingJobBrokerSchema, false, 'proverBroker', fetch);
37
+ }
38
+ export function createProvingJobProducerClient(url, fetch = makeFetch([1, 2, 3], false)) {
39
+ return createSafeJsonRpcClient(url, ProvingJobProducerSchema, false, 'provingJobProducer', fetch);
40
+ }
41
+ export function createProvingJobConsumerClient(url, fetch = makeFetch([1, 2, 3], false)) {
42
+ return createSafeJsonRpcClient(url, ProvingJobConsumerSchema, false, 'provingJobConsumer', fetch);
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnBjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpbmdfYnJva2VyL3JwYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsUUFBUSxFQUNSLFVBQVUsRUFHVixZQUFZLEVBRVosdUJBQXVCLEVBQ3ZCLGdCQUFnQixFQUNoQixrQkFBa0IsR0FDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkYsT0FBTyxFQUEwQix1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BHLE9BQU8sRUFBcUIsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFeEUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixNQUFNLHNCQUFzQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDdEMsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0NBQ3JELENBQUMsQ0FBQztBQUVILE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNyQyxHQUFHLEVBQUUsVUFBVTtJQUNmLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0NBQ2pCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFxQztJQUN4RSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7SUFDOUUseUJBQXlCLEVBQUUsQ0FBQyxDQUFD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
@@ -1,5 +1,19 @@
1
- import { type ProofAndVerificationKey, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec/circuit-types';
1
+ import { type ProofAndVerificationKey, type ProvingJob, type ProvingJobId, type ProvingJobProducer, type ProvingJobSettledResult, type ProvingJobStatus, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec/circuit-types';
2
2
  import { type AvmCircuitInputs, type BaseOrMergeRollupPublicInputs, type BaseParityInputs, type BlockMergeRollupInputs, type BlockRootOrBlockMergePublicInputs, type BlockRootRollupInputs, type EmptyBlockRootRollupInputs, type KernelCircuitPublicInputs, type MergeRollupInputs, type PrivateBaseRollupInputs, type PrivateKernelEmptyInputData, type PublicBaseRollupInputs, type RootParityInputs, type RootRollupInputs, type RootRollupPublicInputs, TUBE_PROOF_LENGTH } from '@aztec/circuits.js';
3
+ import { type ProofStore } from '../proving_broker/proof_store.js';
4
+ export declare class TestBroker implements ProvingJobProducer {
5
+ private proofStore;
6
+ private broker;
7
+ private agents;
8
+ constructor(agentCount: number, prover: ServerCircuitProver, proofStore?: ProofStore);
9
+ start(): Promise<void>;
10
+ stop(): Promise<void>;
11
+ getProofStore(): ProofStore;
12
+ enqueueProvingJob(job: ProvingJob): Promise<void>;
13
+ getProvingJobStatus(id: ProvingJobId): Promise<ProvingJobStatus>;
14
+ removeAndCancelProvingJob(id: ProvingJobId): Promise<void>;
15
+ waitForJobToSettle(id: ProvingJobId): Promise<ProvingJobSettledResult>;
16
+ }
3
17
  export declare class MockProver implements ServerCircuitProver {
4
18
  constructor();
5
19
  getAvmProof(_inputs: AvmCircuitInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<ProofAndVerificationKey<4166>>;
@@ -1 +1 @@
1
- {"version":3,"file":"mock_prover.d.ts","sourceRoot":"","sources":["../../src/test/mock_prover.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EAGzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,6BAA6B,EAClC,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,iCAAiC,EACtC,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EAEtB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAE3B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,iBAAiB,EAIlB,MAAM,oBAAoB,CAAC;AAS5B,qBAAa,UAAW,YAAW,mBAAmB;;IAGpD,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM;IASnF,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM;IAU1F,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM;IAU1F,yBAAyB,CACvB,gBAAgB,EAAE,uBAAuB,EACzC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,6BAA6B,CAAC,CAAC;IAUxE,wBAAwB,CACtB,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,6BAA6B,CAAC,CAAC;IAUxE,mBAAmB,CACjB,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,6BAA6B,CAAC,CAAC;IAUxE,wBAAwB,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM;IAUrG,4BAA4B,CAC1B,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,iCAAiC,CAAC,CAAC;IAU5E,uBAAuB,CACrB,MAAM,EAAE,qBAAqB,EAC7B,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,iCAAiC,CAAC,CAAC;IAU5E,0BAA0B,CACxB,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,yBAAyB,CAAC,CAAC;IAUpE,kBAAkB,CAChB,MAAM,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,sBAAsB,CAAC,CAAC;IAUjE,YAAY,IAAI,OAAO,CAAC,uBAAuB,CAAC,OAAO,iBAAiB,CAAC,CAAC;CAK3E"}
1
+ {"version":3,"file":"mock_prover.d.ts","sourceRoot":"","sources":["../../src/test/mock_prover.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,41 @@
1
1
  import { makeProofAndVerificationKey, makePublicInputsAndRecursiveProof, } from '@aztec/circuit-types';
2
2
  import { AVM_PROOF_LENGTH_IN_FIELDS, AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS, NESTED_RECURSIVE_PROOF_LENGTH, RECURSIVE_PROOF_LENGTH, TUBE_PROOF_LENGTH, VerificationKeyData, makeEmptyRecursiveProof, makeRecursiveProof, } from '@aztec/circuits.js';
3
3
  import { makeBaseOrMergeRollupPublicInputs, makeBlockRootOrBlockMergeRollupPublicInputs, makeKernelCircuitPublicInputs, makeParityPublicInputs, makeRootRollupPublicInputs, } from '@aztec/circuits.js/testing';
4
+ import { times } from '@aztec/foundation/collection';
5
+ import { InlineProofStore } from '../proving_broker/proof_store.js';
6
+ import { ProvingAgent } from '../proving_broker/proving_agent.js';
7
+ import { ProvingBroker } from '../proving_broker/proving_broker.js';
8
+ import { InMemoryBrokerDatabase } from '../proving_broker/proving_broker_database/memory.js';
9
+ export class TestBroker {
10
+ constructor(agentCount, prover, proofStore = new InlineProofStore()) {
11
+ this.proofStore = proofStore;
12
+ this.broker = new ProvingBroker(new InMemoryBrokerDatabase());
13
+ this.agents = times(agentCount, () => new ProvingAgent(this.broker, proofStore, prover));
14
+ }
15
+ async start() {
16
+ await this.broker.start();
17
+ this.agents.forEach(agent => agent.start());
18
+ }
19
+ async stop() {
20
+ await Promise.all(this.agents.map(agent => agent.stop()));
21
+ await this.broker.stop();
22
+ }
23
+ getProofStore() {
24
+ return this.proofStore;
25
+ }
26
+ enqueueProvingJob(job) {
27
+ return this.broker.enqueueProvingJob(job);
28
+ }
29
+ getProvingJobStatus(id) {
30
+ return this.broker.getProvingJobStatus(id);
31
+ }
32
+ removeAndCancelProvingJob(id) {
33
+ return this.broker.removeAndCancelProvingJob(id);
34
+ }
35
+ waitForJobToSettle(id) {
36
+ return this.broker.waitForJobToSettle(id);
37
+ }
38
+ }
4
39
  export class MockProver {
5
40
  constructor() { }
6
41
  getAvmProof(_inputs, _signal, _epochNumber) {
@@ -40,4 +75,4 @@ export class MockProver {
40
75
  return Promise.resolve(makeProofAndVerificationKey(makeRecursiveProof(TUBE_PROOF_LENGTH), VerificationKeyData.makeFake()));
41
76
  }
42
77
  }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19wcm92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2NrX3Byb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUwsMkJBQTJCLEVBQzNCLGlDQUFpQyxHQUNsQyxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIscUNBQXFDLEVBVXJDLDZCQUE2QixFQUk3QixzQkFBc0IsRUFJdEIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsa0JBQWtCLEdBQ25CLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywyQ0FBMkMsRUFDM0MsNkJBQTZCLEVBQzdCLHNCQUFzQixFQUN0QiwwQkFBMEIsR0FDM0IsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxNQUFNLE9BQU8sVUFBVTtJQUNyQixnQkFBZSxDQUFDO0lBRWhCLFdBQVcsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDakYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQiwyQkFBMkIsQ0FDekIsdUJBQXVCLENBQUMsMEJBQTBCLENBQUMsRUFDbkQsbUJBQW1CLENBQUMsUUFBUSxDQUFDLHFDQUFxQyxDQUFDLENBQ3BFLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDeEYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQixpQ0FBaUMsQ0FDL0Isc0JBQXNCLEVBQUUsRUFDeEIsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsRUFDMUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQ25DLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDeEYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQixpQ0FBaUMs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
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19wcm92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2NrX3Byb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBU0wsMkJBQTJCLEVBQzNCLGlDQUFpQyxHQUNsQyxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIscUNBQXFDLEVBVXJDLDZCQUE2QixFQUk3QixzQkFBc0IsRUFJdEIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsa0JBQWtCLEdBQ25CLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywyQ0FBMkMsRUFDM0MsNkJBQTZCLEVBQzdCLHNCQUFzQixFQUN0QiwwQkFBMEIsR0FDM0IsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFckQsT0FBTyxFQUFFLGdCQUFnQixFQUFtQixNQUFNLGtDQUFrQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFN0YsTUFBTSxPQUFPLFVBQVU7SUFJckIsWUFDRSxVQUFrQixFQUNsQixNQUEyQixFQUNuQixhQUF5QixJQUFJLGdCQUFnQixFQUFFO1FBQS9DLGVBQVUsR0FBVixVQUFVLENBQXFDO1FBTmpELFdBQU0sR0FBRyxJQUFJLGFBQWEsQ0FBQyxJQUFJLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQVEvRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVB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
@@ -1,5 +1,6 @@
1
+ import { type ProvingJobBroker } from '@aztec/circuit-types';
1
2
  import { type TelemetryClient } from '@aztec/telemetry-client';
2
3
  import { type ProverClientConfig } from '../config.js';
3
4
  import { TxProver } from './tx-prover.js';
4
- export declare function createProverClient(config: ProverClientConfig, telemetry?: TelemetryClient): Promise<TxProver>;
5
+ export declare function createProverClient(config: ProverClientConfig, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<TxProver>;
5
6
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/tx-prover/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,SAAS,GAAE,eAA2C,qBAEpH"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/tx-prover/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,eAA2C,qBAGvD"}
@@ -1,6 +1,6 @@
1
1
  import { NoopTelemetryClient } from '@aztec/telemetry-client/noop';
2
2
  import { TxProver } from './tx-prover.js';
3
- export function createProverClient(config, telemetry = new NoopTelemetryClient()) {
4
- return TxProver.new(config, telemetry);
3
+ export function createProverClient(config, broker, telemetry = new NoopTelemetryClient()) {
4
+ return TxProver.new(config, broker, telemetry);
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eC1wcm92ZXIvZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUduRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUMsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE1BQTBCLEVBQUUsWUFBNkIsSUFBSSxtQkFBbUIsRUFBRTtJQUNuSCxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3pDLENBQUMifQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eC1wcm92ZXIvZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUduRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUMsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxNQUEwQixFQUMxQixNQUF3QixFQUN4QixZQUE2QixJQUFJLG1CQUFtQixFQUFFO0lBRXRELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2pELENBQUMifQ==
@@ -1,4 +1,5 @@
1
- import { type EpochProver, type EpochProverManager, type MerkleTreeWriteOperations, type ProvingJobSource } from '@aztec/circuit-types/interfaces';
1
+ import { type ACVMConfig, type BBConfig } from '@aztec/bb-prover';
2
+ import { type ActualProverConfig, type EpochProver, type EpochProverManager, type MerkleTreeWriteOperations, type ProverCache, type ProvingJobBroker, type ProvingJobConsumer, type ServerCircuitProver } from '@aztec/circuit-types/interfaces';
2
3
  import { Fr } from '@aztec/circuits.js';
3
4
  import { type TelemetryClient } from '@aztec/telemetry-client';
4
5
  import { type ProverClientConfig } from '../config.js';
@@ -9,11 +10,14 @@ import { type ProverClientConfig } from '../config.js';
9
10
  export declare class TxProver implements EpochProverManager {
10
11
  private config;
11
12
  private telemetry;
12
- private agent?;
13
- private queue;
13
+ private orchestratorClient;
14
+ private agentClient?;
15
+ private log;
14
16
  private running;
17
+ private agents;
18
+ private cacheDir?;
15
19
  private constructor();
16
- createEpochProver(db: MerkleTreeWriteOperations): EpochProver;
20
+ createEpochProver(db: MerkleTreeWriteOperations, cache?: ProverCache): EpochProver;
17
21
  getProverId(): Fr;
18
22
  updateProverConfig(config: Partial<ProverClientConfig>): Promise<void>;
19
23
  /**
@@ -31,8 +35,10 @@ export declare class TxProver implements EpochProverManager {
31
35
  * @param worldStateSynchronizer - An instance of the world state
32
36
  * @returns An instance of the prover, constructed and started.
33
37
  */
34
- static new(config: ProverClientConfig, telemetry: TelemetryClient): Promise<TxProver>;
35
- private static buildCircuitProver;
36
- getProvingJobSource(): ProvingJobSource;
38
+ static new(config: ProverClientConfig, broker: ProvingJobBroker, telemetry: TelemetryClient): Promise<TxProver>;
39
+ getProvingJobSource(): ProvingJobConsumer;
40
+ private createAndStartAgents;
41
+ private stopAgents;
37
42
  }
43
+ export declare function buildServerCircuitProver(config: ActualProverConfig & ACVMConfig & BBConfig, telemetry: TelemetryClient): Promise<ServerCircuitProver>;
38
44
  //# sourceMappingURL=tx-prover.d.ts.map