@aztec/prover-client 0.0.1-fake-ceab37513c → 0.0.6-commit.a2d1860fe9

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.
Files changed (148) hide show
  1. package/dest/config.d.ts +2 -2
  2. package/dest/config.d.ts.map +1 -1
  3. package/dest/config.js +2 -2
  4. package/dest/index.d.ts +1 -1
  5. package/dest/light/index.d.ts +2 -0
  6. package/dest/light/index.d.ts.map +1 -0
  7. package/dest/light/index.js +1 -0
  8. package/dest/light/lightweight_checkpoint_builder.d.ts +48 -0
  9. package/dest/light/lightweight_checkpoint_builder.d.ts.map +1 -0
  10. package/dest/light/lightweight_checkpoint_builder.js +202 -0
  11. package/dest/mocks/fixtures.d.ts +5 -5
  12. package/dest/mocks/fixtures.d.ts.map +1 -1
  13. package/dest/mocks/fixtures.js +35 -16
  14. package/dest/mocks/test_context.d.ts +39 -33
  15. package/dest/mocks/test_context.d.ts.map +1 -1
  16. package/dest/mocks/test_context.js +141 -82
  17. package/dest/orchestrator/block-building-helpers.d.ts +34 -34
  18. package/dest/orchestrator/block-building-helpers.d.ts.map +1 -1
  19. package/dest/orchestrator/block-building-helpers.js +151 -187
  20. package/dest/orchestrator/block-proving-state.d.ts +71 -55
  21. package/dest/orchestrator/block-proving-state.d.ts.map +1 -1
  22. package/dest/orchestrator/block-proving-state.js +280 -185
  23. package/dest/orchestrator/checkpoint-proving-state.d.ts +76 -0
  24. package/dest/orchestrator/checkpoint-proving-state.d.ts.map +1 -0
  25. package/dest/orchestrator/checkpoint-proving-state.js +243 -0
  26. package/dest/orchestrator/epoch-proving-state.d.ts +40 -32
  27. package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -1
  28. package/dest/orchestrator/epoch-proving-state.js +165 -85
  29. package/dest/orchestrator/index.d.ts +1 -1
  30. package/dest/orchestrator/orchestrator.d.ts +51 -35
  31. package/dest/orchestrator/orchestrator.d.ts.map +1 -1
  32. package/dest/orchestrator/orchestrator.js +847 -329
  33. package/dest/orchestrator/orchestrator_metrics.d.ts +1 -3
  34. package/dest/orchestrator/orchestrator_metrics.d.ts.map +1 -1
  35. package/dest/orchestrator/orchestrator_metrics.js +2 -15
  36. package/dest/orchestrator/tx-proving-state.d.ts +15 -12
  37. package/dest/orchestrator/tx-proving-state.d.ts.map +1 -1
  38. package/dest/orchestrator/tx-proving-state.js +27 -33
  39. package/dest/prover-client/factory.d.ts +3 -3
  40. package/dest/prover-client/factory.d.ts.map +1 -1
  41. package/dest/prover-client/index.d.ts +1 -1
  42. package/dest/prover-client/prover-client.d.ts +5 -5
  43. package/dest/prover-client/prover-client.d.ts.map +1 -1
  44. package/dest/prover-client/prover-client.js +15 -10
  45. package/dest/prover-client/server-epoch-prover.d.ts +13 -11
  46. package/dest/prover-client/server-epoch-prover.d.ts.map +1 -1
  47. package/dest/prover-client/server-epoch-prover.js +9 -9
  48. package/dest/proving_broker/broker_prover_facade.d.ts +28 -21
  49. package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -1
  50. package/dest/proving_broker/broker_prover_facade.js +45 -36
  51. package/dest/proving_broker/config.d.ts +24 -8
  52. package/dest/proving_broker/config.d.ts.map +1 -1
  53. package/dest/proving_broker/config.js +26 -3
  54. package/dest/proving_broker/factory.d.ts +1 -1
  55. package/dest/proving_broker/fixtures.d.ts +3 -2
  56. package/dest/proving_broker/fixtures.d.ts.map +1 -1
  57. package/dest/proving_broker/fixtures.js +3 -2
  58. package/dest/proving_broker/index.d.ts +1 -1
  59. package/dest/proving_broker/proof_store/factory.d.ts +2 -5
  60. package/dest/proving_broker/proof_store/factory.d.ts.map +1 -1
  61. package/dest/proving_broker/proof_store/factory.js +7 -30
  62. package/dest/proving_broker/proof_store/file_store_proof_store.d.ts +18 -0
  63. package/dest/proving_broker/proof_store/file_store_proof_store.d.ts.map +1 -0
  64. package/dest/proving_broker/proof_store/file_store_proof_store.js +60 -0
  65. package/dest/proving_broker/proof_store/index.d.ts +2 -1
  66. package/dest/proving_broker/proof_store/index.d.ts.map +1 -1
  67. package/dest/proving_broker/proof_store/index.js +1 -0
  68. package/dest/proving_broker/proof_store/inline_proof_store.d.ts +1 -1
  69. package/dest/proving_broker/proof_store/inline_proof_store.d.ts.map +1 -1
  70. package/dest/proving_broker/proof_store/proof_store.d.ts +1 -1
  71. package/dest/proving_broker/proving_agent.d.ts +5 -9
  72. package/dest/proving_broker/proving_agent.d.ts.map +1 -1
  73. package/dest/proving_broker/proving_agent.js +4 -19
  74. package/dest/proving_broker/proving_broker.d.ts +7 -4
  75. package/dest/proving_broker/proving_broker.d.ts.map +1 -1
  76. package/dest/proving_broker/proving_broker.js +64 -30
  77. package/dest/proving_broker/proving_broker_database/memory.d.ts +3 -2
  78. package/dest/proving_broker/proving_broker_database/memory.d.ts.map +1 -1
  79. package/dest/proving_broker/proving_broker_database/persisted.d.ts +5 -3
  80. package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -1
  81. package/dest/proving_broker/proving_broker_database/persisted.js +392 -3
  82. package/dest/proving_broker/proving_broker_database.d.ts +3 -2
  83. package/dest/proving_broker/proving_broker_database.d.ts.map +1 -1
  84. package/dest/proving_broker/proving_broker_instrumentation.d.ts +1 -1
  85. package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +1 -1
  86. package/dest/proving_broker/proving_broker_instrumentation.js +15 -35
  87. package/dest/proving_broker/proving_job_controller.d.ts +5 -3
  88. package/dest/proving_broker/proving_job_controller.d.ts.map +1 -1
  89. package/dest/proving_broker/proving_job_controller.js +46 -24
  90. package/dest/proving_broker/rpc.d.ts +7 -5
  91. package/dest/proving_broker/rpc.d.ts.map +1 -1
  92. package/dest/proving_broker/rpc.js +8 -0
  93. package/dest/test/mock_proof_store.d.ts +1 -1
  94. package/dest/test/mock_proof_store.d.ts.map +1 -1
  95. package/dest/test/mock_prover.d.ts +23 -19
  96. package/dest/test/mock_prover.d.ts.map +1 -1
  97. package/dest/test/mock_prover.js +38 -23
  98. package/package.json +21 -20
  99. package/src/config.ts +2 -2
  100. package/src/light/index.ts +1 -0
  101. package/src/light/lightweight_checkpoint_builder.ts +294 -0
  102. package/src/mocks/fixtures.ts +43 -37
  103. package/src/mocks/test_context.ts +201 -114
  104. package/src/orchestrator/block-building-helpers.ts +233 -313
  105. package/src/orchestrator/block-proving-state.ts +324 -247
  106. package/src/orchestrator/checkpoint-proving-state.ts +349 -0
  107. package/src/orchestrator/epoch-proving-state.ts +229 -132
  108. package/src/orchestrator/orchestrator.ts +630 -385
  109. package/src/orchestrator/orchestrator_metrics.ts +2 -25
  110. package/src/orchestrator/tx-proving-state.ts +49 -60
  111. package/src/prover-client/factory.ts +6 -2
  112. package/src/prover-client/prover-client.ts +31 -23
  113. package/src/prover-client/server-epoch-prover.ts +30 -21
  114. package/src/proving_broker/broker_prover_facade.ts +183 -118
  115. package/src/proving_broker/config.ts +30 -1
  116. package/src/proving_broker/fixtures.ts +8 -3
  117. package/src/proving_broker/proof_store/factory.ts +10 -32
  118. package/src/proving_broker/proof_store/file_store_proof_store.ts +78 -0
  119. package/src/proving_broker/proof_store/index.ts +1 -0
  120. package/src/proving_broker/proving_agent.ts +6 -19
  121. package/src/proving_broker/proving_broker.ts +72 -28
  122. package/src/proving_broker/proving_broker_database/memory.ts +2 -1
  123. package/src/proving_broker/proving_broker_database/persisted.ts +20 -5
  124. package/src/proving_broker/proving_broker_database.ts +2 -1
  125. package/src/proving_broker/proving_broker_instrumentation.ts +14 -35
  126. package/src/proving_broker/proving_job_controller.ts +51 -25
  127. package/src/proving_broker/rpc.ts +14 -0
  128. package/src/test/mock_prover.ts +144 -74
  129. package/dest/bin/get-proof-inputs.d.ts +0 -2
  130. package/dest/bin/get-proof-inputs.d.ts.map +0 -1
  131. package/dest/bin/get-proof-inputs.js +0 -51
  132. package/dest/block-factory/index.d.ts +0 -2
  133. package/dest/block-factory/index.d.ts.map +0 -1
  134. package/dest/block-factory/index.js +0 -1
  135. package/dest/block-factory/light.d.ts +0 -36
  136. package/dest/block-factory/light.d.ts.map +0 -1
  137. package/dest/block-factory/light.js +0 -87
  138. package/dest/proving_broker/proof_store/gcs_proof_store.d.ts +0 -14
  139. package/dest/proving_broker/proof_store/gcs_proof_store.d.ts.map +0 -1
  140. package/dest/proving_broker/proof_store/gcs_proof_store.js +0 -52
  141. package/dest/proving_broker/proving_agent_instrumentation.d.ts +0 -8
  142. package/dest/proving_broker/proving_agent_instrumentation.d.ts.map +0 -1
  143. package/dest/proving_broker/proving_agent_instrumentation.js +0 -16
  144. package/src/bin/get-proof-inputs.ts +0 -59
  145. package/src/block-factory/index.ts +0 -1
  146. package/src/block-factory/light.ts +0 -114
  147. package/src/proving_broker/proof_store/gcs_proof_store.ts +0 -76
  148. package/src/proving_broker/proving_agent_instrumentation.ts +0 -21
