@aztec/stdlib 3.0.0-canary.a9708bd → 3.0.0-devnet.3

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 (633) hide show
  1. package/dest/abi/abi.d.ts +8 -8
  2. package/dest/abi/abi.js +1 -1
  3. package/dest/abi/contract_artifact.js +3 -0
  4. package/dest/abi/event_metadata_definition.d.ts +8 -0
  5. package/dest/abi/event_metadata_definition.d.ts.map +1 -0
  6. package/dest/abi/event_metadata_definition.js +1 -0
  7. package/dest/abi/function_call.d.ts +7 -2
  8. package/dest/abi/function_call.d.ts.map +1 -1
  9. package/dest/abi/function_call.js +6 -2
  10. package/dest/abi/index.d.ts +1 -0
  11. package/dest/abi/index.d.ts.map +1 -1
  12. package/dest/abi/index.js +1 -0
  13. package/dest/avm/avm.d.ts +132 -73
  14. package/dest/avm/avm.d.ts.map +1 -1
  15. package/dest/avm/avm.js +10 -6
  16. package/dest/avm/avm_accumulated_data.d.ts +10 -21
  17. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  18. package/dest/avm/avm_accumulated_data.js +19 -22
  19. package/dest/avm/avm_circuit_public_inputs.d.ts +30 -13
  20. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  21. package/dest/avm/avm_circuit_public_inputs.js +17 -6
  22. package/dest/avm/avm_proving_request.d.ts +96 -48
  23. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  24. package/dest/avm/index.d.ts +1 -1
  25. package/dest/avm/index.d.ts.map +1 -1
  26. package/dest/avm/index.js +1 -1
  27. package/dest/avm/message_pack.d.ts +1 -0
  28. package/dest/avm/message_pack.d.ts.map +1 -1
  29. package/dest/avm/message_pack.js +28 -5
  30. package/dest/block/attestation_info.d.ts +30 -0
  31. package/dest/block/attestation_info.d.ts.map +1 -0
  32. package/dest/block/attestation_info.js +39 -0
  33. package/dest/block/body.d.ts +4 -1
  34. package/dest/block/body.d.ts.map +1 -1
  35. package/dest/block/body.js +17 -15
  36. package/dest/block/in_block.d.ts +5 -5
  37. package/dest/block/in_block.d.ts.map +1 -1
  38. package/dest/block/index.d.ts +4 -0
  39. package/dest/block/index.d.ts.map +1 -1
  40. package/dest/block/index.js +4 -0
  41. package/dest/block/l2_block.d.ts +21 -13
  42. package/dest/block/l2_block.d.ts.map +1 -1
  43. package/dest/block/l2_block.js +33 -10
  44. package/dest/block/l2_block_code_to_purge.d.ts +3 -14
  45. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  46. package/dest/block/l2_block_code_to_purge.js +23 -13
  47. package/dest/block/l2_block_header.d.ts +100 -0
  48. package/dest/block/l2_block_header.d.ts.map +1 -0
  49. package/dest/block/l2_block_header.js +146 -0
  50. package/dest/block/l2_block_info.d.ts +41 -0
  51. package/dest/block/l2_block_info.d.ts.map +1 -0
  52. package/dest/block/l2_block_info.js +40 -0
  53. package/dest/block/l2_block_source.d.ts +30 -428
  54. package/dest/block/l2_block_source.d.ts.map +1 -1
  55. package/dest/block/l2_block_source.js +0 -28
  56. package/dest/block/l2_block_stream/l2_tips_memory_store.js +1 -1
  57. package/dest/block/proposal/attestations_and_signers.d.ts +48 -0
  58. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
  59. package/dest/block/proposal/attestations_and_signers.js +99 -0
  60. package/dest/block/proposal/index.d.ts +1 -0
  61. package/dest/block/proposal/index.d.ts.map +1 -1
  62. package/dest/block/proposal/index.js +1 -0
  63. package/dest/block/published_l2_block.d.ts +27 -5
  64. package/dest/block/published_l2_block.d.ts.map +1 -1
  65. package/dest/block/published_l2_block.js +20 -7
  66. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  67. package/dest/block/test/l2_tips_store_test_suite.js +3 -4
  68. package/dest/block/validate_block_result.d.ts +222 -0
  69. package/dest/block/validate_block_result.d.ts.map +1 -0
  70. package/dest/block/validate_block_result.js +83 -0
  71. package/dest/checkpoint/checkpoint_body.d.ts +4 -0
  72. package/dest/checkpoint/checkpoint_body.d.ts.map +1 -0
  73. package/dest/checkpoint/checkpoint_body.js +9 -0
  74. package/dest/checkpoint/index.d.ts +2 -0
  75. package/dest/checkpoint/index.d.ts.map +1 -0
  76. package/dest/checkpoint/index.js +1 -0
  77. package/dest/config/node-rpc-config.d.ts +2 -0
  78. package/dest/config/node-rpc-config.d.ts.map +1 -1
  79. package/dest/config/node-rpc-config.js +6 -0
  80. package/dest/contract/contract_address.d.ts +1 -1
  81. package/dest/contract/contract_address.js +1 -1
  82. package/dest/contract/contract_class_metadata.d.ts +8 -0
  83. package/dest/contract/contract_class_metadata.d.ts.map +1 -0
  84. package/dest/contract/contract_class_metadata.js +1 -0
  85. package/dest/contract/contract_instance.d.ts +9 -8
  86. package/dest/contract/contract_instance.d.ts.map +1 -1
  87. package/dest/contract/contract_instance.js +1 -2
  88. package/dest/contract/contract_metadata.d.ts +7 -0
  89. package/dest/contract/contract_metadata.d.ts.map +1 -0
  90. package/dest/contract/contract_metadata.js +1 -0
  91. package/dest/contract/index.d.ts +2 -0
  92. package/dest/contract/index.d.ts.map +1 -1
  93. package/dest/contract/index.js +2 -0
  94. package/dest/contract/interfaces/contract_class.d.ts +4 -4
  95. package/dest/contract/interfaces/contract_instance.d.ts +2 -2
  96. package/dest/epoch-helpers/index.d.ts +8 -2
  97. package/dest/epoch-helpers/index.d.ts.map +1 -1
  98. package/dest/epoch-helpers/index.js +9 -0
  99. package/dest/fees/transaction_fee.d.ts.map +1 -1
  100. package/dest/fees/transaction_fee.js +3 -0
  101. package/dest/file-store/factory.d.ts.map +1 -1
  102. package/dest/file-store/factory.js +18 -0
  103. package/dest/file-store/interface.d.ts +8 -2
  104. package/dest/file-store/interface.d.ts.map +1 -1
  105. package/dest/file-store/s3.d.ts +26 -0
  106. package/dest/file-store/s3.d.ts.map +1 -0
  107. package/dest/file-store/s3.js +252 -0
  108. package/dest/hash/hash.d.ts.map +1 -1
  109. package/dest/hash/hash.js +0 -3
  110. package/dest/interfaces/archiver.d.ts +43 -0
  111. package/dest/interfaces/archiver.d.ts.map +1 -1
  112. package/dest/interfaces/archiver.js +17 -1
  113. package/dest/interfaces/aztec-node-admin.d.ts +87 -40
  114. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  115. package/dest/interfaces/aztec-node-admin.js +7 -1
  116. package/dest/interfaces/aztec-node.d.ts +35 -2
  117. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  118. package/dest/interfaces/aztec-node.js +8 -1
  119. package/dest/interfaces/block-builder.d.ts +7 -8
  120. package/dest/interfaces/block-builder.d.ts.map +1 -1
  121. package/dest/interfaces/client.d.ts +0 -1
  122. package/dest/interfaces/client.d.ts.map +1 -1
  123. package/dest/interfaces/client.js +0 -1
  124. package/dest/interfaces/configs.d.ts +10 -0
  125. package/dest/interfaces/configs.d.ts.map +1 -1
  126. package/dest/interfaces/configs.js +3 -1
  127. package/dest/interfaces/epoch-prover.d.ts +26 -9
  128. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  129. package/dest/interfaces/merkle_tree_operations.d.ts +5 -0
  130. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  131. package/dest/interfaces/p2p.d.ts +2 -0
  132. package/dest/interfaces/p2p.d.ts.map +1 -1
  133. package/dest/interfaces/p2p.js +2 -1
  134. package/dest/interfaces/private_kernel_prover.d.ts +2 -2
  135. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  136. package/dest/interfaces/proving-job.d.ts +349 -200
  137. package/dest/interfaces/proving-job.d.ts.map +1 -1
  138. package/dest/interfaces/proving-job.js +131 -113
  139. package/dest/interfaces/server.d.ts +1 -0
  140. package/dest/interfaces/server.d.ts.map +1 -1
  141. package/dest/interfaces/server.js +1 -0
  142. package/dest/interfaces/server_circuit_prover.d.ts +34 -34
  143. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  144. package/dest/interfaces/slasher.d.ts +4 -0
  145. package/dest/interfaces/slasher.d.ts.map +1 -1
  146. package/dest/interfaces/slasher.js +1 -0
  147. package/dest/interfaces/tx_provider.d.ts +1 -1
  148. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  149. package/dest/interfaces/validator.d.ts +163 -0
  150. package/dest/interfaces/validator.d.ts.map +1 -0
  151. package/dest/interfaces/validator.js +18 -0
  152. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -2
  153. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  154. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +4 -3
  155. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  156. package/dest/kernel/nullifier.d.ts +2 -2
  157. package/dest/kernel/nullifier.d.ts.map +1 -1
  158. package/dest/kernel/nullifier.js +11 -11
  159. package/dest/kernel/private_call_data.d.ts +4 -24
  160. package/dest/kernel/private_call_data.d.ts.map +1 -1
  161. package/dest/kernel/private_call_data.js +4 -16
  162. package/dest/kernel/private_circuit_public_inputs.d.ts +5 -5
  163. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  164. package/dest/kernel/private_circuit_public_inputs.js +7 -7
  165. package/dest/kernel/private_context_inputs.d.ts +2 -2
  166. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  167. package/dest/kernel/private_context_inputs.js +4 -4
  168. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  169. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  170. package/dest/kernel/private_kernel_circuit_public_inputs.js +3 -3
  171. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +5 -4
  172. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  173. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -6
  174. package/dest/kernel/private_kernel_prover_output.d.ts +1 -1
  175. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  176. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -0
  177. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  178. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -1
  179. package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
  180. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -0
  181. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  182. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -0
  183. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -1
  184. package/dest/keys/derivation.d.ts +0 -2
  185. package/dest/keys/derivation.d.ts.map +1 -1
  186. package/dest/keys/derivation.js +1 -21
  187. package/dest/logs/contract_class_log.d.ts +1 -1
  188. package/dest/logs/contract_class_log.d.ts.map +1 -1
  189. package/dest/logs/contract_class_log.js +1 -3
  190. package/dest/logs/debug_log.d.ts +13 -0
  191. package/dest/logs/debug_log.d.ts.map +1 -0
  192. package/dest/logs/debug_log.js +26 -0
  193. package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
  194. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
  195. package/dest/logs/directional_app_tagging_secret.js +64 -0
  196. package/dest/logs/index.d.ts +3 -1
  197. package/dest/logs/index.d.ts.map +1 -1
  198. package/dest/logs/index.js +3 -1
  199. package/dest/logs/log_with_tx_data.d.ts +9 -12
  200. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  201. package/dest/logs/log_with_tx_data.js +18 -23
  202. package/dest/logs/pre_tag.d.ts +34 -0
  203. package/dest/logs/pre_tag.d.ts.map +1 -0
  204. package/dest/logs/pre_tag.js +7 -0
  205. package/dest/logs/public_log.d.ts +23 -10
  206. package/dest/logs/public_log.d.ts.map +1 -1
  207. package/dest/logs/public_log.js +117 -42
  208. package/dest/messaging/inbox_leaf.d.ts +2 -0
  209. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  210. package/dest/messaging/inbox_leaf.js +3 -0
  211. package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
  212. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  213. package/dest/messaging/l2_to_l1_membership.js +16 -18
  214. package/dest/noir/index.d.ts +11 -0
  215. package/dest/noir/index.d.ts.map +1 -1
  216. package/dest/note/index.d.ts +1 -1
  217. package/dest/note/index.d.ts.map +1 -1
  218. package/dest/note/index.js +1 -1
  219. package/dest/note/notes_filter.d.ts +0 -5
  220. package/dest/note/notes_filter.d.ts.map +1 -1
  221. package/dest/note/notes_filter.js +0 -3
  222. package/dest/note/unique_note.d.ts +43 -0
  223. package/dest/note/unique_note.d.ts.map +1 -0
  224. package/dest/note/{extended_note.js → unique_note.js} +9 -48
  225. package/dest/p2p/block_attestation.d.ts +45 -9
  226. package/dest/p2p/block_attestation.d.ts.map +1 -1
  227. package/dest/p2p/block_attestation.js +37 -15
  228. package/dest/p2p/block_proposal.d.ts +7 -9
  229. package/dest/p2p/block_proposal.d.ts.map +1 -1
  230. package/dest/p2p/block_proposal.js +13 -14
  231. package/dest/p2p/consensus_payload.d.ts +35 -6
  232. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  233. package/dest/p2p/consensus_payload.js +21 -8
  234. package/dest/p2p/gossipable.d.ts +2 -4
  235. package/dest/p2p/gossipable.d.ts.map +1 -1
  236. package/dest/p2p/gossipable.js +5 -14
  237. package/dest/p2p/signature_utils.d.ts +2 -1
  238. package/dest/p2p/signature_utils.d.ts.map +1 -1
  239. package/dest/p2p/signature_utils.js +1 -0
  240. package/dest/parity/index.d.ts +2 -3
  241. package/dest/parity/index.d.ts.map +1 -1
  242. package/dest/parity/index.js +2 -3
  243. package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +7 -7
  244. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  245. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +10 -6
  246. package/dest/parity/parity_root_private_inputs.d.ts +39 -0
  247. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  248. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  249. package/dest/proofs/client_ivc_proof.d.ts +17 -7
  250. package/dest/proofs/client_ivc_proof.d.ts.map +1 -1
  251. package/dest/proofs/client_ivc_proof.js +78 -19
  252. package/dest/proofs/index.d.ts +1 -0
  253. package/dest/proofs/index.d.ts.map +1 -1
  254. package/dest/proofs/index.js +1 -0
  255. package/dest/proofs/proof_data.d.ts +21 -0
  256. package/dest/proofs/proof_data.d.ts.map +1 -0
  257. package/dest/proofs/proof_data.js +22 -0
  258. package/dest/proofs/proving_request_type.d.ts +17 -13
  259. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  260. package/dest/proofs/proving_request_type.js +17 -12
  261. package/dest/rollup/avm_proof_data.d.ts +2 -12
  262. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  263. package/dest/rollup/avm_proof_data.js +0 -24
  264. package/dest/rollup/base_rollup_hints.d.ts +17 -17
  265. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  266. package/dest/rollup/base_rollup_hints.js +26 -26
  267. package/dest/rollup/block_constant_data.d.ts +24 -10
  268. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  269. package/dest/rollup/block_constant_data.js +18 -10
  270. package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +17 -10
  271. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  272. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
  273. package/dest/rollup/block_rollup_public_inputs.d.ts +124 -0
  274. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
  275. package/dest/rollup/block_rollup_public_inputs.js +85 -0
  276. package/dest/rollup/block_root_rollup_private_inputs.d.ts +236 -0
  277. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  278. package/dest/rollup/block_root_rollup_private_inputs.js +257 -0
  279. package/dest/rollup/checkpoint_constant_data.d.ts +54 -0
  280. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
  281. package/dest/rollup/checkpoint_constant_data.js +55 -0
  282. package/dest/{tx/proposed_block_header.d.ts → rollup/checkpoint_header.d.ts} +12 -11
  283. package/dest/rollup/checkpoint_header.d.ts.map +1 -0
  284. package/dest/{tx/proposed_block_header.js → rollup/checkpoint_header.js} +14 -8
  285. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
  286. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  287. package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
  288. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +106 -0
  289. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
  290. package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
  291. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +123 -0
  292. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  293. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +178 -0
  294. package/dest/rollup/epoch_constant_data.d.ts +23 -6
  295. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  296. package/dest/rollup/epoch_constant_data.js +25 -12
  297. package/dest/rollup/index.d.ts +17 -16
  298. package/dest/rollup/index.d.ts.map +1 -1
  299. package/dest/rollup/index.js +17 -16
  300. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
  301. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  302. package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
  303. package/dest/rollup/public_tube_private_inputs.d.ts +21 -0
  304. package/dest/rollup/public_tube_private_inputs.d.ts.map +1 -0
  305. package/dest/rollup/public_tube_private_inputs.js +42 -0
  306. package/dest/rollup/public_tube_public_inputs.d.ts +20 -0
  307. package/dest/rollup/public_tube_public_inputs.d.ts.map +1 -0
  308. package/dest/rollup/public_tube_public_inputs.js +41 -0
  309. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
  310. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  311. package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
  312. package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
  313. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  314. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  315. package/dest/rollup/root_rollup_public_inputs.d.ts +46 -0
  316. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  317. package/dest/rollup/root_rollup_public_inputs.js +71 -0
  318. package/dest/rollup/{state_diff_hints.d.ts → tree_snapshot_diff_hints.d.ts} +22 -38
  319. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
  320. package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
  321. package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +11 -10
  322. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  323. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  324. package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +14 -14
  325. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  326. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +15 -15
  327. package/dest/slashing/types.d.ts +1 -0
  328. package/dest/slashing/types.d.ts.map +1 -1
  329. package/dest/slashing/types.js +22 -0
  330. package/dest/snapshots/download.d.ts.map +1 -1
  331. package/dest/snapshots/download.js +58 -2
  332. package/dest/snapshots/upload.d.ts.map +1 -1
  333. package/dest/snapshots/upload.js +1 -0
  334. package/dest/stats/stats.d.ts +1 -1
  335. package/dest/stats/stats.d.ts.map +1 -1
  336. package/dest/tests/factories.d.ts +42 -74
  337. package/dest/tests/factories.d.ts.map +1 -1
  338. package/dest/tests/factories.js +144 -167
  339. package/dest/tests/mocks.d.ts +14 -8
  340. package/dest/tests/mocks.d.ts.map +1 -1
  341. package/dest/tests/mocks.js +53 -31
  342. package/dest/trees/index.d.ts +0 -1
  343. package/dest/trees/index.d.ts.map +1 -1
  344. package/dest/trees/index.js +0 -1
  345. package/dest/trees/merkle_tree_id.d.ts +4 -4
  346. package/dest/trees/nullifier_membership_witness.d.ts +3 -3
  347. package/dest/tx/block_header.d.ts +12 -13
  348. package/dest/tx/block_header.d.ts.map +1 -1
  349. package/dest/tx/block_header.js +16 -21
  350. package/dest/tx/content_commitment.d.ts +1 -0
  351. package/dest/tx/content_commitment.d.ts.map +1 -1
  352. package/dest/tx/content_commitment.js +3 -0
  353. package/dest/tx/global_variables.d.ts.map +1 -1
  354. package/dest/tx/global_variables.js +0 -1
  355. package/dest/tx/index.d.ts +2 -1
  356. package/dest/tx/index.d.ts.map +1 -1
  357. package/dest/tx/index.js +2 -1
  358. package/dest/tx/indexed_tx_effect.d.ts +3 -3
  359. package/dest/tx/partial_state_reference.d.ts +1 -0
  360. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  361. package/dest/tx/partial_state_reference.js +3 -0
  362. package/dest/tx/private_execution_result.d.ts +7 -2
  363. package/dest/tx/private_execution_result.d.ts.map +1 -1
  364. package/dest/tx/private_execution_result.js +10 -6
  365. package/dest/tx/private_tx_constant_data.d.ts +60 -0
  366. package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
  367. package/dest/tx/private_tx_constant_data.js +69 -0
  368. package/dest/tx/processed_tx.d.ts +0 -1
  369. package/dest/tx/processed_tx.d.ts.map +1 -1
  370. package/dest/tx/processed_tx.js +1 -6
  371. package/dest/tx/profiling.d.ts.map +1 -1
  372. package/dest/tx/profiling.js +0 -2
  373. package/dest/tx/protocol_contracts.d.ts +29 -0
  374. package/dest/tx/protocol_contracts.d.ts.map +1 -0
  375. package/dest/tx/protocol_contracts.js +49 -0
  376. package/dest/tx/simulated_tx.d.ts +3 -3
  377. package/dest/tx/state_reference.d.ts +1 -0
  378. package/dest/tx/state_reference.d.ts.map +1 -1
  379. package/dest/tx/state_reference.js +4 -1
  380. package/dest/tx/tx.d.ts +6 -9
  381. package/dest/tx/tx.d.ts.map +1 -1
  382. package/dest/tx/tx.js +10 -11
  383. package/dest/tx/tx_constant_data.d.ts +6 -38
  384. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  385. package/dest/tx/tx_constant_data.js +11 -20
  386. package/dest/tx/tx_effect.d.ts +3 -36
  387. package/dest/tx/tx_effect.d.ts.map +1 -1
  388. package/dest/tx/tx_effect.js +63 -202
  389. package/dest/tx/validator/error_texts.d.ts +1 -1
  390. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  391. package/dest/tx/validator/error_texts.js +1 -1
  392. package/dest/update-checker/update-checker.d.ts +1 -1
  393. package/dest/update-checker/update-checker.d.ts.map +1 -1
  394. package/dest/update-checker/update-checker.js +1 -1
  395. package/dest/validators/schemas.d.ts +42 -4
  396. package/dest/validators/schemas.d.ts.map +1 -1
  397. package/dest/validators/schemas.js +5 -4
  398. package/dest/validators/types.d.ts +8 -10
  399. package/dest/validators/types.d.ts.map +1 -1
  400. package/dest/versioning/versioning.d.ts +2 -2
  401. package/dest/versioning/versioning.d.ts.map +1 -1
  402. package/dest/versioning/versioning.js +18 -13
  403. package/dest/world-state/index.d.ts +2 -0
  404. package/dest/world-state/index.d.ts.map +1 -0
  405. package/dest/world-state/index.js +1 -0
  406. package/dest/world-state/world_state_revision.d.ts +22 -0
  407. package/dest/world-state/world_state_revision.d.ts.map +1 -0
  408. package/dest/world-state/world_state_revision.js +21 -0
  409. package/dest/zkpassport/index.d.ts +17 -11
  410. package/dest/zkpassport/index.d.ts.map +1 -1
  411. package/dest/zkpassport/index.js +21 -15
  412. package/package.json +15 -11
  413. package/src/abi/abi.ts +1 -1
  414. package/src/abi/contract_artifact.ts +3 -0
  415. package/src/abi/event_metadata_definition.ts +8 -0
  416. package/src/abi/function_call.ts +5 -1
  417. package/src/abi/index.ts +1 -0
  418. package/src/avm/avm.ts +15 -7
  419. package/src/avm/avm_accumulated_data.ts +25 -29
  420. package/src/avm/avm_circuit_public_inputs.ts +21 -0
  421. package/src/avm/index.ts +1 -1
  422. package/src/avm/message_pack.ts +25 -1
  423. package/src/block/attestation_info.ts +62 -0
  424. package/src/block/body.ts +25 -23
  425. package/src/block/index.ts +4 -0
  426. package/src/block/l2_block.ts +39 -19
  427. package/src/block/l2_block_code_to_purge.ts +30 -31
  428. package/src/block/l2_block_header.ts +232 -0
  429. package/src/block/l2_block_info.ts +63 -0
  430. package/src/block/l2_block_source.ts +33 -51
  431. package/src/block/l2_block_stream/l2_tips_memory_store.ts +1 -1
  432. package/src/block/proposal/attestations_and_signers.ts +121 -0
  433. package/src/block/proposal/index.ts +1 -0
  434. package/src/block/published_l2_block.ts +37 -15
  435. package/src/block/test/l2_tips_store_test_suite.ts +7 -7
  436. package/src/block/validate_block_result.ts +122 -0
  437. package/src/checkpoint/checkpoint_body.ts +10 -0
  438. package/src/checkpoint/index.ts +1 -0
  439. package/src/config/node-rpc-config.ts +9 -0
  440. package/src/contract/contract_address.ts +1 -1
  441. package/src/contract/contract_class_metadata.ts +8 -0
  442. package/src/contract/contract_instance.ts +11 -10
  443. package/src/contract/contract_metadata.ts +7 -0
  444. package/src/contract/index.ts +2 -0
  445. package/src/contract/interfaces/contract_class.ts +1 -1
  446. package/src/epoch-helpers/index.ts +24 -2
  447. package/src/fees/transaction_fee.ts +11 -0
  448. package/src/file-store/factory.ts +15 -0
  449. package/src/file-store/interface.ts +8 -2
  450. package/src/file-store/s3.ts +254 -0
  451. package/src/hash/hash.ts +0 -4
  452. package/src/interfaces/archiver.ts +46 -1
  453. package/src/interfaces/aztec-node-admin.ts +17 -1
  454. package/src/interfaces/aztec-node.ts +53 -2
  455. package/src/interfaces/block-builder.ts +11 -12
  456. package/src/interfaces/client.ts +0 -1
  457. package/src/interfaces/configs.ts +6 -0
  458. package/src/interfaces/epoch-prover.ts +35 -11
  459. package/src/interfaces/merkle_tree_operations.ts +6 -0
  460. package/src/interfaces/p2p.ts +4 -0
  461. package/src/interfaces/private_kernel_prover.ts +2 -2
  462. package/src/interfaces/proving-job.ts +215 -134
  463. package/src/interfaces/server.ts +1 -0
  464. package/src/interfaces/server_circuit_prover.ts +87 -61
  465. package/src/interfaces/slasher.ts +2 -0
  466. package/src/interfaces/tx_provider.ts +1 -0
  467. package/src/interfaces/validator.ts +95 -0
  468. package/src/kernel/hints/build_nullifier_read_request_hints.ts +3 -2
  469. package/src/kernel/hints/nullifier_read_request_hints.ts +3 -3
  470. package/src/kernel/nullifier.ts +8 -8
  471. package/src/kernel/private_call_data.ts +2 -21
  472. package/src/kernel/private_circuit_public_inputs.ts +5 -5
  473. package/src/kernel/private_context_inputs.ts +2 -2
  474. package/src/kernel/private_kernel_circuit_public_inputs.ts +4 -4
  475. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +5 -4
  476. package/src/kernel/private_kernel_prover_output.ts +1 -1
  477. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +8 -2
  478. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +9 -0
  479. package/src/keys/derivation.ts +1 -26
  480. package/src/logs/contract_class_log.ts +2 -3
  481. package/src/logs/debug_log.ts +32 -0
  482. package/src/logs/directional_app_tagging_secret.ts +78 -0
  483. package/src/logs/index.ts +3 -1
  484. package/src/logs/log_with_tx_data.ts +14 -24
  485. package/src/logs/pre_tag.ts +25 -0
  486. package/src/logs/public_log.ts +120 -58
  487. package/src/messaging/inbox_leaf.ts +5 -0
  488. package/src/messaging/l2_to_l1_membership.ts +20 -26
  489. package/src/noir/index.ts +11 -0
  490. package/src/note/index.ts +1 -1
  491. package/src/note/notes_filter.ts +0 -7
  492. package/src/note/{extended_note.ts → unique_note.ts} +14 -75
  493. package/src/p2p/block_attestation.ts +46 -15
  494. package/src/p2p/block_proposal.ts +15 -18
  495. package/src/p2p/consensus_payload.ts +30 -10
  496. package/src/p2p/gossipable.ts +6 -16
  497. package/src/p2p/signature_utils.ts +1 -0
  498. package/src/parity/index.ts +2 -3
  499. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +13 -11
  500. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  501. package/src/proofs/client_ivc_proof.ts +86 -20
  502. package/src/proofs/index.ts +1 -0
  503. package/src/proofs/proof_data.ts +36 -0
  504. package/src/proofs/proving_request_type.ts +14 -10
  505. package/src/rollup/avm_proof_data.ts +2 -31
  506. package/src/rollup/base_rollup_hints.ts +22 -22
  507. package/src/rollup/block_constant_data.ts +16 -6
  508. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
  509. package/src/rollup/block_rollup_public_inputs.ts +123 -0
  510. package/src/rollup/block_root_rollup_private_inputs.ts +312 -0
  511. package/src/rollup/checkpoint_constant_data.ts +84 -0
  512. package/src/{tx/proposed_block_header.ts → rollup/checkpoint_header.ts} +40 -15
  513. package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
  514. package/src/rollup/{block_root_or_block_merge_public_inputs.ts → checkpoint_rollup_public_inputs.ts} +30 -52
  515. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +218 -0
  516. package/src/rollup/epoch_constant_data.ts +28 -10
  517. package/src/rollup/index.ts +17 -16
  518. package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
  519. package/src/rollup/public_tube_private_inputs.ts +53 -0
  520. package/src/rollup/public_tube_public_inputs.ts +52 -0
  521. package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
  522. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  523. package/src/rollup/root_rollup_public_inputs.ts +99 -0
  524. package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +26 -41
  525. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  526. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +13 -13
  527. package/src/slashing/types.ts +23 -0
  528. package/src/snapshots/download.ts +66 -2
  529. package/src/snapshots/upload.ts +1 -0
  530. package/src/stats/stats.ts +19 -13
  531. package/src/tests/factories.ts +217 -275
  532. package/src/tests/mocks.ts +87 -57
  533. package/src/trees/index.ts +0 -1
  534. package/src/tx/block_header.ts +17 -32
  535. package/src/tx/content_commitment.ts +4 -0
  536. package/src/tx/global_variables.ts +0 -1
  537. package/src/tx/index.ts +2 -1
  538. package/src/tx/partial_state_reference.ts +8 -0
  539. package/src/tx/private_execution_result.ts +9 -3
  540. package/src/tx/private_tx_constant_data.ts +94 -0
  541. package/src/tx/processed_tx.ts +1 -7
  542. package/src/tx/profiling.ts +0 -2
  543. package/src/tx/protocol_contracts.ts +70 -0
  544. package/src/tx/state_reference.ts +5 -1
  545. package/src/tx/tx.ts +12 -13
  546. package/src/tx/tx_constant_data.ts +8 -21
  547. package/src/tx/tx_effect.ts +64 -213
  548. package/src/tx/validator/error_texts.ts +1 -1
  549. package/src/update-checker/update-checker.ts +1 -1
  550. package/src/validators/schemas.ts +6 -4
  551. package/src/validators/types.ts +9 -10
  552. package/src/versioning/versioning.ts +20 -15
  553. package/src/world-state/index.ts +1 -0
  554. package/src/world-state/world_state_revision.ts +21 -0
  555. package/src/zkpassport/index.ts +42 -30
  556. package/dest/avm/public_data_hint.d.ts +0 -16
  557. package/dest/avm/public_data_hint.d.ts.map +0 -1
  558. package/dest/avm/public_data_hint.js +0 -27
  559. package/dest/interfaces/pxe.d.ts +0 -329
  560. package/dest/interfaces/pxe.d.ts.map +0 -1
  561. package/dest/interfaces/pxe.js +0 -100
  562. package/dest/logs/indexed_tagging_secret.d.ts +0 -28
  563. package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
  564. package/dest/logs/indexed_tagging_secret.js +0 -50
  565. package/dest/note/extended_note.d.ts +0 -111
  566. package/dest/note/extended_note.d.ts.map +0 -1
  567. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  568. package/dest/parity/root_parity_input.d.ts +0 -52
  569. package/dest/parity/root_parity_input.d.ts.map +0 -1
  570. package/dest/parity/root_parity_input.js +0 -50
  571. package/dest/parity/root_parity_inputs.d.ts +0 -37
  572. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  573. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  574. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  575. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -134
  576. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
  577. package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -125
  578. package/dest/rollup/block_root_rollup.d.ts +0 -283
  579. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  580. package/dest/rollup/block_root_rollup.js +0 -306
  581. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -51
  582. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
  583. package/dest/rollup/empty_block_root_rollup_inputs.js +0 -65
  584. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  585. package/dest/rollup/padding_block_root_rollup_inputs.d.ts +0 -20
  586. package/dest/rollup/padding_block_root_rollup_inputs.d.ts.map +0 -1
  587. package/dest/rollup/padding_block_root_rollup_inputs.js +0 -39
  588. package/dest/rollup/previous_rollup_block_data.d.ts +0 -47
  589. package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
  590. package/dest/rollup/previous_rollup_block_data.js +0 -37
  591. package/dest/rollup/previous_rollup_data.d.ts +0 -47
  592. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  593. package/dest/rollup/previous_rollup_data.js +0 -37
  594. package/dest/rollup/private_base_rollup_inputs.d.ts +0 -21
  595. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  596. package/dest/rollup/private_base_rollup_inputs.js +0 -44
  597. package/dest/rollup/private_tube_data.d.ts +0 -15
  598. package/dest/rollup/private_tube_data.d.ts.map +0 -1
  599. package/dest/rollup/private_tube_data.js +0 -25
  600. package/dest/rollup/public_base_rollup_inputs.d.ts +0 -23
  601. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  602. package/dest/rollup/public_base_rollup_inputs.js +0 -48
  603. package/dest/rollup/public_tube_data.d.ts +0 -15
  604. package/dest/rollup/public_tube_data.d.ts.map +0 -1
  605. package/dest/rollup/public_tube_data.js +0 -25
  606. package/dest/rollup/root_rollup.d.ts +0 -106
  607. package/dest/rollup/root_rollup.d.ts.map +0 -1
  608. package/dest/rollup/root_rollup.js +0 -147
  609. package/dest/rollup/state_diff_hints.d.ts.map +0 -1
  610. package/dest/rollup/state_diff_hints.js +0 -85
  611. package/dest/rollup/tube_inputs.d.ts +0 -43
  612. package/dest/rollup/tube_inputs.d.ts.map +0 -1
  613. package/dest/rollup/tube_inputs.js +0 -63
  614. package/dest/trees/protocol_contract_leaf.d.ts +0 -84
  615. package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
  616. package/dest/trees/protocol_contract_leaf.js +0 -100
  617. package/dest/tx/proposed_block_header.d.ts.map +0 -1
  618. package/src/avm/public_data_hint.ts +0 -38
  619. package/src/interfaces/pxe.ts +0 -532
  620. package/src/logs/indexed_tagging_secret.ts +0 -48
  621. package/src/parity/root_parity_input.ts +0 -71
  622. package/src/rollup/block_root_rollup.ts +0 -380
  623. package/src/rollup/empty_block_root_rollup_inputs.ts +0 -80
  624. package/src/rollup/padding_block_root_rollup_inputs.ts +0 -47
  625. package/src/rollup/previous_rollup_block_data.ts +0 -48
  626. package/src/rollup/previous_rollup_data.ts +0 -48
  627. package/src/rollup/private_base_rollup_inputs.ts +0 -53
  628. package/src/rollup/private_tube_data.ts +0 -35
  629. package/src/rollup/public_base_rollup_inputs.ts +0 -59
  630. package/src/rollup/public_tube_data.ts +0 -35
  631. package/src/rollup/root_rollup.ts +0 -195
  632. package/src/rollup/tube_inputs.ts +0 -77
  633. package/src/trees/protocol_contract_leaf.ts +0 -128
