@aztec/stdlib 6.0.0-nightly.20260810 → 6.0.0-nightly.20260821

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 (228) hide show
  1. package/dest/abi/abi.d.ts +4 -3
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +5 -1
  4. package/dest/abi/contract_artifact.d.ts +7 -2
  5. package/dest/abi/contract_artifact.d.ts.map +1 -1
  6. package/dest/abi/contract_artifact.js +18 -19
  7. package/dest/avm/avm.d.ts +3 -2
  8. package/dest/avm/avm.d.ts.map +1 -1
  9. package/dest/avm/avm.js +9 -3
  10. package/dest/avm/avm_proving_request.d.ts +70 -70
  11. package/dest/block/l2_block.d.ts +1 -2
  12. package/dest/block/l2_block.d.ts.map +1 -1
  13. package/dest/block/l2_block.js +2 -3
  14. package/dest/block/l2_block_source.d.ts +3 -6
  15. package/dest/block/l2_block_source.d.ts.map +1 -1
  16. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +11 -20
  17. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -1
  18. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +12 -116
  19. package/dest/checkpoint/checkpoint_data.d.ts +14 -2
  20. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  21. package/dest/checkpoint/checkpoint_data.js +2 -1
  22. package/dest/checkpoint/index.d.ts +2 -1
  23. package/dest/checkpoint/index.d.ts.map +1 -1
  24. package/dest/checkpoint/index.js +1 -0
  25. package/dest/checkpoint/previous_checkpoint_inbox_rolling_hash.d.ts +21 -0
  26. package/dest/checkpoint/previous_checkpoint_inbox_rolling_hash.d.ts.map +1 -0
  27. package/dest/checkpoint/previous_checkpoint_inbox_rolling_hash.js +34 -0
  28. package/dest/checkpoint/simulation_overrides.d.ts +2 -2
  29. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -1
  30. package/dest/checkpoint/simulation_overrides.js +11 -8
  31. package/dest/config/network-consensus-config.d.ts +4 -3
  32. package/dest/config/network-consensus-config.d.ts.map +1 -1
  33. package/dest/config/network-consensus-config.js +9 -4
  34. package/dest/config/node-rpc-config.d.ts +13 -1
  35. package/dest/config/node-rpc-config.d.ts.map +1 -1
  36. package/dest/config/node-rpc-config.js +34 -1
  37. package/dest/deserialization/index.d.ts +17 -17
  38. package/dest/deserialization/index.d.ts.map +1 -1
  39. package/dest/deserialization/index.js +18 -18
  40. package/dest/gas/gas_settings.d.ts +17 -5
  41. package/dest/gas/gas_settings.d.ts.map +1 -1
  42. package/dest/gas/gas_settings.js +4 -4
  43. package/dest/gas/tx_gas_limits.d.ts +3 -4
  44. package/dest/gas/tx_gas_limits.d.ts.map +1 -1
  45. package/dest/gas/tx_gas_limits.js +4 -5
  46. package/dest/interfaces/archiver.d.ts +2 -2
  47. package/dest/interfaces/archiver.d.ts.map +1 -1
  48. package/dest/interfaces/archiver.js +32 -5
  49. package/dest/interfaces/aztec-node-admin.d.ts +2 -1
  50. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  51. package/dest/interfaces/aztec-node.d.ts +22 -4
  52. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  53. package/dest/interfaces/aztec-node.js +11 -9
  54. package/dest/interfaces/block-builder.d.ts +11 -2
  55. package/dest/interfaces/block-builder.d.ts.map +1 -1
  56. package/dest/interfaces/configs.d.ts +7 -1
  57. package/dest/interfaces/configs.d.ts.map +1 -1
  58. package/dest/interfaces/configs.js +2 -1
  59. package/dest/interfaces/p2p.d.ts +18 -1
  60. package/dest/interfaces/p2p.d.ts.map +1 -1
  61. package/dest/interfaces/p2p.js +8 -0
  62. package/dest/interfaces/proving-job.d.ts +17 -42
  63. package/dest/interfaces/proving-job.d.ts.map +1 -1
  64. package/dest/interfaces/proving-job.js +16 -47
  65. package/dest/interfaces/server_circuit_prover.d.ts +8 -15
  66. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  67. package/dest/interfaces/validator.d.ts +7 -7
  68. package/dest/interfaces/validator.d.ts.map +1 -1
  69. package/dest/messaging/append_l1_to_l2_messages.d.ts +5 -5
  70. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -1
  71. package/dest/messaging/append_l1_to_l2_messages.js +4 -8
  72. package/dest/messaging/inbox_bucket.d.ts +77 -0
  73. package/dest/messaging/inbox_bucket.d.ts.map +1 -0
  74. package/dest/messaging/inbox_bucket.js +73 -0
  75. package/dest/messaging/inbox_consumption.d.ts +55 -0
  76. package/dest/messaging/inbox_consumption.d.ts.map +1 -0
  77. package/dest/messaging/inbox_consumption.js +53 -0
  78. package/dest/messaging/inbox_rolling_hash.d.ts +16 -0
  79. package/dest/messaging/inbox_rolling_hash.d.ts.map +1 -0
  80. package/dest/messaging/inbox_rolling_hash.js +23 -0
  81. package/dest/messaging/index.d.ts +6 -3
  82. package/dest/messaging/index.d.ts.map +1 -1
  83. package/dest/messaging/index.js +5 -2
  84. package/dest/messaging/l1_to_l2_message_bundle.d.ts +31 -0
  85. package/dest/messaging/l1_to_l2_message_bundle.d.ts.map +1 -0
  86. package/dest/messaging/l1_to_l2_message_bundle.js +51 -0
  87. package/dest/messaging/l1_to_l2_message_source.d.ts +44 -10
  88. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  89. package/dest/messaging/l1_to_l2_message_sponge.d.ts +40 -0
  90. package/dest/messaging/l1_to_l2_message_sponge.d.ts.map +1 -0
  91. package/dest/messaging/l1_to_l2_message_sponge.js +56 -0
  92. package/dest/noir/index.d.ts +3 -3
  93. package/dest/noir/index.d.ts.map +1 -1
  94. package/dest/p2p/block_proposal.d.ts +24 -9
  95. package/dest/p2p/block_proposal.d.ts.map +1 -1
  96. package/dest/p2p/block_proposal.js +42 -20
  97. package/dest/p2p/checkpoint_attestation.d.ts +1 -1
  98. package/dest/p2p/checkpoint_proposal.d.ts +13 -3
  99. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  100. package/dest/p2p/checkpoint_proposal.js +26 -8
  101. package/dest/p2p/consensus_payload.d.ts +1 -1
  102. package/dest/p2p/index.d.ts +2 -1
  103. package/dest/p2p/index.d.ts.map +1 -1
  104. package/dest/p2p/index.js +1 -0
  105. package/dest/p2p/validated_proposal.d.ts +35 -0
  106. package/dest/p2p/validated_proposal.d.ts.map +1 -0
  107. package/dest/p2p/validated_proposal.js +17 -0
  108. package/dest/p2p/wire_compat_fixtures.d.ts +7 -0
  109. package/dest/p2p/wire_compat_fixtures.d.ts.map +1 -0
  110. package/dest/p2p/wire_compat_fixtures.js +14 -0
  111. package/dest/parity/inbox_parity_private_inputs.d.ts +61 -0
  112. package/dest/parity/inbox_parity_private_inputs.d.ts.map +1 -0
  113. package/dest/parity/inbox_parity_private_inputs.js +79 -0
  114. package/dest/parity/index.d.ts +2 -3
  115. package/dest/parity/index.d.ts.map +1 -1
  116. package/dest/parity/index.js +1 -2
  117. package/dest/parity/parity_public_inputs.d.ts +15 -14
  118. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  119. package/dest/parity/parity_public_inputs.js +13 -15
  120. package/dest/proofs/proving_request_type.d.ts +11 -14
  121. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  122. package/dest/proofs/proving_request_type.js +10 -13
  123. package/dest/rollup/block_constant_data.d.ts +8 -8
  124. package/dest/rollup/block_constant_data.js +4 -4
  125. package/dest/rollup/block_rollup_public_inputs.d.ts +18 -6
  126. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  127. package/dest/rollup/block_rollup_public_inputs.js +14 -7
  128. package/dest/rollup/block_root_rollup_private_inputs.d.ts +109 -113
  129. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  130. package/dest/rollup/block_root_rollup_private_inputs.js +79 -130
  131. package/dest/rollup/checkpoint_header.d.ts +14 -6
  132. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  133. package/dest/rollup/checkpoint_header.js +18 -14
  134. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +22 -2
  135. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  136. package/dest/rollup/checkpoint_rollup_public_inputs.js +14 -3
  137. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +27 -6
  138. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  139. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +17 -4
  140. package/dest/rollup/root_rollup_public_inputs.d.ts +10 -2
  141. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  142. package/dest/rollup/root_rollup_public_inputs.js +9 -3
  143. package/dest/stats/stats.d.ts +2 -2
  144. package/dest/stats/stats.d.ts.map +1 -1
  145. package/dest/tests/factories.d.ts +7 -7
  146. package/dest/tests/factories.d.ts.map +1 -1
  147. package/dest/tests/factories.js +26 -22
  148. package/dest/tests/fixtures.d.ts +1 -1
  149. package/dest/tests/fixtures.d.ts.map +1 -1
  150. package/dest/tests/fixtures.js +2 -0
  151. package/dest/tests/mocks.d.ts +4 -2
  152. package/dest/tests/mocks.d.ts.map +1 -1
  153. package/dest/tests/mocks.js +4 -7
  154. package/dest/tx/state_reference.d.ts +5 -2
  155. package/dest/tx/state_reference.d.ts.map +1 -1
  156. package/dest/tx/state_reference.js +5 -5
  157. package/package.json +8 -8
  158. package/src/abi/abi.ts +7 -2
  159. package/src/abi/contract_artifact.ts +20 -23
  160. package/src/avm/avm.ts +11 -1
  161. package/src/block/l2_block.ts +2 -3
  162. package/src/block/l2_block_source.ts +2 -5
  163. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +17 -143
  164. package/src/checkpoint/checkpoint_data.ts +14 -1
  165. package/src/checkpoint/index.ts +1 -0
  166. package/src/checkpoint/previous_checkpoint_inbox_rolling_hash.ts +46 -0
  167. package/src/checkpoint/simulation_overrides.ts +11 -8
  168. package/src/config/network-consensus-config.ts +17 -4
  169. package/src/config/node-rpc-config.ts +51 -1
  170. package/src/deserialization/index.ts +18 -18
  171. package/src/gas/README.md +4 -3
  172. package/src/gas/gas_settings.ts +7 -3
  173. package/src/gas/tx_gas_limits.ts +4 -12
  174. package/src/interfaces/archiver.ts +19 -2
  175. package/src/interfaces/aztec-node.ts +33 -12
  176. package/src/interfaces/block-builder.ts +10 -1
  177. package/src/interfaces/configs.ts +6 -0
  178. package/src/interfaces/p2p.ts +21 -0
  179. package/src/interfaces/proving-job.ts +19 -70
  180. package/src/interfaces/server_circuit_prover.ts +13 -37
  181. package/src/interfaces/validator.ts +6 -5
  182. package/src/kernel/private_kernel_reset_dimensions.ts +1 -1
  183. package/src/messaging/append_l1_to_l2_messages.ts +5 -13
  184. package/src/messaging/inbox_bucket.ts +125 -0
  185. package/src/messaging/inbox_consumption.ts +74 -0
  186. package/src/messaging/inbox_rolling_hash.ts +24 -0
  187. package/src/messaging/index.ts +5 -2
  188. package/src/messaging/l1_to_l2_message_bundle.ts +65 -0
  189. package/src/messaging/l1_to_l2_message_source.ts +48 -10
  190. package/src/messaging/l1_to_l2_message_sponge.ts +69 -0
  191. package/src/noir/index.ts +1 -2
  192. package/src/p2p/block_proposal.ts +41 -28
  193. package/src/p2p/checkpoint_proposal.ts +31 -6
  194. package/src/p2p/index.ts +1 -0
  195. package/src/p2p/validated_proposal.ts +43 -0
  196. package/src/p2p/wire_compat_fixtures.ts +23 -0
  197. package/src/parity/inbox_parity_private_inputs.ts +116 -0
  198. package/src/parity/index.ts +1 -2
  199. package/src/parity/parity_public_inputs.ts +12 -14
  200. package/src/proofs/proving_request_type.ts +2 -5
  201. package/src/rollup/block_constant_data.ts +4 -4
  202. package/src/rollup/block_rollup_public_inputs.ts +14 -5
  203. package/src/rollup/block_root_rollup_private_inputs.ts +117 -153
  204. package/src/rollup/checkpoint_header.ts +17 -13
  205. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -0
  206. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +16 -3
  207. package/src/rollup/root_rollup_public_inputs.ts +10 -0
  208. package/src/stats/stats.ts +4 -5
  209. package/src/tests/factories.ts +38 -32
  210. package/src/tests/fixtures.ts +3 -0
  211. package/src/tests/mocks.ts +6 -7
  212. package/src/tx/state_reference.ts +5 -12
  213. package/dest/messaging/in_hash.d.ts +0 -6
  214. package/dest/messaging/in_hash.d.ts.map +0 -1
  215. package/dest/messaging/in_hash.js +0 -10
  216. package/dest/messaging/inbox_leaf.d.ts +0 -25
  217. package/dest/messaging/inbox_leaf.d.ts.map +0 -1
  218. package/dest/messaging/inbox_leaf.js +0 -42
  219. package/dest/parity/parity_base_private_inputs.d.ts +0 -39
  220. package/dest/parity/parity_base_private_inputs.d.ts.map +0 -1
  221. package/dest/parity/parity_base_private_inputs.js +0 -51
  222. package/dest/parity/parity_root_private_inputs.d.ts +0 -39
  223. package/dest/parity/parity_root_private_inputs.d.ts.map +0 -1
  224. package/dest/parity/parity_root_private_inputs.js +0 -46
  225. package/src/messaging/in_hash.ts +0 -12
  226. package/src/messaging/inbox_leaf.ts +0 -44
  227. package/src/parity/parity_base_private_inputs.ts +0 -71
  228. package/src/parity/parity_root_private_inputs.ts +0 -64
