@aztec/stdlib 3.0.0-nightly.20250918 → 3.0.0-nightly.20250920

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 (135) hide show
  1. package/dest/avm/avm.d.ts +8 -16
  2. package/dest/avm/avm.d.ts.map +1 -1
  3. package/dest/avm/avm_accumulated_data.d.ts +9 -21
  4. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  5. package/dest/avm/avm_accumulated_data.js +15 -22
  6. package/dest/avm/avm_circuit_public_inputs.d.ts +6 -12
  7. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  8. package/dest/avm/avm_proving_request.d.ts +9 -18
  9. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  10. package/dest/interfaces/block-builder.d.ts +1 -0
  11. package/dest/interfaces/block-builder.d.ts.map +1 -1
  12. package/dest/interfaces/epoch-prover.d.ts +4 -4
  13. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  14. package/dest/interfaces/proving-job.d.ts +78 -88
  15. package/dest/interfaces/proving-job.d.ts.map +1 -1
  16. package/dest/interfaces/proving-job.js +40 -84
  17. package/dest/interfaces/pxe.d.ts +193 -118
  18. package/dest/interfaces/pxe.d.ts.map +1 -1
  19. package/dest/interfaces/pxe.js +6 -37
  20. package/dest/interfaces/server_circuit_prover.d.ts +18 -17
  21. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  22. package/dest/logs/log_with_tx_data.d.ts +9 -12
  23. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  24. package/dest/logs/log_with_tx_data.js +18 -23
  25. package/dest/logs/public_log.d.ts +23 -10
  26. package/dest/logs/public_log.d.ts.map +1 -1
  27. package/dest/logs/public_log.js +117 -42
  28. package/dest/parity/index.d.ts +2 -3
  29. package/dest/parity/index.d.ts.map +1 -1
  30. package/dest/parity/index.js +2 -3
  31. package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +6 -6
  32. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  33. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +5 -5
  34. package/dest/parity/parity_root_private_inputs.d.ts +39 -0
  35. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  36. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  37. package/dest/proofs/proof_data.d.ts +3 -2
  38. package/dest/proofs/proof_data.d.ts.map +1 -1
  39. package/dest/proofs/proving_request_type.d.ts +5 -5
  40. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  41. package/dest/proofs/proving_request_type.js +5 -5
  42. package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +10 -4
  43. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  44. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +1 -1
  45. package/dest/rollup/{block_root_rollup.d.ts → block_root_rollup_private_inputs.d.ts} +23 -34
  46. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  47. package/dest/rollup/{block_root_rollup.js → block_root_rollup_private_inputs.js} +7 -7
  48. package/dest/rollup/{checkpoint_merge_rollup.d.ts → checkpoint_merge_rollup_private_inputs.d.ts} +6 -6
  49. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  50. package/dest/rollup/{checkpoint_root_rollup.d.ts → checkpoint_root_rollup_private_inputs.d.ts} +14 -8
  51. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  52. package/dest/rollup/index.d.ts +10 -11
  53. package/dest/rollup/index.d.ts.map +1 -1
  54. package/dest/rollup/index.js +10 -11
  55. package/dest/rollup/{private_base_rollup_inputs.d.ts → private_tx_base_rollup_private_inputs.d.ts} +7 -7
  56. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  57. package/dest/rollup/{private_base_rollup_inputs.js → private_tx_base_rollup_private_inputs.js} +6 -6
  58. package/dest/rollup/{public_base_rollup_inputs.d.ts → public_tx_base_rollup_private_inputs.d.ts} +7 -7
  59. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  60. package/dest/rollup/{public_base_rollup_inputs.js → public_tx_base_rollup_private_inputs.js} +6 -6
  61. package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
  62. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  63. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  64. package/dest/rollup/{root_rollup.d.ts → root_rollup_public_inputs.d.ts} +2 -65
  65. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  66. package/dest/rollup/{root_rollup.js → root_rollup_public_inputs.js} +1 -66
  67. package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +11 -10
  68. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  69. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  70. package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +11 -11
  71. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  72. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +13 -13
  73. package/dest/stats/stats.d.ts +1 -1
  74. package/dest/stats/stats.d.ts.map +1 -1
  75. package/dest/tests/factories.d.ts +16 -31
  76. package/dest/tests/factories.d.ts.map +1 -1
  77. package/dest/tests/factories.js +32 -49
  78. package/dest/tx/processed_tx.js +1 -1
  79. package/dest/tx/tx_effect.d.ts.map +1 -1
  80. package/dest/tx/tx_effect.js +9 -10
  81. package/package.json +8 -8
  82. package/src/avm/avm_accumulated_data.ts +15 -29
  83. package/src/interfaces/block-builder.ts +1 -0
  84. package/src/interfaces/epoch-prover.ts +3 -3
  85. package/src/interfaces/proving-job.ts +54 -93
  86. package/src/interfaces/pxe.ts +4 -184
  87. package/src/interfaces/server_circuit_prover.ts +24 -29
  88. package/src/logs/log_with_tx_data.ts +14 -24
  89. package/src/logs/public_log.ts +120 -58
  90. package/src/parity/index.ts +2 -3
  91. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +6 -6
  92. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  93. package/src/proofs/proof_data.ts +4 -2
  94. package/src/proofs/proving_request_type.ts +6 -5
  95. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +5 -3
  96. package/src/rollup/{block_root_rollup.ts → block_root_rollup_private_inputs.ts} +13 -26
  97. package/src/rollup/{checkpoint_merge_rollup.ts → checkpoint_merge_rollup_private_inputs.ts} +3 -4
  98. package/src/rollup/{checkpoint_root_rollup.ts → checkpoint_root_rollup_private_inputs.ts} +6 -4
  99. package/src/rollup/index.ts +10 -11
  100. package/src/rollup/{private_base_rollup_inputs.ts → private_tx_base_rollup_private_inputs.ts} +9 -9
  101. package/src/rollup/{public_base_rollup_inputs.ts → public_tx_base_rollup_private_inputs.ts} +9 -9
  102. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  103. package/src/rollup/{root_rollup.ts → root_rollup_public_inputs.ts} +1 -86
  104. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  105. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +11 -11
  106. package/src/stats/stats.ts +18 -17
  107. package/src/tests/factories.ts +33 -80
  108. package/src/tx/processed_tx.ts +1 -1
  109. package/src/tx/tx_effect.ts +9 -8
  110. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  111. package/dest/parity/root_parity_input.d.ts +0 -52
  112. package/dest/parity/root_parity_input.d.ts.map +0 -1
  113. package/dest/parity/root_parity_input.js +0 -50
  114. package/dest/parity/root_parity_inputs.d.ts +0 -37
  115. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  116. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  117. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  118. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  119. package/dest/rollup/checkpoint_merge_rollup.d.ts.map +0 -1
  120. package/dest/rollup/checkpoint_root_rollup.d.ts.map +0 -1
  121. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  122. package/dest/rollup/previous_rollup_data.d.ts +0 -47
  123. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  124. package/dest/rollup/previous_rollup_data.js +0 -37
  125. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  126. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  127. package/dest/rollup/rollup_proof_data.d.ts +0 -10
  128. package/dest/rollup/rollup_proof_data.d.ts.map +0 -1
  129. package/dest/rollup/rollup_proof_data.js +0 -1
  130. package/dest/rollup/root_rollup.d.ts.map +0 -1
  131. package/src/parity/root_parity_input.ts +0 -71
  132. package/src/rollup/previous_rollup_data.ts +0 -48
  133. package/src/rollup/rollup_proof_data.ts +0 -12
  134. /package/dest/rollup/{checkpoint_merge_rollup.js → checkpoint_merge_rollup_private_inputs.js} +0 -0
  135. /package/dest/rollup/{checkpoint_root_rollup.js → checkpoint_root_rollup_private_inputs.js} +0 -0
