@aztec-labs/prover-client 6.0.0-nightly.20260829
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/README.md +1 -0
- package/dest/config.d.ts +17 -0
- package/dest/config.d.ts.map +1 -0
- package/dest/config.js +63 -0
- package/dest/index.d.ts +4 -0
- package/dest/index.d.ts.map +1 -0
- package/dest/index.js +2 -0
- package/dest/light/index.d.ts +2 -0
- package/dest/light/index.d.ts.map +1 -0
- package/dest/light/index.js +1 -0
- package/dest/light/lightweight_checkpoint_builder.d.ts +58 -0
- package/dest/light/lightweight_checkpoint_builder.d.ts.map +1 -0
- package/dest/light/lightweight_checkpoint_builder.js +243 -0
- package/dest/mocks/fixtures.d.ts +20 -0
- package/dest/mocks/fixtures.d.ts.map +1 -0
- package/dest/mocks/fixtures.js +96 -0
- package/dest/mocks/test_context.d.ts +93 -0
- package/dest/mocks/test_context.d.ts.map +1 -0
- package/dest/mocks/test_context.js +354 -0
- package/dest/orchestrator/block-building-helpers.d.ts +67 -0
- package/dest/orchestrator/block-building-helpers.d.ts.map +1 -0
- package/dest/orchestrator/block-building-helpers.js +274 -0
- package/dest/orchestrator/block-proving-state.d.ts +107 -0
- package/dest/orchestrator/block-proving-state.d.ts.map +1 -0
- package/dest/orchestrator/block-proving-state.js +339 -0
- package/dest/orchestrator/checkpoint-proving-state.d.ts +67 -0
- package/dest/orchestrator/checkpoint-proving-state.d.ts.map +1 -0
- package/dest/orchestrator/checkpoint-proving-state.js +175 -0
- package/dest/orchestrator/checkpoint-sub-tree-orchestrator.d.ts +169 -0
- package/dest/orchestrator/checkpoint-sub-tree-orchestrator.d.ts.map +1 -0
- package/dest/orchestrator/checkpoint-sub-tree-orchestrator.js +1047 -0
- package/dest/orchestrator/chonk-cache.d.ts +39 -0
- package/dest/orchestrator/chonk-cache.d.ts.map +1 -0
- package/dest/orchestrator/chonk-cache.js +80 -0
- package/dest/orchestrator/index.d.ts +4 -0
- package/dest/orchestrator/index.d.ts.map +1 -0
- package/dest/orchestrator/index.js +3 -0
- package/dest/orchestrator/orchestrator_metrics.d.ts +8 -0
- package/dest/orchestrator/orchestrator_metrics.d.ts.map +1 -0
- package/dest/orchestrator/orchestrator_metrics.js +13 -0
- package/dest/orchestrator/proving-scheduler.d.ts +81 -0
- package/dest/orchestrator/proving-scheduler.d.ts.map +1 -0
- package/dest/orchestrator/proving-scheduler.js +120 -0
- package/dest/orchestrator/top-tree-orchestrator.d.ts +89 -0
- package/dest/orchestrator/top-tree-orchestrator.d.ts.map +1 -0
- package/dest/orchestrator/top-tree-orchestrator.js +233 -0
- package/dest/orchestrator/top-tree-proving-state.d.ts +61 -0
- package/dest/orchestrator/top-tree-proving-state.d.ts.map +1 -0
- package/dest/orchestrator/top-tree-proving-state.js +185 -0
- package/dest/orchestrator/tx-proving-state.d.ts +37 -0
- package/dest/orchestrator/tx-proving-state.d.ts.map +1 -0
- package/dest/orchestrator/tx-proving-state.js +77 -0
- package/dest/prover-client/factory.d.ts +6 -0
- package/dest/prover-client/factory.d.ts.map +1 -0
- package/dest/prover-client/factory.js +5 -0
- package/dest/prover-client/index.d.ts +3 -0
- package/dest/prover-client/index.d.ts.map +1 -0
- package/dest/prover-client/index.js +2 -0
- package/dest/prover-client/prover-client.d.ts +99 -0
- package/dest/prover-client/prover-client.d.ts.map +1 -0
- package/dest/prover-client/prover-client.js +163 -0
- package/dest/proving_broker/broker_prover_facade.d.ts +52 -0
- package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -0
- package/dest/proving_broker/broker_prover_facade.js +360 -0
- package/dest/proving_broker/config.d.ts +40 -0
- package/dest/proving_broker/config.d.ts.map +1 -0
- package/dest/proving_broker/config.js +138 -0
- package/dest/proving_broker/factory.d.ts +5 -0
- package/dest/proving_broker/factory.d.ts.map +1 -0
- package/dest/proving_broker/factory.js +13 -0
- package/dest/proving_broker/fixtures.d.ts +6 -0
- package/dest/proving_broker/fixtures.d.ts.map +1 -0
- package/dest/proving_broker/fixtures.js +13 -0
- package/dest/proving_broker/index.d.ts +11 -0
- package/dest/proving_broker/index.d.ts.map +1 -0
- package/dest/proving_broker/index.js +10 -0
- package/dest/proving_broker/proof_store/factory.d.ts +3 -0
- package/dest/proving_broker/proof_store/factory.d.ts.map +1 -0
- package/dest/proving_broker/proof_store/factory.js +13 -0
- package/dest/proving_broker/proof_store/file_store_proof_store.d.ts +18 -0
- package/dest/proving_broker/proof_store/file_store_proof_store.d.ts.map +1 -0
- package/dest/proving_broker/proof_store/file_store_proof_store.js +60 -0
- package/dest/proving_broker/proof_store/index.d.ts +5 -0
- package/dest/proving_broker/proof_store/index.d.ts.map +1 -0
- package/dest/proving_broker/proof_store/index.js +4 -0
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts +15 -0
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts.map +1 -0
- package/dest/proving_broker/proof_store/inline_proof_store.js +41 -0
- package/dest/proving_broker/proof_store/proof_store.d.ts +36 -0
- package/dest/proving_broker/proof_store/proof_store.d.ts.map +1 -0
- package/dest/proving_broker/proof_store/proof_store.js +3 -0
- package/dest/proving_broker/proving_agent.d.ts +42 -0
- package/dest/proving_broker/proving_agent.d.ts.map +1 -0
- package/dest/proving_broker/proving_agent.js +155 -0
- package/dest/proving_broker/proving_broker.d.ts +77 -0
- package/dest/proving_broker/proving_broker.d.ts.map +1 -0
- package/dest/proving_broker/proving_broker.js +780 -0
- package/dest/proving_broker/proving_broker_database/memory.d.ts +20 -0
- package/dest/proving_broker/proving_broker_database/memory.d.ts.map +1 -0
- package/dest/proving_broker/proving_broker_database/memory.js +67 -0
- package/dest/proving_broker/proving_broker_database/persisted.d.ts +40 -0
- package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -0
- package/dest/proving_broker/proving_broker_database/persisted.js +623 -0
- package/dest/proving_broker/proving_broker_database.d.ts +66 -0
- package/dest/proving_broker/proving_broker_database.d.ts.map +1 -0
- package/dest/proving_broker/proving_broker_database.js +3 -0
- package/dest/proving_broker/proving_broker_instrumentation.d.ts +31 -0
- package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +1 -0
- package/dest/proving_broker/proving_broker_instrumentation.js +97 -0
- package/dest/proving_broker/proving_job_controller.d.ts +34 -0
- package/dest/proving_broker/proving_job_controller.d.ts.map +1 -0
- package/dest/proving_broker/proving_job_controller.js +184 -0
- package/dest/proving_broker/rpc.d.ts +38 -0
- package/dest/proving_broker/rpc.d.ts.map +1 -0
- package/dest/proving_broker/rpc.js +138 -0
- package/dest/test/epoch_settlement.d.ts +36 -0
- package/dest/test/epoch_settlement.d.ts.map +1 -0
- package/dest/test/epoch_settlement.js +52 -0
- package/dest/test/index.d.ts +2 -0
- package/dest/test/index.d.ts.map +1 -0
- package/dest/test/index.js +1 -0
- package/dest/test/mock_proof_store.d.ts +9 -0
- package/dest/test/mock_proof_store.d.ts.map +1 -0
- package/dest/test/mock_proof_store.js +10 -0
- package/dest/test/mock_prover.d.ts +38 -0
- package/dest/test/mock_prover.d.ts.map +1 -0
- package/dest/test/mock_prover.js +91 -0
- package/package.json +113 -0
- package/src/config.ts +87 -0
- package/src/index.ts +4 -0
- package/src/light/index.ts +1 -0
- package/src/light/lightweight_checkpoint_builder.ts +342 -0
- package/src/mocks/fixtures.ts +120 -0
- package/src/mocks/test_context.ts +477 -0
- package/src/orchestrator/block-building-helpers.ts +486 -0
- package/src/orchestrator/block-proving-state.ts +457 -0
- package/src/orchestrator/checkpoint-proving-state.ts +247 -0
- package/src/orchestrator/checkpoint-sub-tree-orchestrator.ts +1010 -0
- package/src/orchestrator/chonk-cache.ts +99 -0
- package/src/orchestrator/index.ts +12 -0
- package/src/orchestrator/orchestrator_metrics.ts +18 -0
- package/src/orchestrator/proving-scheduler.ts +160 -0
- package/src/orchestrator/top-tree-orchestrator.ts +394 -0
- package/src/orchestrator/top-tree-proving-state.ts +219 -0
- package/src/orchestrator/tx-proving-state.ts +121 -0
- package/src/prover-client/factory.ts +18 -0
- package/src/prover-client/index.ts +2 -0
- package/src/prover-client/prover-client.ts +286 -0
- package/src/proving_broker/broker_prover_facade.ts +626 -0
- package/src/proving_broker/config.ts +178 -0
- package/src/proving_broker/factory.ts +19 -0
- package/src/proving_broker/fixtures.ts +20 -0
- package/src/proving_broker/index.ts +10 -0
- package/src/proving_broker/proof_store/factory.ts +20 -0
- package/src/proving_broker/proof_store/file_store_proof_store.ts +78 -0
- package/src/proving_broker/proof_store/index.ts +4 -0
- package/src/proving_broker/proof_store/inline_proof_store.ts +63 -0
- package/src/proving_broker/proof_store/proof_store.ts +54 -0
- package/src/proving_broker/proving_agent.ts +210 -0
- package/src/proving_broker/proving_broker.ts +888 -0
- package/src/proving_broker/proving_broker_database/memory.ts +78 -0
- package/src/proving_broker/proving_broker_database/persisted.ts +296 -0
- package/src/proving_broker/proving_broker_database.ts +75 -0
- package/src/proving_broker/proving_broker_instrumentation.ts +133 -0
- package/src/proving_broker/proving_job_controller.ts +199 -0
- package/src/proving_broker/rpc.ts +131 -0
- package/src/test/epoch_settlement.ts +82 -0
- package/src/test/index.ts +1 -0
- package/src/test/mock_proof_store.ts +14 -0
- package/src/test/mock_prover.ts +304 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ProvingJobId } from '@aztec-labs/stdlib/interfaces/server';
|
|
2
|
+
import { ProvingRequestType } from '@aztec-labs/stdlib/proofs';
|
|
3
|
+
export declare class MockProofStore {
|
|
4
|
+
private mockCounter;
|
|
5
|
+
private readonly bucketName;
|
|
6
|
+
private readonly basePath;
|
|
7
|
+
saveProofInput(jobId: ProvingJobId, type: ProvingRequestType): Promise<string>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19wcm9vZl9zdG9yZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvbW9ja19wcm9vZl9zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUcvRCxxQkFBYSxjQUFjO0lBQ3pCLE9BQU8sQ0FBQyxXQUFXLENBQUs7SUFDeEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQThCO0lBQ3pELE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFrQjtJQUUzQyxjQUFjLENBQUMsS0FBSyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUc3RTtDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock_proof_store.d.ts","sourceRoot":"","sources":["../../src/test/mock_proof_store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;IAE3C,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7E;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Mock ProofStore for faster benchmarks with realistic Cloud Storage URIs
|
|
2
|
+
export class MockProofStore {
|
|
3
|
+
mockCounter = 0;
|
|
4
|
+
bucketName = 'aztec-proving-benchmarks';
|
|
5
|
+
basePath = 'proving-jobs';
|
|
6
|
+
saveProofInput(jobId, type) {
|
|
7
|
+
const uri = `gs://${this.bucketName}/${this.basePath}/inputs/${type}/${jobId}`;
|
|
8
|
+
return Promise.resolve(uri);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH } from '@aztec-labs/constants';
|
|
2
|
+
import type { AvmCircuitInputs } from '@aztec-labs/stdlib/avm';
|
|
3
|
+
import { type ProvingJob, type ProvingJobId, type ProvingJobProducer, type ProvingJobStatus, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec-labs/stdlib/interfaces/server';
|
|
4
|
+
import type { InboxParityPrivateInputs } from '@aztec-labs/stdlib/parity';
|
|
5
|
+
import type { BlockMergeRollupPrivateInputs, BlockRollupPublicInputs, BlockRootNoTxsRollupPrivateInputs, BlockRootRollupPrivateInputs, BlockRootSingleTxRollupPrivateInputs, CheckpointMergeRollupPrivateInputs, CheckpointPaddingRollupPrivateInputs, CheckpointRollupPublicInputs, CheckpointRootRollupPrivateInputs, CheckpointRootSingleBlockRollupPrivateInputs, PrivateTxBaseRollupPrivateInputs, PublicChonkVerifierPrivateInputs, PublicChonkVerifierPublicInputs, PublicTxBaseRollupPrivateInputs, RootRollupPrivateInputs, RootRollupPublicInputs, TxMergeRollupPrivateInputs, TxRollupPublicInputs } from '@aztec-labs/stdlib/rollup';
|
|
6
|
+
import { type ProofStore } from '../proving_broker/proof_store/index.js';
|
|
7
|
+
export declare class TestBroker implements ProvingJobProducer {
|
|
8
|
+
private proofStore;
|
|
9
|
+
private broker;
|
|
10
|
+
private agents;
|
|
11
|
+
constructor(agentCount: number, prover: ServerCircuitProver, proofStore?: ProofStore, agentPollInterval?: number);
|
|
12
|
+
start(): Promise<void>;
|
|
13
|
+
stop(): Promise<void>;
|
|
14
|
+
getProofStore(): ProofStore;
|
|
15
|
+
enqueueProvingJob(job: ProvingJob): Promise<ProvingJobStatus>;
|
|
16
|
+
getProvingJobStatus(id: ProvingJobId): Promise<ProvingJobStatus>;
|
|
17
|
+
cancelProvingJob(id: string): Promise<void>;
|
|
18
|
+
getCompletedJobs(ids: ProvingJobId[]): Promise<ProvingJobId[]>;
|
|
19
|
+
}
|
|
20
|
+
export declare class MockProver implements ServerCircuitProver {
|
|
21
|
+
constructor();
|
|
22
|
+
getAvmProof(_inputs: AvmCircuitInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<import("@aztec-labs/stdlib/proofs").RecursiveProof<14532>>;
|
|
23
|
+
getInboxParityProof(_inputs: InboxParityPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<import("@aztec-labs/stdlib/parity").ParityPublicInputs, 410>>;
|
|
24
|
+
getPublicChonkVerifierProof(_inputs: PublicChonkVerifierPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
25
|
+
getPrivateTxBaseRollupProof(_baseRollupInput: PrivateTxBaseRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
26
|
+
getPublicTxBaseRollupProof(_inputs: PublicTxBaseRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
27
|
+
getTxMergeRollupProof(_input: TxMergeRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
28
|
+
getBlockRootNoTxsRollupProof(_input: BlockRootNoTxsRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
29
|
+
getBlockRootRollupProof(_input: BlockRootRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
30
|
+
getBlockRootSingleTxRollupProof(_input: BlockRootSingleTxRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
31
|
+
getBlockMergeRollupProof(_input: BlockMergeRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, 480>>;
|
|
32
|
+
getCheckpointRootRollupProof(_input: CheckpointRootRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
33
|
+
getCheckpointRootSingleBlockRollupProof(_input: CheckpointRootSingleBlockRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
34
|
+
getCheckpointMergeRollupProof(_input: CheckpointMergeRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
35
|
+
getCheckpointPaddingRollupProof(_input: CheckpointPaddingRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
36
|
+
getRootRollupProof(_input: RootRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19wcm92ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L21vY2tfcHJvdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx5Q0FBeUMsRUFFMUMsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFDTCxLQUFLLFVBQVUsRUFDZixLQUFLLFlBQVksRUFDakIsS0FBSyxrQkFBa0IsRUFDdkIsS0FBSyxnQkFBZ0IsRUFDckIsS0FBSyw2QkFBNkIsRUFDbEMsS0FBSyxtQkFBbUIsRUFFekIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5QyxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFFLE9BQU8sS0FBSyxFQUNWLDZCQUE2QixFQUM3Qix1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLDRCQUE0QixFQUM1QixvQ0FBb0MsRUFDcEMsa0NBQWtDLEVBQ2xDLG9DQUFvQyxFQUNwQyw0QkFBNEIsRUFDNUIsaUNBQWlDLEVBQ2pDLDRDQUE0QyxFQUM1QyxnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBQ2hDLCtCQUErQixFQUMvQiwrQkFBK0IsRUFDL0IsdUJBQXVCLEVBQ3ZCLHNCQUFzQixFQUN0QiwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3JCLE1BQU0sMkJBQTJCLENBQUM7QUFXbkMsT0FBTyxFQUFvQixLQUFLLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBSzNGLHFCQUFhLFVBQVcsWUFBVyxrQkFBa0I7SUFPakQsT0FBTyxDQUFDLFVBQVU7SUFOcEIsT0FBTyxDQUFDLE1BQU0sQ0FBZ0I7SUFDOUIsT0FBTyxDQUFDLE1BQU0sQ0FBaUI7SUFFL0IsWUFDRSxVQUFVLEVBQUUsTUFBTSxFQUNsQixNQUFNLEVBQUUsbUJBQW1CLEVBQ25CLFVBQVUsR0FBRSxVQUFtQyxF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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock_prover.d.ts","sourceRoot":"","sources":["../../src/test/mock_prover.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,yCAAyC,EAE1C,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EAEzB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAE1E,OAAO,KAAK,EACV,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACjC,4BAA4B,EAC5B,oCAAoC,EACpC,kCAAkC,EAClC,oCAAoC,EACpC,4BAA4B,EAC5B,iCAAiC,EACjC,4CAA4C,EAC5C,gCAAgC,EAChC,gCAAgC,EAChC,+BAA+B,EAC/B,+BAA+B,EAC/B,uBAAuB,EACvB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAWnC,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAK3F,qBAAa,UAAW,YAAW,kBAAkB;IAOjD,OAAO,CAAC,UAAU;IANpB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAiB;IAE/B,YACE,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,EACnB,UAAU,GAAE,UAAmC,EACvD,iBAAiB,SAAM,EAOxB;IAEY,KAAK,kBAGjB;IAEY,IAAI,kBAGhB;IAEM,aAAa,IAAI,UAAU,CAEjC;IAED,iBAAiB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE5D;IACD,mBAAmB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE/D;IACD,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1C;IAED,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAE7D;CACF;AAED,qBAAa,UAAW,YAAW,mBAAmB;IACpD,cAAgB;IAEhB,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM,sEAElF;IAED,mBAAmB,CAAC,OAAO,EAAE,wBAAwB,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM,uGAQlG;IAED,2BAA2B,CACzB,OAAO,EAAE,gCAAgC,EACzC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CACR,6BAA6B,CAAC,+BAA+B,EAAE,OAAO,yCAAyC,CAAC,CACjH,CAQA;IAED,2BAA2B,CACzB,gBAAgB,EAAE,gCAAgC,EAClD,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQhH;IAED,0BAA0B,CACxB,OAAO,EAAE,+BAA+B,EACxC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQhH;IAED,qBAAqB,CACnB,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQhH;IAED,4BAA4B,CAC1B,MAAM,EAAE,iCAAiC,EACzC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,uBAAuB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQnH;IAED,uBAAuB,CACrB,MAAM,EAAE,4BAA4B,EACpC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,uBAAuB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQnH;IAED,+BAA+B,CAC7B,MAAM,EAAE,oCAAoC,EAC5C,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,uBAAuB,EAAE,OAAO,yCAAyC,CAAC,CAAC,CAQnH;IAED,wBAAwB,CAAC,MAAM,EAAE,6BAA6B,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,MAAM,wEAQ3G;IAED,4BAA4B,CAC1B,MAAM,EAAE,iCAAiC,EACzC,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CACR,6BAA6B,CAAC,4BAA4B,EAAE,OAAO,yCAAyC,CAAC,CAC9G,CAQA;IAED,uCAAuC,CACrC,MAAM,EAAE,4CAA4C,EACpD,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CACR,6BAA6B,CAAC,4BAA4B,EAAE,OAAO,yCAAyC,CAAC,CAC9G,CAQA;IAED,6BAA6B,CAC3B,MAAM,EAAE,kCAAkC,EAC1C,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CACR,6BAA6B,CAAC,4BAA4B,EAAE,OAAO,yCAAyC,CAAC,CAC9G,CAQA;IAED,+BAA+B,CAC7B,MAAM,EAAE,oCAAoC,EAC5C,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CACR,6BAA6B,CAAC,4BAA4B,EAAE,OAAO,yCAAyC,CAAC,CAC9G,CAQA;IAED,kBAAkB,CAChB,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,WAAW,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,6BAA6B,CAAC,sBAAsB,CAAC,CAAC,CAQhE;CACF"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { AVM_V2_PROOF_LENGTH_IN_FIELDS, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, RECURSIVE_PROOF_LENGTH } from '@aztec-labs/constants';
|
|
2
|
+
import { times } from '@aztec-labs/foundation/collection';
|
|
3
|
+
import { makePublicInputsAndRecursiveProof } from '@aztec-labs/stdlib/interfaces/server';
|
|
4
|
+
import { makeEmptyRecursiveProof, makeRecursiveProof } from '@aztec-labs/stdlib/proofs';
|
|
5
|
+
import { makeBlockRollupPublicInputs, makeCheckpointRollupPublicInputs, makeParityPublicInputs, makePublicChonkVerifierPublicInputs, makeRootRollupPublicInputs, makeTxRollupPublicInputs } from '@aztec-labs/stdlib/testing';
|
|
6
|
+
import { VerificationKeyData } from '@aztec-labs/stdlib/vks';
|
|
7
|
+
import { InlineProofStore } from '../proving_broker/proof_store/index.js';
|
|
8
|
+
import { ProvingAgent } from '../proving_broker/proving_agent.js';
|
|
9
|
+
import { ProvingBroker } from '../proving_broker/proving_broker.js';
|
|
10
|
+
import { InMemoryBrokerDatabase } from '../proving_broker/proving_broker_database/memory.js';
|
|
11
|
+
export class TestBroker {
|
|
12
|
+
proofStore;
|
|
13
|
+
broker;
|
|
14
|
+
agents;
|
|
15
|
+
constructor(agentCount, prover, proofStore = new InlineProofStore(), agentPollInterval = 100){
|
|
16
|
+
this.proofStore = proofStore;
|
|
17
|
+
this.broker = new ProvingBroker(new InMemoryBrokerDatabase());
|
|
18
|
+
this.agents = times(agentCount, ()=>new ProvingAgent(this.broker, proofStore, prover, undefined, agentPollInterval));
|
|
19
|
+
}
|
|
20
|
+
async start() {
|
|
21
|
+
await this.broker.start();
|
|
22
|
+
this.agents.forEach((agent)=>agent.start());
|
|
23
|
+
}
|
|
24
|
+
async stop() {
|
|
25
|
+
await Promise.all(this.agents.map((agent)=>agent.stop()));
|
|
26
|
+
await this.broker.stop();
|
|
27
|
+
}
|
|
28
|
+
getProofStore() {
|
|
29
|
+
return this.proofStore;
|
|
30
|
+
}
|
|
31
|
+
enqueueProvingJob(job) {
|
|
32
|
+
return this.broker.enqueueProvingJob(job);
|
|
33
|
+
}
|
|
34
|
+
getProvingJobStatus(id) {
|
|
35
|
+
return this.broker.getProvingJobStatus(id);
|
|
36
|
+
}
|
|
37
|
+
cancelProvingJob(id) {
|
|
38
|
+
return this.broker.cancelProvingJob(id);
|
|
39
|
+
}
|
|
40
|
+
getCompletedJobs(ids) {
|
|
41
|
+
return this.broker.getCompletedJobs(ids);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export class MockProver {
|
|
45
|
+
constructor(){}
|
|
46
|
+
getAvmProof(_inputs, _signal, _epochNumber) {
|
|
47
|
+
return Promise.resolve(makeEmptyRecursiveProof(AVM_V2_PROOF_LENGTH_IN_FIELDS));
|
|
48
|
+
}
|
|
49
|
+
getInboxParityProof(_inputs, _signal, _epochNumber) {
|
|
50
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeParityPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
51
|
+
}
|
|
52
|
+
getPublicChonkVerifierProof(_inputs, _signal, _epochNumber) {
|
|
53
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makePublicChonkVerifierPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
54
|
+
}
|
|
55
|
+
getPrivateTxBaseRollupProof(_baseRollupInput, _signal, _epochNumber) {
|
|
56
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeTxRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
57
|
+
}
|
|
58
|
+
getPublicTxBaseRollupProof(_inputs, _signal, _epochNumber) {
|
|
59
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeTxRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
60
|
+
}
|
|
61
|
+
getTxMergeRollupProof(_input, _signal, _epochNumber) {
|
|
62
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeTxRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
63
|
+
}
|
|
64
|
+
getBlockRootNoTxsRollupProof(_input, _signal, _epochNumber) {
|
|
65
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
66
|
+
}
|
|
67
|
+
getBlockRootRollupProof(_input, _signal, _epochNumber) {
|
|
68
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
69
|
+
}
|
|
70
|
+
getBlockRootSingleTxRollupProof(_input, _signal, _epochNumber) {
|
|
71
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
72
|
+
}
|
|
73
|
+
getBlockMergeRollupProof(_input, _signal, _epochNumber) {
|
|
74
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeBlockRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
75
|
+
}
|
|
76
|
+
getCheckpointRootRollupProof(_input, _signal, _epochNumber) {
|
|
77
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeCheckpointRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
78
|
+
}
|
|
79
|
+
getCheckpointRootSingleBlockRollupProof(_input, _signal, _epochNumber) {
|
|
80
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeCheckpointRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
81
|
+
}
|
|
82
|
+
getCheckpointMergeRollupProof(_input, _signal, _epochNumber) {
|
|
83
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeCheckpointRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
84
|
+
}
|
|
85
|
+
getCheckpointPaddingRollupProof(_input, _signal, _epochNumber) {
|
|
86
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeCheckpointRollupPublicInputs(), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()));
|
|
87
|
+
}
|
|
88
|
+
getRootRollupProof(_input, _signal, _epochNumber) {
|
|
89
|
+
return Promise.resolve(makePublicInputsAndRecursiveProof(makeRootRollupPublicInputs(), makeRecursiveProof(RECURSIVE_PROOF_LENGTH), VerificationKeyData.makeFakeHonk()));
|
|
90
|
+
}
|
|
91
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aztec-labs/prover-client",
|
|
3
|
+
"version": "6.0.0-nightly.20260829",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"exports": {
|
|
6
|
+
".": "./dest/index.js",
|
|
7
|
+
"./broker": "./dest/proving_broker/index.js",
|
|
8
|
+
"./broker/config": "./dest/proving_broker/config.js",
|
|
9
|
+
"./orchestrator": "./dest/orchestrator/index.js",
|
|
10
|
+
"./helpers": "./dest/orchestrator/block-building-helpers.js",
|
|
11
|
+
"./light": "./dest/light/index.js",
|
|
12
|
+
"./config": "./dest/config.js",
|
|
13
|
+
"./test": "./dest/test/index.js"
|
|
14
|
+
},
|
|
15
|
+
"typedocOptions": {
|
|
16
|
+
"entryPoints": [
|
|
17
|
+
"./src/index.ts"
|
|
18
|
+
],
|
|
19
|
+
"name": "Prover Client",
|
|
20
|
+
"tsconfig": "./tsconfig.json"
|
|
21
|
+
},
|
|
22
|
+
"inherits": [
|
|
23
|
+
"../package.common.json",
|
|
24
|
+
"./package.local.json"
|
|
25
|
+
],
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "yarn clean && ../scripts/tsc.sh",
|
|
28
|
+
"build:dev": "../scripts/tsc.sh --watch",
|
|
29
|
+
"clean": "rm -rf ./dest .tsbuildinfo",
|
|
30
|
+
"bb": "node --no-warnings ./dest/bb/index.js",
|
|
31
|
+
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --testTimeout=3500000",
|
|
32
|
+
"test:debug": "LOG_LEVEL=\"debug; info: json-rpc, simulator\" NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --testTimeout=1500000 --testNamePattern prover/bb_prover/parity"
|
|
33
|
+
},
|
|
34
|
+
"jest": {
|
|
35
|
+
"moduleNameMapper": {
|
|
36
|
+
"^(\\.{1,2}/.*)\\.[cm]?js$": "$1"
|
|
37
|
+
},
|
|
38
|
+
"testRegex": "./src/.*\\.test\\.(js|mjs|ts)$",
|
|
39
|
+
"rootDir": "./src",
|
|
40
|
+
"transform": {
|
|
41
|
+
"^.+\\.tsx?$": [
|
|
42
|
+
"@swc/jest",
|
|
43
|
+
{
|
|
44
|
+
"jsc": {
|
|
45
|
+
"parser": {
|
|
46
|
+
"syntax": "typescript",
|
|
47
|
+
"decorators": true
|
|
48
|
+
},
|
|
49
|
+
"transform": {
|
|
50
|
+
"decoratorVersion": "2022-03"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
"extensionsToTreatAsEsm": [
|
|
57
|
+
".ts"
|
|
58
|
+
],
|
|
59
|
+
"reporters": [
|
|
60
|
+
"default"
|
|
61
|
+
],
|
|
62
|
+
"testTimeout": 120000,
|
|
63
|
+
"setupFiles": [
|
|
64
|
+
"../../foundation/src/jest/setup.mjs"
|
|
65
|
+
],
|
|
66
|
+
"testEnvironment": "../../foundation/src/jest/env.mjs",
|
|
67
|
+
"setupFilesAfterEnv": [
|
|
68
|
+
"../../foundation/src/jest/setupAfterEnv.mjs"
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
"dependencies": {
|
|
72
|
+
"@aztec-labs/bb-prover": "6.0.0-nightly.20260829",
|
|
73
|
+
"@aztec-labs/blob-lib": "6.0.0-nightly.20260829",
|
|
74
|
+
"@aztec-labs/constants": "6.0.0-nightly.20260829",
|
|
75
|
+
"@aztec-labs/ethereum": "6.0.0-nightly.20260829",
|
|
76
|
+
"@aztec-labs/foundation": "6.0.0-nightly.20260829",
|
|
77
|
+
"@aztec-labs/kv-store": "6.0.0-nightly.20260829",
|
|
78
|
+
"@aztec-labs/noir-protocol-circuits-types": "6.0.0-nightly.20260829",
|
|
79
|
+
"@aztec-labs/protocol-contracts": "6.0.0-nightly.20260829",
|
|
80
|
+
"@aztec-labs/simulator": "6.0.0-nightly.20260829",
|
|
81
|
+
"@aztec-labs/stdlib": "6.0.0-nightly.20260829",
|
|
82
|
+
"@aztec-labs/telemetry-client": "6.0.0-nightly.20260829",
|
|
83
|
+
"@aztec-labs/world-state": "6.0.0-nightly.20260829",
|
|
84
|
+
"@aztec/noir-types": "6.0.0-nightly.20260826",
|
|
85
|
+
"@iarna/toml": "^2.2.5",
|
|
86
|
+
"commander": "^12.1.0",
|
|
87
|
+
"lodash.chunk": "^4.2.0",
|
|
88
|
+
"source-map-support": "^0.5.21",
|
|
89
|
+
"tslib": "^2.4.0",
|
|
90
|
+
"zod": "^4"
|
|
91
|
+
},
|
|
92
|
+
"devDependencies": {
|
|
93
|
+
"@jest/globals": "^30.0.0",
|
|
94
|
+
"@types/jest": "^30.0.0",
|
|
95
|
+
"@types/node": "^22.15.17",
|
|
96
|
+
"@types/source-map-support": "^0.5.10",
|
|
97
|
+
"@typescript/native-preview": "7.0.0-dev.20260113.1",
|
|
98
|
+
"get-port": "^7.1.0",
|
|
99
|
+
"jest": "^30.0.0",
|
|
100
|
+
"jest-mock-extended": "^4.0.0",
|
|
101
|
+
"ts-node": "^10.9.1",
|
|
102
|
+
"typescript": "^5.3.3"
|
|
103
|
+
},
|
|
104
|
+
"files": [
|
|
105
|
+
"dest",
|
|
106
|
+
"src",
|
|
107
|
+
"!*.test.*"
|
|
108
|
+
],
|
|
109
|
+
"types": "./dest/index.d.ts",
|
|
110
|
+
"engines": {
|
|
111
|
+
"node": ">=20.10"
|
|
112
|
+
}
|
|
113
|
+
}
|
package/src/config.ts
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { ACVMConfig, BBConfig } from '@aztec-labs/bb-prover';
|
|
2
|
+
import {
|
|
3
|
+
type ConfigMappingsType,
|
|
4
|
+
booleanConfigHelper,
|
|
5
|
+
getConfigFromMappings,
|
|
6
|
+
numberConfigHelper,
|
|
7
|
+
} from '@aztec-labs/foundation/config';
|
|
8
|
+
import { type ProverConfig, proverConfigMappings } from '@aztec-labs/stdlib/interfaces/prover-config';
|
|
9
|
+
|
|
10
|
+
import {
|
|
11
|
+
type ProverAgentConfig,
|
|
12
|
+
type ProverBrokerConfig,
|
|
13
|
+
proverAgentConfigMappings,
|
|
14
|
+
proverBrokerConfigMappings,
|
|
15
|
+
} from './proving_broker/config.js';
|
|
16
|
+
|
|
17
|
+
/** The prover configuration as defined by the user. */
|
|
18
|
+
export type ProverClientUserConfig = ProverConfig & ProverAgentConfig & ProverBrokerConfig & BBConfig & ACVMConfig;
|
|
19
|
+
|
|
20
|
+
/** The prover configuration with all missing fields resolved. */
|
|
21
|
+
export type ProverClientConfig = ProverClientUserConfig & Required<Pick<ProverClientUserConfig, 'proverId'>>;
|
|
22
|
+
|
|
23
|
+
export const bbConfigMappings: ConfigMappingsType<BBConfig & ACVMConfig> = {
|
|
24
|
+
acvmWorkingDirectory: {
|
|
25
|
+
env: 'ACVM_WORKING_DIRECTORY',
|
|
26
|
+
description: 'The working directory to use for simulation/proving',
|
|
27
|
+
},
|
|
28
|
+
acvmBinaryPath: {
|
|
29
|
+
env: 'ACVM_BINARY_PATH',
|
|
30
|
+
description: 'The path to the ACVM binary',
|
|
31
|
+
},
|
|
32
|
+
bbWorkingDirectory: {
|
|
33
|
+
env: 'BB_WORKING_DIRECTORY',
|
|
34
|
+
description: 'The working directory to use for proving',
|
|
35
|
+
},
|
|
36
|
+
bbBinaryPath: {
|
|
37
|
+
env: 'BB_BINARY_PATH',
|
|
38
|
+
description: 'The path to the bb binary',
|
|
39
|
+
},
|
|
40
|
+
bbSkipCleanup: {
|
|
41
|
+
env: 'BB_SKIP_CLEANUP',
|
|
42
|
+
description: 'Whether to skip cleanup of bb temporary files',
|
|
43
|
+
...booleanConfigHelper(false),
|
|
44
|
+
},
|
|
45
|
+
numConcurrentIVCVerifiers: {
|
|
46
|
+
env: 'BB_NUM_IVC_VERIFIERS',
|
|
47
|
+
description: 'Max concurrent verifications for the RPC verifier (QueuedIVCVerifier).',
|
|
48
|
+
...numberConfigHelper(8),
|
|
49
|
+
},
|
|
50
|
+
bbIVCConcurrency: {
|
|
51
|
+
env: 'BB_IVC_CONCURRENCY',
|
|
52
|
+
description: 'Thread count for the RPC IVC verifier.',
|
|
53
|
+
...numberConfigHelper(1),
|
|
54
|
+
},
|
|
55
|
+
bbChonkVerifyMaxBatch: {
|
|
56
|
+
env: 'BB_CHONK_VERIFY_MAX_BATCH',
|
|
57
|
+
description:
|
|
58
|
+
'Upper bound on proofs per batch for the peer chonk batch verifier. Proofs are verified immediately as they arrive; this only caps how many can accumulate while a batch is already being processed.',
|
|
59
|
+
...numberConfigHelper(16),
|
|
60
|
+
},
|
|
61
|
+
bbChonkVerifyConcurrency: {
|
|
62
|
+
env: 'BB_CHONK_VERIFY_BATCH_CONCURRENCY',
|
|
63
|
+
description: 'Thread count for the peer batch verifier parallel reduce. 0 = auto.',
|
|
64
|
+
...numberConfigHelper(6),
|
|
65
|
+
},
|
|
66
|
+
bbDebugOutputDir: {
|
|
67
|
+
env: 'BB_DEBUG_OUTPUT_DIR',
|
|
68
|
+
description:
|
|
69
|
+
'When set, bb.js operations write input/output files and log equivalent CLI commands to this directory',
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
export const proverClientConfigMappings: ConfigMappingsType<ProverClientUserConfig> = {
|
|
74
|
+
...bbConfigMappings,
|
|
75
|
+
...proverConfigMappings,
|
|
76
|
+
...proverAgentConfigMappings,
|
|
77
|
+
...proverBrokerConfigMappings,
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Returns the prover configuration from the environment variables.
|
|
82
|
+
* Note: If an environment variable is not set, the default value is used.
|
|
83
|
+
* @returns The prover configuration.
|
|
84
|
+
*/
|
|
85
|
+
export function getProverEnvVars(): ProverClientUserConfig {
|
|
86
|
+
return getConfigFromMappings<ProverClientUserConfig>(proverClientConfigMappings);
|
|
87
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lightweight_checkpoint_builder.js';
|