@aztec/bb-prover 3.0.0-nightly.20260104 → 3.0.0-nightly.20260106

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.
@@ -1,14 +1,20 @@
1
+ import { type BackendOptions } from '@aztec/bb.js';
2
+ import { type Logger } from '@aztec/foundation/log';
1
3
  import { type ArtifactProvider, type ClientProtocolArtifact } from '@aztec/noir-protocol-circuits-types/types';
2
4
  import type { Abi, WitnessMap } from '@aztec/noir-types';
3
5
  import type { CircuitSimulator } from '@aztec/simulator/client';
4
6
  import type { PrivateKernelProver } from '@aztec/stdlib/interfaces/client';
5
7
  import type { HidingKernelToPublicPrivateInputs, HidingKernelToRollupPrivateInputs, PrivateExecutionStep, PrivateKernelCircuitPublicInputs, PrivateKernelInitCircuitPrivateInputs, PrivateKernelInnerCircuitPrivateInputs, PrivateKernelResetCircuitPrivateInputs, PrivateKernelSimulateOutput, PrivateKernelTailCircuitPrivateInputs, PrivateKernelTailCircuitPublicInputs } from '@aztec/stdlib/kernel';
6
8
  import { ChonkProofWithPublicInputs } from '@aztec/stdlib/proofs';
