@aztec/stdlib 0.0.1-commit.5daedc8 → 0.0.1-commit.6b90f3f5

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 (1050) hide show
  1. package/dest/abi/abi.d.ts +603 -5
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +7 -7
  4. package/dest/abi/authorization_selector.d.ts +2 -2
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/authorization_selector.js +2 -1
  7. package/dest/abi/buffer.d.ts +2 -2
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +2 -2
  11. package/dest/abi/contract_artifact.d.ts.map +1 -1
  12. package/dest/abi/contract_artifact.js +1 -1
  13. package/dest/abi/decoder.d.ts +2 -2
  14. package/dest/abi/decoder.d.ts.map +1 -1
  15. package/dest/abi/encoder.d.ts +2 -2
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +1 -1
  18. package/dest/abi/event_selector.d.ts +2 -2
  19. package/dest/abi/event_selector.d.ts.map +1 -1
  20. package/dest/abi/event_selector.js +2 -1
  21. package/dest/abi/function_call.d.ts +10 -2
  22. package/dest/abi/function_call.d.ts.map +1 -1
  23. package/dest/abi/function_selector.d.ts +3 -2
  24. package/dest/abi/function_selector.d.ts.map +1 -1
  25. package/dest/abi/function_selector.js +9 -1
  26. package/dest/abi/note_selector.d.ts +2 -2
  27. package/dest/abi/note_selector.d.ts.map +1 -1
  28. package/dest/abi/note_selector.js +2 -2
  29. package/dest/abi/selector.d.ts +2 -2
  30. package/dest/abi/selector.d.ts.map +1 -1
  31. package/dest/abi/selector.js +4 -2
  32. package/dest/abi/utils.d.ts +7 -1
  33. package/dest/abi/utils.d.ts.map +1 -1
  34. package/dest/abi/utils.js +7 -0
  35. package/dest/auth_witness/auth_witness.d.ts +3 -2
  36. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  37. package/dest/auth_witness/auth_witness.js +2 -2
  38. package/dest/avm/avm.d.ts +598 -386
  39. package/dest/avm/avm.d.ts.map +1 -1
  40. package/dest/avm/avm.js +238 -22
  41. package/dest/avm/avm_accumulated_data.d.ts +31 -4
  42. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  43. package/dest/avm/avm_accumulated_data.js +6 -3
  44. package/dest/avm/avm_circuit_public_inputs.d.ts +14 -12
  45. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  46. package/dest/avm/avm_circuit_public_inputs.js +4 -2
  47. package/dest/avm/avm_proving_request.d.ts +306 -302
  48. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  49. package/dest/avm/contract_storage_read.d.ts +14 -2
  50. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  51. package/dest/avm/contract_storage_read.js +1 -1
  52. package/dest/avm/contract_storage_update_request.d.ts +14 -2
  53. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  54. package/dest/avm/contract_storage_update_request.js +1 -1
  55. package/dest/avm/message_pack.d.ts +1 -1
  56. package/dest/avm/message_pack.d.ts.map +1 -1
  57. package/dest/avm/message_pack.js +2 -1
  58. package/dest/avm/public_call_stack_item_compressed.d.ts +4 -2
  59. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  60. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  61. package/dest/avm/public_data_read.d.ts +11 -2
  62. package/dest/avm/public_data_read.d.ts.map +1 -1
  63. package/dest/avm/public_data_read.js +1 -1
  64. package/dest/avm/public_data_update_request.d.ts +11 -2
  65. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  66. package/dest/avm/public_data_update_request.js +4 -2
  67. package/dest/avm/public_data_write.d.ts +8 -2
  68. package/dest/avm/public_data_write.d.ts.map +1 -1
  69. package/dest/avm/public_data_write.js +1 -1
  70. package/dest/avm/public_inner_call_request.d.ts +5 -2
  71. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  72. package/dest/avm/public_inner_call_request.js +3 -1
  73. package/dest/avm/revert_code.d.ts +5 -5
  74. package/dest/avm/revert_code.d.ts.map +1 -1
  75. package/dest/avm/revert_code.js +4 -2
  76. package/dest/aztec-address/index.d.ts +3 -2
  77. package/dest/aztec-address/index.d.ts.map +1 -1
  78. package/dest/aztec-address/index.js +5 -2
  79. package/dest/block/attestation_info.d.ts +5 -5
  80. package/dest/block/attestation_info.d.ts.map +1 -1
  81. package/dest/block/attestation_info.js +5 -5
  82. package/dest/block/block_hash.d.ts +19 -15
  83. package/dest/block/block_hash.d.ts.map +1 -1
  84. package/dest/block/block_hash.js +23 -21
  85. package/dest/block/block_parameter.d.ts +6 -0
  86. package/dest/block/block_parameter.d.ts.map +1 -0
  87. package/dest/block/block_parameter.js +8 -0
  88. package/dest/block/body.d.ts +1 -1
  89. package/dest/block/body.d.ts.map +1 -1
  90. package/dest/block/body.js +5 -2
  91. package/dest/block/checkpointed_l2_block.d.ts +150 -0
  92. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  93. package/dest/block/checkpointed_l2_block.js +46 -0
  94. package/dest/block/in_block.d.ts +34 -15
  95. package/dest/block/in_block.d.ts.map +1 -1
  96. package/dest/block/in_block.js +21 -12
  97. package/dest/block/index.d.ts +3 -5
  98. package/dest/block/index.d.ts.map +1 -1
  99. package/dest/block/index.js +2 -4
  100. package/dest/block/l2_block.d.ts +59 -59
  101. package/dest/block/l2_block.d.ts.map +1 -1
  102. package/dest/block/l2_block.js +69 -110
  103. package/dest/block/l2_block_info.d.ts +16 -11
  104. package/dest/block/l2_block_info.d.ts.map +1 -1
  105. package/dest/block/l2_block_info.js +8 -7
  106. package/dest/block/l2_block_source.d.ts +371 -151
  107. package/dest/block/l2_block_source.d.ts.map +1 -1
  108. package/dest/block/l2_block_source.js +29 -16
  109. package/dest/block/l2_block_stream/index.d.ts +2 -1
  110. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  111. package/dest/block/l2_block_stream/index.js +1 -0
  112. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  113. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  114. package/dest/block/l2_block_stream/l2_block_stream.d.ts +13 -3
  115. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  116. package/dest/block/l2_block_stream/l2_block_stream.js +116 -32
  117. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -15
  118. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  119. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -59
  120. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  121. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  122. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  123. package/dest/block/proposal/attestations_and_signers.d.ts +2 -2
  124. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  125. package/dest/block/proposal/committee_attestation.d.ts +2 -2
  126. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  127. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  128. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  129. package/dest/block/test/l2_tips_store_test_suite.js +482 -43
  130. package/dest/block/validate_block_result.d.ts +24 -24
  131. package/dest/block/validate_block_result.d.ts.map +1 -1
  132. package/dest/block/validate_block_result.js +18 -17
  133. package/dest/checkpoint/checkpoint.d.ts +57 -15
  134. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  135. package/dest/checkpoint/checkpoint.js +61 -10
  136. package/dest/checkpoint/checkpoint_info.d.ts +38 -0
  137. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  138. package/dest/checkpoint/checkpoint_info.js +34 -0
  139. package/dest/checkpoint/index.d.ts +2 -1
  140. package/dest/checkpoint/index.d.ts.map +1 -1
  141. package/dest/checkpoint/index.js +1 -0
  142. package/dest/checkpoint/published_checkpoint.d.ts +42 -14
  143. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  144. package/dest/checkpoint/published_checkpoint.js +15 -4
  145. package/dest/config/node-rpc-config.js +1 -1
  146. package/dest/contract/artifact_hash.d.ts +2 -2
  147. package/dest/contract/artifact_hash.d.ts.map +1 -1
  148. package/dest/contract/artifact_hash.js +2 -2
  149. package/dest/contract/complete_address.d.ts +5 -2
  150. package/dest/contract/complete_address.d.ts.map +1 -1
  151. package/dest/contract/complete_address.js +1 -1
  152. package/dest/contract/contract_address.d.ts +2 -2
  153. package/dest/contract/contract_address.d.ts.map +1 -1
  154. package/dest/contract/contract_address.js +3 -3
  155. package/dest/contract/contract_class.d.ts +2 -2
  156. package/dest/contract/contract_class.d.ts.map +1 -1
  157. package/dest/contract/contract_class.js +1 -1
  158. package/dest/contract/contract_class_id.d.ts +3 -3
  159. package/dest/contract/contract_class_id.d.ts.map +1 -1
  160. package/dest/contract/contract_class_id.js +4 -4
  161. package/dest/contract/contract_deployment_data.d.ts +5 -5
  162. package/dest/contract/contract_instance.d.ts +2 -2
  163. package/dest/contract/contract_instance.d.ts.map +1 -1
  164. package/dest/contract/contract_instance.js +1 -1
  165. package/dest/contract/contract_instance_update.d.ts +2 -2
  166. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  167. package/dest/contract/contract_instance_update.js +1 -1
  168. package/dest/contract/deployment_info.d.ts +2 -2
  169. package/dest/contract/deployment_info.d.ts.map +1 -1
  170. package/dest/contract/index.d.ts +1 -3
  171. package/dest/contract/index.d.ts.map +1 -1
  172. package/dest/contract/index.js +0 -2
  173. package/dest/contract/interfaces/contract_class.d.ts +19 -14
  174. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  175. package/dest/contract/interfaces/contract_class.js +35 -18
  176. package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
  177. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  178. package/dest/contract/interfaces/contract_instance.d.ts +40 -31
  179. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  180. package/dest/contract/interfaces/contract_instance.js +30 -5
  181. package/dest/contract/interfaces/contract_instance_update.d.ts +7 -8
  182. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  183. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  184. package/dest/contract/partial_address.d.ts +2 -2
  185. package/dest/contract/partial_address.d.ts.map +1 -1
  186. package/dest/contract/private_function.d.ts +2 -2
  187. package/dest/contract/private_function.d.ts.map +1 -1
  188. package/dest/contract/private_function.js +4 -4
  189. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  190. package/dest/contract/private_function_membership_proof.js +3 -3
  191. package/dest/contract/utility_function_membership_proof.js +1 -1
  192. package/dest/database-version/database_version.d.ts +58 -0
  193. package/dest/database-version/database_version.d.ts.map +1 -0
  194. package/dest/database-version/database_version.js +69 -0
  195. package/dest/database-version/version_manager.d.ts +3 -49
  196. package/dest/database-version/version_manager.d.ts.map +1 -1
  197. package/dest/database-version/version_manager.js +1 -64
  198. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +3 -3
  199. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  200. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +9 -12
  201. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  202. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  203. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  204. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  205. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  206. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  207. package/dest/deserialization/index.d.ts +11 -0
  208. package/dest/deserialization/index.d.ts.map +1 -0
  209. package/dest/deserialization/index.js +10 -0
  210. package/dest/epoch-helpers/index.d.ts +3 -1
  211. package/dest/epoch-helpers/index.d.ts.map +1 -1
  212. package/dest/epoch-helpers/index.js +8 -4
  213. package/dest/errors/proving_error.d.ts +2 -2
  214. package/dest/errors/proving_error.d.ts.map +1 -1
  215. package/dest/errors/simulation_error.d.ts +2 -2
  216. package/dest/errors/simulation_error.d.ts.map +1 -1
  217. package/dest/fees/transaction_fee.d.ts +2 -2
  218. package/dest/fees/transaction_fee.d.ts.map +1 -1
  219. package/dest/gas/gas.d.ts +2 -2
  220. package/dest/gas/gas.d.ts.map +1 -1
  221. package/dest/gas/gas.js +4 -2
  222. package/dest/gas/gas_fees.d.ts +2 -2
  223. package/dest/gas/gas_fees.d.ts.map +1 -1
  224. package/dest/gas/gas_fees.js +3 -1
  225. package/dest/gas/gas_settings.d.ts +2 -2
  226. package/dest/gas/gas_settings.d.ts.map +1 -1
  227. package/dest/gas/gas_settings.js +1 -1
  228. package/dest/hash/hash.d.ts +2 -10
  229. package/dest/hash/hash.d.ts.map +1 -1
  230. package/dest/hash/hash.js +5 -16
  231. package/dest/hash/map_slot.d.ts +2 -2
  232. package/dest/hash/map_slot.d.ts.map +1 -1
  233. package/dest/hash/map_slot.js +4 -3
  234. package/dest/interfaces/allowed_element.d.ts +8 -9
  235. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  236. package/dest/interfaces/allowed_element.js +3 -3
  237. package/dest/interfaces/api_limit.d.ts +3 -1
  238. package/dest/interfaces/api_limit.d.ts.map +1 -1
  239. package/dest/interfaces/api_limit.js +2 -0
  240. package/dest/interfaces/archiver.d.ts +12 -7
  241. package/dest/interfaces/archiver.d.ts.map +1 -1
  242. package/dest/interfaces/archiver.js +35 -21
  243. package/dest/interfaces/aztec-node-admin.d.ts +96 -41
  244. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  245. package/dest/interfaces/aztec-node-admin.js +3 -3
  246. package/dest/interfaces/aztec-node.d.ts +75 -92
  247. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  248. package/dest/interfaces/aztec-node.js +31 -33
  249. package/dest/interfaces/block-builder.d.ts +24 -14
  250. package/dest/interfaces/block-builder.d.ts.map +1 -1
  251. package/dest/interfaces/block-builder.js +16 -1
  252. package/dest/interfaces/configs.d.ts +56 -27
  253. package/dest/interfaces/configs.d.ts.map +1 -1
  254. package/dest/interfaces/configs.js +12 -6
  255. package/dest/interfaces/epoch-prover.d.ts +5 -5
  256. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  257. package/dest/interfaces/get_logs_response.d.ts +23 -6
  258. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  259. package/dest/interfaces/get_logs_response.js +5 -4
  260. package/dest/interfaces/l2_logs_source.d.ts +21 -15
  261. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  262. package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
  263. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  264. package/dest/interfaces/p2p.d.ts +7 -9
  265. package/dest/interfaces/p2p.d.ts.map +1 -1
  266. package/dest/interfaces/p2p.js +3 -4
  267. package/dest/interfaces/prover-client.d.ts +14 -3
  268. package/dest/interfaces/prover-client.d.ts.map +1 -1
  269. package/dest/interfaces/prover-client.js +11 -4
  270. package/dest/interfaces/proving-job.d.ts +192 -188
  271. package/dest/interfaces/proving-job.d.ts.map +1 -1
  272. package/dest/interfaces/proving-job.js +1 -7
  273. package/dest/interfaces/public_state_source.d.ts +2 -2
  274. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  275. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  276. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  277. package/dest/interfaces/slasher.d.ts +1 -1
  278. package/dest/interfaces/slasher.d.ts.map +1 -1
  279. package/dest/interfaces/slasher.js +3 -3
  280. package/dest/interfaces/validator.d.ts +115 -26
  281. package/dest/interfaces/validator.d.ts.map +1 -1
  282. package/dest/interfaces/validator.js +9 -7
  283. package/dest/interfaces/world_state.d.ts +23 -31
  284. package/dest/interfaces/world_state.d.ts.map +1 -1
  285. package/dest/interfaces/world_state.js +4 -3
  286. package/dest/kernel/claimed_length_array.d.ts +2 -2
  287. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  288. package/dest/kernel/claimed_length_array.js +3 -1
  289. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  290. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  291. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  292. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +4 -4
  293. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  294. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  295. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  296. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  297. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
  298. package/dest/kernel/hints/key_validation_hint.d.ts +3 -2
  299. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  300. package/dest/kernel/hints/key_validation_hint.js +1 -1
  301. package/dest/kernel/hints/key_validation_request.d.ts +5 -3
  302. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  303. package/dest/kernel/hints/key_validation_request.js +2 -1
  304. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +7 -2
  305. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  306. package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
  307. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  308. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  309. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  310. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  311. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  312. package/dest/kernel/hints/read_request.d.ts +8 -2
  313. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  314. package/dest/kernel/hints/read_request.js +1 -1
  315. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  316. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  317. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +2 -2
  318. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  319. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  320. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  321. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  322. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  323. package/dest/kernel/hints/transient_data_squashing_hint.js +4 -2
  324. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
  325. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  326. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  327. package/dest/kernel/log_hash.d.ts +2 -2
  328. package/dest/kernel/log_hash.d.ts.map +1 -1
  329. package/dest/kernel/log_hash.js +4 -2
  330. package/dest/kernel/note_hash.d.ts +2 -2
  331. package/dest/kernel/note_hash.d.ts.map +1 -1
  332. package/dest/kernel/note_hash.js +1 -1
  333. package/dest/kernel/nullifier.d.ts +2 -2
  334. package/dest/kernel/nullifier.d.ts.map +1 -1
  335. package/dest/kernel/nullifier.js +1 -1
  336. package/dest/kernel/padded_side_effects.d.ts +2 -2
  337. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  338. package/dest/kernel/padded_side_effects.js +1 -1
  339. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  340. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  341. package/dest/kernel/private_call_data.d.ts +30 -63
  342. package/dest/kernel/private_call_data.d.ts.map +1 -1
  343. package/dest/kernel/private_call_data.js +5 -106
  344. package/dest/kernel/private_call_request.d.ts +17 -2
  345. package/dest/kernel/private_call_request.d.ts.map +1 -1
  346. package/dest/kernel/private_call_request.js +1 -1
  347. package/dest/kernel/private_circuit_public_inputs.d.ts +121 -48
  348. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  349. package/dest/kernel/private_circuit_public_inputs.js +60 -60
  350. package/dest/kernel/private_context_inputs.d.ts +2 -2
  351. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  352. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +32 -2
  353. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_kernel_circuit_public_inputs.js +1 -1
  355. package/dest/kernel/private_kernel_data.d.ts +7 -1
  356. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  357. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +23 -2
  358. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  359. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +1 -1
  360. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  361. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  362. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  363. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  364. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  365. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  366. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +24 -2
  367. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  368. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +1 -1
  369. package/dest/kernel/private_log_data.d.ts +2 -2
  370. package/dest/kernel/private_log_data.d.ts.map +1 -1
  371. package/dest/kernel/private_log_data.js +5 -2
  372. package/dest/kernel/private_to_avm_accumulated_data.d.ts +4 -4
  373. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  374. package/dest/kernel/private_to_avm_accumulated_data.js +6 -3
  375. package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -2
  376. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  377. package/dest/kernel/private_to_public_accumulated_data.js +4 -2
  378. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  379. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  380. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  381. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -2
  382. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  383. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +1 -1
  384. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +18 -2
  385. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  386. package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
  387. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +17 -2
  388. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  389. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +1 -1
  390. package/dest/kernel/private_validation_requests.d.ts +10 -1
  391. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  392. package/dest/kernel/private_validation_requests.js +3 -1
  393. package/dest/kernel/public_call_request.d.ts +23 -2
  394. package/dest/kernel/public_call_request.d.ts.map +1 -1
  395. package/dest/kernel/public_call_request.js +6 -3
  396. package/dest/kernel/utils/optional_number.d.ts +8 -2
  397. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  398. package/dest/keys/derivation.d.ts +7 -6
  399. package/dest/keys/derivation.d.ts.map +1 -1
  400. package/dest/keys/derivation.js +13 -10
  401. package/dest/keys/key_types.d.ts +1 -1
  402. package/dest/keys/public_key.d.ts +2 -2
  403. package/dest/keys/public_key.d.ts.map +1 -1
  404. package/dest/keys/public_keys.d.ts +7 -2
  405. package/dest/keys/public_keys.d.ts.map +1 -1
  406. package/dest/keys/public_keys.js +3 -2
  407. package/dest/keys/utils.d.ts +1 -1
  408. package/dest/keys/utils.d.ts.map +1 -1
  409. package/dest/keys/utils.js +7 -3
  410. package/dest/l1-contracts/slash_factory.d.ts +3 -2
  411. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  412. package/dest/l1-contracts/slash_factory.js +2 -1
  413. package/dest/logs/contract_class_log.d.ts +2 -2
  414. package/dest/logs/contract_class_log.d.ts.map +1 -1
  415. package/dest/logs/contract_class_log.js +5 -3
  416. package/dest/logs/debug_log.d.ts +2 -2
  417. package/dest/logs/debug_log.d.ts.map +1 -1
  418. package/dest/logs/debug_log.js +1 -1
  419. package/dest/logs/directional_app_tagging_secret.d.ts +2 -2
  420. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  421. package/dest/logs/directional_app_tagging_secret.js +3 -2
  422. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  423. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  424. package/dest/logs/extended_public_log.d.ts +14 -4
  425. package/dest/logs/extended_public_log.d.ts.map +1 -1
  426. package/dest/logs/index.d.ts +3 -2
  427. package/dest/logs/index.d.ts.map +1 -1
  428. package/dest/logs/index.js +2 -1
  429. package/dest/logs/log_id.d.ts +20 -5
  430. package/dest/logs/log_id.d.ts.map +1 -1
  431. package/dest/logs/log_id.js +20 -11
  432. package/dest/logs/message_context.d.ts +2 -2
  433. package/dest/logs/message_context.d.ts.map +1 -1
  434. package/dest/logs/message_context.js +1 -1
  435. package/dest/logs/pending_tagged_log.d.ts +2 -2
  436. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  437. package/dest/logs/pending_tagged_log.js +1 -1
  438. package/dest/logs/private_log.d.ts +2 -2
  439. package/dest/logs/private_log.d.ts.map +1 -1
  440. package/dest/logs/private_log.js +6 -3
  441. package/dest/logs/public_log.d.ts +3 -2
  442. package/dest/logs/public_log.d.ts.map +1 -1
  443. package/dest/logs/public_log.js +7 -2
  444. package/dest/logs/shared_secret_derivation.d.ts +2 -2
  445. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  446. package/dest/logs/shared_secret_derivation.js +1 -1
  447. package/dest/logs/siloed_tag.d.ts +23 -0
  448. package/dest/logs/siloed_tag.d.ts.map +1 -0
  449. package/dest/logs/siloed_tag.js +31 -0
  450. package/dest/logs/tag.d.ts +21 -0
  451. package/dest/logs/tag.d.ts.map +1 -0
  452. package/dest/logs/tag.js +30 -0
  453. package/dest/logs/tx_scoped_l2_log.d.ts +32 -38
  454. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  455. package/dest/logs/tx_scoped_l2_log.js +40 -45
  456. package/dest/messaging/in_hash.d.ts +5 -3
  457. package/dest/messaging/in_hash.d.ts.map +1 -1
  458. package/dest/messaging/in_hash.js +4 -2
  459. package/dest/messaging/inbox_leaf.d.ts +10 -7
  460. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  461. package/dest/messaging/inbox_leaf.js +10 -9
  462. package/dest/messaging/l1_actor.d.ts +8 -2
  463. package/dest/messaging/l1_actor.d.ts.map +1 -1
  464. package/dest/messaging/l1_actor.js +2 -2
  465. package/dest/messaging/l1_to_l2_message.d.ts +7 -2
  466. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  467. package/dest/messaging/l1_to_l2_message.js +2 -2
  468. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
  469. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  470. package/dest/messaging/l2_actor.d.ts +8 -2
  471. package/dest/messaging/l2_actor.d.ts.map +1 -1
  472. package/dest/messaging/l2_actor.js +2 -2
  473. package/dest/messaging/l2_to_l1_membership.d.ts +89 -6
  474. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  475. package/dest/messaging/l2_to_l1_membership.js +161 -43
  476. package/dest/messaging/l2_to_l1_message.d.ts +3 -2
  477. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  478. package/dest/messaging/l2_to_l1_message.js +4 -1
  479. package/dest/messaging/out_hash.d.ts +42 -4
  480. package/dest/messaging/out_hash.d.ts.map +1 -1
  481. package/dest/messaging/out_hash.js +55 -20
  482. package/dest/note/note.d.ts +2 -2
  483. package/dest/note/note.d.ts.map +1 -1
  484. package/dest/note/note.js +5 -2
  485. package/dest/note/note_dao.d.ts +48 -9
  486. package/dest/note/note_dao.d.ts.map +1 -1
  487. package/dest/note/note_dao.js +29 -15
  488. package/dest/note/notes_filter.d.ts +4 -2
  489. package/dest/note/notes_filter.d.ts.map +1 -1
  490. package/dest/note/notes_filter.js +1 -0
  491. package/dest/p2p/attestation_utils.d.ts +3 -3
  492. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  493. package/dest/p2p/attestation_utils.js +1 -1
  494. package/dest/p2p/block_proposal.d.ts +103 -24
  495. package/dest/p2p/block_proposal.d.ts.map +1 -1
  496. package/dest/p2p/block_proposal.js +142 -40
  497. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  498. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  499. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +24 -20
  500. package/dest/p2p/checkpoint_proposal.d.ts +167 -0
  501. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  502. package/dest/p2p/checkpoint_proposal.js +229 -0
  503. package/dest/p2p/consensus_payload.d.ts +10 -10
  504. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  505. package/dest/p2p/consensus_payload.js +4 -6
  506. package/dest/p2p/constants.d.ts +3 -0
  507. package/dest/p2p/constants.d.ts.map +1 -0
  508. package/dest/p2p/constants.js +2 -0
  509. package/dest/p2p/gossipable.d.ts +4 -3
  510. package/dest/p2p/gossipable.d.ts.map +1 -1
  511. package/dest/p2p/gossipable.js +16 -5
  512. package/dest/p2p/index.d.ts +5 -2
  513. package/dest/p2p/index.d.ts.map +1 -1
  514. package/dest/p2p/index.js +4 -1
  515. package/dest/p2p/message_validator.d.ts +18 -3
  516. package/dest/p2p/message_validator.d.ts.map +1 -1
  517. package/dest/p2p/message_validator.js +2 -1
  518. package/dest/p2p/signature_utils.d.ts +5 -3
  519. package/dest/p2p/signature_utils.d.ts.map +1 -1
  520. package/dest/p2p/signature_utils.js +5 -2
  521. package/dest/p2p/signed_txs.d.ts +42 -0
  522. package/dest/p2p/signed_txs.d.ts.map +1 -0
  523. package/dest/p2p/signed_txs.js +75 -0
  524. package/dest/p2p/topic_type.d.ts +3 -2
  525. package/dest/p2p/topic_type.d.ts.map +1 -1
  526. package/dest/p2p/topic_type.js +10 -3
  527. package/dest/parity/parity_base_private_inputs.d.ts +4 -2
  528. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  529. package/dest/parity/parity_base_private_inputs.js +1 -1
  530. package/dest/parity/parity_public_inputs.d.ts +5 -2
  531. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  532. package/dest/parity/parity_public_inputs.js +1 -1
  533. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  534. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  535. package/dest/proofs/chonk_proof.d.ts +2 -2
  536. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  537. package/dest/proofs/chonk_proof.js +11 -6
  538. package/dest/proofs/proof.d.ts +5 -2
  539. package/dest/proofs/proof.d.ts.map +1 -1
  540. package/dest/proofs/proof.js +1 -1
  541. package/dest/proofs/proof_data.d.ts +13 -1
  542. package/dest/proofs/proof_data.d.ts.map +1 -1
  543. package/dest/proofs/proof_data.js +17 -0
  544. package/dest/proofs/recursive_proof.d.ts +11 -2
  545. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  546. package/dest/proofs/recursive_proof.js +1 -1
  547. package/dest/rollup/avm_proof_data.d.ts +3 -5
  548. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  549. package/dest/rollup/avm_proof_data.js +1 -9
  550. package/dest/rollup/base_rollup_hints.d.ts +35 -2
  551. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  552. package/dest/rollup/base_rollup_hints.js +1 -1
  553. package/dest/rollup/block_constant_data.d.ts +13 -2
  554. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  555. package/dest/rollup/block_constant_data.js +1 -1
  556. package/dest/rollup/block_headers_hash.d.ts +2 -2
  557. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  558. package/dest/rollup/block_headers_hash.js +2 -2
  559. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  560. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  561. package/dest/rollup/block_rollup_public_inputs.d.ts +48 -12
  562. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  563. package/dest/rollup/block_rollup_public_inputs.js +9 -13
  564. package/dest/rollup/block_root_rollup_private_inputs.d.ts +65 -2
  565. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  566. package/dest/rollup/block_root_rollup_private_inputs.js +1 -1
  567. package/dest/rollup/checkpoint_constant_data.d.ts +12 -2
  568. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  569. package/dest/rollup/checkpoint_constant_data.js +5 -2
  570. package/dest/rollup/checkpoint_header.d.ts +47 -13
  571. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  572. package/dest/rollup/checkpoint_header.js +55 -22
  573. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  574. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  575. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +42 -2
  576. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  577. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -3
  578. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +46 -4
  579. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  580. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +15 -3
  581. package/dest/rollup/epoch_constant_data.d.ts +17 -2
  582. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  583. package/dest/rollup/epoch_constant_data.js +1 -1
  584. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  585. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  586. package/dest/rollup/public_chonk_verifier_private_inputs.js +1 -1
  587. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  588. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  589. package/dest/rollup/public_chonk_verifier_public_inputs.js +1 -1
  590. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  591. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  592. package/dest/rollup/public_tx_base_rollup_private_inputs.js +2 -2
  593. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  594. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  595. package/dest/rollup/root_rollup_public_inputs.d.ts +19 -4
  596. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  597. package/dest/rollup/root_rollup_public_inputs.js +10 -4
  598. package/dest/rollup/tree_snapshot_diff_hints.d.ts +25 -2
  599. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  600. package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
  601. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  602. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  603. package/dest/rollup/tx_rollup_public_inputs.d.ts +30 -2
  604. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  605. package/dest/rollup/tx_rollup_public_inputs.js +1 -1
  606. package/dest/schemas/schemas.d.ts +7 -4
  607. package/dest/schemas/schemas.d.ts.map +1 -1
  608. package/dest/schemas/schemas.js +2 -1
  609. package/dest/slashing/types.d.ts +4 -5
  610. package/dest/slashing/types.d.ts.map +1 -1
  611. package/dest/slashing/types.js +5 -5
  612. package/dest/snapshots/types.d.ts +1 -1
  613. package/dest/snapshots/types.d.ts.map +1 -1
  614. package/dest/snapshots/types.js +5 -5
  615. package/dest/stats/stats.d.ts +10 -8
  616. package/dest/stats/stats.d.ts.map +1 -1
  617. package/dest/tests/factories.d.ts +42 -12
  618. package/dest/tests/factories.d.ts.map +1 -1
  619. package/dest/tests/factories.js +99 -32
  620. package/dest/tests/jest.js +1 -1
  621. package/dest/tests/mocks.d.ts +87 -19
  622. package/dest/tests/mocks.d.ts.map +1 -1
  623. package/dest/tests/mocks.js +182 -57
  624. package/dest/trees/append_only_tree_snapshot.d.ts +14 -2
  625. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  626. package/dest/trees/append_only_tree_snapshot.js +4 -2
  627. package/dest/trees/database_public_state_source.d.ts +2 -2
  628. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  629. package/dest/trees/database_public_state_source.js +1 -1
  630. package/dest/trees/nullifier_leaf.d.ts +14 -2
  631. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  632. package/dest/trees/nullifier_leaf.js +1 -1
  633. package/dest/trees/nullifier_membership_witness.d.ts +11 -2
  634. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  635. package/dest/trees/nullifier_membership_witness.js +1 -1
  636. package/dest/trees/public_data_leaf.d.ts +17 -2
  637. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  638. package/dest/trees/public_data_leaf.js +1 -1
  639. package/dest/trees/public_data_witness.d.ts +12 -2
  640. package/dest/trees/public_data_witness.d.ts.map +1 -1
  641. package/dest/trees/public_data_witness.js +1 -1
  642. package/dest/tx/block_header.d.ts +25 -12
  643. package/dest/tx/block_header.d.ts.map +1 -1
  644. package/dest/tx/block_header.js +15 -4
  645. package/dest/tx/call_context.d.ts +14 -2
  646. package/dest/tx/call_context.d.ts.map +1 -1
  647. package/dest/tx/call_context.js +3 -1
  648. package/dest/tx/capsule.d.ts +5 -2
  649. package/dest/tx/capsule.d.ts.map +1 -1
  650. package/dest/tx/capsule.js +1 -1
  651. package/dest/tx/execution_payload.d.ts +9 -1
  652. package/dest/tx/execution_payload.d.ts.map +1 -1
  653. package/dest/tx/function_data.d.ts +5 -3
  654. package/dest/tx/function_data.d.ts.map +1 -1
  655. package/dest/tx/function_data.js +1 -1
  656. package/dest/tx/global_variable_builder.d.ts +5 -3
  657. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  658. package/dest/tx/global_variables.d.ts +27 -12
  659. package/dest/tx/global_variables.d.ts.map +1 -1
  660. package/dest/tx/global_variables.js +11 -9
  661. package/dest/tx/hashed_values.d.ts +8 -2
  662. package/dest/tx/hashed_values.d.ts.map +1 -1
  663. package/dest/tx/hashed_values.js +1 -1
  664. package/dest/tx/in_tx.d.ts +26 -0
  665. package/dest/tx/in_tx.d.ts.map +1 -0
  666. package/dest/tx/in_tx.js +14 -0
  667. package/dest/tx/index.d.ts +2 -2
  668. package/dest/tx/index.d.ts.map +1 -1
  669. package/dest/tx/index.js +1 -1
  670. package/dest/tx/indexed_tx_effect.d.ts +14 -10
  671. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  672. package/dest/tx/indexed_tx_effect.js +8 -6
  673. package/dest/tx/offchain_effect.d.ts +2 -2
  674. package/dest/tx/offchain_effect.d.ts.map +1 -1
  675. package/dest/tx/offchain_effect.js +1 -1
  676. package/dest/tx/partial_state_reference.d.ts +5 -2
  677. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  678. package/dest/tx/private_execution_result.d.ts +27 -10
  679. package/dest/tx/private_execution_result.d.ts.map +1 -1
  680. package/dest/tx/private_execution_result.js +6 -23
  681. package/dest/tx/private_tx_constant_data.d.ts +17 -2
  682. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  683. package/dest/tx/private_tx_constant_data.js +1 -1
  684. package/dest/tx/processed_tx.d.ts +5 -4
  685. package/dest/tx/processed_tx.d.ts.map +1 -1
  686. package/dest/tx/processed_tx.js +8 -7
  687. package/dest/tx/profiling.d.ts +150 -27
  688. package/dest/tx/profiling.d.ts.map +1 -1
  689. package/dest/tx/profiling.js +45 -8
  690. package/dest/tx/protocol_contracts.d.ts +3 -3
  691. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  692. package/dest/tx/protocol_contracts.js +1 -1
  693. package/dest/tx/public_call_request_with_calldata.d.ts +8 -2
  694. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  695. package/dest/tx/public_call_request_with_calldata.js +4 -2
  696. package/dest/tx/public_simulation_output.d.ts +2 -2
  697. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  698. package/dest/tx/public_simulation_output.js +1 -1
  699. package/dest/tx/simulated_tx.d.ts +1031 -7
  700. package/dest/tx/simulated_tx.d.ts.map +1 -1
  701. package/dest/tx/state_reference.d.ts +4 -2
  702. package/dest/tx/state_reference.d.ts.map +1 -1
  703. package/dest/tx/state_reference.js +3 -1
  704. package/dest/tx/tree_snapshots.d.ts +2 -2
  705. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  706. package/dest/tx/tree_snapshots.js +3 -1
  707. package/dest/tx/tx.d.ts +34 -4
  708. package/dest/tx/tx.d.ts.map +1 -1
  709. package/dest/tx/tx.js +19 -7
  710. package/dest/tx/tx_constant_data.d.ts +2 -2
  711. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  712. package/dest/tx/tx_constant_data.js +1 -1
  713. package/dest/tx/tx_context.d.ts +3 -2
  714. package/dest/tx/tx_context.d.ts.map +1 -1
  715. package/dest/tx/tx_context.js +1 -1
  716. package/dest/tx/tx_effect.d.ts +33 -7
  717. package/dest/tx/tx_effect.d.ts.map +1 -1
  718. package/dest/tx/tx_effect.js +8 -11
  719. package/dest/tx/tx_execution_request.d.ts +31 -2
  720. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  721. package/dest/tx/tx_execution_request.js +7 -3
  722. package/dest/tx/tx_hash.d.ts +3 -2
  723. package/dest/tx/tx_hash.d.ts.map +1 -1
  724. package/dest/tx/tx_hash.js +1 -1
  725. package/dest/tx/tx_receipt.d.ts +50 -15
  726. package/dest/tx/tx_receipt.d.ts.map +1 -1
  727. package/dest/tx/tx_receipt.js +48 -16
  728. package/dest/tx/tx_request.d.ts +7 -2
  729. package/dest/tx/tx_request.d.ts.map +1 -1
  730. package/dest/tx/tx_request.js +2 -2
  731. package/dest/tx/validator/error_texts.d.ts +2 -1
  732. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  733. package/dest/tx/validator/error_texts.js +2 -0
  734. package/dest/tx/validator/tx_validator.d.ts +1 -4
  735. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  736. package/dest/tx/validator/tx_validator.js +4 -4
  737. package/dest/types/shared.d.ts +4 -1
  738. package/dest/types/shared.d.ts.map +1 -1
  739. package/dest/update-checker/update-checker.d.ts +2 -2
  740. package/dest/update-checker/update-checker.d.ts.map +1 -1
  741. package/dest/update-checker/update-checker.js +1 -1
  742. package/dest/validators/errors.d.ts +2 -2
  743. package/dest/validators/errors.d.ts.map +1 -1
  744. package/dest/validators/schemas.d.ts +9 -9
  745. package/dest/validators/schemas.d.ts.map +1 -1
  746. package/dest/validators/schemas.js +13 -13
  747. package/dest/versioning/versioning.d.ts +2 -2
  748. package/dest/versioning/versioning.d.ts.map +1 -1
  749. package/dest/vks/verification_key.d.ts +23 -2
  750. package/dest/vks/verification_key.d.ts.map +1 -1
  751. package/dest/vks/verification_key.js +1 -1
  752. package/dest/vks/vk_data.d.ts +8 -2
  753. package/dest/vks/vk_data.d.ts.map +1 -1
  754. package/dest/vks/vk_data.js +1 -1
  755. package/dest/zkpassport/index.d.ts +4 -5
  756. package/dest/zkpassport/index.d.ts.map +1 -1
  757. package/dest/zkpassport/index.js +11 -11
  758. package/package.json +20 -12
  759. package/src/abi/abi.ts +40 -34
  760. package/src/abi/authorization_selector.ts +3 -2
  761. package/src/abi/buffer.ts +1 -1
  762. package/src/abi/contract_artifact.ts +10 -10
  763. package/src/abi/decoder.ts +1 -1
  764. package/src/abi/encoder.ts +1 -1
  765. package/src/abi/event_selector.ts +3 -2
  766. package/src/abi/function_call.ts +1 -1
  767. package/src/abi/function_selector.ts +11 -2
  768. package/src/abi/note_selector.ts +2 -2
  769. package/src/abi/selector.ts +1 -1
  770. package/src/abi/utils.ts +17 -0
  771. package/src/auth_witness/auth_witness.ts +2 -2
  772. package/src/avm/avm.ts +338 -20
  773. package/src/avm/avm_accumulated_data.ts +1 -1
  774. package/src/avm/avm_circuit_public_inputs.ts +1 -1
  775. package/src/avm/contract_storage_read.ts +1 -1
  776. package/src/avm/contract_storage_update_request.ts +1 -1
  777. package/src/avm/message_pack.ts +2 -1
  778. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  779. package/src/avm/public_data_read.ts +1 -1
  780. package/src/avm/public_data_update_request.ts +1 -1
  781. package/src/avm/public_data_write.ts +1 -1
  782. package/src/avm/public_inner_call_request.ts +1 -1
  783. package/src/avm/revert_code.ts +1 -1
  784. package/src/aztec-address/index.ts +2 -1
  785. package/src/block/attestation_info.ts +10 -7
  786. package/src/block/block_hash.ts +27 -26
  787. package/src/block/block_parameter.ts +10 -0
  788. package/src/block/body.ts +2 -1
  789. package/src/block/checkpointed_l2_block.ts +70 -0
  790. package/src/block/in_block.ts +28 -15
  791. package/src/block/index.ts +2 -4
  792. package/src/block/l2_block.ts +107 -141
  793. package/src/block/l2_block_info.ts +11 -10
  794. package/src/block/l2_block_source.ts +196 -71
  795. package/src/block/l2_block_stream/index.ts +1 -0
  796. package/src/block/l2_block_stream/interfaces.ts +15 -4
  797. package/src/block/l2_block_stream/l2_block_stream.ts +142 -37
  798. package/src/block/l2_block_stream/l2_tips_memory_store.ts +63 -54
  799. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  800. package/src/block/proposal/attestations_and_signers.ts +1 -1
  801. package/src/block/proposal/committee_attestation.ts +1 -1
  802. package/src/block/test/l2_tips_store_test_suite.ts +486 -36
  803. package/src/block/validate_block_result.ts +40 -35
  804. package/src/checkpoint/checkpoint.ts +88 -18
  805. package/src/checkpoint/checkpoint_info.ts +52 -0
  806. package/src/checkpoint/index.ts +1 -0
  807. package/src/checkpoint/published_checkpoint.ts +23 -8
  808. package/src/config/node-rpc-config.ts +1 -1
  809. package/src/contract/artifact_hash.ts +2 -2
  810. package/src/contract/complete_address.ts +1 -1
  811. package/src/contract/contract_address.ts +3 -3
  812. package/src/contract/contract_class.ts +2 -2
  813. package/src/contract/contract_class_id.ts +4 -4
  814. package/src/contract/contract_instance.ts +1 -1
  815. package/src/contract/contract_instance_update.ts +1 -1
  816. package/src/contract/deployment_info.ts +1 -1
  817. package/src/contract/index.ts +0 -2
  818. package/src/contract/interfaces/contract_class.ts +78 -47
  819. package/src/contract/interfaces/contract_data_source.ts +3 -2
  820. package/src/contract/interfaces/contract_instance.ts +48 -16
  821. package/src/contract/interfaces/contract_instance_update.ts +12 -10
  822. package/src/contract/partial_address.ts +1 -1
  823. package/src/contract/private_function.ts +4 -4
  824. package/src/contract/private_function_membership_proof.ts +3 -3
  825. package/src/contract/utility_function_membership_proof.ts +1 -1
  826. package/src/database-version/database_version.ts +87 -0
  827. package/src/database-version/version_manager.ts +1 -77
  828. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +11 -12
  829. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  830. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  831. package/src/deserialization/index.ts +21 -0
  832. package/src/epoch-helpers/index.ts +21 -10
  833. package/src/errors/simulation_error.ts +1 -1
  834. package/src/fees/transaction_fee.ts +1 -1
  835. package/src/gas/gas.ts +1 -1
  836. package/src/gas/gas_fees.ts +1 -1
  837. package/src/gas/gas_settings.ts +1 -1
  838. package/src/hash/hash.ts +5 -15
  839. package/src/hash/map_slot.ts +4 -3
  840. package/src/interfaces/allowed_element.ts +10 -8
  841. package/src/interfaces/api_limit.ts +2 -0
  842. package/src/interfaces/archiver.ts +49 -29
  843. package/src/interfaces/aztec-node-admin.ts +7 -4
  844. package/src/interfaces/aztec-node.ts +138 -171
  845. package/src/interfaces/block-builder.ts +51 -23
  846. package/src/interfaces/configs.ts +67 -33
  847. package/src/interfaces/epoch-prover.ts +4 -4
  848. package/src/interfaces/get_logs_response.ts +13 -9
  849. package/src/interfaces/l2_logs_source.ts +24 -14
  850. package/src/interfaces/merkle_tree_operations.ts +7 -3
  851. package/src/interfaces/p2p.ts +8 -12
  852. package/src/interfaces/prover-client.ts +28 -10
  853. package/src/interfaces/proving-job.ts +2 -11
  854. package/src/interfaces/public_state_source.ts +1 -1
  855. package/src/interfaces/server_circuit_prover.ts +3 -3
  856. package/src/interfaces/slasher.ts +24 -22
  857. package/src/interfaces/validator.ts +83 -31
  858. package/src/interfaces/world_state.ts +26 -18
  859. package/src/kernel/claimed_length_array.ts +1 -1
  860. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  861. package/src/kernel/hints/build_nullifier_read_request_hints.ts +18 -15
  862. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
  863. package/src/kernel/hints/key_validation_hint.ts +1 -1
  864. package/src/kernel/hints/key_validation_request.ts +2 -1
  865. package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
  866. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  867. package/src/kernel/hints/read_request.ts +1 -1
  868. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
  869. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  870. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  871. package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
  872. package/src/kernel/log_hash.ts +1 -1
  873. package/src/kernel/note_hash.ts +1 -1
  874. package/src/kernel/nullifier.ts +1 -1
  875. package/src/kernel/padded_side_effects.ts +1 -1
  876. package/src/kernel/private_call_data.ts +4 -131
  877. package/src/kernel/private_call_request.ts +1 -1
  878. package/src/kernel/private_circuit_public_inputs.ts +86 -86
  879. package/src/kernel/private_context_inputs.ts +1 -1
  880. package/src/kernel/private_kernel_circuit_public_inputs.ts +1 -1
  881. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +1 -1
  882. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +1 -1
  883. package/src/kernel/private_log_data.ts +1 -1
  884. package/src/kernel/private_to_avm_accumulated_data.ts +1 -1
  885. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  886. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  887. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +2 -2
  888. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  889. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +2 -2
  890. package/src/kernel/public_call_request.ts +1 -1
  891. package/src/kernel/utils/optional_number.ts +1 -1
  892. package/src/keys/derivation.ts +13 -10
  893. package/src/keys/key_types.ts +1 -1
  894. package/src/keys/public_key.ts +1 -1
  895. package/src/keys/public_keys.ts +3 -2
  896. package/src/keys/utils.ts +7 -3
  897. package/src/l1-contracts/slash_factory.ts +4 -1
  898. package/src/logs/contract_class_log.ts +2 -2
  899. package/src/logs/debug_log.ts +1 -1
  900. package/src/logs/directional_app_tagging_secret.ts +4 -2
  901. package/src/logs/index.ts +2 -1
  902. package/src/logs/log_id.ts +23 -11
  903. package/src/logs/message_context.ts +1 -1
  904. package/src/logs/pending_tagged_log.ts +1 -1
  905. package/src/logs/private_log.ts +3 -2
  906. package/src/logs/public_log.ts +8 -1
  907. package/src/logs/shared_secret_derivation.ts +2 -2
  908. package/src/logs/siloed_tag.ts +45 -0
  909. package/src/logs/tag.ts +42 -0
  910. package/src/logs/tx_scoped_l2_log.ts +48 -45
  911. package/src/messaging/in_hash.ts +4 -2
  912. package/src/messaging/inbox_leaf.ts +11 -10
  913. package/src/messaging/l1_actor.ts +2 -2
  914. package/src/messaging/l1_to_l2_message.ts +3 -2
  915. package/src/messaging/l1_to_l2_message_source.ts +5 -10
  916. package/src/messaging/l2_actor.ts +2 -2
  917. package/src/messaging/l2_to_l1_membership.ts +179 -52
  918. package/src/messaging/l2_to_l1_message.ts +5 -1
  919. package/src/messaging/out_hash.ts +63 -22
  920. package/src/note/note.ts +5 -2
  921. package/src/note/note_dao.ts +51 -15
  922. package/src/note/notes_filter.ts +4 -1
  923. package/src/p2p/attestation_utils.ts +3 -3
  924. package/src/p2p/block_proposal.ts +216 -48
  925. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +33 -26
  926. package/src/p2p/checkpoint_proposal.ts +355 -0
  927. package/src/p2p/consensus_payload.ts +6 -8
  928. package/src/p2p/constants.ts +3 -0
  929. package/src/p2p/gossipable.ts +14 -4
  930. package/src/p2p/index.ts +4 -1
  931. package/src/p2p/message_validator.ts +14 -2
  932. package/src/p2p/signature_utils.ts +5 -2
  933. package/src/p2p/signed_txs.ts +88 -0
  934. package/src/p2p/topic_type.ts +4 -3
  935. package/src/parity/parity_base_private_inputs.ts +1 -1
  936. package/src/parity/parity_public_inputs.ts +1 -1
  937. package/src/proofs/chonk_proof.ts +11 -7
  938. package/src/proofs/proof.ts +1 -1
  939. package/src/proofs/proof_data.ts +24 -0
  940. package/src/proofs/recursive_proof.ts +1 -1
  941. package/src/rollup/avm_proof_data.ts +2 -9
  942. package/src/rollup/base_rollup_hints.ts +1 -1
  943. package/src/rollup/block_constant_data.ts +1 -1
  944. package/src/rollup/block_headers_hash.ts +2 -2
  945. package/src/rollup/block_rollup_public_inputs.ts +6 -12
  946. package/src/rollup/block_root_rollup_private_inputs.ts +1 -1
  947. package/src/rollup/checkpoint_constant_data.ts +2 -1
  948. package/src/rollup/checkpoint_header.ts +69 -20
  949. package/src/rollup/checkpoint_rollup_public_inputs.ts +13 -1
  950. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +16 -2
  951. package/src/rollup/epoch_constant_data.ts +1 -1
  952. package/src/rollup/public_chonk_verifier_private_inputs.ts +1 -1
  953. package/src/rollup/public_chonk_verifier_public_inputs.ts +1 -1
  954. package/src/rollup/public_tx_base_rollup_private_inputs.ts +2 -2
  955. package/src/rollup/root_rollup_public_inputs.ts +10 -1
  956. package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
  957. package/src/rollup/tx_rollup_public_inputs.ts +1 -1
  958. package/src/schemas/schemas.ts +6 -1
  959. package/src/slashing/types.ts +24 -20
  960. package/src/snapshots/types.ts +33 -29
  961. package/src/stats/stats.ts +10 -7
  962. package/src/tests/factories.ts +129 -47
  963. package/src/tests/jest.ts +1 -1
  964. package/src/tests/mocks.ts +280 -82
  965. package/src/trees/append_only_tree_snapshot.ts +1 -1
  966. package/src/trees/database_public_state_source.ts +1 -1
  967. package/src/trees/nullifier_leaf.ts +1 -1
  968. package/src/trees/nullifier_membership_witness.ts +1 -1
  969. package/src/trees/public_data_leaf.ts +1 -1
  970. package/src/trees/public_data_witness.ts +1 -1
  971. package/src/tx/block_header.ts +26 -12
  972. package/src/tx/call_context.ts +1 -1
  973. package/src/tx/capsule.ts +1 -1
  974. package/src/tx/function_data.ts +1 -1
  975. package/src/tx/global_variable_builder.ts +9 -2
  976. package/src/tx/global_variables.ts +16 -10
  977. package/src/tx/hashed_values.ts +1 -1
  978. package/src/tx/in_tx.ts +24 -0
  979. package/src/tx/index.ts +1 -1
  980. package/src/tx/indexed_tx_effect.ts +9 -7
  981. package/src/tx/offchain_effect.ts +1 -1
  982. package/src/tx/partial_state_reference.ts +1 -1
  983. package/src/tx/private_execution_result.ts +6 -21
  984. package/src/tx/private_tx_constant_data.ts +1 -1
  985. package/src/tx/processed_tx.ts +19 -16
  986. package/src/tx/profiling.ts +47 -5
  987. package/src/tx/protocol_contracts.ts +2 -2
  988. package/src/tx/public_call_request_with_calldata.ts +1 -1
  989. package/src/tx/public_simulation_output.ts +1 -1
  990. package/src/tx/state_reference.ts +1 -1
  991. package/src/tx/tree_snapshots.ts +1 -1
  992. package/src/tx/tx.ts +20 -12
  993. package/src/tx/tx_constant_data.ts +1 -1
  994. package/src/tx/tx_context.ts +1 -1
  995. package/src/tx/tx_effect.ts +5 -12
  996. package/src/tx/tx_execution_request.ts +3 -1
  997. package/src/tx/tx_hash.ts +1 -1
  998. package/src/tx/tx_receipt.ts +78 -20
  999. package/src/tx/tx_request.ts +2 -2
  1000. package/src/tx/validator/error_texts.ts +3 -0
  1001. package/src/tx/validator/tx_validator.ts +8 -6
  1002. package/src/update-checker/update-checker.ts +2 -1
  1003. package/src/validators/errors.ts +1 -1
  1004. package/src/validators/schemas.ts +54 -48
  1005. package/src/versioning/versioning.ts +1 -1
  1006. package/src/vks/verification_key.ts +1 -1
  1007. package/src/vks/vk_data.ts +1 -1
  1008. package/src/zkpassport/index.ts +13 -14
  1009. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  1010. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  1011. package/dest/block/l2_block_code_to_purge.js +0 -61
  1012. package/dest/block/l2_block_header.d.ts +0 -98
  1013. package/dest/block/l2_block_header.d.ts.map +0 -1
  1014. package/dest/block/l2_block_header.js +0 -153
  1015. package/dest/block/l2_block_new.d.ts +0 -108
  1016. package/dest/block/l2_block_new.d.ts.map +0 -1
  1017. package/dest/block/l2_block_new.js +0 -135
  1018. package/dest/block/l2_block_number.d.ts +0 -5
  1019. package/dest/block/l2_block_number.d.ts.map +0 -1
  1020. package/dest/block/l2_block_number.js +0 -6
  1021. package/dest/block/published_l2_block.d.ts +0 -130
  1022. package/dest/block/published_l2_block.d.ts.map +0 -1
  1023. package/dest/block/published_l2_block.js +0 -48
  1024. package/dest/contract/contract_class_metadata.d.ts +0 -8
  1025. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  1026. package/dest/contract/contract_class_metadata.js +0 -1
  1027. package/dest/contract/contract_metadata.d.ts +0 -7
  1028. package/dest/contract/contract_metadata.d.ts.map +0 -1
  1029. package/dest/contract/contract_metadata.js +0 -1
  1030. package/dest/database-version/index.d.ts +0 -2
  1031. package/dest/database-version/index.d.ts.map +0 -1
  1032. package/dest/database-version/index.js +0 -1
  1033. package/dest/logs/log_with_tx_data.d.ts +0 -19
  1034. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1035. package/dest/logs/log_with_tx_data.js +0 -49
  1036. package/dest/p2p/block_attestation.d.ts +0 -80
  1037. package/dest/p2p/block_attestation.d.ts.map +0 -1
  1038. package/dest/tx/content_commitment.d.ts +0 -48
  1039. package/dest/tx/content_commitment.d.ts.map +0 -1
  1040. package/dest/tx/content_commitment.js +0 -82
  1041. package/src/block/l2_block_code_to_purge.ts +0 -88
  1042. package/src/block/l2_block_header.ts +0 -246
  1043. package/src/block/l2_block_new.ts +0 -171
  1044. package/src/block/l2_block_number.ts +0 -8
  1045. package/src/block/published_l2_block.ts +0 -65
  1046. package/src/contract/contract_class_metadata.ts +0 -8
  1047. package/src/contract/contract_metadata.ts +0 -7
  1048. package/src/database-version/index.ts +0 -1
  1049. package/src/logs/log_with_tx_data.ts +0 -46
  1050. package/src/tx/content_commitment.ts +0 -104