@@ -1,45 +1,51 @@
1
1
  import {
2
2
  AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
3
- AVM_V2_VERIFICATION_KEY_LENGTH_IN_FIELDS_PADDED,
4
3
  NESTED_RECURSIVE_PROOF_LENGTH,
5
4
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
6
5
  RECURSIVE_PROOF_LENGTH,
7
- TUBE_PROOF_LENGTH,
8
6
  } from '@aztec/constants';
9
7
  import { times } from '@aztec/foundation/collection';
10
8
  import type { AvmCircuitInputs } from '@aztec/stdlib/avm';
11
9
  import {
12
- type ProofAndVerificationKey,
13
10
  type ProvingJob,
14
11
  type ProvingJobId,
15
12
  type ProvingJobProducer,
16
13
  type ProvingJobStatus,
17
14
  type PublicInputsAndRecursiveProof,
18
15
  type ServerCircuitProver,
19
- makeProofAndVerificationKey,
20
16
  makePublicInputsAndRecursiveProof,
21
17
  } from '@aztec/stdlib/interfaces/server';
22
- import type { BaseParityInputs, RootParityInputs } from '@aztec/stdlib/parity';
18
+ import type { ParityBasePrivateInputs, ParityRootPrivateInputs } from '@aztec/stdlib/parity';
23
19
  import { makeEmptyRecursiveProof, makeRecursiveProof } from '@aztec/stdlib/proofs';
