@aztec/stdlib 0.0.1-commit.fcb71a6 → 0.0.1-commit.fffb133c

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 (531) hide show
  1. package/dest/abi/contract_artifact.d.ts +2 -2
  2. package/dest/abi/contract_artifact.d.ts.map +1 -1
  3. package/dest/abi/contract_artifact.js +1 -1
  4. package/dest/abi/function_call.d.ts +9 -1
  5. package/dest/abi/function_call.d.ts.map +1 -1
  6. package/dest/abi/selector.js +3 -1
  7. package/dest/abi/utils.d.ts +7 -1
  8. package/dest/abi/utils.d.ts.map +1 -1
  9. package/dest/abi/utils.js +7 -0
  10. package/dest/auth_witness/auth_witness.d.ts +2 -1
  11. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  12. package/dest/avm/avm.d.ts +62 -62
  13. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  14. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  15. package/dest/avm/avm_accumulated_data.js +5 -2
  16. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  17. package/dest/avm/avm_circuit_public_inputs.js +3 -1
  18. package/dest/avm/avm_proving_request.d.ts +299 -299
  19. package/dest/avm/contract_storage_read.d.ts +13 -1
  20. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  21. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  22. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  23. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  24. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  25. package/dest/avm/public_data_read.d.ts +10 -1
  26. package/dest/avm/public_data_read.d.ts.map +1 -1
  27. package/dest/avm/public_data_update_request.d.ts +10 -1
  28. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  29. package/dest/avm/public_data_update_request.js +3 -1
  30. package/dest/avm/public_data_write.d.ts +7 -1
  31. package/dest/avm/public_data_write.d.ts.map +1 -1
  32. package/dest/avm/public_inner_call_request.d.ts +4 -1
  33. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  34. package/dest/avm/public_inner_call_request.js +3 -1
  35. package/dest/avm/revert_code.d.ts +4 -4
  36. package/dest/avm/revert_code.d.ts.map +1 -1
  37. package/dest/avm/revert_code.js +3 -1
  38. package/dest/aztec-address/index.js +4 -2
  39. package/dest/block/attestation_info.d.ts +5 -5
  40. package/dest/block/attestation_info.d.ts.map +1 -1
  41. package/dest/block/attestation_info.js +4 -4
  42. package/dest/block/block_hash.d.ts +9 -2
  43. package/dest/block/block_hash.d.ts.map +1 -1
  44. package/dest/block/block_hash.js +15 -0
  45. package/dest/block/block_parameter.d.ts +4 -3
  46. package/dest/block/block_parameter.d.ts.map +1 -1
  47. package/dest/block/block_parameter.js +2 -0
  48. package/dest/block/body.d.ts +1 -1
  49. package/dest/block/body.d.ts.map +1 -1
  50. package/dest/block/body.js +5 -2
  51. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  52. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  53. package/dest/block/checkpointed_l2_block.js +7 -45
  54. package/dest/block/index.d.ts +1 -3
  55. package/dest/block/index.d.ts.map +1 -1
  56. package/dest/block/index.js +0 -2
  57. package/dest/block/l2_block.d.ts +56 -57
  58. package/dest/block/l2_block.d.ts.map +1 -1
  59. package/dest/block/l2_block.js +64 -107
  60. package/dest/block/l2_block_source.d.ts +296 -67
  61. package/dest/block/l2_block_source.d.ts.map +1 -1
  62. package/dest/block/l2_block_source.js +25 -6
  63. package/dest/block/l2_block_stream/index.d.ts +2 -1
  64. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  65. package/dest/block/l2_block_stream/index.js +1 -0
  66. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  67. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  68. package/dest/block/l2_block_stream/l2_block_stream.d.ts +8 -3
  69. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  70. package/dest/block/l2_block_stream/l2_block_stream.js +106 -31
  71. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  72. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  73. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  74. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  75. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  76. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  77. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  78. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  79. package/dest/block/test/l2_tips_store_test_suite.js +478 -38
  80. package/dest/block/validate_block_result.d.ts +24 -24
  81. package/dest/block/validate_block_result.d.ts.map +1 -1
  82. package/dest/block/validate_block_result.js +18 -17
  83. package/dest/checkpoint/checkpoint.d.ts +30 -20
  84. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  85. package/dest/checkpoint/checkpoint.js +19 -6
  86. package/dest/checkpoint/checkpoint_info.d.ts +32 -3
  87. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  88. package/dest/checkpoint/checkpoint_info.js +34 -1
  89. package/dest/checkpoint/index.d.ts +2 -1
  90. package/dest/checkpoint/index.d.ts.map +1 -1
  91. package/dest/checkpoint/index.js +1 -0
  92. package/dest/checkpoint/published_checkpoint.d.ts +17 -15
  93. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  94. package/dest/checkpoint/published_checkpoint.js +4 -3
  95. package/dest/config/node-rpc-config.js +1 -1
  96. package/dest/contract/complete_address.d.ts +4 -1
  97. package/dest/contract/complete_address.d.ts.map +1 -1
  98. package/dest/contract/contract_deployment_data.d.ts +5 -5
  99. package/dest/contract/index.d.ts +1 -3
  100. package/dest/contract/index.d.ts.map +1 -1
  101. package/dest/contract/index.js +0 -2
  102. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  103. package/dest/contract/private_function.d.ts +1 -1
  104. package/dest/contract/private_function.d.ts.map +1 -1
  105. package/dest/contract/private_function.js +1 -2
  106. package/dest/database-version/version_manager.d.ts +4 -2
  107. package/dest/database-version/version_manager.d.ts.map +1 -1
  108. package/dest/database-version/version_manager.js +3 -1
  109. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  110. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  111. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  112. package/dest/deserialization/index.d.ts +11 -0
  113. package/dest/deserialization/index.d.ts.map +1 -0
  114. package/dest/deserialization/index.js +10 -0
  115. package/dest/epoch-helpers/index.js +1 -1
  116. package/dest/errors/proving_error.d.ts +2 -2
  117. package/dest/errors/proving_error.d.ts.map +1 -1
  118. package/dest/gas/gas.js +3 -1
  119. package/dest/gas/gas_fees.js +3 -1
  120. package/dest/interfaces/api_limit.d.ts +3 -1
  121. package/dest/interfaces/api_limit.d.ts.map +1 -1
  122. package/dest/interfaces/api_limit.js +2 -0
  123. package/dest/interfaces/archiver.d.ts +6 -6
  124. package/dest/interfaces/archiver.d.ts.map +1 -1
  125. package/dest/interfaces/archiver.js +20 -16
  126. package/dest/interfaces/aztec-node-admin.d.ts +67 -31
  127. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  128. package/dest/interfaces/aztec-node-admin.js +2 -2
  129. package/dest/interfaces/aztec-node.d.ts +70 -51
  130. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  131. package/dest/interfaces/aztec-node.js +12 -9
  132. package/dest/interfaces/block-builder.d.ts +16 -14
  133. package/dest/interfaces/block-builder.d.ts.map +1 -1
  134. package/dest/interfaces/configs.d.ts +12 -7
  135. package/dest/interfaces/configs.d.ts.map +1 -1
  136. package/dest/interfaces/configs.js +2 -1
  137. package/dest/interfaces/get_logs_response.d.ts +1 -1
  138. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  139. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  140. package/dest/interfaces/p2p.d.ts +7 -9
  141. package/dest/interfaces/p2p.d.ts.map +1 -1
  142. package/dest/interfaces/p2p.js +3 -4
  143. package/dest/interfaces/prover-client.d.ts +10 -1
  144. package/dest/interfaces/prover-client.d.ts.map +1 -1
  145. package/dest/interfaces/prover-client.js +7 -1
  146. package/dest/interfaces/proving-job.d.ts +184 -184
  147. package/dest/interfaces/proving-job.d.ts.map +1 -1
  148. package/dest/interfaces/proving-job.js +1 -7
  149. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  150. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  151. package/dest/interfaces/tx_provider.d.ts +3 -3
  152. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  153. package/dest/interfaces/validator.d.ts +108 -18
  154. package/dest/interfaces/validator.d.ts.map +1 -1
  155. package/dest/interfaces/validator.js +5 -3
  156. package/dest/kernel/claimed_length_array.js +3 -1
  157. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  158. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  159. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  160. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  161. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  162. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  163. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  164. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  165. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  166. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  167. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
  168. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  169. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  170. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  171. package/dest/kernel/hints/read_request.d.ts +7 -1
  172. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  173. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  174. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  175. package/dest/kernel/hints/transient_data_squashing_hint.js +3 -1
  176. package/dest/kernel/log_hash.js +3 -1
  177. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  178. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  179. package/dest/kernel/private_call_data.d.ts +25 -1
  180. package/dest/kernel/private_call_data.d.ts.map +1 -1
  181. package/dest/kernel/private_call_request.d.ts +16 -1
  182. package/dest/kernel/private_call_request.d.ts.map +1 -1
  183. package/dest/kernel/private_circuit_public_inputs.d.ts +74 -1
  184. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  185. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
  186. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  187. package/dest/kernel/private_kernel_data.d.ts +7 -1
  188. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  189. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  190. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  191. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  192. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  193. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  194. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  195. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  196. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  197. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
  198. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  199. package/dest/kernel/private_log_data.js +5 -2
  200. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  201. package/dest/kernel/private_to_avm_accumulated_data.js +5 -2
  202. package/dest/kernel/private_to_public_accumulated_data.js +3 -1
  203. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  204. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  205. package/dest/kernel/private_to_rollup_accumulated_data.js +3 -1
  206. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
  207. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  208. package/dest/kernel/private_validation_requests.d.ts +10 -1
  209. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  210. package/dest/kernel/private_validation_requests.js +3 -1
  211. package/dest/kernel/public_call_request.d.ts +22 -1
  212. package/dest/kernel/public_call_request.d.ts.map +1 -1
  213. package/dest/kernel/public_call_request.js +5 -2
  214. package/dest/kernel/utils/optional_number.d.ts +7 -1
  215. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  216. package/dest/keys/public_keys.d.ts +5 -1
  217. package/dest/keys/public_keys.d.ts.map +1 -1
  218. package/dest/logs/contract_class_log.js +3 -1
  219. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  220. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  221. package/dest/logs/extended_public_log.d.ts +5 -3
  222. package/dest/logs/extended_public_log.d.ts.map +1 -1
  223. package/dest/logs/log_id.d.ts +5 -1
  224. package/dest/logs/log_id.d.ts.map +1 -1
  225. package/dest/logs/private_log.js +3 -1
  226. package/dest/logs/public_log.js +3 -1
  227. package/dest/messaging/in_hash.d.ts +4 -2
  228. package/dest/messaging/in_hash.d.ts.map +1 -1
  229. package/dest/messaging/in_hash.js +3 -1
  230. package/dest/messaging/inbox_leaf.d.ts +3 -1
  231. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  232. package/dest/messaging/l1_actor.d.ts +7 -1
  233. package/dest/messaging/l1_actor.d.ts.map +1 -1
  234. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  235. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  236. package/dest/messaging/l2_actor.d.ts +7 -1
  237. package/dest/messaging/l2_actor.d.ts.map +1 -1
  238. package/dest/messaging/l2_to_l1_membership.d.ts +88 -6
  239. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  240. package/dest/messaging/l2_to_l1_membership.js +160 -42
  241. package/dest/messaging/out_hash.d.ts +41 -3
  242. package/dest/messaging/out_hash.d.ts.map +1 -1
  243. package/dest/messaging/out_hash.js +54 -19
  244. package/dest/note/note_dao.d.ts +36 -5
  245. package/dest/note/note_dao.d.ts.map +1 -1
  246. package/dest/note/note_dao.js +15 -12
  247. package/dest/p2p/attestation_utils.d.ts +3 -3
  248. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  249. package/dest/p2p/attestation_utils.js +1 -1
  250. package/dest/p2p/block_proposal.d.ts +93 -21
  251. package/dest/p2p/block_proposal.d.ts.map +1 -1
  252. package/dest/p2p/block_proposal.js +140 -39
  253. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  254. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  255. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  256. package/dest/p2p/checkpoint_proposal.d.ts +160 -0
  257. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  258. package/dest/p2p/checkpoint_proposal.js +229 -0
  259. package/dest/p2p/consensus_payload.d.ts +9 -9
  260. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  261. package/dest/p2p/consensus_payload.js +3 -5
  262. package/dest/p2p/constants.d.ts +3 -0
  263. package/dest/p2p/constants.d.ts.map +1 -0
  264. package/dest/p2p/constants.js +2 -0
  265. package/dest/p2p/gossipable.d.ts +4 -3
  266. package/dest/p2p/gossipable.d.ts.map +1 -1
  267. package/dest/p2p/gossipable.js +16 -5
  268. package/dest/p2p/index.d.ts +5 -2
  269. package/dest/p2p/index.d.ts.map +1 -1
  270. package/dest/p2p/index.js +4 -1
  271. package/dest/p2p/message_validator.d.ts +18 -3
  272. package/dest/p2p/message_validator.d.ts.map +1 -1
  273. package/dest/p2p/message_validator.js +2 -1
  274. package/dest/p2p/signature_utils.d.ts +5 -3
  275. package/dest/p2p/signature_utils.d.ts.map +1 -1
  276. package/dest/p2p/signature_utils.js +3 -1
  277. package/dest/p2p/signed_txs.d.ts +42 -0
  278. package/dest/p2p/signed_txs.d.ts.map +1 -0
  279. package/dest/p2p/signed_txs.js +75 -0
  280. package/dest/p2p/topic_type.d.ts +3 -2
  281. package/dest/p2p/topic_type.d.ts.map +1 -1
  282. package/dest/p2p/topic_type.js +10 -3
  283. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  284. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  285. package/dest/parity/parity_public_inputs.d.ts +4 -1
  286. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  287. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  288. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  289. package/dest/proofs/chonk_proof.d.ts +1 -1
  290. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  291. package/dest/proofs/chonk_proof.js +9 -4
  292. package/dest/proofs/proof.d.ts +4 -1
  293. package/dest/proofs/proof.d.ts.map +1 -1
  294. package/dest/proofs/recursive_proof.d.ts +10 -1
  295. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  296. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  297. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  298. package/dest/rollup/block_constant_data.d.ts +12 -1
  299. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  300. package/dest/rollup/block_headers_hash.js +1 -1
  301. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  302. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  303. package/dest/rollup/block_rollup_public_inputs.d.ts +47 -11
  304. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  305. package/dest/rollup/block_rollup_public_inputs.js +8 -12
  306. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  307. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  308. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  309. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  310. package/dest/rollup/checkpoint_constant_data.js +3 -1
  311. package/dest/rollup/checkpoint_header.d.ts +42 -12
  312. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  313. package/dest/rollup/checkpoint_header.js +49 -19
  314. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  315. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  316. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +41 -1
  317. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  318. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -2
  319. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  320. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  321. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  322. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  323. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  324. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  325. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  326. package/dest/rollup/root_rollup_public_inputs.d.ts +18 -3
  327. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  328. package/dest/rollup/root_rollup_public_inputs.js +9 -3
  329. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  330. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  331. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  332. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  333. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  334. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  335. package/dest/schemas/schemas.d.ts +1 -1
  336. package/dest/tests/factories.d.ts +16 -10
  337. package/dest/tests/factories.d.ts.map +1 -1
  338. package/dest/tests/factories.js +60 -25
  339. package/dest/tests/jest.js +1 -1
  340. package/dest/tests/mocks.d.ts +69 -18
  341. package/dest/tests/mocks.d.ts.map +1 -1
  342. package/dest/tests/mocks.js +119 -54
  343. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  344. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  345. package/dest/trees/append_only_tree_snapshot.js +3 -1
  346. package/dest/trees/nullifier_leaf.d.ts +13 -1
  347. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  348. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  349. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  350. package/dest/trees/public_data_leaf.d.ts +16 -1
  351. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  352. package/dest/trees/public_data_witness.d.ts +11 -1
  353. package/dest/trees/public_data_witness.d.ts.map +1 -1
  354. package/dest/tx/block_header.d.ts +14 -2
  355. package/dest/tx/block_header.d.ts.map +1 -1
  356. package/dest/tx/block_header.js +8 -2
  357. package/dest/tx/call_context.d.ts +13 -1
  358. package/dest/tx/call_context.d.ts.map +1 -1
  359. package/dest/tx/call_context.js +3 -1
  360. package/dest/tx/capsule.d.ts +4 -1
  361. package/dest/tx/capsule.d.ts.map +1 -1
  362. package/dest/tx/execution_payload.d.ts +9 -1
  363. package/dest/tx/execution_payload.d.ts.map +1 -1
  364. package/dest/tx/function_data.d.ts +4 -2
  365. package/dest/tx/function_data.d.ts.map +1 -1
  366. package/dest/tx/global_variable_builder.d.ts +2 -2
  367. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  368. package/dest/tx/global_variables.d.ts +9 -1
  369. package/dest/tx/global_variables.d.ts.map +1 -1
  370. package/dest/tx/global_variables.js +3 -1
  371. package/dest/tx/hashed_values.d.ts +7 -1
  372. package/dest/tx/hashed_values.d.ts.map +1 -1
  373. package/dest/tx/in_tx.d.ts +1 -1
  374. package/dest/tx/index.d.ts +1 -2
  375. package/dest/tx/index.d.ts.map +1 -1
  376. package/dest/tx/index.js +0 -1
  377. package/dest/tx/partial_state_reference.d.ts +4 -1
  378. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  379. package/dest/tx/private_execution_result.d.ts +23 -6
  380. package/dest/tx/private_execution_result.d.ts.map +1 -1
  381. package/dest/tx/private_execution_result.js +4 -21
  382. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  383. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  384. package/dest/tx/profiling.d.ts +149 -26
  385. package/dest/tx/profiling.d.ts.map +1 -1
  386. package/dest/tx/profiling.js +44 -7
  387. package/dest/tx/protocol_contracts.d.ts +1 -1
  388. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  389. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  390. package/dest/tx/public_call_request_with_calldata.js +3 -1
  391. package/dest/tx/state_reference.d.ts +3 -1
  392. package/dest/tx/state_reference.d.ts.map +1 -1
  393. package/dest/tx/state_reference.js +3 -1
  394. package/dest/tx/tree_snapshots.js +3 -1
  395. package/dest/tx/tx.d.ts +24 -1
  396. package/dest/tx/tx.d.ts.map +1 -1
  397. package/dest/tx/tx.js +9 -4
  398. package/dest/tx/tx_context.d.ts +2 -1
  399. package/dest/tx/tx_context.d.ts.map +1 -1
  400. package/dest/tx/tx_effect.d.ts +32 -6
  401. package/dest/tx/tx_effect.d.ts.map +1 -1
  402. package/dest/tx/tx_effect.js +3 -8
  403. package/dest/tx/tx_execution_request.d.ts +30 -1
  404. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  405. package/dest/tx/tx_execution_request.js +6 -2
  406. package/dest/tx/tx_hash.d.ts +2 -1
  407. package/dest/tx/tx_hash.d.ts.map +1 -1
  408. package/dest/tx/tx_receipt.d.ts +44 -10
  409. package/dest/tx/tx_receipt.d.ts.map +1 -1
  410. package/dest/tx/tx_receipt.js +44 -13
  411. package/dest/tx/tx_request.d.ts +6 -1
  412. package/dest/tx/tx_request.d.ts.map +1 -1
  413. package/dest/tx/validator/error_texts.d.ts +2 -1
  414. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  415. package/dest/tx/validator/error_texts.js +2 -0
  416. package/dest/types/shared.d.ts +4 -1
  417. package/dest/types/shared.d.ts.map +1 -1
  418. package/dest/validators/schemas.d.ts +8 -8
  419. package/dest/vks/verification_key.d.ts +22 -1
  420. package/dest/vks/verification_key.d.ts.map +1 -1
  421. package/dest/vks/vk_data.d.ts +7 -1
  422. package/dest/vks/vk_data.d.ts.map +1 -1
  423. package/dest/zkpassport/index.d.ts +3 -4
  424. package/dest/zkpassport/index.d.ts.map +1 -1
  425. package/dest/zkpassport/index.js +9 -9
  426. package/package.json +12 -10
  427. package/src/abi/contract_artifact.ts +10 -10
  428. package/src/abi/utils.ts +17 -0
  429. package/src/block/attestation_info.ts +9 -6
  430. package/src/block/block_hash.ts +27 -1
  431. package/src/block/block_parameter.ts +4 -2
  432. package/src/block/body.ts +2 -1
  433. package/src/block/checkpointed_l2_block.ts +8 -58
  434. package/src/block/index.ts +0 -2
  435. package/src/block/l2_block.ts +101 -148
  436. package/src/block/l2_block_source.ts +121 -43
  437. package/src/block/l2_block_stream/index.ts +1 -0
  438. package/src/block/l2_block_stream/interfaces.ts +15 -4
  439. package/src/block/l2_block_stream/l2_block_stream.ts +130 -39
  440. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  441. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  442. package/src/block/test/l2_tips_store_test_suite.ts +480 -36
  443. package/src/block/validate_block_result.ts +40 -35
  444. package/src/checkpoint/checkpoint.ts +34 -11
  445. package/src/checkpoint/checkpoint_info.ts +45 -2
  446. package/src/checkpoint/index.ts +1 -0
  447. package/src/checkpoint/published_checkpoint.ts +4 -3
  448. package/src/config/node-rpc-config.ts +1 -1
  449. package/src/contract/index.ts +0 -2
  450. package/src/contract/private_function.ts +1 -2
  451. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  452. package/src/deserialization/index.ts +21 -0
  453. package/src/epoch-helpers/index.ts +1 -1
  454. package/src/interfaces/api_limit.ts +2 -0
  455. package/src/interfaces/archiver.ts +24 -23
  456. package/src/interfaces/aztec-node-admin.ts +5 -2
  457. package/src/interfaces/aztec-node.ts +100 -68
  458. package/src/interfaces/block-builder.ts +31 -24
  459. package/src/interfaces/configs.ts +3 -0
  460. package/src/interfaces/l2_logs_source.ts +17 -4
  461. package/src/interfaces/p2p.ts +8 -12
  462. package/src/interfaces/prover-client.ts +15 -0
  463. package/src/interfaces/proving-job.ts +2 -11
  464. package/src/interfaces/server_circuit_prover.ts +3 -2
  465. package/src/interfaces/tx_provider.ts +2 -2
  466. package/src/interfaces/validator.ts +63 -14
  467. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  468. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  469. package/src/messaging/in_hash.ts +3 -1
  470. package/src/messaging/l2_to_l1_membership.ts +178 -52
  471. package/src/messaging/out_hash.ts +62 -21
  472. package/src/note/note_dao.ts +18 -13
  473. package/src/p2p/attestation_utils.ts +3 -3
  474. package/src/p2p/block_proposal.ts +204 -44
  475. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +31 -25
  476. package/src/p2p/checkpoint_proposal.ts +348 -0
  477. package/src/p2p/consensus_payload.ts +5 -7
  478. package/src/p2p/constants.ts +3 -0
  479. package/src/p2p/gossipable.ts +14 -4
  480. package/src/p2p/index.ts +4 -1
  481. package/src/p2p/message_validator.ts +14 -2
  482. package/src/p2p/signature_utils.ts +3 -1
  483. package/src/p2p/signed_txs.ts +88 -0
  484. package/src/p2p/topic_type.ts +4 -3
  485. package/src/proofs/chonk_proof.ts +9 -5
  486. package/src/rollup/block_headers_hash.ts +1 -1
  487. package/src/rollup/block_rollup_public_inputs.ts +5 -11
  488. package/src/rollup/checkpoint_header.ts +63 -20
  489. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -0
  490. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  491. package/src/rollup/root_rollup_public_inputs.ts +9 -0
  492. package/src/tests/factories.ts +56 -40
  493. package/src/tests/jest.ts +1 -1
  494. package/src/tests/mocks.ts +207 -87
  495. package/src/tx/block_header.ts +11 -3
  496. package/src/tx/global_variable_builder.ts +1 -1
  497. package/src/tx/index.ts +0 -1
  498. package/src/tx/private_execution_result.ts +1 -16
  499. package/src/tx/profiling.ts +46 -4
  500. package/src/tx/tx.ts +10 -9
  501. package/src/tx/tx_effect.ts +0 -9
  502. package/src/tx/tx_execution_request.ts +2 -0
  503. package/src/tx/tx_receipt.ts +72 -15
  504. package/src/tx/validator/error_texts.ts +3 -0
  505. package/src/zkpassport/index.ts +11 -12
  506. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  507. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  508. package/dest/block/l2_block_code_to_purge.js +0 -61
  509. package/dest/block/l2_block_header.d.ts +0 -98
  510. package/dest/block/l2_block_header.d.ts.map +0 -1
  511. package/dest/block/l2_block_header.js +0 -153
  512. package/dest/block/l2_block_new.d.ts +0 -135
  513. package/dest/block/l2_block_new.d.ts.map +0 -1
  514. package/dest/block/l2_block_new.js +0 -152
  515. package/dest/contract/contract_class_metadata.d.ts +0 -8
  516. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  517. package/dest/contract/contract_class_metadata.js +0 -1
  518. package/dest/contract/contract_metadata.d.ts +0 -7
  519. package/dest/contract/contract_metadata.d.ts.map +0 -1
  520. package/dest/contract/contract_metadata.js +0 -1
  521. package/dest/p2p/block_attestation.d.ts +0 -80
  522. package/dest/p2p/block_attestation.d.ts.map +0 -1
  523. package/dest/tx/content_commitment.d.ts +0 -49
  524. package/dest/tx/content_commitment.d.ts.map +0 -1
  525. package/dest/tx/content_commitment.js +0 -90
  526. package/src/block/l2_block_code_to_purge.ts +0 -88
  527. package/src/block/l2_block_header.ts +0 -246
  528. package/src/block/l2_block_new.ts +0 -207
  529. package/src/contract/contract_class_metadata.ts +0 -8
  530. package/src/contract/contract_metadata.ts +0 -7
  531. package/src/tx/content_commitment.ts +0 -113
