@aztec/prover-client 0.73.0 → 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2
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/bin/get-proof-inputs.js +18 -16
- package/dest/block_builder/index.js +0 -1
- package/dest/block_builder/light.js +23 -13
- package/dest/config.js +9 -11
- package/dest/index.js +0 -1
- package/dest/mocks/fixtures.js +28 -26
- package/dest/mocks/test_context.js +55 -31
- package/dest/orchestrator/block-building-helpers.js +90 -90
- package/dest/orchestrator/block-proving-state.js +95 -70
- package/dest/orchestrator/epoch-proving-state.js +53 -40
- package/dest/orchestrator/index.js +0 -1
- package/dest/orchestrator/orchestrator.js +649 -653
- package/dest/orchestrator/orchestrator_metrics.js +4 -3
- package/dest/orchestrator/tx-proving-state.js +52 -51
- package/dest/prover-agent/index.js +0 -1
- package/dest/prover-agent/memory-proving-queue.js +237 -248
- package/dest/prover-agent/prover-agent.js +184 -187
- package/dest/prover-agent/proving-error.js +0 -1
- package/dest/prover-agent/queue_metrics.js +6 -5
- package/dest/prover-agent/rpc.js +6 -4
- package/dest/prover-client/factory.js +0 -1
- package/dest/prover-client/index.js +0 -1
- package/dest/prover-client/prover-client.js +30 -25
- package/dest/prover-client/server-epoch-prover.js +4 -4
- package/dest/proving_broker/broker_prover_facade.js +70 -59
- package/dest/proving_broker/config.js +22 -37
- package/dest/proving_broker/factory.js +1 -2
- package/dest/proving_broker/fixtures.js +0 -1
- package/dest/proving_broker/index.js +0 -1
- package/dest/proving_broker/proof_store/factory.js +9 -12
- package/dest/proving_broker/proof_store/gcs_proof_store.js +11 -7
- package/dest/proving_broker/proof_store/index.js +0 -1
- package/dest/proving_broker/proof_store/inline_proof_store.js +11 -7
- package/dest/proving_broker/proof_store/proof_store.js +3 -2
- package/dest/proving_broker/proving_agent.js +121 -110
- package/dest/proving_broker/proving_agent_instrumentation.js +3 -3
- package/dest/proving_broker/proving_broker.js +491 -451
- package/dest/proving_broker/proving_broker_database/memory.js +19 -13
- package/dest/proving_broker/proving_broker_database/persisted.js +41 -21
- package/dest/proving_broker/proving_broker_database.js +3 -2
- package/dest/proving_broker/proving_broker_instrumentation.js +28 -21
- package/dest/proving_broker/proving_job_controller.js +81 -62
- package/dest/proving_broker/rpc.js +23 -15
- package/dest/test/mock_prover.js +11 -9
- package/package.json +13 -11
- package/src/index.ts +1 -1
- package/src/orchestrator/block-building-helpers.ts +1 -1
- package/src/proving_broker/proving_agent.ts +30 -11
- package/src/proving_broker/proving_broker.ts +53 -27
- package/src/proving_broker/rpc.ts +8 -2
- package/dest/bin/get-proof-inputs.d.ts +0 -2
- package/dest/bin/get-proof-inputs.d.ts.map +0 -1
- package/dest/block_builder/index.d.ts +0 -6
- package/dest/block_builder/index.d.ts.map +0 -1
- package/dest/block_builder/light.d.ts +0 -31
- package/dest/block_builder/light.d.ts.map +0 -1
- package/dest/config.d.ts +0 -17
- package/dest/config.d.ts.map +0 -1
- package/dest/index.d.ts +0 -4
- package/dest/index.d.ts.map +0 -1
- package/dest/mocks/fixtures.d.ts +0 -19
- package/dest/mocks/fixtures.d.ts.map +0 -1
- package/dest/mocks/test_context.d.ts +0 -49
- package/dest/mocks/test_context.d.ts.map +0 -1
- package/dest/orchestrator/block-building-helpers.d.ts +0 -50
- package/dest/orchestrator/block-building-helpers.d.ts.map +0 -1
- package/dest/orchestrator/block-proving-state.d.ts +0 -71
- package/dest/orchestrator/block-proving-state.d.ts.map +0 -1
- package/dest/orchestrator/epoch-proving-state.d.ts +0 -56
- package/dest/orchestrator/epoch-proving-state.d.ts.map +0 -1
- package/dest/orchestrator/index.d.ts +0 -2
- package/dest/orchestrator/index.d.ts.map +0 -1
- package/dest/orchestrator/orchestrator.d.ts +0 -108
- package/dest/orchestrator/orchestrator.d.ts.map +0 -1
- package/dest/orchestrator/orchestrator_metrics.d.ts +0 -8
- package/dest/orchestrator/orchestrator_metrics.d.ts.map +0 -1
- package/dest/orchestrator/tx-proving-state.d.ts +0 -31
- package/dest/orchestrator/tx-proving-state.d.ts.map +0 -1
- package/dest/prover-agent/index.d.ts +0 -4
- package/dest/prover-agent/index.d.ts.map +0 -1
- package/dest/prover-agent/memory-proving-queue.d.ts +0 -82
- package/dest/prover-agent/memory-proving-queue.d.ts.map +0 -1
- package/dest/prover-agent/prover-agent.d.ts +0 -43
- package/dest/prover-agent/prover-agent.d.ts.map +0 -1
- package/dest/prover-agent/proving-error.d.ts +0 -5
- package/dest/prover-agent/proving-error.d.ts.map +0 -1
- package/dest/prover-agent/queue_metrics.d.ts +0 -10
- package/dest/prover-agent/queue_metrics.d.ts.map +0 -1
- package/dest/prover-agent/rpc.d.ts +0 -11
- package/dest/prover-agent/rpc.d.ts.map +0 -1
- package/dest/prover-client/factory.d.ts +0 -6
- package/dest/prover-client/factory.d.ts.map +0 -1
- package/dest/prover-client/index.d.ts +0 -3
- package/dest/prover-client/index.d.ts.map +0 -1
- package/dest/prover-client/prover-client.d.ts +0 -42
- package/dest/prover-client/prover-client.d.ts.map +0 -1
- package/dest/prover-client/server-epoch-prover.d.ts +0 -25
- package/dest/prover-client/server-epoch-prover.d.ts.map +0 -1
- package/dest/proving_broker/broker_prover_facade.d.ts +0 -39
- package/dest/proving_broker/broker_prover_facade.d.ts.map +0 -1
- package/dest/proving_broker/config.d.ts +0 -61
- package/dest/proving_broker/config.d.ts.map +0 -1
- package/dest/proving_broker/factory.d.ts +0 -5
- package/dest/proving_broker/factory.d.ts.map +0 -1
- package/dest/proving_broker/fixtures.d.ts +0 -5
- package/dest/proving_broker/fixtures.d.ts.map +0 -1
- package/dest/proving_broker/index.d.ts +0 -10
- package/dest/proving_broker/index.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/factory.d.ts +0 -6
- package/dest/proving_broker/proof_store/factory.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts +0 -13
- package/dest/proving_broker/proof_store/gcs_proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/index.d.ts +0 -4
- package/dest/proving_broker/proof_store/index.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts +0 -14
- package/dest/proving_broker/proof_store/inline_proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proof_store/proof_store.d.ts +0 -35
- package/dest/proving_broker/proof_store/proof_store.d.ts.map +0 -1
- package/dest/proving_broker/proving_agent.d.ts +0 -44
- package/dest/proving_broker/proving_agent.d.ts.map +0 -1
- 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_broker.d.ts +0 -75
- package/dest/proving_broker/proving_broker.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database/memory.d.ts +0 -16
- package/dest/proving_broker/proving_broker_database/memory.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database/persisted.d.ts +0 -21
- package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_database.d.ts +0 -39
- package/dest/proving_broker/proving_broker_database.d.ts.map +0 -1
- package/dest/proving_broker/proving_broker_instrumentation.d.ts +0 -25
- package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +0 -1
- package/dest/proving_broker/proving_job_controller.d.ts +0 -31
- package/dest/proving_broker/proving_job_controller.d.ts.map +0 -1
- package/dest/proving_broker/rpc.d.ts +0 -11
- package/dest/proving_broker/rpc.d.ts.map +0 -1
- package/dest/test/mock_prover.d.ts +0 -33
- package/dest/test/mock_prover.d.ts.map +0 -1
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { type L2Block, type MerkleTreeId, type PublicInputsAndRecursiveProof } from '@aztec/circuit-types';
|
|
2
|
-
import { type ARCHIVE_HEIGHT, type AppendOnlyTreeSnapshot, type BlockHeader, Fr, type GlobalVariables, type L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, type NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, type ParityPublicInputs, RootParityInputs } from '@aztec/circuits.js';
|
|
3
|
-
import { SpongeBlob } from '@aztec/circuits.js/blobs';
|
|
4
|
-
import { type BaseOrMergeRollupPublicInputs, type BlockRootOrBlockMergePublicInputs, BlockRootRollupInputs, EmptyBlockRootRollupInputs, MergeRollupInputs, SingleTxBlockRootRollupInputs } from '@aztec/circuits.js/rollup';
|
|
5
|
-
import { type Logger } from '@aztec/foundation/log';
|
|
6
|
-
import { type Tuple } from '@aztec/foundation/serialize';
|
|
7
|
-
import { type TreeNodeLocation } from '@aztec/foundation/trees';
|
|
8
|
-
import { type EpochProvingState } from './epoch-proving-state.js';
|
|
9
|
-
import { type TxProvingState } from './tx-proving-state.js';
|
|
10
|
-
export type TreeSnapshots = Map<MerkleTreeId, AppendOnlyTreeSnapshot>;
|
|
11
|
-
/**
|
|
12
|
-
* The current state of the proving schedule for a given block. Managed by ProvingState.
|
|
13
|
-
* Contains the raw inputs and intermediate state to generate every constituent proof in the tree.
|
|
14
|
-
*/
|
|
15
|
-
export declare class BlockProvingState {
|
|
16
|
-
#private;
|
|
17
|
-
readonly index: number;
|
|
18
|
-
readonly globalVariables: GlobalVariables;
|
|
19
|
-
readonly newL1ToL2Messages: Fr[];
|
|
20
|
-
private readonly l1ToL2MessageSubtreeSiblingPath;
|
|
21
|
-
private readonly l1ToL2MessageTreeSnapshotAfterInsertion;
|
|
22
|
-
private readonly lastArchiveSnapshot;
|
|
23
|
-
private readonly newArchiveSiblingPath;
|
|
24
|
-
private readonly previousBlockHeader;
|
|
25
|
-
private readonly parentEpoch;
|
|
26
|
-
private baseOrMergeProvingOutputs;
|
|
27
|
-
private baseParityProvingOutputs;
|
|
28
|
-
private rootParityProvingOutput;
|
|
29
|
-
private blockRootProvingOutput;
|
|
30
|
-
blockRootRollupStarted: boolean;
|
|
31
|
-
block: L2Block | undefined;
|
|
32
|
-
spongeBlobState: SpongeBlob | undefined;
|
|
33
|
-
totalNumTxs: number;
|
|
34
|
-
private txs;
|
|
35
|
-
error: string | undefined;
|
|
36
|
-
constructor(index: number, globalVariables: GlobalVariables, newL1ToL2Messages: Fr[], l1ToL2MessageSubtreeSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH>, l1ToL2MessageTreeSnapshotAfterInsertion: AppendOnlyTreeSnapshot, lastArchiveSnapshot: AppendOnlyTreeSnapshot, newArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, previousBlockHeader: BlockHeader, parentEpoch: EpochProvingState);
|
|
37
|
-
get blockNumber(): number;
|
|
38
|
-
startNewBlock(numTxs: number, numBlobFields: number): void;
|
|
39
|
-
addNewTx(tx: TxProvingState): number;
|
|
40
|
-
setBaseRollupProof(txIndex: number, provingOutput: PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): TreeNodeLocation;
|
|
41
|
-
setMergeRollupProof(location: TreeNodeLocation, provingOutput: PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
42
|
-
setBaseParityProof(index: number, provingOutput: PublicInputsAndRecursiveProof<ParityPublicInputs>): void;
|
|
43
|
-
setRootParityProof(provingOutput: PublicInputsAndRecursiveProof<ParityPublicInputs>): void;
|
|
44
|
-
setBlockRootRollupProof(provingOutput: PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
45
|
-
get allTxs(): TxProvingState[];
|
|
46
|
-
/** Returns the block number as an epoch number. Used for prioritizing proof requests. */
|
|
47
|
-
get epochNumber(): number;
|
|
48
|
-
getParentLocation(location: TreeNodeLocation): TreeNodeLocation;
|
|
49
|
-
getMergeRollupInputs(mergeLocation: TreeNodeLocation): Promise<MergeRollupInputs>;
|
|
50
|
-
getBlockRootRollupTypeAndInputs(proverId: Fr): Promise<{
|
|
51
|
-
rollupType: string;
|
|
52
|
-
inputs: EmptyBlockRootRollupInputs;
|
|
53
|
-
} | {
|
|
54
|
-
rollupType: string;
|
|
55
|
-
inputs: SingleTxBlockRootRollupInputs;
|
|
56
|
-
} | {
|
|
57
|
-
rollupType: string;
|
|
58
|
-
inputs: BlockRootRollupInputs;
|
|
59
|
-
}>;
|
|
60
|
-
getPaddingBlockRootInputs(proverId: Fr): Promise<EmptyBlockRootRollupInputs>;
|
|
61
|
-
getRootParityInputs(): Promise<RootParityInputs>;
|
|
62
|
-
getTxProvingState(txIndex: number): TxProvingState;
|
|
63
|
-
buildHeaderFromProvingOutputs(logger?: Logger): Promise<BlockHeader>;
|
|
64
|
-
isReadyForMergeRollup(location: TreeNodeLocation): boolean;
|
|
65
|
-
isReadyForBlockRootRollup(): boolean;
|
|
66
|
-
isReadyForRootParity(): boolean;
|
|
67
|
-
isComplete(): boolean;
|
|
68
|
-
verifyState(): boolean;
|
|
69
|
-
reject(reason: string): void;
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=block-proving-state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"block-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-proving-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { type MerkleTreeId, type ProofAndVerificationKey, type PublicInputsAndRecursiveProof } from '@aztec/circuit-types';
|
|
2
|
-
import { type ARCHIVE_HEIGHT, type AppendOnlyTreeSnapshot, type BlockHeader, type Fr, type GlobalVariables, type L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, type NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH } from '@aztec/circuits.js';
|
|
3
|
-
import { BlockMergeRollupInputs, type BlockRootOrBlockMergePublicInputs, RootRollupInputs, type RootRollupPublicInputs } from '@aztec/circuits.js/rollup';
|
|
4
|
-
import { type Tuple } from '@aztec/foundation/serialize';
|
|
5
|
-
import { type TreeNodeLocation } from '@aztec/foundation/trees';
|
|
6
|
-
import { BlockProvingState } from './block-proving-state.js';
|
|
7
|
-
export type TreeSnapshots = Map<MerkleTreeId, AppendOnlyTreeSnapshot>;
|
|
8
|
-
export type ProvingResult = {
|
|
9
|
-
status: 'success';
|
|
10
|
-
} | {
|
|
11
|
-
status: 'failure';
|
|
12
|
-
reason: string;
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* The current state of the proving schedule for an epoch.
|
|
16
|
-
* Contains the raw inputs and intermediate state to generate every constituent proof in the tree.
|
|
17
|
-
* Carries an identifier so we can identify if the proving state is discarded and a new one started.
|
|
18
|
-
* Captures resolve and reject callbacks to provide a promise base interface to the consumer of our proving.
|
|
19
|
-
*/
|
|
20
|
-
export declare class EpochProvingState {
|
|
21
|
-
#private;
|
|
22
|
-
readonly epochNumber: number;
|
|
23
|
-
readonly firstBlockNumber: number;
|
|
24
|
-
readonly totalNumBlocks: number;
|
|
25
|
-
private completionCallback;
|
|
26
|
-
private rejectionCallback;
|
|
27
|
-
private blockRootOrMergeProvingOutputs;
|
|
28
|
-
private paddingBlockRootProvingOutput;
|
|
29
|
-
private rootRollupProvingOutput;
|
|
30
|
-
private provingStateLifecycle;
|
|
31
|
-
readonly cachedTubeProofs: Map<string, Promise<ProofAndVerificationKey<538>>>;
|
|
32
|
-
blocks: (BlockProvingState | undefined)[];
|
|
33
|
-
constructor(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number, completionCallback: (result: ProvingResult) => void, rejectionCallback: (reason: string) => void);
|
|
34
|
-
startNewBlock(globalVariables: GlobalVariables, l1ToL2Messages: Fr[], l1ToL2MessageSubtreeSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH>, l1ToL2MessageTreeSnapshotAfterInsertion: AppendOnlyTreeSnapshot, lastArchiveSnapshot: AppendOnlyTreeSnapshot, newArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, previousBlockHeader: BlockHeader): BlockProvingState;
|
|
35
|
-
verifyState(): boolean;
|
|
36
|
-
isAcceptingBlocks(): boolean;
|
|
37
|
-
setBlockRootRollupProof(blockIndex: number, proof: PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): TreeNodeLocation;
|
|
38
|
-
setBlockMergeRollupProof(location: TreeNodeLocation, proof: PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
39
|
-
setRootRollupProof(proof: PublicInputsAndRecursiveProof<RootRollupPublicInputs>): void;
|
|
40
|
-
setPaddingBlockRootProof(proof: PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
41
|
-
getParentLocation(location: TreeNodeLocation): TreeNodeLocation;
|
|
42
|
-
getBlockMergeRollupInputs(mergeLocation: TreeNodeLocation): Promise<BlockMergeRollupInputs>;
|
|
43
|
-
getRootRollupInputs(proverId: Fr): Promise<RootRollupInputs>;
|
|
44
|
-
getPaddingBlockRootInputs(proverId: Fr): Promise<import("@aztec/circuits.js/rollup").EmptyBlockRootRollupInputs>;
|
|
45
|
-
getBlockProvingStateByBlockNumber(blockNumber: number): BlockProvingState | undefined;
|
|
46
|
-
getEpochProofResult(): {
|
|
47
|
-
proof: import("@aztec/circuits.js").Proof;
|
|
48
|
-
publicInputs: RootRollupPublicInputs;
|
|
49
|
-
};
|
|
50
|
-
isReadyForBlockMerge(location: TreeNodeLocation): boolean;
|
|
51
|
-
isReadyForRootRollup(): boolean;
|
|
52
|
-
cancel(): void;
|
|
53
|
-
reject(reason: string): void;
|
|
54
|
-
resolve(result: ProvingResult): void;
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=epoch-proving-state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"epoch-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/epoch-proving-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { L2Block, type ProcessedTx, type ServerCircuitProver, type Tx } from '@aztec/circuit-types';
|
|
2
|
-
import { type EpochProver, type ForkMerkleTreeOperations } from '@aztec/circuit-types/interfaces';
|
|
3
|
-
import { type AppendOnlyTreeSnapshot, type BlockHeader, Fr, type GlobalVariables } from '@aztec/circuits.js';
|
|
4
|
-
import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
|
|
5
|
-
/**
|
|
6
|
-
* Implements an event driven proving scheduler to build the recursive proof tree. The idea being:
|
|
7
|
-
* 1. Transactions are provided to the scheduler post simulation.
|
|
8
|
-
* 2. Tree insertions are performed as required to generate transaction specific proofs
|
|
9
|
-
* 3. Those transaction specific proofs are generated in the necessary order accounting for dependencies
|
|
10
|
-
* 4. Once a transaction is proven, it will be incorporated into a merge proof
|
|
11
|
-
* 5. Merge proofs are produced at each level of the tree until the root proof is produced
|
|
12
|
-
*
|
|
13
|
-
* The proving implementation is determined by the provided prover. This could be for example a local prover or a remote prover pool.
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* The orchestrator, managing the flow of recursive proving operations required to build the rollup proof tree.
|
|
17
|
-
*/
|
|
18
|
-
export declare class ProvingOrchestrator implements EpochProver {
|
|
19
|
-
private dbProvider;
|
|
20
|
-
private prover;
|
|
21
|
-
private readonly proverId;
|
|
22
|
-
private provingState;
|
|
23
|
-
private pendingProvingJobs;
|
|
24
|
-
private provingPromise;
|
|
25
|
-
private metrics;
|
|
26
|
-
private dbs;
|
|
27
|
-
constructor(dbProvider: ForkMerkleTreeOperations, prover: ServerCircuitProver, proverId?: Fr, telemetryClient?: TelemetryClient);
|
|
28
|
-
get tracer(): Tracer;
|
|
29
|
-
getProverId(): Fr;
|
|
30
|
-
stop(): Promise<void>;
|
|
31
|
-
startNewEpoch(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number): void;
|
|
32
|
-
/**
|
|
33
|
-
* Starts off a new block
|
|
34
|
-
* @param globalVariables - The global variables for the block
|
|
35
|
-
* @param l1ToL2Messages - The l1 to l2 messages for the block
|
|
36
|
-
* @returns A proving ticket, containing a promise notifying of proving completion
|
|
37
|
-
*/
|
|
38
|
-
startNewBlock(globalVariables: GlobalVariables, l1ToL2Messages: Fr[], previousBlockHeader: BlockHeader): Promise<void>;
|
|
39
|
-
/**
|
|
40
|
-
* The interface to add simulated transactions to the scheduler. This can only be called once per block.
|
|
41
|
-
* @param txs - The transactions to be proven
|
|
42
|
-
*/
|
|
43
|
-
addTxs(txs: ProcessedTx[]): Promise<void>;
|
|
44
|
-
/**
|
|
45
|
-
* Kickstarts tube circuits for the specified txs. These will be used during epoch proving.
|
|
46
|
-
* Note that if the tube circuits are not started this way, they will be started nontheless after processing.
|
|
47
|
-
*/
|
|
48
|
-
startTubeCircuits(txs: Tx[]): Promise<void>;
|
|
49
|
-
/**
|
|
50
|
-
* Marks the block as completed.
|
|
51
|
-
* Computes the block header and updates the archive tree.
|
|
52
|
-
*/
|
|
53
|
-
setBlockCompleted(blockNumber: number, expectedHeader?: BlockHeader): Promise<L2Block>;
|
|
54
|
-
/** Returns the block as built for a given index. */
|
|
55
|
-
getBlock(index: number): L2Block;
|
|
56
|
-
private buildBlock;
|
|
57
|
-
protected verifyBuiltBlockAgainstSyncedState(l2Block: L2Block, newArchive: AppendOnlyTreeSnapshot): Promise<void>;
|
|
58
|
-
/**
|
|
59
|
-
* Cancel any further proving
|
|
60
|
-
*/
|
|
61
|
-
cancel(): void;
|
|
62
|
-
/**
|
|
63
|
-
* Returns the proof for the current epoch.
|
|
64
|
-
*/
|
|
65
|
-
finaliseEpoch(): Promise<{
|
|
66
|
-
proof: import("@aztec/circuits.js").Proof;
|
|
67
|
-
publicInputs: import("@aztec/circuits.js/rollup").RootRollupPublicInputs;
|
|
68
|
-
}>;
|
|
69
|
-
/**
|
|
70
|
-
* Starts the proving process for the given transaction and adds it to our state
|
|
71
|
-
* @param tx - The transaction whose proving we wish to commence
|
|
72
|
-
* @param provingState - The proving state being worked on
|
|
73
|
-
*/
|
|
74
|
-
private prepareTransaction;
|
|
75
|
-
/**
|
|
76
|
-
* Enqueue a job to be scheduled
|
|
77
|
-
* @param provingState - The proving state object being operated on
|
|
78
|
-
* @param jobType - The type of job to be queued
|
|
79
|
-
* @param job - The actual job, returns a promise notifying of the job's completion
|
|
80
|
-
*/
|
|
81
|
-
private deferredProving;
|
|
82
|
-
private prepareBaseParityInputs;
|
|
83
|
-
private prepareBaseRollupInputs;
|
|
84
|
-
private enqueueBaseRollup;
|
|
85
|
-
private getOrEnqueueTube;
|
|
86
|
-
private doEnqueueTube;
|
|
87
|
-
private enqueueMergeRollup;
|
|
88
|
-
private enqueueBlockRootRollup;
|
|
89
|
-
private enqueueBaseParityCircuit;
|
|
90
|
-
private checkAndEnqueueRootParityCircuit;
|
|
91
|
-
private enqueueRootParityCircuit;
|
|
92
|
-
private enqueueBlockMergeRollup;
|
|
93
|
-
private enqueueEpochPadding;
|
|
94
|
-
private enqueueRootRollup;
|
|
95
|
-
private checkAndEnqueueNextMergeRollup;
|
|
96
|
-
private checkAndEnqueueBlockRootRollup;
|
|
97
|
-
private checkAndEnqueueNextBlockMergeRollup;
|
|
98
|
-
private checkAndEnqueueRootRollup;
|
|
99
|
-
/**
|
|
100
|
-
* Executes the VM circuit for a public function, will enqueue the corresponding kernel if the
|
|
101
|
-
* previous kernel is ready
|
|
102
|
-
* @param provingState - The proving state being operated on
|
|
103
|
-
* @param txIndex - The index of the transaction being proven
|
|
104
|
-
*/
|
|
105
|
-
private enqueueVM;
|
|
106
|
-
private checkAndEnqueueNextTxCircuit;
|
|
107
|
-
}
|
|
108
|
-
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAEP,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,EAAE,EAER,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAG9B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAGL,KAAK,sBAAsB,EAE3B,KAAK,WAAW,EAChB,EAAE,EACF,KAAK,eAAe,EAQrB,MAAM,oBAAoB,CAAC;AAiB5B,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,GAAE,EAAY,EACvC,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;YAmCvB,iBAAiB;IA+C/B,OAAO,CAAC,gBAAgB;IA0BxB,OAAO,CAAC,aAAa;YA6BP,kBAAkB;YA2BlB,sBAAsB;IA2DpC,OAAO,CAAC,wBAAwB;YAwBlB,gCAAgC;YAUhC,wBAAwB;YA4BxB,uBAAuB;YA0BvB,mBAAmB;YA8BnB,iBAAiB;YA6BjB,8BAA8B;YAa9B,8BAA8B;YAyB9B,mCAAmC;YAgBnC,yBAAyB;IASvC;;;;;OAKG;IACH,OAAO,CAAC,SAAS;YA8CH,4BAA4B;CAW3C"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
|
|
2
|
-
export declare class ProvingOrchestratorMetrics {
|
|
3
|
-
readonly tracer: Tracer;
|
|
4
|
-
private baseRollupInputsDuration;
|
|
5
|
-
constructor(client: TelemetryClient, name?: string);
|
|
6
|
-
recordBaseRollupInputs(durationMs: number): void;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=orchestrator_metrics.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,EAAa,MAAM,yBAAyB,CAAC;AAEhH,qBAAa,0BAA0B;IACrC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,OAAO,CAAC,wBAAwB,CAAY;gBAEhC,MAAM,EAAE,eAAe,EAAE,IAAI,SAAwB;IAWjE,sBAAsB,CAAC,UAAU,EAAE,MAAM;CAG1C"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { type MerkleTreeId, type ProcessedTx, type ProofAndVerificationKey } from '@aztec/circuit-types';
|
|
2
|
-
import { type AVM_PROOF_LENGTH_IN_FIELDS, type AppendOnlyTreeSnapshot, type TUBE_PROOF_LENGTH } from '@aztec/circuits.js';
|
|
3
|
-
import { type BaseRollupHints, PrivateBaseRollupInputs, PublicBaseRollupInputs, TubeInputs } from '@aztec/circuits.js/rollup';
|
|
4
|
-
/**
|
|
5
|
-
* Helper class to manage the proving cycle of a transaction
|
|
6
|
-
* This includes the public VMs and the public kernels
|
|
7
|
-
* Also stores the inputs to the base rollup for this transaction and the tree snapshots
|
|
8
|
-
*/
|
|
9
|
-
export declare class TxProvingState {
|
|
10
|
-
#private;
|
|
11
|
-
readonly processedTx: ProcessedTx;
|
|
12
|
-
private readonly baseRollupHints;
|
|
13
|
-
readonly treeSnapshots: Map<MerkleTreeId, AppendOnlyTreeSnapshot>;
|
|
14
|
-
private tube?;
|
|
15
|
-
private avm?;
|
|
16
|
-
constructor(processedTx: ProcessedTx, baseRollupHints: BaseRollupHints, treeSnapshots: Map<MerkleTreeId, AppendOnlyTreeSnapshot>);
|
|
17
|
-
get requireAvmProof(): boolean;
|
|
18
|
-
ready(): boolean;
|
|
19
|
-
getTubeInputs(): TubeInputs;
|
|
20
|
-
getAvmInputs(): import("@aztec/circuits.js").AvmCircuitInputs;
|
|
21
|
-
getBaseRollupTypeAndInputs(): Promise<{
|
|
22
|
-
rollupType: string;
|
|
23
|
-
inputs: PublicBaseRollupInputs;
|
|
24
|
-
} | {
|
|
25
|
-
rollupType: string;
|
|
26
|
-
inputs: PrivateBaseRollupInputs;
|
|
27
|
-
}>;
|
|
28
|
-
setTubeProof(tubeProofAndVk: ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>): void;
|
|
29
|
-
setAvmProof(avmProofAndVk: ProofAndVerificationKey<typeof AVM_PROOF_LENGTH_IN_FIELDS>): void;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=tx-proving-state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tx-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/tx-proving-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEzG,OAAO,EACL,KAAK,0BAA0B,EAE/B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EAGvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,KAAK,eAAe,EAEpB,uBAAuB,EAGvB,sBAAsB,EAEtB,UAAU,EACX,MAAM,2BAA2B,CAAC;AAGnC;;;;GAIG;AACH,qBAAa,cAAc;;aAKP,WAAW,EAAE,WAAW;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe;aAChB,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC;IAN1E,OAAO,CAAC,IAAI,CAAC,CAAoD;IACjE,OAAO,CAAC,GAAG,CAAC,CAA6D;gBAGvD,WAAW,EAAE,WAAW,EACvB,eAAe,EAAE,eAAe,EACjC,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC;IAG1E,IAAI,eAAe,YAElB;IAEM,KAAK;IAIL,aAAa;IAIb,YAAY;IAIN,0BAA0B;;;;;;;IAchC,YAAY,CAAC,cAAc,EAAE,uBAAuB,CAAC,OAAO,iBAAiB,CAAC;IAI9E,WAAW,CAAC,aAAa,EAAE,uBAAuB,CAAC,OAAO,0BAA0B,CAAC;CAqE7F"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prover-agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,UAAU,CAAC"}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { type ProofAndVerificationKey, type ProvingJob, type ProvingJobSource, type ProvingRequestResultFor, ProvingRequestType, type PublicInputsAndRecursiveProof, type ServerCircuitProver } from '@aztec/circuit-types';
|
|
2
|
-
import type { AVM_PROOF_LENGTH_IN_FIELDS, AvmCircuitInputs, BaseParityInputs, NESTED_RECURSIVE_PROOF_LENGTH, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, ParityPublicInputs, RECURSIVE_PROOF_LENGTH, RootParityInputs, TUBE_PROOF_LENGTH } from '@aztec/circuits.js';
|
|
3
|
-
import { type BaseOrMergeRollupPublicInputs, type BlockMergeRollupInputs, type BlockRootOrBlockMergePublicInputs, type BlockRootRollupInputs, type EmptyBlockRootRollupInputs, type MergeRollupInputs, type PrivateBaseRollupInputs, type PublicBaseRollupInputs, type RootRollupInputs, type RootRollupPublicInputs, type SingleTxBlockRootRollupInputs, type TubeInputs } from '@aztec/circuits.js/rollup';
|
|
4
|
-
import { type TelemetryClient, type Tracer } from '@aztec/telemetry-client';
|
|
5
|
-
import { type ProofStore } from '../proving_broker/proof_store/index.js';
|
|
6
|
-
/**
|
|
7
|
-
* A helper class that sits in between services that need proofs created and agents that can create them.
|
|
8
|
-
* The queue accumulates jobs and provides them to agents prioritized by block number.
|
|
9
|
-
*/
|
|
10
|
-
export declare class MemoryProvingQueue implements ServerCircuitProver, ProvingJobSource {
|
|
11
|
-
/** Timeout the job if an agent doesn't report back in this time */
|
|
12
|
-
private jobTimeoutMs;
|
|
13
|
-
private generateId;
|
|
14
|
-
private timeSource;
|
|
15
|
-
private proofStore;
|
|
16
|
-
private log;
|
|
17
|
-
private queue;
|
|
18
|
-
private jobsInProgress;
|
|
19
|
-
private runningPromise;
|
|
20
|
-
private metrics;
|
|
21
|
-
readonly tracer: Tracer;
|
|
22
|
-
constructor(client: TelemetryClient,
|
|
23
|
-
/** Timeout the job if an agent doesn't report back in this time */
|
|
24
|
-
jobTimeoutMs?: number,
|
|
25
|
-
/** How often to check for timed out jobs */
|
|
26
|
-
pollingIntervalMs?: number, generateId?: () => string, timeSource?: () => number, proofStore?: ProofStore);
|
|
27
|
-
start(): void;
|
|
28
|
-
stop(): Promise<void>;
|
|
29
|
-
getProvingJob({ timeoutSec }?: {
|
|
30
|
-
timeoutSec?: number | undefined;
|
|
31
|
-
}): Promise<ProvingJob | undefined>;
|
|
32
|
-
resolveProvingJob<T extends ProvingRequestType>(jobId: string, result: ProvingRequestResultFor<T>): Promise<void>;
|
|
33
|
-
rejectProvingJob(jobId: string, reason: string): Promise<void>;
|
|
34
|
-
heartbeat(jobId: string): Promise<void>;
|
|
35
|
-
isJobRunning(jobId: string): boolean;
|
|
36
|
-
private poll;
|
|
37
|
-
private enqueue;
|
|
38
|
-
getTubeProof(inputs: TubeInputs, signal?: AbortSignal, epochNumber?: number): Promise<ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>>;
|
|
39
|
-
/**
|
|
40
|
-
* Creates a proof for the given input.
|
|
41
|
-
* @param input - Input to the circuit.
|
|
42
|
-
*/
|
|
43
|
-
getBaseParityProof(inputs: BaseParityInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<ParityPublicInputs, typeof RECURSIVE_PROOF_LENGTH>>;
|
|
44
|
-
/**
|
|
45
|
-
* Creates a proof for the given input.
|
|
46
|
-
* @param input - Input to the circuit.
|
|
47
|
-
*/
|
|
48
|
-
getRootParityProof(inputs: RootParityInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<ParityPublicInputs, typeof NESTED_RECURSIVE_PROOF_LENGTH>>;
|
|
49
|
-
getPrivateBaseRollupProof(inputs: PrivateBaseRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
50
|
-
getPublicBaseRollupProof(inputs: PublicBaseRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
51
|
-
/**
|
|
52
|
-
* Creates a proof for the given input.
|
|
53
|
-
* @param input - Input to the circuit.
|
|
54
|
-
*/
|
|
55
|
-
getMergeRollupProof(inputs: MergeRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
56
|
-
/**
|
|
57
|
-
* Creates a proof for the given input.
|
|
58
|
-
* @param input - Input to the circuit.
|
|
59
|
-
*/
|
|
60
|
-
getBlockRootRollupProof(inputs: BlockRootRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
61
|
-
getSingleTxBlockRootRollupProof(inputs: SingleTxBlockRootRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
62
|
-
getEmptyBlockRootRollupProof(inputs: EmptyBlockRootRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
63
|
-
/**
|
|
64
|
-
* Creates a proof for the given input.
|
|
65
|
-
* @param input - Input to the circuit.
|
|
66
|
-
*/
|
|
67
|
-
getBlockMergeRollupProof(inputs: BlockMergeRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>>;
|
|
68
|
-
/**
|
|
69
|
-
* Creates a proof for the given input.
|
|
70
|
-
* @param input - Input to the circuit.
|
|
71
|
-
*/
|
|
72
|
-
getRootRollupProof(inputs: RootRollupInputs, signal?: AbortSignal, epochNumber?: number): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>>;
|
|
73
|
-
/**
|
|
74
|
-
* Creates an AVM proof.
|
|
75
|
-
*/
|
|
76
|
-
getAvmProof(inputs: AvmCircuitInputs, signal?: AbortSignal, epochNumber?: number): Promise<ProofAndVerificationKey<typeof AVM_PROOF_LENGTH_IN_FIELDS>>;
|
|
77
|
-
/**
|
|
78
|
-
* Verifies a circuit proof
|
|
79
|
-
*/
|
|
80
|
-
verifyProof(): Promise<void>;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=memory-proving-queue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory-proving-queue.d.ts","sourceRoot":"","sources":["../../src/prover-agent/memory-proving-queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { type ProverAgentApi, type ProvingJobSource, type ServerCircuitProver } from '@aztec/circuit-types';
|
|
2
|
-
import { type TelemetryClient, type Traceable, type Tracer } from '@aztec/telemetry-client';
|
|
3
|
-
/**
|
|
4
|
-
* A helper class that encapsulates a circuit prover and connects it to a job source.
|
|
5
|
-
*/
|
|
6
|
-
export declare class ProverAgent implements ProverAgentApi, Traceable {
|
|
7
|
-
#private;
|
|
8
|
-
/** The prover implementation to defer jobs to */
|
|
9
|
-
private circuitProver;
|
|
10
|
-
/** How many proving jobs this agent can handle in parallel */
|
|
11
|
-
private maxConcurrency;
|
|
12
|
-
/** How long to wait between jobs */
|
|
13
|
-
private pollIntervalMs;
|
|
14
|
-
/** Logger */
|
|
15
|
-
private log;
|
|
16
|
-
private inFlightPromises;
|
|
17
|
-
private runningPromise?;
|
|
18
|
-
private proofInputsDatabase;
|
|
19
|
-
readonly tracer: Tracer;
|
|
20
|
-
constructor(
|
|
21
|
-
/** The prover implementation to defer jobs to */
|
|
22
|
-
circuitProver: ServerCircuitProver,
|
|
23
|
-
/** How many proving jobs this agent can handle in parallel */
|
|
24
|
-
maxConcurrency?: number,
|
|
25
|
-
/** How long to wait between jobs */
|
|
26
|
-
pollIntervalMs?: number,
|
|
27
|
-
/** Telemetry client */
|
|
28
|
-
telemetry?: TelemetryClient,
|
|
29
|
-
/** Logger */
|
|
30
|
-
log?: import("@aztec/foundation/log").Logger);
|
|
31
|
-
setMaxConcurrency(maxConcurrency: number): Promise<void>;
|
|
32
|
-
setCircuitProver(circuitProver: ServerCircuitProver): void;
|
|
33
|
-
isRunning(): Promise<boolean>;
|
|
34
|
-
getCurrentJobs(): Promise<{
|
|
35
|
-
id: string;
|
|
36
|
-
type: string;
|
|
37
|
-
}[]>;
|
|
38
|
-
start(jobSource: ProvingJobSource): void;
|
|
39
|
-
stop(): Promise<void>;
|
|
40
|
-
private work;
|
|
41
|
-
private getProof;
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=prover-agent.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prover-agent.d.ts","sourceRoot":"","sources":["../../src/prover-agent/prover-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAInB,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EAEzB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAYjC;;GAEG;AACH,qBAAa,WAAY,YAAW,cAAc,EAAE,SAAS;;IAQzD,iDAAiD;IACjD,OAAO,CAAC,aAAa;IACrB,8DAA8D;IAC9D,OAAO,CAAC,cAAc;IACtB,oCAAoC;IACpC,OAAO,CAAC,cAAc;IAGtB,aAAa;IACb,OAAO,CAAC,GAAG;IAhBb,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,mBAAmB,CAA0B;IAErD,SAAgB,MAAM,EAAE,MAAM,CAAC;;IAG7B,iDAAiD;IACzC,aAAa,EAAE,mBAAmB;IAC1C,8DAA8D;IACtD,cAAc,SAAI;IAC1B,oCAAoC;IAC5B,cAAc,SAAM;IAC5B,uBAAuB;IACvB,SAAS,GAAE,eAAsC;IACjD,aAAa;IACL,GAAG,yCAA6C;IAK1D,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxD,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,GAAG,IAAI;IAI1D,SAAS;IAQT,cAAc,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAMzD,KAAK,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IA2DlC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAeb,IAAI;IAiClB,OAAO,CAAC,QAAQ;CAyDjB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"proving-error.d.ts","sourceRoot":"","sources":["../../src/prover-agent/proving-error.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAa,SAAQ,KAAK;IAC5B,QAAQ;IAIjB,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM;CAGlC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ProvingRequestType } from '@aztec/circuit-types';
|
|
2
|
-
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
3
|
-
export declare class ProvingQueueMetrics {
|
|
4
|
-
private jobSize;
|
|
5
|
-
private queueSize;
|
|
6
|
-
constructor(client: TelemetryClient, name?: string);
|
|
7
|
-
recordNewJob(type: ProvingRequestType, size: number): void;
|
|
8
|
-
recordQueueSize(size: number): void;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=queue_metrics.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"queue_metrics.d.ts","sourceRoot":"","sources":["../../src/prover-agent/queue_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAmD,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEhH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,SAAS,CAAQ;gBAEb,MAAM,EAAE,eAAe,EAAE,IAAI,SAAwB;IAYjE,YAAY,CAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM;IAMnD,eAAe,CAAC,IAAI,EAAE,MAAM;CAG7B"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type ProvingJobSource } from '@aztec/circuit-types';
|
|
2
|
-
import { type ProverAgent } from './prover-agent.js';
|
|
3
|
-
export declare function createProvingJobSourceServer(queue: ProvingJobSource): import("@aztec/foundation/json-rpc/server").SafeJsonRpcServer;
|
|
4
|
-
export declare function createProvingJobSourceClient(url: string, fetch?: (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, extraHeaders?: Record<string, string> | undefined, noRetry?: boolean | undefined) => Promise<any>): ProvingJobSource;
|
|
5
|
-
/**
|
|
6
|
-
* Wrap a ProverAgent instance with a JSON RPC HTTP server.
|
|
7
|
-
* @param agent - The Prover Agent
|
|
8
|
-
* @returns An JSON-RPC HTTP server
|
|
9
|
-
*/
|
|
10
|
-
export declare function createProverAgentRpcServer(agent: ProverAgent): import("@aztec/foundation/json-rpc/server").SafeJsonRpcServer;
|
|
11
|
-
//# sourceMappingURL=rpc.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/prover-agent/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,gBAAgB,EAA0B,MAAM,sBAAsB,CAAC;AAI3G,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,gBAAgB,iEAEnE;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,2KAAoC,GAAG,gBAAgB,CAErH;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,WAAW,iEAE5D"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { type ForkMerkleTreeOperations, type ProvingJobBroker } from '@aztec/circuit-types';
|
|
2
|
-
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
3
|
-
import { type ProverClientConfig } from '../config.js';
|
|
4
|
-
import { ProverClient } from './prover-client.js';
|
|
5
|
-
export declare function createProverClient(config: ProverClientConfig, worldState: ForkMerkleTreeOperations, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
6
|
-
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/prover-client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,eAAsC,yBAGlD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prover-client/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { type ACVMConfig, type BBConfig } from '@aztec/bb-prover';
|
|
2
|
-
import { type ActualProverConfig, type EpochProver, type EpochProverManager, type ForkMerkleTreeOperations, type ProvingJobBroker, type ProvingJobConsumer, type ServerCircuitProver } from '@aztec/circuit-types/interfaces';
|
|
3
|
-
import { Fr } from '@aztec/circuits.js';
|
|
4
|
-
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
5
|
-
import { type ProverClientConfig } from '../config.js';
|
|
6
|
-
/** Manages proving of epochs by orchestrating the proving of individual blocks relying on a pool of prover agents. */
|
|
7
|
-
export declare class ProverClient implements EpochProverManager {
|
|
8
|
-
private config;
|
|
9
|
-
private worldState;
|
|
10
|
-
private orchestratorClient;
|
|
11
|
-
private agentClient?;
|
|
12
|
-
private telemetry;
|
|
13
|
-
private log;
|
|
14
|
-
private running;
|
|
15
|
-
private agents;
|
|
16
|
-
private proofStore;
|
|
17
|
-
private failedProofStore;
|
|
18
|
-
private constructor();
|
|
19
|
-
createEpochProver(): EpochProver;
|
|
20
|
-
getProverId(): Fr;
|
|
21
|
-
updateProverConfig(config: Partial<ProverClientConfig>): Promise<void>;
|
|
22
|
-
/**
|
|
23
|
-
* Starts the prover instance
|
|
24
|
-
*/
|
|
25
|
-
start(): Promise<void>;
|
|
26
|
-
/**
|
|
27
|
-
* Stops the prover instance
|
|
28
|
-
*/
|
|
29
|
-
stop(): Promise<void>;
|
|
30
|
-
/**
|
|
31
|
-
* Creates a new prover client and starts it
|
|
32
|
-
* @param config - The prover configuration.
|
|
33
|
-
* @param worldState - An instance of the world state
|
|
34
|
-
* @returns An instance of the prover, constructed and started.
|
|
35
|
-
*/
|
|
36
|
-
static new(config: ProverClientConfig, worldState: ForkMerkleTreeOperations, broker: ProvingJobBroker, telemetry?: TelemetryClient): Promise<ProverClient>;
|
|
37
|
-
getProvingJobSource(): ProvingJobConsumer;
|
|
38
|
-
private createAndStartAgents;
|
|
39
|
-
private stopAgents;
|
|
40
|
-
}
|
|
41
|
-
export declare function buildServerCircuitProver(config: ActualProverConfig & ACVMConfig & BBConfig, telemetry: TelemetryClient): Promise<ServerCircuitProver>;
|
|
42
|
-
//# sourceMappingURL=prover-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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;AAC3G,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,KAAK,mBAAmB,EACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAIxC,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOvD,sHAAsH;AACtH,qBAAa,YAAa,YAAW,kBAAkB;IAQnD,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,GAAG;IAZb,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAsB;IAEpC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO;IAYA,iBAAiB,IAAI,WAAW;IAMhC,WAAW,IAAI,EAAE;IAIlB,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5E;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IASnC;;OAEG;IACU,IAAI;IAQjB;;;;;OAKG;WACiB,GAAG,CACrB,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,eAAsC;IAO5C,mBAAmB,IAAI,kBAAkB;YAQlC,oBAAoB;YA2BpB,UAAU;CAGzB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,GAAG,UAAU,GAAG,QAAQ,EAClD,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAU9B"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { type EpochProver, type L2Block, type ProcessedTx, type Tx } from '@aztec/circuit-types';
|
|
2
|
-
import { type BlockHeader, type Fr, type GlobalVariables, type Proof } from '@aztec/circuits.js';
|
|
3
|
-
import { type RootRollupPublicInputs } from '@aztec/circuits.js/rollup';
|
|
4
|
-
import { type ProvingOrchestrator } from '../orchestrator/orchestrator.js';
|
|
5
|
-
import { type BrokerCircuitProverFacade } from '../proving_broker/broker_prover_facade.js';
|
|
6
|
-
/** Encapsulates the proving orchestrator and the broker facade */
|
|
7
|
-
export declare class ServerEpochProver implements EpochProver {
|
|
8
|
-
private facade;
|
|
9
|
-
private orchestrator;
|
|
10
|
-
constructor(facade: BrokerCircuitProverFacade, orchestrator: ProvingOrchestrator);
|
|
11
|
-
startNewEpoch(epochNumber: number, firstBlockNumber: number, totalNumBlocks: number): void;
|
|
12
|
-
startTubeCircuits(txs: Tx[]): Promise<void>;
|
|
13
|
-
setBlockCompleted(blockNumber: number, expectedBlockHeader?: BlockHeader): Promise<L2Block>;
|
|
14
|
-
finaliseEpoch(): Promise<{
|
|
15
|
-
publicInputs: RootRollupPublicInputs;
|
|
16
|
-
proof: Proof;
|
|
17
|
-
}>;
|
|
18
|
-
cancel(): void;
|
|
19
|
-
getProverId(): Fr;
|
|
20
|
-
getBlock(index: number): L2Block;
|
|
21
|
-
stop(): Promise<void>;
|
|
22
|
-
startNewBlock(globalVariables: GlobalVariables, l1ToL2Messages: Fr[], previousBlockHeader: BlockHeader): Promise<void>;
|
|
23
|
-
addTxs(txs: ProcessedTx[]): Promise<void>;
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=server-epoch-prover.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-epoch-prover.d.ts","sourceRoot":"","sources":["../../src/prover-client/server-epoch-prover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACjG,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,eAAe,EAAE,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAE3F,kEAAkE;AAClE,qBAAa,iBAAkB,YAAW,WAAW;IACvC,OAAO,CAAC,MAAM;IAA6B,OAAO,CAAC,YAAY;gBAAvD,MAAM,EAAE,yBAAyB,EAAU,YAAY,EAAE,mBAAmB;IAEhG,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;IAI1F,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAG3C,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAG3F,aAAa,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,sBAAsB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IAGhF,MAAM,IAAI,IAAI;IAGd,WAAW,IAAI,EAAE;IAGjB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAG1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,aAAa,CACX,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,mBAAmB,EAAE,WAAW,GAC/B,OAAO,CAAC,IAAI,CAAC;IAGhB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|