24
20
  import type {
25
- BaseOrMergeRollupPublicInputs,
26
- BlockMergeRollupInputs,
27
- BlockRootOrBlockMergePublicInputs,
28
- BlockRootRollupInputs,
29
- EmptyBlockRootRollupInputs,
30
- MergeRollupInputs,
31
- PaddingBlockRootRollupInputs,
32
- PrivateBaseRollupInputs,
33
- PublicBaseRollupInputs,
34
- RootRollupInputs,
21
+ BlockMergeRollupPrivateInputs,
22
+ BlockRollupPublicInputs,
23
+ BlockRootEmptyTxFirstRollupPrivateInputs,
24
+ BlockRootFirstRollupPrivateInputs,
25
+ BlockRootRollupPrivateInputs,
26
+ BlockRootSingleTxFirstRollupPrivateInputs,
27
+ BlockRootSingleTxRollupPrivateInputs,
28
+ CheckpointMergeRollupPrivateInputs,
29
+ CheckpointPaddingRollupPrivateInputs,
30
+ CheckpointRollupPublicInputs,
31
+ CheckpointRootRollupPrivateInputs,
32
+ CheckpointRootSingleBlockRollupPrivateInputs,
33
+ PrivateTxBaseRollupPrivateInputs,
34
+ PublicChonkVerifierPrivateInputs,
35
+ PublicChonkVerifierPublicInputs,
36
+ PublicTxBaseRollupPrivateInputs,
37
+ RootRollupPrivateInputs,
35
38
  RootRollupPublicInputs,
36
- SingleTxBlockRootRollupInputs,
39
+ TxMergeRollupPrivateInputs,
40
+ TxRollupPublicInputs,
37
41
  } from '@aztec/stdlib/rollup';
38
42
  import {
39
- makeBaseOrMergeRollupPublicInputs,
40
- makeBlockRootOrBlockMergeRollupPublicInputs,
43
+ makeBlockRollupPublicInputs,
44
+ makeCheckpointRollupPublicInputs,
41
45
  makeParityPublicInputs,
46
+ makePublicChonkVerifierPublicInputs,
42
47
  makeRootRollupPublicInputs,
48
+ makeTxRollupPublicInputs,
43
49
  } from '@aztec/stdlib/testing';
44
50
  import { VerificationKeyData } from '@aztec/stdlib/vks';
45
51
 