9
+ export type BBPrivateKernelProverOptions = Omit<BackendOptions, 'logger'> & {
10
+ logger?: Logger;
11
+ };
7
12
  export declare abstract class BBPrivateKernelProver implements PrivateKernelProver {
8
13
  protected artifactProvider: ArtifactProvider;
9
14
  protected simulator: CircuitSimulator;
10
- protected log: import("@aztec/foundation/log").Logger;
11
- constructor(artifactProvider: ArtifactProvider, simulator: CircuitSimulator, log?: import("@aztec/foundation/log").Logger);
15
+ protected options: BBPrivateKernelProverOptions;
16
+ private log;
17
+ constructor(artifactProvider: ArtifactProvider, simulator: CircuitSimulator, options?: BBPrivateKernelProverOptions);
12
18
  generateInitOutput(inputs: PrivateKernelInitCircuitPrivateInputs): Promise<PrivateKernelSimulateOutput<PrivateKernelCircuitPublicInputs>>;
13
19
  simulateInit(inputs: PrivateKernelInitCircuitPrivateInputs): Promise<PrivateKernelSimulateOutput<PrivateKernelCircuitPublicInputs>>;
14
20
  generateInnerOutput(inputs: PrivateKernelInnerCircuitPrivateInputs): Promise<PrivateKernelSimulateOutput<PrivateKernelCircuitPublicInputs>>;
@@ -29,4 +35,4 @@ export declare abstract class BBPrivateKernelProver implements PrivateKernelProv
29
35
  createChonkProof(executionSteps: PrivateExecutionStep[]): Promise<ChonkProofWithPublicInputs>;
30
36
  computeGateCountForCircuit(_bytecode: Buffer, _circuitName: string): Promise<number>;
31
37
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmJfcHJpdmF0ZV9rZXJuZWxfcHJvdmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvdmVyL2NsaWVudC9iYl9wcml2YXRlX2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJBLE9BQU8sRUFDTCxLQUFLLGdCQUFnQixFQUNyQixLQUFLLHNCQUFzQixFQUU1QixNQUFNLDJDQUEyQyxDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxLQUFLLEVBQ1YsaUNBQWlDLEVBQ2pDLGlDQUFpQyxFQUNqQyxvQkFBb0IsRUFDcEIsZ0NBQWdDLEVBQ2hDLHFDQUFxQyxFQUNyQyxzQ0FBc0MsRUFDdEMsc0NBQXNDLEVBQ3RDLDJCQUEyQixFQUMzQixxQ0FBcUMsRUFDckMsb0NBQW9DLEVBQ3JDLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLbEUsOEJBQXNCLHFCQUFzQixZQUFXLG1CQUFtQjtJQUV0RSxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCO0lBQzVDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCO0lBQ3JDLFNBQVMsQ0FBQyxHQUFHO0lBSGYsWUFDWSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsU0FBUyxFQUFFLGdCQUFnQixFQUMzQixHQUFHLHlDQUE0QixFQUN2QztJQUVTLGtCQUFrQixDQUM3QixNQUFNLEVBQUUscUNBQXFDLEdBQzVDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBT3hFO0lBRVksWUFBWSxDQUN2QixN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
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmJfcHJpdmF0ZV9rZXJuZWxfcHJvdmVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvdmVyL2NsaWVudC9iYl9wcml2YXRlX2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixLQUFLLGNBQWMsRUFBZ0IsTUFBTSxjQUFjLENBQUM7QUFDckYsT0FBTyxFQUFpQixLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQW9CakYsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssc0JBQXNCLEVBRTVCLE1BQU0sMkNBQTJDLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRSxPQUFPLEtBQUssRUFDVixpQ0FBaUMsRUFDakMsaUNBQWlDLEVBQ2pDLG9CQUFvQixFQUNwQixnQ0FBZ0MsRUFDaEMscUNBQXFDLEVBQ3JDLHNDQUFzQyxFQUN0QyxzQ0FBc0MsRUFDdEMsMkJBQTJCLEVBQzNCLHFDQUFxQyxFQUNyQyxvQ0FBb0MsRUFDckMsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUtsRSxNQUFNLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsR0FBRztJQUFFLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQTtDQUFFLENBQUM7QUFDaEcsOEJBQXNCLHFCQUFzQixZQUFXLG1CQUFtQjtJQUl0RSxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCO0lBQzVDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdC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
@@ -1 +1 @@
1
- {"version":3,"file":"bb_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../../src/prover/client/bb_private_kernel_prover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bb_private_kernel_prover.d.ts","sourceRoot":"","sources":["../../../src/prover/client/bb_private_kernel_prover.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,13 @@ import { ungzip } from 'pako';
9
9
  export class BBPrivateKernelProver {
10
10
  artifactProvider;
11
11
  simulator;
12
+ options;
12
13
  log;
13
- constructor(artifactProvider, simulator, log = createLogger('bb-prover')){
14
+ constructor(artifactProvider, simulator, options = {}){
14
15
  this.artifactProvider = artifactProvider;
15
16
  this.simulator = simulator;
16
- this.log = log;
17
+ this.options = options;
18
+ this.log = options.logger || createLogger('bb-prover:private-kernel');
17
19
  }
18
20
  async generateInitOutput(inputs) {
19
21
  return await this.generateCircuitOutput(inputs, 'PrivateKernelInitArtifact', convertPrivateKernelInitInputsToWitnessMapWithAbi, convertPrivateKernelInitOutputsFromWitnessMapWithAbi);
@@ -111,7 +113,11 @@ export class BBPrivateKernelProver {
111
113
  async createChonkProof(executionSteps) {
112
114
  const timer = new Timer();
113
115
  this.log.info(`Generating ClientIVC proof...`);
114
- const backend = new AztecClientBackend(executionSteps.map((step)=>ungzip(step.bytecode)), await Barretenberg.initSingleton());
116
+ const barretenberg = await Barretenberg.initSingleton({
117
+ ...this.options,
118
+ logger: this.options.logger?.[process.env.LOG_LEVEL || 'verbose']
119
+ });
120
+ const backend = new AztecClientBackend(executionSteps.map((step)=>ungzip(step.bytecode)), barretenberg);
115
121
  const [proof] = await backend.prove(executionSteps.map((step)=>ungzip(serializeWitness(step.witness))), executionSteps.map((step)=>step.vk));
116
122
  this.log.info(`Generated ClientIVC proof`, {
117
123
  eventName: 'client-ivc-proof-generation',
@@ -122,9 +128,13 @@ export class BBPrivateKernelProver {
122
128
  }
123
129
  async computeGateCountForCircuit(_bytecode, _circuitName) {
124
130
  // Note we do not pass the vk to the backend. This is unneeded for gate counts.
131
+ const barretenberg = await Barretenberg.initSingleton({
132
+ ...this.options,
133
+ logger: this.options.logger?.[process.env.LOG_LEVEL || 'verbose']
134
+ });
125
135
  const backend = new AztecClientBackend([
126
136
  ungzip(_bytecode)
127
- ], await Barretenberg.initSingleton());
137
+ ], barretenberg);
128
138
  const gateCount = await backend.gates();
129
139
  return gateCount[0];
130
140
  }
@@ -1,6 +1,6 @@
1
1
  import type { CircuitSimulator } from '@aztec/simulator/client';
2
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
2
+ import { BBPrivateKernelProver, type BBPrivateKernelProverOptions } from './bb_private_kernel_prover.js';
3
3
  export declare class BBBundlePrivateKernelProver extends BBPrivateKernelProver {
4
- constructor(simulator: CircuitSimulator, log?: import("@aztec/foundation/log").Logger);
4
+ constructor(simulator: CircuitSimulator, options?: BBPrivateKernelProverOptions);
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvdmVyL2NsaWVudC9idW5kbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV0RSxxQkFBYSwyQkFBNEIsU0FBUSxxQkFBcUI7SUFDcEUsWUFBWSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyx5Q0FBbUMsRUFFOUU7Q0FDRiJ9
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvdmVyL2NsaWVudC9idW5kbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsS0FBSyw0QkFBNEIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXpHLHFCQUFhLDJCQUE0QixTQUFRLHFCQUFxQjtJQUNwRSxZQUFZLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEdBQUUsNEJBQWlDLEVBRWxGO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/prover/client/bundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,qBAAa,2BAA4B,SAAQ,qBAAqB;IACpE,YAAY,SAAS,EAAE,gBAAgB,EAAE,GAAG,yCAAmC,EAE9E;CACF"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/prover/client/bundle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,KAAK,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAEzG,qBAAa,2BAA4B,SAAQ,qBAAqB;IACpE,YAAY,SAAS,EAAE,gBAAgB,EAAE,OAAO,GAAE,4BAAiC,EAElF;CACF"}
@@ -1,8 +1,7 @@
1
- import { createLogger } from '@aztec/foundation/log';
2
1
  import { BundleArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/bundle';
3
2
  import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
4
3
  export class BBBundlePrivateKernelProver extends BBPrivateKernelProver {
5
- constructor(simulator, log = createLogger('bb-prover:bundle')){
6
- super(new BundleArtifactProvider(), simulator, log);
4
+ constructor(simulator, options = {}){
5
+ super(new BundleArtifactProvider(), simulator, options);
7
6
  }
8
7
  }
@@ -1,6 +1,6 @@
1
1
  import type { CircuitSimulator } from '@aztec/simulator/client';
2
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
2
+ import { BBPrivateKernelProver, type BBPrivateKernelProverOptions } from './bb_private_kernel_prover.js';
3
3
  export declare class BBLazyPrivateKernelProver extends BBPrivateKernelProver {
4
- constructor(simulator: CircuitSimulator, log?: import("@aztec/foundation/log").Logger);
4
+ constructor(simulator: CircuitSimulator, options?: BBPrivateKernelProverOptions);
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3Zlci9jbGllbnQvbGF6eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXRFLHFCQUFhLHlCQUEwQixTQUFRLHFCQUFxQjtJQUNsRSxZQUFZLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLHlDQUFpQyxFQUU1RTtDQUNGIn0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3Zlci9jbGllbnQvbGF6eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxLQUFLLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekcscUJBQWEseUJBQTBCLFNBQVEscUJBQXFCO0lBQ2xFLFlBQVksU0FBUyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sR0FBRSw0QkFBaUMsRUFFbEY7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../src/prover/client/lazy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,qBAAa,yBAA0B,SAAQ,qBAAqB;IAClE,YAAY,SAAS,EAAE,gBAAgB,EAAE,GAAG,yCAAiC,EAE5E;CACF"}
1
+ {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../src/prover/client/lazy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,KAAK,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAEzG,qBAAa,yBAA0B,SAAQ,qBAAqB;IAClE,YAAY,SAAS,EAAE,gBAAgB,EAAE,OAAO,GAAE,4BAAiC,EAElF;CACF"}
@@ -1,8 +1,7 @@
1
- import { createLogger } from '@aztec/foundation/log';
2
1
  import { LazyArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/lazy';
3
2
  import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
4
3
  export class BBLazyPrivateKernelProver extends BBPrivateKernelProver {
5
- constructor(simulator, log = createLogger('bb-prover:lazy')){
6
- super(new LazyArtifactProvider(), simulator, log);
4
+ constructor(simulator, options = {}){
5
+ super(new LazyArtifactProvider(), simulator, options);
7
6
  }
8
7
  }
@@ -1,4 +1,4 @@
1
1
  import { ProvingRequestType } from '@aztec/stdlib/proofs';
2
2
  export declare const WITGEN_DELAY_MS: Record<ProvingRequestType, number>;
3
3
  export declare const PROOF_DELAY_MS: Record<ProvingRequestType, number>;
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXlfdmFsdWVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9kZWxheV92YWx1ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFMUQsZUFBTyxNQUFNLGVBQWUsRUFBRSxNQUFNLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQW1COUQsQ0FBQztBQUVGLGVBQU8sTUFBTSxjQUFjLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sQ0FtQjdELENBQUMifQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXlfdmFsdWVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9kZWxheV92YWx1ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFMUQsZUFBTyxNQUFNLGVBQWUsRUFBRSxNQUFNLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQXFCOUQsQ0FBQztBQUVGLGVBQU8sTUFBTSxjQUFjLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sQ0FxQjdELENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"delay_values.d.ts","sourceRoot":"","sources":["../../src/test/delay_values.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAmB9D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAmB7D,CAAC"}
1
+ {"version":3,"file":"delay_values.d.ts","sourceRoot":"","sources":["../../src/test/delay_values.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAqB9D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAqB7D,CAAC"}
@@ -1,41 +1,43 @@
1
1
  import { ProvingRequestType } from '@aztec/stdlib/proofs';
2
2
  export const WITGEN_DELAY_MS = {
3
- [ProvingRequestType.PARITY_BASE]: 2_000,
4
- [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 30,
3
+ [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 60,
4
+ [ProvingRequestType.PARITY_BASE]: 1_600,
5
+ [ProvingRequestType.PARITY_ROOT]: 40,
5
6
  [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 45,
6
- [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 27,
7
7
  [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 18,
8
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 27,
9
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 30,
10
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 36_000,
11
+ [ProvingRequestType.ROOT_ROLLUP]: 35,
12
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 2_500,
13
+ [ProvingRequestType.TX_MERGE_ROLLUP]: 25,
14
+ [ProvingRequestType.PUBLIC_VM]: 0,
15
+ // TBD
16
+ [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 30,
8
17
  [ProvingRequestType.BLOCK_ROOT_ROLLUP]: 40_000,
9
18
  [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: 20_000,
10
19
  [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: 40_000,
11
- [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 36_600,
12
20
  [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: 0,
13
- [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 30,
14
- [ProvingRequestType.TX_MERGE_ROLLUP]: 0,
15
- [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 2_500,
16
- [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 2_500,
17
- [ProvingRequestType.PARITY_ROOT]: 40,
18
- [ProvingRequestType.ROOT_ROLLUP]: 35,
19
- [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 60,
20
- [ProvingRequestType.PUBLIC_VM]: 0
21
+ [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 2_500
21
22
  };
22
23
  export const PROOF_DELAY_MS = {
23
- [ProvingRequestType.PARITY_BASE]: 16_300,
24
+ [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 16_300,
25
+ [ProvingRequestType.PARITY_BASE]: 15_300,
26
+ [ProvingRequestType.PARITY_ROOT]: 18_600,
27
+ [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 17_400,
28
+ [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 4_500,
29
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 9_200,
30
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 10_200,
31
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 37_100,
32
+ [ProvingRequestType.ROOT_ROLLUP]: 93_000,
33
+ [ProvingRequestType.TX_MERGE_ROLLUP]: 10_000,
34
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 44_500,
35
+ [ProvingRequestType.PUBLIC_VM]: 10_000,
36
+ // TBD
24
37
  [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 15_000,
25
- [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 16_500,
26
- [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 9_210,
27
- [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 4_560,
28
38
  [ProvingRequestType.BLOCK_ROOT_ROLLUP]: 35_000,
29
39
  [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: 15_000,
30
40
  [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: 35_000,
31
- [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 38_800,
32
41
  [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: 0,
33
- [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 9_760,
34
- [ProvingRequestType.TX_MERGE_ROLLUP]: 0,
35
- [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 45_000,
36
- [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 45_000,
37
- [ProvingRequestType.PARITY_ROOT]: 18_600,
38
- [ProvingRequestType.ROOT_ROLLUP]: 84_000,
39
- [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 16_300,
40
- [ProvingRequestType.PUBLIC_VM]: 0
42
+ [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 45_000
41
43
  };
@@ -1,3 +1,4 @@
1
1
  export * from './test_circuit_prover.js';
2
2
  export * from './test_verifier.js';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxvQkFBb0IsQ0FBQyJ9
3
+ export * from './delay_values.js';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG1CQUFtQixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './test_circuit_prover.js';
2
2
  export * from './test_verifier.js';
3
+ export * from './delay_values.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/bb-prover",
3
- "version": "3.0.0-nightly.20260104",
3
+ "version": "3.0.0-nightly.20260106",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./dest/index.js",
@@ -69,27 +69,27 @@
69
69
  ]
70
70
  },
71
71
  "dependencies": {
72
- "@aztec/bb.js": "3.0.0-nightly.20260104",
73
- "@aztec/constants": "3.0.0-nightly.20260104",
74
- "@aztec/foundation": "3.0.0-nightly.20260104",
75
- "@aztec/noir-noirc_abi": "3.0.0-nightly.20260104",
76
- "@aztec/noir-protocol-circuits-types": "3.0.0-nightly.20260104",
77
- "@aztec/noir-types": "3.0.0-nightly.20260104",
78
- "@aztec/simulator": "3.0.0-nightly.20260104",
79
- "@aztec/stdlib": "3.0.0-nightly.20260104",
80
- "@aztec/telemetry-client": "3.0.0-nightly.20260104",
81
- "@aztec/world-state": "3.0.0-nightly.20260104",
72
+ "@aztec/bb.js": "3.0.0-nightly.20260106",
73
+ "@aztec/constants": "3.0.0-nightly.20260106",
74
+ "@aztec/foundation": "3.0.0-nightly.20260106",
75
+ "@aztec/noir-noirc_abi": "3.0.0-nightly.20260106",
76
+ "@aztec/noir-protocol-circuits-types": "3.0.0-nightly.20260106",
77
+ "@aztec/noir-types": "3.0.0-nightly.20260106",
78
+ "@aztec/simulator": "3.0.0-nightly.20260106",
79
+ "@aztec/stdlib": "3.0.0-nightly.20260106",
80
+ "@aztec/telemetry-client": "3.0.0-nightly.20260106",
81
+ "@aztec/world-state": "3.0.0-nightly.20260106",
82
82
  "commander": "^12.1.0",
83
83
  "pako": "^2.1.0",
84
84
  "source-map-support": "^0.5.21",
85
85
  "tslib": "^2.4.0"
86
86
  },
87
87
  "devDependencies": {
88
- "@aztec/ethereum": "3.0.0-nightly.20260104",
89
- "@aztec/kv-store": "3.0.0-nightly.20260104",
90
- "@aztec/noir-contracts.js": "3.0.0-nightly.20260104",
91
- "@aztec/noir-test-contracts.js": "3.0.0-nightly.20260104",
92
- "@aztec/protocol-contracts": "3.0.0-nightly.20260104",
88
+ "@aztec/ethereum": "3.0.0-nightly.20260106",
89
+ "@aztec/kv-store": "3.0.0-nightly.20260106",
90
+ "@aztec/noir-contracts.js": "3.0.0-nightly.20260106",
91
+ "@aztec/noir-test-contracts.js": "3.0.0-nightly.20260106",
92
+ "@aztec/protocol-contracts": "3.0.0-nightly.20260106",
93
93
  "@jest/globals": "^30.0.0",
94
94
  "@types/jest": "^30.0.0",
95
95
  "@types/node": "^22.15.17",
@@ -1,5 +1,5 @@
1
- import { AztecClientBackend, Barretenberg } from '@aztec/bb.js';
2
- import { createLogger } from '@aztec/foundation/log';
1
+ import { AztecClientBackend, type BackendOptions, Barretenberg } from '@aztec/bb.js';
2
+ import { type LogLevel, type Logger, createLogger } from '@aztec/foundation/log';
3
3
  import { Timer } from '@aztec/foundation/timer';
4
4
  import { serializeWitness } from '@aztec/noir-noirc_abi';
5
5
  import {
@@ -45,12 +45,17 @@ import type { CircuitSimulationStats, CircuitWitnessGenerationStats } from '@azt
45
45
 
46
46
  import { ungzip } from 'pako';
47
47
 
48
+ export type BBPrivateKernelProverOptions = Omit<BackendOptions, 'logger'> & { logger?: Logger };
48
49
  export abstract class BBPrivateKernelProver implements PrivateKernelProver {
50
+ private log: Logger;
51
+
49
52
  constructor(
50
53
  protected artifactProvider: ArtifactProvider,
51
54
  protected simulator: CircuitSimulator,
52
- protected log = createLogger('bb-prover'),
53
- ) {}
55
+ protected options: BBPrivateKernelProverOptions = {},
56
+ ) {
57
+ this.log = options.logger || createLogger('bb-prover:private-kernel');
58
+ }
54
59
 
55
60
  public async generateInitOutput(
56
61
  inputs: PrivateKernelInitCircuitPrivateInputs,
@@ -271,9 +276,13 @@ export abstract class BBPrivateKernelProver implements PrivateKernelProver {
271
276
  public async createChonkProof(executionSteps: PrivateExecutionStep[]): Promise<ChonkProofWithPublicInputs> {
272
277
  const timer = new Timer();
273
278
  this.log.info(`Generating ClientIVC proof...`);
279
+ const barretenberg = await Barretenberg.initSingleton({
280
+ ...this.options,
281
+ logger: this.options.logger?.[(process.env.LOG_LEVEL as LogLevel) || 'verbose'],
282
+ });
274
283
  const backend = new AztecClientBackend(
275
284
  executionSteps.map(step => ungzip(step.bytecode)),
276
- await Barretenberg.initSingleton(),
285
+ barretenberg,
277
286
  );
278
287
 
279
288
  const [proof] = await backend.prove(
@@ -290,7 +299,11 @@ export abstract class BBPrivateKernelProver implements PrivateKernelProver {
290
299
 
291
300
  public async computeGateCountForCircuit(_bytecode: Buffer, _circuitName: string): Promise<number> {
292
301
  // Note we do not pass the vk to the backend. This is unneeded for gate counts.
293
- const backend = new AztecClientBackend([ungzip(_bytecode)], await Barretenberg.initSingleton());
302
+ const barretenberg = await Barretenberg.initSingleton({
303
+ ...this.options,
304
+ logger: this.options.logger?.[(process.env.LOG_LEVEL as LogLevel) || 'verbose'],
305
+ });
306
+ const backend = new AztecClientBackend([ungzip(_bytecode)], barretenberg);
294
307
  const gateCount = await backend.gates();
295
308
  return gateCount[0];
296
309
  }
@@ -1,11 +1,10 @@
1
- import { createLogger } from '@aztec/foundation/log';
2
1
  import { BundleArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/bundle';
3
2
  import type { CircuitSimulator } from '@aztec/simulator/client';
4
3
 
5
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
4
+ import { BBPrivateKernelProver, type BBPrivateKernelProverOptions } from './bb_private_kernel_prover.js';
6
5
 
7
6
  export class BBBundlePrivateKernelProver extends BBPrivateKernelProver {
8
- constructor(simulator: CircuitSimulator, log = createLogger('bb-prover:bundle')) {
9
- super(new BundleArtifactProvider(), simulator, log);
7
+ constructor(simulator: CircuitSimulator, options: BBPrivateKernelProverOptions = {}) {
8
+ super(new BundleArtifactProvider(), simulator, options);
10
9
  }
11
10
  }
@@ -1,11 +1,10 @@
1
- import { createLogger } from '@aztec/foundation/log';
2
1
  import { LazyArtifactProvider } from '@aztec/noir-protocol-circuits-types/client/lazy';
3
2
  import type { CircuitSimulator } from '@aztec/simulator/client';
4
3
 
5
- import { BBPrivateKernelProver } from './bb_private_kernel_prover.js';
4
+ import { BBPrivateKernelProver, type BBPrivateKernelProverOptions } from './bb_private_kernel_prover.js';
6
5
 
7
6
  export class BBLazyPrivateKernelProver extends BBPrivateKernelProver {
8
- constructor(simulator: CircuitSimulator, log = createLogger('bb-prover:lazy')) {
9
- super(new LazyArtifactProvider(), simulator, log);
7
+ constructor(simulator: CircuitSimulator, options: BBPrivateKernelProverOptions = {}) {
8
+ super(new LazyArtifactProvider(), simulator, options);
10
9
  }
11
10
  }
@@ -1,43 +1,47 @@
1
1
  import { ProvingRequestType } from '@aztec/stdlib/proofs';
2
2
 
3
3
  export const WITGEN_DELAY_MS: Record<ProvingRequestType, number> = {
4
- [ProvingRequestType.PARITY_BASE]: 2_000,
5
- [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 30,
4
+ [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 60,
5
+ [ProvingRequestType.PARITY_BASE]: 1_600,
6
+ [ProvingRequestType.PARITY_ROOT]: 40,
6
7
  [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 45,
7
- [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 27,
8
8
  [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 18,
9
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 27,
10
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 30,
11
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 36_000,
12
+ [ProvingRequestType.ROOT_ROLLUP]: 35,
13
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 2_500,
14
+ [ProvingRequestType.TX_MERGE_ROLLUP]: 25,
15
+ [ProvingRequestType.PUBLIC_VM]: 0,
16
+
17
+ // TBD
18
+ [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 30,
9
19
  [ProvingRequestType.BLOCK_ROOT_ROLLUP]: 40_000,
10
20
  [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: 20_000,
11
21
  [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: 40_000,
12
- [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 36_600,
13
22
  [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: 0,
14
- [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 30,
15
- [ProvingRequestType.TX_MERGE_ROLLUP]: 0,
16
23
  [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 2_500, // Guess based on public
17
- [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 2_500,
18
- [ProvingRequestType.PARITY_ROOT]: 40,
19
- [ProvingRequestType.ROOT_ROLLUP]: 35,
20
- [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 60,
21
- [ProvingRequestType.PUBLIC_VM]: 0,
22
24
  };
23
25
 
24
26
  export const PROOF_DELAY_MS: Record<ProvingRequestType, number> = {
25
- [ProvingRequestType.PARITY_BASE]: 16_300,
27
+ [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 16_300,
28
+ [ProvingRequestType.PARITY_BASE]: 15_300,
29
+ [ProvingRequestType.PARITY_ROOT]: 18_600,
30
+ [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 17_400,
31
+ [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 4_500,
32
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 9_200,
33
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 10_200,
34
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 37_100,
35
+ [ProvingRequestType.ROOT_ROLLUP]: 93_000,
36
+ [ProvingRequestType.TX_MERGE_ROLLUP]: 10_000,
37
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 44_500,
38
+ [ProvingRequestType.PUBLIC_VM]: 10_000,
39
+
40
+ // TBD
26
41
  [ProvingRequestType.BLOCK_MERGE_ROLLUP]: 15_000,
27
- [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: 16_500,
28
- [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: 9_210,
29
- [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: 4_560,
30
42
  [ProvingRequestType.BLOCK_ROOT_ROLLUP]: 35_000,
31
43
  [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: 15_000,
32
44
  [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: 35_000,
33
- [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: 38_800,
34
45
  [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: 0,
35
- [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: 9_760,
36
- [ProvingRequestType.TX_MERGE_ROLLUP]: 0,
37
46
  [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: 45_000, // Guess based on public
38
- [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: 45_000,
39
- [ProvingRequestType.PARITY_ROOT]: 18_600,
40
- [ProvingRequestType.ROOT_ROLLUP]: 84_000,
41
- [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: 16_300,
42
- [ProvingRequestType.PUBLIC_VM]: 0,
43
47
  };
package/src/test/index.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './test_circuit_prover.js';
2
2
  export * from './test_verifier.js';
3
+ export * from './delay_values.js';