@aztec/prover-client 0.63.1 → 0.64.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/mocks/fixtures.d.ts.map +1 -1
- package/dest/mocks/fixtures.js +3 -3
- package/dest/mocks/test_context.d.ts +6 -8
- package/dest/mocks/test_context.d.ts.map +1 -1
- package/dest/mocks/test_context.js +17 -15
- package/dest/orchestrator/block-building-helpers.d.ts +2 -2
- package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
- package/dest/orchestrator/block-building-helpers.js +88 -60
- package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/tx-proving-state.js +8 -2
- package/dest/proving_broker/proving_agent.d.ts +33 -0
- package/dest/proving_broker/proving_agent.d.ts.map +1 -0
- package/dest/proving_broker/proving_agent.js +74 -0
- package/dest/proving_broker/proving_job_controller.d.ts +25 -0
- package/dest/proving_broker/proving_job_controller.d.ts.map +1 -0
- package/dest/proving_broker/proving_job_controller.js +112 -0
- package/dest/test/mock_prover.d.ts +12 -12
- package/dest/test/mock_prover.d.ts.map +1 -1
- package/dest/test/mock_prover.js +12 -12
- package/package.json +12 -12
- package/src/mocks/fixtures.ts +2 -9
- package/src/mocks/test_context.ts +38 -23
- package/src/orchestrator/block-building-helpers.ts +141 -94
- package/src/orchestrator/tx-proving-state.ts +9 -0
- package/src/proving_broker/proving_agent.ts +90 -0
- package/src/proving_broker/proving_job_controller.ts +148 -0
- package/src/test/mock_prover.ts +50 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EncryptedNoteTxL2Logs, EncryptedTxL2Logs, UnencryptedTxL2Logs, } from '@aztec/circuit-types';
|
|
2
|
-
import { AVM_VK_INDEX, AvmProofData, Fr, PrivateBaseRollupInputs, PrivateTubeData, PublicBaseRollupInputs, PublicTubeData, TUBE_VK_INDEX, TubeInputs, VkWitnessData, } from '@aztec/circuits.js';
|
|
2
|
+
import { AVM_VK_INDEX, AvmProofData, Fr, PrivateBaseRollupHints, PrivateBaseRollupInputs, PrivateTubeData, PublicBaseRollupHints, PublicBaseRollupInputs, PublicTubeData, TUBE_VK_INDEX, TubeInputs, VkWitnessData, } from '@aztec/circuits.js';
|
|
3
3
|
import { getVKIndex, getVKSiblingPath } from '@aztec/noir-protocol-circuits-types';
|
|
4
4
|
/**
|
|
5
5
|
* Helper class to manage the proving cycle of a transaction
|
|
@@ -33,6 +33,9 @@ export class TxProvingState {
|
|
|
33
33
|
}
|
|
34
34
|
const vkData = this.getTubeVkData();
|
|
35
35
|
const tubeData = new PrivateTubeData(this.processedTx.data.toKernelCircuitPublicInputs(), this.tube.proof, vkData);
|
|
36
|
+
if (!(this.baseRollupHints instanceof PrivateBaseRollupHints)) {
|
|
37
|
+
throw new Error('Mismatched base rollup hints, expected private base rollup hints');
|
|
38
|
+
}
|
|
36
39
|
return new PrivateBaseRollupInputs(tubeData, this.baseRollupHints);
|
|
37
40
|
}
|
|
38
41
|
getPublicBaseInputs() {
|
|
@@ -47,6 +50,9 @@ export class TxProvingState {
|
|
|
47
50
|
}
|
|
48
51
|
const tubeData = new PublicTubeData(this.processedTx.data.toPublicKernelCircuitPublicInputs(), this.tube.proof, this.getTubeVkData());
|
|
49
52
|
const avmProofData = new AvmProofData(this.processedTx.avmProvingRequest.inputs.output, this.avm.proof, this.getAvmVkData());
|
|
53
|
+
if (!(this.baseRollupHints instanceof PublicBaseRollupHints)) {
|
|
54
|
+
throw new Error('Mismatched base rollup hints, expected public base rollup hints');
|
|
55
|
+
}
|
|
50
56
|
return new PublicBaseRollupInputs(tubeData, avmProofData, this.baseRollupHints);
|
|
51
57
|
}
|
|
52
58
|
assignTubeProof(tubeProofAndVk) {
|
|
@@ -103,4 +109,4 @@ export class TxProvingState {
|
|
|
103
109
|
return new VkWitnessData(this.avm.verificationKey, AVM_VK_INDEX, vkPath);
|
|
104
110
|
}
|
|
105
111
|
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHgtcHJvdmluZy1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcmNoZXN0cmF0b3IvdHgtcHJvdmluZy1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUlqQixtQkFBbUIsR0FDcEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBRUwsWUFBWSxFQUVaLFlBQVksRUFFWixFQUFFLEVBQ0Ysc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2QixlQUFlLEVBQ2YscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixjQUFjLEVBRWQsYUFBYSxFQUNiLFVBQVUsRUFDVixhQUFhLEdBQ2QsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFbkY7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBSXpCLFlBQ2tCLFdBQXdCLEVBQ3ZCLGVBQWdDLEVBQ2pDLGFBQXdEO1FBRnhELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBMkM7SUFDdkUsQ0FBQztJQUVKLElBQUksZUFBZTtRQUNqQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDO0lBQzlDLENBQUM7SUFFTSxLQUFLO1FBQ1YsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sWUFBWTtRQUNq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
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type ProvingRequestType, type ServerCircuitProver } from '@aztec/circuit-types';
|
|
2
|
+
import { type ProvingJobConsumer } from './proving_broker_interface.js';
|
|
3
|
+
/**
|
|
4
|
+
* A helper class that encapsulates a circuit prover and connects it to a job source.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ProvingAgent {
|
|
7
|
+
/** The source of proving jobs */
|
|
8
|
+
private jobSource;
|
|
9
|
+
/** The prover implementation to defer jobs to */
|
|
10
|
+
private circuitProver;
|
|
11
|
+
/** Optional list of allowed proof types to build */
|
|
12
|
+
private proofAllowList?;
|
|
13
|
+
/** How long to wait between jobs */
|
|
14
|
+
private pollIntervalMs;
|
|
15
|
+
private log;
|
|
16
|
+
private currentJobController?;
|
|
17
|
+
private runningPromise;
|
|
18
|
+
constructor(
|
|
19
|
+
/** The source of proving jobs */
|
|
20
|
+
jobSource: ProvingJobConsumer,
|
|
21
|
+
/** The prover implementation to defer jobs to */
|
|
22
|
+
circuitProver: ServerCircuitProver,
|
|
23
|
+
/** Optional list of allowed proof types to build */
|
|
24
|
+
proofAllowList?: ProvingRequestType[] | undefined,
|
|
25
|
+
/** How long to wait between jobs */
|
|
26
|
+
pollIntervalMs?: number, log?: import("@aztec/foundation/log").Logger);
|
|
27
|
+
setCircuitProver(circuitProver: ServerCircuitProver): void;
|
|
28
|
+
isRunning(): boolean;
|
|
29
|
+
start(): void;
|
|
30
|
+
stop(): Promise<void>;
|
|
31
|
+
private safeWork;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=proving_agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proving_agent.d.ts","sourceRoot":"","sources":["../../src/proving_broker/proving_agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAEzB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGxE;;GAEG;AACH,qBAAa,YAAY;IAKrB,iCAAiC;IACjC,OAAO,CAAC,SAAS;IACjB,iDAAiD;IACjD,OAAO,CAAC,aAAa;IACrB,oDAAoD;IACpD,OAAO,CAAC,cAAc,CAAC;IACvB,oCAAoC;IACpC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,GAAG;IAZb,OAAO,CAAC,oBAAoB,CAAC,CAAuB;IACpD,OAAO,CAAC,cAAc,CAAiB;;IAGrC,iCAAiC;IACzB,SAAS,EAAE,kBAAkB;IACrC,iDAAiD;IACzC,aAAa,EAAE,mBAAmB;IAC1C,oDAAoD;IAC5C,cAAc,CAAC,kCAA2B;IAClD,oCAAoC;IAC5B,cAAc,SAAO,EACrB,GAAG,yCAA0D;IAKhE,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,IAAI;IAI1D,SAAS,IAAI,OAAO;IAIpB,KAAK,IAAI,IAAI;IAIP,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKlC,OAAO,CAAC,QAAQ,CAsCd;CACH"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ProvingError, } from '@aztec/circuit-types';
|
|
2
|
+
import { createDebugLogger } from '@aztec/foundation/log';
|
|
3
|
+
import { RunningPromise } from '@aztec/foundation/running-promise';
|
|
4
|
+
import { ProvingJobController, ProvingJobStatus } from './proving_job_controller.js';
|
|
5
|
+
/**
|
|
6
|
+
* A helper class that encapsulates a circuit prover and connects it to a job source.
|
|
7
|
+
*/
|
|
8
|
+
export class ProvingAgent {
|
|
9
|
+
constructor(
|
|
10
|
+
/** The source of proving jobs */
|
|
11
|
+
jobSource,
|
|
12
|
+
/** The prover implementation to defer jobs to */
|
|
13
|
+
circuitProver,
|
|
14
|
+
/** Optional list of allowed proof types to build */
|
|
15
|
+
proofAllowList,
|
|
16
|
+
/** How long to wait between jobs */
|
|
17
|
+
pollIntervalMs = 1000, log = createDebugLogger('aztec:proving-broker:proving-agent')) {
|
|
18
|
+
this.jobSource = jobSource;
|
|
19
|
+
this.circuitProver = circuitProver;
|
|
20
|
+
this.proofAllowList = proofAllowList;
|
|
21
|
+
this.pollIntervalMs = pollIntervalMs;
|
|
22
|
+
this.log = log;
|
|
23
|
+
this.safeWork = async () => {
|
|
24
|
+
try {
|
|
25
|
+
// every tick we need to
|
|
26
|
+
// (1) either do a heartbeat, telling the broker that we're working
|
|
27
|
+
// (2) get a new job
|
|
28
|
+
// If during (1) the broker returns a new job that means we can cancel the current job and start the new one
|
|
29
|
+
let maybeJob;
|
|
30
|
+
if (this.currentJobController?.getStatus() === ProvingJobStatus.PROVING) {
|
|
31
|
+
maybeJob = await this.jobSource.reportProvingJobProgress(this.currentJobController.getJobId(), this.currentJobController.getStartedAt(), { allowList: this.proofAllowList });
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
maybeJob = await this.jobSource.getProvingJob({ allowList: this.proofAllowList });
|
|
35
|
+
}
|
|
36
|
+
if (!maybeJob) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
if (this.currentJobController?.getStatus() === ProvingJobStatus.PROVING) {
|
|
40
|
+
this.currentJobController?.abort();
|
|
41
|
+
}
|
|
42
|
+
const { job, time } = maybeJob;
|
|
43
|
+
this.currentJobController = new ProvingJobController(job, time, this.circuitProver, (err, result) => {
|
|
44
|
+
if (err) {
|
|
45
|
+
const retry = err.name === ProvingError.NAME ? err.retry : false;
|
|
46
|
+
return this.jobSource.reportProvingJobError(job.id, err, retry);
|
|
47
|
+
}
|
|
48
|
+
else if (result) {
|
|
49
|
+
return this.jobSource.reportProvingJobSuccess(job.id, result);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
this.currentJobController.start();
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
this.log.error(`Error in ProvingAgent: ${String(err)}`);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
this.runningPromise = new RunningPromise(this.safeWork, this.pollIntervalMs);
|
|
59
|
+
}
|
|
60
|
+
setCircuitProver(circuitProver) {
|
|
61
|
+
this.circuitProver = circuitProver;
|
|
62
|
+
}
|
|
63
|
+
isRunning() {
|
|
64
|
+
return this.runningPromise?.isRunning() ?? false;
|
|
65
|
+
}
|
|
66
|
+
start() {
|
|
67
|
+
this.runningPromise.start();
|
|
68
|
+
}
|
|
69
|
+
async stop() {
|
|
70
|
+
this.currentJobController?.abort();
|
|
71
|
+
await this.runningPromise.stop();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19hZ2VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aW5nX2Jyb2tlci9wcm92aW5nX2FnZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEdBSWIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFckY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUl2QjtJQUNFLGlDQUFpQztJQUN6QixTQUE2QjtJQUNyQyxpREFBaUQ7SUFDekMsYUFBa0M7SUFDMUMsb0RBQW9EO0lBQzVDLGNBQTBDO0lBQ2xELG9DQUFvQztJQUM1QixpQkFBaUIsSUFBSSxFQUNyQixNQUFNLGlCQUFpQixDQUFDLG9DQUFvQyxDQUFDO1FBUDdELGNBQVMsR0FBVCxTQUFTLENBQW9CO1FBRTdCLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUVsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBNEI7UUFFMUMsbUJBQWMsR0FBZCxjQUFjLENBQU87UUFDckIsUUFBRyxHQUFILEdBQUcsQ0FBMEQ7UUFzQi9ELGFBQVEsR0FBRyxLQUFLLElBQUksRUFBRTtZQUM1QixJQUFJLENBQUM7Z0JBQ0gsd0JBQXdCO2dCQUN4QixtRUFBbUU7Z0JBQ25FLG9CQUFvQjtnQkFDcEIsNEdBQTRHO2dCQUM1RyxJQUFJLFFBQXlELENBQUM7Z0JBQzlELElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxLQUFLLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUN4RSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUN0RCxJQUFJLENB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
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type ServerCircuitProver, type V2ProofOutput, type V2ProvingJob, type V2ProvingJobId } from '@aztec/circuit-types';
|
|
2
|
+
export declare enum ProvingJobStatus {
|
|
3
|
+
IDLE = "idle",
|
|
4
|
+
PROVING = "proving",
|
|
5
|
+
DONE = "done"
|
|
6
|
+
}
|
|
7
|
+
type ProvingJobCompletionCallback = (error: Error | undefined, result: V2ProofOutput | undefined) => void | Promise<void>;
|
|
8
|
+
export declare class ProvingJobController {
|
|
9
|
+
private job;
|
|
10
|
+
private startedAt;
|
|
11
|
+
private circuitProver;
|
|
12
|
+
private onComplete;
|
|
13
|
+
private status;
|
|
14
|
+
private promise?;
|
|
15
|
+
private abortController;
|
|
16
|
+
constructor(job: V2ProvingJob, startedAt: number, circuitProver: ServerCircuitProver, onComplete: ProvingJobCompletionCallback);
|
|
17
|
+
start(): void;
|
|
18
|
+
getStatus(): ProvingJobStatus;
|
|
19
|
+
abort(): void;
|
|
20
|
+
getJobId(): V2ProvingJobId;
|
|
21
|
+
getStartedAt(): number;
|
|
22
|
+
private generateProof;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=proving_job_controller.d.ts.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
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 = {}));
|
|
8
|
+
export class ProvingJobController {
|
|
9
|
+
constructor(job, startedAt, circuitProver, onComplete) {
|
|
10
|
+
this.job = job;
|
|
11
|
+
this.startedAt = startedAt;
|
|
12
|
+
this.circuitProver = circuitProver;
|
|
13
|
+
this.onComplete = onComplete;
|
|
14
|
+
this.status = ProvingJobStatus.IDLE;
|
|
15
|
+
this.abortController = new AbortController();
|
|
16
|
+
}
|
|
17
|
+
start() {
|
|
18
|
+
if (this.status !== ProvingJobStatus.IDLE) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this.status = ProvingJobStatus.PROVING;
|
|
22
|
+
this.promise = this.generateProof()
|
|
23
|
+
.then(result => {
|
|
24
|
+
this.status = ProvingJobStatus.DONE;
|
|
25
|
+
return this.onComplete(undefined, result);
|
|
26
|
+
}, error => {
|
|
27
|
+
this.status = ProvingJobStatus.DONE;
|
|
28
|
+
if (error.name === 'AbortError') {
|
|
29
|
+
// Ignore abort errors
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
return this.onComplete(error, undefined);
|
|
33
|
+
})
|
|
34
|
+
.catch(_ => {
|
|
35
|
+
// ignore completion errors
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
getStatus() {
|
|
39
|
+
return this.status;
|
|
40
|
+
}
|
|
41
|
+
abort() {
|
|
42
|
+
if (this.status !== ProvingJobStatus.PROVING) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
this.abortController.abort();
|
|
46
|
+
}
|
|
47
|
+
getJobId() {
|
|
48
|
+
return this.job.id;
|
|
49
|
+
}
|
|
50
|
+
getStartedAt() {
|
|
51
|
+
return this.startedAt;
|
|
52
|
+
}
|
|
53
|
+
async generateProof() {
|
|
54
|
+
const { type, inputs } = this.job;
|
|
55
|
+
const signal = this.abortController.signal;
|
|
56
|
+
switch (type) {
|
|
57
|
+
case ProvingRequestType.PUBLIC_VM: {
|
|
58
|
+
const value = await this.circuitProver.getAvmProof(inputs, signal);
|
|
59
|
+
return { type, value };
|
|
60
|
+
}
|
|
61
|
+
case ProvingRequestType.PRIVATE_BASE_ROLLUP: {
|
|
62
|
+
const value = await this.circuitProver.getPrivateBaseRollupProof(inputs, signal);
|
|
63
|
+
return { type, value };
|
|
64
|
+
}
|
|
65
|
+
case ProvingRequestType.PUBLIC_BASE_ROLLUP: {
|
|
66
|
+
const value = await this.circuitProver.getPublicBaseRollupProof(inputs, signal);
|
|
67
|
+
return { type, value };
|
|
68
|
+
}
|
|
69
|
+
case ProvingRequestType.MERGE_ROLLUP: {
|
|
70
|
+
const value = await this.circuitProver.getMergeRollupProof(inputs, signal);
|
|
71
|
+
return { type, value };
|
|
72
|
+
}
|
|
73
|
+
case ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP: {
|
|
74
|
+
const value = await this.circuitProver.getEmptyBlockRootRollupProof(inputs, signal);
|
|
75
|
+
return { type, value };
|
|
76
|
+
}
|
|
77
|
+
case ProvingRequestType.BLOCK_ROOT_ROLLUP: {
|
|
78
|
+
const value = await this.circuitProver.getBlockRootRollupProof(inputs, signal);
|
|
79
|
+
return { type, value };
|
|
80
|
+
}
|
|
81
|
+
case ProvingRequestType.BLOCK_MERGE_ROLLUP: {
|
|
82
|
+
const value = await this.circuitProver.getBlockMergeRollupProof(inputs, signal);
|
|
83
|
+
return { type, value };
|
|
84
|
+
}
|
|
85
|
+
case ProvingRequestType.ROOT_ROLLUP: {
|
|
86
|
+
const value = await this.circuitProver.getRootRollupProof(inputs, signal);
|
|
87
|
+
return { type, value };
|
|
88
|
+
}
|
|
89
|
+
case ProvingRequestType.BASE_PARITY: {
|
|
90
|
+
const value = await this.circuitProver.getBaseParityProof(inputs, signal);
|
|
91
|
+
return { type, value };
|
|
92
|
+
}
|
|
93
|
+
case ProvingRequestType.ROOT_PARITY: {
|
|
94
|
+
const value = await this.circuitProver.getRootParityProof(inputs, signal);
|
|
95
|
+
return { type, value };
|
|
96
|
+
}
|
|
97
|
+
case ProvingRequestType.PRIVATE_KERNEL_EMPTY: {
|
|
98
|
+
const value = await this.circuitProver.getEmptyPrivateKernelProof(inputs, signal);
|
|
99
|
+
return { type, value };
|
|
100
|
+
}
|
|
101
|
+
case ProvingRequestType.TUBE_PROOF: {
|
|
102
|
+
const value = await this.circuitProver.getTubeProof(inputs, signal);
|
|
103
|
+
return { type, value };
|
|
104
|
+
}
|
|
105
|
+
default: {
|
|
106
|
+
const _exhaustive = type;
|
|
107
|
+
return Promise.reject(new Error(`Invalid proof request type: ${type}`));
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19qb2JfY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aW5nX2Jyb2tlci9wcm92aW5nX2pvYl9jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxrQkFBa0IsR0FLbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixNQUFNLENBQU4sSUFBWSxnQkFJWDtBQUpELFdBQVksZ0JBQWdCO0lBQzFCLGlDQUFhLENBQUE7SUFDYix1Q0FBbUIsQ0FBQTtJQUNuQixpQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFJM0I7QUFPRCxNQUFNLE9BQU8sb0JBQW9CO0lBSy9CLFlBQ1UsR0FBaUIsRUFDakIsU0FBaUIsRUFDakIsYUFBa0MsRUFDbEMsVUFBd0M7UUFIeEMsUUFBRyxHQUFILEdBQUcsQ0FBYztRQUNqQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQVIxQyxXQUFNLEdBQXFCLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUVqRCxvQkFBZSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFPN0MsQ0FBQztJQUVHLEtBQUs7UUFDVixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUU7YUFDaEMsSUFBSSxDQUNILE1BQU0sQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7WUFDcEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFB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
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { type ProofAndVerificationKey, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec/circuit-types';
|
|
2
|
-
import { type BaseOrMergeRollupPublicInputs, type BlockRootOrBlockMergePublicInputs, type KernelCircuitPublicInputs, type RootRollupPublicInputs, TUBE_PROOF_LENGTH } from '@aztec/circuits.js';
|
|
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
3
|
export declare class MockProver implements ServerCircuitProver {
|
|
4
4
|
constructor();
|
|
5
|
-
getAvmProof(): Promise<ProofAndVerificationKey<4291>>;
|
|
6
|
-
getBaseParityProof(): Promise<PublicInputsAndRecursiveProof<import("@aztec/circuits.js").ParityPublicInputs, 463>>;
|
|
7
|
-
getRootParityProof(): Promise<PublicInputsAndRecursiveProof<import("@aztec/circuits.js").ParityPublicInputs, 463>>;
|
|
8
|
-
getPrivateBaseRollupProof(): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
9
|
-
getPublicBaseRollupProof(): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
10
|
-
getMergeRollupProof(): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
11
|
-
getBlockMergeRollupProof(): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, 463>>;
|
|
12
|
-
getEmptyBlockRootRollupProof(): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs>>;
|
|
13
|
-
getBlockRootRollupProof(): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs>>;
|
|
14
|
-
getEmptyPrivateKernelProof(): Promise<PublicInputsAndRecursiveProof<KernelCircuitPublicInputs>>;
|
|
15
|
-
getRootRollupProof(): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>>;
|
|
5
|
+
getAvmProof(_inputs: AvmCircuitInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<ProofAndVerificationKey<4291>>;
|
|
6
|
+
getBaseParityProof(_inputs: BaseParityInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<import("@aztec/circuits.js").ParityPublicInputs, 463>>;
|
|
7
|
+
getRootParityProof(_inputs: RootParityInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<import("@aztec/circuits.js").ParityPublicInputs, 463>>;
|
|
8
|
+
getPrivateBaseRollupProof(_baseRollupInput: PrivateBaseRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
9
|
+
getPublicBaseRollupProof(_inputs: PublicBaseRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
10
|
+
getMergeRollupProof(_input: MergeRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs>>;
|
|
11
|
+
getBlockMergeRollupProof(_input: BlockMergeRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, 463>>;
|
|
12
|
+
getEmptyBlockRootRollupProof(_input: EmptyBlockRootRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs>>;
|
|
13
|
+
getBlockRootRollupProof(_input: BlockRootRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs>>;
|
|
14
|
+
getEmptyPrivateKernelProof(_inputs: PrivateKernelEmptyInputData, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<KernelCircuitPublicInputs>>;
|
|
15
|
+
getRootRollupProof(_input: RootRollupInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>>;
|
|
16
16
|
getTubeProof(): Promise<ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>>;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=mock_prover.d.ts.map
|
|
@@ -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,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,
|
|
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"}
|
package/dest/test/mock_prover.js
CHANGED
|
@@ -3,41 +3,41 @@ import { AVM_PROOF_LENGTH_IN_FIELDS, AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS, NEST
|
|
|
3
3
|
import { makeBaseOrMergeRollupPublicInputs, makeBlockRootOrBlockMergeRollupPublicInputs, makeKernelCircuitPublicInputs, makeParityPublicInputs, makeRootRollupPublicInputs, } from '@aztec/circuits.js/testing';
|
|
4
4
|
export class MockProver {
|
|
5
5
|
constructor() { }
|
|
6
|
-
getAvmProof() {
|
|
6
|
+
getAvmProof(_inputs, _signal, _epochNumber) {
|
|
7
7
|
return Promise.resolve(makeProofAndVerificationKey(makeEmptyRecursiveProof(AVM_PROOF_LENGTH_IN_FIELDS), VerificationKeyData.makeFake(AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS)));
|
|
8
8
|
}
|
|
9
|
-
getBaseParityProof() {
|
|
9
|
+
getBaseParityProof(_inputs, _signal, _epochNumber) {
|
|
10
10
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeParityPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
11
11
|
}
|
|
12
|
-
getRootParityProof() {
|
|
12
|
+
getRootParityProof(_inputs, _signal, _epochNumber) {
|
|
13
13
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeParityPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
14
14
|
}
|
|
15
|
-
getPrivateBaseRollupProof() {
|
|
15
|
+
getPrivateBaseRollupProof(_baseRollupInput, _signal, _epochNumber) {
|
|
16
16
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBaseOrMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
17
17
|
}
|
|
18
|
-
getPublicBaseRollupProof() {
|
|
18
|
+
getPublicBaseRollupProof(_inputs, _signal, _epochNumber) {
|
|
19
19
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBaseOrMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
20
20
|
}
|
|
21
|
-
getMergeRollupProof() {
|
|
21
|
+
getMergeRollupProof(_input, _signal, _epochNumber) {
|
|
22
22
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBaseOrMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
23
23
|
}
|
|
24
|
-
getBlockMergeRollupProof() {
|
|
24
|
+
getBlockMergeRollupProof(_input, _signal, _epochNumber) {
|
|
25
25
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRootOrBlockMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
26
26
|
}
|
|
27
|
-
getEmptyBlockRootRollupProof() {
|
|
27
|
+
getEmptyBlockRootRollupProof(_input, _signal, _epochNumber) {
|
|
28
28
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRootOrBlockMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
29
29
|
}
|
|
30
|
-
getBlockRootRollupProof() {
|
|
30
|
+
getBlockRootRollupProof(_input, _signal, _epochNumber) {
|
|
31
31
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRootOrBlockMergeRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
32
32
|
}
|
|
33
|
-
getEmptyPrivateKernelProof() {
|
|
33
|
+
getEmptyPrivateKernelProof(_inputs, _signal, _epochNumber) {
|
|
34
34
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeKernelCircuitPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
35
35
|
}
|
|
36
|
-
getRootRollupProof() {
|
|
36
|
+
getRootRollupProof(_input, _signal, _epochNumber) {
|
|
37
37
|
return Promise.resolve(makePublicInputsAndRecursiveProof(makeRootRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
38
38
|
}
|
|
39
39
|
getTubeProof() {
|
|
40
40
|
return Promise.resolve(makeProofAndVerificationKey(makeRecursiveProof(TUBE_PROOF_LENGTH), VerificationKeyData.makeFake()));
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19wcm92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2NrX3Byb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUwsMkJBQTJCLEVBQzNCLGlDQUFpQyxHQUNsQyxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIscUNBQXFDLEVBVXJDLDZCQUE2QixFQUk3QixzQkFBc0IsRUFJdEIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQix1QkFBdUIsRUFDdkIsa0JBQWtCLEdBQ25CLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywyQ0FBMkMsRUFDM0MsNkJBQTZCLEVBQzdCLHNCQUFzQixFQUN0QiwwQkFBMEIsR0FDM0IsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxNQUFNLE9BQU8sVUFBVTtJQUNyQixnQkFBZSxDQUFDO0lBRWhCLFdBQVcsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDakYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQiwyQkFBMkIsQ0FDekIsdUJBQXVCLENBQUMsMEJBQTBCLENBQUMsRUFDbkQsbUJBQW1CLENBQUMsUUFBUSxDQUFDLHFDQUFxQyxDQUFDLENBQ3BFLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDeEYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQixpQ0FBaUMsQ0FDL0Isc0JBQXNCLEVBQUUsRUFDeEIsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsRUFDMUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQ25DLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUF5QixFQUFFLE9BQXFCLEVBQUUsWUFBcUI7UUFDeEYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQixpQ0FBaUMs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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/prover-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.64.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"formatting": "run -T prettier --check ./src && run -T eslint ./src",
|
|
27
27
|
"formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
|
|
28
28
|
"bb": "node --no-warnings ./dest/bb/index.js",
|
|
29
|
-
"test": "
|
|
29
|
+
"test": "DEBUG_COLORS=1 NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --testTimeout=1500000 --forceExit",
|
|
30
30
|
"test:debug": "LOG_LEVEL=debug DEBUG_COLORS=1 NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --testTimeout=1500000 --forceExit --testNamePattern prover/bb_prover/parity"
|
|
31
31
|
},
|
|
32
32
|
"jest": {
|
|
@@ -64,16 +64,16 @@
|
|
|
64
64
|
]
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@aztec/bb-prover": "0.
|
|
68
|
-
"@aztec/circuit-types": "0.
|
|
69
|
-
"@aztec/circuits.js": "0.
|
|
70
|
-
"@aztec/foundation": "0.
|
|
71
|
-
"@aztec/kv-store": "0.
|
|
72
|
-
"@aztec/noir-protocol-circuits-types": "0.
|
|
73
|
-
"@aztec/protocol-contracts": "0.
|
|
74
|
-
"@aztec/simulator": "0.
|
|
75
|
-
"@aztec/telemetry-client": "0.
|
|
76
|
-
"@aztec/world-state": "0.
|
|
67
|
+
"@aztec/bb-prover": "0.64.0",
|
|
68
|
+
"@aztec/circuit-types": "0.64.0",
|
|
69
|
+
"@aztec/circuits.js": "0.64.0",
|
|
70
|
+
"@aztec/foundation": "0.64.0",
|
|
71
|
+
"@aztec/kv-store": "0.64.0",
|
|
72
|
+
"@aztec/noir-protocol-circuits-types": "0.64.0",
|
|
73
|
+
"@aztec/protocol-contracts": "0.64.0",
|
|
74
|
+
"@aztec/simulator": "0.64.0",
|
|
75
|
+
"@aztec/telemetry-client": "0.64.0",
|
|
76
|
+
"@aztec/world-state": "0.64.0",
|
|
77
77
|
"@noir-lang/types": "portal:../../noir/packages/types",
|
|
78
78
|
"commander": "^12.1.0",
|
|
79
79
|
"lodash.chunk": "^4.2.0",
|
package/src/mocks/fixtures.ts
CHANGED
|
@@ -13,10 +13,7 @@ import {
|
|
|
13
13
|
GlobalVariables,
|
|
14
14
|
MAX_NOTE_HASHES_PER_TX,
|
|
15
15
|
MAX_NULLIFIERS_PER_TX,
|
|
16
|
-
MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
|
|
17
16
|
NULLIFIER_TREE_HEIGHT,
|
|
18
|
-
PUBLIC_DATA_SUBTREE_HEIGHT,
|
|
19
|
-
PublicDataWrite,
|
|
20
17
|
} from '@aztec/circuits.js';
|
|
21
18
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
22
19
|
import { randomBytes } from '@aztec/foundation/crypto';
|
|
@@ -114,12 +111,8 @@ export const updateExpectedTreesFromTxs = async (db: MerkleTreeWriteOperations,
|
|
|
114
111
|
for (const tx of txs) {
|
|
115
112
|
await db.batchInsert(
|
|
116
113
|
MerkleTreeId.PUBLIC_DATA_TREE,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
PublicDataWrite.empty(),
|
|
120
|
-
MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
|
|
121
|
-
).map(write => write.toBuffer()),
|
|
122
|
-
PUBLIC_DATA_SUBTREE_HEIGHT,
|
|
114
|
+
tx.txEffect.publicDataWrites.map(write => write.toBuffer()),
|
|
115
|
+
0,
|
|
123
116
|
);
|
|
124
117
|
}
|
|
125
118
|
};
|