@@ -7,34 +7,34 @@ import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_r
7
7
  import { type CivcProofData, ProofData } from '../proofs/proof_data.js';
8
8
  import { PrivateBaseRollupHints } from './base_rollup_hints.js';
9
9
 
10
- export class PrivateBaseRollupInputs {
10
+ export class PrivateTxBaseRollupPrivateInputs {
11
11
  constructor(
12
12
  public hidingKernelProofData: CivcProofData<PrivateToRollupKernelCircuitPublicInputs>,
13
13
  public hints: PrivateBaseRollupHints,
14
14
  ) {}
15
15
 
16
- static from(fields: FieldsOf<PrivateBaseRollupInputs>): PrivateBaseRollupInputs {
17
- return new PrivateBaseRollupInputs(...PrivateBaseRollupInputs.getFields(fields));
16
+ static from(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>): PrivateTxBaseRollupPrivateInputs {
17
+ return new PrivateTxBaseRollupPrivateInputs(...PrivateTxBaseRollupPrivateInputs.getFields(fields));
18
18
  }
19
19
 
20
- static getFields(fields: FieldsOf<PrivateBaseRollupInputs>) {
20
+ static getFields(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>) {
21
21
  return [fields.hidingKernelProofData, fields.hints] as const;
22
22
  }
23
23
 
24
- static fromBuffer(buffer: Buffer | BufferReader): PrivateBaseRollupInputs {
24
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateTxBaseRollupPrivateInputs {
25
25
  const reader = BufferReader.asReader(buffer);
26
- return new PrivateBaseRollupInputs(
26
+ return new PrivateTxBaseRollupPrivateInputs(
27
27
  ProofData.fromBuffer(reader, PrivateToRollupKernelCircuitPublicInputs),
28
28
  reader.readObject(PrivateBaseRollupHints),
29
29
  );
30
30
  }
31
31
 
32
32
  toBuffer() {
33
- return serializeToBuffer(...PrivateBaseRollupInputs.getFields(this));
33
+ return serializeToBuffer(...PrivateTxBaseRollupPrivateInputs.getFields(this));
34
34
  }
35
35
 
36
36
  static fromString(str: string) {
37
- return PrivateBaseRollupInputs.fromBuffer(hexToBuffer(str));
37
+ return PrivateTxBaseRollupPrivateInputs.fromBuffer(hexToBuffer(str));
38
38
  }
39
39
 
40
40
  toString() {
@@ -48,6 +48,6 @@ export class PrivateBaseRollupInputs {
48
48
 
49
49
  /** Creates an instance from a hex string. */
50
50
  static get schema() {
51
- return bufferSchemaFor(PrivateBaseRollupInputs);
51
+ return bufferSchemaFor(PrivateTxBaseRollupPrivateInputs);
52
52
  }
53
53
  }
@@ -8,24 +8,24 @@ import { ProofData, type RollupHonkProofData } from '../proofs/proof_data.js';
8
8
  import { AvmProofData } from './avm_proof_data.js';
9
9
  import { PublicBaseRollupHints } from './base_rollup_hints.js';
10
10
 
11
- export class PublicBaseRollupInputs {
11
+ export class PublicTxBaseRollupPrivateInputs {
12
12
  constructor(
13
13
  public publicTubeProofData: RollupHonkProofData<PrivateToPublicKernelCircuitPublicInputs>,
14
14
  public avmProofData: AvmProofData,
15
15
  public hints: PublicBaseRollupHints,
16
16
  ) {}
17
17
 
18
- static from(fields: FieldsOf<PublicBaseRollupInputs>): PublicBaseRollupInputs {
19
- return new PublicBaseRollupInputs(...PublicBaseRollupInputs.getFields(fields));
18
+ static from(fields: FieldsOf<PublicTxBaseRollupPrivateInputs>): PublicTxBaseRollupPrivateInputs {
19
+ return new PublicTxBaseRollupPrivateInputs(...PublicTxBaseRollupPrivateInputs.getFields(fields));
20
20
  }
21
21
 
22
- static getFields(fields: FieldsOf<PublicBaseRollupInputs>) {
22
+ static getFields(fields: FieldsOf<PublicTxBaseRollupPrivateInputs>) {
23
23
  return [fields.publicTubeProofData, fields.avmProofData, fields.hints] as const;
24
24
  }
25
25
 
26
- static fromBuffer(buffer: Buffer | BufferReader): PublicBaseRollupInputs {
26
+ static fromBuffer(buffer: Buffer | BufferReader): PublicTxBaseRollupPrivateInputs {
27
27
  const reader = BufferReader.asReader(buffer);
28
- return new PublicBaseRollupInputs(
28
+ return new PublicTxBaseRollupPrivateInputs(
29
29
  ProofData.fromBuffer(reader, PrivateToPublicKernelCircuitPublicInputs),
30
30
  reader.readObject(AvmProofData),
31
31
  reader.readObject(PublicBaseRollupHints),
@@ -33,11 +33,11 @@ export class PublicBaseRollupInputs {
33
33
  }
34
34
 
35
35
  toBuffer() {
36
- return serializeToBuffer(...PublicBaseRollupInputs.getFields(this));
36
+ return serializeToBuffer(...PublicTxBaseRollupPrivateInputs.getFields(this));
37
37
  }
38
38
 
39
39
  static fromString(str: string) {
40
- return PublicBaseRollupInputs.fromBuffer(hexToBuffer(str));
40
+ return PublicTxBaseRollupPrivateInputs.fromBuffer(hexToBuffer(str));
41
41
  }
42
42
 
43
43
  toString() {
@@ -51,6 +51,6 @@ export class PublicBaseRollupInputs {
51
51
 
52
52
  /** Creates an instance from a string. */
53
53
  static get schema() {
54
- return bufferSchemaFor(PublicBaseRollupInputs);
54
+ return bufferSchemaFor(PublicTxBaseRollupPrivateInputs);
55
55
  }
56
56
  }
@@ -0,0 +1,90 @@
1
+ import { bufferSchemaFor } from '@aztec/foundation/schemas';
2
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
+ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
4
+ import type { FieldsOf } from '@aztec/foundation/types';
5
+
6
+ import { ProofData, type RollupHonkProofData } from '../proofs/proof_data.js';
7
+ import { CheckpointRollupPublicInputs } from './checkpoint_rollup_public_inputs.js';
8
+
9
+ /**
10
+ * Represents inputs of the root rollup circuit.
11
+ */
12
+ export class RootRollupPrivateInputs {
13
+ constructor(
14
+ /**
15
+ * The previous rollup data.
16
+ * Note: Root rollup circuit is the latest circuit the chain of circuits and the previous rollup data is the data
17
+ * from 2 checkpoint root/merge/padding circuits.
18
+ */
19
+ public previousRollups: [
20
+ RollupHonkProofData<CheckpointRollupPublicInputs>,
21
+ RollupHonkProofData<CheckpointRollupPublicInputs>,
22
+ ],
23
+ ) {}
24
+
25
+ /**
26
+ * Serializes the inputs to a buffer.
27
+ * @returns - The inputs serialized to a buffer.
28
+ */
29
+ toBuffer() {
30
+ return serializeToBuffer(...RootRollupPrivateInputs.getFields(this));
31
+ }
32
+
33
+ /**
34
+ * Serializes the inputs to a hex string.
35
+ * @returns The instance serialized to a hex string.
36
+ */
37
+ toString() {
38
+ return bufferToHex(this.toBuffer());
39
+ }
40
+
41
+ /**
42
+ * Creates a new instance from fields.
43
+ * @param fields - Fields to create the instance from.
44
+ * @returns A new RootRollupPrivateInputs instance.
45
+ */
46
+ static from(fields: FieldsOf<RootRollupPrivateInputs>) {
47
+ return new RootRollupPrivateInputs(...RootRollupPrivateInputs.getFields(fields));
48
+ }
49
+
50
+ /**
51
+ * Extracts fields from an instance.
52
+ * @param fields - Fields to create the instance from.
53
+ * @returns An array of fields.
54
+ */
55
+ static getFields(fields: FieldsOf<RootRollupPrivateInputs>) {
56
+ return [fields.previousRollups] as const;
57
+ }
58
+
59
+ /**
60
+ * Deserializes the inputs from a buffer.
61
+ * @param buffer - A buffer to deserialize from.
62
+ * @returns A new RootRollupPrivateInputs instance.
63
+ */
64
+ static fromBuffer(buffer: Buffer | BufferReader) {
65
+ const reader = BufferReader.asReader(buffer);
66
+ return new RootRollupPrivateInputs([
67
+ ProofData.fromBuffer(reader, CheckpointRollupPublicInputs),
68
+ ProofData.fromBuffer(reader, CheckpointRollupPublicInputs),
69
+ ]);
70
+ }
71
+
72
+ /**
73
+ * Deserializes the inputs from a hex string.
74
+ * @param str - A hex string to deserialize from.
75
+ * @returns A new RootRollupPrivateInputs instance.
76
+ */
77
+ static fromString(str: string) {
78
+ return RootRollupPrivateInputs.fromBuffer(hexToBuffer(str));
79
+ }
80
+
81
+ /** Returns a representation for JSON serialization. */
82
+ toJSON() {
83
+ return this.toBuffer();
84
+ }
85
+
86
+ /** Creates an instance from a string. */
87
+ static get schema() {
88
+ return bufferSchemaFor(RootRollupPrivateInputs);
89
+ }
90
+ }
@@ -7,93 +7,8 @@ import { BufferReader, type Tuple, serializeToBuffer, serializeToFields } from '
7
7
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
8
8
  import type { FieldsOf } from '@aztec/foundation/types';
9
9
 
10
- import { ProofData } from '../proofs/proof_data.js';
11
- import { CheckpointRollupPublicInputs, FeeRecipient } from './checkpoint_rollup_public_inputs.js';
10
+ import { FeeRecipient } from './checkpoint_rollup_public_inputs.js';
12
11
  import { EpochConstantData } from './epoch_constant_data.js';
13
- import type { RollupProofData } from './rollup_proof_data.js';
14
-
15
- /**
16
- * Represents inputs of the root rollup circuit.
17
- */
18
- export class RootRollupPrivateInputs {
19
- constructor(
20
- /**
21
- * The previous rollup data.
22
- * Note: Root rollup circuit is the latest circuit the chain of circuits and the previous rollup data is the data
23
- * from 2 checkpoint root/merge/padding circuits.
24
- */
25
- public previousRollups: [
26
- RollupProofData<CheckpointRollupPublicInputs>,
27
- RollupProofData<CheckpointRollupPublicInputs>,
28
- ],
29
- ) {}
30
-
31
- /**
32
- * Serializes the inputs to a buffer.
33
- * @returns - The inputs serialized to a buffer.
34
- */
35
- toBuffer() {
36
- return serializeToBuffer(...RootRollupPrivateInputs.getFields(this));
37
- }
38
-
39
- /**
40
- * Serializes the inputs to a hex string.
41
- * @returns The instance serialized to a hex string.
42
- */
43
- toString() {
44
- return bufferToHex(this.toBuffer());
45
- }
46
-
47
- /**
48
- * Creates a new instance from fields.
49
- * @param fields - Fields to create the instance from.
50
- * @returns A new RootRollupPrivateInputs instance.
51
- */
52
- static from(fields: FieldsOf<RootRollupPrivateInputs>) {
53
- return new RootRollupPrivateInputs(...RootRollupPrivateInputs.getFields(fields));
54
- }
55
-
56
- /**
57
- * Extracts fields from an instance.
58
- * @param fields - Fields to create the instance from.
59
- * @returns An array of fields.
60
- */
61
- static getFields(fields: FieldsOf<RootRollupPrivateInputs>) {
62
- return [fields.previousRollups] as const;
63
- }
64
-
65
- /**
66
- * Deserializes the inputs from a buffer.
67
- * @param buffer - A buffer to deserialize from.
68
- * @returns A new RootRollupPrivateInputs instance.
69
- */
70
- static fromBuffer(buffer: Buffer | BufferReader) {
71
- const reader = BufferReader.asReader(buffer);
72
- return new RootRollupPrivateInputs([
73
- ProofData.fromBuffer(reader, CheckpointRollupPublicInputs),
74
- ProofData.fromBuffer(reader, CheckpointRollupPublicInputs),
75
- ]);
76
- }
77
-
78
- /**
79
- * Deserializes the inputs from a hex string.
80
- * @param str - A hex string to deserialize from.
81
- * @returns A new RootRollupPrivateInputs instance.
82
- */
83
- static fromString(str: string) {
84
- return RootRollupPrivateInputs.fromBuffer(hexToBuffer(str));
85
- }
86
-
87
- /** Returns a representation for JSON serialization. */
88
- toJSON() {
89
- return this.toBuffer();
90
- }
91
-
92
- /** Creates an instance from a string. */
93
- static get schema() {
94
- return bufferSchemaFor(RootRollupPrivateInputs);
95
- }
96
- }
97
12
 
98
13
  /**
99
14
  * Represents public inputs of the root rollup circuit.
@@ -2,17 +2,18 @@ import { bufferSchemaFor } from '@aztec/foundation/schemas';
2
2
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
3
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
4
4
 
5
- import { PreviousRollupData } from './previous_rollup_data.js';
5
+ import { ProofData, type RollupHonkProofData } from '../proofs/proof_data.js';
6
+ import { TxRollupPublicInputs } from './tx_rollup_public_inputs.js';
6
7
 
7
8
  /**
8
9
  * Represents inputs of the merge rollup circuit.
9
10
  */
10
- export class MergeRollupInputs {
11
+ export class TxMergeRollupPrivateInputs {
11
12
  constructor(
12
13
  /**
13
14
  * Previous rollup data from the 2 merge or base rollup circuits that preceded this merge rollup circuit.
14
15
  */
15
- public previousRollupData: [PreviousRollupData, PreviousRollupData],
16
+ public previousRollups: [RollupHonkProofData<TxRollupPublicInputs>, RollupHonkProofData<TxRollupPublicInputs>],
16
17
  ) {}
17
18
 
18
19
  /**
@@ -20,7 +21,7 @@ export class MergeRollupInputs {
20
21
  * @returns The inputs serialized to a buffer.
21
22
  */
22
23
  toBuffer() {
23
- return serializeToBuffer(this.previousRollupData);
24
+ return serializeToBuffer(this.previousRollups);
24
25
  }
25
26
 
26
27
  /**
@@ -34,20 +35,23 @@ export class MergeRollupInputs {
34
35
  /**
35
36
  * Deserializes the inputs from a buffer.
36
37
  * @param buffer - The buffer to deserialize from.
37
- * @returns A new MergeRollupInputs instance.
38
+ * @returns A new TxMergeRollupPrivateInputs instance.
38
39
  */
39
40
  static fromBuffer(buffer: Buffer | BufferReader) {
40
41
  const reader = BufferReader.asReader(buffer);
41
- return new MergeRollupInputs([reader.readObject(PreviousRollupData), reader.readObject(PreviousRollupData)]);
42
+ return new TxMergeRollupPrivateInputs([
43
+ ProofData.fromBuffer(reader, TxRollupPublicInputs),
44
+ ProofData.fromBuffer(reader, TxRollupPublicInputs),
45
+ ]);
42
46
  }
43
47
 
44
48
  /**
45
49
  * Deserializes the inputs from a hex string.
46
50
  * @param str - A hex string to deserialize from.
47
- * @returns A new MergeRollupInputs instance.
51
+ * @returns A new TxMergeRollupPrivateInputs instance.
48
52
  */
49
53
  static fromString(str: string) {
50
- return MergeRollupInputs.fromBuffer(hexToBuffer(str));
54
+ return TxMergeRollupPrivateInputs.fromBuffer(hexToBuffer(str));
51
55
  }
52
56
 
53
57
  /** Returns a buffer representation for JSON serialization. */
@@ -57,6 +61,6 @@ export class MergeRollupInputs {
57
61
 
58
62
  /** Creates an instance from a string. */
59
63
  static get schema() {
60
- return bufferSchemaFor(MergeRollupInputs);
64
+ return bufferSchemaFor(TxMergeRollupPrivateInputs);
61
65
  }
62
66
  }
@@ -10,7 +10,7 @@ import { BlockConstantData } from './block_constant_data.js';
10
10
  /**
11
11
  * Output of the base and merge rollup circuits.
12
12
  */
13
- export class BaseOrMergeRollupPublicInputs {
13
+ export class TxRollupPublicInputs {
14
14
  constructor(
15
15
  /**
16
16
  * Number of txs in this rollup.
@@ -23,11 +23,11 @@ export class BaseOrMergeRollupPublicInputs {
23
23
  /**
24
24
  * Partial state reference at the start of the rollup circuit.
25
25
  */
26
- public start: PartialStateReference,
26
+ public startPartialState: PartialStateReference,
27
27
  /**
28
28
  * Partial state reference at the end of the rollup circuit.
29
29
  */
30
- public end: PartialStateReference,
30
+ public endPartialState: PartialStateReference,
31
31
  /**
32
32
  * Sponge state to absorb blob inputs at the start of the rollup circuit.
33
33
  */
@@ -53,7 +53,7 @@ export class BaseOrMergeRollupPublicInputs {
53
53
 
54
54
  /** Returns an empty instance. */
55
55
  static empty() {
56
- return new BaseOrMergeRollupPublicInputs(
56
+ return new TxRollupPublicInputs(
57
57
  0,
58
58
  BlockConstantData.empty(),
59
59
  PartialStateReference.empty(),
@@ -72,9 +72,9 @@ export class BaseOrMergeRollupPublicInputs {
72
72
  * @param buffer - Buffer or reader to read from.
73
73
  * @returns The deserialized public inputs.
74
74
  */
75
- static fromBuffer(buffer: Buffer | BufferReader): BaseOrMergeRollupPublicInputs {
75
+ static fromBuffer(buffer: Buffer | BufferReader): TxRollupPublicInputs {
76
76
  const reader = BufferReader.asReader(buffer);
77
- return new BaseOrMergeRollupPublicInputs(
77
+ return new TxRollupPublicInputs(
78
78
  reader.readNumber(),
79
79
  reader.readObject(BlockConstantData),
80
80
  reader.readObject(PartialStateReference),
@@ -96,8 +96,8 @@ export class BaseOrMergeRollupPublicInputs {
96
96
  this.numTxs,
97
97
  this.constants,
98
98
 
99
- this.start,
100
- this.end,
99
+ this.startPartialState,
100
+ this.endPartialState,
101
101
 
102
102
  this.startSpongeBlob,
103
103
  this.endSpongeBlob,
@@ -120,10 +120,10 @@ export class BaseOrMergeRollupPublicInputs {
120
120
  /**
121
121
  * Deserializes from a hex string.
122
122
  * @param str - A hex string to deserialize from.
123
- * @returns A new BaseOrMergeRollupPublicInputs instance.
123
+ * @returns A new TxRollupPublicInputs instance.
124
124
  */
125
125
  static fromString(str: string) {
126
- return BaseOrMergeRollupPublicInputs.fromBuffer(hexToBuffer(str));
126
+ return TxRollupPublicInputs.fromBuffer(hexToBuffer(str));
127
127
  }
128
128
 
129
129
  /** Returns a buffer representation for JSON serialization. */
@@ -133,6 +133,6 @@ export class BaseOrMergeRollupPublicInputs {
133
133
 
134
134
  /** Creates an instance from a hex string. */
135
135
  static get schema() {
136
- return bufferSchemaFor(BaseOrMergeRollupPublicInputs);
136
+ return bufferSchemaFor(TxRollupPublicInputs);
137
137
  }
138
138
  }
@@ -86,25 +86,26 @@ export type ClientCircuitName =
86
86
  | 'app-circuit';
87
87
 
88
88
  export type ServerCircuitName =
89
- | 'base-parity'
90
- | 'root-parity'
91
- | 'public-tube'
92
- | 'private-base-rollup'
93
- | 'public-base-rollup'
94
- | 'merge-rollup'
95
- | 'block-root-first-rollup'
96
- | 'block-root-single-tx-first-rollup'
97
- | 'block-root-empty-tx-first-rollup'
98
- | 'block-root-rollup'
99
- | 'block-root-single-tx-rollup'
100
- | 'block-merge-rollup'
101
- | 'checkpoint-root-rollup'
102
- | 'checkpoint-root-single-block-rollup'
103
- | 'checkpoint-padding-rollup'
104
- | 'checkpoint-merge-rollup'
105
- | 'root-rollup'
89
+ | 'parity-base'
90
+ | 'parity-root'
91
+ | 'tube-public'
92
+ | 'rollup-tx-base-private'
93
+ | 'rollup-tx-base-public'
94
+ | 'rollup-tx-merge'
95
+ | 'rollup-block-root-first'
96
+ | 'rollup-block-root-first-single-tx'
97
+ | 'rollup-block-root-first-empty-tx'
98
+ | 'rollup-block-root'
99
+ | 'rollup-block-root-single-tx'
100
+ | 'rollup-block-merge'
101
+ | 'rollup-checkpoint-root'
102
+ | 'rollup-checkpoint-root-single-block'
103
+ | 'rollup-checkpoint-padding'
104
+ | 'rollup-checkpoint-merge'
105
+ | 'rollup-root'
106
106
  | 'avm-circuit';
107
107
 
108
+ // Circuit names should match the corresponding names in noir-protocol-circuits.
108
109
  export type CircuitName = ClientCircuitName | ServerCircuitName;
109
110
 
110
111
  /** Stats for circuit simulation. */