@aztec/ivc-integration 2.1.0-rc.9 → 3.0.0-devnet.2

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 (62) hide show
  1. package/artifacts/app_creator.json +190 -1
  2. package/artifacts/app_reader.json +190 -1
  3. package/artifacts/keys/mock_hiding.ivc.vk +0 -0
  4. package/artifacts/keys/mock_rollup_root_verifier.sol +51 -54
  5. package/artifacts/mock_hiding.json +224 -1
  6. package/artifacts/mock_private_kernel_init.json +287 -1
  7. package/artifacts/mock_private_kernel_inner.json +337 -1
  8. package/artifacts/mock_private_kernel_reset.json +273 -1
  9. package/artifacts/mock_private_kernel_tail.json +242 -1
  10. package/artifacts/mock_rollup_root.json +241 -1
  11. package/artifacts/mock_rollup_tx_base_private.json +232 -0
  12. package/artifacts/mock_rollup_tx_base_public.json +1420 -0
  13. package/artifacts/mock_rollup_tx_merge.json +297 -0
  14. package/dest/prove_native.d.ts +5 -5
  15. package/dest/prove_native.d.ts.map +1 -1
  16. package/dest/prove_native.js +23 -19
  17. package/dest/prove_wasm.d.ts +2 -2
  18. package/dest/prove_wasm.d.ts.map +1 -1
  19. package/dest/prove_wasm.js +8 -6
  20. package/dest/scripts/generate_declaration_files.js +0 -6
  21. package/dest/scripts/generate_ts_from_abi.js +3 -3
  22. package/dest/types/index.d.ts +24 -24
  23. package/dest/types/index.d.ts.map +1 -1
  24. package/dest/types/index.js +8 -8
  25. package/dest/witgen.d.ts +48 -18
  26. package/dest/witgen.d.ts.map +1 -1
  27. package/dest/witgen.js +29 -43
  28. package/package.json +16 -16
  29. package/src/prove_native.ts +30 -28
  30. package/src/prove_wasm.ts +7 -7
  31. package/src/scripts/generate_declaration_files.ts +0 -8
  32. package/src/scripts/generate_ts_from_abi.ts +3 -3
  33. package/src/types/index.ts +30 -30
  34. package/src/witgen.ts +41 -31
  35. package/artifacts/keys/app_creator.vk.data.d.json.ts +0 -2
  36. package/artifacts/keys/app_creator.vk.data.json +0 -132
  37. package/artifacts/keys/app_reader.vk.data.d.json.ts +0 -2
  38. package/artifacts/keys/app_reader.vk.data.json +0 -132
  39. package/artifacts/keys/mock_hiding.vk.data.d.json.ts +0 -2
  40. package/artifacts/keys/mock_hiding.vk.data.json +0 -132
  41. package/artifacts/keys/mock_private_kernel_init.vk.data.d.json.ts +0 -2
  42. package/artifacts/keys/mock_private_kernel_init.vk.data.json +0 -132
  43. package/artifacts/keys/mock_private_kernel_inner.vk.data.d.json.ts +0 -2
  44. package/artifacts/keys/mock_private_kernel_inner.vk.data.json +0 -132
  45. package/artifacts/keys/mock_private_kernel_reset.vk.data.d.json.ts +0 -2
  46. package/artifacts/keys/mock_private_kernel_reset.vk.data.json +0 -132
  47. package/artifacts/keys/mock_private_kernel_tail.vk.data.d.json.ts +0 -2
  48. package/artifacts/keys/mock_private_kernel_tail.vk.data.json +0 -132
  49. package/artifacts/keys/mock_rollup_base_private.vk.data.d.json.ts +0 -2
  50. package/artifacts/keys/mock_rollup_base_private.vk.data.json +0 -120
  51. package/artifacts/keys/mock_rollup_base_public.vk.data.d.json.ts +0 -2
  52. package/artifacts/keys/mock_rollup_base_public.vk.data.json +0 -120
  53. package/artifacts/keys/mock_rollup_merge.vk.data.d.json.ts +0 -2
  54. package/artifacts/keys/mock_rollup_merge.vk.data.json +0 -120
  55. package/artifacts/keys/mock_rollup_root.vk.data.d.json.ts +0 -2
  56. package/artifacts/keys/mock_rollup_root.vk.data.json +0 -64
  57. package/artifacts/mock_rollup_base_private.json +0 -1
  58. package/artifacts/mock_rollup_base_public.json +0 -1
  59. package/artifacts/mock_rollup_merge.json +0 -1
  60. /package/artifacts/{mock_rollup_base_private.d.json.ts → mock_rollup_tx_base_private.d.json.ts} +0 -0
  61. /package/artifacts/{mock_rollup_base_public.d.json.ts → mock_rollup_tx_base_public.d.json.ts} +0 -0
  62. /package/artifacts/{mock_rollup_merge.d.json.ts → mock_rollup_tx_merge.d.json.ts} +0 -0
package/src/prove_wasm.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createLogger } from '@aztec/foundation/log';
2
- import { ClientIvcProof } from '@aztec/stdlib/proofs';
2
+ import { ClientIvcProofWithPublicInputs } from '@aztec/stdlib/proofs';
3
3
 
4
4
  import os from 'os';
5
5
  import { ungzip } from 'pako';
