@aztec/stdlib 0.0.1-commit.9b94fc1 → 0.0.1-commit.c7c42ec

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 (887) 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/decoder.d.ts +2 -2
  11. package/dest/abi/decoder.d.ts.map +1 -1
  12. package/dest/abi/encoder.d.ts +2 -2
  13. package/dest/abi/encoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.js +1 -1
  15. package/dest/abi/event_selector.d.ts +2 -2
  16. package/dest/abi/event_selector.d.ts.map +1 -1
  17. package/dest/abi/event_selector.js +2 -1
  18. package/dest/abi/function_call.d.ts +2 -2
  19. package/dest/abi/function_call.d.ts.map +1 -1
  20. package/dest/abi/function_selector.d.ts +3 -2
  21. package/dest/abi/function_selector.d.ts.map +1 -1
  22. package/dest/abi/function_selector.js +9 -1
  23. package/dest/abi/note_selector.d.ts +2 -2
  24. package/dest/abi/note_selector.d.ts.map +1 -1
  25. package/dest/abi/note_selector.js +2 -2
  26. package/dest/abi/selector.d.ts +2 -2
  27. package/dest/abi/selector.d.ts.map +1 -1
  28. package/dest/abi/selector.js +1 -1
  29. package/dest/auth_witness/auth_witness.d.ts +2 -2
  30. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  31. package/dest/auth_witness/auth_witness.js +2 -2
  32. package/dest/avm/avm.d.ts +564 -352
  33. package/dest/avm/avm.d.ts.map +1 -1
  34. package/dest/avm/avm.js +238 -22
  35. package/dest/avm/avm_accumulated_data.d.ts +2 -2
  36. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  37. package/dest/avm/avm_accumulated_data.js +1 -1
  38. package/dest/avm/avm_circuit_public_inputs.d.ts +6 -4
  39. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  40. package/dest/avm/avm_circuit_public_inputs.js +1 -1
  41. package/dest/avm/avm_proving_request.d.ts +263 -259
  42. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  43. package/dest/avm/contract_storage_read.d.ts +2 -2
  44. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  45. package/dest/avm/contract_storage_read.js +1 -1
  46. package/dest/avm/contract_storage_update_request.d.ts +2 -2
  47. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  48. package/dest/avm/contract_storage_update_request.js +1 -1
  49. package/dest/avm/message_pack.d.ts +1 -1
  50. package/dest/avm/message_pack.d.ts.map +1 -1
  51. package/dest/avm/message_pack.js +2 -1
  52. package/dest/avm/public_call_stack_item_compressed.d.ts +2 -2
  53. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  54. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  55. package/dest/avm/public_data_read.d.ts +2 -2
  56. package/dest/avm/public_data_read.d.ts.map +1 -1
  57. package/dest/avm/public_data_read.js +1 -1
  58. package/dest/avm/public_data_update_request.d.ts +2 -2
  59. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  60. package/dest/avm/public_data_update_request.js +1 -1
  61. package/dest/avm/public_data_write.d.ts +2 -2
  62. package/dest/avm/public_data_write.d.ts.map +1 -1
  63. package/dest/avm/public_data_write.js +1 -1
  64. package/dest/avm/public_inner_call_request.d.ts +2 -2
  65. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  66. package/dest/avm/revert_code.d.ts +2 -2
  67. package/dest/avm/revert_code.d.ts.map +1 -1
  68. package/dest/avm/revert_code.js +1 -1
  69. package/dest/aztec-address/index.d.ts +3 -2
  70. package/dest/aztec-address/index.d.ts.map +1 -1
  71. package/dest/aztec-address/index.js +2 -1
  72. package/dest/block/attestation_info.js +1 -1
  73. package/dest/block/block_hash.d.ts +2 -2
  74. package/dest/block/block_hash.d.ts.map +1 -1
  75. package/dest/block/block_hash.js +1 -1
  76. package/dest/block/block_parameter.d.ts +5 -0
  77. package/dest/block/block_parameter.d.ts.map +1 -0
  78. package/dest/block/block_parameter.js +6 -0
  79. package/dest/block/checkpointed_l2_block.d.ts +267 -0
  80. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  81. package/dest/block/{published_l2_block.js → checkpointed_l2_block.js} +40 -4
  82. package/dest/block/in_block.d.ts +31 -12
  83. package/dest/block/in_block.d.ts.map +1 -1
  84. package/dest/block/in_block.js +17 -8
  85. package/dest/block/index.d.ts +3 -3
  86. package/dest/block/index.d.ts.map +1 -1
  87. package/dest/block/index.js +2 -2
  88. package/dest/block/l2_block.d.ts +8 -8
  89. package/dest/block/l2_block.d.ts.map +1 -1
  90. package/dest/block/l2_block.js +10 -7
  91. package/dest/block/l2_block_code_to_purge.d.ts +2 -2
  92. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  93. package/dest/block/l2_block_code_to_purge.js +4 -4
  94. package/dest/block/l2_block_header.d.ts +4 -4
  95. package/dest/block/l2_block_header.d.ts.map +1 -1
  96. package/dest/block/l2_block_header.js +1 -1
  97. package/dest/block/l2_block_info.d.ts +16 -11
  98. package/dest/block/l2_block_info.d.ts.map +1 -1
  99. package/dest/block/l2_block_info.js +8 -7
  100. package/dest/block/l2_block_new.d.ts +36 -9
  101. package/dest/block/l2_block_new.d.ts.map +1 -1
  102. package/dest/block/l2_block_new.js +37 -20
  103. package/dest/block/l2_block_source.d.ts +114 -124
  104. package/dest/block/l2_block_source.d.ts.map +1 -1
  105. package/dest/block/l2_block_source.js +5 -11
  106. package/dest/block/l2_block_stream/interfaces.d.ts +2 -2
  107. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  108. package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -1
  109. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  110. package/dest/block/l2_block_stream/l2_block_stream.js +13 -4
  111. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -2
  112. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  113. package/dest/block/l2_block_stream/l2_tips_memory_store.js +4 -2
  114. package/dest/block/proposal/attestations_and_signers.d.ts +2 -2
  115. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  116. package/dest/block/proposal/committee_attestation.d.ts +2 -2
  117. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  118. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  119. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  120. package/dest/block/test/l2_tips_store_test_suite.js +9 -10
  121. package/dest/checkpoint/checkpoint.d.ts +44 -12
  122. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  123. package/dest/checkpoint/checkpoint.js +46 -8
  124. package/dest/checkpoint/checkpoint_info.d.ts +9 -0
  125. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  126. package/dest/checkpoint/checkpoint_info.js +1 -0
  127. package/dest/checkpoint/published_checkpoint.d.ts +36 -10
  128. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  129. package/dest/checkpoint/published_checkpoint.js +12 -2
  130. package/dest/contract/artifact_hash.d.ts +2 -2
  131. package/dest/contract/artifact_hash.d.ts.map +1 -1
  132. package/dest/contract/artifact_hash.js +2 -2
  133. package/dest/contract/complete_address.d.ts +2 -2
  134. package/dest/contract/complete_address.d.ts.map +1 -1
  135. package/dest/contract/complete_address.js +1 -1
  136. package/dest/contract/contract_address.d.ts +2 -2
  137. package/dest/contract/contract_address.d.ts.map +1 -1
  138. package/dest/contract/contract_address.js +2 -2
  139. package/dest/contract/contract_class.d.ts +2 -2
  140. package/dest/contract/contract_class.d.ts.map +1 -1
  141. package/dest/contract/contract_class.js +1 -1
  142. package/dest/contract/contract_class_id.d.ts +2 -2
  143. package/dest/contract/contract_class_id.d.ts.map +1 -1
  144. package/dest/contract/contract_class_id.js +3 -3
  145. package/dest/contract/contract_deployment_data.d.ts +4 -4
  146. package/dest/contract/contract_instance.d.ts +2 -2
  147. package/dest/contract/contract_instance.d.ts.map +1 -1
  148. package/dest/contract/contract_instance.js +1 -1
  149. package/dest/contract/contract_instance_update.d.ts +2 -2
  150. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  151. package/dest/contract/contract_instance_update.js +1 -1
  152. package/dest/contract/deployment_info.d.ts +2 -2
  153. package/dest/contract/deployment_info.d.ts.map +1 -1
  154. package/dest/contract/interfaces/contract_class.d.ts +19 -14
  155. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  156. package/dest/contract/interfaces/contract_class.js +35 -18
  157. package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
  158. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  159. package/dest/contract/interfaces/contract_instance.d.ts +40 -31
  160. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  161. package/dest/contract/interfaces/contract_instance.js +30 -5
  162. package/dest/contract/interfaces/contract_instance_update.d.ts +7 -8
  163. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  164. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  165. package/dest/contract/partial_address.d.ts +2 -2
  166. package/dest/contract/partial_address.d.ts.map +1 -1
  167. package/dest/contract/private_function.d.ts +2 -2
  168. package/dest/contract/private_function.d.ts.map +1 -1
  169. package/dest/contract/private_function.js +3 -2
  170. package/dest/contract/private_function_membership_proof.js +2 -2
  171. package/dest/contract/utility_function_membership_proof.js +1 -1
  172. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  173. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  174. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +2 -2
  175. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  176. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  177. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  178. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  179. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  180. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  181. package/dest/epoch-helpers/index.d.ts +1 -1
  182. package/dest/epoch-helpers/index.d.ts.map +1 -1
  183. package/dest/epoch-helpers/index.js +3 -3
  184. package/dest/errors/simulation_error.d.ts +2 -2
  185. package/dest/errors/simulation_error.d.ts.map +1 -1
  186. package/dest/fees/transaction_fee.d.ts +2 -2
  187. package/dest/fees/transaction_fee.d.ts.map +1 -1
  188. package/dest/gas/gas.d.ts +2 -2
  189. package/dest/gas/gas.d.ts.map +1 -1
  190. package/dest/gas/gas.js +1 -1
  191. package/dest/gas/gas_fees.d.ts +2 -2
  192. package/dest/gas/gas_fees.d.ts.map +1 -1
  193. package/dest/gas/gas_settings.d.ts +2 -2
  194. package/dest/gas/gas_settings.d.ts.map +1 -1
  195. package/dest/gas/gas_settings.js +1 -1
  196. package/dest/hash/hash.d.ts +2 -10
  197. package/dest/hash/hash.d.ts.map +1 -1
  198. package/dest/hash/hash.js +3 -14
  199. package/dest/hash/map_slot.d.ts +2 -2
  200. package/dest/hash/map_slot.d.ts.map +1 -1
  201. package/dest/hash/map_slot.js +1 -1
  202. package/dest/interfaces/allowed_element.d.ts +8 -9
  203. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  204. package/dest/interfaces/allowed_element.js +3 -3
  205. package/dest/interfaces/archiver.d.ts +7 -2
  206. package/dest/interfaces/archiver.d.ts.map +1 -1
  207. package/dest/interfaces/archiver.js +22 -13
  208. package/dest/interfaces/aztec-node-admin.d.ts +36 -17
  209. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  210. package/dest/interfaces/aztec-node-admin.js +1 -1
  211. package/dest/interfaces/aztec-node.d.ts +38 -41
  212. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  213. package/dest/interfaces/aztec-node.js +29 -29
  214. package/dest/interfaces/block-builder.d.ts +6 -4
  215. package/dest/interfaces/block-builder.d.ts.map +1 -1
  216. package/dest/interfaces/block-builder.js +9 -1
  217. package/dest/interfaces/configs.d.ts +51 -27
  218. package/dest/interfaces/configs.d.ts.map +1 -1
  219. package/dest/interfaces/configs.js +11 -6
  220. package/dest/interfaces/epoch-prover.d.ts +5 -5
  221. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  222. package/dest/interfaces/get_logs_response.d.ts +23 -6
  223. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  224. package/dest/interfaces/get_logs_response.js +5 -4
  225. package/dest/interfaces/l2_logs_source.d.ts +12 -15
  226. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  227. package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
  228. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  229. package/dest/interfaces/prover-client.d.ts +5 -3
  230. package/dest/interfaces/prover-client.d.ts.map +1 -1
  231. package/dest/interfaces/prover-client.js +5 -4
  232. package/dest/interfaces/proving-job.d.ts +11 -7
  233. package/dest/interfaces/proving-job.d.ts.map +1 -1
  234. package/dest/interfaces/public_state_source.d.ts +2 -2
  235. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  236. package/dest/interfaces/server_circuit_prover.d.ts +2 -2
  237. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  238. package/dest/interfaces/slasher.d.ts +1 -1
  239. package/dest/interfaces/slasher.d.ts.map +1 -1
  240. package/dest/interfaces/slasher.js +3 -3
  241. package/dest/interfaces/tx_provider.d.ts +3 -3
  242. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  243. package/dest/interfaces/validator.d.ts +8 -9
  244. package/dest/interfaces/validator.d.ts.map +1 -1
  245. package/dest/interfaces/validator.js +5 -5
  246. package/dest/interfaces/world_state.d.ts +23 -31
  247. package/dest/interfaces/world_state.d.ts.map +1 -1
  248. package/dest/interfaces/world_state.js +4 -3
  249. package/dest/kernel/claimed_length_array.d.ts +2 -2
  250. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  251. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +2 -2
  252. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  253. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  254. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  255. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
  256. package/dest/kernel/hints/key_validation_hint.d.ts +2 -2
  257. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  258. package/dest/kernel/hints/key_validation_hint.js +1 -1
  259. package/dest/kernel/hints/key_validation_request.d.ts +4 -3
  260. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  261. package/dest/kernel/hints/key_validation_request.js +2 -1
  262. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +2 -2
  263. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  264. package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
  265. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  266. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  267. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  268. package/dest/kernel/hints/read_request.d.ts +2 -2
  269. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  270. package/dest/kernel/hints/read_request.js +1 -1
  271. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +2 -2
  272. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  273. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  274. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  275. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  276. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  277. package/dest/kernel/hints/transient_data_squashing_hint.js +1 -1
  278. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
  279. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  280. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  281. package/dest/kernel/log_hash.d.ts +2 -2
  282. package/dest/kernel/log_hash.d.ts.map +1 -1
  283. package/dest/kernel/log_hash.js +1 -1
  284. package/dest/kernel/note_hash.d.ts +2 -2
  285. package/dest/kernel/note_hash.d.ts.map +1 -1
  286. package/dest/kernel/note_hash.js +1 -1
  287. package/dest/kernel/nullifier.d.ts +2 -2
  288. package/dest/kernel/nullifier.d.ts.map +1 -1
  289. package/dest/kernel/nullifier.js +1 -1
  290. package/dest/kernel/padded_side_effects.d.ts +2 -2
  291. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  292. package/dest/kernel/padded_side_effects.js +1 -1
  293. package/dest/kernel/private_call_data.d.ts +2 -2
  294. package/dest/kernel/private_call_data.d.ts.map +1 -1
  295. package/dest/kernel/private_call_data.js +1 -1
  296. package/dest/kernel/private_call_request.d.ts +2 -2
  297. package/dest/kernel/private_call_request.d.ts.map +1 -1
  298. package/dest/kernel/private_call_request.js +1 -1
  299. package/dest/kernel/private_circuit_public_inputs.d.ts +48 -48
  300. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  301. package/dest/kernel/private_circuit_public_inputs.js +60 -60
  302. package/dest/kernel/private_context_inputs.d.ts +2 -2
  303. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  304. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  305. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  306. package/dest/kernel/private_kernel_circuit_public_inputs.js +1 -1
  307. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +2 -2
  308. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  309. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +1 -1
  310. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -2
  311. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  312. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +1 -1
  313. package/dest/kernel/private_log_data.d.ts +2 -2
  314. package/dest/kernel/private_log_data.d.ts.map +1 -1
  315. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  316. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  317. package/dest/kernel/private_to_avm_accumulated_data.js +1 -1
  318. package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -2
  319. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  320. package/dest/kernel/private_to_public_accumulated_data.js +1 -1
  321. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  322. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  323. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  324. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -2
  325. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  326. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +1 -1
  327. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +2 -2
  328. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  329. package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
  330. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +2 -2
  331. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  332. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +1 -1
  333. package/dest/kernel/public_call_request.d.ts +2 -2
  334. package/dest/kernel/public_call_request.d.ts.map +1 -1
  335. package/dest/kernel/public_call_request.js +1 -1
  336. package/dest/kernel/utils/optional_number.d.ts +2 -2
  337. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  338. package/dest/keys/derivation.d.ts +4 -3
  339. package/dest/keys/derivation.d.ts.map +1 -1
  340. package/dest/keys/derivation.js +5 -2
  341. package/dest/keys/public_key.d.ts +2 -2
  342. package/dest/keys/public_key.d.ts.map +1 -1
  343. package/dest/keys/public_keys.d.ts +3 -2
  344. package/dest/keys/public_keys.d.ts.map +1 -1
  345. package/dest/keys/public_keys.js +3 -2
  346. package/dest/l1-contracts/slash_factory.d.ts +3 -2
  347. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  348. package/dest/l1-contracts/slash_factory.js +1 -1
  349. package/dest/logs/contract_class_log.d.ts +2 -2
  350. package/dest/logs/contract_class_log.d.ts.map +1 -1
  351. package/dest/logs/contract_class_log.js +2 -2
  352. package/dest/logs/debug_log.d.ts +2 -2
  353. package/dest/logs/debug_log.d.ts.map +1 -1
  354. package/dest/logs/debug_log.js +1 -1
  355. package/dest/logs/directional_app_tagging_secret.d.ts +2 -2
  356. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  357. package/dest/logs/directional_app_tagging_secret.js +3 -2
  358. package/dest/logs/extended_public_log.d.ts +11 -3
  359. package/dest/logs/extended_public_log.d.ts.map +1 -1
  360. package/dest/logs/index.d.ts +3 -2
  361. package/dest/logs/index.d.ts.map +1 -1
  362. package/dest/logs/index.js +2 -1
  363. package/dest/logs/log_id.d.ts +16 -5
  364. package/dest/logs/log_id.d.ts.map +1 -1
  365. package/dest/logs/log_id.js +19 -11
  366. package/dest/logs/message_context.d.ts +2 -2
  367. package/dest/logs/message_context.d.ts.map +1 -1
  368. package/dest/logs/message_context.js +1 -1
  369. package/dest/logs/pending_tagged_log.d.ts +2 -2
  370. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  371. package/dest/logs/pending_tagged_log.js +1 -1
  372. package/dest/logs/private_log.d.ts +2 -2
  373. package/dest/logs/private_log.d.ts.map +1 -1
  374. package/dest/logs/private_log.js +3 -2
  375. package/dest/logs/public_log.d.ts +3 -2
  376. package/dest/logs/public_log.d.ts.map +1 -1
  377. package/dest/logs/public_log.js +4 -1
  378. package/dest/logs/shared_secret_derivation.d.ts +2 -2
  379. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  380. package/dest/logs/shared_secret_derivation.js +1 -1
  381. package/dest/logs/siloed_tag.d.ts +23 -0
  382. package/dest/logs/siloed_tag.d.ts.map +1 -0
  383. package/dest/logs/siloed_tag.js +30 -0
  384. package/dest/logs/tag.d.ts +21 -0
  385. package/dest/logs/tag.d.ts.map +1 -0
  386. package/dest/logs/tag.js +30 -0
  387. package/dest/logs/tx_scoped_l2_log.d.ts +32 -38
  388. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  389. package/dest/logs/tx_scoped_l2_log.js +40 -45
  390. package/dest/messaging/in_hash.d.ts +2 -2
  391. package/dest/messaging/in_hash.d.ts.map +1 -1
  392. package/dest/messaging/in_hash.js +1 -1
  393. package/dest/messaging/inbox_leaf.d.ts +8 -7
  394. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  395. package/dest/messaging/inbox_leaf.js +10 -9
  396. package/dest/messaging/l1_actor.d.ts +2 -2
  397. package/dest/messaging/l1_actor.d.ts.map +1 -1
  398. package/dest/messaging/l1_actor.js +2 -2
  399. package/dest/messaging/l1_to_l2_message.d.ts +2 -2
  400. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  401. package/dest/messaging/l1_to_l2_message.js +2 -2
  402. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
  403. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  404. package/dest/messaging/l2_actor.d.ts +2 -2
  405. package/dest/messaging/l2_actor.d.ts.map +1 -1
  406. package/dest/messaging/l2_actor.js +2 -2
  407. package/dest/messaging/l2_to_l1_membership.d.ts +5 -4
  408. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  409. package/dest/messaging/l2_to_l1_membership.js +1 -1
  410. package/dest/messaging/l2_to_l1_message.d.ts +3 -2
  411. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  412. package/dest/messaging/l2_to_l1_message.js +4 -1
  413. package/dest/messaging/out_hash.d.ts +2 -2
  414. package/dest/messaging/out_hash.d.ts.map +1 -1
  415. package/dest/messaging/out_hash.js +1 -1
  416. package/dest/note/note.d.ts +2 -2
  417. package/dest/note/note.d.ts.map +1 -1
  418. package/dest/note/note.js +5 -2
  419. package/dest/note/note_dao.d.ts +14 -6
  420. package/dest/note/note_dao.d.ts.map +1 -1
  421. package/dest/note/note_dao.js +19 -8
  422. package/dest/note/notes_filter.d.ts +4 -2
  423. package/dest/note/notes_filter.d.ts.map +1 -1
  424. package/dest/note/notes_filter.js +1 -0
  425. package/dest/p2p/block_attestation.d.ts +2 -2
  426. package/dest/p2p/block_attestation.d.ts.map +1 -1
  427. package/dest/p2p/block_attestation.js +2 -1
  428. package/dest/p2p/block_proposal.d.ts +2 -2
  429. package/dest/p2p/block_proposal.d.ts.map +1 -1
  430. package/dest/p2p/block_proposal.js +2 -1
  431. package/dest/p2p/consensus_payload.d.ts +2 -2
  432. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  433. package/dest/p2p/consensus_payload.js +1 -1
  434. package/dest/p2p/signature_utils.d.ts +1 -1
  435. package/dest/p2p/signature_utils.d.ts.map +1 -1
  436. package/dest/p2p/signature_utils.js +2 -1
  437. package/dest/parity/parity_base_private_inputs.d.ts +2 -2
  438. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  439. package/dest/parity/parity_base_private_inputs.js +1 -1
  440. package/dest/parity/parity_public_inputs.d.ts +2 -2
  441. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  442. package/dest/parity/parity_public_inputs.js +1 -1
  443. package/dest/proofs/chonk_proof.d.ts +2 -2
  444. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  445. package/dest/proofs/chonk_proof.js +2 -2
  446. package/dest/proofs/proof.d.ts +2 -2
  447. package/dest/proofs/proof.d.ts.map +1 -1
  448. package/dest/proofs/proof.js +1 -1
  449. package/dest/proofs/proof_data.d.ts +13 -1
  450. package/dest/proofs/proof_data.d.ts.map +1 -1
  451. package/dest/proofs/proof_data.js +17 -0
  452. package/dest/proofs/recursive_proof.d.ts +2 -2
  453. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  454. package/dest/proofs/recursive_proof.js +1 -1
  455. package/dest/rollup/avm_proof_data.d.ts +3 -5
  456. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  457. package/dest/rollup/avm_proof_data.js +1 -9
  458. package/dest/rollup/base_rollup_hints.d.ts +2 -2
  459. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  460. package/dest/rollup/base_rollup_hints.js +1 -1
  461. package/dest/rollup/block_constant_data.d.ts +2 -2
  462. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  463. package/dest/rollup/block_constant_data.js +1 -1
  464. package/dest/rollup/block_headers_hash.d.ts +2 -2
  465. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  466. package/dest/rollup/block_headers_hash.js +1 -1
  467. package/dest/rollup/block_rollup_public_inputs.d.ts +2 -2
  468. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  469. package/dest/rollup/block_rollup_public_inputs.js +1 -1
  470. package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -2
  471. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  472. package/dest/rollup/block_root_rollup_private_inputs.js +1 -1
  473. package/dest/rollup/checkpoint_constant_data.d.ts +3 -2
  474. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  475. package/dest/rollup/checkpoint_constant_data.js +2 -1
  476. package/dest/rollup/checkpoint_header.d.ts +8 -4
  477. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  478. package/dest/rollup/checkpoint_header.js +7 -4
  479. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +2 -2
  480. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  481. package/dest/rollup/checkpoint_rollup_public_inputs.js +1 -1
  482. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +3 -2
  483. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  484. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +2 -1
  485. package/dest/rollup/epoch_constant_data.d.ts +2 -2
  486. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  487. package/dest/rollup/epoch_constant_data.js +1 -1
  488. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  489. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  490. package/dest/rollup/public_chonk_verifier_private_inputs.js +1 -1
  491. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  492. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  493. package/dest/rollup/public_chonk_verifier_public_inputs.js +1 -1
  494. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  495. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  496. package/dest/rollup/public_tx_base_rollup_private_inputs.js +2 -2
  497. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  498. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  499. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  500. package/dest/rollup/tree_snapshot_diff_hints.d.ts +2 -2
  501. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  502. package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
  503. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  504. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  505. package/dest/rollup/tx_rollup_public_inputs.js +1 -1
  506. package/dest/schemas/schemas.d.ts +6 -3
  507. package/dest/schemas/schemas.d.ts.map +1 -1
  508. package/dest/schemas/schemas.js +2 -1
  509. package/dest/slashing/types.d.ts +4 -5
  510. package/dest/slashing/types.d.ts.map +1 -1
  511. package/dest/slashing/types.js +5 -5
  512. package/dest/snapshots/types.d.ts +1 -1
  513. package/dest/snapshots/types.d.ts.map +1 -1
  514. package/dest/snapshots/types.js +5 -5
  515. package/dest/stats/stats.d.ts +10 -6
  516. package/dest/stats/stats.d.ts.map +1 -1
  517. package/dest/tests/factories.d.ts +27 -3
  518. package/dest/tests/factories.d.ts.map +1 -1
  519. package/dest/tests/factories.js +43 -11
  520. package/dest/tests/mocks.d.ts +19 -6
  521. package/dest/tests/mocks.d.ts.map +1 -1
  522. package/dest/tests/mocks.js +66 -7
  523. package/dest/trees/append_only_tree_snapshot.d.ts +2 -2
  524. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  525. package/dest/trees/append_only_tree_snapshot.js +1 -1
  526. package/dest/trees/database_public_state_source.d.ts +2 -2
  527. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  528. package/dest/trees/database_public_state_source.js +1 -1
  529. package/dest/trees/nullifier_leaf.d.ts +2 -2
  530. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  531. package/dest/trees/nullifier_leaf.js +1 -1
  532. package/dest/trees/nullifier_membership_witness.d.ts +2 -2
  533. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  534. package/dest/trees/nullifier_membership_witness.js +1 -1
  535. package/dest/trees/public_data_leaf.d.ts +2 -2
  536. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  537. package/dest/trees/public_data_leaf.js +1 -1
  538. package/dest/trees/public_data_witness.d.ts +2 -2
  539. package/dest/trees/public_data_witness.d.ts.map +1 -1
  540. package/dest/trees/public_data_witness.js +1 -1
  541. package/dest/tx/block_header.d.ts +12 -11
  542. package/dest/tx/block_header.d.ts.map +1 -1
  543. package/dest/tx/block_header.js +8 -3
  544. package/dest/tx/call_context.d.ts +2 -2
  545. package/dest/tx/call_context.d.ts.map +1 -1
  546. package/dest/tx/capsule.d.ts +2 -2
  547. package/dest/tx/capsule.d.ts.map +1 -1
  548. package/dest/tx/capsule.js +1 -1
  549. package/dest/tx/content_commitment.d.ts +5 -4
  550. package/dest/tx/content_commitment.d.ts.map +1 -1
  551. package/dest/tx/content_commitment.js +11 -3
  552. package/dest/tx/function_data.d.ts +2 -2
  553. package/dest/tx/function_data.d.ts.map +1 -1
  554. package/dest/tx/function_data.js +1 -1
  555. package/dest/tx/global_variable_builder.d.ts +4 -2
  556. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  557. package/dest/tx/global_variables.d.ts +19 -12
  558. package/dest/tx/global_variables.d.ts.map +1 -1
  559. package/dest/tx/global_variables.js +8 -8
  560. package/dest/tx/hashed_values.d.ts +2 -2
  561. package/dest/tx/hashed_values.d.ts.map +1 -1
  562. package/dest/tx/hashed_values.js +1 -1
  563. package/dest/tx/in_tx.d.ts +26 -0
  564. package/dest/tx/in_tx.d.ts.map +1 -0
  565. package/dest/tx/in_tx.js +14 -0
  566. package/dest/tx/index.d.ts +2 -1
  567. package/dest/tx/index.d.ts.map +1 -1
  568. package/dest/tx/index.js +1 -0
  569. package/dest/tx/indexed_tx_effect.d.ts +12 -8
  570. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  571. package/dest/tx/indexed_tx_effect.js +5 -4
  572. package/dest/tx/offchain_effect.d.ts +2 -2
  573. package/dest/tx/offchain_effect.d.ts.map +1 -1
  574. package/dest/tx/offchain_effect.js +1 -1
  575. package/dest/tx/partial_state_reference.d.ts +2 -2
  576. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  577. package/dest/tx/private_execution_result.d.ts +5 -5
  578. package/dest/tx/private_execution_result.d.ts.map +1 -1
  579. package/dest/tx/private_execution_result.js +3 -3
  580. package/dest/tx/private_tx_constant_data.d.ts +2 -2
  581. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  582. package/dest/tx/private_tx_constant_data.js +1 -1
  583. package/dest/tx/processed_tx.d.ts +5 -4
  584. package/dest/tx/processed_tx.d.ts.map +1 -1
  585. package/dest/tx/processed_tx.js +8 -7
  586. package/dest/tx/profiling.d.ts +2 -2
  587. package/dest/tx/profiling.d.ts.map +1 -1
  588. package/dest/tx/profiling.js +1 -1
  589. package/dest/tx/protocol_contracts.d.ts +2 -2
  590. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  591. package/dest/tx/protocol_contracts.js +1 -1
  592. package/dest/tx/public_call_request_with_calldata.d.ts +2 -2
  593. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  594. package/dest/tx/public_call_request_with_calldata.js +1 -1
  595. package/dest/tx/public_simulation_output.d.ts +2 -2
  596. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  597. package/dest/tx/public_simulation_output.js +1 -1
  598. package/dest/tx/simulated_tx.d.ts +1031 -7
  599. package/dest/tx/simulated_tx.d.ts.map +1 -1
  600. package/dest/tx/state_reference.d.ts +2 -2
  601. package/dest/tx/state_reference.d.ts.map +1 -1
  602. package/dest/tx/tree_snapshots.d.ts +2 -2
  603. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  604. package/dest/tx/tx.d.ts +12 -5
  605. package/dest/tx/tx.d.ts.map +1 -1
  606. package/dest/tx/tx.js +11 -3
  607. package/dest/tx/tx_constant_data.d.ts +2 -2
  608. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  609. package/dest/tx/tx_constant_data.js +1 -1
  610. package/dest/tx/tx_context.d.ts +2 -2
  611. package/dest/tx/tx_context.d.ts.map +1 -1
  612. package/dest/tx/tx_context.js +1 -1
  613. package/dest/tx/tx_effect.d.ts +2 -2
  614. package/dest/tx/tx_effect.d.ts.map +1 -1
  615. package/dest/tx/tx_effect.js +5 -3
  616. package/dest/tx/tx_execution_request.d.ts +2 -2
  617. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  618. package/dest/tx/tx_execution_request.js +1 -1
  619. package/dest/tx/tx_hash.d.ts +2 -2
  620. package/dest/tx/tx_hash.d.ts.map +1 -1
  621. package/dest/tx/tx_hash.js +1 -1
  622. package/dest/tx/tx_receipt.d.ts +4 -3
  623. package/dest/tx/tx_receipt.d.ts.map +1 -1
  624. package/dest/tx/tx_receipt.js +2 -1
  625. package/dest/tx/tx_request.d.ts +2 -2
  626. package/dest/tx/tx_request.d.ts.map +1 -1
  627. package/dest/tx/tx_request.js +2 -2
  628. package/dest/tx/validator/tx_validator.d.ts +1 -4
  629. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  630. package/dest/tx/validator/tx_validator.js +4 -4
  631. package/dest/update-checker/update-checker.d.ts +2 -2
  632. package/dest/update-checker/update-checker.d.ts.map +1 -1
  633. package/dest/update-checker/update-checker.js +1 -1
  634. package/dest/validators/errors.d.ts +2 -2
  635. package/dest/validators/errors.d.ts.map +1 -1
  636. package/dest/validators/schemas.d.ts +1 -1
  637. package/dest/validators/schemas.d.ts.map +1 -1
  638. package/dest/validators/schemas.js +13 -13
  639. package/dest/versioning/versioning.d.ts +2 -2
  640. package/dest/versioning/versioning.d.ts.map +1 -1
  641. package/dest/vks/verification_key.d.ts +2 -2
  642. package/dest/vks/verification_key.d.ts.map +1 -1
  643. package/dest/vks/verification_key.js +1 -1
  644. package/dest/vks/vk_data.d.ts +2 -2
  645. package/dest/vks/vk_data.d.ts.map +1 -1
  646. package/dest/vks/vk_data.js +1 -1
  647. package/dest/zkpassport/index.d.ts +2 -2
  648. package/dest/zkpassport/index.d.ts.map +1 -1
  649. package/dest/zkpassport/index.js +2 -2
  650. package/package.json +14 -9
  651. package/src/abi/abi.ts +40 -34
  652. package/src/abi/authorization_selector.ts +3 -2
  653. package/src/abi/buffer.ts +1 -1
  654. package/src/abi/decoder.ts +1 -1
  655. package/src/abi/encoder.ts +1 -1
  656. package/src/abi/event_selector.ts +3 -2
  657. package/src/abi/function_call.ts +1 -1
  658. package/src/abi/function_selector.ts +11 -2
  659. package/src/abi/note_selector.ts +2 -2
  660. package/src/abi/selector.ts +1 -1
  661. package/src/auth_witness/auth_witness.ts +2 -2
  662. package/src/avm/avm.ts +338 -20
  663. package/src/avm/avm_accumulated_data.ts +1 -1
  664. package/src/avm/avm_circuit_public_inputs.ts +1 -1
  665. package/src/avm/contract_storage_read.ts +1 -1
  666. package/src/avm/contract_storage_update_request.ts +1 -1
  667. package/src/avm/message_pack.ts +2 -1
  668. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  669. package/src/avm/public_data_read.ts +1 -1
  670. package/src/avm/public_data_update_request.ts +1 -1
  671. package/src/avm/public_data_write.ts +1 -1
  672. package/src/avm/public_inner_call_request.ts +1 -1
  673. package/src/avm/revert_code.ts +1 -1
  674. package/src/aztec-address/index.ts +2 -1
  675. package/src/block/attestation_info.ts +1 -1
  676. package/src/block/block_hash.ts +1 -1
  677. package/src/block/block_parameter.ts +8 -0
  678. package/src/block/{published_l2_block.ts → checkpointed_l2_block.ts} +58 -3
  679. package/src/block/in_block.ts +25 -12
  680. package/src/block/index.ts +2 -2
  681. package/src/block/l2_block.ts +24 -11
  682. package/src/block/l2_block_code_to_purge.ts +4 -4
  683. package/src/block/l2_block_header.ts +1 -1
  684. package/src/block/l2_block_info.ts +11 -10
  685. package/src/block/l2_block_new.ts +54 -18
  686. package/src/block/l2_block_source.ts +98 -52
  687. package/src/block/l2_block_stream/interfaces.ts +1 -1
  688. package/src/block/l2_block_stream/l2_block_stream.ts +19 -5
  689. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -2
  690. package/src/block/proposal/attestations_and_signers.ts +1 -1
  691. package/src/block/proposal/committee_attestation.ts +1 -1
  692. package/src/block/test/l2_tips_store_test_suite.ts +11 -5
  693. package/src/checkpoint/checkpoint.ts +58 -11
  694. package/src/checkpoint/checkpoint_info.ts +9 -0
  695. package/src/checkpoint/published_checkpoint.ts +20 -6
  696. package/src/contract/artifact_hash.ts +2 -2
  697. package/src/contract/complete_address.ts +1 -1
  698. package/src/contract/contract_address.ts +2 -2
  699. package/src/contract/contract_class.ts +2 -2
  700. package/src/contract/contract_class_id.ts +3 -3
  701. package/src/contract/contract_instance.ts +1 -1
  702. package/src/contract/contract_instance_update.ts +1 -1
  703. package/src/contract/deployment_info.ts +1 -1
  704. package/src/contract/interfaces/contract_class.ts +78 -47
  705. package/src/contract/interfaces/contract_data_source.ts +3 -2
  706. package/src/contract/interfaces/contract_instance.ts +48 -16
  707. package/src/contract/interfaces/contract_instance_update.ts +12 -10
  708. package/src/contract/partial_address.ts +1 -1
  709. package/src/contract/private_function.ts +3 -2
  710. package/src/contract/private_function_membership_proof.ts +2 -2
  711. package/src/contract/utility_function_membership_proof.ts +1 -1
  712. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +2 -2
  713. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  714. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  715. package/src/epoch-helpers/index.ts +11 -9
  716. package/src/errors/simulation_error.ts +1 -1
  717. package/src/fees/transaction_fee.ts +1 -1
  718. package/src/gas/gas.ts +1 -1
  719. package/src/gas/gas_fees.ts +1 -1
  720. package/src/gas/gas_settings.ts +1 -1
  721. package/src/hash/hash.ts +3 -13
  722. package/src/hash/map_slot.ts +2 -2
  723. package/src/interfaces/allowed_element.ts +10 -8
  724. package/src/interfaces/archiver.ts +32 -14
  725. package/src/interfaces/aztec-node-admin.ts +2 -2
  726. package/src/interfaces/aztec-node.ts +79 -75
  727. package/src/interfaces/block-builder.ts +14 -3
  728. package/src/interfaces/configs.ts +64 -33
  729. package/src/interfaces/epoch-prover.ts +4 -4
  730. package/src/interfaces/get_logs_response.ts +13 -9
  731. package/src/interfaces/l2_logs_source.ts +11 -14
  732. package/src/interfaces/merkle_tree_operations.ts +7 -3
  733. package/src/interfaces/prover-client.ts +13 -10
  734. package/src/interfaces/public_state_source.ts +1 -1
  735. package/src/interfaces/server_circuit_prover.ts +0 -1
  736. package/src/interfaces/slasher.ts +24 -22
  737. package/src/interfaces/tx_provider.ts +2 -2
  738. package/src/interfaces/validator.ts +23 -19
  739. package/src/interfaces/world_state.ts +26 -18
  740. package/src/kernel/claimed_length_array.ts +1 -1
  741. package/src/kernel/hints/build_nullifier_read_request_hints.ts +1 -1
  742. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
  743. package/src/kernel/hints/key_validation_hint.ts +1 -1
  744. package/src/kernel/hints/key_validation_request.ts +2 -1
  745. package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
  746. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  747. package/src/kernel/hints/read_request.ts +1 -1
  748. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
  749. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  750. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  751. package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
  752. package/src/kernel/log_hash.ts +1 -1
  753. package/src/kernel/note_hash.ts +1 -1
  754. package/src/kernel/nullifier.ts +1 -1
  755. package/src/kernel/padded_side_effects.ts +1 -1
  756. package/src/kernel/private_call_data.ts +1 -1
  757. package/src/kernel/private_call_request.ts +1 -1
  758. package/src/kernel/private_circuit_public_inputs.ts +86 -86
  759. package/src/kernel/private_context_inputs.ts +1 -1
  760. package/src/kernel/private_kernel_circuit_public_inputs.ts +1 -1
  761. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +1 -1
  762. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +1 -1
  763. package/src/kernel/private_log_data.ts +1 -1
  764. package/src/kernel/private_to_avm_accumulated_data.ts +1 -1
  765. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  766. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  767. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +2 -2
  768. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  769. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +2 -2
  770. package/src/kernel/public_call_request.ts +1 -1
  771. package/src/kernel/utils/optional_number.ts +1 -1
  772. package/src/keys/derivation.ts +5 -2
  773. package/src/keys/public_key.ts +1 -1
  774. package/src/keys/public_keys.ts +3 -2
  775. package/src/l1-contracts/slash_factory.ts +3 -1
  776. package/src/logs/contract_class_log.ts +2 -2
  777. package/src/logs/debug_log.ts +1 -1
  778. package/src/logs/directional_app_tagging_secret.ts +4 -2
  779. package/src/logs/index.ts +2 -1
  780. package/src/logs/log_id.ts +22 -11
  781. package/src/logs/message_context.ts +1 -1
  782. package/src/logs/pending_tagged_log.ts +1 -1
  783. package/src/logs/private_log.ts +3 -2
  784. package/src/logs/public_log.ts +8 -1
  785. package/src/logs/shared_secret_derivation.ts +2 -2
  786. package/src/logs/siloed_tag.ts +44 -0
  787. package/src/logs/tag.ts +42 -0
  788. package/src/logs/tx_scoped_l2_log.ts +48 -45
  789. package/src/messaging/in_hash.ts +1 -1
  790. package/src/messaging/inbox_leaf.ts +11 -10
  791. package/src/messaging/l1_actor.ts +2 -2
  792. package/src/messaging/l1_to_l2_message.ts +3 -2
  793. package/src/messaging/l1_to_l2_message_source.ts +5 -10
  794. package/src/messaging/l2_actor.ts +2 -2
  795. package/src/messaging/l2_to_l1_membership.ts +4 -3
  796. package/src/messaging/l2_to_l1_message.ts +5 -1
  797. package/src/messaging/out_hash.ts +1 -1
  798. package/src/note/note.ts +5 -2
  799. package/src/note/note_dao.ts +37 -6
  800. package/src/note/notes_filter.ts +4 -1
  801. package/src/p2p/block_attestation.ts +3 -2
  802. package/src/p2p/block_proposal.ts +3 -2
  803. package/src/p2p/consensus_payload.ts +1 -1
  804. package/src/p2p/signature_utils.ts +2 -1
  805. package/src/parity/parity_base_private_inputs.ts +1 -1
  806. package/src/parity/parity_public_inputs.ts +1 -1
  807. package/src/proofs/chonk_proof.ts +2 -2
  808. package/src/proofs/proof.ts +1 -1
  809. package/src/proofs/proof_data.ts +24 -0
  810. package/src/proofs/recursive_proof.ts +1 -1
  811. package/src/rollup/avm_proof_data.ts +2 -9
  812. package/src/rollup/base_rollup_hints.ts +1 -1
  813. package/src/rollup/block_constant_data.ts +1 -1
  814. package/src/rollup/block_headers_hash.ts +1 -1
  815. package/src/rollup/block_rollup_public_inputs.ts +1 -1
  816. package/src/rollup/block_root_rollup_private_inputs.ts +1 -1
  817. package/src/rollup/checkpoint_constant_data.ts +2 -1
  818. package/src/rollup/checkpoint_header.ts +11 -5
  819. package/src/rollup/checkpoint_rollup_public_inputs.ts +1 -1
  820. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +2 -1
  821. package/src/rollup/epoch_constant_data.ts +1 -1
  822. package/src/rollup/public_chonk_verifier_private_inputs.ts +1 -1
  823. package/src/rollup/public_chonk_verifier_public_inputs.ts +1 -1
  824. package/src/rollup/public_tx_base_rollup_private_inputs.ts +2 -2
  825. package/src/rollup/root_rollup_public_inputs.ts +1 -1
  826. package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
  827. package/src/rollup/tx_rollup_public_inputs.ts +1 -1
  828. package/src/schemas/schemas.ts +6 -1
  829. package/src/slashing/types.ts +24 -20
  830. package/src/snapshots/types.ts +33 -29
  831. package/src/stats/stats.ts +10 -5
  832. package/src/tests/factories.ts +76 -10
  833. package/src/tests/mocks.ts +82 -6
  834. package/src/trees/append_only_tree_snapshot.ts +1 -1
  835. package/src/trees/database_public_state_source.ts +1 -1
  836. package/src/trees/nullifier_leaf.ts +1 -1
  837. package/src/trees/nullifier_membership_witness.ts +1 -1
  838. package/src/trees/public_data_leaf.ts +1 -1
  839. package/src/trees/public_data_witness.ts +1 -1
  840. package/src/tx/block_header.ts +17 -11
  841. package/src/tx/call_context.ts +1 -1
  842. package/src/tx/capsule.ts +1 -1
  843. package/src/tx/content_commitment.ts +13 -4
  844. package/src/tx/function_data.ts +1 -1
  845. package/src/tx/global_variable_builder.ts +8 -1
  846. package/src/tx/global_variables.ts +16 -10
  847. package/src/tx/hashed_values.ts +1 -1
  848. package/src/tx/in_tx.ts +24 -0
  849. package/src/tx/index.ts +1 -0
  850. package/src/tx/indexed_tx_effect.ts +6 -5
  851. package/src/tx/offchain_effect.ts +1 -1
  852. package/src/tx/partial_state_reference.ts +1 -1
  853. package/src/tx/private_execution_result.ts +5 -5
  854. package/src/tx/private_tx_constant_data.ts +1 -1
  855. package/src/tx/processed_tx.ts +19 -16
  856. package/src/tx/profiling.ts +1 -1
  857. package/src/tx/protocol_contracts.ts +2 -2
  858. package/src/tx/public_call_request_with_calldata.ts +1 -1
  859. package/src/tx/public_simulation_output.ts +1 -1
  860. package/src/tx/state_reference.ts +1 -1
  861. package/src/tx/tree_snapshots.ts +1 -1
  862. package/src/tx/tx.ts +12 -4
  863. package/src/tx/tx_constant_data.ts +1 -1
  864. package/src/tx/tx_context.ts +1 -1
  865. package/src/tx/tx_effect.ts +5 -3
  866. package/src/tx/tx_execution_request.ts +1 -1
  867. package/src/tx/tx_hash.ts +1 -1
  868. package/src/tx/tx_receipt.ts +3 -2
  869. package/src/tx/tx_request.ts +2 -2
  870. package/src/tx/validator/tx_validator.ts +8 -6
  871. package/src/update-checker/update-checker.ts +2 -1
  872. package/src/validators/errors.ts +1 -1
  873. package/src/validators/schemas.ts +54 -48
  874. package/src/versioning/versioning.ts +1 -1
  875. package/src/vks/verification_key.ts +1 -1
  876. package/src/vks/vk_data.ts +1 -1
  877. package/src/zkpassport/index.ts +2 -2
  878. package/dest/block/l2_block_number.d.ts +0 -5
  879. package/dest/block/l2_block_number.d.ts.map +0 -1
  880. package/dest/block/l2_block_number.js +0 -6
  881. package/dest/block/published_l2_block.d.ts +0 -130
  882. package/dest/block/published_l2_block.d.ts.map +0 -1
  883. package/dest/logs/log_with_tx_data.d.ts +0 -19
  884. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  885. package/dest/logs/log_with_tx_data.js +0 -49
  886. package/src/block/l2_block_number.ts +0 -8
  887. package/src/logs/log_with_tx_data.ts +0 -46