@@ -2,25 +2,23 @@ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
+ import { L1ToL2MessageSponge } from '../messaging/l1_to_l2_message_sponge.js';
5
6
  export class ParityPublicInputs {
6
- shaRoot;
7
- convertedRoot;
8
- vkTreeRoot;
7
+ startRollingHash;
8
+ endRollingHash;
9
+ endSponge;
9
10
  proverId;
10
- constructor(/** Root of the SHA256 tree. */ shaRoot, /** Root of the converted tree. */ convertedRoot, /** Root of the VK tree */ vkTreeRoot, /** Prover identity committed to by the circuit, for sybil protection. */ proverId){
11
- this.shaRoot = shaRoot;
12
- this.convertedRoot = convertedRoot;
13
- this.vkTreeRoot = vkTreeRoot;
11
+ constructor(/** Inbox rolling hash before absorbing this checkpoint's messages. */ startRollingHash, /** Inbox rolling hash after absorbing the checkpoint's real messages. */ endRollingHash, /** Message-bundle sponge after absorbing the same real messages into the empty per-checkpoint sponge. */ endSponge, /** Prover identity committed to by the circuit, for sybil protection. */ proverId){
12
+ this.startRollingHash = startRollingHash;
13
+ this.endRollingHash = endRollingHash;
14
+ this.endSponge = endSponge;
14
15
  this.proverId = proverId;
15
- if (shaRoot.toBuffer()[0] != 0) {
16
- throw new Error(`shaRoot buffer must be 31 bytes. Got 32 bytes`);
17
- }
18
16
  }
19
17
  /**
20
18
  * Serializes the inputs to a buffer.
21
19
  * @returns The inputs serialized to a buffer.
22
20
  */ toBuffer() {
23
- return serializeToBuffer(...ParityPublicInputs.getFields(this));
21
+ return serializeToBuffer(this.startRollingHash, this.endRollingHash, this.endSponge, this.proverId);
24
22
  }
25
23
  /**
26
24
  * Serializes the inputs to a hex string.
@@ -44,9 +42,9 @@ export class ParityPublicInputs {
44
42
  * @returns The instance fields.
45
43
  */ static getFields(fields) {
46
44
  return [
47
- fields.shaRoot,
48
- fields.convertedRoot,
49
- fields.vkTreeRoot,
45
+ fields.startRollingHash,
46
+ fields.endRollingHash,
47
+ fields.endSponge,
50
48
  fields.proverId
51
49
  ];
52
50
  }
@@ -56,7 +54,7 @@ export class ParityPublicInputs {
56
54
  * @returns A new ParityPublicInputs instance.
57
55
  */ static fromBuffer(buffer) {
58
56
  const reader = BufferReader.asReader(buffer);
59
- return new ParityPublicInputs(reader.readObject(Fr), reader.readObject(Fr), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
57
+ return new ParityPublicInputs(reader.readObject(Fr), reader.readObject(Fr), reader.readObject(L1ToL2MessageSponge), Fr.fromBuffer(reader));
60
58
  }
61
59
  /**
62
60
  * Deserializes the inputs from a hex string.
@@ -4,18 +4,15 @@ export declare enum ProvingRequestType {
4
4
  PRIVATE_TX_BASE_ROLLUP = 2,
5
5
  PUBLIC_TX_BASE_ROLLUP = 3,
6
6
  TX_MERGE_ROLLUP = 4,
7
- BLOCK_ROOT_FIRST_ROLLUP = 5,
8
- BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP = 6,
9
- BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP = 7,
10
- BLOCK_ROOT_ROLLUP = 8,
11
- BLOCK_ROOT_SINGLE_TX_ROLLUP = 9,
12
- BLOCK_MERGE_ROLLUP = 10,
13
- CHECKPOINT_ROOT_ROLLUP = 11,
14
- CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP = 12,
15
- CHECKPOINT_PADDING_ROLLUP = 13,
16
- CHECKPOINT_MERGE_ROLLUP = 14,
17
- ROOT_ROLLUP = 15,
18
- PARITY_BASE = 16,
19
- PARITY_ROOT = 17
7
+ BLOCK_ROOT_ROLLUP = 5,
8
+ BLOCK_ROOT_SINGLE_TX_ROLLUP = 6,
9
+ BLOCK_ROOT_NO_TXS_ROLLUP = 7,
10
+ BLOCK_MERGE_ROLLUP = 8,
11
+ CHECKPOINT_ROOT_ROLLUP = 9,
12
+ CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP = 10,
13
+ CHECKPOINT_PADDING_ROLLUP = 11,
14
+ CHECKPOINT_MERGE_ROLLUP = 12,
15
+ ROOT_ROLLUP = 13,
16
+ INBOX_PARITY = 14
20
17
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19yZXF1ZXN0X3R5cGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9vZnMvcHJvdmluZ19yZXF1ZXN0X3R5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQVksa0JBQWtCO0lBQzVCLFNBQVMsSUFBQTtJQUNULHFCQUFxQixJQUFBO0lBRXJCLHNCQUFzQixJQUFBO0lBQ3RCLHFCQUFxQixJQUFBO0lBQ3JCLGVBQWUsSUFBQTtJQUNmLHVCQUF1QixJQUFBO0lBQ3ZCLGlDQUFpQyxJQUFBO0lBQ2pDLGdDQUFnQyxJQUFBO0lBQ2hDLGlCQUFpQixJQUFBO0lBQ2pCLDJCQUEyQixJQUFBO0lBQzNCLGtCQUFrQixLQUFBO0lBQ2xCLHNCQUFzQixLQUFBO0lBQ3RCLG1DQUFtQyxLQUFBO0lBQ25DLHlCQUF5QixLQUFBO0lBQ3pCLHVCQUF1QixLQUFBO0lBQ3ZCLFdBQVcsS0FBQTtJQUVYLFdBQVcsS0FBQTtJQUNYLFdBQVcsS0FBQTtDQUNaIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmluZ19yZXF1ZXN0X3R5cGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9vZnMvcHJvdmluZ19yZXF1ZXN0X3R5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQVksa0JBQWtCO0lBQzVCLFNBQVMsSUFBQTtJQUNULHFCQUFxQixJQUFBO0lBRXJCLHNCQUFzQixJQUFBO0lBQ3RCLHFCQUFxQixJQUFBO0lBQ3JCLGVBQWUsSUFBQTtJQUNmLGlCQUFpQixJQUFBO0lBQ2pCLDJCQUEyQixJQUFBO0lBQzNCLHdCQUF3QixJQUFBO0lBQ3hCLGtCQUFrQixJQUFBO0lBQ2xCLHNCQUFzQixJQUFBO0lBQ3RCLG1DQUFtQyxLQUFBO0lBQ25DLHlCQUF5QixLQUFBO0lBQ3pCLHVCQUF1QixLQUFBO0lBQ3ZCLFdBQVcsS0FBQTtJQUVYLFlBQVksS0FBQTtDQUNiIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"proving_request_type.d.ts","sourceRoot":"","sources":["../../src/proofs/proving_request_type.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB;IAC5B,SAAS,IAAA;IACT,qBAAqB,IAAA;IAErB,sBAAsB,IAAA;IACtB,qBAAqB,IAAA;IACrB,eAAe,IAAA;IACf,uBAAuB,IAAA;IACvB,iCAAiC,IAAA;IACjC,gCAAgC,IAAA;IAChC,iBAAiB,IAAA;IACjB,2BAA2B,IAAA;IAC3B,kBAAkB,KAAA;IAClB,sBAAsB,KAAA;IACtB,mCAAmC,KAAA;IACnC,yBAAyB,KAAA;IACzB,uBAAuB,KAAA;IACvB,WAAW,KAAA;IAEX,WAAW,KAAA;IACX,WAAW,KAAA;CACZ"}
1
+ {"version":3,"file":"proving_request_type.d.ts","sourceRoot":"","sources":["../../src/proofs/proving_request_type.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB;IAC5B,SAAS,IAAA;IACT,qBAAqB,IAAA;IAErB,sBAAsB,IAAA;IACtB,qBAAqB,IAAA;IACrB,eAAe,IAAA;IACf,iBAAiB,IAAA;IACjB,2BAA2B,IAAA;IAC3B,wBAAwB,IAAA;IACxB,kBAAkB,IAAA;IAClB,sBAAsB,IAAA;IACtB,mCAAmC,KAAA;IACnC,yBAAyB,KAAA;IACzB,uBAAuB,KAAA;IACvB,WAAW,KAAA;IAEX,YAAY,KAAA;CACb"}
@@ -4,18 +4,15 @@ export var ProvingRequestType = /*#__PURE__*/ function(ProvingRequestType) {
4
4
  ProvingRequestType[ProvingRequestType["PRIVATE_TX_BASE_ROLLUP"] = 2] = "PRIVATE_TX_BASE_ROLLUP";
5
5
  ProvingRequestType[ProvingRequestType["PUBLIC_TX_BASE_ROLLUP"] = 3] = "PUBLIC_TX_BASE_ROLLUP";
6
6
  ProvingRequestType[ProvingRequestType["TX_MERGE_ROLLUP"] = 4] = "TX_MERGE_ROLLUP";
7
- ProvingRequestType[ProvingRequestType["BLOCK_ROOT_FIRST_ROLLUP"] = 5] = "BLOCK_ROOT_FIRST_ROLLUP";
8
- ProvingRequestType[ProvingRequestType["BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP"] = 6] = "BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP";
9
- ProvingRequestType[ProvingRequestType["BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP"] = 7] = "BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP";
10
- ProvingRequestType[ProvingRequestType["BLOCK_ROOT_ROLLUP"] = 8] = "BLOCK_ROOT_ROLLUP";
11
- ProvingRequestType[ProvingRequestType["BLOCK_ROOT_SINGLE_TX_ROLLUP"] = 9] = "BLOCK_ROOT_SINGLE_TX_ROLLUP";
12
- ProvingRequestType[ProvingRequestType["BLOCK_MERGE_ROLLUP"] = 10] = "BLOCK_MERGE_ROLLUP";
13
- ProvingRequestType[ProvingRequestType["CHECKPOINT_ROOT_ROLLUP"] = 11] = "CHECKPOINT_ROOT_ROLLUP";
14
- ProvingRequestType[ProvingRequestType["CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP"] = 12] = "CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP";
15
- ProvingRequestType[ProvingRequestType["CHECKPOINT_PADDING_ROLLUP"] = 13] = "CHECKPOINT_PADDING_ROLLUP";
16
- ProvingRequestType[ProvingRequestType["CHECKPOINT_MERGE_ROLLUP"] = 14] = "CHECKPOINT_MERGE_ROLLUP";
17
- ProvingRequestType[ProvingRequestType["ROOT_ROLLUP"] = 15] = "ROOT_ROLLUP";
18
- ProvingRequestType[ProvingRequestType["PARITY_BASE"] = 16] = "PARITY_BASE";
19
- ProvingRequestType[ProvingRequestType["PARITY_ROOT"] = 17] = "PARITY_ROOT";
7
+ ProvingRequestType[ProvingRequestType["BLOCK_ROOT_ROLLUP"] = 5] = "BLOCK_ROOT_ROLLUP";
8
+ ProvingRequestType[ProvingRequestType["BLOCK_ROOT_SINGLE_TX_ROLLUP"] = 6] = "BLOCK_ROOT_SINGLE_TX_ROLLUP";
9
+ ProvingRequestType[ProvingRequestType["BLOCK_ROOT_NO_TXS_ROLLUP"] = 7] = "BLOCK_ROOT_NO_TXS_ROLLUP";
10
+ ProvingRequestType[ProvingRequestType["BLOCK_MERGE_ROLLUP"] = 8] = "BLOCK_MERGE_ROLLUP";
11
+ ProvingRequestType[ProvingRequestType["CHECKPOINT_ROOT_ROLLUP"] = 9] = "CHECKPOINT_ROOT_ROLLUP";
12
+ ProvingRequestType[ProvingRequestType["CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP"] = 10] = "CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP";
13
+ ProvingRequestType[ProvingRequestType["CHECKPOINT_PADDING_ROLLUP"] = 11] = "CHECKPOINT_PADDING_ROLLUP";
14
+ ProvingRequestType[ProvingRequestType["CHECKPOINT_MERGE_ROLLUP"] = 12] = "CHECKPOINT_MERGE_ROLLUP";
15
+ ProvingRequestType[ProvingRequestType["ROOT_ROLLUP"] = 13] = "ROOT_ROLLUP";
16
+ ProvingRequestType[ProvingRequestType["INBOX_PARITY"] = 14] = "INBOX_PARITY";
20
17
  return ProvingRequestType;
21
18
  }({});
@@ -10,10 +10,10 @@ export declare class BlockConstantData {
10
10
  /** Archive tree snapshot at the very beginning of the entire rollup. */
11
11
  lastArchive: AppendOnlyTreeSnapshot;
12
12
  /**
13
- * L1-to-L2 message tree snapshot after this block lands.
14
- * For the first block in a checkpoint, this should be the snapshot after inserting the new l1-to-l2 message subtree
15
- * into the last l1-to-l2 tree snapshot in `last_archive`.
16
- * For subsequent blocks, this should match the snapshot of the previous block.
13
+ * L1-to-L2 message tree snapshot after this block's own message bundle has been inserted. The AVM validates this
14
+ * block's l1-to-l2 message read requests against it, so a tx in this block can read the messages this block
15
+ * inserts (same-block consumption). Every block-root variant that carries txs asserts this equals its computed
16
+ * post-bundle root, whether or not the block is the first in its checkpoint.
17
17
  */
18
18
  l1ToL2TreeSnapshot: AppendOnlyTreeSnapshot;
19
19
  /** Root of the verification key tree. */
@@ -28,10 +28,10 @@ export declare class BlockConstantData {
28
28
  /** Archive tree snapshot at the very beginning of the entire rollup. */
29
29
  lastArchive: AppendOnlyTreeSnapshot,
30
30
  /**
31
- * L1-to-L2 message tree snapshot after this block lands.
32
- * For the first block in a checkpoint, this should be the snapshot after inserting the new l1-to-l2 message subtree
33
- * into the last l1-to-l2 tree snapshot in `last_archive`.
34
- * For subsequent blocks, this should match the snapshot of the previous block.
31
+ * L1-to-L2 message tree snapshot after this block's own message bundle has been inserted. The AVM validates this
32
+ * block's l1-to-l2 message read requests against it, so a tx in this block can read the messages this block
33
+ * inserts (same-block consumption). Every block-root variant that carries txs asserts this equals its computed
34
+ * post-bundle root, whether or not the block is the first in its checkpoint.
35
35
  */
36
36
  l1ToL2TreeSnapshot: AppendOnlyTreeSnapshot,
37
37
  /** Root of the verification key tree. */
@@ -12,10 +12,10 @@ import { GlobalVariables } from '../tx/global_variables.js';
12
12
  globalVariables;
13
13
  proverId;
14
14
  constructor(/** Archive tree snapshot at the very beginning of the entire rollup. */ lastArchive, /**
15
- * L1-to-L2 message tree snapshot after this block lands.
16
- * For the first block in a checkpoint, this should be the snapshot after inserting the new l1-to-l2 message subtree
17
- * into the last l1-to-l2 tree snapshot in `last_archive`.
18
- * For subsequent blocks, this should match the snapshot of the previous block.
15
+ * L1-to-L2 message tree snapshot after this block's own message bundle has been inserted. The AVM validates this
16
+ * block's l1-to-l2 message read requests against it, so a tx in this block can read the messages this block
17
+ * inserts (same-block consumption). Every block-root variant that carries txs asserts this equals its computed
18
+ * post-bundle root, whether or not the block is the first in its checkpoint.
19
19
  */ l1ToL2TreeSnapshot, /** Root of the verification key tree. */ vkTreeRoot, /** Hash of the protocol contracts list. */ protocolContractsHash, /** Global variables for the block. */ globalVariables, /** Identifier of the prover. */ proverId){
20
20
  this.lastArchive = lastArchive;
21
21
  this.l1ToL2TreeSnapshot = l1ToL2TreeSnapshot;
@@ -1,6 +1,7 @@
1
1
  import { SpongeBlob } from '@aztec/blob-lib/types';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader } from '@aztec/foundation/serialize';
4
+ import { L1ToL2MessageSponge } from '../messaging/l1_to_l2_message_sponge.js';
4
5
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
5
6
  import { StateReference } from '../tx/state_reference.js';
6
7
  import type { UInt64 } from '../types/shared.js';
@@ -48,9 +49,14 @@ export declare class BlockRollupPublicInputs {
48
49
  */
49
50
  blockHeadersHash: Fr;
50
51
  /**
51
- * SHA256 hash of l1 to l2 messages.
52
+ * Message-bundle sponge threaded across the checkpoint's blocks, before this block range absorbs its bundle.
52
53
  */
53
- inHash: Fr;
54
+ startMsgSponge: L1ToL2MessageSponge;
55
+ /**
56
+ * Message-bundle sponge after this block range absorbs its bundle. The checkpoint root asserts the final value
57
+ * matches the parity root's sponge over the same (padded) message list.
58
+ */
59
+ endMsgSponge: L1ToL2MessageSponge;
54
60
  /**
55
61
  * SHA256 hash of L2 to L1 messages created in this block range.
56
62
  */
@@ -103,9 +109,14 @@ export declare class BlockRollupPublicInputs {
103
109
  */
104
110
  blockHeadersHash: Fr,
105
111
  /**
106
- * SHA256 hash of l1 to l2 messages.
112
+ * Message-bundle sponge threaded across the checkpoint's blocks, before this block range absorbs its bundle.
113
+ */
114
+ startMsgSponge: L1ToL2MessageSponge,
115
+ /**
116
+ * Message-bundle sponge after this block range absorbs its bundle. The checkpoint root asserts the final value
117
+ * matches the parity root's sponge over the same (padded) message list.
107
118
  */
108
- inHash: Fr,
119
+ endMsgSponge: L1ToL2MessageSponge,
109
120
  /**
110
121
  * SHA256 hash of L2 to L1 messages created in this block range.
111
122
  */
@@ -127,7 +138,8 @@ export declare class BlockRollupPublicInputs {
127
138
  previousArchiveRoot: `0x${string}`;
128
139
  newArchiveRoot: `0x${string}`;
129
140
  blockHeadersHash: `0x${string}`;
130
- inHash: `0x${string}`;
141
+ startMsgSpongeNumAbsorbed: number;
142
+ endMsgSpongeNumAbsorbed: number;
131
143
  outHash: `0x${string}`;
132
144
  timestamp: string;
133
145
  accumulatedFees: `0x${string}`;
@@ -135,4 +147,4 @@ export declare class BlockRollupPublicInputs {
135
147
  };
136
148
  static get schema(): import("zod").ZodType<BlockRollupPublicInputs, string, import("zod/v4/core").$ZodTypeInternals<BlockRollupPublicInputs, string>>;
137
149
  }
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfcm9sbHVwX3B1YmxpY19pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb2xsdXAvYmxvY2tfcm9sbHVwX3B1YmxpY19pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUF1QyxNQUFNLDZCQUE2QixDQUFDO0FBR2hHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RTs7R0FFRztBQUNILHFCQUFhLHVCQUF1QjtJQUVoQzs7T0FFRztJQUNJLFNBQVMsRUFBRSxzQkFBc0I7SUFDeEM7O09BRUc7SUFDSSxlQUFlLEVBQUUsc0JBQXNCO0lBQzlDOztPQUVHO0lBQ0ksVUFBVSxFQUFFLHNCQUFzQjtJQUN6Qzs7T0FFRztJQUNJLFVBQVUsRUFBRSxjQUFjO0lBQ2pDOztPQUVHO0lBQ0ksUUFBUSxFQUFFLGNBQWM7SUFDL0I7O09BRUc7SUFDSSxlQUFlLEVBQUUsVUFBVTtJQUNsQzs7T0FFRztJQUNJLGFBQWEsRUFBRSxVQUFVO0lBQ2hDOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU07SUFDeEI7Ozs7T0FJRztJQUNJLGdCQUFnQixFQUFFLEVBQUU7SUFDM0I7O09BRUc7SUFDSSxNQUFNLEVBQUUsRUFBRTtJQUNqQjs7T0FFRztJQUNJLE9BQU8sRUFBRSxFQUFFO0lBQ2xCOztPQUVHO0lBQ0ksZUFBZSxFQUFFLEVBQUU7SUFDMUI7O09BRUc7SUFDSSxtQkFBbUIsRUFBRSxFQUFFO0lBdERoQztJQUNFOztPQUVHO0lBQ0ksU0FBUyxFQUFFLHNCQUFzQjtJQUN4Qzs7T0FFRztJQUNJLGVBQWUsRUFBRSxzQkFBc0I7SUFDOUM7O09BRUc7SUFDSSxVQUFVLEVBQUUsc0JBQXNCO0lBQ3pDOztPQUVHO0lBQ0ksVUFBVSxFQUFFLGNBQWM7SUFDakM7O09BRUc7SUFDSSxRQUFRLEVBQUUsY0FBYztJQUMvQjs7T0FFRztJQUNJLGVBQWUsRUFBRSxVQUFVO0lBQ2xDOztPQUVHO0lBQ0ksYUFBYSxFQUFFLFVBQVU7SUFDaEM7O09BRUc7SUFDSSxTQUFTLEVBQUUsTUFBTTtJQUN4Qjs7OztPQUlHO0lBQ0ksZ0JBQWdCLEVBQUUsRUFBRTtJQUMzQjs7T0FFRztJQUNJLE1BQU0sRUFBRSxFQUFFO0lBQ2pCOztPQUVHO0lBQ0ksT0FBTyxFQUFFLEVBQUU7SUFDbEI7O09BRUc7SUFDSSxlQUFlLEVBQUUsRUFBRTtJQUMxQjs7T0FFRztJQUNJLG1CQUFtQixFQUFFLEVBQUUsRUFDNUI7SUFFSixNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLHVCQUF1QixDQWlCeEU7SUFFRCxRQUFRLDRCQWdCUDtJQUVELFFBQVEsa0JBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLDJCQUU1QjtJQUVELE1BQU0sNEJBRUw7SUFFRCxTQUFTOzs7Ozs7Ozs7TUFXUjtJQUVELE1BQU0sS0FBSyxNQUFNLHFJQUVoQjtDQUNGIn0=
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfcm9sbHVwX3B1YmxpY19pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb2xsdXAvYmxvY2tfcm9sbHVwX3B1YmxpY19pbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUF1QyxNQUFNLDZCQUE2QixDQUFDO0FBR2hHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RTs7R0FFRztBQUNILHFCQUFhLHVCQUF1QjtJQUVoQzs7T0FFRztJQUNJLFNBQVMsRUFBRSxzQkFBc0I7SUFDeEM7O09BRUc7SUFDSSxlQUFlLEVBQUUsc0JBQXNCO0lBQzlDOztPQUVHO0lBQ0ksVUFBVSxFQUFFLHNCQUFzQjtJQUN6Qzs7T0FFRztJQUNJLFVBQVUsRUFBRSxjQUFjO0lBQ2pDOztPQUVHO0lBQ0ksUUFBUSxFQUFFLGNBQWM7SUFDL0I7O09BRUc7SUFDSSxlQUFlLEVBQUUsVUFBVTtJQUNsQzs7T0FFRztJQUNJLGFBQWEsRUFBRSxVQUFVO0lBQ2hDOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU07SUFDeEI7Ozs7T0FJRztJQUNJLGdCQUFnQixFQUFFLEVBQUU7SUFDM0I7O09BRUc7SUFDSSxjQUFjLEVBQUUsbUJBQW1CO0lBQzFDOzs7T0FHRztJQUNJLFlBQVksRUFBRSxtQkFBbUI7SUFDeEM7O09BRUc7SUFDSSxPQUFPLEVBQUUsRUFBRTtJQUNsQjs7T0FFRztJQUNJLGVBQWUsRUFBRSxFQUFFO0lBQzFCOztPQUVHO0lBQ0ksbUJBQW1CLEVBQUUsRUFBRTtJQTNEaEM7SUFDRTs7T0FFRztJQUNJLFNBQVMsRUFBRSxzQkFBc0I7SUFDeEM7O09BRUc7SUFDSSxlQUFlLEVBQUUsc0JBQXNCO0lBQzlDOztPQUVHO0lBQ0ksVUFBVSxFQUFFLHNCQUFzQjtJQUN6Qzs7T0FFRztJQUNJLFVBQVUsRUFBRSxjQUFjO0lBQ2pDOztPQUVHO0lBQ0ksUUFBUSxFQUFFLGNBQWM7SUFDL0I7O09BRUc7SUFDSSxlQUFlLEVBQUUsVUFBVTtJQUNsQzs7T0FFRztJQUNJLGFBQWEsRUFBRSxVQUFVO0lBQ2hDOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU07SUFDeEI7Ozs7T0FJRztJQUNJLGdCQUFnQixFQUFFLEVBQUU7SUFDM0I7O09BRUc7SUFDSSxjQUFjLEVBQUUsbUJBQW1CO0lBQzFDOzs7T0FHRztJQUNJLFlBQVksRUFBRSxtQkFBbUI7SUFDeEM7O09BRUc7SUFDSSxPQUFPLEVBQUUsRUFBRTtJQUNsQjs7T0FFRztJQUNJLGVBQWUsRUFBRSxFQUFFO0lBQzFCOztPQUVHO0lBQ0ksbUJBQW1CLEVBQUUsRUFBRSxFQUM1QjtJQUVKLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsdUJBQXVCLENBa0J4RTtJQUVELFFBQVEsNEJBaUJQO0lBRUQsUUFBUSxrQkFFUDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sMkJBRTVCO0lBRUQsTUFBTSw0QkFFTDtJQUVELFNBQVM7Ozs7Ozs7Ozs7TUFZUjtJQUVELE1BQU0sS0FBSyxNQUFNLHFJQUVoQjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"block_rollup_public_inputs.d.ts","sourceRoot":"","sources":["../../src/rollup/block_rollup_public_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAuC,MAAM,6BAA6B,CAAC;AAGhG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;GAEG;AACH,qBAAa,uBAAuB;IAEhC;;OAEG;IACI,SAAS,EAAE,sBAAsB;IACxC;;OAEG;IACI,eAAe,EAAE,sBAAsB;IAC9C;;OAEG;IACI,UAAU,EAAE,sBAAsB;IACzC;;OAEG;IACI,UAAU,EAAE,cAAc;IACjC;;OAEG;IACI,QAAQ,EAAE,cAAc;IAC/B;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;OAEG;IACI,SAAS,EAAE,MAAM;IACxB;;;;OAIG;IACI,gBAAgB,EAAE,EAAE;IAC3B;;OAEG;IACI,MAAM,EAAE,EAAE;IACjB;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE;IAtDhC;IACE;;OAEG;IACI,SAAS,EAAE,sBAAsB;IACxC;;OAEG;IACI,eAAe,EAAE,sBAAsB;IAC9C;;OAEG;IACI,UAAU,EAAE,sBAAsB;IACzC;;OAEG;IACI,UAAU,EAAE,cAAc;IACjC;;OAEG;IACI,QAAQ,EAAE,cAAc;IAC/B;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;OAEG;IACI,SAAS,EAAE,MAAM;IACxB;;;;OAIG;IACI,gBAAgB,EAAE,EAAE;IAC3B;;OAEG;IACI,MAAM,EAAE,EAAE;IACjB;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE,EAC5B;IAEJ,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,uBAAuB,CAiBxE;IAED,QAAQ,4BAgBP;IAED,QAAQ,kBAEP;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,2BAE5B;IAED,MAAM,4BAEL;IAED,SAAS;;;;;;;;;MAWR;IAED,MAAM,KAAK,MAAM,qIAEhB;CACF"}
1
+ {"version":3,"file":"block_rollup_public_inputs.d.ts","sourceRoot":"","sources":["../../src/rollup/block_rollup_public_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAuC,MAAM,6BAA6B,CAAC;AAGhG,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;GAEG;AACH,qBAAa,uBAAuB;IAEhC;;OAEG;IACI,SAAS,EAAE,sBAAsB;IACxC;;OAEG;IACI,eAAe,EAAE,sBAAsB;IAC9C;;OAEG;IACI,UAAU,EAAE,sBAAsB;IACzC;;OAEG;IACI,UAAU,EAAE,cAAc;IACjC;;OAEG;IACI,QAAQ,EAAE,cAAc;IAC/B;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;OAEG;IACI,SAAS,EAAE,MAAM;IACxB;;;;OAIG;IACI,gBAAgB,EAAE,EAAE;IAC3B;;OAEG;IACI,cAAc,EAAE,mBAAmB;IAC1C;;;OAGG;IACI,YAAY,EAAE,mBAAmB;IACxC;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE;IA3DhC;IACE;;OAEG;IACI,SAAS,EAAE,sBAAsB;IACxC;;OAEG;IACI,eAAe,EAAE,sBAAsB;IAC9C;;OAEG;IACI,UAAU,EAAE,sBAAsB;IACzC;;OAEG;IACI,UAAU,EAAE,cAAc;IACjC;;OAEG;IACI,QAAQ,EAAE,cAAc;IAC/B;;OAEG;IACI,eAAe,EAAE,UAAU;IAClC;;OAEG;IACI,aAAa,EAAE,UAAU;IAChC;;OAEG;IACI,SAAS,EAAE,MAAM;IACxB;;;;OAIG;IACI,gBAAgB,EAAE,EAAE;IAC3B;;OAEG;IACI,cAAc,EAAE,mBAAmB;IAC1C;;;OAGG;IACI,YAAY,EAAE,mBAAmB;IACxC;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,eAAe,EAAE,EAAE;IAC1B;;OAEG;IACI,mBAAmB,EAAE,EAAE,EAC5B;IAEJ,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,uBAAuB,CAkBxE;IAED,QAAQ,4BAiBP;IAED,QAAQ,kBAEP;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,2BAE5B;IAED,MAAM,4BAEL;IAED,SAAS;;;;;;;;;;MAYR;IAED,MAAM,KAAK,MAAM,qIAEhB;CACF"}
@@ -3,6 +3,7 @@ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
4
4
  import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
6
+ import { L1ToL2MessageSponge } from '../messaging/l1_to_l2_message_sponge.js';
6
7
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
7
8
  import { StateReference } from '../tx/state_reference.js';
8
9
  import { CheckpointConstantData } from './checkpoint_constant_data.js';
@@ -18,7 +19,8 @@ import { CheckpointConstantData } from './checkpoint_constant_data.js';
18
19
  endSpongeBlob;
19
20
  timestamp;
20
21
  blockHeadersHash;
21
- inHash;
22
+ startMsgSponge;
23
+ endMsgSponge;
22
24
  outHash;
23
25
  accumulatedFees;
24
26
  accumulatedManaUsed;
@@ -43,8 +45,11 @@ import { CheckpointConstantData } from './checkpoint_constant_data.js';
43
45
  * other blocks in the same checkpoint to form an unbalanced tree. The root of that tree becomes the final hash
44
46
  * stored in the checkpoint header, enabling validation of the blocks included in a checkpoint given their headers.
45
47
  */ blockHeadersHash, /**
46
- * SHA256 hash of l1 to l2 messages.
47
- */ inHash, /**
48
+ * Message-bundle sponge threaded across the checkpoint's blocks, before this block range absorbs its bundle.
49
+ */ startMsgSponge, /**
50
+ * Message-bundle sponge after this block range absorbs its bundle. The checkpoint root asserts the final value
51
+ * matches the parity root's sponge over the same (padded) message list.
52
+ */ endMsgSponge, /**
48
53
  * SHA256 hash of L2 to L1 messages created in this block range.
49
54
  */ outHash, /**
50
55
  * The summed transaction fees of all the txs in this block range.
@@ -60,17 +65,18 @@ import { CheckpointConstantData } from './checkpoint_constant_data.js';
60
65
  this.endSpongeBlob = endSpongeBlob;
61
66
  this.timestamp = timestamp;
62
67
  this.blockHeadersHash = blockHeadersHash;
63
- this.inHash = inHash;
68
+ this.startMsgSponge = startMsgSponge;
69
+ this.endMsgSponge = endMsgSponge;
64
70
  this.outHash = outHash;
65
71
  this.accumulatedFees = accumulatedFees;
66
72
  this.accumulatedManaUsed = accumulatedManaUsed;
67
73
  }
68
74
  static fromBuffer(buffer) {
69
75
  const reader = BufferReader.asReader(buffer);
70
- return new BlockRollupPublicInputs(reader.readObject(CheckpointConstantData), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(StateReference), reader.readObject(StateReference), reader.readObject(SpongeBlob), reader.readObject(SpongeBlob), reader.readUInt64(), Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
76
+ return new BlockRollupPublicInputs(reader.readObject(CheckpointConstantData), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(StateReference), reader.readObject(StateReference), reader.readObject(SpongeBlob), reader.readObject(SpongeBlob), reader.readUInt64(), Fr.fromBuffer(reader), reader.readObject(L1ToL2MessageSponge), reader.readObject(L1ToL2MessageSponge), Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
71
77
  }
72
78
  toBuffer() {
73
- return serializeToBuffer(this.constants, this.previousArchive, this.newArchive, this.startState, this.endState, this.startSpongeBlob, this.endSpongeBlob, bigintToUInt64BE(this.timestamp), this.blockHeadersHash, this.inHash, this.outHash, this.accumulatedFees, this.accumulatedManaUsed);
79
+ return serializeToBuffer(this.constants, this.previousArchive, this.newArchive, this.startState, this.endState, this.startSpongeBlob, this.endSpongeBlob, bigintToUInt64BE(this.timestamp), this.blockHeadersHash, this.startMsgSponge, this.endMsgSponge, this.outHash, this.accumulatedFees, this.accumulatedManaUsed);
74
80
  }
75
81
  toString() {
76
82
  return bufferToHex(this.toBuffer());
@@ -86,7 +92,8 @@ import { CheckpointConstantData } from './checkpoint_constant_data.js';
86
92
  previousArchiveRoot: this.previousArchive.root.toString(),
87
93
  newArchiveRoot: this.newArchive.root.toString(),
88
94
  blockHeadersHash: this.blockHeadersHash.toString(),
89
- inHash: this.inHash.toString(),
95
+ startMsgSpongeNumAbsorbed: this.startMsgSponge.numAbsorbed,
96
+ endMsgSpongeNumAbsorbed: this.endMsgSponge.numAbsorbed,
90
97
  outHash: this.outHash.toString(),
91
98
  timestamp: this.timestamp.toString(),
92
99
  accumulatedFees: this.accumulatedFees.toString(),