@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,28 +1,55 @@
1
1
  import type { BatchedBlob, FinalBlobBatchingChallenges } from '@aztec/blob-lib';
2
2
  import type { EthAddress } from '@aztec/foundation/eth-address';
3
+ import type { Fr } from '@aztec/foundation/fields';
3
4
 
4
- import type { L2Block } from '../block/l2_block.js';
5
5
  import type { Proof } from '../proofs/proof.js';
6
- import type { RootRollupPublicInputs } from '../rollup/root_rollup.js';
6
+ import type { CheckpointConstantData } from '../rollup/checkpoint_constant_data.js';
7
+ import type { RootRollupPublicInputs } from '../rollup/root_rollup_public_inputs.js';
7
8
  import type { BlockHeader } from '../tx/block_header.js';
8
9
  import type { Tx } from '../tx/tx.js';
10
+ import type { UInt64 } from '../types/index.js';
9
11
  import type { IBlockFactory } from './block-builder.js';
10
12
 
11
13
  /** Coordinates the proving of an entire epoch. */
12
- export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted'> {
14
+ export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted' | 'startNewBlock'> {
13
15
  /**
14
16
  * Starts a new epoch. Must be the first method to be called.
15
17
  * @param epochNumber - The epoch number.
16
- * @param firstBlockNumber - The block number of the first block in the epoch.
17
- * @param totalNumBlocks - The total number of blocks expected in the epoch (must be at least one).
18
+ * @param totalNumCheckpoints - The total number of checkpoints expected in the epoch (must be at least one).
19
+ * @param finalBlobBatchingChallenges - The final blob batching challenges for the epoch.
18
20
  **/
19
21
  startNewEpoch(
20
22
  epochNumber: number,
21
- firstBlockNumber: number,
22
- totalNumBlocks: number,
23
+ totalNumCheckpoints: number,
23
24
  finalBlobBatchingChallenges: FinalBlobBatchingChallenges,
24
25
  ): void;
25
26
 
27
+ /**
28
+ * Starts a new checkpoint.
29
+ * @param checkpointIndex - The index of the checkpoint in the epoch.
30
+ * @param constants - The constants for this checkpoint.
31
+ * @param l1ToL2Messages - The set of L1 to L2 messages to be included in this checkpoint.
32
+ * @param totalNumBlocks - The total number of blocks expected in the checkpoint (must be at least one).
33
+ * @param totalNumBlobFields - The total number of blob fields expected in the checkpoint.
34
+ * @param headerOfLastBlockInPreviousCheckpoint - The header of the last block in the previous checkpoint.
35
+ */
36
+ startNewCheckpoint(
37
+ checkpointIndex: number,
38
+ constants: CheckpointConstantData,
39
+ l1ToL2Messages: Fr[],
40
+ totalNumBlocks: number,
41
+ totalNumBlobFields: number,
42
+ headerOfLastBlockInPreviousCheckpoint: BlockHeader,
43
+ ): Promise<void>;
44
+
45
+ /**
46
+ * Starts a new block.
47
+ * @param blockNumber - The block number.
48
+ * @param timestamp - The timestamp of the block.
49
+ * @param totalNumTxs - The total number of txs in the block.
50
+ */
51
+ startNewBlock(blockNumber: number, timestamp: UInt64, totalNumTxs: number): Promise<void>;
52
+
26
53
  /**
27
54
  * Kickstarts tube circuits for the specified txs. These will be used during epoch proving.
28
55
  * Note that if the tube circuits are not started this way, they will be started nontheless after processing.
@@ -30,7 +57,7 @@ export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted'> {
30
57
  startTubeCircuits(txs: Tx[]): Promise<void>;
31
58
 
32
59
  /** Returns the block. */
33
- setBlockCompleted(blockNumber: number, expectedBlockHeader?: BlockHeader): Promise<L2Block>;
60
+ setBlockCompleted(blockNumber: number, expectedBlockHeader?: BlockHeader): Promise<BlockHeader>;
34
61
 
35
62
  /** Pads the epoch with empty block roots if needed and blocks until proven. Throws if proving has failed. */
36
63
  finalizeEpoch(): Promise<{ publicInputs: RootRollupPublicInputs; proof: Proof; batchedBlobInputs: BatchedBlob }>;
@@ -41,9 +68,6 @@ export interface EpochProver extends Omit<IBlockFactory, 'setBlockCompleted'> {
41
68
  /** Returns an identifier for the prover or zero if not set. */
42
69
  getProverId(): EthAddress;
43
70
 
44
- /** Returns the block assembled at a given index (zero-based) within the epoch. */
45
- getBlock(index: number): L2Block;
46
-
47
71
  /** Called when no longer required, cleans up internal resources */
48
72
  stop(): Promise<void>;
49
73
  }