@@ -1,4 +1,4 @@
1
- import { BlockBlobPublicInputs } from '@aztec/blob-lib';
1
+ import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
2
2
  import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
3
3
  import { EthAddress } from '@aztec/foundation/eth-address';
4
4
  import { Fr } from '@aztec/foundation/fields';
@@ -8,106 +8,80 @@ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
8
8
  import type { FieldsOf } from '@aztec/foundation/types';
9
9
 
10
10
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
11
- import { GlobalVariables } from '../tx/global_variables.js';
12
11
  import { EpochConstantData } from './epoch_constant_data.js';
13
12
 
14
13
  /**
15
- * Output of the block root and block merge rollup circuits.
14
+ * Output of the checkpoint root and checkpoint merge rollup circuits.
16
15
  */
17
- export class BlockRootOrBlockMergePublicInputs {
16
+ export class CheckpointRollupPublicInputs {
18
17
  constructor(
19
18
  /**
20
19
  * Constants for the entire epoch.
21
20
  */
22
21
  public constants: EpochConstantData,
23
22
  /**
24
- * Archive tree immediately before this block range.
23
+ * Archive tree immediately before this checkpoint range.
25
24
  */
26
25
  public previousArchive: AppendOnlyTreeSnapshot,
27
26
  /**
28
- * Archive tree after adding this block range.
27
+ * Archive tree after adding this checkpoint range.
29
28
  */
30
29
  public newArchive: AppendOnlyTreeSnapshot,
31
30
  /**
32
- * Global variables for the first block in the range.
31
+ * The hashes of the headers of the constituent checkpoints.
33
32
  */
34
- public startGlobalVariables: GlobalVariables,
33
+ public checkpointHeaderHashes: Tuple<Fr, typeof AZTEC_MAX_EPOCH_DURATION>,
35
34
  /**
36
- * Global variables for the last block in the range.
35
+ * The summed transaction fees and recipients of the constituent checkpoints.
37
36
  */
38
- public endGlobalVariables: GlobalVariables,
39
- /**
40
- * SHA256 hash of L2 to L1 messages. Used to make public inputs constant-sized (to then be opened on-chain).
41
- * Note: Truncated to 31 bytes to fit in Fr.
42
- */
43
- public outHash: Fr,
37
+ public fees: Tuple<FeeRecipient, typeof AZTEC_MAX_EPOCH_DURATION>,
44
38
  /**
45
- * The hashes of the proposed block headers of the constituent blocks.
39
+ * Accumulated opening proofs for all blobs before this checkpoint range.
46
40
  */
47
- public proposedBlockHeaderHashes: Tuple<Fr, typeof AZTEC_MAX_EPOCH_DURATION>,
41
+ public startBlobAccumulator: BlobAccumulator,
48
42
  /**
49
- * The summed `transaction_fee`s and recipients of the constituent blocks.
43
+ * Accumulated opening proofs for all blobs after applying this checkpoint range.
50
44
  */
51
- public fees: Tuple<FeeRecipient, typeof AZTEC_MAX_EPOCH_DURATION>,
45
+ public endBlobAccumulator: BlobAccumulator,
52
46
  /**
53
- * Public inputs required to verify a batch of blobs.
47
+ * Final values z and gamma, shared across the epoch.
54
48
  */
55
- public blobPublicInputs: BlockBlobPublicInputs,
49
+ public finalBlobChallenges: FinalBlobBatchingChallenges,
56
50
  ) {}
57
51
 
58
- /**
59
- * Deserializes from a buffer or reader.
60
- * @param buffer - Buffer or reader to read from.
61
- * @returns The deserialized public inputs.
62
- */
63
- static fromBuffer(buffer: Buffer | BufferReader): BlockRootOrBlockMergePublicInputs {
52
+ static fromBuffer(buffer: Buffer | BufferReader) {
64
53
  const reader = BufferReader.asReader(buffer);
65
- return new BlockRootOrBlockMergePublicInputs(
54
+ return new CheckpointRollupPublicInputs(
66
55
  reader.readObject(EpochConstantData),
67
56
  reader.readObject(AppendOnlyTreeSnapshot),
68
57
  reader.readObject(AppendOnlyTreeSnapshot),
69
- reader.readObject(GlobalVariables),
70
- reader.readObject(GlobalVariables),
71
- Fr.fromBuffer(reader),
72
58
  reader.readArray(AZTEC_MAX_EPOCH_DURATION, Fr),
73
59
  reader.readArray(AZTEC_MAX_EPOCH_DURATION, FeeRecipient),
74
- reader.readObject(BlockBlobPublicInputs),
60
+ reader.readObject(BlobAccumulator),
61
+ reader.readObject(BlobAccumulator),
62
+ reader.readObject(FinalBlobBatchingChallenges),
75
63
  );
76
64
  }
77
65
 
78
- /**
79
- * Serialize this as a buffer.
80
- * @returns The buffer.
81
- */
82
66
  toBuffer() {
83
67
  return serializeToBuffer(
84
68
  this.constants,
85
69
  this.previousArchive,
86
70
  this.newArchive,
87
- this.startGlobalVariables,
88
- this.endGlobalVariables,
89
- this.outHash,
90
- this.proposedBlockHeaderHashes,
71
+ this.checkpointHeaderHashes,
91
72
  this.fees,
92
- this.blobPublicInputs,
73
+ this.startBlobAccumulator,
74
+ this.endBlobAccumulator,
75
+ this.finalBlobChallenges,
93
76
  );
94
77
  }
95
78
 
96
- /**
97
- * Serialize this as a hex string.
98
- * @returns - The hex string.
99
- */
100
79
  toString() {
101
80
  return bufferToHex(this.toBuffer());
102
81
  }
103
82
 
104
- /**
105
- * Deserializes from a hex string.
106
- * @param str - A hex string to deserialize from.
107
- * @returns A new BaseOrMergeRollupPublicInputs instance.
108
- */
109
83
  static fromString(str: string) {
110
- return BlockRootOrBlockMergePublicInputs.fromBuffer(hexToBuffer(str));
84
+ return CheckpointRollupPublicInputs.fromBuffer(hexToBuffer(str));
111
85
  }
112
86
 
113
87
  /** Returns a buffer representation for JSON serialization. */
@@ -117,7 +91,7 @@ export class BlockRootOrBlockMergePublicInputs {
117
91
 
118
92
  /** Creates an instance from a hex string. */
119
93
  static get schema() {
120
- return bufferSchemaFor(BlockRootOrBlockMergePublicInputs);
94
+ return bufferSchemaFor(CheckpointRollupPublicInputs);
121
95
  }
122
96
  }
123
97
 
@@ -144,6 +118,10 @@ export class FeeRecipient {
144
118
  return serializeToFields(...FeeRecipient.getFields(this));
145
119
  }
146
120
 
121
+ static empty() {
122
+ return new FeeRecipient(EthAddress.ZERO, Fr.ZERO);
123
+ }
124
+
147
125
  isEmpty() {
148
126
  return this.value.isZero() && this.recipient.isZero();
149
127
  }
@@ -0,0 +1,218 @@
1
+ import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
2
+ import { ARCHIVE_HEIGHT, BLOBS_PER_BLOCK, FIELDS_PER_BLOB } from '@aztec/constants';
3
+ import { BLS12Point, Fr } from '@aztec/foundation/fields';
4
+ import { bufferSchemaFor } from '@aztec/foundation/schemas';
5
+ import { BufferReader, type Tuple, serializeToBuffer } from '@aztec/foundation/serialize';
6
+ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
7
+ import type { FieldsOf } from '@aztec/foundation/types';
8
+
9
+ import { ProofData, type RollupHonkProofData } from '../proofs/proof_data.js';
10
+ import { BlockHeader } from '../tx/block_header.js';
11
+ import { BlockRollupPublicInputs } from './block_rollup_public_inputs.js';
12
+
13
+ export class CheckpointRootRollupHints {
14
+ constructor(
15
+ /**
16
+ * The header of the previous block before this checkpoint.
17
+ */
18
+ public previousBlockHeader: BlockHeader,
19
+ /**
20
+ * Hint for checking the hash of previous_block_header is the last leaf of the previous archive.
21
+ */
22
+ public previousArchiveSiblingPath: Tuple<Fr, typeof ARCHIVE_HEIGHT>,
23
+ /**
24
+ * The current blob accumulation state across the epoch.
25
+ */
26
+ public startBlobAccumulator: BlobAccumulator,
27
+ /**
28
+ * Finalized challenges z and gamma for performing blob batching. Shared value across the epoch.
29
+ */
30
+ public finalBlobChallenges: FinalBlobBatchingChallenges,
31
+ /**
32
+ * Flat list of all tx effects which will be added to the blob.
33
+ * Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
34
+ * Tuple<Fr, FIELDS_PER_BLOB * BLOBS_PER_BLOCK>
35
+ */
36
+ public blobFields: Fr[],
37
+ /**
38
+ * KZG commitments representing the blob (precomputed in ts, injected to use inside circuit).
39
+ */
40
+ public blobCommitments: Tuple<BLS12Point, typeof BLOBS_PER_BLOCK>,
41
+ /**
42
+ * The hash of eth blob hashes for this block
43
+ * See yarn-project/foundation/src/blob/index.ts or body.ts for calculation
44
+ */
45
+ public blobsHash: Fr,
46
+ ) {}
47
+
48
+ static from(fields: FieldsOf<CheckpointRootRollupHints>) {
49
+ return new CheckpointRootRollupHints(...CheckpointRootRollupHints.getFields(fields));
50
+ }
51
+
52
+ static getFields(fields: FieldsOf<CheckpointRootRollupHints>) {
53
+ return [
54
+ fields.previousBlockHeader,
55
+ fields.previousArchiveSiblingPath,
56
+ fields.startBlobAccumulator,
57
+ fields.finalBlobChallenges,
58
+ fields.blobFields,
59
+ fields.blobCommitments,
60
+ fields.blobsHash,
61
+ ] as const;
62
+ }
63
+
64
+ toBuffer() {
65
+ return serializeToBuffer(...CheckpointRootRollupHints.getFields(this));
66
+ }
67
+
68
+ static fromBuffer(buffer: Buffer | BufferReader) {
69
+ const reader = BufferReader.asReader(buffer);
70
+ return new CheckpointRootRollupHints(
71
+ BlockHeader.fromBuffer(reader),
72
+ reader.readArray(ARCHIVE_HEIGHT, Fr),
73
+ reader.readObject(BlobAccumulator),
74
+ reader.readObject(FinalBlobBatchingChallenges),
75
+ // Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
76
+ // reader.readArray(FIELDS_PER_BLOB, Fr),
77
+ Array.from({ length: FIELDS_PER_BLOB * BLOBS_PER_BLOCK }, () => Fr.fromBuffer(reader)),
78
+ reader.readArray(BLOBS_PER_BLOCK, BLS12Point),
79
+ Fr.fromBuffer(reader),
80
+ );
81
+ }
82
+
83
+ toString() {
84
+ return bufferToHex(this.toBuffer());
85
+ }
86
+
87
+ static fromString(str: string) {
88
+ return CheckpointRootRollupHints.fromBuffer(hexToBuffer(str));
89
+ }
90
+
91
+ toJSON() {
92
+ return this.toBuffer();
93
+ }
94
+
95
+ static get schema() {
96
+ return bufferSchemaFor(CheckpointRootRollupHints);
97
+ }
98
+ }
99
+
100
+ export class CheckpointRootRollupPrivateInputs {
101
+ constructor(
102
+ public previousRollups: [
103
+ RollupHonkProofData<BlockRollupPublicInputs>,
104
+ RollupHonkProofData<BlockRollupPublicInputs>,
105
+ ],
106
+ public hints: CheckpointRootRollupHints,
107
+ ) {}
108
+
109
+ static from(fields: FieldsOf<CheckpointRootRollupPrivateInputs>) {
110
+ return new CheckpointRootRollupPrivateInputs(...CheckpointRootRollupPrivateInputs.getFields(fields));
111
+ }
112
+
113
+ static getFields(fields: FieldsOf<CheckpointRootRollupPrivateInputs>) {
114
+ return [fields.previousRollups, fields.hints] as const;
115
+ }
116
+
117
+ toBuffer() {
118
+ return serializeToBuffer(...CheckpointRootRollupPrivateInputs.getFields(this));
119
+ }
120
+
121
+ static fromBuffer(buffer: Buffer | BufferReader) {
122
+ const reader = BufferReader.asReader(buffer);
123
+ return new CheckpointRootRollupPrivateInputs(
124
+ [ProofData.fromBuffer(reader, BlockRollupPublicInputs), ProofData.fromBuffer(reader, BlockRollupPublicInputs)],
125
+ CheckpointRootRollupHints.fromBuffer(reader),
126
+ );
127
+ }
128
+
129
+ toString() {
130
+ return bufferToHex(this.toBuffer());
131
+ }
132
+
133
+ static fromString(str: string) {
134
+ return CheckpointRootRollupPrivateInputs.fromBuffer(hexToBuffer(str));
135
+ }
136
+
137
+ toJSON() {
138
+ return this.toBuffer();
139
+ }
140
+
141
+ static get schema() {
142
+ return bufferSchemaFor(CheckpointRootRollupPrivateInputs);
143
+ }
144
+ }
145
+
146
+ export class CheckpointRootSingleBlockRollupPrivateInputs {
147
+ constructor(
148
+ public previousRollup: RollupHonkProofData<BlockRollupPublicInputs>,
149
+ public hints: CheckpointRootRollupHints,
150
+ ) {}
151
+
152
+ static from(fields: FieldsOf<CheckpointRootSingleBlockRollupPrivateInputs>) {
153
+ return new CheckpointRootSingleBlockRollupPrivateInputs(
154
+ ...CheckpointRootSingleBlockRollupPrivateInputs.getFields(fields),
155
+ );
156
+ }
157
+
158
+ static getFields(fields: FieldsOf<CheckpointRootSingleBlockRollupPrivateInputs>) {
159
+ return [fields.previousRollup, fields.hints] as const;
160
+ }
161
+
162
+ toBuffer() {
163
+ return serializeToBuffer(...CheckpointRootSingleBlockRollupPrivateInputs.getFields(this));
164
+ }
165
+
166
+ static fromBuffer(buffer: Buffer | BufferReader) {
167
+ const reader = BufferReader.asReader(buffer);
168
+ return new CheckpointRootSingleBlockRollupPrivateInputs(
169
+ ProofData.fromBuffer(reader, BlockRollupPublicInputs),
170
+ CheckpointRootRollupHints.fromBuffer(reader),
171
+ );
172
+ }
173
+
174
+ toString() {
175
+ return bufferToHex(this.toBuffer());
176
+ }
177
+
178
+ static fromString(str: string) {
179
+ return CheckpointRootSingleBlockRollupPrivateInputs.fromBuffer(hexToBuffer(str));
180
+ }
181
+
182
+ toJSON() {
183
+ return this.toBuffer();
184
+ }
185
+
186
+ static get schema() {
187
+ return bufferSchemaFor(CheckpointRootSingleBlockRollupPrivateInputs);
188
+ }
189
+ }
190
+
191
+ // Checkpoint padding circuit does not have any private inputs.
192
+ export class CheckpointPaddingRollupPrivateInputs {
193
+ constructor() {}
194
+
195
+ toBuffer() {
196
+ return Buffer.alloc(0);
197
+ }
198
+
199
+ static fromBuffer(_buffer: Buffer | BufferReader) {
200
+ return new CheckpointPaddingRollupPrivateInputs();
201
+ }
202
+
203
+ toString(): `0x${string}` {
204
+ return '0x';
205
+ }
206
+
207
+ static fromString(_str: string) {
208
+ return new CheckpointPaddingRollupPrivateInputs();
209
+ }
210
+
211
+ toJSON() {
212
+ return this.toBuffer();
213
+ }
214
+
215
+ static get schema() {
216
+ return bufferSchemaFor(CheckpointPaddingRollupPrivateInputs);
217
+ }
218
+ }
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { BufferReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
3
3
  import type { FieldsOf } from '@aztec/foundation/types';
4
4
 
5
5
  /**
@@ -7,14 +7,22 @@ import type { FieldsOf } from '@aztec/foundation/types';
7
7
  */
8
8
  export class EpochConstantData {
9
9
  constructor(
10
+ /**
11
+ * ChainId of the rollup.
12
+ */
13
+ public chainId: Fr,
14
+ /**
15
+ * Version of the rollup.
16
+ */
17
+ public version: Fr,
10
18
  /**
11
19
  * Root of the verification key tree.
12
20
  */
13
21
  public vkTreeRoot: Fr,
14
22
  /**
15
- * Root of the protocol contract tree.
23
+ * Hash of the protocol contracts list.
16
24
  */
17
- public protocolContractTreeRoot: Fr,
25
+ public protocolContractsHash: Fr,
18
26
  /**
19
27
  * Identifier of the prover of the epoch.
20
28
  */
@@ -25,20 +33,30 @@ export class EpochConstantData {
25
33
  return new EpochConstantData(...EpochConstantData.getFields(fields));
26
34
  }
27
35
 
28
- static fromBuffer(buffer: Buffer | BufferReader): EpochConstantData {
29
- const reader = BufferReader.asReader(buffer);
30
- return new EpochConstantData(Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader));
36
+ static getFields(fields: FieldsOf<EpochConstantData>) {
37
+ return [fields.chainId, fields.version, fields.vkTreeRoot, fields.protocolContractsHash, fields.proverId] as const;
31
38
  }
32
39
 
33
- static getFields(fields: FieldsOf<EpochConstantData>) {
34
- return [fields.vkTreeRoot, fields.protocolContractTreeRoot, fields.proverId] as const;
40
+ toFields(): Fr[] {
41
+ return serializeToFields(...EpochConstantData.getFields(this));
35
42
  }
36
43
 
37
- static empty() {
38
- return new EpochConstantData(Fr.ZERO, Fr.ZERO, Fr.ZERO);
44
+ static fromBuffer(buffer: Buffer | BufferReader): EpochConstantData {
45
+ const reader = BufferReader.asReader(buffer);
46
+ return new EpochConstantData(
47
+ Fr.fromBuffer(reader),
48
+ Fr.fromBuffer(reader),
49
+ Fr.fromBuffer(reader),
50
+ Fr.fromBuffer(reader),
51
+ Fr.fromBuffer(reader),
52
+ );
39
53
  }
40
54
 
41
55
  toBuffer() {
42
56
  return serializeToBuffer(...EpochConstantData.getFields(this));
43
57
  }
58
+
59
+ static empty() {
60
+ return new EpochConstantData(Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO);
61
+ }
44
62
  }
@@ -1,20 +1,21 @@
1
1
  export * from './avm_proof_data.js';
2
- export * from './base_or_merge_rollup_public_inputs.js';
3
2
  export * from './base_rollup_hints.js';
4
3
  export * from './block_constant_data.js';
5
- export * from './block_merge_rollup.js';
6
- export * from './block_root_or_block_merge_public_inputs.js';
7
- export * from './empty_block_root_rollup_inputs.js';
4
+ export * from './block_merge_rollup_private_inputs.js';
5
+ export * from './block_rollup_public_inputs.js';
6
+ export * from './block_root_rollup_private_inputs.js';
7
+ export * from './checkpoint_constant_data.js';
8
+ export * from './checkpoint_header.js';
9
+ export * from './checkpoint_merge_rollup_private_inputs.js';
10
+ export * from './checkpoint_rollup_public_inputs.js';
11
+ export * from './checkpoint_root_rollup_private_inputs.js';
8
12
  export * from './epoch_constant_data.js';
9
- export * from './block_root_rollup.js';
10
- export * from './merge_rollup.js';
11
- export * from './padding_block_root_rollup_inputs.js';
12
- export * from './previous_rollup_block_data.js';
13
- export * from './previous_rollup_data.js';
14
- export * from './private_base_rollup_inputs.js';
15
- export * from './private_tube_data.js';
16
- export * from './public_base_rollup_inputs.js';
17
- export * from './public_tube_data.js';
18
- export * from './root_rollup.js';
19
- export * from './state_diff_hints.js';
20
- export * from './tube_inputs.js';
13
+ export * from './private_tx_base_rollup_private_inputs.js';
14
+ export * from './public_tx_base_rollup_private_inputs.js';
15
+ export * from './public_tube_private_inputs.js';
16
+ export * from './public_tube_public_inputs.js';
17
+ export * from './root_rollup_private_inputs.js';
18
+ export * from './root_rollup_public_inputs.js';
19
+ export * from './tree_snapshot_diff_hints.js';
20
+ export * from './tx_merge_rollup_private_inputs.js';
21
+ export * from './tx_rollup_public_inputs.js';
@@ -0,0 +1,53 @@
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 { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
7
+ import { type CivcProofData, ProofData } from '../proofs/proof_data.js';
8
+ import { PrivateBaseRollupHints } from './base_rollup_hints.js';
9
+
10
+ export class PrivateTxBaseRollupPrivateInputs {
11
+ constructor(
12
+ public hidingKernelProofData: CivcProofData<PrivateToRollupKernelCircuitPublicInputs>,
13
+ public hints: PrivateBaseRollupHints,
14
+ ) {}
15
+
16
+ static from(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>): PrivateTxBaseRollupPrivateInputs {
17
+ return new PrivateTxBaseRollupPrivateInputs(...PrivateTxBaseRollupPrivateInputs.getFields(fields));
18
+ }
19
+
20
+ static getFields(fields: FieldsOf<PrivateTxBaseRollupPrivateInputs>) {
21
+ return [fields.hidingKernelProofData, fields.hints] as const;
22
+ }
23
+
24
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateTxBaseRollupPrivateInputs {
25
+ const reader = BufferReader.asReader(buffer);
26
+ return new PrivateTxBaseRollupPrivateInputs(
27
+ ProofData.fromBuffer(reader, PrivateToRollupKernelCircuitPublicInputs),
28
+ reader.readObject(PrivateBaseRollupHints),
29
+ );
30
+ }
31
+
32
+ toBuffer() {
33
+ return serializeToBuffer(...PrivateTxBaseRollupPrivateInputs.getFields(this));
34
+ }
35
+
36
+ static fromString(str: string) {
37
+ return PrivateTxBaseRollupPrivateInputs.fromBuffer(hexToBuffer(str));
38
+ }
39
+
40
+ toString() {
41
+ return bufferToHex(this.toBuffer());
42
+ }
43
+
44
+ /** Returns a buffer representation for JSON serialization. */
45
+ toJSON() {
46
+ return this.toBuffer();
47
+ }
48
+
49
+ /** Creates an instance from a hex string. */
50
+ static get schema() {
51
+ return bufferSchemaFor(PrivateTxBaseRollupPrivateInputs);
52
+ }
53
+ }
@@ -0,0 +1,53 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+ import { bufferSchemaFor } from '@aztec/foundation/schemas';
3
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
+ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
+ import type { FieldsOf } from '@aztec/foundation/types';
6
+
7
+ import { PrivateToPublicKernelCircuitPublicInputs } from '../kernel/private_to_public_kernel_circuit_public_inputs.js';
8
+ import { type CivcProofData, ProofData } from '../proofs/proof_data.js';
9
+
10
+ export class PublicTubePrivateInputs {
11
+ constructor(
12
+ public hidingKernelProofData: CivcProofData<PrivateToPublicKernelCircuitPublicInputs>,
13
+ public proverId: Fr,
14
+ ) {}
15
+
16
+ static from(fields: FieldsOf<PublicTubePrivateInputs>) {
17
+ return new PublicTubePrivateInputs(...PublicTubePrivateInputs.getFields(fields));
18
+ }
19
+
20
+ static getFields(fields: FieldsOf<PublicTubePrivateInputs>) {
21
+ return [fields.hidingKernelProofData, fields.proverId] as const;
22
+ }
23
+
24
+ static fromBuffer(buffer: Buffer | BufferReader) {
25
+ const reader = BufferReader.asReader(buffer);
26
+ return new PublicTubePrivateInputs(
27
+ ProofData.fromBuffer(reader, PrivateToPublicKernelCircuitPublicInputs),
28
+ Fr.fromBuffer(reader),
29
+ );
30
+ }
31
+
32
+ toBuffer() {
33
+ return serializeToBuffer(...PublicTubePrivateInputs.getFields(this));
34
+ }
35
+
36
+ static fromString(str: string) {
37
+ return PublicTubePrivateInputs.fromBuffer(hexToBuffer(str));
38
+ }
39
+
40
+ toString() {
41
+ return bufferToHex(this.toBuffer());
42
+ }
43
+
44
+ /** Returns a representation for JSON serialization. */
45
+ toJSON() {
46
+ return this.toBuffer();
47
+ }
48
+
49
+ /** Creates an instance from a string. */
50
+ static get schema() {
51
+ return bufferSchemaFor(PublicTubePrivateInputs);
52
+ }
53
+ }
@@ -0,0 +1,52 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+ import { bufferSchemaFor } from '@aztec/foundation/schemas';
3
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
+ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
+ import type { FieldsOf } from '@aztec/foundation/types';
6
+
7
+ import { PrivateToPublicKernelCircuitPublicInputs } from '../kernel/private_to_public_kernel_circuit_public_inputs.js';
8
+
9
+ export class PublicTubePublicInputs {
10
+ constructor(
11
+ public privateTail: PrivateToPublicKernelCircuitPublicInputs,
12
+ public proverId: Fr,
13
+ ) {}
14
+
15
+ static from(fields: FieldsOf<PublicTubePublicInputs>) {
16
+ return new PublicTubePublicInputs(...PublicTubePublicInputs.getFields(fields));
17
+ }
18
+
19
+ static getFields(fields: FieldsOf<PublicTubePublicInputs>) {
20
+ return [fields.privateTail, fields.proverId] as const;
21
+ }
22
+
23
+ static fromBuffer(buffer: Buffer | BufferReader) {
24
+ const reader = BufferReader.asReader(buffer);
25
+ return new PublicTubePublicInputs(
26
+ reader.readObject(PrivateToPublicKernelCircuitPublicInputs),
27
+ reader.readObject(Fr),
28
+ );
29
+ }
30
+
31
+ toBuffer() {
32
+ return serializeToBuffer(...PublicTubePublicInputs.getFields(this));
33
+ }
34
+
35
+ static fromString(str: string) {
36
+ return PublicTubePublicInputs.fromBuffer(hexToBuffer(str));
37
+ }
38
+
39
+ toString() {
40
+ return bufferToHex(this.toBuffer());
41
+ }
42
+
43
+ /** Returns a representation for JSON serialization. */
44
+ toJSON() {
45
+ return this.toBuffer();
46
+ }
47
+
48
+ /** Creates an instance from a string. */
49
+ static get schema() {
50
+ return bufferSchemaFor(PublicTubePublicInputs);
51
+ }
52
+ }