@@ -97,21 +103,11 @@ export class TestBroker implements ProvingJobProducer {
97
103
  export class MockProver implements ServerCircuitProver {
98
104
  constructor() {}
99
105
 
100
- getAvmProof(
101
- _inputs: AvmCircuitInputs,
102
- _skipPublicInputsValidation?: boolean, // TODO(#14234)[Unconditional PIs validation]: Remove.
103
- _signal?: AbortSignal,
104
- _epochNumber?: number,
105
- ) {
106
- return Promise.resolve(
107
- makeProofAndVerificationKey(
108
- makeEmptyRecursiveProof(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED),
109
- VerificationKeyData.makeFake(AVM_V2_VERIFICATION_KEY_LENGTH_IN_FIELDS_PADDED),
110
- ),
111
- );
106
+ getAvmProof(_inputs: AvmCircuitInputs, _signal?: AbortSignal, _epochNumber?: number) {
107
+ return Promise.resolve(makeEmptyRecursiveProof(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED));
112
108
  }
113
109
 
114
- getBaseParityProof(_inputs: BaseParityInputs, _signal?: AbortSignal, _epochNumber?: number) {
110
+ getBaseParityProof(_inputs: ParityBasePrivateInputs, _signal?: AbortSignal, _epochNumber?: number) {
115
111
  return Promise.resolve(
116
112
  makePublicInputsAndRecursiveProof(
117
113
  makeParityPublicInputs(),
@@ -121,7 +117,7 @@ export class MockProver implements ServerCircuitProver {
121
117
  );
122
118
  }
123
119
 
124
- getRootParityProof(_inputs: RootParityInputs, _signal?: AbortSignal, _epochNumber?: number) {
120
+ getRootParityProof(_inputs: ParityRootPrivateInputs, _signal?: AbortSignal, _epochNumber?: number) {
125
121
  return Promise.resolve(
126
122
  makePublicInputsAndRecursiveProof(
127
123
  makeParityPublicInputs(),
@@ -131,130 +127,210 @@ export class MockProver implements ServerCircuitProver {
131
127
  );
132
128
  }
133
129
 
134
- getPrivateBaseRollupProof(
135
- _baseRollupInput: PrivateBaseRollupInputs,
130
+ getPublicChonkVerifierProof(
131
+ _inputs: PublicChonkVerifierPrivateInputs,
136
132
  _signal?: AbortSignal,
137
133
  _epochNumber?: number,
138
134
  ): Promise<
139
- PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
135
+ PublicInputsAndRecursiveProof<PublicChonkVerifierPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
140
136
  > {
141
137
  return Promise.resolve(
142
138
  makePublicInputsAndRecursiveProof(
143
- makeBaseOrMergeRollupPublicInputs(),
139
+ makePublicChonkVerifierPublicInputs(),
144
140
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
145
141
  VerificationKeyData.makeFakeRollupHonk(),
146
142
  ),
147
143
  );
148
144
  }
149
145
 
150
- getPublicBaseRollupProof(
151
- _inputs: PublicBaseRollupInputs,
146
+ getPrivateTxBaseRollupProof(
147
+ _baseRollupInput: PrivateTxBaseRollupPrivateInputs,
152
148
  _signal?: AbortSignal,
153
149
  _epochNumber?: number,
154
- ): Promise<
155
- PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
156
- > {
150
+ ): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
157
151
  return Promise.resolve(
158
152
  makePublicInputsAndRecursiveProof(
159
- makeBaseOrMergeRollupPublicInputs(),
153
+ makeTxRollupPublicInputs(),
160
154
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
161
155
  VerificationKeyData.makeFakeRollupHonk(),
162
156
  ),
163
157
  );
164
158
  }
165
159
 
166
- getMergeRollupProof(
167
- _input: MergeRollupInputs,
160
+ getPublicTxBaseRollupProof(
161
+ _inputs: PublicTxBaseRollupPrivateInputs,
168
162
  _signal?: AbortSignal,
169
163
  _epochNumber?: number,
170
- ): Promise<
171
- PublicInputsAndRecursiveProof<BaseOrMergeRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
172
- > {
164
+ ): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
165
+ return Promise.resolve(
166
+ makePublicInputsAndRecursiveProof(
167
+ makeTxRollupPublicInputs(),
168
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
169
+ VerificationKeyData.makeFakeRollupHonk(),
170
+ ),
171
+ );
172
+ }
173
+
174
+ getTxMergeRollupProof(
175
+ _input: TxMergeRollupPrivateInputs,
176
+ _signal?: AbortSignal,
177
+ _epochNumber?: number,
178
+ ): Promise<PublicInputsAndRecursiveProof<TxRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
179
+ return Promise.resolve(
180
+ makePublicInputsAndRecursiveProof(
181
+ makeTxRollupPublicInputs(),
182
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
183
+ VerificationKeyData.makeFakeRollupHonk(),
184
+ ),
185
+ );
186
+ }
187
+
188
+ getBlockRootFirstRollupProof(
189
+ _input: BlockRootFirstRollupPrivateInputs,
190
+ _signal?: AbortSignal,
191
+ _epochNumber?: number,
192
+ ): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
193
+ return Promise.resolve(
194
+ makePublicInputsAndRecursiveProof(
195
+ makeBlockRollupPublicInputs(),
196
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
197
+ VerificationKeyData.makeFakeRollupHonk(),
198
+ ),
199
+ );
200
+ }
201
+
202
+ getBlockRootSingleTxFirstRollupProof(
203
+ _input: BlockRootSingleTxFirstRollupPrivateInputs,
204
+ _signal?: AbortSignal,
205
+ _epochNumber?: number,
206
+ ): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
207
+ return Promise.resolve(
208
+ makePublicInputsAndRecursiveProof(
209
+ makeBlockRollupPublicInputs(),
210
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
211
+ VerificationKeyData.makeFakeHonk(),
212
+ ),
213
+ );
214
+ }
215
+
216
+ getBlockRootEmptyTxFirstRollupProof(
217
+ _input: BlockRootEmptyTxFirstRollupPrivateInputs,
218
+ _signal?: AbortSignal,
219
+ _epochNumber?: number,
220
+ ): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
173
221
  return Promise.resolve(
174
222
  makePublicInputsAndRecursiveProof(
175
- makeBaseOrMergeRollupPublicInputs(),
223
+ makeBlockRollupPublicInputs(),
176
224
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
177
225
  VerificationKeyData.makeFakeRollupHonk(),
178
226
  ),
179
227
  );
180
228
  }
181
229
 
182
- getBlockMergeRollupProof(_input: BlockMergeRollupInputs, _signal?: AbortSignal, _epochNumber?: number) {
230
+ getBlockRootRollupProof(
231
+ _input: BlockRootRollupPrivateInputs,
232
+ _signal?: AbortSignal,
233
+ _epochNumber?: number,
234
+ ): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
183
235
  return Promise.resolve(
184
236
  makePublicInputsAndRecursiveProof(
185
- makeBlockRootOrBlockMergeRollupPublicInputs(),
237
+ makeBlockRollupPublicInputs(),
186
238
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
187
239
  VerificationKeyData.makeFakeRollupHonk(),
188
240
  ),
189
241
  );
190
242
  }
191
243
 
192
- getEmptyBlockRootRollupProof(
193
- _input: EmptyBlockRootRollupInputs,
244
+ getBlockRootSingleTxRollupProof(
245
+ _input: BlockRootSingleTxRollupPrivateInputs,
246
+ _signal?: AbortSignal,
247
+ _epochNumber?: number,
248
+ ): Promise<PublicInputsAndRecursiveProof<BlockRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>> {
249
+ return Promise.resolve(
250
+ makePublicInputsAndRecursiveProof(
251
+ makeBlockRollupPublicInputs(),
252
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
253
+ VerificationKeyData.makeFakeHonk(),
254
+ ),
255
+ );
256
+ }
257
+
258
+ getBlockMergeRollupProof(_input: BlockMergeRollupPrivateInputs, _signal?: AbortSignal, _epochNumber?: number) {
259
+ return Promise.resolve(
260
+ makePublicInputsAndRecursiveProof(
261
+ makeBlockRollupPublicInputs(),
262
+ makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
263
+ VerificationKeyData.makeFakeRollupHonk(),
264
+ ),
265
+ );
266
+ }
267
+
268
+ getCheckpointRootRollupProof(
269
+ _input: CheckpointRootRollupPrivateInputs,
194
270
  _signal?: AbortSignal,
195
271
  _epochNumber?: number,
196
272
  ): Promise<
197
- PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
273
+ PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
198
274
  > {
199
275
  return Promise.resolve(
200
276
  makePublicInputsAndRecursiveProof(
201
- makeBlockRootOrBlockMergeRollupPublicInputs(),
277
+ makeCheckpointRollupPublicInputs(),
202
278
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
203
279
  VerificationKeyData.makeFakeRollupHonk(),
204
280
  ),
205
281
  );
206
282
  }
207
283
 
208
- getPaddingBlockRootRollupProof(
209
- _input: PaddingBlockRootRollupInputs,
284
+ getCheckpointRootSingleBlockRollupProof(
285
+ _input: CheckpointRootSingleBlockRollupPrivateInputs,
210
286
  _signal?: AbortSignal,
211
287
  _epochNumber?: number,
212
288
  ): Promise<
213
- PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
289
+ PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
214
290
  > {
215
291
  return Promise.resolve(
216
292
  makePublicInputsAndRecursiveProof(
217
- makeBlockRootOrBlockMergeRollupPublicInputs(),
293
+ makeCheckpointRollupPublicInputs(),
218
294
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
219
295
  VerificationKeyData.makeFakeRollupHonk(),
220
296
  ),
221
297
  );
222
298
  }
223
299
 
224
- getBlockRootRollupProof(
225
- _input: BlockRootRollupInputs,
300
+ getCheckpointMergeRollupProof(
301
+ _input: CheckpointMergeRollupPrivateInputs,
226
302
  _signal?: AbortSignal,
227
303
  _epochNumber?: number,
228
304
  ): Promise<
229
- PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
305
+ PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
230
306
  > {
231
307
  return Promise.resolve(
232
308
  makePublicInputsAndRecursiveProof(
233
- makeBlockRootOrBlockMergeRollupPublicInputs(),
309
+ makeCheckpointRollupPublicInputs(),
234
310
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
235
311
  VerificationKeyData.makeFakeRollupHonk(),
236
312
  ),
237
313
  );
238
314
  }
239
315
 
240
- getSingleTxBlockRootRollupProof(
241
- _input: SingleTxBlockRootRollupInputs,
316
+ getCheckpointPaddingRollupProof(
317
+ _input: CheckpointPaddingRollupPrivateInputs,
242
318
  _signal?: AbortSignal,
243
319
  _epochNumber?: number,
244
320
  ): Promise<
245
- PublicInputsAndRecursiveProof<BlockRootOrBlockMergePublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
321
+ PublicInputsAndRecursiveProof<CheckpointRollupPublicInputs, typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>
246
322
  > {
247
323
  return Promise.resolve(
248
324
  makePublicInputsAndRecursiveProof(
249
- makeBlockRootOrBlockMergeRollupPublicInputs(),
325
+ makeCheckpointRollupPublicInputs(),
250
326
  makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH),
251
- VerificationKeyData.makeFakeHonk(),
327
+ VerificationKeyData.makeFakeRollupHonk(),
252
328
  ),
253
329
  );
254
330
  }
255
331
 
256
332
  getRootRollupProof(
257
- _input: RootRollupInputs,
333
+ _input: RootRollupPrivateInputs,
258
334
  _signal?: AbortSignal,
259
335
  _epochNumber?: number,
260
336
  ): Promise<PublicInputsAndRecursiveProof<RootRollupPublicInputs>> {
@@ -266,10 +342,4 @@ export class MockProver implements ServerCircuitProver {
266
342
  ),
267
343
  );
268
344
  }
269
-
270
- getTubeProof(): Promise<ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>> {
271
- return Promise.resolve(
272
- makeProofAndVerificationKey(makeRecursiveProof(TUBE_PROOF_LENGTH), VerificationKeyData.makeFakeRollupHonk()),
273
- );
274
- }
275
345
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=get-proof-inputs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-proof-inputs.d.ts","sourceRoot":"","sources":["../../src/bin/get-proof-inputs.ts"],"names":[],"mappings":""}
@@ -1,51 +0,0 @@
1
- /* eslint-disable no-console */ import { AVM_INPUTS_FILENAME } from '@aztec/bb-prover';
2
- import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
3
- import { createLogger } from '@aztec/foundation/log';
4
- import { ProvingJobInputs } from '@aztec/stdlib/interfaces/server';
5
- import { ProvingRequestType } from '@aztec/stdlib/proofs';
6
- import { mkdirSync, writeFileSync } from 'fs';
7
- import { createProofStoreForUri } from '../proving_broker/index.js';
8
- const logger = createLogger('prover-client:get-proof-inputs');
9
- function printUsage() {
10
- console.error('Usage: get-proof-inputs <proof-uri> [out-dir=.]');
11
- }
12
- async function main() {
13
- if (process.argv[2] === '--help') {
14
- printUsage();
15
- return;
16
- }
17
- const uri = process.argv[2];
18
- const outDir = process.argv[3] || '.';
19
- if (!uri) {
20
- printUsage();
21
- throw new Error('Missing proof URI');
22
- }
23
- mkdirSync(outDir, {
24
- recursive: true
25
- });
26
- const proofStore = createProofStoreForUri(uri);
27
- logger.info(`Processing uri ${uri}`);
28
- const input = await proofStore.getProofInput(uri);
29
- logger.info(`Found inputs for ${ProvingRequestType[input.type]}`);
30
- writeProofInputs(input, outDir);
31
- console.log(jsonParseWithSchema(jsonStringify(input), ProvingJobInputs).inputs);
32
- }
33
- // This mimics the behavior of bb-prover/src/bb/execute.ts
34
- function writeProofInputs(input, outDir) {
35
- switch(input.type){
36
- case ProvingRequestType.PUBLIC_VM:
37
- {
38
- writeFileSync(`${outDir}/${AVM_INPUTS_FILENAME}`, input.inputs.serializeWithMessagePack());
39
- logger.info(`Wrote AVM inputs to ${AVM_INPUTS_FILENAME}`);
40
- break;
41
- }
42
- default:
43
- {
44
- throw new Error(`Unimplemented proving request type: ${ProvingRequestType[input.type]}`);
45
- }
46
- }
47
- }
48
- main().catch((err)=>{
49
- console.error(err);
50
- process.exit(1);
51
- });
@@ -1,2 +0,0 @@
1
- export * from './light.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/block-factory/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- export * from './light.js';
@@ -1,36 +0,0 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
- import { L2Block } from '@aztec/stdlib/block';
3
- import type { IBlockFactory, MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
4
- import { type GlobalVariables, type ProcessedTx } from '@aztec/stdlib/tx';
5
- import { type TelemetryClient } from '@aztec/telemetry-client';
6
- /**
7
- * Builds a block and its header from a set of processed tx without running any circuits.
8
- *
9
- * NOTE: the onus is ON THE CALLER to update the db that is passed in with the notes hashes, nullifiers, etc
10
- * PRIOR to calling `buildBlock`.
11
- *
12
- * Why? Because if you are, e.g. building a block in practice from TxObjects, you are using the
13
- * PublicProcessor which will do this for you as it processes transactions.
14
- *
15
- * If you haven't already inserted the side effects, e.g. because you are in a testing context, you can use the helper
16
- * function `buildBlockWithCleanDB`, which calls `insertSideEffectsAndBuildBaseRollupHints` for you.
17
- */
18
- export declare class LightweightBlockFactory implements IBlockFactory {
19
- private db;
20
- private telemetry;
21
- private globalVariables?;
22
- private l1ToL2Messages?;
23
- private txs;
24
- private readonly logger;
25
- constructor(db: MerkleTreeWriteOperations, telemetry?: TelemetryClient);
26
- startNewBlock(globalVariables: GlobalVariables, l1ToL2Messages: Fr[]): Promise<void>;
27
- addTxs(txs: ProcessedTx[]): Promise<void>;
28
- setBlockCompleted(): Promise<L2Block>;
29
- private buildBlock;
30
- }
31
- /**
32
- * Inserts the processed transactions into the DB, then creates a block.
33
- * @param db - A db fork to use for block building which WILL BE MODIFIED.
34
- */
35
- export declare function buildBlockWithCleanDB(txs: ProcessedTx[], globalVariables: GlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeWriteOperations, telemetry?: TelemetryClient): Promise<L2Block>;
36
- //# sourceMappingURL=light.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"light.d.ts","sourceRoot":"","sources":["../../src/block-factory/light.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEhG,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAmB,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAQnF;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAwB,YAAW,aAAa;IASzD,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,SAAS;IATnB,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAO;IAE9B,OAAO,CAAC,GAAG,CAA4B;IAEvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6C;gBAG1D,EAAE,EAAE,yBAAyB,EAC7B,SAAS,GAAE,eAAsC;IAGrD,aAAa,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU1F,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;YAIvB,UAAU;CAwBzB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAAE,EAClB,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,EAAE,EAAE,EACpB,EAAE,EAAE,yBAAyB,EAC7B,SAAS,GAAE,eAAsC,oBAWlD"}
@@ -1,87 +0,0 @@
1
- import { SpongeBlob } from '@aztec/blob-lib';
2
- import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
3
- import { padArrayEnd } from '@aztec/foundation/collection';
4
- import { Fr } from '@aztec/foundation/fields';
5
- import { createLogger } from '@aztec/foundation/log';
6
- import { L2Block } from '@aztec/stdlib/block';
7
- import { MerkleTreeId } from '@aztec/stdlib/trees';
8
- import { toNumBlobFields } from '@aztec/stdlib/tx';
9
- import { getTelemetryClient } from '@aztec/telemetry-client';
10
- import { buildHeaderAndBodyFromTxs, getTreeSnapshot, insertSideEffectsAndBuildBaseRollupHints } from '../orchestrator/block-building-helpers.js';
11
- /**
12
- * Builds a block and its header from a set of processed tx without running any circuits.
13
- *
14
- * NOTE: the onus is ON THE CALLER to update the db that is passed in with the notes hashes, nullifiers, etc
15
- * PRIOR to calling `buildBlock`.
16
- *
17
- * Why? Because if you are, e.g. building a block in practice from TxObjects, you are using the
18
- * PublicProcessor which will do this for you as it processes transactions.
19
- *
20
- * If you haven't already inserted the side effects, e.g. because you are in a testing context, you can use the helper
21
- * function `buildBlockWithCleanDB`, which calls `insertSideEffectsAndBuildBaseRollupHints` for you.
22
- */ export class LightweightBlockFactory {
23
- db;
24
- telemetry;
25
- globalVariables;
26
- l1ToL2Messages;
27
- txs;
28
- logger;
29
- constructor(db, telemetry = getTelemetryClient()){
30
- this.db = db;
31
- this.telemetry = telemetry;
32
- this.logger = createLogger('lightweight-block-factory');
33
- }
34
- async startNewBlock(globalVariables, l1ToL2Messages) {
35
- this.logger.debug('Starting new block', {
36
- globalVariables: globalVariables.toInspect(),
37
- l1ToL2Messages
38
- });
39
- this.globalVariables = globalVariables;
40
- this.l1ToL2Messages = padArrayEnd(l1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
41
- this.txs = undefined;
42
- // Update L1 to L2 tree
43
- await this.db.appendLeaves(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, this.l1ToL2Messages);
44
- }
45
- addTxs(txs) {
46
- // Most times, `addTxs` is only called once per block.
47
- // So avoid copies.
48
- if (this.txs === undefined) {
49
- this.txs = txs;
50
- } else {
51
- this.txs.push(...txs);
52
- }
53
- return Promise.resolve();
54
- }
55
- setBlockCompleted() {
56
- return this.buildBlock();
57
- }
58
- async buildBlock() {
59
- const { header, body } = await buildHeaderAndBodyFromTxs(this.txs ?? [], this.globalVariables, this.l1ToL2Messages, this.db);
60
- header.state.validate();
61
- await this.db.updateArchive(header);
62
- const newArchive = await getTreeSnapshot(MerkleTreeId.ARCHIVE, this.db);
63
- const block = new L2Block(newArchive, header, body);
64
- this.logger.debug(`Built block ${block.number}`, {
65
- globalVariables: this.globalVariables?.toInspect(),
66
- archiveRoot: newArchive.root.toString(),
67
- stateReference: header.state.toInspect(),
68
- blockHash: (await block.hash()).toString(),
69
- txs: block.body.txEffects.map((tx)=>tx.txHash.toString())
70
- });
71
- return block;
72
- }
73
- }
74
- /**
75
- * Inserts the processed transactions into the DB, then creates a block.
76
- * @param db - A db fork to use for block building which WILL BE MODIFIED.
77
- */ export async function buildBlockWithCleanDB(txs, globalVariables, l1ToL2Messages, db, telemetry = getTelemetryClient()) {
78
- const spongeBlobState = SpongeBlob.init(toNumBlobFields(txs));
79
- const builder = new LightweightBlockFactory(db, telemetry);
80
- await builder.startNewBlock(globalVariables, l1ToL2Messages);
81
- const l1ToL2MessageTree = await getTreeSnapshot(MerkleTreeId.L1_TO_L2_MESSAGE_TREE, db);
82
- for (const tx of txs){
83
- await insertSideEffectsAndBuildBaseRollupHints(tx, globalVariables, l1ToL2MessageTree, db, spongeBlobState);
84
- }
85
- await builder.addTxs(txs);
86
- return await builder.setBlockCompleted();
87
- }
@@ -1,14 +0,0 @@
1
- import { type ProofUri, type ProvingJobId, type ProvingJobInputs, type ProvingJobInputsMap, type ProvingJobResult, type ProvingJobResultsMap } from '@aztec/stdlib/interfaces/server';
2
- import { ProvingRequestType } from '@aztec/stdlib/proofs';
3
- import type { ProofStore } from './proof_store.js';
4
- export declare class GoogleCloudStorageProofStore implements ProofStore {
5
- private readonly bucketName;
6
- private readonly path;
7
- private readonly storage;
8
- constructor(bucketName: string, path: string);
9
- saveProofInput<T extends ProvingRequestType>(id: ProvingJobId, type: T, inputs: ProvingJobInputsMap[T]): Promise<ProofUri>;
10
- saveProofOutput<T extends ProvingRequestType>(_id: ProvingJobId, _type: T, _result: ProvingJobResultsMap[T]): Promise<ProofUri>;
11
- getProofInput(uri: ProofUri): Promise<ProvingJobInputs>;
12
- getProofOutput(_uri: ProofUri): Promise<ProvingJobResult>;
13
- }
14
- //# sourceMappingURL=gcs_proof_store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gcs_proof_store.d.ts","sourceRoot":"","sources":["../../../src/proving_broker/proof_store/gcs_proof_store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAE1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,qBAAa,4BAA6B,YAAW,UAAU;IAI3D,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAGf,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM;IAKlB,cAAc,CAAC,CAAC,SAAS,kBAAkB,EACtD,EAAE,EAAE,YAAY,EAChB,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC7B,OAAO,CAAC,QAAQ,CAAC;IAOpB,eAAe,CAAC,CAAC,SAAS,kBAAkB,EAC1C,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,QAAQ,CAAC;IAIP,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwBpE,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAG1D"}
@@ -1,52 +0,0 @@
1
- import { getProvingJobInputClassFor } from '@aztec/stdlib/interfaces/server';
2
- import { ProvingRequestType } from '@aztec/stdlib/proofs';
3
- import { Storage } from '@google-cloud/storage';
4
- import { join } from 'path';
5
- const INPUTS_PATH = 'inputs';
6
- // REFACTOR(#13067): Use the stdlib/file-store instead of referencing google-cloud-storage directly.
7
- export class GoogleCloudStorageProofStore {
8
- bucketName;
9
- path;
10
- storage;
11
- constructor(bucketName, path){
12
- this.bucketName = bucketName;
13
- this.path = path;
14
- this.storage = new Storage();
15
- }
16
- async saveProofInput(id, type, inputs) {
17
- const path = join(this.path, INPUTS_PATH, ProvingRequestType[type], id);
18
- const file = this.storage.bucket(this.bucketName).file(path);
19
- await file.save(inputs.toBuffer());
20
- return file.cloudStorageURI.toString();
21
- }
22
- saveProofOutput(_id, _type, _result) {
23
- throw new Error('Not implemented');
24
- }
25
- async getProofInput(uri) {
26
- try {
27
- const url = new URL(uri);
28
- const bucket = this.storage.bucket(url.host);
29
- const path = url.pathname.replace(/^\/+/, '');
30
- const file = bucket.file(path);
31
- if (!await file.exists()) {
32
- throw new Error(`File at ${uri} does not exist`);
33
- }
34
- const typeString = path.split('/').at(-2);
35
- const type = typeString ? ProvingRequestType[typeString] : undefined;
36
- if (type === undefined) {
37
- throw new Error(`Unrecognized proof type ${type} in path ${path}`);
38
- }
39
- const contents = await file.download();
40
- const inputs = getProvingJobInputClassFor(type).fromBuffer(contents[0]);
41
- return {
42
- inputs,
43
- type
44
- };
45
- } catch (err) {
46
- throw new Error(`Error getting proof input at ${uri}: ${err}`);
47
- }
48
- }
49
- getProofOutput(_uri) {
50
- throw new Error('Not implemented');
51
- }
52
- }
@@ -1,8 +0,0 @@
1
- import type { Timer } from '@aztec/foundation/timer';
2
- import { type TelemetryClient } from '@aztec/telemetry-client';
3
- export declare class ProvingAgentInstrumentation {
4
- private idleTime;
5
- constructor(client: TelemetryClient, name?: string);
6
- recordIdleTime(msOrTimer: Timer | number): void;
7
- }
8
- //# sourceMappingURL=proving_agent_instrumentation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"proving_agent_instrumentation.d.ts","sourceRoot":"","sources":["../../src/proving_broker/proving_agent_instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAA2B,KAAK,eAAe,EAAa,MAAM,yBAAyB,CAAC;AAEnG,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAY;gBAEhB,MAAM,EAAE,eAAe,EAAE,IAAI,SAAiB;IAU1D,cAAc,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM;CAIzC"}
@@ -1,16 +0,0 @@
1
- import { Metrics, ValueType } from '@aztec/telemetry-client';
2
- export class ProvingAgentInstrumentation {
3
- idleTime;
4
- constructor(client, name = 'ProvingAgent'){
5
- const meter = client.getMeter(name);
6
- this.idleTime = meter.createHistogram(Metrics.PROVING_AGENT_IDLE, {
7
- description: 'Records how long an agent was idle',
8
- unit: 's',
9
- valueType: ValueType.DOUBLE
10
- });
11
- }
12
- recordIdleTime(msOrTimer) {
13
- const duration = typeof msOrTimer === 'number' ? msOrTimer : msOrTimer.ms();
14
- this.idleTime.record(duration / 1000);
15
- }
16
- }