@@ -7,6 +7,7 @@ import type { NullifierLeaf } from '../trees/nullifier_leaf.js';
7
7
  import type { PublicDataTreeLeaf } from '../trees/public_data_leaf.js';
8
8
  import type { BlockHeader } from '../tx/block_header.js';
9
9
  import type { StateReference } from '../tx/state_reference.js';
10
+ import type { WorldStateRevision } from '../world-state/world_state_revision.js';
10
11
 
11
12
  /**
12
13
  * Type alias for the nullifier tree ID.
@@ -132,6 +133,11 @@ export interface MerkleTreeReadOperations {
132
133
  */
133
134
  getInitialHeader(): BlockHeader;
134
135
 
136
+ /**
137
+ * Gets the current revision.
138
+ */
139
+ getRevision(): WorldStateRevision;
140
+
135
141
  /**
136
142
  * Gets sibling path for a leaf.
137
143
  * @param treeId - The tree to be queried for a sibling path.
@@ -57,6 +57,9 @@ export interface P2PApiWithAttestations extends P2PApiWithoutAttestations {
57
57
  * @returns BlockAttestations
58
58
  */
59
59
  getAttestationsForSlot(slot: bigint, proposalId?: string): Promise<BlockAttestation[]>;
60
+
61
+ /** Deletes a given attestation manually from the p2p client attestation pool. */
62
+ deleteAttestation(attestation: BlockAttestation): Promise<void>;
60
63
  }
61
64
 