@@ -10,6 +10,9 @@ import {
10
10
  BlockNumber,
11
11
  BlockNumberPositiveSchema,
12
12
  BlockNumberSchema,
13
+ CheckpointNumberPositiveSchema,
14
+ EpochNumber,
15
+ EpochNumberSchema,
13
16
  type SlotNumber,
14
17
  } from '@aztec/foundation/branded-types';
15
18
  import type { Fr } from '@aztec/foundation/curves/bn254';
@@ -20,11 +23,13 @@ import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
20
23
  import { z } from 'zod';
21
24
 
22
25
  import type { AztecAddress } from '../aztec-address/index.js';
26
+ import { L2BlockHash } from '../block/block_hash.js';
23
27
  import { type BlockParameter, BlockParameterSchema } from '../block/block_parameter.js';
24
- import { PublishedL2Block } from '../block/checkpointed_l2_block.js';
28
+ import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
25
29
  import { type DataInBlock, dataInBlockSchemaFor } from '../block/in_block.js';
26
30
  import { L2Block } from '../block/l2_block.js';
27
31
  import { type L2BlockSource, type L2Tips, L2TipsSchema } from '../block/l2_block_source.js';
32
+ import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
28
33
  import {
29
34
  type ContractClassPublic,
30
35
  ContractClassPublicSchema,
@@ -57,7 +62,7 @@ import { SingleValidatorStatsSchema, ValidatorsStatsSchema } from '../validators
57
62
  import type { SingleValidatorStats, ValidatorsStats } from '../validators/types.js';
58
63
  import { type ComponentsVersions, getVersioningResponseHandler } from '../versioning/index.js';
59
64
  import { type AllowedElement, AllowedElementSchema } from './allowed_element.js';
60
- import { MAX_RPC_BLOCKS_LEN, MAX_RPC_LEN, MAX_RPC_TXS_LEN } from './api_limit.js';
65
+ import { MAX_RPC_BLOCKS_LEN, MAX_RPC_CHECKPOINTS_LEN, MAX_RPC_LEN, MAX_RPC_TXS_LEN } from './api_limit.js';
61
66
  import {
62
67
  type GetContractClassLogsResponse,
63
68
  GetContractClassLogsResponseSchema,
@@ -71,7 +76,10 @@ import { type WorldStateSyncStatus, WorldStateSyncStatusSchema } from './world_s
71
76
  * We will probably implement the additional interfaces by means other than Aztec Node as it's currently a privacy leak
72
77
  */
73
78
  export interface AztecNode
74
- extends Pick<L2BlockSource, 'getBlocks' | 'getPublishedBlocks' | 'getBlockHeader' | 'getL2Tips'> {
79
+ extends Pick<
80
+ L2BlockSource,
81
+ 'getBlocks' | 'getCheckpoints' | 'getBlockHeader' | 'getL2Tips' | 'getCheckpointedBlocks'
82
+ > {
75
83
  /**
76
84
  * Returns the tips of the L2 chain.
77
85
  */
@@ -85,72 +93,63 @@ export interface AztecNode
85
93
  /**
86
94
  * Find the indexes of the given leaves in the given tree along with a block metadata pointing to the block in which
87
95
  * the leaves were inserted.
88
- * @param blockNumber - The block number at which to get the data or 'latest' for latest data.
96
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
89
97
  * @param treeId - The tree to search in.
90
98
  * @param leafValues - The values to search for.
91
99
  * @returns The indices of leaves and the block metadata of a block in which the leaves were inserted.
92
100
  */
93
101
  findLeavesIndexes(
94
- blockNumber: BlockParameter,
102
+ block: BlockParameter,
95
103
  treeId: MerkleTreeId,
96
104
  leafValues: Fr[],
97
105
  ): Promise<(DataInBlock<bigint> | undefined)[]>;
98
106
 
99
107
  /**
100
108
  * Returns a sibling path for the given index in the nullifier tree.
101
- * @param blockNumber - The block number at which to get the data.
109
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
102
110
  * @param leafIndex - The index of the leaf for which the sibling path is required.
103
111
  * @returns The sibling path for the leaf index.
104
112
  */
105
- getNullifierSiblingPath(
106
- blockNumber: BlockParameter,
107
- leafIndex: bigint,
108
- ): Promise<SiblingPath<typeof NULLIFIER_TREE_HEIGHT>>;
113
+ getNullifierSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof NULLIFIER_TREE_HEIGHT>>;
109
114
 
110
115
  /**
111
116
  * Returns a sibling path for the given index in the note hash tree.
112
- * @param blockNumber - The block number at which to get the data.
117
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
113
118
  * @param leafIndex - The index of the leaf for which the sibling path is required.
114
119
  * @returns The sibling path for the leaf index.
115
120
  */
116
- getNoteHashSiblingPath(
117
- blockNumber: BlockParameter,
118
- leafIndex: bigint,
119
- ): Promise<SiblingPath<typeof NOTE_HASH_TREE_HEIGHT>>;
121
+ getNoteHashSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof NOTE_HASH_TREE_HEIGHT>>;
120
122
 
121
123
  /**
122
124
  * Returns a sibling path for a leaf in the committed historic blocks tree.
123
- * @param blockNumber - The block number at which to get the data.
125
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
124
126
  * @param leafIndex - Index of the leaf in the tree.
125
127
  * @returns The sibling path.
126
128
  */
127
- getArchiveSiblingPath(blockNumber: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof ARCHIVE_HEIGHT>>;
129
+ getArchiveSiblingPath(block: BlockParameter, leafIndex: bigint): Promise<SiblingPath<typeof ARCHIVE_HEIGHT>>;
128
130
 
129
131
  /**
130
132
  * Returns a sibling path for a leaf in the committed public data tree.
131
- * @param blockNumber - The block number at which to get the data.
133
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
132
134
  * @param leafIndex - Index of the leaf in the tree.
133
135
  * @returns The sibling path.
134
136
  */
135
137
  getPublicDataSiblingPath(
136
- blockNumber: BlockParameter,
138
+ block: BlockParameter,
137
139
  leafIndex: bigint,
138
140
  ): Promise<SiblingPath<typeof PUBLIC_DATA_TREE_HEIGHT>>;
139
141
 
140
142
  /**
141
143
  * Returns a nullifier membership witness for a given nullifier at a given block.
142
- * @param blockNumber - The block number at which to get the data.
144
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
143
145
  * @param nullifier - Nullifier we try to find witness for.
144
146
  * @returns The nullifier membership witness (if found).
145
147
  */
146
- getNullifierMembershipWitness(
147
- blockNumber: BlockParameter,
148
- nullifier: Fr,
149
- ): Promise<NullifierMembershipWitness | undefined>;
148
+ getNullifierMembershipWitness(block: BlockParameter, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
150
149
 
151
150
  /**
152
151
  * Returns a low nullifier membership witness for a given nullifier at a given block.
153
- * @param blockNumber - The block number at which to get the data.
152
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
154
153
  * @param nullifier - Nullifier we try to find the low nullifier witness for.
155
154
  * @returns The low nullifier membership witness (if found).
156
155
  * @remarks Low nullifier witness can be used to perform a nullifier non-inclusion proof by leveraging the "linked
@@ -158,49 +157,49 @@ export interface AztecNode
158
157
  * we are trying to prove non-inclusion for.
159
158
  */
160
159
  getLowNullifierMembershipWitness(
161
- blockNumber: BlockParameter,
160
+ block: BlockParameter,
162
161
  nullifier: Fr,
163
162
  ): Promise<NullifierMembershipWitness | undefined>;
164
163
 
165
164
  /**
166
165
  * Returns a public data tree witness for a given leaf slot at a given block.
167
- * @param blockNumber - The block number at which to get the data.
166
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
168
167
  * @param leafSlot - The leaf slot we try to find the witness for.
169
168
  * @returns The public data witness (if found).
170
169
  * @remarks The witness can be used to compute the current value of the public data tree leaf. If the low leaf preimage corresponds to an
171
170
  * "in range" slot, means that the slot doesn't exist and the value is 0. If the low leaf preimage corresponds to the exact slot, the current value
172
171
  * is contained in the leaf preimage.
173
172
  */
174
- getPublicDataWitness(blockNumber: BlockParameter, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
173
+ getPublicDataWitness(block: BlockParameter, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
175
174
 
176
175
  /**
177
176
  * Returns a membership witness for a given archive leaf at a given block.
178
- * @param blockNumber - The block number at which to get the data.
177
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
179
178
  * @param archive - The archive leaf we try to find the witness for.
180
179
  */
181
180
  getArchiveMembershipWitness(
182
- blockNumber: BlockParameter,
181
+ block: BlockParameter,
183
182
  archive: Fr,
184
183
  ): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
185
184
 
186
185
  /**
187
186
  * Returns a membership witness for a given note hash at a given block.
188
- * @param blockNumber - The block number at which to get the data.
187
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
189
188
  * @param noteHash - The note hash we try to find the witness for.
190
189
  */
191
190
  getNoteHashMembershipWitness(
192
- blockNumber: BlockParameter,
191
+ block: BlockParameter,
193
192
  noteHash: Fr,
194
193
  ): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
195
194
 
196
195
  /**
197
196
  * Returns the index and a sibling path for a leaf in the committed l1 to l2 data tree.
198
- * @param blockNumber - The block number at which to get the data.
197
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
199
198
  * @param l1ToL2Message - The l1ToL2Message to get the index / sibling path for.
200
199
  * @returns A tuple of the index and the sibling path of the L1ToL2Message (undefined if not found).
201
200
  */
202
201
  getL1ToL2MessageMembershipWitness(
203
- blockNumber: BlockParameter,
202
+ block: BlockParameter,
204
203
  l1ToL2Message: Fr,
205
204
  ): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>] | undefined>;
206
205
 
@@ -216,15 +215,16 @@ export interface AztecNode
216
215
  isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean>;
217
216
 
218
217
  /**
219
- * Returns all the L2 to L1 messages in a block.
220
- * @param blockNumber - The block number at which to get the data.
221
- * @returns The L2 to L1 messages (undefined if the block number is not found).
218
+ * Returns all the L2 to L1 messages in an epoch.
219
+ * @param epoch - The epoch at which to get the data.
220
+ * @returns A nested array of the L2 to L1 messages in each tx of each block in each checkpoint in the epoch (empty
221
+ * array if the epoch is not found).
222
222
  */
223
- getL2ToL1Messages(blockNumber: BlockParameter): Promise<Fr[][] | undefined>;
223
+ getL2ToL1Messages(epoch: EpochNumber): Promise<Fr[][][][]>;
224
224
 
225
225
  /**
226
- * Get a block specified by its number.
227
- * @param number - The block number being requested.
226
+ * Get a block specified by its block number or 'latest'.
227
+ * @param number - The block number or 'latest'.
228
228
  * @returns The requested block.
229
229
  */
230
230
  getBlock(number: BlockParameter): Promise<L2Block | undefined>;
@@ -255,6 +255,12 @@ export interface AztecNode
255
255
  */
256
256
  getProvenBlockNumber(): Promise<BlockNumber>;
257
257
 
258
+ /**
259
+ * Fetches the latest checkpointed block number.
260
+ * @returns The block number.
261
+ */
262
+ getCheckpointedBlockNumber(): Promise<BlockNumber>;
263
+
258
264
  /**
259
265
  * Method to determine if the node is ready to accept transactions.
260
266
  * @returns - Flag indicating the readiness for tx submission.
@@ -277,10 +283,10 @@ export interface AztecNode
277
283
  getBlocks(from: BlockNumber, limit: number): Promise<L2Block[]>;
278
284
 
279
285
  /**
280
- * Method to fetch the current base fees.
281
- * @returns The current base fees.
286
+ * Method to fetch the current min fees.
287
+ * @returns The current min fees.
282
288
  */
283
- getCurrentBaseFees(): Promise<GasFees>;
289
+ getCurrentMinFees(): Promise<GasFees>;
284
290
 
285
291
  /**
286
292
  * Method to fetch the current max priority fee of txs in the mempool.
@@ -338,16 +344,38 @@ export interface AztecNode
338
344
  getContractClassLogs(filter: LogFilter): Promise<GetContractClassLogsResponse>;
339
345
 
340
346
  /**
341
- * Gets all private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
347
+ * Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
342
348
  * array implies no logs match that tag.
349
+ * @param tags - The tags to search for.
350
+ * @param page - The page number (0-indexed) for pagination.
351
+ * @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
352
+ * This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
353
+ * If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
354
+ * undefined behavior in the client's code.
355
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
356
+ * for a tag, the caller should fetch the next page to check for more logs.
343
357
  */
344
- getPrivateLogsByTags(tags: SiloedTag[]): Promise<TxScopedL2Log[][]>;
358
+ getPrivateLogsByTags(tags: SiloedTag[], page?: number, referenceBlock?: L2BlockHash): Promise<TxScopedL2Log[][]>;
345
359
 
346
360
  /**
347
- * Gets all public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
361
+ * Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
348
362
  * logs is returned. An empty array implies no logs match that tag.
349
- */
350
- getPublicLogsByTagsFromContract(contractAddress: AztecAddress, tags: Tag[]): Promise<TxScopedL2Log[][]>;
363
+ * @param contractAddress - The contract address to search logs for.
364
+ * @param tags - The tags to search for.
365
+ * @param page - The page number (0-indexed) for pagination.
366
+ * @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
367
+ * This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
368
+ * If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
369
+ * undefined behavior in the client's code.
370
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
371
+ * for a tag, the caller should fetch the next page to check for more logs.
372
+ */
373
+ getPublicLogsByTagsFromContract(
374
+ contractAddress: AztecAddress,
375
+ tags: Tag[],
376
+ page?: number,
377
+ referenceBlock?: L2BlockHash,
378
+ ): Promise<TxScopedL2Log[][]>;
351
379
 
352
380
  /**
353
381
  * Method to submit a transaction to the p2p pool.
@@ -405,25 +433,19 @@ export interface AztecNode
405
433
  * @remarks The storage slot here refers to the slot as it is defined in Noir not the index in the merkle tree.
406
434
  * Aztec's version of `eth_getStorageAt`.
407
435
  *
436
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
408
437
  * @param contract - Address of the contract to query.
409
438
  * @param slot - Slot to query.
410
- * @param blockNumber - The block number at which to get the data or 'latest'.
411
439
  * @returns Storage value at the given contract slot.
412
440
  */
413
- getPublicStorageAt(blockNumber: BlockParameter, contract: AztecAddress, slot: Fr): Promise<Fr>;
441
+ getPublicStorageAt(block: BlockParameter, contract: AztecAddress, slot: Fr): Promise<Fr>;
414
442
 
415
443
  /**
416
- * Returns the currently committed block header.
417
- * @returns The current committed block header.
418
- */
419
- getBlockHeader(blockNumber?: BlockParameter): Promise<BlockHeader | undefined>;
420
-
421
- /**
422
- * Get a block header specified by its hash.
423
- * @param blockHash - The block hash being requested.
444
+ * Returns the block header for a given block number, block hash, or 'latest'.
445
+ * @param block - The block parameter (block number, block hash, or 'latest'). Defaults to 'latest'.
424
446
  * @returns The requested block header.
425
447
  */
426
- getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
448
+ getBlockHeader(block?: BlockParameter): Promise<BlockHeader | undefined>;
427
449
 
428
450
  /**
429
451
  * Get a block header specified by its archive root.
@@ -552,8 +574,8 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
552
574
 
553
575
  getL2ToL1Messages: z
554
576
  .function()
555
- .args(BlockParameterSchema)
556
- .returns(z.array(z.array(schemas.Fr)).optional()),
577
+ .args(EpochNumberSchema)
578
+ .returns(z.array(z.array(z.array(z.array(schemas.Fr))))),
557
579
 
558
580
  getBlock: z.function().args(BlockParameterSchema).returns(L2Block.schema.optional()),
559
581
 
@@ -565,6 +587,8 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
565
587
 
566
588
  getProvenBlockNumber: z.function().returns(BlockNumberSchema),
567
589
 
590
+ getCheckpointedBlockNumber: z.function().returns(BlockNumberSchema),
591
+
568
592
  isReady: z.function().returns(z.boolean()),
569
593
 
570
594
  getNodeInfo: z.function().returns(NodeInfoSchema),
@@ -574,12 +598,17 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
574
598
  .args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
575
599
  .returns(z.array(L2Block.schema)),
576
600
 
577
- getPublishedBlocks: z
601
+ getCheckpoints: z
602
+ .function()
603
+ .args(CheckpointNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_CHECKPOINTS_LEN))
604
+ .returns(z.array(PublishedCheckpoint.schema)),
605
+
606
+ getCheckpointedBlocks: z
578
607
  .function()
579
608
  .args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
580
- .returns(z.array(PublishedL2Block.schema)),
609
+ .returns(z.array(CheckpointedL2Block.schema)),
581
610
 
582
- getCurrentBaseFees: z.function().returns(GasFees.schema),
611
+ getCurrentMinFees: z.function().returns(GasFees.schema),
583
612
 
584
613
  getMaxPriorityFees: z.function().returns(GasFees.schema),
585
614
 
@@ -604,12 +633,17 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
604
633
 
605
634
  getPrivateLogsByTags: z
606
635
  .function()
607
- .args(z.array(SiloedTag.schema).max(MAX_RPC_LEN))
636
+ .args(z.array(SiloedTag.schema).max(MAX_RPC_LEN), optional(z.number().gte(0)), optional(L2BlockHash.schema))
608
637
  .returns(z.array(z.array(TxScopedL2Log.schema))),
609
638
 
610
639
  getPublicLogsByTagsFromContract: z
611
640
  .function()
612
- .args(schemas.AztecAddress, z.array(Tag.schema).max(MAX_RPC_LEN))
641
+ .args(
642
+ schemas.AztecAddress,
643
+ z.array(Tag.schema).max(MAX_RPC_LEN),
644
+ optional(z.number().gte(0)),
645
+ optional(L2BlockHash.schema),
646
+ )
613
647
  .returns(z.array(z.array(TxScopedL2Log.schema))),
614
648
 
615
649
  sendTx: z.function().args(Tx.schema).returns(z.void()),
@@ -633,8 +667,6 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
633
667
 
634
668
  getBlockHeader: z.function().args(optional(BlockParameterSchema)).returns(BlockHeader.schema.optional()),
635
669
 
636
- getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
637
-
638
670
  getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
639
671
 
640
672
  getValidatorsStats: z.function().returns(ValidatorsStatsSchema),
@@ -1,17 +1,16 @@
1
- import type { BlockNumber } from '@aztec/foundation/branded-types';
1
+ import type { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
2
2
  import type { Fr } from '@aztec/foundation/curves/bn254';
3
- import type { Timer } from '@aztec/foundation/timer';
4
3
 
5
4
  import type { L2Block } from '../block/l2_block.js';
6
5
  import type { ChainConfig, SequencerConfig } from '../config/chain-config.js';
7
6
  import type { L1RollupConstants } from '../epoch-helpers/index.js';
8
7
  import type { Gas } from '../gas/gas.js';
9
- import type { MerkleTreeWriteOperations } from '../trees/index.js';
10
8
  import type { BlockHeader } from '../tx/block_header.js';
11
- import type { GlobalVariables } from '../tx/global_variables.js';
9
+ import type { CheckpointGlobalVariables, GlobalVariables } from '../tx/global_variables.js';
12
10
  import type { FailedTx, ProcessedTx } from '../tx/processed_tx.js';
13
11
  import { Tx } from '../tx/tx.js';
14
12
  import type { TxValidator } from '../tx/validator/tx_validator.js';
13
+ import type { MerkleTreeWriteOperations } from './merkle_tree_operations.js';
15
14
  import type { ProcessedTxHandler } from './processed-tx-handler.js';
16
15
 
17
16
  /** The interface to a block builder. Generates an L2 block out of a set of processed txs. */
@@ -47,16 +46,6 @@ export interface PublicProcessorValidator {
47
46
  preprocessValidator?: TxValidator<Tx>;
48
47
  nullifierCache?: { addNullifiers: (nullifiers: Buffer[]) => void };
49
48
  }
50
- export interface BuildBlockResult {
51
- block: L2Block;
52
- publicGas: Gas;
53
- publicProcessorDuration: number;
54
- numMsgs: number;
55
- numTxs: number;
56
- failedTxs: FailedTx[];
57
- blockBuildingTimer: Timer;
58
- usedTxs: Tx[];
59
- }
60
49
 
61
50
  export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
62
51
  Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
@@ -72,18 +61,36 @@ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[
72
61
  'fakeThrowAfterProcessingTxCount',
73
62
  ] as const;
74
63
 
75
- export interface IFullNodeBlockBuilder {
76
- getConfig(): FullNodeBlockBuilderConfig;
77
-
78
- updateConfig(config: Partial<FullNodeBlockBuilderConfig>): void;
64
+ /** Result of building a block within a checkpoint. */
65
+ export interface BuildBlockInCheckpointResult {
66
+ block: L2Block;
67
+ publicGas: Gas;
68
+ publicProcessorDuration: number;
69
+ numTxs: number;
70
+ failedTxs: FailedTx[];
71
+ usedTxs: Tx[];
72
+ usedTxBlobFields: number;
73
+ }
79
74
 
75
+ /** Interface for building blocks within a checkpoint context. */
76
+ export interface ICheckpointBlockBuilder {
80
77
  buildBlock(
81
- txs: Iterable<Tx> | AsyncIterable<Tx>,
82
- l1ToL2Messages: Fr[],
83
- globalVariables: GlobalVariables,
84
- options: PublicProcessorLimits,
85
- fork?: MerkleTreeWriteOperations,
86
- ): Promise<BuildBlockResult>;
78
+ pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
79
+ blockNumber: BlockNumber,
80
+ timestamp: bigint,
81
+ opts: PublicProcessorLimits,
82
+ ): Promise<BuildBlockInCheckpointResult>;
83
+ }
87
84
 
85
+ /** Interface for creating checkpoint builders. */
86
+ export interface ICheckpointsBuilder {
88
87
  getFork(blockNumber: BlockNumber): Promise<MerkleTreeWriteOperations>;
88
+
89
+ startCheckpoint(
90
+ checkpointNumber: CheckpointNumber,
91
+ constants: CheckpointGlobalVariables,
92
+ l1ToL2Messages: Fr[],
93
+ previousCheckpointOutHashes: Fr[],
94
+ fork: MerkleTreeWriteOperations,
95
+ ): Promise<ICheckpointBlockBuilder>;
89
96
  }
@@ -67,6 +67,8 @@ export interface SequencerConfig {
67
67
  blockDurationMs?: number;
68
68
  /** Have sequencer build and publish an empty checkpoint if there are no txs */
69
69
  buildCheckpointIfEmpty?: boolean;
70
+ /** Skip pushing proposed blocks to archiver (default: false) */
71
+ skipPushProposedBlocksToArchiver?: boolean;
70
72
  }
71
73
 
72
74
  export const SequencerConfigSchema = zodFor<SequencerConfig>()(
@@ -100,6 +102,7 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
100
102
  shuffleAttestationOrdering: z.boolean().optional(),
101
103
  blockDurationMs: z.number().positive().optional(),
102
104
  buildCheckpointIfEmpty: z.boolean().optional(),
105
+ skipPushProposedBlocksToArchiver: z.boolean().optional(),
103
106
  }),
104
107
  );
105
108
 
@@ -12,16 +12,29 @@ import type { GetContractClassLogsResponse, GetPublicLogsResponse } from './get_
12
12
  */
13
13
  export interface L2LogsSource {
14
14
  /**
15
- * Gets all private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
15
+ * Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
16
16
  * array implies no logs match that tag.
17
+ * @param tags - The tags to search for.
18
+ * @param page - The page number (0-indexed) for pagination.
19
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
20
+ * for a tag, the caller should fetch the next page to check for more logs.
17
21
  */
18
- getPrivateLogsByTags(tags: SiloedTag[]): Promise<TxScopedL2Log[][]>;
22
+ getPrivateLogsByTags(tags: SiloedTag[], page?: number): Promise<TxScopedL2Log[][]>;
19
23
 
20
24
  /**
21
- * Gets all public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
25
+ * Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
22
26
  * logs is returned. An empty array implies no logs match that tag.
27
+ * @param contractAddress - The contract address to search logs for.
28
+ * @param tags - The tags to search for.
29
+ * @param page - The page number (0-indexed) for pagination.
30
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
31
+ * for a tag, the caller should fetch the next page to check for more logs.
23
32
  */
24
- getPublicLogsByTagsFromContract(contractAddress: AztecAddress, tags: Tag[]): Promise<TxScopedL2Log[][]>;
33
+ getPublicLogsByTagsFromContract(
34
+ contractAddress: AztecAddress,
35
+ tags: Tag[],
36
+ page?: number,
37
+ ): Promise<TxScopedL2Log[][]>;
25
38
 
26
39
  /**
27
40
  * Gets public logs based on the provided filter.
@@ -2,7 +2,7 @@ import type { SlotNumber } from '@aztec/foundation/branded-types';
2
2
 
3
3
  import { z } from 'zod';
4
4
 
5
- import { BlockAttestation } from '../p2p/block_attestation.js';
5
+ import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
6
6
  import type { P2PClientType } from '../p2p/client_type.js';
7
7
  import { type ApiSchemaFor, optional, schemas } from '../schemas/index.js';
8
8
  import { Tx } from '../tx/tx.js';
@@ -52,21 +52,18 @@ export interface P2PApiWithoutAttestations {
52
52
 
53
53
  export interface P2PApiWithAttestations extends P2PApiWithoutAttestations {
54
54
  /**
55
- * Queries the Attestation pool for attestations for the given slot
55
+ * Queries the Attestation pool for checkpoint attestations for the given slot
56
56
  *
57
57
  * @param slot - the slot to query
58
58
  * @param proposalId - the proposal id to query, or undefined to query all proposals for the slot
59
- * @returns BlockAttestations
59
+ * @returns CheckpointAttestations
60
60
  */
61
- getAttestationsForSlot(slot: SlotNumber, proposalId?: string): Promise<BlockAttestation[]>;
62
-
63
- /** Deletes a given attestation manually from the p2p client attestation pool. */
64
- deleteAttestation(attestation: BlockAttestation): Promise<void>;
61
+ getCheckpointAttestationsForSlot(slot: SlotNumber, proposalId?: string): Promise<CheckpointAttestation[]>;
65
62
  }
66
63
 
67
64
  export interface P2PClient extends P2PApiWithAttestations {
68
- /** Manually adds an attestation to the p2p client attestation pool. */
69
- addAttestations(attestations: BlockAttestation[]): Promise<void>;
65
+ /** Manually adds checkpoint attestations to the p2p client attestation pool. */
66
+ addCheckpointAttestations(attestations: CheckpointAttestation[]): Promise<void>;
70
67
  }
71
68
 
72
69
  export type P2PApi<T extends P2PClientType = P2PClientType.Full> = T extends P2PClientType.Full
@@ -78,10 +75,10 @@ export type P2PApiFull<T extends P2PClientType = P2PClientType.Full> = T extends
78
75
  : P2PApiWithoutAttestations;
79
76
 
80
77
  export const P2PApiSchema: ApiSchemaFor<P2PApi> = {
81
- getAttestationsForSlot: z
78
+ getCheckpointAttestationsForSlot: z
82
79
  .function()
83
80
  .args(schemas.SlotNumber, optional(z.string()))
84
- .returns(z.array(BlockAttestation.schema)),
81
+ .returns(z.array(CheckpointAttestation.schema)),
85
82
  getPendingTxs: z
86
83
  .function()
87
84
  .args(optional(z.number().gte(1).lte(MAX_RPC_TXS_LEN).default(MAX_RPC_TXS_LEN)), optional(TxHash.schema))
@@ -90,5 +87,4 @@ export const P2PApiSchema: ApiSchemaFor<P2PApi> = {
90
87
  getPendingTxCount: z.function().returns(schemas.Integer),
91
88
  getEncodedEnr: z.function().returns(z.string().optional()),
92
89
  getPeers: z.function().args(optional(z.boolean())).returns(z.array(PeerInfoSchema)),
93
- deleteAttestation: z.function().args(BlockAttestation.schema).returns(z.void()),
94
90
  };
@@ -17,6 +17,12 @@ export type ActualProverConfig = {
17
17
  proverTestDelayMs: number;
18
18
  /** If using realistic delays, what percentage of realistic times to apply. */
19
19
  proverTestDelayFactor: number;
20
+ /**
21
+ * Whether to abort pending proving jobs when the orchestrator is cancelled.
22
+ * When false (default), jobs remain in the broker queue and can be reused on restart/reorg.
23
+ * When true, jobs are explicitly cancelled with the broker, which prevents reuse.
24
+ */
25
+ cancelJobsOnStop: boolean;
20
26
  };
21
27
 
22
28
  /**
@@ -43,6 +49,7 @@ export const ProverConfigSchema = zodFor<ProverConfig>()(
43
49
  proverTestDelayFactor: z.number(),
44
50
  proverAgentCount: z.number(),
45
51
  failedProofStore: z.string().optional(),
52
+ cancelJobsOnStop: z.boolean(),
46
53
  }),
47
54
  );
48
55
 
@@ -85,6 +92,14 @@ export const proverConfigMappings: ConfigMappingsType<ProverConfig> = {
85
92
  description:
86
93
  'Store for failed proof inputs. Google cloud storage is only supported at the moment. Set this value as gs://bucket-name/path/to/store.',
87
94
  },
95
+ cancelJobsOnStop: {
96
+ env: 'PROVER_CANCEL_JOBS_ON_STOP',
97
+ description:
98
+ 'Whether to abort pending proving jobs when the orchestrator is cancelled. ' +
99
+ 'When false (default), jobs remain in the broker queue and can be reused on restart/reorg. ' +
100
+ 'When true, jobs are explicitly cancelled with the broker, which prevents reuse.',
101
+ ...booleanConfigHelper(false),
102
+ },
88
103
  };
89
104
 
90
105
  function parseProverId(str?: string) {
@@ -47,15 +47,6 @@ export type ProofAndVerificationKey<N extends number> = {
47
47
  verificationKey: VerificationKeyData;
48
48
  };
49
49
 
50
- function schemaForRecursiveProofAndVerificationKey<N extends number>(
51
- proofLength: N,
52
- ): ZodFor<ProofAndVerificationKey<N>> {
53
- return z.object({
54
- proof: RecursiveProof.schemaFor(proofLength),
55
- verificationKey: VerificationKeyData.schema,
56
- });
57
- }
58
-
59
50
  export function makeProofAndVerificationKey<N extends number>(
60
51
  proof: RecursiveProof<N>,
61
52
  verificationKey: VerificationKeyData,
@@ -213,7 +204,7 @@ export type ProvingJobInputsMap = {
213
204
  export const ProvingJobResult = z.discriminatedUnion('type', [
214
205
  z.object({
215
206
  type: z.literal(ProvingRequestType.PUBLIC_VM),
216
- result: schemaForRecursiveProofAndVerificationKey(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED),
207
+ result: RecursiveProof.schemaFor(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED),
217
208
  }),
218
209
  z.object({
219
210
  type: z.literal(ProvingRequestType.PUBLIC_CHONK_VERIFIER),
@@ -328,7 +319,7 @@ export const ProvingJobResult = z.discriminatedUnion('type', [
328
319
  ]);
329
320
  export type ProvingJobResult = z.infer<typeof ProvingJobResult>;
330
321
  export type ProvingJobResultsMap = {
331
- [ProvingRequestType.PUBLIC_VM]: ProofAndVerificationKey<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>;
322
+ [ProvingRequestType.PUBLIC_VM]: RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>;
332
323
  [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: PublicInputsAndRecursiveProof<
333
324
  PublicChonkVerifierPublicInputs,
334
325
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH