@aztec/prover-client 0.82.3 → 0.83.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/config.d.ts +6 -6
- package/dest/config.d.ts.map +1 -1
- package/dest/orchestrator/block-building-helpers.js +2 -2
- package/dest/orchestrator/orchestrator.d.ts +1 -1
- package/dest/orchestrator/orchestrator.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator.js +1 -10
- package/dest/prover-client/prover-client.js +1 -2
- package/dest/proving_broker/config.d.ts +2 -1
- package/dest/proving_broker/config.d.ts.map +1 -1
- package/dest/proving_broker/config.js +6 -1
- package/package.json +15 -15
- package/src/config.ts +8 -7
- package/src/orchestrator/block-building-helpers.ts +2 -2
- package/src/orchestrator/orchestrator.ts +1 -10
- package/src/prover-client/prover-client.ts +1 -1
- package/src/proving_broker/config.ts +5 -1
package/dest/config.d.ts
CHANGED
|
@@ -2,16 +2,16 @@ import type { ACVMConfig, BBConfig } from '@aztec/bb-prover';
|
|
|
2
2
|
import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
3
3
|
import { type ProverConfig } from '@aztec/stdlib/interfaces/server';
|
|
4
4
|
import { type ProverAgentConfig, type ProverBrokerConfig } from './proving_broker/config.js';
|
|
5
|
-
/**
|
|
6
|
-
|
|
7
|
-
*/
|
|
8
|
-
export type ProverClientConfig =
|
|
5
|
+
/** The prover configuration as defined by the user. */
|
|
6
|
+
export type ProverClientUserConfig = ProverConfig & ProverAgentConfig & ProverBrokerConfig & BBConfig & ACVMConfig;
|
|
7
|
+
/** The prover configuration with all missing fields resolved. */
|
|
8
|
+
export type ProverClientConfig = ProverClientUserConfig & Required<Pick<ProverClientUserConfig, 'proverId'>>;
|
|
9
9
|
export declare const bbConfigMappings: ConfigMappingsType<BBConfig & ACVMConfig>;
|
|
10
|
-
export declare const proverClientConfigMappings: ConfigMappingsType<
|
|
10
|
+
export declare const proverClientConfigMappings: ConfigMappingsType<ProverClientUserConfig>;
|
|
11
11
|
/**
|
|
12
12
|
* Returns the prover configuration from the environment variables.
|
|
13
13
|
* Note: If an environment variable is not set, the default value is used.
|
|
14
14
|
* @returns The prover configuration.
|
|
15
15
|
*/
|
|
16
|
-
export declare function getProverEnvVars():
|
|
16
|
+
export declare function getProverEnvVars(): ProverClientUserConfig;
|
|
17
17
|
//# sourceMappingURL=config.d.ts.map
|
package/dest/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,KAAK,kBAAkB,EAA8C,MAAM,0BAA0B,CAAC;AAC/G,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,iCAAiC,CAAC;AAE1F,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAGxB,MAAM,4BAA4B,CAAC;AAEpC
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,KAAK,kBAAkB,EAA8C,MAAM,0BAA0B,CAAC;AAC/G,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,iCAAiC,CAAC;AAE1F,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAGxB,MAAM,4BAA4B,CAAC;AAEpC,uDAAuD;AACvD,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEnH,iEAAiE;AACjE,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC,CAAC;AAE7G,eAAO,MAAM,gBAAgB,EAAE,kBAAkB,CAAC,QAAQ,GAAG,UAAU,CAsBtE,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,kBAAkB,CAAC,sBAAsB,CAKjF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,sBAAsB,CAEzD"}
|
|
@@ -100,8 +100,8 @@ export async function getPublicDataHint(db, leafSlot) {
|
|
|
100
100
|
if (!leafPreimage) {
|
|
101
101
|
throw new Error(`Cannot find the leaf preimage for public data tree at index ${index}.`);
|
|
102
102
|
}
|
|
103
|
-
const exists = leafPreimage.slot.toBigInt() === leafSlot;
|
|
104
|
-
const value = exists ? leafPreimage.value : Fr.ZERO;
|
|
103
|
+
const exists = leafPreimage.leaf.slot.toBigInt() === leafSlot;
|
|
104
|
+
const value = exists ? leafPreimage.leaf.value : Fr.ZERO;
|
|
105
105
|
return new PublicDataHint(new Fr(leafSlot), value, membershipWitness, leafPreimage);
|
|
106
106
|
}
|
|
107
107
|
export const buildBlobHints = runInSpan('BlockBuilderHelpers', 'buildBlobHints', async (_span, txEffects)=>{
|
|
@@ -26,7 +26,7 @@ export declare class ProvingOrchestrator implements EpochProver {
|
|
|
26
26
|
private provingPromise;
|
|
27
27
|
private metrics;
|
|
28
28
|
private dbs;
|
|
29
|
-
constructor(dbProvider: ForkMerkleTreeOperations, prover: ServerCircuitProver, proverId
|
|
29
|
+
constructor(dbProvider: ForkMerkleTreeOperations, prover: ServerCircuitProver, proverId: Fr, telemetryClient?: TelemetryClient);
|
|
30
30
|
get tracer(): Tracer;
|
|
31
31
|
getProverId(): Fr;
|
|
32
32
|
stop(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAQ9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,wBAAwB,EAGxB,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAWzC,OAAO,EAAE,KAAK,sBAAsB,EAAgB,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,EAAE,EAAmB,MAAM,kBAAkB,CAAC;AAEtH,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EAIZ,MAAM,yBAAyB,CAAC;AAoBjC;;;;;;;;;GASG;AAEH;;GAEG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IASnD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAV3B,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,kBAAkB,CAAyB;IAEnD,OAAO,CAAC,cAAc,CAAiD;IACvE,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,GAAG,CAAqD;gBAGtD,UAAU,EAAE,wBAAwB,EACpC,MAAM,EAAE,mBAAmB,EAClB,QAAQ,
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAQ9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,wBAAwB,EAGxB,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAWzC,OAAO,EAAE,KAAK,sBAAsB,EAAgB,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,EAAE,EAAmB,MAAM,kBAAkB,CAAC;AAEtH,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EAIZ,MAAM,yBAAyB,CAAC;AAoBjC;;;;;;;;;GASG;AAEH;;GAEG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IASnD,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAV3B,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,kBAAkB,CAAyB;IAEnD,OAAO,CAAC,cAAc,CAAiD;IACvE,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,GAAG,CAAqD;gBAGtD,UAAU,EAAE,wBAAwB,EACpC,MAAM,EAAE,mBAAmB,EAClB,QAAQ,EAAE,EAAE,EAC7B,eAAe,GAAE,eAAsC;IAKzD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAEM,WAAW,IAAI,EAAE;IAIjB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IAW1F;;;;;OAKG;IAIU,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,WAAW;IAyCnH;;;OAGG;IAIU,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDtD;;;OAGG;IAEU,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE;IAcxC;;;OAGG;IAIU,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBnG,oDAAoD;IAC7C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;YAQzB,UAAU;cAqCR,kCAAkC,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,sBAAsB;IAWvG;;OAEG;IACI,MAAM;IAQb;;OAEG;IACU,aAAa;;;;IAoB1B;;;;OAIG;YACW,kBAAkB;IAShC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;YAwDT,uBAAuB;YA+BvB,uBAAuB;IAmCrC,OAAO,CAAC,iBAAiB;IA8CzB,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,kBAAkB;YA0BZ,sBAAsB;IA0DpC,OAAO,CAAC,wBAAwB;IAuBhC,OAAO,CAAC,gCAAgC;IAUxC,OAAO,CAAC,wBAAwB;IA2BhC,OAAO,CAAC,uBAAuB;YAyBjB,mBAAmB;IA6BjC,OAAO,CAAC,iBAAiB;YA4BX,8BAA8B;YAa9B,8BAA8B;IAyB5C,OAAO,CAAC,mCAAmC;IAa3C,OAAO,CAAC,yBAAyB;IASjC;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IA8CjB,OAAO,CAAC,4BAA4B;CAWrC"}
|
|
@@ -48,7 +48,7 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
48
48
|
provingPromise;
|
|
49
49
|
metrics;
|
|
50
50
|
dbs;
|
|
51
|
-
constructor(dbProvider, prover, proverId
|
|
51
|
+
constructor(dbProvider, prover, proverId, telemetryClient = getTelemetryClient()){
|
|
52
52
|
this.dbProvider = dbProvider;
|
|
53
53
|
this.prover = prover;
|
|
54
54
|
this.proverId = proverId;
|
|
@@ -371,7 +371,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
371
371
|
logger.debug(`Enqueuing deferred proving base rollup for ${processedTx.hash.toString()}`);
|
|
372
372
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, `ProvingOrchestrator.prover.${inputs instanceof PrivateBaseRollupInputs ? 'getPrivateBaseRollupProof' : 'getPublicBaseRollupProof'}`, {
|
|
373
373
|
[Attributes.TX_HASH]: processedTx.hash.toString(),
|
|
374
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
375
374
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: rollupType
|
|
376
375
|
}, (signal)=>{
|
|
377
376
|
if (inputs instanceof PrivateBaseRollupInputs) {
|
|
@@ -424,7 +423,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
424
423
|
}
|
|
425
424
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getTubeProof', {
|
|
426
425
|
[Attributes.TX_HASH]: txHash,
|
|
427
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
428
426
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'tube-circuit'
|
|
429
427
|
}, (signal)=>this.prover.getTubeProof(inputs, signal, this.provingState.epochNumber)), handler);
|
|
430
428
|
}
|
|
@@ -437,7 +435,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
437
435
|
}
|
|
438
436
|
const inputs = provingState.getMergeRollupInputs(location);
|
|
439
437
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getMergeRollupProof', {
|
|
440
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
441
438
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'merge-rollup'
|
|
442
439
|
}, (signal)=>this.prover.getMergeRollupProof(inputs, signal, provingState.epochNumber)), async (result)=>{
|
|
443
440
|
provingState.setMergeRollupProof(location, result);
|
|
@@ -454,7 +451,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
454
451
|
const { rollupType, inputs } = await provingState.getBlockRootRollupTypeAndInputs(this.proverId);
|
|
455
452
|
logger.debug(`Enqueuing ${rollupType} for block ${provingState.blockNumber} with ${provingState.newL1ToL2Messages.length} l1 to l2 msgs.`);
|
|
456
453
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getBlockRootRollupProof', {
|
|
457
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
458
454
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: rollupType
|
|
459
455
|
}, (signal)=>{
|
|
460
456
|
if (inputs instanceof EmptyBlockRootRollupInputs) {
|
|
@@ -490,7 +486,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
490
486
|
return;
|
|
491
487
|
}
|
|
492
488
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getBaseParityProof', {
|
|
493
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
494
489
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'base-parity'
|
|
495
490
|
}, (signal)=>this.prover.getBaseParityProof(inputs, signal, provingState.epochNumber)), (provingOutput)=>{
|
|
496
491
|
provingState.setBaseParityProof(index, provingOutput);
|
|
@@ -512,7 +507,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
512
507
|
}
|
|
513
508
|
const inputs = provingState.getRootParityInputs();
|
|
514
509
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getRootParityProof', {
|
|
515
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
516
510
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'root-parity'
|
|
517
511
|
}, (signal)=>this.prover.getRootParityProof(inputs, signal, provingState.epochNumber)), async (result)=>{
|
|
518
512
|
provingState.setRootParityProof(result);
|
|
@@ -528,7 +522,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
528
522
|
}
|
|
529
523
|
const inputs = provingState.getBlockMergeRollupInputs(location);
|
|
530
524
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getBlockMergeRollupProof', {
|
|
531
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
532
525
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'block-merge-rollup'
|
|
533
526
|
}, (signal)=>this.prover.getBlockMergeRollupProof(inputs, signal, provingState.epochNumber)), (result)=>{
|
|
534
527
|
provingState.setBlockMergeRollupProof(location, result);
|
|
@@ -543,7 +536,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
543
536
|
logger.debug('Padding epoch proof with an empty block root proof.');
|
|
544
537
|
const inputs = await provingState.getPaddingBlockRootInputs(this.proverId);
|
|
545
538
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getEmptyBlockRootRollupProof', {
|
|
546
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
547
539
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'empty-block-root-rollup'
|
|
548
540
|
}, (signal)=>this.prover.getEmptyBlockRootRollupProof(inputs, signal, provingState.epochNumber)), (result)=>{
|
|
549
541
|
logger.debug('Completed proof for padding block root.');
|
|
@@ -560,7 +552,6 @@ const logger = createLogger('prover-client:orchestrator');
|
|
|
560
552
|
logger.debug(`Preparing root rollup`);
|
|
561
553
|
const inputs = provingState.getRootRollupInputs(this.proverId);
|
|
562
554
|
this.deferredProving(provingState, wrapCallbackInSpan(this.tracer, 'ProvingOrchestrator.prover.getRootRollupProof', {
|
|
563
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
564
555
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'root-rollup'
|
|
565
556
|
}, (signal)=>this.prover.getRootRollupProof(inputs, signal, provingState.epochNumber)), (result)=>{
|
|
566
557
|
logger.verbose(`Orchestrator completed root rollup for epoch ${provingState.epochNumber}`);
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { BBNativeRollupProver, TestCircuitProver } from '@aztec/bb-prover';
|
|
2
2
|
import { times } from '@aztec/foundation/collection';
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
3
|
import { createLogger } from '@aztec/foundation/log';
|
|
5
4
|
import { NativeACVMSimulator } from '@aztec/simulator/server';
|
|
6
5
|
import { getTelemetryClient } from '@aztec/telemetry-client';
|
|
@@ -38,7 +37,7 @@ import { ServerEpochProver } from './server-epoch-prover.js';
|
|
|
38
37
|
return new ServerEpochProver(facade, orchestrator);
|
|
39
38
|
}
|
|
40
39
|
getProverId() {
|
|
41
|
-
return this.config.proverId
|
|
40
|
+
return this.config.proverId;
|
|
42
41
|
}
|
|
43
42
|
async updateProverConfig(config) {
|
|
44
43
|
const newConfig = {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type L1ReaderConfig } from '@aztec/ethereum';
|
|
2
2
|
import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
3
3
|
import { type DataStoreConfig } from '@aztec/kv-store/config';
|
|
4
|
+
import { type ChainConfig } from '@aztec/stdlib/config';
|
|
4
5
|
import { ProvingRequestType } from '@aztec/stdlib/proofs';
|
|
5
6
|
import { z } from 'zod';
|
|
6
7
|
export declare const ProverBrokerConfig: z.ZodObject<{
|
|
@@ -43,7 +44,7 @@ export declare const ProverBrokerConfig: z.ZodObject<{
|
|
|
43
44
|
dataDirectory?: string | undefined;
|
|
44
45
|
proverBrokerStoreMapSizeKB?: number | undefined;
|
|
45
46
|
}>;
|
|
46
|
-
export type ProverBrokerConfig = z.infer<typeof ProverBrokerConfig> & Pick<DataStoreConfig, 'dataStoreMapSizeKB' | 'dataDirectory'> & L1ReaderConfig
|
|
47
|
+
export type ProverBrokerConfig = z.infer<typeof ProverBrokerConfig> & Pick<DataStoreConfig, 'dataStoreMapSizeKB' | 'dataDirectory'> & L1ReaderConfig & Pick<ChainConfig, 'rollupVersion'>;
|
|
47
48
|
export declare const proverBrokerConfigMappings: ConfigMappingsType<ProverBrokerConfig>;
|
|
48
49
|
export declare const defaultProverBrokerConfig: ProverBrokerConfig;
|
|
49
50
|
export declare const ProverAgentConfig: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/proving_broker/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EACL,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/proving_broker/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EACL,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,KAAK,WAAW,EAAuB,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;IAC7B,qFAAqF;;IAErF,uHAAuH;;IAEvH,6FAA6F;;IAE7F,8EAA8E;;IAE9E,qCAAqC;;IAErC,6FAA6F;;IAE7F,+EAA+E;;IAE/E,4CAA4C;;IAE5C,uDAAuD;;;;;;;;;;;;;;;;;;;;;;EAEvD,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,GACjE,IAAI,CAAC,eAAe,EAAE,oBAAoB,GAAG,eAAe,CAAC,GAC7D,cAAc,GACd,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AAErC,eAAO,MAAM,0BAA0B,EAAE,kBAAkB,CAAC,kBAAkB,CAuC7E,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,kBAAiE,CAAC;AAE1G,eAAO,MAAM,iBAAiB;IAC5B,2CAA2C;;IAE3C,wDAAwD;;IAExD,gDAAgD;;IAEhD,+CAA+C;;IAE/C,uCAAuC;;IAEvC,gDAAgD;;IAEhD,2DAA2D;;IAE3D,8EAA8E;;;;;;;;;;;;;;;;;;;;EAE9E,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,CAAC,iBAAiB,CA4C3E,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { l1ReaderConfigMappings } from '@aztec/ethereum';
|
|
2
2
|
import { booleanConfigHelper, getDefaultConfig, numberConfigHelper } from '@aztec/foundation/config';
|
|
3
|
+
import { pickConfigMappings } from '@aztec/foundation/config';
|
|
3
4
|
import { dataConfigMappings } from '@aztec/kv-store/config';
|
|
5
|
+
import { chainConfigMappings } from '@aztec/stdlib/config';
|
|
4
6
|
import { ProvingRequestType } from '@aztec/stdlib/proofs';
|
|
5
7
|
import { z } from 'zod';
|
|
6
8
|
export const ProverBrokerConfig = z.object({
|
|
@@ -51,7 +53,10 @@ export const proverBrokerConfigMappings = {
|
|
|
51
53
|
description: "The size of the prover broker's database. Will override the dataStoreMapSizeKB if set."
|
|
52
54
|
},
|
|
53
55
|
...dataConfigMappings,
|
|
54
|
-
...l1ReaderConfigMappings
|
|
56
|
+
...l1ReaderConfigMappings,
|
|
57
|
+
...pickConfigMappings(chainConfigMappings, [
|
|
58
|
+
'rollupVersion'
|
|
59
|
+
])
|
|
55
60
|
};
|
|
56
61
|
export const defaultProverBrokerConfig = getDefaultConfig(proverBrokerConfigMappings);
|
|
57
62
|
export const ProverAgentConfig = z.object({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/prover-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.83.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -66,19 +66,19 @@
|
|
|
66
66
|
]
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@aztec/bb-prover": "0.
|
|
70
|
-
"@aztec/blob-lib": "0.
|
|
71
|
-
"@aztec/constants": "0.
|
|
72
|
-
"@aztec/ethereum": "0.
|
|
73
|
-
"@aztec/foundation": "0.
|
|
74
|
-
"@aztec/kv-store": "0.
|
|
75
|
-
"@aztec/noir-protocol-circuits-types": "0.
|
|
76
|
-
"@aztec/noir-types": "0.
|
|
77
|
-
"@aztec/protocol-contracts": "0.
|
|
78
|
-
"@aztec/simulator": "0.
|
|
79
|
-
"@aztec/stdlib": "0.
|
|
80
|
-
"@aztec/telemetry-client": "0.
|
|
81
|
-
"@aztec/world-state": "0.
|
|
69
|
+
"@aztec/bb-prover": "0.83.0",
|
|
70
|
+
"@aztec/blob-lib": "0.83.0",
|
|
71
|
+
"@aztec/constants": "0.83.0",
|
|
72
|
+
"@aztec/ethereum": "0.83.0",
|
|
73
|
+
"@aztec/foundation": "0.83.0",
|
|
74
|
+
"@aztec/kv-store": "0.83.0",
|
|
75
|
+
"@aztec/noir-protocol-circuits-types": "0.83.0",
|
|
76
|
+
"@aztec/noir-types": "0.83.0",
|
|
77
|
+
"@aztec/protocol-contracts": "0.83.0",
|
|
78
|
+
"@aztec/simulator": "0.83.0",
|
|
79
|
+
"@aztec/stdlib": "0.83.0",
|
|
80
|
+
"@aztec/telemetry-client": "0.83.0",
|
|
81
|
+
"@aztec/world-state": "0.83.0",
|
|
82
82
|
"@google-cloud/storage": "^7.15.0",
|
|
83
83
|
"@iarna/toml": "^2.2.5",
|
|
84
84
|
"commander": "^12.1.0",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"zod": "^3.23.8"
|
|
89
89
|
},
|
|
90
90
|
"devDependencies": {
|
|
91
|
-
"@aztec/noir-contracts.js": "0.
|
|
91
|
+
"@aztec/noir-contracts.js": "0.83.0",
|
|
92
92
|
"@jest/globals": "^29.5.0",
|
|
93
93
|
"@types/jest": "^29.5.0",
|
|
94
94
|
"@types/memdown": "^3.0.0",
|
package/src/config.ts
CHANGED
|
@@ -9,10 +9,11 @@ import {
|
|
|
9
9
|
proverBrokerConfigMappings,
|
|
10
10
|
} from './proving_broker/config.js';
|
|
11
11
|
|
|
12
|
-
/**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
/** The prover configuration as defined by the user. */
|
|
13
|
+
export type ProverClientUserConfig = ProverConfig & ProverAgentConfig & ProverBrokerConfig & BBConfig & ACVMConfig;
|
|
14
|
+
|
|
15
|
+
/** The prover configuration with all missing fields resolved. */
|
|
16
|
+
export type ProverClientConfig = ProverClientUserConfig & Required<Pick<ProverClientUserConfig, 'proverId'>>;
|
|
16
17
|
|
|
17
18
|
export const bbConfigMappings: ConfigMappingsType<BBConfig & ACVMConfig> = {
|
|
18
19
|
acvmWorkingDirectory: {
|
|
@@ -38,7 +39,7 @@ export const bbConfigMappings: ConfigMappingsType<BBConfig & ACVMConfig> = {
|
|
|
38
39
|
},
|
|
39
40
|
};
|
|
40
41
|
|
|
41
|
-
export const proverClientConfigMappings: ConfigMappingsType<
|
|
42
|
+
export const proverClientConfigMappings: ConfigMappingsType<ProverClientUserConfig> = {
|
|
42
43
|
...bbConfigMappings,
|
|
43
44
|
...proverConfigMappings,
|
|
44
45
|
...proverAgentConfigMappings,
|
|
@@ -50,6 +51,6 @@ export const proverClientConfigMappings: ConfigMappingsType<ProverClientConfig>
|
|
|
50
51
|
* Note: If an environment variable is not set, the default value is used.
|
|
51
52
|
* @returns The prover configuration.
|
|
52
53
|
*/
|
|
53
|
-
export function getProverEnvVars():
|
|
54
|
-
return getConfigFromMappings<
|
|
54
|
+
export function getProverEnvVars(): ProverClientUserConfig {
|
|
55
|
+
return getConfigFromMappings<ProverClientUserConfig>(proverClientConfigMappings);
|
|
55
56
|
}
|
|
@@ -234,8 +234,8 @@ export async function getPublicDataHint(db: MerkleTreeWriteOperations, leafSlot:
|
|
|
234
234
|
throw new Error(`Cannot find the leaf preimage for public data tree at index ${index}.`);
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
const exists = leafPreimage.slot.toBigInt() === leafSlot;
|
|
238
|
-
const value = exists ? leafPreimage.value : Fr.ZERO;
|
|
237
|
+
const exists = leafPreimage.leaf.slot.toBigInt() === leafSlot;
|
|
238
|
+
const value = exists ? leafPreimage.leaf.value : Fr.ZERO;
|
|
239
239
|
|
|
240
240
|
return new PublicDataHint(new Fr(leafSlot), value, membershipWitness, leafPreimage);
|
|
241
241
|
}
|
|
@@ -90,7 +90,7 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
90
90
|
constructor(
|
|
91
91
|
private dbProvider: ForkMerkleTreeOperations,
|
|
92
92
|
private prover: ServerCircuitProver,
|
|
93
|
-
private readonly proverId: Fr
|
|
93
|
+
private readonly proverId: Fr,
|
|
94
94
|
telemetryClient: TelemetryClient = getTelemetryClient(),
|
|
95
95
|
) {
|
|
96
96
|
this.metrics = new ProvingOrchestratorMetrics(telemetryClient, 'ProvingOrchestrator');
|
|
@@ -531,7 +531,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
531
531
|
}`,
|
|
532
532
|
{
|
|
533
533
|
[Attributes.TX_HASH]: processedTx.hash.toString(),
|
|
534
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
535
534
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: rollupType,
|
|
536
535
|
},
|
|
537
536
|
signal => {
|
|
@@ -601,7 +600,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
601
600
|
'ProvingOrchestrator.prover.getTubeProof',
|
|
602
601
|
{
|
|
603
602
|
[Attributes.TX_HASH]: txHash,
|
|
604
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
605
603
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'tube-circuit' satisfies CircuitName,
|
|
606
604
|
},
|
|
607
605
|
signal => this.prover.getTubeProof(inputs, signal, this.provingState!.epochNumber),
|
|
@@ -626,7 +624,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
626
624
|
this.tracer,
|
|
627
625
|
'ProvingOrchestrator.prover.getMergeRollupProof',
|
|
628
626
|
{
|
|
629
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
630
627
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'merge-rollup' satisfies CircuitName,
|
|
631
628
|
},
|
|
632
629
|
signal => this.prover.getMergeRollupProof(inputs, signal, provingState.epochNumber),
|
|
@@ -659,7 +656,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
659
656
|
this.tracer,
|
|
660
657
|
'ProvingOrchestrator.prover.getBlockRootRollupProof',
|
|
661
658
|
{
|
|
662
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
663
659
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: rollupType,
|
|
664
660
|
},
|
|
665
661
|
signal => {
|
|
@@ -710,7 +706,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
710
706
|
this.tracer,
|
|
711
707
|
'ProvingOrchestrator.prover.getBaseParityProof',
|
|
712
708
|
{
|
|
713
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
714
709
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'base-parity' satisfies CircuitName,
|
|
715
710
|
},
|
|
716
711
|
signal => this.prover.getBaseParityProof(inputs, signal, provingState.epochNumber),
|
|
@@ -746,7 +741,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
746
741
|
this.tracer,
|
|
747
742
|
'ProvingOrchestrator.prover.getRootParityProof',
|
|
748
743
|
{
|
|
749
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
750
744
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'root-parity' satisfies CircuitName,
|
|
751
745
|
},
|
|
752
746
|
signal => this.prover.getRootParityProof(inputs, signal, provingState.epochNumber),
|
|
@@ -774,7 +768,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
774
768
|
this.tracer,
|
|
775
769
|
'ProvingOrchestrator.prover.getBlockMergeRollupProof',
|
|
776
770
|
{
|
|
777
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
778
771
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'block-merge-rollup' satisfies CircuitName,
|
|
779
772
|
},
|
|
780
773
|
signal => this.prover.getBlockMergeRollupProof(inputs, signal, provingState.epochNumber),
|
|
@@ -802,7 +795,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
802
795
|
this.tracer,
|
|
803
796
|
'ProvingOrchestrator.prover.getEmptyBlockRootRollupProof',
|
|
804
797
|
{
|
|
805
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
806
798
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'empty-block-root-rollup' satisfies CircuitName,
|
|
807
799
|
},
|
|
808
800
|
signal => this.prover.getEmptyBlockRootRollupProof(inputs, signal, provingState.epochNumber),
|
|
@@ -832,7 +824,6 @@ export class ProvingOrchestrator implements EpochProver {
|
|
|
832
824
|
this.tracer,
|
|
833
825
|
'ProvingOrchestrator.prover.getRootRollupProof',
|
|
834
826
|
{
|
|
835
|
-
[Attributes.PROTOCOL_CIRCUIT_TYPE]: 'server',
|
|
836
827
|
[Attributes.PROTOCOL_CIRCUIT_NAME]: 'root-rollup' satisfies CircuitName,
|
|
837
828
|
},
|
|
838
829
|
signal => this.prover.getRootRollupProof(inputs, signal, provingState.epochNumber),
|
|
@@ -49,7 +49,7 @@ export class ProverClient implements EpochProverManager {
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
public getProverId(): Fr {
|
|
52
|
-
return this.config.proverId
|
|
52
|
+
return this.config.proverId;
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
async updateProverConfig(config: Partial<ProverClientConfig>): Promise<void> {
|
|
@@ -5,7 +5,9 @@ import {
|
|
|
5
5
|
getDefaultConfig,
|
|
6
6
|
numberConfigHelper,
|
|
7
7
|
} from '@aztec/foundation/config';
|
|
8
|
+
import { pickConfigMappings } from '@aztec/foundation/config';
|
|
8
9
|
import { type DataStoreConfig, dataConfigMappings } from '@aztec/kv-store/config';
|
|
10
|
+
import { type ChainConfig, chainConfigMappings } from '@aztec/stdlib/config';
|
|
9
11
|
import { ProvingRequestType } from '@aztec/stdlib/proofs';
|
|
10
12
|
|
|
11
13
|
import { z } from 'zod';
|
|
@@ -33,7 +35,8 @@ export const ProverBrokerConfig = z.object({
|
|
|
33
35
|
|
|
34
36
|
export type ProverBrokerConfig = z.infer<typeof ProverBrokerConfig> &
|
|
35
37
|
Pick<DataStoreConfig, 'dataStoreMapSizeKB' | 'dataDirectory'> &
|
|
36
|
-
L1ReaderConfig
|
|
38
|
+
L1ReaderConfig &
|
|
39
|
+
Pick<ChainConfig, 'rollupVersion'>;
|
|
37
40
|
|
|
38
41
|
export const proverBrokerConfigMappings: ConfigMappingsType<ProverBrokerConfig> = {
|
|
39
42
|
proverBrokerJobTimeoutMs: {
|
|
@@ -73,6 +76,7 @@ export const proverBrokerConfigMappings: ConfigMappingsType<ProverBrokerConfig>
|
|
|
73
76
|
},
|
|
74
77
|
...dataConfigMappings,
|
|
75
78
|
...l1ReaderConfigMappings,
|
|
79
|
+
...pickConfigMappings(chainConfigMappings, ['rollupVersion']),
|
|
76
80
|
};
|
|
77
81
|
|
|
78
82
|
export const defaultProverBrokerConfig: ProverBrokerConfig = getDefaultConfig(proverBrokerConfigMappings);
|