@aztec/prover-client 0.0.1-commit.9b94fc1 → 0.0.1-commit.9ee6fcc6
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 +2 -2
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +13 -3
- 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 +38 -14
- package/dest/light/lightweight_checkpoint_builder.d.ts.map +1 -1
- package/dest/light/lightweight_checkpoint_builder.js +148 -32
- package/dest/mocks/fixtures.d.ts +1 -1
- package/dest/mocks/fixtures.d.ts.map +1 -1
- package/dest/mocks/fixtures.js +6 -5
- package/dest/mocks/test_context.d.ts +5 -3
- package/dest/mocks/test_context.d.ts.map +1 -1
- package/dest/mocks/test_context.js +33 -14
- package/dest/orchestrator/block-building-helpers.d.ts +6 -6
- package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
- package/dest/orchestrator/block-building-helpers.js +7 -6
- package/dest/orchestrator/block-proving-state.d.ts +8 -4
- package/dest/orchestrator/block-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/block-proving-state.js +8 -1
- package/dest/orchestrator/checkpoint-proving-state.d.ts +22 -8
- package/dest/orchestrator/checkpoint-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/checkpoint-proving-state.js +43 -8
- package/dest/orchestrator/epoch-proving-state.d.ts +10 -9
- package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/epoch-proving-state.js +38 -2
- package/dest/orchestrator/orchestrator.d.ts +25 -8
- package/dest/orchestrator/orchestrator.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator.js +568 -158
- package/dest/orchestrator/orchestrator_metrics.d.ts +1 -3
- package/dest/orchestrator/orchestrator_metrics.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator_metrics.js +2 -15
- package/dest/orchestrator/tx-proving-state.d.ts +6 -5
- package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/tx-proving-state.js +8 -8
- package/dest/prover-client/factory.d.ts +3 -3
- package/dest/prover-client/factory.d.ts.map +1 -1
- package/dest/prover-client/prover-client.d.ts +6 -6
- package/dest/prover-client/prover-client.d.ts.map +1 -1
- package/dest/prover-client/prover-client.js +15 -10
- package/dest/prover-client/server-epoch-prover.d.ts +5 -5
- package/dest/prover-client/server-epoch-prover.d.ts.map +1 -1
- package/dest/proving_broker/broker_prover_facade.d.ts +7 -5
- package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -1
- package/dest/proving_broker/broker_prover_facade.js +18 -31
- package/dest/proving_broker/config.d.ts +15 -3
- package/dest/proving_broker/config.d.ts.map +1 -1
- package/dest/proving_broker/config.js +21 -4
- package/dest/proving_broker/fixtures.js +1 -1
- package/dest/proving_broker/proof_store/factory.d.ts +2 -5
- package/dest/proving_broker/proof_store/factory.d.ts.map +1 -1
- package/dest/proving_broker/proof_store/factory.js +7 -30
- 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 +2 -2
- package/dest/proving_broker/proof_store/index.d.ts.map +1 -1
- package/dest/proving_broker/proof_store/index.js +1 -1
- package/dest/proving_broker/proving_agent.d.ts +5 -9
- package/dest/proving_broker/proving_agent.d.ts.map +1 -1
- package/dest/proving_broker/proving_agent.js +4 -19
- package/dest/proving_broker/proving_broker.d.ts +7 -4
- package/dest/proving_broker/proving_broker.d.ts.map +1 -1
- package/dest/proving_broker/proving_broker.js +40 -14
- package/dest/proving_broker/proving_broker_database/persisted.d.ts +3 -2
- package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -1
- package/dest/proving_broker/proving_broker_database/persisted.js +389 -1
- package/dest/proving_broker/proving_broker_instrumentation.d.ts +3 -1
- package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +1 -1
- package/dest/proving_broker/proving_broker_instrumentation.js +22 -35
- package/dest/proving_broker/proving_job_controller.d.ts +4 -3
- package/dest/proving_broker/proving_job_controller.d.ts.map +1 -1
- package/dest/proving_broker/proving_job_controller.js +8 -6
- package/dest/proving_broker/rpc.d.ts +4 -2
- package/dest/proving_broker/rpc.d.ts.map +1 -1
- package/dest/proving_broker/rpc.js +8 -0
- package/dest/test/mock_proof_store.d.ts +3 -3
- package/dest/test/mock_proof_store.d.ts.map +1 -1
- package/dest/test/mock_prover.d.ts +5 -5
- package/dest/test/mock_prover.d.ts.map +1 -1
- package/dest/test/mock_prover.js +4 -4
- package/package.json +22 -22
- package/src/config.ts +14 -3
- package/src/light/index.ts +1 -0
- package/src/light/lightweight_checkpoint_builder.ts +215 -45
- package/src/mocks/fixtures.ts +6 -5
- package/src/mocks/test_context.ts +30 -13
- package/src/orchestrator/block-building-helpers.ts +7 -6
- package/src/orchestrator/block-proving-state.ts +12 -2
- package/src/orchestrator/checkpoint-proving-state.ts +60 -12
- package/src/orchestrator/epoch-proving-state.ts +66 -13
- package/src/orchestrator/orchestrator.ts +173 -147
- package/src/orchestrator/orchestrator_metrics.ts +2 -25
- package/src/orchestrator/tx-proving-state.ts +10 -14
- package/src/prover-client/factory.ts +6 -2
- package/src/prover-client/prover-client.ts +33 -24
- package/src/prover-client/server-epoch-prover.ts +4 -4
- package/src/proving_broker/broker_prover_facade.ts +26 -36
- package/src/proving_broker/config.ts +24 -2
- package/src/proving_broker/fixtures.ts +1 -1
- package/src/proving_broker/proof_store/factory.ts +10 -32
- package/src/proving_broker/proof_store/file_store_proof_store.ts +78 -0
- package/src/proving_broker/proof_store/index.ts +1 -1
- package/src/proving_broker/proving_agent.ts +6 -19
- package/src/proving_broker/proving_broker.ts +41 -11
- package/src/proving_broker/proving_broker_database/persisted.ts +15 -1
- package/src/proving_broker/proving_broker_instrumentation.ts +23 -35
- package/src/proving_broker/proving_job_controller.ts +11 -6
- package/src/proving_broker/rpc.ts +14 -0
- package/src/test/mock_prover.ts +2 -14
- package/dest/block-factory/index.d.ts +0 -2
- package/dest/block-factory/index.d.ts.map +0 -1
- package/dest/block-factory/index.js +0 -1
- package/dest/block-factory/light.d.ts +0 -38
- package/dest/block-factory/light.d.ts.map +0 -1
- package/dest/block-factory/light.js +0 -108
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts +0 -14
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/gcs_proof_store.js +0 -52
- package/dest/proving_broker/proving_agent_instrumentation.d.ts +0 -8
- package/dest/proving_broker/proving_agent_instrumentation.d.ts.map +0 -1
- package/dest/proving_broker/proving_agent_instrumentation.js +0 -16
- package/src/block-factory/index.ts +0 -1
- package/src/block-factory/light.ts +0 -137
- package/src/proving_broker/proof_store/gcs_proof_store.ts +0 -76
- package/src/proving_broker/proving_agent_instrumentation.ts +0 -21
|
@@ -2,9 +2,7 @@ import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
|
|
|
2
2
|
export declare class ProvingOrchestratorMetrics {
|
|
3
3
|
readonly tracer: Tracer;
|
|
4
4
|
private baseRollupInputsDuration;
|
|
5
|
-
private avmFallbackCount;
|
|
6
5
|
constructor(client: TelemetryClient, name?: string);
|
|
7
6
|
recordBaseRollupInputs(durationMs: number): void;
|
|
8
|
-
incAvmFallback(): void;
|
|
9
7
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JjaGVzdHJhdG9yX21ldHJpY3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcmNoZXN0cmF0b3Ivb3JjaGVzdHJhdG9yX21ldHJpY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQixLQUFLLGVBQWUsRUFBRSxLQUFLLE1BQU0sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJHLHFCQUFhLDBCQUEwQjtJQUNyQyxTQUFnQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBRS9CLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBWTtJQUU1QyxZQUFZLE1BQU0sRUFBRSxlQUFlLEVBQUUsSUFBSSxTQUF3QixFQUtoRTtJQUVELHNCQUFzQixDQUFDLFVBQVUsRUFBRSxNQUFNLFFBRXhDO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator_metrics.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"orchestrator_metrics.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAErG,qBAAa,0BAA0B;IACrC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,OAAO,CAAC,wBAAwB,CAAY;IAE5C,YAAY,MAAM,EAAE,eAAe,EAAE,IAAI,SAAwB,EAKhE;IAED,sBAAsB,CAAC,UAAU,EAAE,MAAM,QAExC;CACF"}
|
|
@@ -1,26 +1,13 @@
|
|
|
1
|
-
import { Metrics
|
|
1
|
+
import { Metrics } from '@aztec/telemetry-client';
|
|
2
2
|
export class ProvingOrchestratorMetrics {
|
|
3
3
|
tracer;
|
|
4
4
|
baseRollupInputsDuration;
|
|
5
|
-
avmFallbackCount;
|
|
6
5
|
constructor(client, name = 'ProvingOrchestrator'){
|
|
7
6
|
this.tracer = client.getTracer(name);
|
|
8
7
|
const meter = client.getMeter(name);
|
|
9
|
-
this.baseRollupInputsDuration = meter.createHistogram(Metrics.PROVING_ORCHESTRATOR_BASE_ROLLUP_INPUTS_DURATION
|
|
10
|
-
unit: 'ms',
|
|
11
|
-
description: 'Duration to build base rollup inputs',
|
|
12
|
-
valueType: ValueType.INT
|
|
13
|
-
});
|
|
14
|
-
this.avmFallbackCount = meter.createUpDownCounter(Metrics.PROVING_ORCHESTRATOR_AVM_FALLBACK_COUNT, {
|
|
15
|
-
description: 'How many times the AVM fallback was used',
|
|
16
|
-
valueType: ValueType.INT
|
|
17
|
-
});
|
|
18
|
-
this.avmFallbackCount.add(0);
|
|
8
|
+
this.baseRollupInputsDuration = meter.createHistogram(Metrics.PROVING_ORCHESTRATOR_BASE_ROLLUP_INPUTS_DURATION);
|
|
19
9
|
}
|
|
20
10
|
recordBaseRollupInputs(durationMs) {
|
|
21
11
|
this.baseRollupInputsDuration.record(Math.ceil(durationMs));
|
|
22
12
|
}
|
|
23
|
-
incAvmFallback() {
|
|
24
|
-
this.avmFallbackCount.add(1);
|
|
25
|
-
}
|
|
26
13
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH } from '@aztec/constants';
|
|
2
|
-
import type { Fr } from '@aztec/foundation/
|
|
2
|
+
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import type { AvmCircuitInputs } from '@aztec/stdlib/avm';
|
|
4
|
-
import type {
|
|
4
|
+
import type { PublicInputsAndRecursiveProof } from '@aztec/stdlib/interfaces/server';
|
|
5
|
+
import { RecursiveProof } from '@aztec/stdlib/proofs';
|
|
5
6
|
import { type BaseRollupHints, PrivateTxBaseRollupPrivateInputs, PublicChonkVerifierPublicInputs, PublicTxBaseRollupPrivateInputs } from '@aztec/stdlib/rollup';
|
|
6
7
|
import type { AppendOnlyTreeSnapshot, MerkleTreeId } from '@aztec/stdlib/trees';
|
|
7
8
|
import type { ProcessedTx } from '@aztec/stdlib/tx';
|
|
@@ -17,7 +18,7 @@ export declare class TxProvingState {
|
|
|
17
18
|
readonly treeSnapshots: Map<MerkleTreeId, AppendOnlyTreeSnapshot>;
|
|
18
19
|
private readonly proverId;
|
|
19
20
|
private publicChonkVerifier?;
|
|
20
|
-
private
|
|
21
|
+
private avmProof?;
|
|
21
22
|
constructor(processedTx: ProcessedTx, baseRollupHints: BaseRollupHints, treeSnapshots: Map<MerkleTreeId, AppendOnlyTreeSnapshot>, proverId: Fr);
|
|
22
23
|
get requireAvmProof(): boolean;
|
|
23
24
|
ready(): boolean;
|
|
@@ -31,6 +32,6 @@ export declare class TxProvingState {
|
|
|
31
32
|
inputs: PrivateTxBaseRollupPrivateInputs;
|
|
32
33
|
};
|
|
33
34
|
setPublicChonkVerifierProof(publicChonkVerifierProofAndVk: PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
34
|
-
setAvmProof(
|
|
35
|
+
setAvmProof(avmProof: RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>): void;
|
|
35
36
|
}
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHgtcHJvdmluZy1zdGF0ZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29yY2hlc3RyYXRvci90eC1wcm92aW5nLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ILE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXpELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxLQUFLLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRixPQUFPLEVBQWtDLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RGLE9BQU8sRUFDTCxLQUFLLGVBQWUsRUFFcEIsZ0NBQWdDLEVBRWhDLCtCQUErQixFQUMvQiwrQkFBK0IsRUFDaEMsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRixPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVFwRDs7OztHQUlHO0FBQ0gscUJBQWEsY0FBYzs7YUFRUCxXQUFXLEVBQUUsV0FBVztJQUN4QyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWU7YUFDaEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLENBQUM7SUFDeEUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRO0lBVjNCLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUcxQjtJQUNGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBOEQ7SUFFL0UsWUFDa0IsV0FBVyxFQUFFLFdBQVcsRUFDdkIsZUFBZSxFQUFFLGVBQWUsRUFDakMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLENBQUMsRUFDdkQsUUFBUSxFQUFFLEVBQUUsRUFDM0I7SUFFSixJQUFJLGVBQWUsWUFFbEI7SUFFTSxLQUFLLFlBRVg7SUFFTSxZQUFZLElBQUksZ0JBQWdCLENBRXRDO0lBRU0sbUNBQW1DLG9FQUV6QztJQUVNLDBCQUEwQjs7Ozs7O01BWWhDO0lBRU0sMkJBQTJCLENBQ2hDLDZCQUE2QixFQUFFLDZCQUE2QixDQUMxRCwrQkFBK0IsRUFDL0IsT0FBTyx5Q0FBeUMsQ0FDakQsUUFHRjtJQUVNLFdBQVcsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLE9BQU8sb0NBQW9DLENBQUMsUUFFdkY7Q0FvQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/tx-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oCAAoC,EAAE,yCAAyC,EAAE,MAAM,kBAAkB,CAAC;AACnH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"tx-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/tx-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oCAAoC,EAAE,yCAAyC,EAAE,MAAM,kBAAkB,CAAC;AACnH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAkC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EACL,KAAK,eAAe,EAEpB,gCAAgC,EAEhC,+BAA+B,EAC/B,+BAA+B,EAChC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAQpD;;;;GAIG;AACH,qBAAa,cAAc;;aAQP,WAAW,EAAE,WAAW;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe;aAChB,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC;IACxE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAV3B,OAAO,CAAC,mBAAmB,CAAC,CAG1B;IACF,OAAO,CAAC,QAAQ,CAAC,CAA8D;IAE/E,YACkB,WAAW,EAAE,WAAW,EACvB,eAAe,EAAE,eAAe,EACjC,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC,EACvD,QAAQ,EAAE,EAAE,EAC3B;IAEJ,IAAI,eAAe,YAElB;IAEM,KAAK,YAEX;IAEM,YAAY,IAAI,gBAAgB,CAEtC;IAEM,mCAAmC,oEAEzC;IAEM,0BAA0B;;;;;;MAYhC;IAEM,2BAA2B,CAChC,6BAA6B,EAAE,6BAA6B,CAC1D,+BAA+B,EAC/B,OAAO,yCAAyC,CACjD,QAGF;IAEM,WAAW,CAAC,QAAQ,EAAE,cAAc,CAAC,OAAO,oCAAoC,CAAC,QAEvF;CAoCF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ProofData } from '@aztec/stdlib/proofs';
|
|
1
|
+
import { getVkData } from '@aztec/noir-protocol-circuits-types/server/vks';
|
|
2
|
+
import { ProofData, ProofDataForFixedVk } from '@aztec/stdlib/proofs';
|
|
3
3
|
import { PrivateBaseRollupHints, PrivateTxBaseRollupPrivateInputs, PublicBaseRollupHints, PublicTxBaseRollupPrivateInputs } from '@aztec/stdlib/rollup';
|
|
4
4
|
import { getChonkProofFromTx, getPublicChonkVerifierPrivateInputsFromTx, toProofData } from './block-building-helpers.js';
|
|
5
5
|
/**
|
|
@@ -12,7 +12,7 @@ import { getChonkProofFromTx, getPublicChonkVerifierPrivateInputsFromTx, toProof
|
|
|
12
12
|
treeSnapshots;
|
|
13
13
|
proverId;
|
|
14
14
|
publicChonkVerifier;
|
|
15
|
-
|
|
15
|
+
avmProof;
|
|
16
16
|
constructor(processedTx, baseRollupHints, treeSnapshots, proverId){
|
|
17
17
|
this.processedTx = processedTx;
|
|
18
18
|
this.baseRollupHints = baseRollupHints;
|
|
@@ -23,7 +23,7 @@ import { getChonkProofFromTx, getPublicChonkVerifierPrivateInputsFromTx, toProof
|
|
|
23
23
|
return !!this.processedTx.avmProvingRequest;
|
|
24
24
|
}
|
|
25
25
|
ready() {
|
|
26
|
-
return !this.requireAvmProof || !!this.
|
|
26
|
+
return !this.requireAvmProof || !!this.avmProof && !!this.publicChonkVerifier;
|
|
27
27
|
}
|
|
28
28
|
getAvmInputs() {
|
|
29
29
|
return this.processedTx.avmProvingRequest.inputs;
|
|
@@ -47,8 +47,8 @@ import { getChonkProofFromTx, getPublicChonkVerifierPrivateInputsFromTx, toProof
|
|
|
47
47
|
setPublicChonkVerifierProof(publicChonkVerifierProofAndVk) {
|
|
48
48
|
this.publicChonkVerifier = publicChonkVerifierProofAndVk;
|
|
49
49
|
}
|
|
50
|
-
setAvmProof(
|
|
51
|
-
this.
|
|
50
|
+
setAvmProof(avmProof) {
|
|
51
|
+
this.avmProof = avmProof;
|
|
52
52
|
}
|
|
53
53
|
#getPrivateBaseInputs() {
|
|
54
54
|
if (!(this.baseRollupHints instanceof PrivateBaseRollupHints)) {
|
|
@@ -64,14 +64,14 @@ import { getChonkProofFromTx, getPublicChonkVerifierPrivateInputsFromTx, toProof
|
|
|
64
64
|
if (!this.publicChonkVerifier) {
|
|
65
65
|
throw new Error('Tx not ready for proving base rollup: public chonk verifier proof undefined');
|
|
66
66
|
}
|
|
67
|
-
if (!this.
|
|
67
|
+
if (!this.avmProof) {
|
|
68
68
|
throw new Error('Tx not ready for proving base rollup: avm proof undefined');
|
|
69
69
|
}
|
|
70
70
|
if (!(this.baseRollupHints instanceof PublicBaseRollupHints)) {
|
|
71
71
|
throw new Error('Mismatched base rollup hints, expected public base rollup hints');
|
|
72
72
|
}
|
|
73
73
|
const publicChonkVerifierProofData = toProofData(this.publicChonkVerifier);
|
|
74
|
-
const avmProofData = new
|
|
74
|
+
const avmProofData = new ProofDataForFixedVk(this.processedTx.avmProvingRequest.inputs.publicInputs, this.avmProof);
|
|
75
75
|
return new PublicTxBaseRollupPrivateInputs(publicChonkVerifierProofData, avmProofData, this.baseRollupHints);
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { ForkMerkleTreeOperations, ProvingJobBroker } from '@aztec/stdlib/interfaces/server';
|
|
1
|
+
import type { ForkMerkleTreeOperations, ProvingJobBroker, ReadonlyWorldStateAccess } from '@aztec/stdlib/interfaces/server';
|
|
2
2
|
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
3
3
|
import type { ProverClientConfig } from '../config.js';
|
|
4
4
|
import { ProverClient } from './prover-client.js';
|
|
5
|
-
export declare function createProverClient(config: ProverClientConfig, worldState: ForkMerkleTreeOperations, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
export declare function createProverClient(config: ProverClientConfig, worldState: ForkMerkleTreeOperations & ReadonlyWorldStateAccess, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3Zlci1jbGllbnQvZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFDVix3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBQ2hCLHdCQUF3QixFQUN6QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsd0JBQWdCLGtCQUFrQixDQUNoQyxNQUFNLEVBQUUsa0JBQWtCLEVBQzFCLFVBQVUsRUFBRSx3QkFBd0IsR0FBRyx3QkFBd0IsRUFDL0QsTUFBTSxFQUFFLGdCQUFnQixFQUN4QixTQUFTLEdBQUUsZUFBc0MseUJBR2xEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/prover-client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/prover-client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,wBAAwB,GAAG,wBAAwB,EAC/D,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,eAAsC,yBAGlD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ACVMConfig, type BBConfig } from '@aztec/bb-prover';
|
|
2
2
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
|
-
import { type ActualProverConfig, type EpochProver, type EpochProverManager, type ForkMerkleTreeOperations, type ProvingJobBroker, type ProvingJobConsumer, type ServerCircuitProver } from '@aztec/stdlib/interfaces/server';
|
|
3
|
+
import { type ActualProverConfig, type EpochProver, type EpochProverManager, type ForkMerkleTreeOperations, type ProvingJobBroker, type ProvingJobConsumer, type ReadonlyWorldStateAccess, type ServerCircuitProver } from '@aztec/stdlib/interfaces/server';
|
|
4
4
|
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
5
5
|
import type { ProverClientConfig } from '../config.js';
|
|
6
6
|
/** Manages proving of epochs by orchestrating the proving of individual blocks relying on a pool of prover agents. */
|
|
@@ -8,13 +8,13 @@ export declare class ProverClient implements EpochProverManager {
|
|
|
8
8
|
private config;
|
|
9
9
|
private worldState;
|
|
10
10
|
private orchestratorClient;
|
|
11
|
+
private proofStore;
|
|
12
|
+
private failedProofStore;
|
|
11
13
|
private agentClient?;
|
|
12
14
|
private telemetry;
|
|
13
15
|
private log;
|
|
14
16
|
private running;
|
|
15
17
|
private agents;
|
|
16
|
-
private proofStore;
|
|
17
|
-
private failedProofStore;
|
|
18
18
|
private constructor();
|
|
19
19
|
createEpochProver(): EpochProver;
|
|
20
20
|
getProverId(): EthAddress;
|
|
@@ -33,10 +33,10 @@ export declare class ProverClient implements EpochProverManager {
|
|
|
33
33
|
* @param worldState - An instance of the world state
|
|
34
34
|
* @returns An instance of the prover, constructed and started.
|
|
35
35
|
*/
|
|
36
|
-
static new(config: ProverClientConfig, worldState: ForkMerkleTreeOperations, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
36
|
+
static new(config: ProverClientConfig, worldState: ForkMerkleTreeOperations & ReadonlyWorldStateAccess, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
37
37
|
getProvingJobSource(): ProvingJobConsumer;
|
|
38
38
|
private createAndStartAgents;
|
|
39
39
|
private stopAgents;
|
|
40
40
|
}
|
|
41
|
-
export declare function buildServerCircuitProver(config: ActualProverConfig & ACVMConfig & BBConfig, telemetry: TelemetryClient): Promise<ServerCircuitProver>;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
export declare function buildServerCircuitProver(config: Omit<ActualProverConfig, 'enqueueConcurrency'> & ACVMConfig & BBConfig, telemetry: TelemetryClient): Promise<ServerCircuitProver>;
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmVyLWNsaWVudC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3Zlci1jbGllbnQvcHJvdmVyLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxVQUFVLEVBQUUsS0FBSyxRQUFRLEVBQTJDLE1BQU0sa0JBQWtCLENBQUM7QUFFM0csT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHaEUsT0FBTyxFQUNMLEtBQUssa0JBQWtCLEVBQ3ZCLEtBQUssV0FBVyxFQUNoQixLQUFLLGtCQUFrQixFQUN2QixLQUFLLHdCQUF3QixFQUM3QixLQUFLLGdCQUFnQixFQUNyQixLQUFLLGtCQUFrQixFQUV2QixLQUFLLHdCQUF3QixFQUM3QixLQUFLLG1CQUFtQixFQUV6QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQU92RCxzSEFBc0g7QUFDdEgscUJBQWEsWUFBYSxZQUFXLGtCQUFrQjtJQUtuRCxPQUFPLENBQUMsTUFBTTtJQUNkLE9BQU8sQ0FBQyxVQUFVO0lBQ2xCLE9BQU8sQ0FBQyxrQkFBa0I7SUFDMUIsT0FBTyxDQUFDLFVBQVU7SUFDbEIsT0FBTyxDQUFDLGdCQUFnQjtJQUN4QixPQUFPLENBQUMsV0FBVyxDQUFDO0lBQ3BCLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxHQUFHO0lBWGIsT0FBTyxDQUFDLE9BQU8sQ0FBUztJQUN4QixPQUFPLENBQUMsTUFBTSxDQUFzQjtJQUVwQyxPQUFPLGVBU0g7SUFFRyxpQkFBaUIsSUFBSSxXQUFXLENBbUJ0QztJQUVNLFdBQVcsSUFBSSxVQUFVLENBRS9CO0lBRUssa0JBQWtCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FZM0U7SUFFRDs7T0FFRztJQUNVLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBT2xDO0lBRUQ7O09BRUc7SUFDVSxJQUFJLGtCQU9oQjtJQUVEOzs7OztPQUtHO0lBQ0gsT0FBb0IsR0FBRyxDQUNyQixNQUFNLEVBQUUsa0JBQWtCLEVBQzFCLFVBQVUsRUFBRSx3QkFBd0IsR0FBRyx3QkFBd0IsRUFDL0QsTUFBTSxFQUFFLGdCQUFnQixFQUN4QixTQUFTLEdBQUUsZUFBc0MseUJBT2xEO0lBRU0sbUJBQW1CLElBQUksa0JBQWtCLENBTS9DO1lBRWEsb0JBQW9CO1lBcUJwQixVQUFVO0NBR3pCO0FBRUQsd0JBQWdCLHdCQUF3QixDQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDLEdBQUcsVUFBVSxHQUFHLFFBQVEsRUFDOUUsU0FBUyxFQUFFLGVBQWUsR0FDekIsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBVzlCIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prover-client.d.ts","sourceRoot":"","sources":["../../src/prover-client/prover-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAA2C,MAAM,kBAAkB,CAAC;AAE3G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,KAAK,mBAAmB,EAEzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOvD,sHAAsH;AACtH,qBAAa,YAAa,YAAW,kBAAkB;
|
|
1
|
+
{"version":3,"file":"prover-client.d.ts","sourceRoot":"","sources":["../../src/prover-client/prover-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAA2C,MAAM,kBAAkB,CAAC;AAE3G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EAEzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOvD,sHAAsH;AACtH,qBAAa,YAAa,YAAW,kBAAkB;IAKnD,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,GAAG;IAXb,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAsB;IAEpC,OAAO,eASH;IAEG,iBAAiB,IAAI,WAAW,CAmBtC;IAEM,WAAW,IAAI,UAAU,CAE/B;IAEK,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3E;IAED;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAOlC;IAED;;OAEG;IACU,IAAI,kBAOhB;IAED;;;;;OAKG;IACH,OAAoB,GAAG,CACrB,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,wBAAwB,GAAG,wBAAwB,EAC/D,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,eAAsC,yBAOlD;IAEM,mBAAmB,IAAI,kBAAkB,CAM/C;YAEa,oBAAoB;YAqBpB,UAAU;CAGzB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAG,UAAU,GAAG,QAAQ,EAC9E,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAW9B"}
|
|
@@ -13,28 +13,29 @@ import { ServerEpochProver } from './server-epoch-prover.js';
|
|
|
13
13
|
config;
|
|
14
14
|
worldState;
|
|
15
15
|
orchestratorClient;
|
|
16
|
+
proofStore;
|
|
17
|
+
failedProofStore;
|
|
16
18
|
agentClient;
|
|
17
19
|
telemetry;
|
|
18
20
|
log;
|
|
19
21
|
running;
|
|
20
22
|
agents;
|
|
21
|
-
proofStore
|
|
22
|
-
failedProofStore;
|
|
23
|
-
constructor(config, worldState, orchestratorClient, agentClient, telemetry = getTelemetryClient(), log = createLogger('prover-client:tx-prover')){
|
|
23
|
+
constructor(config, worldState, orchestratorClient, proofStore, failedProofStore, agentClient, telemetry = getTelemetryClient(), log = createLogger('prover-client:tx-prover')){
|
|
24
24
|
this.config = config;
|
|
25
25
|
this.worldState = worldState;
|
|
26
26
|
this.orchestratorClient = orchestratorClient;
|
|
27
|
+
this.proofStore = proofStore;
|
|
28
|
+
this.failedProofStore = failedProofStore;
|
|
27
29
|
this.agentClient = agentClient;
|
|
28
30
|
this.telemetry = telemetry;
|
|
29
31
|
this.log = log;
|
|
30
32
|
this.running = false;
|
|
31
33
|
this.agents = [];
|
|
32
|
-
this.proofStore = new InlineProofStore();
|
|
33
|
-
this.failedProofStore = this.config.failedProofStore ? createProofStore(this.config.failedProofStore) : undefined;
|
|
34
34
|
}
|
|
35
35
|
createEpochProver() {
|
|
36
|
-
const
|
|
37
|
-
const
|
|
36
|
+
const bindings = this.log.getBindings();
|
|
37
|
+
const facade = new BrokerCircuitProverFacade(this.orchestratorClient, this.proofStore, this.failedProofStore, undefined, bindings);
|
|
38
|
+
const orchestrator = new ProvingOrchestrator(this.worldState, facade, this.config.proverId, this.config.cancelJobsOnStop, this.config.enqueueConcurrency, this.telemetry, bindings);
|
|
38
39
|
return new ServerEpochProver(facade, orchestrator);
|
|
39
40
|
}
|
|
40
41
|
getProverId() {
|
|
@@ -76,7 +77,9 @@ import { ServerEpochProver } from './server-epoch-prover.js';
|
|
|
76
77
|
* @param worldState - An instance of the world state
|
|
77
78
|
* @returns An instance of the prover, constructed and started.
|
|
78
79
|
*/ static async new(config, worldState, broker, telemetry = getTelemetryClient()) {
|
|
79
|
-
const
|
|
80
|
+
const proofStore = await createProofStore(config.proofStore);
|
|
81
|
+
const failedProofStore = config.failedProofStore ? await createProofStore(config.failedProofStore) : undefined;
|
|
82
|
+
const prover = new ProverClient(config, worldState, broker, proofStore, failedProofStore, broker, telemetry);
|
|
80
83
|
await prover.start();
|
|
81
84
|
return prover;
|
|
82
85
|
}
|
|
@@ -95,7 +98,8 @@ import { ServerEpochProver } from './server-epoch-prover.js';
|
|
|
95
98
|
}
|
|
96
99
|
const proofStore = new InlineProofStore();
|
|
97
100
|
const prover = await buildServerCircuitProver(this.config, this.telemetry);
|
|
98
|
-
|
|
101
|
+
const bindings = this.log.getBindings();
|
|
102
|
+
this.agents = times(this.config.proverAgentCount, ()=>new ProvingAgent(this.agentClient, proofStore, prover, [], this.config.proverAgentPollIntervalMs, bindings));
|
|
99
103
|
await Promise.all(this.agents.map((agent)=>agent.start()));
|
|
100
104
|
}
|
|
101
105
|
async stopAgents() {
|
|
@@ -106,6 +110,7 @@ export function buildServerCircuitProver(config, telemetry) {
|
|
|
106
110
|
if (config.realProofs) {
|
|
107
111
|
return BBNativeRollupProver.new(config, telemetry);
|
|
108
112
|
}
|
|
109
|
-
const
|
|
113
|
+
const logger = createLogger('prover-client:acvm-native');
|
|
114
|
+
const simulator = config.acvmBinaryPath ? new NativeACVMSimulator(config.acvmWorkingDirectory, config.acvmBinaryPath, undefined, logger) : undefined;
|
|
110
115
|
return Promise.resolve(new TestCircuitProver(simulator, config, telemetry));
|
|
111
116
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BatchedBlob, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
|
|
2
|
-
import { EpochNumber } from '@aztec/foundation/branded-types';
|
|
3
|
-
import type { Fr } from '@aztec/foundation/
|
|
2
|
+
import { BlockNumber, EpochNumber } from '@aztec/foundation/branded-types';
|
|
3
|
+
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
4
|
import type { EthAddress } from '@aztec/stdlib/block';
|
|
5
5
|
import type { EpochProver } from '@aztec/stdlib/interfaces/server';
|
|
6
6
|
import type { Proof } from '@aztec/stdlib/proofs';
|
|
@@ -17,7 +17,7 @@ export declare class ServerEpochProver implements EpochProver {
|
|
|
17
17
|
startNewEpoch(epochNumber: EpochNumber, totalNumCheckpoints: number, finalBlobBatchingChallenges: FinalBlobBatchingChallenges): void;
|
|
18
18
|
startNewCheckpoint(checkpointIndex: number, constants: CheckpointConstantData, l1ToL2Messages: Fr[], totalNumBlocks: number, headerOfLastBlockInPreviousCheckpoint: BlockHeader): Promise<void>;
|
|
19
19
|
startChonkVerifierCircuits(txs: Tx[]): Promise<void>;
|
|
20
|
-
setBlockCompleted(blockNumber:
|
|
20
|
+
setBlockCompleted(blockNumber: BlockNumber, expectedBlockHeader?: BlockHeader): Promise<BlockHeader>;
|
|
21
21
|
finalizeEpoch(): Promise<{
|
|
22
22
|
publicInputs: RootRollupPublicInputs;
|
|
23
23
|
proof: Proof;
|
|
@@ -26,7 +26,7 @@ export declare class ServerEpochProver implements EpochProver {
|
|
|
26
26
|
cancel(): void;
|
|
27
27
|
getProverId(): EthAddress;
|
|
28
28
|
stop(): Promise<void>;
|
|
29
|
-
startNewBlock(blockNumber:
|
|
29
|
+
startNewBlock(blockNumber: BlockNumber, timestamp: UInt64, totalNumTxs: number): Promise<void>;
|
|
30
30
|
addTxs(txs: ProcessedTx[]): Promise<void>;
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLWVwb2NoLXByb3Zlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3Zlci1jbGllbnQvc2VydmVyLWVwb2NoLXByb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RixPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0YsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFM0Ysa0VBQWtFO0FBQ2xFLHFCQUFhLGlCQUFrQixZQUFXLFdBQVc7SUFFakQsT0FBTyxDQUFDLE1BQU07SUFDZCxPQUFPLENBQUMsWUFBWTtJQUZ0QixZQUNVLE1BQU0sRUFBRSx5QkFBeUIsRUFDakMsWUFBWSxFQUFFLG1CQUFtQixFQUN2QztJQUVKLGFBQWEsQ0FDWCxXQUFXLEVBQUUsV0FBVyxFQUN4QixtQkFBbUIsRUFBRSxNQUFNLEVBQzNCLDJCQUEyQixFQUFFLDJCQUEyQixHQUN2RCxJQUFJLENBR047SUFDRCxrQkFBa0IsQ0FDaEIsZUFBZSxFQUFFLE1BQU0sRUFDdkIsU0FBUyxFQUFFLHNCQUFzQixFQUNqQyxjQUFjLEVBQUUsRUFBRSxFQUFFLEVBQ3BCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLHFDQUFxQyxFQUFFLFdBQVcsR0FDakQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVFmO0lBQ0QsMEJBQTBCLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFbkQ7SUFDRCxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixDQUFDLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FFbkc7SUFDRCxhQUFhLElBQUksT0FBTyxDQUFDO1FBQUUsWUFBWSxFQUFFLHNCQUFzQixDQUFDO1FBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUFDLGlCQUFpQixFQUFFLFdBQVcsQ0FBQTtLQUFFLENBQUMsQ0FFL0c7SUFDRCxNQUFNLElBQUksSUFBSSxDQUViO0lBQ0QsV0FBVyxJQUFJLFVBQVUsQ0FFeEI7SUFDSyxJQUFJLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUcxQjtJQUNELGFBQWEsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTdGO0lBQ0QsTUFBTSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXhDO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-epoch-prover.d.ts","sourceRoot":"","sources":["../../src/prover-client/server-epoch-prover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"server-epoch-prover.d.ts","sourceRoot":"","sources":["../../src/prover-client/server-epoch-prover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAE3F,kEAAkE;AAClE,qBAAa,iBAAkB,YAAW,WAAW;IAEjD,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IAFtB,YACU,MAAM,EAAE,yBAAyB,EACjC,YAAY,EAAE,mBAAmB,EACvC;IAEJ,aAAa,CACX,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,MAAM,EAC3B,2BAA2B,EAAE,2BAA2B,GACvD,IAAI,CAGN;IACD,kBAAkB,CAChB,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,sBAAsB,EACjC,cAAc,EAAE,EAAE,EAAE,EACpB,cAAc,EAAE,MAAM,EACtB,qCAAqC,EAAE,WAAW,GACjD,OAAO,CAAC,IAAI,CAAC,CAQf;IACD,0BAA0B,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnD;IACD,iBAAiB,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAEnG;IACD,aAAa,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,sBAAsB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,iBAAiB,EAAE,WAAW,CAAA;KAAE,CAAC,CAE/G;IACD,MAAM,IAAI,IAAI,CAEb;IACD,WAAW,IAAI,UAAU,CAExB;IACK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1B;IACD,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F;IACD,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAExC;CACF"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED, NESTED_RECURSIVE_PROOF_LENGTH, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, RECURSIVE_PROOF_LENGTH } from '@aztec/constants';
|
|
2
2
|
import { EpochNumber } from '@aztec/foundation/branded-types';
|
|
3
|
+
import { type LoggerBindings } from '@aztec/foundation/log';
|
|
3
4
|
import type { AvmCircuitInputs } from '@aztec/stdlib/avm';
|
|
4
|
-
import { type
|
|
5
|
+
import { type ProvingJobProducer, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec/stdlib/interfaces/server';
|
|
5
6
|
import type { ParityBasePrivateInputs, ParityPublicInputs, ParityRootPrivateInputs } from '@aztec/stdlib/parity';
|
|
7
|
+
import { RecursiveProof } from '@aztec/stdlib/proofs';
|
|
6
8
|
import type { BlockMergeRollupPrivateInputs, BlockRollupPublicInputs, BlockRootEmptyTxFirstRollupPrivateInputs, BlockRootFirstRollupPrivateInputs, BlockRootRollupPrivateInputs, BlockRootSingleTxFirstRollupPrivateInputs, BlockRootSingleTxRollupPrivateInputs, CheckpointMergeRollupPrivateInputs, CheckpointPaddingRollupPrivateInputs, CheckpointRollupPublicInputs, CheckpointRootRollupPrivateInputs, CheckpointRootSingleBlockRollupPrivateInputs, PrivateTxBaseRollupPrivateInputs, PublicChonkVerifierPrivateInputs, PublicChonkVerifierPublicInputs, PublicTxBaseRollupPrivateInputs, RootRollupPrivateInputs, RootRollupPublicInputs, TxMergeRollupPrivateInputs, TxRollupPublicInputs } from '@aztec/stdlib/rollup';
|
|
7
9
|
import { type ProofStore } from './proof_store/index.js';
|
|
8
10
|
export declare class BrokerCircuitProverFacade implements ServerCircuitProver {
|
|
@@ -10,12 +12,12 @@ export declare class BrokerCircuitProverFacade implements ServerCircuitProver {
|
|
|
10
12
|
private proofStore;
|
|
11
13
|
private failedProofStore?;
|
|
12
14
|
private pollIntervalMs;
|
|
13
|
-
private log;
|
|
14
15
|
private jobs;
|
|
15
16
|
private runningPromise?;
|
|
16
17
|
private timeOfLastSnapshotSync;
|
|
17
18
|
private jobsToRetrieve;
|
|
18
|
-
|
|
19
|
+
private log;
|
|
20
|
+
constructor(broker: ProvingJobProducer, proofStore?: ProofStore, failedProofStore?: ProofStore | undefined, pollIntervalMs?: number, bindings?: LoggerBindings);
|
|
19
21
|
/**
|
|
20
22
|
* This is a critical section. This function can not be async since it writes
|
|
21
23
|
* to the jobs map which acts as a mutex, ensuring a job is only ever created once.
|
|
@@ -30,7 +32,7 @@ export declare class BrokerCircuitProverFacade implements ServerCircuitProver {
|
|
|
30
32
|
private retrieveJobsThatShouldBeReady;
|
|
31
33
|
private backupFailedProofInputs;
|
|
32
34
|
private monitorForCompletedJobs;
|
|
33
|
-
getAvmProof(inputs: AvmCircuitInputs,
|
|
35
|
+
getAvmProof(inputs: AvmCircuitInputs, signal?: AbortSignal, epochNumber?: EpochNumber): Promise<RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>>;
|
|
34
36
|
getBaseParityProof(inputs: ParityBasePrivateInputs, signal?: AbortSignal, epochNumber?: EpochNumber): Promise<PublicInputsAndRecursiveProof<ParityPublicInputs, typeof RECURSIVE_PROOF_LENGTH>>;
|
|
35
37
|
getTxMergeRollupProof(input: TxMergeRollupPrivateInputs, signal?: AbortSignal, epochNumber?: EpochNumber): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
36
38
|
getPublicChonkVerifierProof(inputs: PublicChonkVerifierPrivateInputs, signal?: AbortSignal, epochNumber?: EpochNumber): Promise<PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
@@ -50,4 +52,4 @@ export declare class BrokerCircuitProverFacade implements ServerCircuitProver {
|
|
|
50
52
|
getRootRollupProof(input: RootRollupPrivateInputs, signal?: AbortSignal, epochNumber?: EpochNumber): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs, typeof RECURSIVE_PROOF_LENGTH>>;
|
|
51
53
|
private generateId;
|
|
52
54
|
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJva2VyX3Byb3Zlcl9mYWNhZGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aW5nX2Jyb2tlci9icm9rZXJfcHJvdmVyX2ZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFDVixvQ0FBb0MsRUFDcEMsNkJBQTZCLEVBQzdCLHlDQUF5QyxFQUN6QyxzQkFBc0IsRUFDdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFOUQsT0FBTyxFQUFlLEtBQUssY0FBYyxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBR3ZGLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUlMLEtBQUssa0JBQWtCLEVBR3ZCLEtBQUssNkJBQTZCLEVBQ2xDLEtBQUssbUJBQW1CLEVBRXpCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqSCxPQUFPLEVBQXNCLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFFLE9BQU8sS0FBSyxFQUNWLDZCQUE2QixFQUM3Qix1QkFBdUIsRUFDdkIsd0NBQXdDLEVBQ3hDLGlDQUFpQyxFQUNqQyw0QkFBNEIsRUFDNUIseUNBQXlDLEVBQ3pDLG9DQUFvQyxFQUNwQyxrQ0FBa0MsRUFDbEMsb0NBQW9DLEVBQ3BDLDRCQUE0QixFQUM1QixpQ0FBaUMsRUFDakMsNENBQTRDLEVBQzVDLGdDQUFnQyxFQUNoQyxnQ0FBZ0MsRUFDaEMsK0JBQStCLEVBQy9CLCtCQUErQixFQUMvQix1QkFBdUIsRUFDdkIsc0JBQXNCLEVBQ3RCLDBCQUEwQixFQUMxQixvQkFBb0IsRUFDckIsTUFBTSxzQkFBc0IsQ0FBQztBQUk5QixPQUFPLEVBQW9C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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broker_prover_facade.d.ts","sourceRoot":"","sources":["../../src/proving_broker/broker_prover_facade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oCAAoC,EACpC,6BAA6B,EAC7B,yCAAyC,EACzC,sBAAsB,EACvB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"broker_prover_facade.d.ts","sourceRoot":"","sources":["../../src/proving_broker/broker_prover_facade.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { asyncPool } from '@aztec/foundation/async-pool';
|
|
1
2
|
import { EpochNumber } from '@aztec/foundation/branded-types';
|
|
2
|
-
import {
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
3
|
+
import { chunk } from '@aztec/foundation/collection';
|
|
4
4
|
import { createLogger } from '@aztec/foundation/log';
|
|
5
5
|
import { RunningPromise, promiseWithResolvers } from '@aztec/foundation/promise';
|
|
6
6
|
import { truncate } from '@aztec/foundation/string';
|
|
7
7
|
import { makeProvingJobId } from '@aztec/stdlib/interfaces/server';
|
|
8
8
|
import { ProvingRequestType } from '@aztec/stdlib/proofs';
|
|
9
|
+
import { createHash } from 'node:crypto';
|
|
9
10
|
import { InlineProofStore } from './proof_store/index.js';
|
|
10
11
|
// Perform a snapshot sync every 30 seconds
|
|
11
12
|
const SNAPSHOT_SYNC_INTERVAL_MS = 30_000;
|
|
@@ -16,20 +17,20 @@ export class BrokerCircuitProverFacade {
|
|
|
16
17
|
proofStore;
|
|
17
18
|
failedProofStore;
|
|
18
19
|
pollIntervalMs;
|
|
19
|
-
log;
|
|
20
20
|
jobs;
|
|
21
21
|
runningPromise;
|
|
22
22
|
timeOfLastSnapshotSync;
|
|
23
23
|
jobsToRetrieve;
|
|
24
|
-
|
|
24
|
+
log;
|
|
25
|
+
constructor(broker, proofStore = new InlineProofStore(), failedProofStore, pollIntervalMs = 1000, bindings){
|
|
25
26
|
this.broker = broker;
|
|
26
27
|
this.proofStore = proofStore;
|
|
27
28
|
this.failedProofStore = failedProofStore;
|
|
28
29
|
this.pollIntervalMs = pollIntervalMs;
|
|
29
|
-
this.log = log;
|
|
30
30
|
this.jobs = new Map();
|
|
31
31
|
this.timeOfLastSnapshotSync = Date.now();
|
|
32
32
|
this.jobsToRetrieve = new Set();
|
|
33
|
+
this.log = createLogger('prover-client:broker-circuit-prover-facade', bindings);
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
36
|
* This is a critical section. This function can not be async since it writes
|
|
@@ -157,17 +158,13 @@ export class BrokerCircuitProverFacade {
|
|
|
157
158
|
// We collect all returned notifications and return them
|
|
158
159
|
const allCompleted = new Set();
|
|
159
160
|
try {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
161
|
+
const batches = ids.length > 0 ? chunk(ids, SNAPSHOT_SYNC_CHECK_MAX_REQUEST_SIZE) : [
|
|
162
|
+
[]
|
|
163
|
+
];
|
|
164
|
+
await asyncPool(1, batches, async (batch)=>{
|
|
165
|
+
const completed = await this.broker.getCompletedJobs(batch);
|
|
164
166
|
completed.forEach((id)=>allCompleted.add(id));
|
|
165
|
-
|
|
166
|
-
}
|
|
167
|
-
if (numRequests === 0) {
|
|
168
|
-
const final = await this.broker.getCompletedJobs([]);
|
|
169
|
-
final.forEach((id)=>allCompleted.add(id));
|
|
170
|
-
}
|
|
167
|
+
});
|
|
171
168
|
} catch (err) {
|
|
172
169
|
this.log.error(`Error thrown when requesting completed job notifications from the broker`, err);
|
|
173
170
|
}
|
|
@@ -267,12 +264,8 @@ export class BrokerCircuitProverFacade {
|
|
|
267
264
|
};
|
|
268
265
|
const toBeRetrieved = Array.from(this.jobsToRetrieve.values()).map((id)=>this.jobs.get(id)).filter((x)=>x !== undefined);
|
|
269
266
|
const totalJobsToRetrieve = toBeRetrieved.length;
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
const slice = toBeRetrieved.splice(0, MAX_CONCURRENT_JOB_SETTLED_REQUESTS);
|
|
273
|
-
const results = await Promise.all(slice.map((job)=>processJob(job)));
|
|
274
|
-
totalJobsRetrieved += results.filter((x)=>x).length;
|
|
275
|
-
}
|
|
267
|
+
const results = await asyncPool(MAX_CONCURRENT_JOB_SETTLED_REQUESTS, toBeRetrieved, (job)=>processJob(job));
|
|
268
|
+
const totalJobsRetrieved = results.filter((x)=>x).length;
|
|
276
269
|
if (totalJobsToRetrieve > 0) {
|
|
277
270
|
this.log.verbose(`Successfully retrieved ${totalJobsRetrieved} of ${totalJobsToRetrieve} jobs that should be ready, total ready jobs is now: ${this.jobsToRetrieve.size}`);
|
|
278
271
|
}
|
|
@@ -303,14 +296,8 @@ export class BrokerCircuitProverFacade {
|
|
|
303
296
|
// We have a list of jobs that we have been told are ready, so we go ahead and ask for their results
|
|
304
297
|
await this.retrieveJobsThatShouldBeReady();
|
|
305
298
|
}
|
|
306
|
-
getAvmProof(inputs,
|
|
307
|
-
this.
|
|
308
|
-
return this.enqueueJob(this.generateId(ProvingRequestType.PUBLIC_VM, inputs, epochNumber), ProvingRequestType.PUBLIC_VM, inputs, epochNumber, signal).then((result)=>{
|
|
309
|
-
// TODO(#14234)[Unconditional PIs validation]: Remove ".then()".
|
|
310
|
-
// Override the default value of skipPublicInputsValidation potentially set in BBNativeRollupProver.getAvmProof().
|
|
311
|
-
result.proof.proof[0] = skipPublicInputsValidation ? new Fr(1) : new Fr(0);
|
|
312
|
-
return result;
|
|
313
|
-
});
|
|
299
|
+
getAvmProof(inputs, signal, epochNumber) {
|
|
300
|
+
return this.enqueueJob(this.generateId(ProvingRequestType.PUBLIC_VM, inputs, epochNumber), ProvingRequestType.PUBLIC_VM, inputs, epochNumber, signal);
|
|
314
301
|
}
|
|
315
302
|
getBaseParityProof(inputs, signal, epochNumber) {
|
|
316
303
|
return this.enqueueJob(this.generateId(ProvingRequestType.PARITY_BASE, inputs, epochNumber), ProvingRequestType.PARITY_BASE, inputs, epochNumber, signal);
|
|
@@ -364,7 +351,7 @@ export class BrokerCircuitProverFacade {
|
|
|
364
351
|
return this.enqueueJob(this.generateId(ProvingRequestType.ROOT_ROLLUP, input, epochNumber), ProvingRequestType.ROOT_ROLLUP, input, epochNumber, signal);
|
|
365
352
|
}
|
|
366
353
|
generateId(type, inputs, epochNumber = EpochNumber.ZERO) {
|
|
367
|
-
const inputsHash = sha256(inputs.toBuffer());
|
|
368
|
-
return makeProvingJobId(epochNumber, type, inputsHash
|
|
354
|
+
const inputsHash = createHash('sha256').update(inputs.toBuffer()).digest('hex');
|
|
355
|
+
return makeProvingJobId(epochNumber, type, inputsHash);
|
|
369
356
|
}
|
|
370
357
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type L1ReaderConfig } from '@aztec/ethereum';
|
|
1
|
+
import { type L1ReaderConfig } from '@aztec/ethereum/l1-reader';
|
|
2
2
|
import { type ConfigMappingsType } from '@aztec/foundation/config';
|
|
3
|
-
import { type DataStoreConfig } from '@aztec/kv-store/config';
|
|
4
3
|
import { type ChainConfig } from '@aztec/stdlib/config';
|
|
4
|
+
import { type DataStoreConfig } from '@aztec/stdlib/kv-store';
|
|
5
5
|
import { ProvingRequestType } from '@aztec/stdlib/proofs';
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
export declare const ProverBrokerConfig: z.ZodObject<{
|
|
@@ -23,6 +23,8 @@ export declare const ProverBrokerConfig: z.ZodObject<{
|
|
|
23
23
|
proverBrokerBatchIntervalMs: z.ZodNumber;
|
|
24
24
|
/** The maximum number of epochs to keep results for */
|
|
25
25
|
proverBrokerMaxEpochsToKeepResultsFor: z.ZodNumber;
|
|
26
|
+
/** Enable debug replay mode for replaying proving jobs from stored inputs */
|
|
27
|
+
proverBrokerDebugReplayEnabled: z.ZodBoolean;
|
|
26
28
|
}, "strip", z.ZodTypeAny, {
|
|
27
29
|
proverBrokerJobMaxRetries: number;
|
|
28
30
|
proverBrokerJobTimeoutMs: number;
|
|
@@ -33,6 +35,7 @@ export declare const ProverBrokerConfig: z.ZodObject<{
|
|
|
33
35
|
proverBrokerBatchSize: number;
|
|
34
36
|
proverBrokerBatchIntervalMs: number;
|
|
35
37
|
proverBrokerMaxEpochsToKeepResultsFor: number;
|
|
38
|
+
proverBrokerDebugReplayEnabled: boolean;
|
|
36
39
|
}, {
|
|
37
40
|
proverBrokerJobMaxRetries: number;
|
|
38
41
|
proverBrokerJobTimeoutMs: number;
|
|
@@ -43,6 +46,7 @@ export declare const ProverBrokerConfig: z.ZodObject<{
|
|
|
43
46
|
proverBrokerBatchSize: number;
|
|
44
47
|
proverBrokerBatchIntervalMs: number;
|
|
45
48
|
proverBrokerMaxEpochsToKeepResultsFor: number;
|
|
49
|
+
proverBrokerDebugReplayEnabled: boolean;
|
|
46
50
|
}>;
|
|
47
51
|
export type ProverBrokerConfig = z.infer<typeof ProverBrokerConfig> & Pick<DataStoreConfig, 'dataStoreMapSizeKb' | 'dataDirectory'> & L1ReaderConfig & Pick<ChainConfig, 'rollupVersion'>;
|
|
48
52
|
export declare const proverBrokerConfigMappings: ConfigMappingsType<ProverBrokerConfig>;
|
|
@@ -66,6 +70,10 @@ export declare const ProverAgentConfig: z.ZodObject<{
|
|
|
66
70
|
proverTestDelayFactor: z.ZodNumber;
|
|
67
71
|
/** The delay (ms) to inject during fake proof verification */
|
|
68
72
|
proverTestVerificationDelayMs: z.ZodOptional<z.ZodNumber>;
|
|
73
|
+
/** Whether to abort pending proving jobs when the orchestrator is cancelled */
|
|
74
|
+
cancelJobsOnStop: z.ZodBoolean;
|
|
75
|
+
/** Where to store proving results. Must be accessible to both prover node and agents. If not set will inline-encode the parameters */
|
|
76
|
+
proofStore: z.ZodOptional<z.ZodString>;
|
|
69
77
|
}, "strip", z.ZodTypeAny, {
|
|
70
78
|
proverAgentCount: number;
|
|
71
79
|
proverAgentProofTypes: ProvingRequestType[];
|
|
@@ -76,6 +84,8 @@ export declare const ProverAgentConfig: z.ZodObject<{
|
|
|
76
84
|
proverTestDelayMs: number;
|
|
77
85
|
proverTestDelayFactor: number;
|
|
78
86
|
proverTestVerificationDelayMs?: number | undefined;
|
|
87
|
+
cancelJobsOnStop: boolean;
|
|
88
|
+
proofStore?: string | undefined;
|
|
79
89
|
}, {
|
|
80
90
|
proverAgentCount: number;
|
|
81
91
|
proverAgentProofTypes: ProvingRequestType[];
|
|
@@ -86,7 +96,9 @@ export declare const ProverAgentConfig: z.ZodObject<{
|
|
|
86
96
|
proverTestDelayMs: number;
|
|
87
97
|
proverTestDelayFactor: number;
|
|
88
98
|
proverTestVerificationDelayMs?: number | undefined;
|
|
99
|
+
cancelJobsOnStop: boolean;
|
|
100
|
+
proofStore?: string | undefined;
|
|
89
101
|
}>;
|
|
90
102
|
export type ProverAgentConfig = z.infer<typeof ProverAgentConfig>;
|
|
91
103
|
export declare const proverAgentConfigMappings: ConfigMappingsType<ProverAgentConfig>;
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmluZ19icm9rZXIvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGNBQWMsRUFBMEIsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RixPQUFPLEVBQ0wsS0FBSyxrQkFBa0IsRUFJeEIsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQXVCLE1BQU0sc0JBQXNCLENBQUM7QUFDN0UsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHdCQUF3QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTFELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsZUFBTyxNQUFNLGtCQUFrQjtJQUM3QixxRkFBcUY7O0lBRXJGLHVIQUF1SDs7SUFFdkgsNkZBQTZGOztJQUU3Riw4RUFBOEU7O0lBRTlFLHFDQUFxQzs7SUFFckMsNkZBQTZGOztJQUU3RiwrRUFBK0U7O0lBRS9FLDRDQUE0Qzs7SUFFNUMsdURBQXVEOztJQUV2RCw2RUFBNkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUU3RSxDQUFDO0FBRUgsTUFBTSxNQUFNLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxrQkFBa0IsQ0FBQyxHQUNqRSxJQUFJLENBQUMsZUFBZSxFQUFFLG9CQUFvQixHQUFHLGVBQWUsQ0FBQyxHQUM3RCxjQUFjLEdBQ2QsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUVyQyxlQUFPLE1BQU0sMEJBQTBCLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCLENBNEM3RSxDQUFDO0FBRUYsZUFBTyxNQUFNLHlCQUF5QixFQUFFLGtCQUFpRSxDQUFDO0FBRTFHLGVBQU8sTUFBTSxpQkFBaUI7SUFDNUIsMkNBQTJDOztJQUUzQyx3REFBd0Q7O0lBRXhELGdEQUFnRDs7SUFFaEQsK0NBQStDOztJQUUvQyx1Q0FBdUM7O0lBRXZDLGdEQUFnRDs7SUFFaEQsMkRBQTJEOztJQUUzRCw4RUFBOEU7O0lBRTlFLDhEQUE4RDs7SUFFOUQsK0VBQStFOztJQUUvRSxzSUFBc0k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRXRJLENBQUM7QUFFSCxNQUFNLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLGlCQUFpQixDQUFDLENBQUM7QUFFbEUsZUFBTyxNQUFNLHlCQUF5QixFQUFFLGtCQUFrQixDQUFDLGlCQUFpQixDQTREM0UsQ0FBQyJ9
|