@@ -1,7 +1,7 @@
1
1
  import { PRIVATE_LOG_LENGTH, PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
2
  import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
3
3
  import { padArrayEnd } from '@aztec/foundation/collection';
4
- import { Fr } from '@aztec/foundation/fields';
4
+ import { Fr } from '@aztec/foundation/curves/bn254';
5
5
  import { schemas } from '@aztec/foundation/schemas';
6
6
  import {
7
7
  BufferReader,
@@ -59,7 +59,8 @@ export class PrivateLog {
59
59
  }
60
60
 
61
61
  isEmpty() {
62
- return this.fields.every(f => f.isZero());
62
+ // Faster to check emittedLength than compare all fields against zero
63
+ return this.emittedLength === 0;
63
64
  }
64
65
 
65
66
  static empty() {
@@ -1,6 +1,6 @@
1
1
  import { FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH, PUBLIC_LOG_HEADER_LENGTH } from '@aztec/constants';
2
2
  import type { FieldsOf } from '@aztec/foundation/array';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { type ZodFor, schemas } from '@aztec/foundation/schemas';
5
5
  import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
6
6
 
@@ -172,6 +172,13 @@ export class PublicLog {
172
172
  return new PublicLog(reader.readObject(AztecAddress), reader.readArray(fieldsLength, Fr));
173
173
  }
174
174
 
175
+ static fromPlainObject(obj: any): PublicLog {
176
+ return new PublicLog(
177
+ AztecAddress.fromPlainObject(obj.contractAddress),
178
+ obj.fields.map((f: any) => Fr.fromPlainObject(f)),
179
+ );
180
+ }
181
+
175
182
  static async random() {
176
183
  return new PublicLog(
177
184
  await AztecAddress.random(),
@@ -1,5 +1,5 @@
1
- import { Grumpkin } from '@aztec/foundation/crypto';
2
- import type { GrumpkinScalar, Point } from '@aztec/foundation/fields';
1
+ import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
2
+ import type { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
3
3
 
4
4
  import type { PublicKey } from '../keys/public_key.js';
5
5
 
@@ -0,0 +1,44 @@
1
+ import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
2
+ import type { Fr } from '@aztec/foundation/curves/bn254';
3
+ import type { ZodFor } from '@aztec/foundation/schemas';
4
+
5
+ import type { AztecAddress } from '../aztec-address/index.js';
6
+ import { schemas } from '../schemas/schemas.js';
7
+ import type { Tag } from './tag.js';
8
+
9
+ /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
10
+
11
+ /** Branding to ensure fields are not interchangeable types. */
12
+ export interface SiloedTag {
13
+ /** Brand. */
14
+ _branding: 'SiloedTag';
15
+ }
16
+
17
+ /**
18
+ * Represents a tag used in private log as it "appears on the chain" - that is the tag is siloed with a contract
19
+ * address that emitted the log.
20
+ */
21
+ export class SiloedTag {
22
+ constructor(public readonly value: Fr) {}
23
+
24
+ static async compute(tag: Tag, app: AztecAddress): Promise<SiloedTag> {
25
+ const siloedTag = await poseidon2Hash([app, tag.value]);
26
+ return new SiloedTag(siloedTag);
27
+ }
28
+
29
+ toString(): string {
30
+ return this.value.toString();
31
+ }
32
+
33
+ toJSON(): string {
34
+ return this.value.toString();
35
+ }
36
+
37
+ equals(other: SiloedTag): boolean {
38
+ return this.value.equals(other.value);
39
+ }
40
+
41
+ static get schema(): ZodFor<SiloedTag> {
42
+ return schemas.Fr.transform((fr: Fr) => new SiloedTag(fr));
43
+ }
44
+ }
@@ -0,0 +1,42 @@
1
+ import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
2
+ import type { Fr } from '@aztec/foundation/curves/bn254';
3
+ import type { ZodFor } from '@aztec/foundation/schemas';
4
+
5
+ import { schemas } from '../schemas/schemas.js';
6
+ import type { PreTag } from './pre_tag.js';
7
+
8
+ /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
9
+
10
+ export interface Tag {
11
+ /** Brand. */
12
+ _branding: 'Tag';
13
+ }
14
+
15
+ /**
16
+ * Represents a tag of a private log. This is not the tag that "appears" on the chain as this tag is first siloed
17
+ * with a contract address by kernels before being included in the final log.
18
+ */
19
+ export class Tag {
20
+ constructor(public readonly value: Fr) {}
21
+
22
+ static async compute(preTag: PreTag): Promise<Tag> {
23
+ const tag = await poseidon2Hash([preTag.secret.value, preTag.index]);
24
+ return new Tag(tag);
25
+ }
26
+
27
+ toString(): string {
28
+ return this.value.toString();
29
+ }
30
+
31
+ toJSON(): string {
32
+ return this.value.toString();
33
+ }
34
+
35
+ equals(other: Tag): boolean {
36
+ return this.value.equals(other.value);
37
+ }
38
+
39
+ static get schema(): ZodFor<Tag> {
40
+ return schemas.Fr.transform((fr: Fr) => new Tag(fr));
41
+ }
42
+ }
@@ -1,12 +1,19 @@
1
- import { BufferReader, boolToBuffer, numToUInt32BE } from '@aztec/foundation/serialize';
1
+ import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
+ import { schemas as foundationSchemas } from '@aztec/foundation/schemas';
4
+ import {
5
+ BufferReader,
6
+ bigintToUInt64BE,
7
+ numToUInt32BE,
8
+ serializeArrayOfBufferableToVector,
9
+ } from '@aztec/foundation/serialize';
2
10
 
3
11
  import { z } from 'zod';
4
12
 
13
+ import { schemas } from '../schemas/schemas.js';
5
14
  import { TxHash } from '../tx/tx_hash.js';
6
- import { PrivateLog } from './private_log.js';
7
- import { PublicLog } from './public_log.js';
15
+ import type { UInt64 } from '../types/shared.js';
8
16
 
9
- // TODO(#14460): Split to private and public versions instead of having this weird mix.
10
17
  export class TxScopedL2Log {
11
18
  constructor(
12
19
  /*
@@ -14,82 +21,78 @@ export class TxScopedL2Log {
14
21
  */
15
22
  public txHash: TxHash,
16
23
  /*
17
- * The next available leaf index for the note hash tree for this transaction. It is stored
18
- * with the log so the noteHashIndex can be reconstructed after decryption.
24
+ * The block this log is included in
19
25
  */
20
- public dataStartIndexForTx: number,
26
+ public blockNumber: BlockNumber,
21
27
  /*
22
- * The index of the log in the transaction. Note that public and private logs are in separate arrays in the tx
23
- * effect and for this reason these indices are independent (a private and public log can have the same index).
28
+ * The timestamp of the block this log is included in
24
29
  */
25
- public logIndexInTx: number,
30
+ public blockTimestamp: UInt64,
26
31
  /*
27
- * The block this log is included in
32
+ * The log data as an array of field elements
33
+ */
34
+ public logData: Fr[],
35
+ /*
36
+ * The note hashes from the tx effect
28
37
  */
29
- public blockNumber: number,
38
+ public noteHashes: Fr[],
30
39
  /*
31
- * The log data as either a PrivateLog or PublicLog
40
+ * The first nullifier from the tx effect. Used for nonce discovery when processing notes from logs.
41
+ *
42
+ * (Note nonces are computed as `hash(firstNullifier, noteIndexInTx)`.)
32
43
  */
33
- public log: PrivateLog | PublicLog,
44
+ public firstNullifier: Fr,
34
45
  ) {}
35
46
 
36
- get isFromPublic() {
37
- return this.log instanceof PublicLog;
38
- }
39
-
40
47
  static get schema() {
41
48
  return z
42
49
  .object({
43
50
  txHash: TxHash.schema,
44
- dataStartIndexForTx: z.number(),
45
- logIndexInTx: z.number(),
46
- blockNumber: z.number(),
47
- log: z.union([PrivateLog.schema, PublicLog.schema]),
51
+ blockNumber: BlockNumberSchema,
52
+ blockTimestamp: schemas.UInt64,
53
+ logData: z.array(foundationSchemas.Fr),
54
+ noteHashes: z.array(foundationSchemas.Fr),
55
+ firstNullifier: foundationSchemas.Fr,
48
56
  })
49
57
  .transform(
50
- ({ txHash, dataStartIndexForTx, logIndexInTx, blockNumber, log }) =>
51
- new TxScopedL2Log(txHash, dataStartIndexForTx, logIndexInTx, blockNumber, log),
58
+ ({ txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier }) =>
59
+ new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier),
52
60
  );
53
61
  }
54
62
 
55
63
  toBuffer() {
56
- const isFromPublic = this.log instanceof PublicLog;
57
64
  return Buffer.concat([
58
65
  this.txHash.toBuffer(),
59
- numToUInt32BE(this.dataStartIndexForTx),
60
- numToUInt32BE(this.logIndexInTx),
61
66
  numToUInt32BE(this.blockNumber),
62
- boolToBuffer(isFromPublic),
63
- this.log.toBuffer(),
67
+ bigintToUInt64BE(this.blockTimestamp),
68
+ serializeArrayOfBufferableToVector(this.logData),
69
+ serializeArrayOfBufferableToVector(this.noteHashes),
70
+ this.firstNullifier.toBuffer(),
64
71
  ]);
65
72
  }
66
73
 
67
74
  static fromBuffer(buffer: Buffer) {
68
75
  const reader = BufferReader.asReader(buffer);
69
76
  const txHash = reader.readObject(TxHash);
70
- const dataStartIndexForTx = reader.readNumber();
71
- const logIndexInTx = reader.readNumber();
72
- const blockNumber = reader.readNumber();
73
- const isFromPublic = reader.readBoolean();
74
- const log = isFromPublic ? PublicLog.fromBuffer(reader) : PrivateLog.fromBuffer(reader);
75
-
76
- return new TxScopedL2Log(txHash, dataStartIndexForTx, logIndexInTx, blockNumber, log);
77
- }
77
+ const blockNumber = BlockNumber(reader.readNumber());
78
+ const blockTimestamp = reader.readUInt64();
79
+ const logData = reader.readVector(Fr);
80
+ const noteHashes = reader.readVector(Fr);
81
+ const firstNullifier = reader.readObject(Fr);
78
82
 
79
- static async random(isFromPublic = Math.random() < 0.5) {
80
- const log = isFromPublic ? await PublicLog.random() : PrivateLog.random();
81
- return new TxScopedL2Log(TxHash.random(), 1, 1, 1, log);
83
+ return new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier);
82
84
  }
83
85
 
84
86
  equals(other: TxScopedL2Log) {
85
87
  return (
86
88
  this.txHash.equals(other.txHash) &&
87
- this.dataStartIndexForTx === other.dataStartIndexForTx &&
88
- this.logIndexInTx === other.logIndexInTx &&
89
89
  this.blockNumber === other.blockNumber &&
90
- ((this.log instanceof PublicLog && other.log instanceof PublicLog) ||
91
- (this.log instanceof PrivateLog && other.log instanceof PrivateLog)) &&
92
- this.log.equals(other.log as any)
90
+ this.blockTimestamp === other.blockTimestamp &&
91
+ this.logData.length === other.logData.length &&
92
+ this.logData.every((f, i) => f.equals(other.logData[i])) &&
93
+ this.noteHashes.length === other.noteHashes.length &&
94
+ this.noteHashes.every((h, i) => h.equals(other.noteHashes[i])) &&
95
+ this.firstNullifier.equals(other.firstNullifier)
93
96
  );
94
97
  }
95
98
  }
@@ -1,6 +1,6 @@
1
1
  import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
2
2
  import { padArrayEnd } from '@aztec/foundation/collection';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { computeBalancedShaRoot } from '@aztec/foundation/trees';
5
5
 
6
6
  /** Computes the inHash for a block's ContentCommitment given its l1 to l2 messages. */
@@ -1,6 +1,7 @@
1
- import { INITIAL_L2_BLOCK_NUM, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
1
+ import { INITIAL_CHECKPOINT_NUMBER, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
2
2
  import { toBigIntBE } from '@aztec/foundation/bigint-buffer';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { CheckpointNumber } from '@aztec/foundation/branded-types';
4
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
5
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
6
 
6
7
  export class InboxLeaf {
@@ -22,22 +23,22 @@ export class InboxLeaf {
22
23
  return new InboxLeaf(index, leaf);
23
24
  }
24
25
 
25
- static smallestIndexFromL2Block(l2blockNumber: number): bigint {
26
- return BigInt(l2blockNumber - INITIAL_L2_BLOCK_NUM) * BigInt(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
26
+ static smallestIndexForCheckpoint(checkpointNumber: CheckpointNumber): bigint {
27
+ return BigInt(checkpointNumber - INITIAL_CHECKPOINT_NUMBER) * BigInt(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
27
28
  }
28
29
 
29
30
  /**
30
- * Returns the range of valid indices for a given L2 block.
31
+ * Returns the range of valid indices for a given checkpoint.
31
32
  * Start index is inclusive, end index is exclusive.
32
33
  */
33
- static indexRangeFromL2Block(l2blockNumber: number): [bigint, bigint] {
34
- const start = this.smallestIndexFromL2Block(l2blockNumber);
34
+ static indexRangeForCheckpoint(checkpointNumber: CheckpointNumber): [bigint, bigint] {
35
+ const start = this.smallestIndexForCheckpoint(checkpointNumber);
35
36
  const end = start + BigInt(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
36
37
  return [start, end];
37
38
  }
38
39
 
39
- /** Returns the L2 block number for a given leaf index */
40
- static l2BlockFromIndex(index: bigint): number {
41
- return Number(index / BigInt(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP)) + INITIAL_L2_BLOCK_NUM;
40
+ /** Returns the checkpoint number for a given leaf index */
41
+ static checkpointNumberFromIndex(index: bigint): CheckpointNumber {
42
+ return CheckpointNumber(Number(index / BigInt(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP)) + INITIAL_CHECKPOINT_NUMBER);
42
43
  }
43
44
  }
@@ -1,6 +1,6 @@
1
- import { randomInt } from '@aztec/foundation/crypto';
1
+ import { randomInt } from '@aztec/foundation/crypto/random';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
3
- import { Fr } from '@aztec/foundation/fields';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import type { L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/constants';
2
- import { sha256ToField } from '@aztec/foundation/crypto';
3
- import { Fr } from '@aztec/foundation/fields';
2
+ import { sha256ToField } from '@aztec/foundation/crypto/sha256';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
  import { bufferToHex } from '@aztec/foundation/string';
6
6
  import { SiblingPath } from '@aztec/foundation/trees';
@@ -84,6 +84,7 @@ export async function getNonNullifiedL1ToL2MessageWitness(
84
84
  if (!response) {
85
85
  throw new Error(`No L1 to L2 message found for message hash ${messageHash.toString()}`);
86
86
  }
87
+
87
88
  const [messageIndex, siblingPath] = response;
88
89
 
89
90
  const messageNullifier = await computeL1ToL2MessageNullifier(contractAddress, messageHash, secret);
@@ -1,4 +1,5 @@
1
- import type { Fr } from '@aztec/foundation/fields';
1
+ import type { CheckpointNumber } from '@aztec/foundation/branded-types';
2
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
3
 
3
4
  import type { L2Tips } from '../block/l2_block_source.js';
4
5
 
@@ -7,11 +8,11 @@ import type { L2Tips } from '../block/l2_block_source.js';
7
8
  */
8
9
  export interface L1ToL2MessageSource {
9
10
  /**
10
- * Gets new L1 to L2 message (to be) included in a given block.
11
- * @param blockNumber - L2 block number to get messages for.
11
+ * Gets new L1 to L2 message (to be) included in a given checkpoint.
12
+ * @param checkpointNumber - Checkpoint number to get messages for.
12
13
  * @returns The L1 to L2 messages/leaves of the messages subtree (throws if not found).
13
14
  */
14
- getL1ToL2Messages(blockNumber: number): Promise<Fr[]>;
15
+ getL1ToL2Messages(checkpointNumber: CheckpointNumber): Promise<Fr[]>;
15
16
 
16
17
  /**
17
18
  * Gets the L1 to L2 message index in the L1 to L2 message tree.
@@ -20,12 +21,6 @@ export interface L1ToL2MessageSource {
20
21
  */
21
22
  getL1ToL2MessageIndex(l1ToL2Message: Fr): Promise<bigint | undefined>;
22
23
 
23
- /**
24
- * Gets the number of the latest L2 block processed by the implementation.
25
- * @returns The number of the latest L2 block processed by the implementation.
26
- */
27
- getBlockNumber(): Promise<number>;
28
-
29
24
  /**
30
25
  * Returns the tips of the L2 chain.
31
26
  */
@@ -1,5 +1,5 @@
1
- import { randomInt } from '@aztec/foundation/crypto';
2
- import { Fr } from '@aztec/foundation/fields';
1
+ import { randomInt } from '@aztec/foundation/crypto/random';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
 
5
5
  import { AztecAddress } from '../aztec-address/index.js';
@@ -1,8 +1,9 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import type { BlockNumber } from '@aztec/foundation/branded-types';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { SiblingPath, UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot } from '@aztec/foundation/trees';
3
4
 
4
5
  export interface MessageRetrieval {
5
- getL2ToL1Messages(l2BlockNumber: number): Promise<Fr[][] | undefined>;
6
+ getL2ToL1Messages(l2BlockNumber: BlockNumber): Promise<Fr[][] | undefined>;
6
7
  }
7
8
 
8
9
  export type L2ToL1MembershipWitness = {
@@ -13,7 +14,7 @@ export type L2ToL1MembershipWitness = {
13
14
 
14
15
  export async function computeL2ToL1MembershipWitness(
15
16
  messageRetriever: MessageRetrieval,
16
- l2BlockNumber: number,
17
+ l2BlockNumber: BlockNumber,
17
18
  message: Fr,
18
19
  ): Promise<L2ToL1MembershipWitness | undefined> {
19
20
  const messagesForAllTxs = await messageRetriever.getL2ToL1Messages(l2BlockNumber);
@@ -1,5 +1,5 @@
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
1
2
  import { EthAddress } from '@aztec/foundation/eth-address';
2
- import { Fr } from '@aztec/foundation/fields';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
4
  import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
5
5
 
@@ -160,6 +160,10 @@ export class ScopedL2ToL1Message {
160
160
  return new ScopedL2ToL1Message(L2ToL1Message.empty(), AztecAddress.ZERO);
161
161
  }
162
162
 
163
+ equals(other: ScopedL2ToL1Message): boolean {
164
+ return this.message.equals(other.message) && this.contractAddress.equals(other.contractAddress);
165
+ }
166
+
163
167
  /**
164
168
  * Creates a ScopedL2ToL1Message instance from a plain object without Zod validation.
165
169
  * This method is optimized for performance and skips validation, making it suitable
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot } from '@aztec/foundation/trees';
3
3
 
4
4
  export function computeTxOutHash(messages: Fr[]): Fr {
package/src/note/note.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { randomInt } from '@aztec/foundation/crypto';
2
- import { Fr } from '@aztec/foundation/fields';
1
+ import { randomInt } from '@aztec/foundation/crypto/random';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader } from '@aztec/foundation/serialize';
4
4
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
5
 
@@ -67,6 +67,9 @@ export class Note extends Vector<Fr> {
67
67
  }
68
68
 
69
69
  equals(other: Note) {
70
+ if (this.items.length !== other.items.length) {
71
+ return false;
72
+ }
70
73
  return this.items.every((item, index) => item.equals(other.items[index]));
71
74
  }
72
75
  }
@@ -1,5 +1,7 @@
1
1
  import { toBigIntBE } from '@aztec/foundation/bigint-buffer';
2
- import { Fr, Point } from '@aztec/foundation/fields';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
+ import { Point } from '@aztec/foundation/curves/grumpkin';
3
5
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
6
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
5
7
  import { Note } from '@aztec/stdlib/note';
@@ -17,13 +19,15 @@ export class NoteDao {
17
19
  public note: Note,
18
20
  /** The address of the contract that created the note (i.e. the address used by the kernel during siloing). */
19
21
  public contractAddress: AztecAddress,
22
+ /** The owner of the note - generally the account that can spend the note. */
23
+ public owner: AztecAddress,
20
24
  /**
21
25
  * The storage location of the note. This value is not used for anything in PXE, but we do index by storage slot
22
26
  * since contracts typically make queries based on it.
23
27
  */
24
28
  public storageSlot: Fr,
25
29
  /**
26
- * The randomness injected to the note.
30
+ * The randomness injected to the note hash preimage.
27
31
  */
28
32
  public randomness: Fr,
29
33
  /** The nonce that was injected into the note hash preimage in order to guarantee uniqueness. */
@@ -48,7 +52,7 @@ export class NoteDao {
48
52
  public txHash: TxHash,
49
53
  /** The L2 block number in which the tx with this note was included. Used for note management while processing
50
54
  * reorgs.*/
51
- public l2BlockNumber: number,
55
+ public l2BlockNumber: BlockNumber,
52
56
  /** The L2 block hash in which the tx with this note was included. Used for note management while processing
53
57
  * reorgs.*/
54
58
  public l2BlockHash: string,
@@ -60,6 +64,7 @@ export class NoteDao {
60
64
  return serializeToBuffer([
61
65
  this.note,
62
66
  this.contractAddress,
67
+ this.owner,
63
68
  this.storageSlot,
64
69
  this.randomness,
65
70
  this.noteNonce,
@@ -77,19 +82,21 @@ export class NoteDao {
77
82
 
78
83
  const note = Note.fromBuffer(reader);
79
84
  const contractAddress = AztecAddress.fromBuffer(reader);
85
+ const owner = AztecAddress.fromBuffer(reader);
80
86
  const storageSlot = Fr.fromBuffer(reader);
81
87
  const randomness = Fr.fromBuffer(reader);
82
88
  const noteNonce = Fr.fromBuffer(reader);
83
89
  const noteHash = Fr.fromBuffer(reader);
84
90
  const siloedNullifier = Fr.fromBuffer(reader);
85
91
  const txHash = reader.readObject(TxHash);
86
- const l2BlockNumber = reader.readNumber();
92
+ const l2BlockNumber = BlockNumber(reader.readNumber());
87
93
  const l2BlockHash = Fr.fromBuffer(reader).toString();
88
94
  const index = toBigIntBE(reader.readBytes(32));
89
95
 
90
96
  return new NoteDao(
91
97
  note,
92
98
  contractAddress,
99
+ owner,
93
100
  storageSlot,
94
101
  randomness,
95
102
  noteNonce,
@@ -111,6 +118,26 @@ export class NoteDao {
111
118
  return NoteDao.fromBuffer(Buffer.from(hex, 'hex'));
112
119
  }
113
120
 
121
+ /**
122
+ * Returns true if this note is equal to the `other` one.
123
+ */
124
+ equals(other: NoteDao): boolean {
125
+ return (
126
+ this.note.equals(other.note) &&
127
+ this.contractAddress.equals(other.contractAddress) &&
128
+ this.owner.equals(other.owner) &&
129
+ this.storageSlot.equals(other.storageSlot) &&
130
+ this.randomness.equals(other.randomness) &&
131
+ this.noteNonce.equals(other.noteNonce) &&
132
+ this.noteHash.equals(other.noteHash) &&
133
+ this.siloedNullifier.equals(other.siloedNullifier) &&
134
+ this.txHash.equals(other.txHash) &&
135
+ this.l2BlockNumber === other.l2BlockNumber &&
136
+ this.l2BlockHash === other.l2BlockHash &&
137
+ this.index === other.index
138
+ );
139
+ }
140
+
114
141
  /**
115
142
  * Returns the size in bytes of the Note Dao.
116
143
  * @returns - Its size in bytes.
@@ -118,25 +145,29 @@ export class NoteDao {
118
145
  public getSize() {
119
146
  const indexSize = Math.ceil(Math.log2(Number(this.index)));
120
147
  const noteSize = 4 + this.note.items.length * Fr.SIZE_IN_BYTES;
121
- return noteSize + AztecAddress.SIZE_IN_BYTES + Fr.SIZE_IN_BYTES * 4 + TxHash.SIZE + Point.SIZE_IN_BYTES + indexSize;
148
+ return (
149
+ noteSize + AztecAddress.SIZE_IN_BYTES * 2 + Fr.SIZE_IN_BYTES * 4 + TxHash.SIZE + Point.SIZE_IN_BYTES + indexSize
150
+ );
122
151
  }
123
152
 
124
153
  static async random({
125
154
  note = Note.random(),
126
155
  contractAddress = undefined,
156
+ owner = undefined,
127
157
  storageSlot = Fr.random(),
128
158
  randomness = Fr.random(),
129
159
  noteNonce = Fr.random(),
130
160
  noteHash = Fr.random(),
131
161
  siloedNullifier = Fr.random(),
132
162
  txHash = TxHash.random(),
133
- l2BlockNumber = Math.floor(Math.random() * 1000),
163
+ l2BlockNumber = BlockNumber(Math.floor(Math.random() * 1000)),
134
164
  l2BlockHash = Fr.random().toString(),
135
165
  index = Fr.random().toBigInt(),
136
166
  }: Partial<NoteDao> = {}) {
137
167
  return new NoteDao(
138
168
  note,
139
169
  contractAddress ?? (await AztecAddress.random()),
170
+ owner ?? (await AztecAddress.random()),
140
171
  storageSlot,
141
172
  randomness,
142
173
  noteNonce,
@@ -1,4 +1,4 @@
1
- import type { Fr } from '@aztec/foundation/fields';
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
 
3
3
  import { z } from 'zod';
4
4
 
@@ -16,6 +16,8 @@ export type NotesFilter = {
16
16
  * @remarks Providing a contract address is required as we need that information to trigger private state sync.
17
17
  */
18
18
  contractAddress: AztecAddress;
19
+ /** The owner of the note. */
20
+ owner?: AztecAddress;
19
21
  /** The specific storage location of the note on the contract. */
20
22
  storageSlot?: Fr;
21
23
  /** The status of the note. Defaults to 'ACTIVE'. */
@@ -28,6 +30,7 @@ export type NotesFilter = {
28
30
 
29
31
  export const NotesFilterSchema: ZodFor<NotesFilter> = z.object({
30
32
  contractAddress: schemas.AztecAddress,
33
+ owner: schemas.AztecAddress.optional(),
31
34
  storageSlot: schemas.Fr.optional(),
32
35
  status: z.nativeEnum(NoteStatus).optional(),
33
36
  siloedNullifier: schemas.Fr.optional(),
@@ -1,9 +1,10 @@
1
1
  import { SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import { Buffer32 } from '@aztec/foundation/buffer';
3
- import { keccak256, tryRecoverAddress } from '@aztec/foundation/crypto';
3
+ import { keccak256 } from '@aztec/foundation/crypto/keccak';
4
+ import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
5
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
6
  import type { EthAddress } from '@aztec/foundation/eth-address';
5
7
  import { Signature } from '@aztec/foundation/eth-signature';
6
- import { Fr } from '@aztec/foundation/fields';
7
8
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
8
9
 
9
10
  import { z } from 'zod';
@@ -1,9 +1,10 @@
1
1
  import { SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import { Buffer32 } from '@aztec/foundation/buffer';
3
- import { keccak256, tryRecoverAddress } from '@aztec/foundation/crypto';
3
+ import { keccak256 } from '@aztec/foundation/crypto/keccak';
4
+ import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
5
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
6
  import type { EthAddress } from '@aztec/foundation/eth-address';
5
7
  import { Signature } from '@aztec/foundation/eth-signature';
6
- import { Fr } from '@aztec/foundation/fields';
7
8
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
8
9
 
9
10
  import type { L2BlockInfo } from '../block/l2_block_info.js';
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { schemas } from '@aztec/foundation/schemas';
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { hexToBuffer } from '@aztec/foundation/string';