@aztec/prover-client 0.0.1-fake-c83136db25 → 0.0.1-fake-ceab37513c
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.d.ts +2 -0
- package/dest/bin/get-proof-inputs.d.ts.map +1 -0
- package/dest/bin/get-proof-inputs.js +51 -0
- package/dest/block-factory/light.d.ts +3 -5
- package/dest/block-factory/light.d.ts.map +1 -1
- package/dest/block-factory/light.js +9 -16
- package/dest/config.js +1 -1
- package/dest/mocks/fixtures.d.ts +1 -4
- package/dest/mocks/fixtures.d.ts.map +1 -1
- package/dest/mocks/fixtures.js +3 -31
- package/dest/mocks/test_context.d.ts +9 -32
- package/dest/mocks/test_context.d.ts.map +1 -1
- package/dest/mocks/test_context.js +22 -78
- package/dest/orchestrator/block-building-helpers.d.ts +31 -33
- package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
- package/dest/orchestrator/block-building-helpers.js +137 -126
- package/dest/orchestrator/block-proving-state.d.ts +53 -60
- package/dest/orchestrator/block-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/block-proving-state.js +187 -214
- package/dest/orchestrator/epoch-proving-state.d.ts +28 -34
- package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/epoch-proving-state.js +84 -128
- package/dest/orchestrator/orchestrator.d.ts +30 -31
- package/dest/orchestrator/orchestrator.d.ts.map +1 -1
- package/dest/orchestrator/orchestrator.js +236 -368
- package/dest/orchestrator/tx-proving-state.d.ts +9 -11
- package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
- package/dest/orchestrator/tx-proving-state.js +23 -26
- package/dest/prover-client/server-epoch-prover.d.ts +8 -9
- package/dest/prover-client/server-epoch-prover.d.ts.map +1 -1
- package/dest/prover-client/server-epoch-prover.js +9 -9
- package/dest/proving_broker/broker_prover_facade.d.ts +15 -20
- package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -1
- package/dest/proving_broker/broker_prover_facade.js +21 -36
- package/dest/proving_broker/fixtures.js +1 -1
- package/dest/proving_broker/proof_store/index.d.ts +0 -1
- package/dest/proving_broker/proof_store/index.d.ts.map +1 -1
- package/dest/proving_broker/proof_store/index.js +0 -1
- package/dest/proving_broker/proving_broker.d.ts.map +1 -1
- package/dest/proving_broker/proving_broker.js +18 -29
- package/dest/proving_broker/proving_job_controller.d.ts.map +1 -1
- package/dest/proving_broker/proving_job_controller.js +18 -38
- package/dest/test/mock_prover.d.ts +17 -22
- package/dest/test/mock_prover.d.ts.map +1 -1
- package/dest/test/mock_prover.js +20 -35
- package/package.json +17 -16
- package/src/bin/get-proof-inputs.ts +59 -0
- package/src/block-factory/light.ts +9 -35
- package/src/config.ts +1 -1
- package/src/mocks/fixtures.ts +11 -39
- package/src/mocks/test_context.ts +31 -137
- package/src/orchestrator/block-building-helpers.ts +211 -211
- package/src/orchestrator/block-proving-state.ts +245 -235
- package/src/orchestrator/epoch-proving-state.ts +127 -172
- package/src/orchestrator/orchestrator.ts +303 -545
- package/src/orchestrator/tx-proving-state.ts +43 -49
- package/src/prover-client/server-epoch-prover.ts +18 -28
- package/src/proving_broker/broker_prover_facade.ts +86 -157
- package/src/proving_broker/fixtures.ts +1 -1
- package/src/proving_broker/proof_store/index.ts +0 -1
- package/src/proving_broker/proving_broker.ts +18 -36
- package/src/proving_broker/proving_job_controller.ts +18 -38
- package/src/test/mock_prover.ts +60 -142
- package/dest/orchestrator/checkpoint-proving-state.d.ts +0 -63
- package/dest/orchestrator/checkpoint-proving-state.d.ts.map +0 -1
- package/dest/orchestrator/checkpoint-proving-state.js +0 -211
- package/src/orchestrator/checkpoint-proving-state.ts +0 -299
|
@@ -44,33 +44,21 @@ type EnqueuedProvingJob = Pick<ProvingJob, 'id' | 'epochNumber'>;
|
|
|
44
44
|
export class ProvingBroker implements ProvingJobProducer, ProvingJobConsumer, Traceable {
|
|
45
45
|
private queues: ProvingQueues = {
|
|
46
46
|
[ProvingRequestType.PUBLIC_VM]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
47
|
-
[ProvingRequestType.
|
|
47
|
+
[ProvingRequestType.TUBE_PROOF]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
48
48
|
|
|
49
|
-
[ProvingRequestType.
|
|
50
|
-
[ProvingRequestType.
|
|
51
|
-
[ProvingRequestType.
|
|
49
|
+
[ProvingRequestType.PRIVATE_BASE_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
50
|
+
[ProvingRequestType.PUBLIC_BASE_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
51
|
+
[ProvingRequestType.MERGE_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
52
52
|
[ProvingRequestType.ROOT_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
53
53
|
|
|
54
54
|
[ProvingRequestType.BLOCK_MERGE_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
55
|
-
[ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
56
|
-
[ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(
|
|
57
|
-
provingJobComparator,
|
|
58
|
-
),
|
|
59
|
-
[ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(
|
|
60
|
-
provingJobComparator,
|
|
61
|
-
),
|
|
62
55
|
[ProvingRequestType.BLOCK_ROOT_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
63
|
-
[ProvingRequestType.
|
|
56
|
+
[ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
57
|
+
[ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
58
|
+
[ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
64
59
|
|
|
65
|
-
[ProvingRequestType.
|
|
66
|
-
[ProvingRequestType.
|
|
67
|
-
provingJobComparator,
|
|
68
|
-
),
|
|
69
|
-
[ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
70
|
-
[ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
71
|
-
|
|
72
|
-
[ProvingRequestType.PARITY_BASE]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
73
|
-
[ProvingRequestType.PARITY_ROOT]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
60
|
+
[ProvingRequestType.BASE_PARITY]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
61
|
+
[ProvingRequestType.ROOT_PARITY]: new PriorityMemoryQueue<EnqueuedProvingJob>(provingJobComparator),
|
|
74
62
|
};
|
|
75
63
|
|
|
76
64
|
// holds a copy of the database in memory in order to quickly fulfill requests
|
|
@@ -685,22 +673,16 @@ function proofTypeComparator(a: ProvingRequestType, b: ProvingRequestType): -1 |
|
|
|
685
673
|
* is to get picked up by agents
|
|
686
674
|
*/
|
|
687
675
|
export const PROOF_TYPES_IN_PRIORITY_ORDER: ProvingRequestType[] = [
|
|
688
|
-
ProvingRequestType.ROOT_ROLLUP,
|
|
689
|
-
ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP,
|
|
690
|
-
ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP,
|
|
691
|
-
ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP,
|
|
692
676
|
ProvingRequestType.BLOCK_ROOT_ROLLUP,
|
|
693
|
-
ProvingRequestType.
|
|
677
|
+
ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP,
|
|
694
678
|
ProvingRequestType.BLOCK_MERGE_ROLLUP,
|
|
695
|
-
ProvingRequestType.
|
|
696
|
-
ProvingRequestType.
|
|
697
|
-
ProvingRequestType.
|
|
698
|
-
ProvingRequestType.
|
|
699
|
-
ProvingRequestType.TX_MERGE_ROLLUP,
|
|
700
|
-
ProvingRequestType.PUBLIC_TX_BASE_ROLLUP,
|
|
701
|
-
ProvingRequestType.PRIVATE_TX_BASE_ROLLUP,
|
|
679
|
+
ProvingRequestType.ROOT_ROLLUP,
|
|
680
|
+
ProvingRequestType.MERGE_ROLLUP,
|
|
681
|
+
ProvingRequestType.PUBLIC_BASE_ROLLUP,
|
|
682
|
+
ProvingRequestType.PRIVATE_BASE_ROLLUP,
|
|
702
683
|
ProvingRequestType.PUBLIC_VM,
|
|
703
|
-
ProvingRequestType.
|
|
704
|
-
ProvingRequestType.
|
|
705
|
-
ProvingRequestType.
|
|
684
|
+
ProvingRequestType.TUBE_PROOF,
|
|
685
|
+
ProvingRequestType.ROOT_PARITY,
|
|
686
|
+
ProvingRequestType.BASE_PARITY,
|
|
687
|
+
ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP,
|
|
706
688
|
];
|
|
@@ -128,74 +128,54 @@ export class ProvingJobController {
|
|
|
128
128
|
return await this.circuitProver.getAvmProof(inputs, undefined, signal, this.epochNumber);
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
case ProvingRequestType.
|
|
132
|
-
return await this.circuitProver.
|
|
131
|
+
case ProvingRequestType.PRIVATE_BASE_ROLLUP: {
|
|
132
|
+
return await this.circuitProver.getPrivateBaseRollupProof(inputs, signal, this.epochNumber);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
case ProvingRequestType.
|
|
136
|
-
return await this.circuitProver.
|
|
135
|
+
case ProvingRequestType.PUBLIC_BASE_ROLLUP: {
|
|
136
|
+
return await this.circuitProver.getPublicBaseRollupProof(inputs, signal, this.epochNumber);
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
case ProvingRequestType.
|
|
140
|
-
return await this.circuitProver.
|
|
139
|
+
case ProvingRequestType.MERGE_ROLLUP: {
|
|
140
|
+
return await this.circuitProver.getMergeRollupProof(inputs, signal, this.epochNumber);
|
|
141
141
|
}
|
|
142
142
|
|
|
143
|
-
case ProvingRequestType.
|
|
144
|
-
return await this.circuitProver.
|
|
143
|
+
case ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP: {
|
|
144
|
+
return await this.circuitProver.getEmptyBlockRootRollupProof(inputs, signal, this.epochNumber);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
case ProvingRequestType.
|
|
148
|
-
return await this.circuitProver.
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
case ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP: {
|
|
152
|
-
return await this.circuitProver.getBlockRootSingleTxFirstRollupProof(inputs, signal, this.epochNumber);
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
case ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP: {
|
|
156
|
-
return await this.circuitProver.getBlockRootEmptyTxFirstRollupProof(inputs, signal, this.epochNumber);
|
|
147
|
+
case ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP: {
|
|
148
|
+
return await this.circuitProver.getPaddingBlockRootRollupProof(inputs, signal, this.epochNumber);
|
|
157
149
|
}
|
|
158
150
|
|
|
159
151
|
case ProvingRequestType.BLOCK_ROOT_ROLLUP: {
|
|
160
152
|
return await this.circuitProver.getBlockRootRollupProof(inputs, signal, this.epochNumber);
|
|
161
153
|
}
|
|
162
154
|
|
|
163
|
-
case ProvingRequestType.
|
|
164
|
-
return await this.circuitProver.
|
|
155
|
+
case ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP: {
|
|
156
|
+
return await this.circuitProver.getSingleTxBlockRootRollupProof(inputs, signal, this.epochNumber);
|
|
165
157
|
}
|
|
166
158
|
|
|
167
159
|
case ProvingRequestType.BLOCK_MERGE_ROLLUP: {
|
|
168
160
|
return await this.circuitProver.getBlockMergeRollupProof(inputs, signal, this.epochNumber);
|
|
169
161
|
}
|
|
170
162
|
|
|
171
|
-
case ProvingRequestType.CHECKPOINT_ROOT_ROLLUP: {
|
|
172
|
-
return await this.circuitProver.getCheckpointRootRollupProof(inputs, signal, this.epochNumber);
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
case ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP: {
|
|
176
|
-
return await this.circuitProver.getCheckpointRootSingleBlockRollupProof(inputs, signal, this.epochNumber);
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
case ProvingRequestType.CHECKPOINT_PADDING_ROLLUP: {
|
|
180
|
-
return await this.circuitProver.getCheckpointPaddingRollupProof(inputs, signal, this.epochNumber);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
case ProvingRequestType.CHECKPOINT_MERGE_ROLLUP: {
|
|
184
|
-
return await this.circuitProver.getCheckpointMergeRollupProof(inputs, signal, this.epochNumber);
|
|
185
|
-
}
|
|
186
|
-
|
|
187
163
|
case ProvingRequestType.ROOT_ROLLUP: {
|
|
188
164
|
return await this.circuitProver.getRootRollupProof(inputs, signal, this.epochNumber);
|
|
189
165
|
}
|
|
190
166
|
|
|
191
|
-
case ProvingRequestType.
|
|
167
|
+
case ProvingRequestType.BASE_PARITY: {
|
|
192
168
|
return await this.circuitProver.getBaseParityProof(inputs, signal, this.epochNumber);
|
|
193
169
|
}
|
|
194
170
|
|
|
195
|
-
case ProvingRequestType.
|
|
171
|
+
case ProvingRequestType.ROOT_PARITY: {
|
|
196
172
|
return await this.circuitProver.getRootParityProof(inputs, signal, this.epochNumber);
|
|
197
173
|
}
|
|
198
174
|
|
|
175
|
+
case ProvingRequestType.TUBE_PROOF: {
|
|
176
|
+
return await this.circuitProver.getTubeProof(inputs, signal, this.epochNumber);
|
|
177
|
+
}
|
|
178
|
+
|
|
199
179
|
default: {
|
|
200
180
|
const _exhaustive: never = type;
|
|
201
181
|
return Promise.reject(new Error(`Invalid proof request type: ${type}`));
|
package/src/test/mock_prover.ts
CHANGED
|
@@ -4,10 +4,12 @@ import {
|
|
|
4
4
|
NESTED_RECURSIVE_PROOF_LENGTH,
|
|
5
5
|
NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
|
|
6
6
|
RECURSIVE_PROOF_LENGTH,
|
|
7
|
+
TUBE_PROOF_LENGTH,
|
|
7
8
|
} from '@aztec/constants';
|
|
8
9
|
import { times } from '@aztec/foundation/collection';
|
|
9
10
|
import type { AvmCircuitInputs } from '@aztec/stdlib/avm';
|
|
10
11
|
import {
|
|
12
|
+
type ProofAndVerificationKey,
|
|
11
13
|
type ProvingJob,
|
|
12
14
|
type ProvingJobId,
|
|
13
15
|
type ProvingJobProducer,
|
|
@@ -17,37 +19,27 @@ import {
|
|
|
17
19
|
makeProofAndVerificationKey,
|
|
18
20
|
makePublicInputsAndRecursiveProof,
|
|
19
21
|
} from '@aztec/stdlib/interfaces/server';
|
|
20
|
-
import type {
|
|
22
|
+
import type { BaseParityInputs, RootParityInputs } from '@aztec/stdlib/parity';
|
|
21
23
|
import { makeEmptyRecursiveProof, makeRecursiveProof } from '@aztec/stdlib/proofs';
|
|
22
24
|
import type {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
CheckpointRootRollupPrivateInputs,
|
|
34
|
-
CheckpointRootSingleBlockRollupPrivateInputs,
|
|
35
|
-
PrivateTxBaseRollupPrivateInputs,
|
|
36
|
-
PublicChonkVerifierPrivateInputs,
|
|
37
|
-
PublicChonkVerifierPublicInputs,
|
|
38
|
-
PublicTxBaseRollupPrivateInputs,
|
|
39
|
-
RootRollupPrivateInputs,
|
|
25
|
+
BaseOrMergeRollupPublicInputs,
|
|
26
|
+
BlockMergeRollupInputs,
|
|
27
|
+
BlockRootOrBlockMergePublicInputs,
|
|
28
|
+
BlockRootRollupInputs,
|
|
29
|
+
EmptyBlockRootRollupInputs,
|
|
30
|
+
MergeRollupInputs,
|
|
31
|
+
PaddingBlockRootRollupInputs,
|
|
32
|
+
PrivateBaseRollupInputs,
|
|
33
|
+
PublicBaseRollupInputs,
|
|
34
|
+
RootRollupInputs,
|
|
40
35
|
RootRollupPublicInputs,
|
|
41
|
-
|
|
42
|
-
TxRollupPublicInputs,
|
|
36
|
+
SingleTxBlockRootRollupInputs,
|
|
43
37
|
} from '@aztec/stdlib/rollup';
|
|
44
38
|
import {
|
|
45
|
-
|
|
46
|
-
|
|
39
|
+
makeBaseOrMergeRollupPublicInputs,
|
|
40
|
+
makeBlockRootOrBlockMergeRollupPublicInputs,
|
|
47
41
|
makeParityPublicInputs,
|
|
48
|
-
makePublicChonkVerifierPublicInputs,
|
|
49
42
|
makeRootRollupPublicInputs,
|
|
50
|
-
makeTxRollupPublicInputs,
|
|
51
43
|
} from '@aztec/stdlib/testing';
|
|
52
44
|
import { VerificationKeyData } from '@aztec/stdlib/vks';
|
|
53
45
|
|
|
@@ -119,7 +111,7 @@ export class MockProver implements ServerCircuitProver {
|
|
|
119
111
|
);
|
|
120
112
|
}
|
|
121
113
|
|
|
122
|
-
getBaseParityProof(_inputs:
|
|
114
|
+
getBaseParityProof(_inputs: BaseParityInputs, _signal?: AbortSignal, _epochNumber?: number) {
|
|
123
115
|
return Promise.resolve(
|
|
124
116
|
makePublicInputsAndRecursiveProof(
|
|
125
117
|
makeParityPublicInputs(),
|
|
@@ -129,7 +121,7 @@ export class MockProver implements ServerCircuitProver {
|
|
|
129
121
|
);
|
|
130
122
|
}
|
|
131
123
|
|
|
132
|
-
getRootParityProof(_inputs:
|
|
124
|
+
getRootParityProof(_inputs: RootParityInputs, _signal?: AbortSignal, _epochNumber?: number) {
|
|
133
125
|
return Promise.resolve(
|
|
134
126
|
makePublicInputsAndRecursiveProof(
|
|
135
127
|
makeParityPublicInputs(),
|
|
@@ -139,210 +131,130 @@ export class MockProver implements ServerCircuitProver {
|
|
|
139
131
|
);
|
|
140
132
|
}
|
|
141
133
|
|
|
142
|
-
|
|
143
|
-
|
|
134
|
+
getPrivateBaseRollupProof(
|
|
135
|
+
_baseRollupInput: PrivateBaseRollupInputs,
|
|
144
136
|
_signal?: AbortSignal,
|
|
145
137
|
_epochNumber?: number,
|
|
146
138
|
): Promise<
|
|
147
|
-
PublicInputsAndRecursiveProof<
|
|
139
|
+
PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
148
140
|
> {
|
|
149
141
|
return Promise.resolve(
|
|
150
142
|
makePublicInputsAndRecursiveProof(
|
|
151
|
-
|
|
143
|
+
makeBaseOrMergeRollupPublicInputs(),
|
|
152
144
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
153
145
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
154
146
|
),
|
|
155
147
|
);
|
|
156
148
|
}
|
|
157
149
|
|
|
158
|
-
|
|
159
|
-
|
|
150
|
+
getPublicBaseRollupProof(
|
|
151
|
+
_inputs: PublicBaseRollupInputs,
|
|
160
152
|
_signal?: AbortSignal,
|
|
161
153
|
_epochNumber?: number,
|
|
162
|
-
): Promise<
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
makeTxRollupPublicInputs(),
|
|
166
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
167
|
-
VerificationKeyData.makeFakeRollupHonk(),
|
|
168
|
-
),
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
getPublicTxBaseRollupProof(
|
|
173
|
-
_inputs: PublicTxBaseRollupPrivateInputs,
|
|
174
|
-
_signal?: AbortSignal,
|
|
175
|
-
_epochNumber?: number,
|
|
176
|
-
): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
177
|
-
return Promise.resolve(
|
|
178
|
-
makePublicInputsAndRecursiveProof(
|
|
179
|
-
makeTxRollupPublicInputs(),
|
|
180
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
181
|
-
VerificationKeyData.makeFakeRollupHonk(),
|
|
182
|
-
),
|
|
183
|
-
);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
getTxMergeRollupProof(
|
|
187
|
-
_input: TxMergeRollupPrivateInputs,
|
|
188
|
-
_signal?: AbortSignal,
|
|
189
|
-
_epochNumber?: number,
|
|
190
|
-
): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
191
|
-
return Promise.resolve(
|
|
192
|
-
makePublicInputsAndRecursiveProof(
|
|
193
|
-
makeTxRollupPublicInputs(),
|
|
194
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
195
|
-
VerificationKeyData.makeFakeRollupHonk(),
|
|
196
|
-
),
|
|
197
|
-
);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
getBlockRootFirstRollupProof(
|
|
201
|
-
_input: BlockRootFirstRollupPrivateInputs,
|
|
202
|
-
_signal?: AbortSignal,
|
|
203
|
-
_epochNumber?: number,
|
|
204
|
-
): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
205
|
-
return Promise.resolve(
|
|
206
|
-
makePublicInputsAndRecursiveProof(
|
|
207
|
-
makeBlockRollupPublicInputs(),
|
|
208
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
209
|
-
VerificationKeyData.makeFakeRollupHonk(),
|
|
210
|
-
),
|
|
211
|
-
);
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
getBlockRootSingleTxFirstRollupProof(
|
|
215
|
-
_input: BlockRootSingleTxFirstRollupPrivateInputs,
|
|
216
|
-
_signal?: AbortSignal,
|
|
217
|
-
_epochNumber?: number,
|
|
218
|
-
): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
219
|
-
return Promise.resolve(
|
|
220
|
-
makePublicInputsAndRecursiveProof(
|
|
221
|
-
makeBlockRollupPublicInputs(),
|
|
222
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
223
|
-
VerificationKeyData.makeFakeHonk(),
|
|
224
|
-
),
|
|
225
|
-
);
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
getBlockRootEmptyTxFirstRollupProof(
|
|
229
|
-
_input: BlockRootEmptyTxFirstRollupPrivateInputs,
|
|
230
|
-
_signal?: AbortSignal,
|
|
231
|
-
_epochNumber?: number,
|
|
232
|
-
): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
154
|
+
): Promise<
|
|
155
|
+
PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
156
|
+
> {
|
|
233
157
|
return Promise.resolve(
|
|
234
158
|
makePublicInputsAndRecursiveProof(
|
|
235
|
-
|
|
159
|
+
makeBaseOrMergeRollupPublicInputs(),
|
|
236
160
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
237
161
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
238
162
|
),
|
|
239
163
|
);
|
|
240
164
|
}
|
|
241
165
|
|
|
242
|
-
|
|
243
|
-
_input:
|
|
166
|
+
getMergeRollupProof(
|
|
167
|
+
_input: MergeRollupInputs,
|
|
244
168
|
_signal?: AbortSignal,
|
|
245
169
|
_epochNumber?: number,
|
|
246
|
-
): Promise<
|
|
170
|
+
): Promise<
|
|
171
|
+
PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
172
|
+
> {
|
|
247
173
|
return Promise.resolve(
|
|
248
174
|
makePublicInputsAndRecursiveProof(
|
|
249
|
-
|
|
175
|
+
makeBaseOrMergeRollupPublicInputs(),
|
|
250
176
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
251
177
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
252
178
|
),
|
|
253
179
|
);
|
|
254
180
|
}
|
|
255
181
|
|
|
256
|
-
|
|
257
|
-
_input: BlockRootSingleTxRollupPrivateInputs,
|
|
258
|
-
_signal?: AbortSignal,
|
|
259
|
-
_epochNumber?: number,
|
|
260
|
-
): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
|
|
261
|
-
return Promise.resolve(
|
|
262
|
-
makePublicInputsAndRecursiveProof(
|
|
263
|
-
makeBlockRollupPublicInputs(),
|
|
264
|
-
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
265
|
-
VerificationKeyData.makeFakeHonk(),
|
|
266
|
-
),
|
|
267
|
-
);
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
getBlockMergeRollupProof(_input: BlockMergeRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number) {
|
|
182
|
+
getBlockMergeRollupProof(_input: BlockMergeRollupInputs, _signal?: AbortSignal, _epochNumber?: number) {
|
|
271
183
|
return Promise.resolve(
|
|
272
184
|
makePublicInputsAndRecursiveProof(
|
|
273
|
-
|
|
185
|
+
makeBlockRootOrBlockMergeRollupPublicInputs(),
|
|
274
186
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
275
187
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
276
188
|
),
|
|
277
189
|
);
|
|
278
190
|
}
|
|
279
191
|
|
|
280
|
-
|
|
281
|
-
_input:
|
|
192
|
+
getEmptyBlockRootRollupProof(
|
|
193
|
+
_input: EmptyBlockRootRollupInputs,
|
|
282
194
|
_signal?: AbortSignal,
|
|
283
195
|
_epochNumber?: number,
|
|
284
196
|
): Promise<
|
|
285
|
-
PublicInputsAndRecursiveProof<
|
|
197
|
+
PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
286
198
|
> {
|
|
287
199
|
return Promise.resolve(
|
|
288
200
|
makePublicInputsAndRecursiveProof(
|
|
289
|
-
|
|
201
|
+
makeBlockRootOrBlockMergeRollupPublicInputs(),
|
|
290
202
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
291
203
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
292
204
|
),
|
|
293
205
|
);
|
|
294
206
|
}
|
|
295
207
|
|
|
296
|
-
|
|
297
|
-
_input:
|
|
208
|
+
getPaddingBlockRootRollupProof(
|
|
209
|
+
_input: PaddingBlockRootRollupInputs,
|
|
298
210
|
_signal?: AbortSignal,
|
|
299
211
|
_epochNumber?: number,
|
|
300
212
|
): Promise<
|
|
301
|
-
PublicInputsAndRecursiveProof<
|
|
213
|
+
PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
302
214
|
> {
|
|
303
215
|
return Promise.resolve(
|
|
304
216
|
makePublicInputsAndRecursiveProof(
|
|
305
|
-
|
|
217
|
+
makeBlockRootOrBlockMergeRollupPublicInputs(),
|
|
306
218
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
307
219
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
308
220
|
),
|
|
309
221
|
);
|
|
310
222
|
}
|
|
311
223
|
|
|
312
|
-
|
|
313
|
-
_input:
|
|
224
|
+
getBlockRootRollupProof(
|
|
225
|
+
_input: BlockRootRollupInputs,
|
|
314
226
|
_signal?: AbortSignal,
|
|
315
227
|
_epochNumber?: number,
|
|
316
228
|
): Promise<
|
|
317
|
-
PublicInputsAndRecursiveProof<
|
|
229
|
+
PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
318
230
|
> {
|
|
319
231
|
return Promise.resolve(
|
|
320
232
|
makePublicInputsAndRecursiveProof(
|
|
321
|
-
|
|
233
|
+
makeBlockRootOrBlockMergeRollupPublicInputs(),
|
|
322
234
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
323
235
|
VerificationKeyData.makeFakeRollupHonk(),
|
|
324
236
|
),
|
|
325
237
|
);
|
|
326
238
|
}
|
|
327
239
|
|
|
328
|
-
|
|
329
|
-
_input:
|
|
240
|
+
getSingleTxBlockRootRollupProof(
|
|
241
|
+
_input: SingleTxBlockRootRollupInputs,
|
|
330
242
|
_signal?: AbortSignal,
|
|
331
243
|
_epochNumber?: number,
|
|
332
244
|
): Promise<
|
|
333
|
-
PublicInputsAndRecursiveProof<
|
|
245
|
+
PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
|
|
334
246
|
> {
|
|
335
247
|
return Promise.resolve(
|
|
336
248
|
makePublicInputsAndRecursiveProof(
|
|
337
|
-
|
|
249
|
+
makeBlockRootOrBlockMergeRollupPublicInputs(),
|
|
338
250
|
makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
|
|
339
|
-
VerificationKeyData.
|
|
251
|
+
VerificationKeyData.makeFakeHonk(),
|
|
340
252
|
),
|
|
341
253
|
);
|
|
342
254
|
}
|
|
343
255
|
|
|
344
256
|
getRootRollupProof(
|
|
345
|
-
_input:
|
|
257
|
+
_input: RootRollupInputs,
|
|
346
258
|
_signal?: AbortSignal,
|
|
347
259
|
_epochNumber?: number,
|
|
348
260
|
): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>> {
|
|
@@ -354,4 +266,10 @@ export class MockProver implements ServerCircuitProver {
|
|
|
354
266
|
),
|
|
355
267
|
);
|
|
356
268
|
}
|
|
269
|
+
|
|
270
|
+
getTubeProof(): Promise<ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>> {
|
|
271
|
+
return Promise.resolve(
|
|
272
|
+
makeProofAndVerificationKey(makeRecursiveProof(TUBE_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()),
|
|
273
|
+
);
|
|
274
|
+
}
|
|
357
275
|
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { BatchedBlobAccumulator, type FinalBlobBatchingChallenges } from '@aztec/blob-lib';
|
|
2
|
-
import { type ARCHIVE_HEIGHT, type L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, type NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH } from '@aztec/constants';
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
-
import type { Tuple } from '@aztec/foundation/serialize';
|
|
5
|
-
import { type TreeNodeLocation } from '@aztec/foundation/trees';
|
|
6
|
-
import type { PublicInputsAndRecursiveProof } from '@aztec/stdlib/interfaces/server';
|
|
7
|
-
import { ParityBasePrivateInputs } from '@aztec/stdlib/parity';
|
|
8
|
-
import { BlockMergeRollupPrivateInputs, BlockRollupPublicInputs, CheckpointConstantData, CheckpointRollupPublicInputs, CheckpointRootRollupPrivateInputs, CheckpointRootSingleBlockRollupPrivateInputs } from '@aztec/stdlib/rollup';
|
|
9
|
-
import type { CircuitName } from '@aztec/stdlib/stats';
|
|
10
|
-
import type { AppendOnlyTreeSnapshot } from '@aztec/stdlib/trees';
|
|
11
|
-
import type { BlockHeader } from '@aztec/stdlib/tx';
|
|
12
|
-
import type { UInt64 } from '@aztec/stdlib/types';
|
|
13
|
-
import { BlockProvingState } from './block-proving-state.js';
|
|
14
|
-
import type { EpochProvingState } from './epoch-proving-state.js';
|
|
15
|
-
export declare class CheckpointProvingState {
|
|
16
|
-
#private;
|
|
17
|
-
readonly index: number;
|
|
18
|
-
readonly constants: CheckpointConstantData;
|
|
19
|
-
readonly totalNumBlocks: number;
|
|
20
|
-
private readonly totalNumBlobFields;
|
|
21
|
-
private readonly finalBlobBatchingChallenges;
|
|
22
|
-
private readonly headerOfLastBlockInPreviousCheckpoint;
|
|
23
|
-
private readonly lastArchiveSiblingPath;
|
|
24
|
-
private readonly l1ToL2Messages;
|
|
25
|
-
private readonly lastL1ToL2MessageTreeSnapshot;
|
|
26
|
-
private readonly lastL1ToL2MessageSubtreeRootSiblingPath;
|
|
27
|
-
private readonly newL1ToL2MessageTreeSnapshot;
|
|
28
|
-
private readonly newL1ToL2MessageSubtreeRootSiblingPath;
|
|
29
|
-
parentEpoch: EpochProvingState;
|
|
30
|
-
private onBlobAccumulatorSet;
|
|
31
|
-
private blockProofs;
|
|
32
|
-
private checkpointRootProof;
|
|
33
|
-
private blocks;
|
|
34
|
-
private startBlobAccumulator;
|
|
35
|
-
private endBlobAccumulator;
|
|
36
|
-
private blobFields;
|
|
37
|
-
private error;
|
|
38
|
-
readonly firstBlockNumber: number;
|
|
39
|
-
constructor(index: number, constants: CheckpointConstantData, totalNumBlocks: number, totalNumBlobFields: number, finalBlobBatchingChallenges: FinalBlobBatchingChallenges, headerOfLastBlockInPreviousCheckpoint: BlockHeader, lastArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>, l1ToL2Messages: Fr[], lastL1ToL2MessageTreeSnapshot: AppendOnlyTreeSnapshot, lastL1ToL2MessageSubtreeRootSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH>, newL1ToL2MessageTreeSnapshot: AppendOnlyTreeSnapshot, newL1ToL2MessageSubtreeRootSiblingPath: Tuple<Fr, typeof L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH>, parentEpoch: EpochProvingState, onBlobAccumulatorSet: (checkpoint: CheckpointProvingState) => void);
|
|
40
|
-
get epochNumber(): number;
|
|
41
|
-
startNewBlock(blockNumber: number, timestamp: UInt64, totalNumTxs: number, lastArchiveTreeSnapshot: AppendOnlyTreeSnapshot, lastArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>): Promise<BlockProvingState>;
|
|
42
|
-
isAcceptingBlocks(): boolean;
|
|
43
|
-
setBlockRootRollupProof(blockIndex: number, provingOutput: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): TreeNodeLocation;
|
|
44
|
-
tryStartProvingBlockMerge(location: TreeNodeLocation): boolean;
|
|
45
|
-
setBlockMergeRollupProof(location: TreeNodeLocation, provingOutput: PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): void;
|
|
46
|
-
tryStartProvingCheckpointRoot(): boolean;
|
|
47
|
-
setCheckpointRootRollupProof(provingOutput: PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>): TreeNodeLocation;
|
|
48
|
-
getBaseParityInputs(baseParityIndex: number): ParityBasePrivateInputs;
|
|
49
|
-
accumulateBlobs(startBlobAccumulator: BatchedBlobAccumulator): Promise<BatchedBlobAccumulator | undefined>;
|
|
50
|
-
getEndBlobAccumulator(): BatchedBlobAccumulator | undefined;
|
|
51
|
-
getParentLocation(location: TreeNodeLocation): TreeNodeLocation;
|
|
52
|
-
getBlockMergeRollupInputs(mergeLocation: TreeNodeLocation): BlockMergeRollupPrivateInputs;
|
|
53
|
-
getCheckpointRootRollupType(): CircuitName;
|
|
54
|
-
getCheckpointRootRollupInputs(): CheckpointRootSingleBlockRollupPrivateInputs | CheckpointRootRollupPrivateInputs;
|
|
55
|
-
getBlockProvingStateByBlockNumber(blockNumber: number): BlockProvingState | undefined;
|
|
56
|
-
isReadyForBlockMerge(location: TreeNodeLocation): boolean;
|
|
57
|
-
isReadyForCheckpointRoot(): boolean;
|
|
58
|
-
verifyState(): boolean;
|
|
59
|
-
getError(): string | undefined;
|
|
60
|
-
cancel(): void;
|
|
61
|
-
reject(reason: string): void;
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=checkpoint-proving-state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-proving-state.d.ts","sourceRoot":"","sources":["../../src/orchestrator/checkpoint-proving-state.ts"],"names":[],"mappings":"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"}
|