@@ -1,26 +1,29 @@
1
- import {
2
- ARCHIVE_HEIGHT,
3
- INITIAL_L2_BLOCK_NUM,
4
- L1_TO_L2_MSG_TREE_HEIGHT,
5
- NOTE_HASH_TREE_HEIGHT,
6
- NULLIFIER_TREE_HEIGHT,
7
- PUBLIC_DATA_TREE_HEIGHT,
8
- } from '@aztec/constants';
1
+ import { ARCHIVE_HEIGHT, L1_TO_L2_MSG_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT } from '@aztec/constants';
9
2
  import { type L1ContractAddresses, L1ContractAddressesSchema } from '@aztec/ethereum/l1-contract-addresses';
10
- import type { SlotNumber } from '@aztec/foundation/branded-types';
3
+ import {
4
+ BlockNumber,
5
+ BlockNumberPositiveSchema,
6
+ BlockNumberSchema,
7
+ CheckpointNumberPositiveSchema,
8
+ EpochNumber,
9
+ EpochNumberSchema,
10
+ type SlotNumber,
11
+ } from '@aztec/foundation/branded-types';
12
+ import type { Fr } from '@aztec/foundation/curves/bn254';
11
13
  import type { EthAddress } from '@aztec/foundation/eth-address';
12
- import type { Fr } from '@aztec/foundation/fields';
13
14
  import { createSafeJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
14
15
  import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
15
16
 
16
17
  import { z } from 'zod';
17
18
 
18
19
  import type { AztecAddress } from '../aztec-address/index.js';
19
- import { type InBlock, inBlockSchemaFor } from '../block/in_block.js';
20
+ import { BlockHash } from '../block/block_hash.js';
21
+ import { type BlockParameter, BlockParameterSchema } from '../block/block_parameter.js';
22
+ import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
23
+ import { type DataInBlock, dataInBlockSchemaFor } from '../block/in_block.js';
20
24
  import { L2Block } from '../block/l2_block.js';
21
- import { type L2BlockNumber, L2BlockNumberSchema } from '../block/l2_block_number.js';
22
25
  import { type L2BlockSource, type L2Tips, L2TipsSchema } from '../block/l2_block_source.js';
23
- import { PublishedL2Block } from '../block/published_l2_block.js';
26
+ import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
24
27
  import {
25
28
  type ContractClassPublic,
26
29
  ContractClassPublicSchema,
@@ -32,9 +35,8 @@ import {
32
35
  ProtocolContractAddressesSchema,
33
36
  } from '../contract/index.js';
34
37
  import { GasFees } from '../gas/gas_fees.js';
38
+ import { SiloedTag, Tag, TxScopedL2Log } from '../logs/index.js';
35
39
  import { type LogFilter, LogFilterSchema } from '../logs/log_filter.js';
36
- import { PrivateLog } from '../logs/private_log.js';
37
- import { TxScopedL2Log } from '../logs/tx_scoped_l2_log.js';
38
40
  import { type ApiSchemaFor, optional, schemas } from '../schemas/schemas.js';
39
41
  import { MerkleTreeId } from '../trees/merkle_tree_id.js';
40
42
  import { NullifierMembershipWitness } from '../trees/nullifier_membership_witness.js';
@@ -54,7 +56,7 @@ import { SingleValidatorStatsSchema, ValidatorsStatsSchema } from '../validators
54
56
  import type { SingleValidatorStats, ValidatorsStats } from '../validators/types.js';
55
57
  import { type ComponentsVersions, getVersioningResponseHandler } from '../versioning/index.js';
56
58
  import { type AllowedElement, AllowedElementSchema } from './allowed_element.js';
57
- import { MAX_RPC_BLOCKS_LEN, MAX_RPC_LEN, MAX_RPC_TXS_LEN } from './api_limit.js';
59
+ import { MAX_RPC_BLOCKS_LEN, MAX_RPC_CHECKPOINTS_LEN, MAX_RPC_LEN, MAX_RPC_TXS_LEN } from './api_limit.js';
58
60
  import {
59
61
  type GetContractClassLogsResponse,
60
62
  GetContractClassLogsResponseSchema,
@@ -68,7 +70,10 @@ import { type WorldStateSyncStatus, WorldStateSyncStatusSchema } from './world_s
68
70
  * We will probably implement the additional interfaces by means other than Aztec Node as it's currently a privacy leak
69
71
  */
70
72
  export interface AztecNode
71
- extends Pick<L2BlockSource, 'getBlocks' | 'getPublishedBlocks' | 'getBlockHeader' | 'getL2Tips'> {
73
+ extends Pick<
74
+ L2BlockSource,
75
+ 'getBlocks' | 'getCheckpoints' | 'getBlockHeader' | 'getL2Tips' | 'getCheckpointedBlocks'
76
+ > {
72
77
  /**
73
78
  * Returns the tips of the L2 chain.
74
79
  */
@@ -82,72 +87,28 @@ export interface AztecNode
82
87
  /**
83
88
  * Find the indexes of the given leaves in the given tree along with a block metadata pointing to the block in which
84
89
  * the leaves were inserted.
85
- * @param blockNumber - The block number at which to get the data or 'latest' for latest data.
90
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
86
91
  * @param treeId - The tree to search in.
87
92
  * @param leafValues - The values to search for.
88
93
  * @returns The indices of leaves and the block metadata of a block in which the leaves were inserted.
89
94
  */
90
95
  findLeavesIndexes(
91
- blockNumber: L2BlockNumber,
96
+ block: BlockParameter,
92
97
  treeId: MerkleTreeId,
93
98
  leafValues: Fr[],
94
- ): Promise<(InBlock<bigint> | undefined)[]>;
95
-
96
- /**
97
- * Returns a sibling path for the given index in the nullifier tree.
98
- * @param blockNumber - The block number at which to get the data.
99
- * @param leafIndex - The index of the leaf for which the sibling path is required.
100
- * @returns The sibling path for the leaf index.
101
- */
102
- getNullifierSiblingPath(
103
- blockNumber: L2BlockNumber,
104
- leafIndex: bigint,
105
- ): Promise<SiblingPath<typeof NULLIFIER_TREE_HEIGHT>>;
106
-
107
- /**
108
- * Returns a sibling path for the given index in the note hash tree.
109
- * @param blockNumber - The block number at which to get the data.
110
- * @param leafIndex - The index of the leaf for which the sibling path is required.
111
- * @returns The sibling path for the leaf index.
112
- */
113
- getNoteHashSiblingPath(
114
- blockNumber: L2BlockNumber,
115
- leafIndex: bigint,
116
- ): Promise<SiblingPath<typeof NOTE_HASH_TREE_HEIGHT>>;
117
-
118
- /**
119
- * Returns a sibling path for a leaf in the committed historic blocks tree.
120
- * @param blockNumber - The block number at which to get the data.
121
- * @param leafIndex - Index of the leaf in the tree.
122
- * @returns The sibling path.
123
- */
124
- getArchiveSiblingPath(blockNumber: L2BlockNumber, leafIndex: bigint): Promise<SiblingPath<typeof ARCHIVE_HEIGHT>>;
125
-
126
- /**
127
- * Returns a sibling path for a leaf in the committed public data tree.
128
- * @param blockNumber - The block number at which to get the data.
129
- * @param leafIndex - Index of the leaf in the tree.
130
- * @returns The sibling path.
131
- */
132
- getPublicDataSiblingPath(
133
- blockNumber: L2BlockNumber,
134
- leafIndex: bigint,
135
- ): Promise<SiblingPath<typeof PUBLIC_DATA_TREE_HEIGHT>>;
99
+ ): Promise<(DataInBlock<bigint> | undefined)[]>;
136
100
 
137
101
  /**
138
102
  * Returns a nullifier membership witness for a given nullifier at a given block.
139
- * @param blockNumber - The block number at which to get the data.
103
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
140
104
  * @param nullifier - Nullifier we try to find witness for.
141
105
  * @returns The nullifier membership witness (if found).
142
106
  */
143
- getNullifierMembershipWitness(
144
- blockNumber: L2BlockNumber,
145
- nullifier: Fr,
146
- ): Promise<NullifierMembershipWitness | undefined>;
107
+ getNullifierMembershipWitness(block: BlockParameter, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
147
108
 
148
109
  /**
149
110
  * Returns a low nullifier membership witness for a given nullifier at a given block.
150
- * @param blockNumber - The block number at which to get the data.
111
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
151
112
  * @param nullifier - Nullifier we try to find the low nullifier witness for.
152
113
  * @returns The low nullifier membership witness (if found).
153
114
  * @remarks Low nullifier witness can be used to perform a nullifier non-inclusion proof by leveraging the "linked
@@ -155,54 +116,54 @@ export interface AztecNode
155
116
  * we are trying to prove non-inclusion for.
156
117
  */
157
118
  getLowNullifierMembershipWitness(
158
- blockNumber: L2BlockNumber,
119
+ block: BlockParameter,
159
120
  nullifier: Fr,
160
121
  ): Promise<NullifierMembershipWitness | undefined>;
161
122
 
162
123
  /**
163
124
  * Returns a public data tree witness for a given leaf slot at a given block.
164
- * @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.
165
126
  * @param leafSlot - The leaf slot we try to find the witness for.
166
127
  * @returns The public data witness (if found).
167
128
  * @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
168
129
  * "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
169
130
  * is contained in the leaf preimage.
170
131
  */
171
- getPublicDataWitness(blockNumber: L2BlockNumber, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
132
+ getPublicDataWitness(block: BlockParameter, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
172
133
 
173
134
  /**
174
135
  * Returns a membership witness for a given archive leaf at a given block.
175
- * @param blockNumber - The block number at which to get the data.
136
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
176
137
  * @param archive - The archive leaf we try to find the witness for.
177
138
  */
178
139
  getArchiveMembershipWitness(
179
- blockNumber: L2BlockNumber,
140
+ block: BlockParameter,
180
141
  archive: Fr,
181
142
  ): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
182
143
 
183
144
  /**
184
145
  * Returns a membership witness for a given note hash at a given block.
185
- * @param blockNumber - The block number at which to get the data.
146
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
186
147
  * @param noteHash - The note hash we try to find the witness for.
187
148
  */
188
149
  getNoteHashMembershipWitness(
189
- blockNumber: L2BlockNumber,
150
+ block: BlockParameter,
190
151
  noteHash: Fr,
191
152
  ): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
192
153
 
193
154
  /**
194
155
  * Returns the index and a sibling path for a leaf in the committed l1 to l2 data tree.
195
- * @param blockNumber - The block number at which to get the data.
156
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
196
157
  * @param l1ToL2Message - The l1ToL2Message to get the index / sibling path for.
197
158
  * @returns A tuple of the index and the sibling path of the L1ToL2Message (undefined if not found).
198
159
  */
199
160
  getL1ToL2MessageMembershipWitness(
200
- blockNumber: L2BlockNumber,
161
+ block: BlockParameter,
201
162
  l1ToL2Message: Fr,
202
163
  ): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>] | undefined>;
203
164
 
204
165
  /** Returns the L2 block number in which this L1 to L2 message becomes available, or undefined if not found. */
205
- getL1ToL2MessageBlock(l1ToL2Message: Fr): Promise<number | undefined>;
166
+ getL1ToL2MessageBlock(l1ToL2Message: Fr): Promise<BlockNumber | undefined>;
206
167
 
207
168
  /**
208
169
  * Returns whether an L1 to L2 message is synced by archiver.
@@ -213,25 +174,26 @@ export interface AztecNode
213
174
  isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean>;
214
175
 
215
176
  /**
216
- * Returns all the L2 to L1 messages in a block.
217
- * @param blockNumber - The block number at which to get the data.
218
- * @returns The L2 to L1 messages (undefined if the block number is not found).
177
+ * Returns all the L2 to L1 messages in an epoch.
178
+ * @param epoch - The epoch at which to get the data.
179
+ * @returns A nested array of the L2 to L1 messages in each tx of each block in each checkpoint in the epoch (empty
180
+ * array if the epoch is not found).
219
181
  */
220
- getL2ToL1Messages(blockNumber: L2BlockNumber): Promise<Fr[][] | undefined>;
182
+ getL2ToL1Messages(epoch: EpochNumber): Promise<Fr[][][][]>;
221
183
 
222
184
  /**
223
- * Get a block specified by its number.
224
- * @param number - The block number being requested.
185
+ * Get a block specified by its block number or 'latest'.
186
+ * @param number - The block number or 'latest'.
225
187
  * @returns The requested block.
226
188
  */
227
- getBlock(number: L2BlockNumber): Promise<L2Block | undefined>;
189
+ getBlock(number: BlockParameter): Promise<L2Block | undefined>;
228
190
 
229
191
  /**
230
192
  * Get a block specified by its hash.
231
193
  * @param blockHash - The block hash being requested.
232
194
  * @returns The requested block.
233
195
  */
234
- getBlockByHash(blockHash: Fr): Promise<L2Block | undefined>;
196
+ getBlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
235
197
 
236
198
  /**
237
199
  * Get a block specified by its archive root.
@@ -244,13 +206,19 @@ export interface AztecNode
244
206
  * Method to fetch the latest block number synchronized by the node.
245
207
  * @returns The block number.
246
208
  */
247
- getBlockNumber(): Promise<number>;
209
+ getBlockNumber(): Promise<BlockNumber>;
248
210
 
249
211
  /**
250
212
  * Fetches the latest proven block number.
251
213
  * @returns The block number.
252
214
  */
253
- getProvenBlockNumber(): Promise<number>;
215
+ getProvenBlockNumber(): Promise<BlockNumber>;
216
+
217
+ /**
218
+ * Fetches the latest checkpointed block number.
219
+ * @returns The block number.
220
+ */
221
+ getCheckpointedBlockNumber(): Promise<BlockNumber>;
254
222
 
255
223
  /**
256
224
  * Method to determine if the node is ready to accept transactions.
@@ -271,13 +239,13 @@ export interface AztecNode
271
239
  * @param limit - The maximum number of blocks to return.
272
240
  * @returns The blocks requested.
273
241
  */
274
- getBlocks(from: number, limit: number): Promise<L2Block[]>;
242
+ getBlocks(from: BlockNumber, limit: number): Promise<L2Block[]>;
275
243
 
276
244
  /**
277
- * Method to fetch the current base fees.
278
- * @returns The current base fees.
245
+ * Method to fetch the current min fees.
246
+ * @returns The current min fees.
279
247
  */
280
- getCurrentBaseFees(): Promise<GasFees>;
248
+ getCurrentMinFees(): Promise<GasFees>;
281
249
 
282
250
  /**
283
251
  * Method to fetch the current max priority fee of txs in the mempool.
@@ -320,14 +288,6 @@ export interface AztecNode
320
288
  */
321
289
  registerContractFunctionSignatures(functionSignatures: string[]): Promise<void>;
322
290
 
323
- /**
324
- * Retrieves all private logs from up to `limit` blocks, starting from the block number `from`.
325
- * @param from - The block number from which to begin retrieving logs.
326
- * @param limit - The maximum number of blocks to retrieve logs from.
327
- * @returns An array of private logs from the specified range of blocks.
328
- */
329
- getPrivateLogs(from: number, limit: number): Promise<PrivateLog[]>;
330
-
331
291
  /**
332
292
  * Gets public logs based on the provided filter.
333
293
  * @param filter - The filter to apply to the logs.
@@ -343,14 +303,38 @@ export interface AztecNode
343
303
  getContractClassLogs(filter: LogFilter): Promise<GetContractClassLogsResponse>;
344
304
 
345
305
  /**
346
- * Gets all logs that match any of the received tags (i.e. logs with their first field equal to a tag).
347
- * @param tags - The tags to filter the logs by.
348
- * @param logsPerTag - How many logs to return per tag. Default 10 logs are returned for each tag
349
- * @returns For each received tag, an array of matching logs and metadata (e.g. tx hash) is returned. An empty
350
- * array implies no logs match that tag. There can be multiple logs for 1 tag because tag reuse can happen
351
- * --> e.g. when sending a note from multiple unsynched devices.
352
- */
353
- getLogsByTags(tags: Fr[], logsPerTag?: number): Promise<TxScopedL2Log[][]>;
306
+ * Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
307
+ * array implies no logs match that tag.
308
+ * @param tags - The tags to search for.
309
+ * @param page - The page number (0-indexed) for pagination.
310
+ * @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
311
+ * This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
312
+ * If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
313
+ * undefined behavior in the client's code.
314
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
315
+ * for a tag, the caller should fetch the next page to check for more logs.
316
+ */
317
+ getPrivateLogsByTags(tags: SiloedTag[], page?: number, referenceBlock?: BlockHash): Promise<TxScopedL2Log[][]>;
318
+
319
+ /**
320
+ * Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
321
+ * logs is returned. An empty array implies no logs match that tag.
322
+ * @param contractAddress - The contract address to search logs for.
323
+ * @param tags - The tags to search for.
324
+ * @param page - The page number (0-indexed) for pagination.
325
+ * @param referenceBlock - Optional block hash used to ensure the block still exists before logs are retrieved.
326
+ * This block is expected to represent the latest block to which the client has synced (called anchor block in PXE).
327
+ * If specified and the block is not found, an error is thrown. This helps detect reorgs, which could result in
328
+ * undefined behavior in the client's code.
329
+ * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
330
+ * for a tag, the caller should fetch the next page to check for more logs.
331
+ */
332
+ getPublicLogsByTagsFromContract(
333
+ contractAddress: AztecAddress,
334
+ tags: Tag[],
335
+ page?: number,
336
+ referenceBlock?: BlockHash,
337
+ ): Promise<TxScopedL2Log[][]>;
354
338
 
355
339
  /**
356
340
  * Method to submit a transaction to the p2p pool.
@@ -408,25 +392,19 @@ export interface AztecNode
408
392
  * @remarks The storage slot here refers to the slot as it is defined in Noir not the index in the merkle tree.
409
393
  * Aztec's version of `eth_getStorageAt`.
410
394
  *
395
+ * @param block - The block parameter (block number, block hash, or 'latest') at which to get the data.
411
396
  * @param contract - Address of the contract to query.
412
397
  * @param slot - Slot to query.
413
- * @param blockNumber - The block number at which to get the data or 'latest'.
414
398
  * @returns Storage value at the given contract slot.
415
399
  */
416
- getPublicStorageAt(blockNumber: L2BlockNumber, contract: AztecAddress, slot: Fr): Promise<Fr>;
417
-
418
- /**
419
- * Returns the currently committed block header.
420
- * @returns The current committed block header.
421
- */
422
- getBlockHeader(blockNumber?: L2BlockNumber): Promise<BlockHeader | undefined>;
400
+ getPublicStorageAt(block: BlockParameter, contract: AztecAddress, slot: Fr): Promise<Fr>;
423
401
 
424
402
  /**
425
- * Get a block header specified by its hash.
426
- * @param blockHash - The block hash being requested.
403
+ * Returns the block header for a given block number, block hash, or 'latest'.
404
+ * @param block - The block parameter (block number, block hash, or 'latest'). Defaults to 'latest'.
427
405
  * @returns The requested block header.
428
406
  */
429
- getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
407
+ getBlockHeader(block?: BlockParameter): Promise<BlockHeader | undefined>;
430
408
 
431
409
  /**
432
410
  * Get a block header specified by its archive root.
@@ -486,7 +464,6 @@ export interface AztecNode
486
464
  getAllowedPublicSetup(): Promise<AllowedElement[]>;
487
465
  }
488
466
 
489
- export const MAX_LOGS_PER_TAG = 10;
490
467
  const MAX_SIGNATURES_PER_REGISTER_CALL = 100;
491
468
  const MAX_SIGNATURE_LEN = 10000;
492
469
 
@@ -497,74 +474,59 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
497
474
 
498
475
  findLeavesIndexes: z
499
476
  .function()
500
- .args(L2BlockNumberSchema, z.nativeEnum(MerkleTreeId), z.array(schemas.Fr).max(MAX_RPC_LEN))
501
- .returns(z.array(optional(inBlockSchemaFor(schemas.BigInt)))),
502
-
503
- getNullifierSiblingPath: z
504
- .function()
505
- .args(L2BlockNumberSchema, schemas.BigInt)
506
- .returns(SiblingPath.schemaFor(NULLIFIER_TREE_HEIGHT)),
507
-
508
- getNoteHashSiblingPath: z
509
- .function()
510
- .args(L2BlockNumberSchema, schemas.BigInt)
511
- .returns(SiblingPath.schemaFor(NOTE_HASH_TREE_HEIGHT)),
512
-
513
- getArchiveSiblingPath: z
514
- .function()
515
- .args(L2BlockNumberSchema, schemas.BigInt)
516
- .returns(SiblingPath.schemaFor(ARCHIVE_HEIGHT)),
517
-
518
- getPublicDataSiblingPath: z
519
- .function()
520
- .args(L2BlockNumberSchema, schemas.BigInt)
521
- .returns(SiblingPath.schemaFor(PUBLIC_DATA_TREE_HEIGHT)),
477
+ .args(BlockParameterSchema, z.nativeEnum(MerkleTreeId), z.array(schemas.Fr).max(MAX_RPC_LEN))
478
+ .returns(z.array(optional(dataInBlockSchemaFor(schemas.BigInt)))),
522
479
 
523
480
  getNullifierMembershipWitness: z
524
481
  .function()
525
- .args(L2BlockNumberSchema, schemas.Fr)
482
+ .args(BlockParameterSchema, schemas.Fr)
526
483
  .returns(NullifierMembershipWitness.schema.optional()),
527
484
 
528
485
  getLowNullifierMembershipWitness: z
529
486
  .function()
530
- .args(L2BlockNumberSchema, schemas.Fr)
487
+ .args(BlockParameterSchema, schemas.Fr)
531
488
  .returns(NullifierMembershipWitness.schema.optional()),
532
489
 
533
- getPublicDataWitness: z.function().args(L2BlockNumberSchema, schemas.Fr).returns(PublicDataWitness.schema.optional()),
490
+ getPublicDataWitness: z
491
+ .function()
492
+ .args(BlockParameterSchema, schemas.Fr)
493
+ .returns(PublicDataWitness.schema.optional()),
534
494
 
535
495
  getArchiveMembershipWitness: z
536
496
  .function()
537
- .args(L2BlockNumberSchema, schemas.Fr)
497
+ .args(BlockParameterSchema, schemas.Fr)
538
498
  .returns(MembershipWitness.schemaFor(ARCHIVE_HEIGHT).optional()),
539
499
 
540
500
  getNoteHashMembershipWitness: z
541
501
  .function()
542
- .args(L2BlockNumberSchema, schemas.Fr)
502
+ .args(BlockParameterSchema, schemas.Fr)
543
503
  .returns(MembershipWitness.schemaFor(NOTE_HASH_TREE_HEIGHT).optional()),
544
504
 
545
505
  getL1ToL2MessageMembershipWitness: z
546
506
  .function()
547
- .args(L2BlockNumberSchema, schemas.Fr)
507
+ .args(BlockParameterSchema, schemas.Fr)
548
508
  .returns(z.tuple([schemas.BigInt, SiblingPath.schemaFor(L1_TO_L2_MSG_TREE_HEIGHT)]).optional()),
549
509
 
550
- getL1ToL2MessageBlock: z.function().args(schemas.Fr).returns(z.number().optional()),
510
+ getL1ToL2MessageBlock: z.function().args(schemas.Fr).returns(BlockNumberSchema.optional()),
551
511
 
552
512
  isL1ToL2MessageSynced: z.function().args(schemas.Fr).returns(z.boolean()),
553
513
 
554
514
  getL2ToL1Messages: z
555
515
  .function()
556
- .args(L2BlockNumberSchema)
557
- .returns(z.array(z.array(schemas.Fr)).optional()),
516
+ .args(EpochNumberSchema)
517
+ .returns(z.array(z.array(z.array(z.array(schemas.Fr))))),
558
518
 
559
- getBlock: z.function().args(L2BlockNumberSchema).returns(L2Block.schema.optional()),
519
+ getBlock: z.function().args(BlockParameterSchema).returns(L2Block.schema.optional()),
560
520
 
561
- getBlockByHash: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
521
+ getBlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
562
522
 
563
523
  getBlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
564
524
 
565
- getBlockNumber: z.function().returns(z.number()),
525
+ getBlockNumber: z.function().returns(BlockNumberSchema),
526
+
527
+ getProvenBlockNumber: z.function().returns(BlockNumberSchema),
566
528
 
567
- getProvenBlockNumber: z.function().returns(z.number()),
529
+ getCheckpointedBlockNumber: z.function().returns(BlockNumberSchema),
568
530
 
569
531
  isReady: z.function().returns(z.boolean()),
570
532
 
@@ -572,15 +534,20 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
572
534
 
573
535
  getBlocks: z
574
536
  .function()
575
- .args(z.number().gte(INITIAL_L2_BLOCK_NUM), z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
537
+ .args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
576
538
  .returns(z.array(L2Block.schema)),
577
539
 
578
- getPublishedBlocks: z
540
+ getCheckpoints: z
579
541
  .function()
580
- .args(z.number().gte(INITIAL_L2_BLOCK_NUM), z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
581
- .returns(z.array(PublishedL2Block.schema)),
542
+ .args(CheckpointNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_CHECKPOINTS_LEN))
543
+ .returns(z.array(PublishedCheckpoint.schema)),
582
544
 
583
- getCurrentBaseFees: z.function().returns(GasFees.schema),
545
+ getCheckpointedBlocks: z
546
+ .function()
547
+ .args(BlockNumberPositiveSchema, z.number().gt(0).lte(MAX_RPC_BLOCKS_LEN))
548
+ .returns(z.array(CheckpointedL2Block.schema)),
549
+
550
+ getCurrentMinFees: z.function().returns(GasFees.schema),
584
551
 
585
552
  getMaxPriorityFees: z.function().returns(GasFees.schema),
586
553
 
@@ -599,20 +566,22 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
599
566
  .args(z.array(z.string().max(MAX_SIGNATURE_LEN)).max(MAX_SIGNATURES_PER_REGISTER_CALL))
600
567
  .returns(z.void()),
601
568
 
602
- getPrivateLogs: z
603
- .function()
604
- .args(z.number().gte(INITIAL_L2_BLOCK_NUM), z.number().lte(MAX_RPC_LEN))
605
- .returns(z.array(PrivateLog.schema)),
606
-
607
569
  getPublicLogs: z.function().args(LogFilterSchema).returns(GetPublicLogsResponseSchema),
608
570
 
609
571
  getContractClassLogs: z.function().args(LogFilterSchema).returns(GetContractClassLogsResponseSchema),
610
572
 
611
- getLogsByTags: z
573
+ getPrivateLogsByTags: z
574
+ .function()
575
+ .args(z.array(SiloedTag.schema).max(MAX_RPC_LEN), optional(z.number().gte(0)), optional(BlockHash.schema))
576
+ .returns(z.array(z.array(TxScopedL2Log.schema))),
577
+
578
+ getPublicLogsByTagsFromContract: z
612
579
  .function()
613
580
  .args(
614
- z.array(schemas.Fr).max(MAX_RPC_LEN),
615
- optional(z.number().gte(1).lte(MAX_LOGS_PER_TAG).default(MAX_LOGS_PER_TAG)),
581
+ schemas.AztecAddress,
582
+ z.array(Tag.schema).max(MAX_RPC_LEN),
583
+ optional(z.number().gte(0)),
584
+ optional(BlockHash.schema),
616
585
  )
617
586
  .returns(z.array(z.array(TxScopedL2Log.schema))),
618
587
 
@@ -633,11 +602,9 @@ export const AztecNodeApiSchema: ApiSchemaFor<AztecNode> = {
633
602
 
634
603
  getTxsByHash: z.function().args(z.array(TxHash.schema).max(MAX_RPC_TXS_LEN)).returns(z.array(Tx.schema)),
635
604
 
636
- getPublicStorageAt: z.function().args(L2BlockNumberSchema, schemas.AztecAddress, schemas.Fr).returns(schemas.Fr),
637
-
638
- getBlockHeader: z.function().args(optional(L2BlockNumberSchema)).returns(BlockHeader.schema.optional()),
605
+ getPublicStorageAt: z.function().args(BlockParameterSchema, schemas.AztecAddress, schemas.Fr).returns(schemas.Fr),
639
606
 
640
- getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
607
+ getBlockHeader: z.function().args(optional(BlockParameterSchema)).returns(BlockHeader.schema.optional()),
641
608
 
642
609
  getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
643
610
 
@@ -1,16 +1,17 @@
1
- import type { Fr } from '@aztec/foundation/fields';
2
- import type { Timer } from '@aztec/foundation/timer';
1
+ import type { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
2
+ import type { Fr } from '@aztec/foundation/curves/bn254';
3
+ import type { LoggerBindings } from '@aztec/foundation/log';
3
4
 
4
5
  import type { L2Block } from '../block/l2_block.js';
5
6
  import type { ChainConfig, SequencerConfig } from '../config/chain-config.js';
6
7
  import type { L1RollupConstants } from '../epoch-helpers/index.js';
7
8
  import type { Gas } from '../gas/gas.js';
8
- import type { MerkleTreeWriteOperations } from '../trees/index.js';
9
9
  import type { BlockHeader } from '../tx/block_header.js';
10
- import type { GlobalVariables } from '../tx/global_variables.js';
10
+ import type { CheckpointGlobalVariables, GlobalVariables } from '../tx/global_variables.js';
11
11
  import type { FailedTx, ProcessedTx } from '../tx/processed_tx.js';
12
12
  import { Tx } from '../tx/tx.js';
13
13
  import type { TxValidator } from '../tx/validator/tx_validator.js';
14
+ import type { MerkleTreeWriteOperations } from './merkle_tree_operations.js';
14
15
  import type { ProcessedTxHandler } from './processed-tx-handler.js';
15
16
 
16
17
  /** The interface to a block builder. Generates an L2 block out of a set of processed txs. */
@@ -46,33 +47,60 @@ export interface PublicProcessorValidator {
46
47
  preprocessValidator?: TxValidator<Tx>;
47
48
  nullifierCache?: { addNullifiers: (nullifiers: Buffer[]) => void };
48
49
  }
49
- export interface BuildBlockResult {
50
+
51
+ export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
52
+ Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
53
+ Pick<SequencerConfig, 'txPublicSetupAllowList' | 'fakeProcessingDelayPerTxMs' | 'fakeThrowAfterProcessingTxCount'>;
54
+
55
+ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[] = [
56
+ 'l1GenesisTime',
57
+ 'slotDuration',
58
+ 'l1ChainId',
59
+ 'rollupVersion',
60
+ 'txPublicSetupAllowList',
61
+ 'fakeProcessingDelayPerTxMs',
62
+ 'fakeThrowAfterProcessingTxCount',
63
+ ] as const;
64
+
65
+ /** Thrown when no valid transactions are available to include in a block after processing, and this is not the first block in a checkpoint. */
66
+ export class NoValidTxsError extends Error {
67
+ constructor(public readonly failedTxs: FailedTx[]) {
68
+ super('No valid transactions to include in block');
69
+ this.name = 'NoValidTxsError';
70
+ }
71
+ }
72
+
73
+ /** Result of building a block within a checkpoint. */
74
+ export type BuildBlockInCheckpointResult = {
50
75
  block: L2Block;
51
76
  publicGas: Gas;
52
77
  publicProcessorDuration: number;
53
- numMsgs: number;
54
78
  numTxs: number;
55
79
  failedTxs: FailedTx[];
56
- blockBuildingTimer: Timer;
57
80
  usedTxs: Tx[];
58
- }
81
+ usedTxBlobFields: number;
82
+ };
59
83
 
60
- export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
61
- Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
62
- Pick<SequencerConfig, 'txPublicSetupAllowList' | 'fakeProcessingDelayPerTxMs'>;
63
-
64
- export interface IFullNodeBlockBuilder {
65
- getConfig(): FullNodeBlockBuilderConfig;
84
+ /** Interface for building blocks within a checkpoint context. */
85
+ export interface ICheckpointBlockBuilder {
86
+ buildBlock(
87
+ pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
88
+ blockNumber: BlockNumber,
89
+ timestamp: bigint,
90
+ opts: PublicProcessorLimits,
91
+ ): Promise<BuildBlockInCheckpointResult>;
92
+ }
66
93
 
67
- updateConfig(config: Partial<FullNodeBlockBuilderConfig>): void;
94
+ /** Interface for creating checkpoint builders. */
95
+ export interface ICheckpointsBuilder {
96
+ getFork(blockNumber: BlockNumber): Promise<MerkleTreeWriteOperations>;
68
97
 
69
- buildBlock(
70
- txs: Iterable<Tx> | AsyncIterable<Tx>,
98
+ startCheckpoint(
99
+ checkpointNumber: CheckpointNumber,
100
+ constants: CheckpointGlobalVariables,
71
101
  l1ToL2Messages: Fr[],
72
- globalVariables: GlobalVariables,
73
- options: PublicProcessorLimits,
74
- fork?: MerkleTreeWriteOperations,
75
- ): Promise<BuildBlockResult>;
76
-
77
- getFork(blockNumber: number): Promise<MerkleTreeWriteOperations>;
102
+ previousCheckpointOutHashes: Fr[],
103
+ fork: MerkleTreeWriteOperations,
104
+ bindings?: LoggerBindings,
105
+ ): Promise<ICheckpointBlockBuilder>;
78
106
  }