62
65
  export interface P2PClient extends P2PApiWithAttestations {
@@ -85,4 +88,5 @@ export const P2PApiSchema: ApiSchemaFor<P2PApi> = {
85
88
  getPendingTxCount: z.function().returns(schemas.Integer),
86
89
  getEncodedEnr: z.function().returns(z.string().optional()),
87
90
  getPeers: z.function().args(optional(z.boolean())).returns(z.array(PeerInfoSchema)),
91
+ deleteAttestation: z.function().args(BlockAttestation.schema).returns(z.void()),
88
92
  };
@@ -10,7 +10,7 @@ import type {
10
10
  PrivateKernelTailCircuitPrivateInputs,
11
11
  PrivateKernelTailCircuitPublicInputs,
12
12
  } from '../kernel/index.js';
13
- import type { ClientIvcProof } from '../proofs/client_ivc_proof.js';
13
+ import type { ClientIvcProofWithPublicInputs } from '../proofs/client_ivc_proof.js';
14
14
 
15
15
  /**
16
16
  * PrivateKernelProver provides functionality to simulate and validate circuits, and retrieve
@@ -110,7 +110,7 @@ export interface PrivateKernelProver {
110
110
  * @param acirs The program bytecode.
111
111
  * @param witnessStack The witnessses for each program bytecode.
112
112
  */
113
- createClientIvcProof(executionSteps: PrivateExecutionStep[]): Promise<ClientIvcProof>;
113
+ createClientIvcProof(executionSteps: PrivateExecutionStep[]): Promise<ClientIvcProofWithPublicInputs>;
114
114
 
115
115
  /**
116
116
  * Compute the gate count for a given circuit.
@@ -3,7 +3,6 @@ import {
3
3
  NESTED_RECURSIVE_PROOF_LENGTH,
4
4
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
5
5
  RECURSIVE_PROOF_LENGTH,
6
- TUBE_PROOF_LENGTH,
7
6
  } from '@aztec/constants';
8
7
  import type { ZodFor } from '@aztec/foundation/schemas';
9
8
 
@@ -11,23 +10,35 @@ import { z } from 'zod';
11
10
 
12
11
  import { AvmCircuitInputs } from '../avm/avm.js';
13
12
  import { AvmProvingRequestSchema } from '../avm/avm_proving_request.js';
14
- import { BaseParityInputs } from '../parity/base_parity_inputs.js';
13
+ import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
15
14
  import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
16
- import { RootParityInputs } from '../parity/root_parity_inputs.js';
15
+ import { ParityRootPrivateInputs } from '../parity/parity_root_private_inputs.js';
17
16
  import { ProvingRequestType } from '../proofs/proving_request_type.js';
18
17
  import { RecursiveProof } from '../proofs/recursive_proof.js';
19
- import { BaseOrMergeRollupPublicInputs } from '../rollup/base_or_merge_rollup_public_inputs.js';
20
- import { BlockMergeRollupInputs } from '../rollup/block_merge_rollup.js';
21
- import { BlockRootOrBlockMergePublicInputs } from '../rollup/block_root_or_block_merge_public_inputs.js';
22
- import { BlockRootRollupInputs, SingleTxBlockRootRollupInputs } from '../rollup/block_root_rollup.js';
23
- import { EmptyBlockRootRollupInputs } from '../rollup/empty_block_root_rollup_inputs.js';
24
- import { PaddingBlockRootRollupInputs } from '../rollup/index.js';
25
- import { MergeRollupInputs } from '../rollup/merge_rollup.js';
26
- import { PrivateBaseRollupInputs } from '../rollup/private_base_rollup_inputs.js';
27
- import { PublicBaseRollupInputs } from '../rollup/public_base_rollup_inputs.js';
28
- import { RootRollupInputs, RootRollupPublicInputs } from '../rollup/root_rollup.js';
29
- import { TubeInputs } from '../rollup/tube_inputs.js';
30
- import type { ServerCircuitName } from '../stats/index.js';
18
+ import { BlockMergeRollupPrivateInputs } from '../rollup/block_merge_rollup_private_inputs.js';
19
+ import { BlockRollupPublicInputs } from '../rollup/block_rollup_public_inputs.js';
20
+ import {
21
+ BlockRootEmptyTxFirstRollupPrivateInputs,
22
+ BlockRootFirstRollupPrivateInputs,
23
+ BlockRootRollupPrivateInputs,
24
+ BlockRootSingleTxFirstRollupPrivateInputs,
25
+ BlockRootSingleTxRollupPrivateInputs,
26
+ } from '../rollup/block_root_rollup_private_inputs.js';
27
+ import { CheckpointMergeRollupPrivateInputs } from '../rollup/checkpoint_merge_rollup_private_inputs.js';
28
+ import { CheckpointRollupPublicInputs } from '../rollup/checkpoint_rollup_public_inputs.js';
29
+ import {
30
+ CheckpointPaddingRollupPrivateInputs,
31
+ CheckpointRootRollupPrivateInputs,
32
+ CheckpointRootSingleBlockRollupPrivateInputs,
33
+ } from '../rollup/checkpoint_root_rollup_private_inputs.js';
34
+ import { PrivateTxBaseRollupPrivateInputs } from '../rollup/private_tx_base_rollup_private_inputs.js';
35
+ import { PublicTubePrivateInputs } from '../rollup/public_tube_private_inputs.js';
36
+ import { PublicTubePublicInputs } from '../rollup/public_tube_public_inputs.js';
37
+ import { PublicTxBaseRollupPrivateInputs } from '../rollup/public_tx_base_rollup_private_inputs.js';
38
+ import { RootRollupPrivateInputs } from '../rollup/root_rollup_private_inputs.js';
39
+ import { RootRollupPublicInputs } from '../rollup/root_rollup_public_inputs.js';
40
+ import { TxMergeRollupPrivateInputs } from '../rollup/tx_merge_rollup_private_inputs.js';
41
+ import { TxRollupPublicInputs } from '../rollup/tx_rollup_public_inputs.js';
31
42
  import { VerificationKeyData } from '../vks/verification_key.js';
32
43
 
33
44
  export type ProofAndVerificationKey<N extends number> = {
@@ -76,91 +87,95 @@ export function makePublicInputsAndRecursiveProof<T, N extends number = typeof N
76
87
  return { inputs, proof, verificationKey };
77
88
  }
78
89
 
79
- export function mapProvingRequestTypeToCircuitName(type: ProvingRequestType): ServerCircuitName {
80
- switch (type) {
81
- case ProvingRequestType.PUBLIC_VM:
82
- return 'avm-circuit';
83
- case ProvingRequestType.PRIVATE_BASE_ROLLUP:
84
- return 'private-base-rollup';
85
- case ProvingRequestType.PUBLIC_BASE_ROLLUP:
86
- return 'public-base-rollup';
87
- case ProvingRequestType.MERGE_ROLLUP:
88
- return 'merge-rollup';
89
- case ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP:
90
- return 'empty-block-root-rollup';
91
- case ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP:
92
- return 'padding-block-root-rollup';
93
- case ProvingRequestType.BLOCK_ROOT_ROLLUP:
94
- return 'block-root-rollup';
95
- case ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP:
96
- return 'single-tx-block-root-rollup';
97
- case ProvingRequestType.BLOCK_MERGE_ROLLUP:
98
- return 'block-merge-rollup';
99
- case ProvingRequestType.ROOT_ROLLUP:
100
- return 'root-rollup';
101
- case ProvingRequestType.BASE_PARITY:
102
- return 'base-parity';
103
- case ProvingRequestType.ROOT_PARITY:
104
- return 'root-parity';
105
- case ProvingRequestType.TUBE_PROOF:
106
- return 'tube-circuit';
107
- default: {
108
- const _exhaustive: never = type;
109
- throw new Error(`Cannot find circuit name for proving request type: ${type}`);
110
- }
111
- }
112
- }
113
-
114
90
  export const ProvingJobInputs = z.discriminatedUnion('type', [
115
91
  AvmProvingRequestSchema,
116
- z.object({ type: z.literal(ProvingRequestType.BASE_PARITY), inputs: BaseParityInputs.schema }),
117
- z.object({ type: z.literal(ProvingRequestType.ROOT_PARITY), inputs: RootParityInputs.schema }),
118
- z.object({ type: z.literal(ProvingRequestType.PRIVATE_BASE_ROLLUP), inputs: PrivateBaseRollupInputs.schema }),
119
- z.object({ type: z.literal(ProvingRequestType.PUBLIC_BASE_ROLLUP), inputs: PublicBaseRollupInputs.schema }),
120
- z.object({ type: z.literal(ProvingRequestType.MERGE_ROLLUP), inputs: MergeRollupInputs.schema }),
121
- z.object({ type: z.literal(ProvingRequestType.BLOCK_ROOT_ROLLUP), inputs: BlockRootRollupInputs.schema }),
92
+ z.object({ type: z.literal(ProvingRequestType.PARITY_BASE), inputs: ParityBasePrivateInputs.schema }),
93
+ z.object({ type: z.literal(ProvingRequestType.PARITY_ROOT), inputs: ParityRootPrivateInputs.schema }),
94
+ z.object({ type: z.literal(ProvingRequestType.PUBLIC_TUBE), inputs: PublicTubePrivateInputs.schema }),
95
+ z.object({
96
+ type: z.literal(ProvingRequestType.PRIVATE_TX_BASE_ROLLUP),
97
+ inputs: PrivateTxBaseRollupPrivateInputs.schema,
98
+ }),
99
+ z.object({
100
+ type: z.literal(ProvingRequestType.PUBLIC_TX_BASE_ROLLUP),
101
+ inputs: PublicTxBaseRollupPrivateInputs.schema,
102
+ }),
103
+ z.object({ type: z.literal(ProvingRequestType.TX_MERGE_ROLLUP), inputs: TxMergeRollupPrivateInputs.schema }),
104
+ z.object({
105
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP),
106
+ inputs: BlockRootFirstRollupPrivateInputs.schema,
107
+ }),
122
108
  z.object({
123
- type: z.literal(ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP),
124
- inputs: SingleTxBlockRootRollupInputs.schema,
109
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP),
110
+ inputs: BlockRootSingleTxFirstRollupPrivateInputs.schema,
125
111
  }),
126
- z.object({ type: z.literal(ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP), inputs: EmptyBlockRootRollupInputs.schema }),
127
112
  z.object({
128
- type: z.literal(ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP),
129
- inputs: PaddingBlockRootRollupInputs.schema,
113
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP),
114
+ inputs: BlockRootEmptyTxFirstRollupPrivateInputs.schema,
130
115
  }),
131
- z.object({ type: z.literal(ProvingRequestType.BLOCK_MERGE_ROLLUP), inputs: BlockMergeRollupInputs.schema }),
132
- z.object({ type: z.literal(ProvingRequestType.ROOT_ROLLUP), inputs: RootRollupInputs.schema }),
133
- z.object({ type: z.literal(ProvingRequestType.TUBE_PROOF), inputs: TubeInputs.schema }),
116
+ z.object({ type: z.literal(ProvingRequestType.BLOCK_ROOT_ROLLUP), inputs: BlockRootRollupPrivateInputs.schema }),
117
+ z.object({
118
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP),
119
+ inputs: BlockRootSingleTxRollupPrivateInputs.schema,
120
+ }),
121
+ z.object({ type: z.literal(ProvingRequestType.BLOCK_MERGE_ROLLUP), inputs: BlockMergeRollupPrivateInputs.schema }),
122
+ z.object({
123
+ type: z.literal(ProvingRequestType.CHECKPOINT_ROOT_ROLLUP),
124
+ inputs: CheckpointRootRollupPrivateInputs.schema,
125
+ }),
126
+ z.object({
127
+ type: z.literal(ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP),
128
+ inputs: CheckpointRootSingleBlockRollupPrivateInputs.schema,
129
+ }),
130
+ z.object({
131
+ type: z.literal(ProvingRequestType.CHECKPOINT_PADDING_ROLLUP),
132
+ inputs: CheckpointPaddingRollupPrivateInputs.schema,
133
+ }),
134
+ z.object({
135
+ type: z.literal(ProvingRequestType.CHECKPOINT_MERGE_ROLLUP),
136
+ inputs: CheckpointMergeRollupPrivateInputs.schema,
137
+ }),
138
+ z.object({ type: z.literal(ProvingRequestType.ROOT_ROLLUP), inputs: RootRollupPrivateInputs.schema }),
134
139
  ]);
135
140
 
136
141
  export function getProvingJobInputClassFor(type: ProvingRequestType) {
137
142
  switch (type) {
138
143
  case ProvingRequestType.PUBLIC_VM:
139
144
  return AvmCircuitInputs;
140
- case ProvingRequestType.PRIVATE_BASE_ROLLUP:
141
- return PrivateBaseRollupInputs;
142
- case ProvingRequestType.PUBLIC_BASE_ROLLUP:
143
- return PublicBaseRollupInputs;
144
- case ProvingRequestType.MERGE_ROLLUP:
145
- return MergeRollupInputs;
146
- case ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP:
147
- return EmptyBlockRootRollupInputs;
148
- case ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP:
149
- return PaddingBlockRootRollupInputs;
145
+ case ProvingRequestType.PUBLIC_TUBE:
146
+ return PublicTubePrivateInputs;
147
+ case ProvingRequestType.PRIVATE_TX_BASE_ROLLUP:
148
+ return PrivateTxBaseRollupPrivateInputs;
149
+ case ProvingRequestType.PUBLIC_TX_BASE_ROLLUP:
150
+ return PublicTxBaseRollupPrivateInputs;
151
+ case ProvingRequestType.TX_MERGE_ROLLUP:
152
+ return TxMergeRollupPrivateInputs;
153
+ case ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP:
154
+ return BlockRootFirstRollupPrivateInputs;
155
+ case ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP:
156
+ return BlockRootSingleTxFirstRollupPrivateInputs;
157
+ case ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP:
158
+ return BlockRootEmptyTxFirstRollupPrivateInputs;
150
159
  case ProvingRequestType.BLOCK_ROOT_ROLLUP:
151
- return BlockRootRollupInputs;
152
- case ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP:
153
- return SingleTxBlockRootRollupInputs;
160
+ return BlockRootRollupPrivateInputs;
161
+ case ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP:
162
+ return BlockRootSingleTxRollupPrivateInputs;
154
163
  case ProvingRequestType.BLOCK_MERGE_ROLLUP:
155
- return BlockMergeRollupInputs;
164
+ return BlockMergeRollupPrivateInputs;
165
+ case ProvingRequestType.CHECKPOINT_ROOT_ROLLUP:
166
+ return CheckpointRootRollupPrivateInputs;
167
+ case ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP:
168
+ return CheckpointRootSingleBlockRollupPrivateInputs;
169
+ case ProvingRequestType.CHECKPOINT_PADDING_ROLLUP:
170
+ return CheckpointPaddingRollupPrivateInputs;
171
+ case ProvingRequestType.CHECKPOINT_MERGE_ROLLUP:
172
+ return CheckpointMergeRollupPrivateInputs;
156
173
  case ProvingRequestType.ROOT_ROLLUP:
157
- return RootRollupInputs;
158
- case ProvingRequestType.BASE_PARITY:
159
- return BaseParityInputs;
160
- case ProvingRequestType.ROOT_PARITY:
161
- return RootParityInputs;
162
- case ProvingRequestType.TUBE_PROOF:
163
- return TubeInputs;
174
+ return RootRollupPrivateInputs;
175
+ case ProvingRequestType.PARITY_BASE:
176
+ return ParityBasePrivateInputs;
177
+ case ProvingRequestType.PARITY_ROOT:
178
+ return ParityRootPrivateInputs;
164
179
  default: {
165
180
  const _exhaustive: never = type;
166
181
  throw new Error(`Cannot find circuit inputs class for proving type ${type}`);
@@ -172,18 +187,23 @@ export type ProvingJobInputs = z.infer<typeof ProvingJobInputs>;
172
187
 
173
188
  export type ProvingJobInputsMap = {
174
189
  [ProvingRequestType.PUBLIC_VM]: AvmCircuitInputs;
175
- [ProvingRequestType.PRIVATE_BASE_ROLLUP]: PrivateBaseRollupInputs;
176
- [ProvingRequestType.PUBLIC_BASE_ROLLUP]: PublicBaseRollupInputs;
177
- [ProvingRequestType.MERGE_ROLLUP]: MergeRollupInputs;
178
- [ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP]: EmptyBlockRootRollupInputs;
179
- [ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP]: PaddingBlockRootRollupInputs;
180
- [ProvingRequestType.BLOCK_ROOT_ROLLUP]: BlockRootRollupInputs;
181
- [ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP]: SingleTxBlockRootRollupInputs;
182
- [ProvingRequestType.BLOCK_MERGE_ROLLUP]: BlockMergeRollupInputs;
183
- [ProvingRequestType.ROOT_ROLLUP]: RootRollupInputs;
184
- [ProvingRequestType.BASE_PARITY]: BaseParityInputs;
185
- [ProvingRequestType.ROOT_PARITY]: RootParityInputs;
186
- [ProvingRequestType.TUBE_PROOF]: TubeInputs;
190
+ [ProvingRequestType.PUBLIC_TUBE]: PublicTubePrivateInputs;
191
+ [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: PrivateTxBaseRollupPrivateInputs;
192
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: PublicTxBaseRollupPrivateInputs;
193
+ [ProvingRequestType.TX_MERGE_ROLLUP]: TxMergeRollupPrivateInputs;
194
+ [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: BlockRootFirstRollupPrivateInputs;
195
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: BlockRootSingleTxFirstRollupPrivateInputs;
196
+ [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: BlockRootEmptyTxFirstRollupPrivateInputs;
197
+ [ProvingRequestType.BLOCK_ROOT_ROLLUP]: BlockRootRollupPrivateInputs;
198
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: BlockRootSingleTxRollupPrivateInputs;
199
+ [ProvingRequestType.BLOCK_MERGE_ROLLUP]: BlockMergeRollupPrivateInputs;
200
+ [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: CheckpointRootRollupPrivateInputs;
201
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: CheckpointRootSingleBlockRollupPrivateInputs;
202
+ [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: CheckpointPaddingRollupPrivateInputs;
203
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: CheckpointMergeRollupPrivateInputs;
204
+ [ProvingRequestType.ROOT_ROLLUP]: RootRollupPrivateInputs;
205
+ [ProvingRequestType.PARITY_BASE]: ParityBasePrivateInputs;
206
+ [ProvingRequestType.PARITY_ROOT]: ParityRootPrivateInputs;
187
207
  };
188
208
 
189
209
  export const ProvingJobResult = z.discriminatedUnion('type', [
@@ -192,58 +212,100 @@ export const ProvingJobResult = z.discriminatedUnion('type', [
192
212
  result: schemaForRecursiveProofAndVerificationKey(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED),
193
213
  }),
194
214
  z.object({
195
- type: z.literal(ProvingRequestType.PRIVATE_BASE_ROLLUP),
215
+ type: z.literal(ProvingRequestType.PUBLIC_TUBE),
196
216
  result: schemaForPublicInputsAndRecursiveProof(
197
- BaseOrMergeRollupPublicInputs.schema,
217
+ PublicTubePublicInputs.schema,
198
218
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
199
219
  ),
200
220
  }),
201
221
  z.object({
202
- type: z.literal(ProvingRequestType.PUBLIC_BASE_ROLLUP),
222
+ type: z.literal(ProvingRequestType.PRIVATE_TX_BASE_ROLLUP),
203
223
  result: schemaForPublicInputsAndRecursiveProof(
204
- BaseOrMergeRollupPublicInputs.schema,
224
+ TxRollupPublicInputs.schema,
205
225
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
206
226
  ),
207
227
  }),
208
228
  z.object({
209
- type: z.literal(ProvingRequestType.MERGE_ROLLUP),
229
+ type: z.literal(ProvingRequestType.PUBLIC_TX_BASE_ROLLUP),
210
230
  result: schemaForPublicInputsAndRecursiveProof(
211
- BaseOrMergeRollupPublicInputs.schema,
231
+ TxRollupPublicInputs.schema,
212
232
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
213
233
  ),
214
234
  }),
215
235
  z.object({
216
- type: z.literal(ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP),
236
+ type: z.literal(ProvingRequestType.TX_MERGE_ROLLUP),
217
237
  result: schemaForPublicInputsAndRecursiveProof(
218
- BlockRootOrBlockMergePublicInputs.schema,
238
+ TxRollupPublicInputs.schema,
219
239
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
220
240
  ),
221
241
  }),
222
242
  z.object({
223
- type: z.literal(ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP),
243
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP),
224
244
  result: schemaForPublicInputsAndRecursiveProof(
225
- BlockRootOrBlockMergePublicInputs.schema,
245
+ BlockRollupPublicInputs.schema,
246
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
247
+ ),
248
+ }),
249
+ z.object({
250
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP),
251
+ result: schemaForPublicInputsAndRecursiveProof(
252
+ BlockRollupPublicInputs.schema,
253
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
254
+ ),
255
+ }),
256
+ z.object({
257
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP),
258
+ result: schemaForPublicInputsAndRecursiveProof(
259
+ BlockRollupPublicInputs.schema,
226
260
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
227
261
  ),
228
262
  }),
229
263
  z.object({
230
264
  type: z.literal(ProvingRequestType.BLOCK_ROOT_ROLLUP),
231
265
  result: schemaForPublicInputsAndRecursiveProof(
232
- BlockRootOrBlockMergePublicInputs.schema,
266
+ BlockRollupPublicInputs.schema,
233
267
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
234
268
  ),
235
269
  }),
236
270
  z.object({
237
- type: z.literal(ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP),
271
+ type: z.literal(ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP),
238
272
  result: schemaForPublicInputsAndRecursiveProof(
239
- BlockRootOrBlockMergePublicInputs.schema,
273
+ BlockRollupPublicInputs.schema,
240
274
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
241
275
  ),
242
276
  }),
243
277
  z.object({
244
278
  type: z.literal(ProvingRequestType.BLOCK_MERGE_ROLLUP),
245
279
  result: schemaForPublicInputsAndRecursiveProof(
246
- BlockRootOrBlockMergePublicInputs.schema,
280
+ BlockRollupPublicInputs.schema,
281
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
282
+ ),
283
+ }),
284
+ z.object({
285
+ type: z.literal(ProvingRequestType.CHECKPOINT_ROOT_ROLLUP),
286
+ result: schemaForPublicInputsAndRecursiveProof(
287
+ CheckpointRollupPublicInputs.schema,
288
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
289
+ ),
290
+ }),
291
+ z.object({
292
+ type: z.literal(ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP),
293
+ result: schemaForPublicInputsAndRecursiveProof(
294
+ CheckpointRollupPublicInputs.schema,
295
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
296
+ ),
297
+ }),
298
+ z.object({
299
+ type: z.literal(ProvingRequestType.CHECKPOINT_PADDING_ROLLUP),
300
+ result: schemaForPublicInputsAndRecursiveProof(
301
+ CheckpointRollupPublicInputs.schema,
302
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
303
+ ),
304
+ }),
305
+ z.object({
306
+ type: z.literal(ProvingRequestType.CHECKPOINT_MERGE_ROLLUP),
307
+ result: schemaForPublicInputsAndRecursiveProof(
308
+ CheckpointRollupPublicInputs.schema,
247
309
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
248
310
  ),
249
311
  }),
@@ -252,60 +314,79 @@ export const ProvingJobResult = z.discriminatedUnion('type', [
252
314
  result: schemaForPublicInputsAndRecursiveProof(RootRollupPublicInputs.schema, NESTED_RECURSIVE_PROOF_LENGTH),
253
315
  }),
254
316
  z.object({
255
- type: z.literal(ProvingRequestType.BASE_PARITY),
317
+ type: z.literal(ProvingRequestType.PARITY_BASE),
256
318
  result: schemaForPublicInputsAndRecursiveProof(ParityPublicInputs.schema, RECURSIVE_PROOF_LENGTH),
257
319
  }),
258
320
  z.object({
259
- type: z.literal(ProvingRequestType.ROOT_PARITY),
321
+ type: z.literal(ProvingRequestType.PARITY_ROOT),
260
322
  result: schemaForPublicInputsAndRecursiveProof(ParityPublicInputs.schema, NESTED_RECURSIVE_PROOF_LENGTH),
261
323
  }),
262
- z.object({
263
- type: z.literal(ProvingRequestType.TUBE_PROOF),
264
- result: schemaForRecursiveProofAndVerificationKey(TUBE_PROOF_LENGTH),
265
- }),
266
324
  ]);
267
325
  export type ProvingJobResult = z.infer<typeof ProvingJobResult>;
268
326
  export type ProvingJobResultsMap = {
269
327
  [ProvingRequestType.PUBLIC_VM]: ProofAndVerificationKey<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>;
270
- [ProvingRequestType.PRIVATE_BASE_ROLLUP]: PublicInputsAndRecursiveProof<
271
- BaseOrMergeRollupPublicInputs,
328
+ [ProvingRequestType.PUBLIC_TUBE]: PublicInputsAndRecursiveProof<
329
+ PublicTubePublicInputs,
330
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
331
+ >;
332
+ [ProvingRequestType.PRIVATE_TX_BASE_ROLLUP]: PublicInputsAndRecursiveProof<
333
+ TxRollupPublicInputs,
272
334
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
273
335
  >;
274
- [ProvingRequestType.PUBLIC_BASE_ROLLUP]: PublicInputsAndRecursiveProof<
275
- BaseOrMergeRollupPublicInputs,
336
+ [ProvingRequestType.PUBLIC_TX_BASE_ROLLUP]: PublicInputsAndRecursiveProof<
337
+ TxRollupPublicInputs,
276
338
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
277
339
  >;
278
- [ProvingRequestType.MERGE_ROLLUP]: PublicInputsAndRecursiveProof<
279
- BaseOrMergeRollupPublicInputs,
340
+ [ProvingRequestType.TX_MERGE_ROLLUP]: PublicInputsAndRecursiveProof<
341
+ TxRollupPublicInputs,
280
342
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
281
343
  >;
282
- [ProvingRequestType.EMPTY_BLOCK_ROOT_ROLLUP]: PublicInputsAndRecursiveProof<
283
- BlockRootOrBlockMergePublicInputs,
344
+ [ProvingRequestType.BLOCK_ROOT_FIRST_ROLLUP]: PublicInputsAndRecursiveProof<
345
+ BlockRollupPublicInputs,
284
346
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
285
347
  >;
286
- [ProvingRequestType.PADDING_BLOCK_ROOT_ROLLUP]: PublicInputsAndRecursiveProof<
287
- BlockRootOrBlockMergePublicInputs,
348
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_FIRST_ROLLUP]: PublicInputsAndRecursiveProof<
349
+ BlockRollupPublicInputs,
288
350
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
289
351
  >;
290
- [ProvingRequestType.SINGLE_TX_BLOCK_ROOT_ROLLUP]: PublicInputsAndRecursiveProof<
291
- BlockRootOrBlockMergePublicInputs,
352
+ [ProvingRequestType.BLOCK_ROOT_EMPTY_TX_FIRST_ROLLUP]: PublicInputsAndRecursiveProof<
353
+ BlockRollupPublicInputs,
292
354
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
293
355
  >;
294
356
  [ProvingRequestType.BLOCK_ROOT_ROLLUP]: PublicInputsAndRecursiveProof<
295
- BlockRootOrBlockMergePublicInputs,
357
+ BlockRollupPublicInputs,
358
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
359
+ >;
360
+ [ProvingRequestType.BLOCK_ROOT_SINGLE_TX_ROLLUP]: PublicInputsAndRecursiveProof<
361
+ BlockRollupPublicInputs,
296
362
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
297
363
  >;
298
364
  [ProvingRequestType.BLOCK_MERGE_ROLLUP]: PublicInputsAndRecursiveProof<
299
- BlockRootOrBlockMergePublicInputs,
365
+ BlockRollupPublicInputs,
366
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
367
+ >;
368
+ [ProvingRequestType.CHECKPOINT_ROOT_ROLLUP]: PublicInputsAndRecursiveProof<
369
+ CheckpointRollupPublicInputs,
370
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
371
+ >;
372
+ [ProvingRequestType.CHECKPOINT_ROOT_SINGLE_BLOCK_ROLLUP]: PublicInputsAndRecursiveProof<
373
+ CheckpointRollupPublicInputs,
374
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
375
+ >;
376
+ [ProvingRequestType.CHECKPOINT_PADDING_ROLLUP]: PublicInputsAndRecursiveProof<
377
+ CheckpointRollupPublicInputs,
378
+ typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
379
+ >;
380
+ [ProvingRequestType.CHECKPOINT_MERGE_ROLLUP]: PublicInputsAndRecursiveProof<
381
+ CheckpointRollupPublicInputs,
300
382
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
301
383
  >;
302
384
  [ProvingRequestType.ROOT_ROLLUP]: PublicInputsAndRecursiveProof<RootRollupPublicInputs>;
303
- [ProvingRequestType.BASE_PARITY]: PublicInputsAndRecursiveProof<ParityPublicInputs, typeof RECURSIVE_PROOF_LENGTH>;
304
- [ProvingRequestType.ROOT_PARITY]: PublicInputsAndRecursiveProof<
385
+ [ProvingRequestType.PARITY_BASE]: PublicInputsAndRecursiveProof<ParityPublicInputs, typeof RECURSIVE_PROOF_LENGTH>;
386
+ [ProvingRequestType.PARITY_ROOT]: PublicInputsAndRecursiveProof<
305
387
  ParityPublicInputs,
306
388
  typeof NESTED_RECURSIVE_PROOF_LENGTH
307
389
  >;
308
- [ProvingRequestType.TUBE_PROOF]: ProofAndVerificationKey<typeof TUBE_PROOF_LENGTH>;
309
390
  };
310
391
 
311
392
  export type ProvingRequestResultFor<T extends ProvingRequestType> = { type: T; result: ProvingJobResultsMap[T] };
@@ -21,4 +21,5 @@ export * from './server_circuit_prover.js';
21
21
  export * from './service.js';
22
22
  export * from './slasher.js';
23
23
  export * from './tx_provider.js';
24
+ export * from './validator.js';
24
25
  export * from './world_state.js';