@@ -15,18 +15,18 @@ export async function proveClientIVC(
15
15
  witnessStack: Uint8Array[],
16
16
  vks: string[],
17
17
  threads?: number,
18
- ): Promise<ClientIvcProof> {
18
+ ): Promise<ClientIvcProofWithPublicInputs> {
19
19
  const { AztecClientBackend } = await import('@aztec/bb.js');
20
20
  const backend = new AztecClientBackend(
21
21
  bytecodes.map(base64ToUint8Array).map((arr: Uint8Array) => ungzip(arr)),
22
- { threads: threads || Math.min(os.cpus().length, 16), logger: logger.info },
22
+ { threads: threads || Math.min(os.cpus().length, 16), logger: logger.info, wasmPath: process.env.BB_WASM_PATH },
23
23
  );
24
24
  try {
25
25
  const [proof] = await backend.prove(
26
26
  witnessStack.map((arr: Uint8Array) => ungzip(arr)),
27
27
  vks.map(hex => new Uint8Array(Buffer.from(hex, 'hex'))),
28
28
  );
29
- return new ClientIvcProof(Buffer.from(proof));
29
+ return ClientIvcProofWithPublicInputs.fromBufferArray(proof);
30
30
  } finally {
31
31
  await backend.destroy();
32
32
  }
@@ -41,15 +41,15 @@ export async function proveThenVerifyAztecClient(
41
41
  const { AztecClientBackend } = await import('@aztec/bb.js');
42
42
  const backend = new AztecClientBackend(
43
43
  bytecodes.map(base64ToUint8Array).map((arr: Uint8Array) => ungzip(arr)),
44
- { threads: threads || Math.min(os.cpus().length, 16), logger: logger.info },
44
+ { threads: threads || Math.min(os.cpus().length, 16), logger: logger.info, wasmPath: process.env.BB_WASM_PATH },
45
45
  );
46
46
  try {
47
47
  // These are optional - easier not to pass them.
48
- const [proof, vk] = await backend.prove(
48
+ const [_, msgpackProof, vk] = await backend.prove(
49
49
  witnessStack.map((arr: Uint8Array) => ungzip(arr)),
50
50
  vks.map(hex => new Uint8Array(Buffer.from(hex, 'hex'))),
51
51
  );
52
- const verified = await backend.verify(proof, vk);
52
+ const verified = await backend.verify(msgpackProof, vk);
53
53
  return verified;
54
54
  } finally {
55
55
  await backend.destroy();
@@ -9,11 +9,6 @@ const circuit: NoirCompiledCircuit;
9
9
  export = circuit;
10
10
  `;
11
11
 
12
- const vk = `\
13
- const vk: { keyAsBytes: string; keyAsFields: string[] };
14
- export = vk;
15
- `;
16
-
17
12
  async function generateDeclarationFor(target: string, content: string) {
18
13
  const files = await readdir(target);
19
14
  for (const file of files) {
@@ -28,6 +23,3 @@ async function generateDeclarationFor(target: string, content: string) {
28
23
 
29
24
  // Generate declaration files for contracts
30
25
  await generateDeclarationFor(fileURLToPath(new URL('../../artifacts', import.meta.url).href), contract);
31
-
32
- // Generate declaration files for vks
33
- await generateDeclarationFor(fileURLToPath(new URL('../../artifacts/keys', import.meta.url).href), vk);
@@ -15,9 +15,9 @@ const circuits = [
15
15
  'mock_private_kernel_inner',
16
16
  'mock_private_kernel_reset',
17
17
  'mock_private_kernel_tail',
18
- 'mock_rollup_base_public',
19
- 'mock_rollup_base_private',
20
- 'mock_rollup_merge',
18
+ 'mock_rollup_tx_base_public',
19
+ 'mock_rollup_tx_base_private',
20
+ 'mock_rollup_tx_merge',
21
21
  'mock_rollup_root',
22
22
  ];
23
23
 
@@ -37,19 +37,21 @@ export type PrivateKernelPublicInputs = {
37
37
  read_requests: FixedLengthArray<Field, 4>;
38
38
  }
39
39
 
40
- export type TubeData = {
40
+ export type CivcProofData = {
41
41
  public_inputs: KernelPublicInputs;
42
- proof: FixedLengthArray<Field, 535>;
43
- vk_data: VerificationKey<115>;
42
+ proof: FixedLengthArray<Field, 2084>;
43
+ vk_data: VerificationKey<127>;
44
44
  }
45
45
 
46
46
  export type AvmCircuitPublicInputs = {
47
47
  global_variables: GlobalVariables;
48
+ protocol_contracts: ProtocolContracts;
48
49
  start_tree_snapshots: TreeSnapshots;
49
50
  start_gas_used: Gas;
50
51
  gas_settings: GasSettings;
51
52
  effective_gas_fees: GasFees;
52
53
  fee_payer: AztecAddress;
54
+ prover_id: Field;
53
55
  public_call_request_array_lengths: PublicCallRequestArrayLengths;
54
56
  public_setup_call_requests: FixedLengthArray<PublicCallRequest, 32>;
55
57
  public_app_logic_call_requests: FixedLengthArray<PublicCallRequest, 32>;
@@ -77,6 +79,10 @@ export type GlobalVariables = {
77
79
  gas_fees: GasFees;
78
80
  }
79
81
 
82
+ export type ProtocolContracts = {
83
+ derived_addresses: FixedLengthArray<AztecAddress, 11>;
84
+ }
85
+
80
86
  export type TreeSnapshots = {
81
87
  l1_to_l2_message_tree: AppendOnlyTreeSnapshot;
82
88
  note_hash_tree: AppendOnlyTreeSnapshot;
@@ -134,7 +140,6 @@ export type AvmAccumulatedDataArrayLengths = {
134
140
  note_hashes: u32;
135
141
  nullifiers: u32;
136
142
  l2_to_l1_msgs: u32;
137
- public_logs: u32;
138
143
  public_data_writes: u32;
139
144
  }
140
145
 
@@ -142,7 +147,7 @@ export type AvmAccumulatedData = {
142
147
  note_hashes: FixedLengthArray<Field, 64>;
143
148
  nullifiers: FixedLengthArray<Field, 64>;
144
149
  l2_to_l1_msgs: FixedLengthArray<Scoped, 8>;
145
- public_logs: FixedLengthArray<PublicLog, 8>;
150
+ public_logs: PublicLogs;
146
151
  public_data_writes: FixedLengthArray<PublicDataWrite, 64>;
147
152
  }
148
153
 
@@ -152,7 +157,7 @@ export type EthAddress = {
152
157
 
153
158
  export type AppendOnlyTreeSnapshot = {
154
159
  root: Field;
155
- next_available_leaf_index: u32;
160
+ next_available_leaf_index: Field;
156
161
  }
157
162
 
158
163
  export type Scoped = {
@@ -160,9 +165,9 @@ export type Scoped = {
160
165
  contract_address: AztecAddress;
161
166
  }
162
167
 
163
- export type PublicLog = {
164
- log: Log;
165
- contract_address: AztecAddress;
168
+ export type PublicLogs = {
169
+ length: u32;
170
+ payload: FixedLengthArray<Field, 4096>;
166
171
  }
167
172
 
168
173
  export type PublicDataWrite = {
@@ -175,11 +180,6 @@ export type L2ToL1Message = {
175
180
  content: Field;
176
181
  }
177
182
 
178
- export type Log = {
179
- fields: FixedLengthArray<Field, 13>;
180
- length: u32;
181
- }
182
-
183
183
  export type RollupPublicInputs = {
184
184
  accumulated: u32;
185
185
  }
@@ -291,45 +291,45 @@ export async function MockPrivateKernelTail(prev_kernel_public_inputs: PrivateKe
291
291
  const { returnValue } = await program.execute(args, foreignCallHandler);
292
292
  return returnValue as KernelPublicInputs;
293
293
  }
294
- export type MockRollupBasePublicInputType = {
295
- tube_data: TubeData;
294
+ export type MockRollupTxBasePublicInputType = {
295
+ civc_proof_data: CivcProofData;
296
296
  verification_key: VerificationKey<1000>;
297
297
  proof: FixedLengthArray<Field, 20000>;
298
298
  public_inputs: AvmCircuitPublicInputs;
299
299
  }
300
300
 
301
- export type MockRollupBasePublicReturnType = RollupPublicInputs;
301
+ export type MockRollupTxBasePublicReturnType = RollupPublicInputs;
302
302
 
303
303
 
304
- export async function MockRollupBasePublic(tube_data: TubeData, verification_key: VerificationKey<1000>, proof: FixedLengthArray<Field, 20000>, public_inputs: AvmCircuitPublicInputs, MockRollupBasePublic_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
305
- const program = new Noir(MockRollupBasePublic_circuit);
306
- const args: InputMap = { tube_data, verification_key, proof, public_inputs };
304
+ export async function MockRollupTxBasePublic(civc_proof_data: CivcProofData, verification_key: VerificationKey<1000>, proof: FixedLengthArray<Field, 20000>, public_inputs: AvmCircuitPublicInputs, MockRollupTxBasePublic_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
305
+ const program = new Noir(MockRollupTxBasePublic_circuit);
306
+ const args: InputMap = { civc_proof_data, verification_key, proof, public_inputs };
307
307
  const { returnValue } = await program.execute(args, foreignCallHandler);
308
308
  return returnValue as RollupPublicInputs;
309
309
  }
310
- export type MockRollupBasePrivateInputType = {
311
- tube_data: TubeData;
310
+ export type MockRollupTxBasePrivateInputType = {
311
+ civc_proof_data: CivcProofData;
312
312
  }
313
313
 
314
- export type MockRollupBasePrivateReturnType = RollupPublicInputs;
314
+ export type MockRollupTxBasePrivateReturnType = RollupPublicInputs;
315
315
 
316
316
 
317
- export async function MockRollupBasePrivate(tube_data: TubeData, MockRollupBasePrivate_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
318
- const program = new Noir(MockRollupBasePrivate_circuit);
319
- const args: InputMap = { tube_data };
317
+ export async function MockRollupTxBasePrivate(civc_proof_data: CivcProofData, MockRollupTxBasePrivate_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
318
+ const program = new Noir(MockRollupTxBasePrivate_circuit);
319
+ const args: InputMap = { civc_proof_data };
320
320
  const { returnValue } = await program.execute(args, foreignCallHandler);
321
321
  return returnValue as RollupPublicInputs;
322
322
  }
323
- export type MockRollupMergeInputType = {
323
+ export type MockRollupTxMergeInputType = {
324
324
  a: PreviousRollupData;
325
325
  b: PreviousRollupData;
326
326
  }
327
327
 
328
- export type MockRollupMergeReturnType = RollupPublicInputs;
328
+ export type MockRollupTxMergeReturnType = RollupPublicInputs;
329
329
 
330
330
 
331
- export async function MockRollupMerge(a: PreviousRollupData, b: PreviousRollupData, MockRollupMerge_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
332
- const program = new Noir(MockRollupMerge_circuit);
331
+ export async function MockRollupTxMerge(a: PreviousRollupData, b: PreviousRollupData, MockRollupTxMerge_circuit: CompiledCircuit, foreignCallHandler?: ForeignCallHandler): Promise<RollupPublicInputs> {
332
+ const program = new Noir(MockRollupTxMerge_circuit);
333
333
  const args: InputMap = { a, b };
334
334
  const { returnValue } = await program.execute(args, foreignCallHandler);
335
335
  return returnValue as RollupPublicInputs;
package/src/witgen.ts CHANGED
@@ -15,26 +15,15 @@ import { strict as assert } from 'assert';
15
15
 
16
16
  import MockAppCreatorCircuit from '../artifacts/app_creator.json' with { type: 'json' };
17
17
  import MockAppReaderCircuit from '../artifacts/app_reader.json' with { type: 'json' };
18
- import MockAppCreatorVk from '../artifacts/keys/app_creator.vk.data.json' with { type: 'json' };
19
- import MockAppReaderVk from '../artifacts/keys/app_reader.vk.data.json' with { type: 'json' };
20
- import MockHidingVk from '../artifacts/keys/mock_hiding.vk.data.json' with { type: 'json' };
21
- import MockPrivateKernelInitVk from '../artifacts/keys/mock_private_kernel_init.vk.data.json' with { type: 'json' };
22
- import MockPrivateKernelInnerVk from '../artifacts/keys/mock_private_kernel_inner.vk.data.json' with { type: 'json' };
23
- import MockPrivateKernelResetVk from '../artifacts/keys/mock_private_kernel_reset.vk.data.json' with { type: 'json' };
24
- import MockPrivateKernelTailVk from '../artifacts/keys/mock_private_kernel_tail.vk.data.json' with { type: 'json' };
25
- import MockRollupBasePrivateVk from '../artifacts/keys/mock_rollup_base_private.vk.data.json' with { type: 'json' };
26
- import MockRollupBasePublicVk from '../artifacts/keys/mock_rollup_base_public.vk.data.json' with { type: 'json' };
27
- import MockRollupMergeVk from '../artifacts/keys/mock_rollup_merge.vk.data.json' with { type: 'json' };
28
- import MockRollupRootVk from '../artifacts/keys/mock_rollup_root.vk.data.json' with { type: 'json' };
29
18
  import MockHidingCircuit from '../artifacts/mock_hiding.json' with { type: 'json' };
30
19
  import MockPrivateKernelInitCircuit from '../artifacts/mock_private_kernel_init.json' with { type: 'json' };
31
20
  import MockPrivateKernelInnerCircuit from '../artifacts/mock_private_kernel_inner.json' with { type: 'json' };
32
21
  import MockPrivateKernelResetCircuit from '../artifacts/mock_private_kernel_reset.json' with { type: 'json' };
33
22
  import MockPrivateKernelTailCircuit from '../artifacts/mock_private_kernel_tail.json' with { type: 'json' };
34
- import MockRollupBasePrivateCircuit from '../artifacts/mock_rollup_base_private.json' with { type: 'json' };
35
- import MockRollupBasePublicCircuit from '../artifacts/mock_rollup_base_public.json' with { type: 'json' };
36
- import MockRollupMergeCircuit from '../artifacts/mock_rollup_merge.json' with { type: 'json' };
37
23
  import MockRollupRootCircuit from '../artifacts/mock_rollup_root.json' with { type: 'json' };
24
+ import MockRollupTxBasePrivateCircuit from '../artifacts/mock_rollup_tx_base_private.json' with { type: 'json' };
25
+ import MockRollupTxBasePublicCircuit from '../artifacts/mock_rollup_tx_base_public.json' with { type: 'json' };
26
+ import MockRollupTxMergeCircuit from '../artifacts/mock_rollup_tx_merge.json' with { type: 'json' };
38
27
  import type {
39
28
  AppCreatorInputType,
40
29
  AppPublicInputs,
@@ -46,15 +35,36 @@ import type {
46
35
  MockPrivateKernelInnerInputType,
47
36
  MockPrivateKernelResetInputType,
48
37
  MockPrivateKernelTailInputType,
49
- MockRollupBasePrivateInputType,
50
- MockRollupBasePublicInputType,
51
- MockRollupMergeInputType,
52
38
  MockRollupRootInputType,
39
+ MockRollupTxBasePrivateInputType,
40
+ MockRollupTxBasePublicInputType,
41
+ MockRollupTxMergeInputType,
53
42
  PrivateKernelPublicInputs,
54
43
  RollupPublicInputs,
55
44
  VerificationKey,
56
45
  } from './types/index.js';
57
46
 
47
+ // Helper to extract VK from circuit artifact
48
+ function extractVkFromCircuit(circuit: any) {
49
+ return {
50
+ keyAsBytes: circuit.verificationKey.bytes,
51
+ keyAsFields: circuit.verificationKey.fields,
52
+ };
53
+ }
54
+
55
+ // Extract VKs from circuit artifacts
56
+ const MockAppCreatorVk = extractVkFromCircuit(MockAppCreatorCircuit);
57
+ const MockAppReaderVk = extractVkFromCircuit(MockAppReaderCircuit);
58
+ const MockPrivateKernelInitVk = extractVkFromCircuit(MockPrivateKernelInitCircuit);
59
+ const MockPrivateKernelInnerVk = extractVkFromCircuit(MockPrivateKernelInnerCircuit);
60
+ const MockPrivateKernelResetVk = extractVkFromCircuit(MockPrivateKernelResetCircuit);
61
+ const MockPrivateKernelTailVk = extractVkFromCircuit(MockPrivateKernelTailCircuit);
62
+ const MockHidingVk = extractVkFromCircuit(MockHidingCircuit);
63
+ const MockRollupTxBasePrivateVk = extractVkFromCircuit(MockRollupTxBasePrivateCircuit);
64
+ const MockRollupTxBasePublicVk = extractVkFromCircuit(MockRollupTxBasePublicCircuit);
65
+ const MockRollupTxMergeVk = extractVkFromCircuit(MockRollupTxMergeCircuit);
66
+ const MockRollupRootVk = extractVkFromCircuit(MockRollupRootCircuit);
67
+
58
68
  // Re export the circuit jsons
59
69
  export {
60
70
  MockAppCreatorCircuit,
@@ -70,12 +80,12 @@ export {
70
80
  MockPrivateKernelTailCircuit,
71
81
  MockHidingCircuit,
72
82
  MockPrivateKernelTailVk,
73
- MockRollupBasePrivateCircuit,
74
- MockRollupBasePrivateVk,
75
- MockRollupBasePublicCircuit,
76
- MockRollupBasePublicVk,
77
- MockRollupMergeCircuit,
78
- MockRollupMergeVk,
83
+ MockRollupTxBasePrivateCircuit,
84
+ MockRollupTxBasePrivateVk,
85
+ MockRollupTxBasePublicCircuit,
86
+ MockRollupTxBasePublicVk,
87
+ MockRollupTxMergeCircuit,
88
+ MockRollupTxMergeVk,
79
89
  MockRollupRootCircuit,
80
90
  MockRollupRootVk,
81
91
  };
@@ -192,9 +202,9 @@ export async function witnessGenMockHidingCircuit(
192
202
  }
193
203
 
194
204
  export async function witnessGenMockPublicBaseCircuit(
195
- args: MockRollupBasePublicInputType,
205
+ args: MockRollupTxBasePublicInputType,
196
206
  ): Promise<WitnessGenResult<RollupPublicInputs>> {
197
- const program = new Noir(MockRollupBasePublicCircuit);
207
+ const program = new Noir(MockRollupTxBasePublicCircuit);
198
208
  const { witness, returnValue } = await program.execute(args, foreignCallHandler);
199
209
  return {
200
210
  witness,
@@ -202,10 +212,10 @@ export async function witnessGenMockPublicBaseCircuit(
202
212
  };
203
213
  }
204
214
 
205
- export async function witnessGenMockRollupBasePrivateCircuit(
206
- args: MockRollupBasePrivateInputType,
215
+ export async function witnessGenMockRollupTxBasePrivateCircuit(
216
+ args: MockRollupTxBasePrivateInputType,
207
217
  ): Promise<WitnessGenResult<RollupPublicInputs>> {
208
- const program = new Noir(MockRollupBasePrivateCircuit);
218
+ const program = new Noir(MockRollupTxBasePrivateCircuit);
209
219
  const { witness, returnValue } = await program.execute(args, foreignCallHandler);
210
220
  return {
211
221
  witness,
@@ -213,10 +223,10 @@ export async function witnessGenMockRollupBasePrivateCircuit(
213
223
  };
214
224
  }
215
225
 
216
- export async function witnessGenMockRollupMergeCircuit(
217
- args: MockRollupMergeInputType,
226
+ export async function witnessGenMockRollupTxMergeCircuit(
227
+ args: MockRollupTxMergeInputType,
218
228
  ): Promise<WitnessGenResult<RollupPublicInputs>> {
219
- const program = new Noir(MockRollupMergeCircuit);
229
+ const program = new Noir(MockRollupTxMergeCircuit);
220
230
  const { witness, returnValue } = await program.execute(args, foreignCallHandler);
221
231
  return {
222
232
  witness,
@@ -1,2 +0,0 @@
1
- const vk: { keyAsBytes: string; keyAsFields: string[] };
2
- export = vk;
@@ -1,132 +0,0 @@
1
- {
2
- "keyAsBytes": "000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000004269000000000000000000000000000000ff2f3e73f214decf8994aaa05cbda1bb05000000000000000000000000000000000018defa6f388fdad2139d4f08a2265f0000000000000000000000000000004fca9cc724d42751b69f885cff9c6a0e3500000000000000000000000000000000001451e5b5302897861fd9075b752ba8000000000000000000000000000000e53f3bfbc2a62f831df5e4bce1880c1310000000000000000000000000000000000020b7f066d6483480e269dbc7935f8a000000000000000000000000000000ea7d7842da3a600f9bdd876b0e42a35e6b000000000000000000000000000000000017f76f2918bb13fa5681a9ce460fc400000000000000000000000000000047df2d11c7aa538fbab8cc2fd2d2cbbdec00000000000000000000000000000000002d6e5d5b3f4e3c9154dda5a583866a00000000000000000000000000000026c8f95f90b70bf2dff8198443d29e61a10000000000000000000000000000000000099d8f97c5bc67d8c744e6b8ef0c85000000000000000000000000000000bfd9315a8357e71b7aa53109d3edb50b6100000000000000000000000000000000002f84ca451c560285a2d386bab353da00000000000000000000000000000065394182a9428a027f58fe249dbcae92cf000000000000000000000000000000000027a0d81e11a9e8e3822bd9fe18123600000000000000000000000000000015d288d2d776ea3e8525f1b4e71493707200000000000000000000000000000000000f63896cfa039c3b751350b14bc73d000000000000000000000000000000a38d258a0ed6007d1a3070dfb25dbc6e1200000000000000000000000000000000000b6ddf5a1d12244aa92354e6e8feb7000000000000000000000000000000a0598d6fc25e7b3e7fd721814d6df3711b00000000000000000000000000000000000bdfbb8b0a0cbdd9d086775e123b1700000000000000000000000000000092567654745c34926560e4c2d0ddbcf6cc00000000000000000000000000000000001d21d2df89f728fb4ac527c5b59bda0000000000000000000000000000000f2643abdbb959044739dae5847fe4d5c1000000000000000000000000000000000009bfc9f02bc1e05474d63b5e31b58700000000000000000000000000000020b788397dc9cfd63e0fd63fa905f32a4300000000000000000000000000000000000cddbc506ee4162427d6349c62d165000000000000000000000000000000a960ed04ed18226af7e234c50fb68eb32c00000000000000000000000000000000001f94c000fd5cc224bfd3e729502c380000000000000000000000000000007f66df3b2e16c7dd16920e82a7769cc59100000000000000000000000000000000000851586e2a40e049ae6862f6f5849a000000000000000000000000000000f4d6cd31e44f893ebbccfa5472450f3ffc00000000000000000000000000000000001c5e901a2dffa7ade0c54c96b0f5b8000000000000000000000000000000db095ed573f3137de17477a3b3c019ce63000000000000000000000000000000000015fc14494e4cf27152b25db1ac410f000000000000000000000000000000a94a75a5abc4995d039183b53eb89e7b61000000000000000000000000000000000020b9317650c9b02c043b4017a3487200000000000000000000000000000020563f22ea5b4851449857b83aab43c6a0000000000000000000000000000000000007c1704aba243bca35c1177d13f232000000000000000000000000000000fcdb7b32641ccd5a71868e7cd3d72320e400000000000000000000000000000000000130c10d4ab41d11d2c74f8f22706e0000000000000000000000000000006c63fa515f914cc0cc54913d02db3070c000000000000000000000000000000000002f1f01cbca5057a82c31cb57d4b4120000000000000000000000000000002ac2963a8fc5f0d6c468c5e0f1b2ff1ae4000000000000000000000000000000000001fa4a9e98536ff25afd65485cd70b0000000000000000000000000000003b464477e8e7bae44ff5816b6f7fbb266500000000000000000000000000000000001cdabc7d30eebdee99fe23fc7fe0ff000000000000000000000000000000bb8d0aaf15ad50731429ce9d500f8bede0000000000000000000000000000000000003d903a4f6b556d532f5467ed6f75d000000000000000000000000000000fc563f7861be3599027735094062bc520000000000000000000000000000000000001f8332470ae6751fae9fbda1b15315000000000000000000000000000000b582f6bbfd15c9faaf01e16f6f2fcaddf6000000000000000000000000000000000003c2efae7058bbeb07580f1a4ad20200000000000000000000000000000077eeb592dbda5c2c82282d1ba19b3f7aaf00000000000000000000000000000000002f81cd05fc26321c1b701ff7fdb20200000000000000000000000000000022a2441ea5d7972c0864bdb2b98bd10c7f000000000000000000000000000000000009ef67a106bc934999d063037a68af0000000000000000000000000000006aa229fc333422abc17c32683649bed60100000000000000000000000000000000001498ac0ca852871ec711b3970113580000000000000000000000000000005e6adb7564209abeb120c796f0136347f400000000000000000000000000000000002c8dac1d221d9686510255f90eceaf000000000000000000000000000000ff5778d8e254f2b74705f9062cea7a303100000000000000000000000000000000000a6ffa191d190b77aa92c42298ae900000000000000000000000000000008ede4ad3fa62c8a5ecbfd1d8b857af720100000000000000000000000000000000001a9820066554f162c0900d06200a530000000000000000000000000000001c7de4433fd3d37ce3009abcc88fc10017000000000000000000000000000000000008d6dac6e479af057fd21635ebd6cc00000000000000000000000000000099e025c036a467c9a29fdf13a21671a3d1000000000000000000000000000000000023c6e7db030855b5a6d550ce4bcd510000000000000000000000000000000e7a918453884bd6a3269d0c7f8aca8b18000000000000000000000000000000000012eb8edddebce6d6aca63115afef49000000000000000000000000000000b1bace266244a5447514e01e8612dde35a00000000000000000000000000000000002fddd29719f4cda556e3a63de37deb000000000000000000000000000000988c8876bbedbbde7bb29f0266046a6d130000000000000000000000000000000000257b1dd28f0c4bd43b01b001491196000000000000000000000000000000fd727e5923668cbde4a8d3c9f06011167b000000000000000000000000000000000002d4eb9e50907911f29f2c4180514800000000000000000000000000000021a4df929bc6fe17889b53261ece83508700000000000000000000000000000000001b5e271b07ad7bb927d8ad83a4e6f0000000000000000000000000000000e0b58485a364d947b939776aaf355b89470000000000000000000000000000000000290bb776376484e4bae2b2725f3f3f00000000000000000000000000000051581a832287a697dc9aad8eb7df336aa40000000000000000000000000000000000260abef49338f2292780fbd6f7c8cf0000000000000000000000000000002d85a69af40aac81dae1cae61fb5e93a5f00000000000000000000000000000000001463bebebce513f911d6633b6786f10000000000000000000000000000004d79781db59fede07c83d41eae0ebe441d00000000000000000000000000000000000bb472764750f8a88e81dbbf3819d800000000000000000000000000000041768b573c184c6590e99c6d39a9bdb9b800000000000000000000000000000000002bba66aa46925b98866dd91dd551cb000000000000000000000000000000f1a21908a14fd7dd95359ad856d0f03cdb000000000000000000000000000000000019cabf807ec0647607fcda74adeff500000000000000000000000000000058b33d923ade8b5d0448419d48345e5f81000000000000000000000000000000000028ad3f8c8963eaa28db13b23cef5320000000000000000000000000000009ed57c51f54e285c34ed4967a9fedff9c000000000000000000000000000000000001e15dad234b56c61a7a55250a8ace6000000000000000000000000000000631f3f6b2512e8e2bac22e09debf130e2c000000000000000000000000000000000021aa80da09ba90354e457d3d06c91800000000000000000000000000000074d1d3626a5782e31229d70fb023ab138d000000000000000000000000000000000020bde42a396968bbbf4e7f6110c626000000000000000000000000000000bf70e3205792666d10782df824cb89830500000000000000000000000000000000002d3ed449189b9b03065fa5c1b7487e000000000000000000000000000000ef424b2d8ba7a2ee1340765437ebd2ff57000000000000000000000000000000000022b0777408c09d209bc5c1664ac2cd0000000000000000000000000000006052b03156a4c3651b64fbe4a424080008000000000000000000000000000000000017a529f80079e7a63deb90318f812f00000000000000000000000000000014902d9ee5e3fc31d90cbc82887613817a0000000000000000000000000000000000019c70be1671253bd668a1d46c56eb00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007b82a633d0c643b07c79f8c6e7bdccbe7000000000000000000000000000000000002c403cbbf5759fed45b90222ef441a0000000000000000000000000000009a8dd7cdc1795168f82c634b301bdcb98e0000000000000000000000000000000000166db843062ed0a07db09e0d600ed60000000000000000000000000000006bcc7a05ff95a96b289424c5f733670d96000000000000000000000000000000000000c43726f75b6fda0de22ce0e0dfab0000000000000000000000000000001d0a09d7178ec93bad7858f96e64f0b48d00000000000000000000000000000000002f9b6e0b4e2c01968de5c32482aa7d000000000000000000000000000000b3c3cf6db5a5c37c73b4eaabc7c2bdb5d50000000000000000000000000000000000019aaa1db73a9843297ddd5305a039000000000000000000000000000000f3287cee24421753c9bb15d7145031ca6d000000000000000000000000000000000005892462ef48edfc14cca5c68eae6e",
3
- "keyAsFields": [
4
- "0x0000000000000000000000000000000000000000000000000000000000000012",
5
- "0x0000000000000000000000000000000000000000000000000000000000000010",
6
- "0x0000000000000000000000000000000000000000000000000000000000004269",
7
- "0x000000000000000000000000000000ff2f3e73f214decf8994aaa05cbda1bb05",
8
- "0x000000000000000000000000000000000018defa6f388fdad2139d4f08a2265f",
9
- "0x0000000000000000000000000000004fca9cc724d42751b69f885cff9c6a0e35",
10
- "0x00000000000000000000000000000000001451e5b5302897861fd9075b752ba8",
11
- "0x000000000000000000000000000000e53f3bfbc2a62f831df5e4bce1880c1310",
12
- "0x000000000000000000000000000000000020b7f066d6483480e269dbc7935f8a",
13
- "0x000000000000000000000000000000ea7d7842da3a600f9bdd876b0e42a35e6b",
14
- "0x000000000000000000000000000000000017f76f2918bb13fa5681a9ce460fc4",
15
- "0x00000000000000000000000000000047df2d11c7aa538fbab8cc2fd2d2cbbdec",
16
- "0x00000000000000000000000000000000002d6e5d5b3f4e3c9154dda5a583866a",
17
- "0x00000000000000000000000000000026c8f95f90b70bf2dff8198443d29e61a1",
18
- "0x0000000000000000000000000000000000099d8f97c5bc67d8c744e6b8ef0c85",
19
- "0x000000000000000000000000000000bfd9315a8357e71b7aa53109d3edb50b61",
20
- "0x00000000000000000000000000000000002f84ca451c560285a2d386bab353da",
21
- "0x00000000000000000000000000000065394182a9428a027f58fe249dbcae92cf",
22
- "0x000000000000000000000000000000000027a0d81e11a9e8e3822bd9fe181236",
23
- "0x00000000000000000000000000000015d288d2d776ea3e8525f1b4e714937072",
24
- "0x00000000000000000000000000000000000f63896cfa039c3b751350b14bc73d",
25
- "0x000000000000000000000000000000a38d258a0ed6007d1a3070dfb25dbc6e12",
26
- "0x00000000000000000000000000000000000b6ddf5a1d12244aa92354e6e8feb7",
27
- "0x000000000000000000000000000000a0598d6fc25e7b3e7fd721814d6df3711b",
28
- "0x00000000000000000000000000000000000bdfbb8b0a0cbdd9d086775e123b17",
29
- "0x00000000000000000000000000000092567654745c34926560e4c2d0ddbcf6cc",
30
- "0x00000000000000000000000000000000001d21d2df89f728fb4ac527c5b59bda",
31
- "0x0000000000000000000000000000000f2643abdbb959044739dae5847fe4d5c1",
32
- "0x000000000000000000000000000000000009bfc9f02bc1e05474d63b5e31b587",
33
- "0x00000000000000000000000000000020b788397dc9cfd63e0fd63fa905f32a43",
34
- "0x00000000000000000000000000000000000cddbc506ee4162427d6349c62d165",
35
- "0x000000000000000000000000000000a960ed04ed18226af7e234c50fb68eb32c",
36
- "0x00000000000000000000000000000000001f94c000fd5cc224bfd3e729502c38",
37
- "0x0000000000000000000000000000007f66df3b2e16c7dd16920e82a7769cc591",
38
- "0x00000000000000000000000000000000000851586e2a40e049ae6862f6f5849a",
39
- "0x000000000000000000000000000000f4d6cd31e44f893ebbccfa5472450f3ffc",
40
- "0x00000000000000000000000000000000001c5e901a2dffa7ade0c54c96b0f5b8",
41
- "0x000000000000000000000000000000db095ed573f3137de17477a3b3c019ce63",
42
- "0x000000000000000000000000000000000015fc14494e4cf27152b25db1ac410f",
43
- "0x000000000000000000000000000000a94a75a5abc4995d039183b53eb89e7b61",
44
- "0x000000000000000000000000000000000020b9317650c9b02c043b4017a34872",
45
- "0x00000000000000000000000000000020563f22ea5b4851449857b83aab43c6a0",
46
- "0x000000000000000000000000000000000007c1704aba243bca35c1177d13f232",
47
- "0x000000000000000000000000000000fcdb7b32641ccd5a71868e7cd3d72320e4",
48
- "0x00000000000000000000000000000000000130c10d4ab41d11d2c74f8f22706e",
49
- "0x0000000000000000000000000000006c63fa515f914cc0cc54913d02db3070c0",
50
- "0x00000000000000000000000000000000002f1f01cbca5057a82c31cb57d4b412",
51
- "0x0000000000000000000000000000002ac2963a8fc5f0d6c468c5e0f1b2ff1ae4",
52
- "0x000000000000000000000000000000000001fa4a9e98536ff25afd65485cd70b",
53
- "0x0000000000000000000000000000003b464477e8e7bae44ff5816b6f7fbb2665",
54
- "0x00000000000000000000000000000000001cdabc7d30eebdee99fe23fc7fe0ff",
55
- "0x000000000000000000000000000000bb8d0aaf15ad50731429ce9d500f8bede0",
56
- "0x000000000000000000000000000000000003d903a4f6b556d532f5467ed6f75d",
57
- "0x000000000000000000000000000000fc563f7861be3599027735094062bc5200",
58
- "0x00000000000000000000000000000000001f8332470ae6751fae9fbda1b15315",
59
- "0x000000000000000000000000000000b582f6bbfd15c9faaf01e16f6f2fcaddf6",
60
- "0x000000000000000000000000000000000003c2efae7058bbeb07580f1a4ad202",
61
- "0x00000000000000000000000000000077eeb592dbda5c2c82282d1ba19b3f7aaf",
62
- "0x00000000000000000000000000000000002f81cd05fc26321c1b701ff7fdb202",
63
- "0x00000000000000000000000000000022a2441ea5d7972c0864bdb2b98bd10c7f",
64
- "0x000000000000000000000000000000000009ef67a106bc934999d063037a68af",
65
- "0x0000000000000000000000000000006aa229fc333422abc17c32683649bed601",
66
- "0x00000000000000000000000000000000001498ac0ca852871ec711b397011358",
67
- "0x0000000000000000000000000000005e6adb7564209abeb120c796f0136347f4",
68
- "0x00000000000000000000000000000000002c8dac1d221d9686510255f90eceaf",
69
- "0x000000000000000000000000000000ff5778d8e254f2b74705f9062cea7a3031",
70
- "0x00000000000000000000000000000000000a6ffa191d190b77aa92c42298ae90",
71
- "0x0000000000000000000000000000008ede4ad3fa62c8a5ecbfd1d8b857af7201",
72
- "0x00000000000000000000000000000000001a9820066554f162c0900d06200a53",
73
- "0x0000000000000000000000000000001c7de4433fd3d37ce3009abcc88fc10017",
74
- "0x000000000000000000000000000000000008d6dac6e479af057fd21635ebd6cc",
75
- "0x00000000000000000000000000000099e025c036a467c9a29fdf13a21671a3d1",
76
- "0x000000000000000000000000000000000023c6e7db030855b5a6d550ce4bcd51",
77
- "0x0000000000000000000000000000000e7a918453884bd6a3269d0c7f8aca8b18",
78
- "0x000000000000000000000000000000000012eb8edddebce6d6aca63115afef49",
79
- "0x000000000000000000000000000000b1bace266244a5447514e01e8612dde35a",
80
- "0x00000000000000000000000000000000002fddd29719f4cda556e3a63de37deb",
81
- "0x000000000000000000000000000000988c8876bbedbbde7bb29f0266046a6d13",
82
- "0x0000000000000000000000000000000000257b1dd28f0c4bd43b01b001491196",
83
- "0x000000000000000000000000000000fd727e5923668cbde4a8d3c9f06011167b",
84
- "0x000000000000000000000000000000000002d4eb9e50907911f29f2c41805148",
85
- "0x00000000000000000000000000000021a4df929bc6fe17889b53261ece835087",
86
- "0x00000000000000000000000000000000001b5e271b07ad7bb927d8ad83a4e6f0",
87
- "0x000000000000000000000000000000e0b58485a364d947b939776aaf355b8947",
88
- "0x0000000000000000000000000000000000290bb776376484e4bae2b2725f3f3f",
89
- "0x00000000000000000000000000000051581a832287a697dc9aad8eb7df336aa4",
90
- "0x0000000000000000000000000000000000260abef49338f2292780fbd6f7c8cf",
91
- "0x0000000000000000000000000000002d85a69af40aac81dae1cae61fb5e93a5f",
92
- "0x00000000000000000000000000000000001463bebebce513f911d6633b6786f1",
93
- "0x0000000000000000000000000000004d79781db59fede07c83d41eae0ebe441d",
94
- "0x00000000000000000000000000000000000bb472764750f8a88e81dbbf3819d8",
95
- "0x00000000000000000000000000000041768b573c184c6590e99c6d39a9bdb9b8",
96
- "0x00000000000000000000000000000000002bba66aa46925b98866dd91dd551cb",
97
- "0x000000000000000000000000000000f1a21908a14fd7dd95359ad856d0f03cdb",
98
- "0x000000000000000000000000000000000019cabf807ec0647607fcda74adeff5",
99
- "0x00000000000000000000000000000058b33d923ade8b5d0448419d48345e5f81",
100
- "0x000000000000000000000000000000000028ad3f8c8963eaa28db13b23cef532",
101
- "0x0000000000000000000000000000009ed57c51f54e285c34ed4967a9fedff9c0",
102
- "0x00000000000000000000000000000000001e15dad234b56c61a7a55250a8ace6",
103
- "0x000000000000000000000000000000631f3f6b2512e8e2bac22e09debf130e2c",
104
- "0x000000000000000000000000000000000021aa80da09ba90354e457d3d06c918",
105
- "0x00000000000000000000000000000074d1d3626a5782e31229d70fb023ab138d",
106
- "0x000000000000000000000000000000000020bde42a396968bbbf4e7f6110c626",
107
- "0x000000000000000000000000000000bf70e3205792666d10782df824cb898305",
108
- "0x00000000000000000000000000000000002d3ed449189b9b03065fa5c1b7487e",
109
- "0x000000000000000000000000000000ef424b2d8ba7a2ee1340765437ebd2ff57",
110
- "0x000000000000000000000000000000000022b0777408c09d209bc5c1664ac2cd",
111
- "0x0000000000000000000000000000006052b03156a4c3651b64fbe4a424080008",
112
- "0x000000000000000000000000000000000017a529f80079e7a63deb90318f812f",
113
- "0x00000000000000000000000000000014902d9ee5e3fc31d90cbc82887613817a",
114
- "0x0000000000000000000000000000000000019c70be1671253bd668a1d46c56eb",
115
- "0x0000000000000000000000000000000000000000000000000000000000000001",
116
- "0x0000000000000000000000000000000000000000000000000000000000000000",
117
- "0x0000000000000000000000000000000000000000000000000000000000000002",
118
- "0x0000000000000000000000000000000000000000000000000000000000000000",
119
- "0x0000000000000000000000000000007b82a633d0c643b07c79f8c6e7bdccbe70",
120
- "0x00000000000000000000000000000000002c403cbbf5759fed45b90222ef441a",
121
- "0x0000000000000000000000000000009a8dd7cdc1795168f82c634b301bdcb98e",
122
- "0x0000000000000000000000000000000000166db843062ed0a07db09e0d600ed6",
123
- "0x0000000000000000000000000000006bcc7a05ff95a96b289424c5f733670d96",
124
- "0x000000000000000000000000000000000000c43726f75b6fda0de22ce0e0dfab",
125
- "0x0000000000000000000000000000001d0a09d7178ec93bad7858f96e64f0b48d",
126
- "0x00000000000000000000000000000000002f9b6e0b4e2c01968de5c32482aa7d",
127
- "0x000000000000000000000000000000b3c3cf6db5a5c37c73b4eaabc7c2bdb5d5",
128
- "0x0000000000000000000000000000000000019aaa1db73a9843297ddd5305a039",
129
- "0x000000000000000000000000000000f3287cee24421753c9bb15d7145031ca6d",
130
- "0x000000000000000000000000000000000005892462ef48edfc14cca5c68eae6e"
131
- ]
132
- }
@@ -1,2 +0,0 @@
1
- const vk: { keyAsBytes: string; keyAsFields: string[] };
2
- export = vk;