@aztec/stdlib 0.0.1-commit.b655e406 → 0.0.1-commit.d3ec352c

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 (855) hide show
  1. package/dest/abi/abi.d.ts +92 -107
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +2 -2
  4. package/dest/abi/authorization_selector.d.ts +1 -1
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +1 -1
  7. package/dest/abi/contract_artifact.d.ts +1 -1
  8. package/dest/abi/contract_artifact.js +3 -3
  9. package/dest/abi/decoder.d.ts +1 -1
  10. package/dest/abi/decoder.d.ts.map +1 -1
  11. package/dest/abi/encoder.d.ts +1 -1
  12. package/dest/abi/event_metadata_definition.d.ts +1 -1
  13. package/dest/abi/event_selector.d.ts +1 -1
  14. package/dest/abi/event_selector.d.ts.map +1 -1
  15. package/dest/abi/function_call.d.ts +1 -9
  16. package/dest/abi/function_call.d.ts.map +1 -1
  17. package/dest/abi/function_selector.d.ts +1 -1
  18. package/dest/abi/function_selector.d.ts.map +1 -1
  19. package/dest/abi/index.d.ts +1 -1
  20. package/dest/abi/mocked_keys.d.ts +1 -1
  21. package/dest/abi/note_selector.d.ts +1 -1
  22. package/dest/abi/note_selector.d.ts.map +1 -1
  23. package/dest/abi/selector.d.ts +1 -1
  24. package/dest/abi/selector.d.ts.map +1 -1
  25. package/dest/abi/utils.d.ts +1 -1
  26. package/dest/auth_witness/auth_witness.d.ts +1 -2
  27. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  28. package/dest/auth_witness/index.d.ts +1 -1
  29. package/dest/avm/avm.d.ts +4356 -2061
  30. package/dest/avm/avm.d.ts.map +1 -1
  31. package/dest/avm/avm.js +529 -16
  32. package/dest/avm/avm_accumulated_data.d.ts +25 -36
  33. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  34. package/dest/avm/avm_accumulated_data.js +18 -0
  35. package/dest/avm/avm_circuit_public_inputs.d.ts +160 -148
  36. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  37. package/dest/avm/avm_circuit_public_inputs.js +9 -0
  38. package/dest/avm/avm_proving_request.d.ts +2031 -1507
  39. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  40. package/dest/avm/contract_storage_read.d.ts +1 -13
  41. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  42. package/dest/avm/contract_storage_update_request.d.ts +1 -13
  43. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  44. package/dest/avm/index.d.ts +1 -1
  45. package/dest/avm/message_pack.d.ts +2 -2
  46. package/dest/avm/message_pack.d.ts.map +1 -1
  47. package/dest/avm/message_pack.js +3 -0
  48. package/dest/avm/public_call_stack_item_compressed.d.ts +1 -3
  49. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  50. package/dest/avm/public_data_read.d.ts +1 -10
  51. package/dest/avm/public_data_read.d.ts.map +1 -1
  52. package/dest/avm/public_data_update_request.d.ts +1 -10
  53. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  54. package/dest/avm/public_data_write.d.ts +13 -11
  55. package/dest/avm/public_data_write.d.ts.map +1 -1
  56. package/dest/avm/public_data_write.js +9 -0
  57. package/dest/avm/public_inner_call_request.d.ts +1 -4
  58. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  59. package/dest/avm/revert_code.d.ts +16 -7
  60. package/dest/avm/revert_code.d.ts.map +1 -1
  61. package/dest/avm/revert_code.js +24 -8
  62. package/dest/aztec-address/index.d.ts +10 -1
  63. package/dest/aztec-address/index.d.ts.map +1 -1
  64. package/dest/aztec-address/index.js +24 -2
  65. package/dest/block/attestation_info.d.ts +3 -1
  66. package/dest/block/attestation_info.d.ts.map +1 -1
  67. package/dest/block/attestation_info.js +4 -1
  68. package/dest/block/block_hash.d.ts +1 -1
  69. package/dest/block/block_hash.d.ts.map +1 -1
  70. package/dest/block/block_parameter.d.ts +5 -0
  71. package/dest/block/block_parameter.d.ts.map +1 -0
  72. package/dest/block/block_parameter.js +6 -0
  73. package/dest/block/body.d.ts +8 -8
  74. package/dest/block/body.d.ts.map +1 -1
  75. package/dest/block/body.js +11 -27
  76. package/dest/block/in_block.d.ts +14 -19
  77. package/dest/block/in_block.d.ts.map +1 -1
  78. package/dest/block/in_block.js +3 -3
  79. package/dest/block/index.d.ts +3 -2
  80. package/dest/block/index.d.ts.map +1 -1
  81. package/dest/block/index.js +2 -1
  82. package/dest/block/l2_block.d.ts +18 -10
  83. package/dest/block/l2_block.d.ts.map +1 -1
  84. package/dest/block/l2_block.js +56 -5
  85. package/dest/block/l2_block_code_to_purge.d.ts +1 -1
  86. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  87. package/dest/block/l2_block_code_to_purge.js +6 -5
  88. package/dest/block/l2_block_header.d.ts +12 -14
  89. package/dest/block/l2_block_header.d.ts.map +1 -1
  90. package/dest/block/l2_block_header.js +18 -11
  91. package/dest/block/l2_block_info.d.ts +21 -16
  92. package/dest/block/l2_block_info.d.ts.map +1 -1
  93. package/dest/block/l2_block_info.js +7 -6
  94. package/dest/block/l2_block_new.d.ts +110 -0
  95. package/dest/block/l2_block_new.d.ts.map +1 -0
  96. package/dest/block/l2_block_new.js +138 -0
  97. package/dest/block/l2_block_source.d.ts +71 -104
  98. package/dest/block/l2_block_source.d.ts.map +1 -1
  99. package/dest/block/l2_block_source.js +5 -11
  100. package/dest/block/l2_block_stream/index.d.ts +1 -1
  101. package/dest/block/l2_block_stream/interfaces.d.ts +1 -1
  102. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -6
  103. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  104. package/dest/block/l2_block_stream/l2_block_stream.js +4 -3
  105. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -2
  106. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  107. package/dest/block/l2_block_stream/l2_tips_memory_store.js +4 -2
  108. package/dest/block/proposal/attestations_and_signers.d.ts +16 -5
  109. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  110. package/dest/block/proposal/attestations_and_signers.js +14 -0
  111. package/dest/block/proposal/committee_attestation.d.ts +1 -1
  112. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  113. package/dest/block/proposal/index.d.ts +1 -1
  114. package/dest/block/published_l2_block.d.ts +15 -28
  115. package/dest/block/published_l2_block.d.ts.map +1 -1
  116. package/dest/block/published_l2_block.js +12 -27
  117. package/dest/block/test/index.d.ts +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 +6 -4
  121. package/dest/block/validate_block_result.d.ts +6 -178
  122. package/dest/block/validate_block_result.d.ts.map +1 -1
  123. package/dest/block/validate_block_result.js +4 -3
  124. package/dest/checkpoint/checkpoint.d.ts +124 -0
  125. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  126. package/dest/checkpoint/checkpoint.js +62 -0
  127. package/dest/checkpoint/index.d.ts +3 -2
  128. package/dest/checkpoint/index.d.ts.map +1 -1
  129. package/dest/checkpoint/index.js +2 -1
  130. package/dest/checkpoint/published_checkpoint.d.ts +214 -0
  131. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  132. package/dest/checkpoint/published_checkpoint.js +71 -0
  133. package/dest/config/chain-config.d.ts +1 -1
  134. package/dest/config/index.d.ts +1 -1
  135. package/dest/config/node-rpc-config.d.ts +1 -1
  136. package/dest/contract/artifact_hash.d.ts +2 -2
  137. package/dest/contract/artifact_hash.d.ts.map +1 -1
  138. package/dest/contract/complete_address.d.ts +1 -4
  139. package/dest/contract/complete_address.d.ts.map +1 -1
  140. package/dest/contract/contract_address.d.ts +1 -1
  141. package/dest/contract/contract_class.d.ts +1 -1
  142. package/dest/contract/contract_class_id.d.ts +1 -1
  143. package/dest/contract/contract_class_metadata.d.ts +1 -1
  144. package/dest/contract/contract_deployment_data.d.ts +119 -0
  145. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  146. package/dest/contract/contract_deployment_data.js +99 -0
  147. package/dest/contract/contract_function_dao.d.ts +1 -1
  148. package/dest/contract/contract_instance.d.ts +1 -1
  149. package/dest/contract/contract_instance.d.ts.map +1 -1
  150. package/dest/contract/contract_instance_update.d.ts +1 -1
  151. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  152. package/dest/contract/contract_metadata.d.ts +1 -1
  153. package/dest/contract/deployment_info.d.ts +1 -1
  154. package/dest/contract/index.d.ts +2 -1
  155. package/dest/contract/index.d.ts.map +1 -1
  156. package/dest/contract/index.js +1 -0
  157. package/dest/contract/interfaces/contract_class.d.ts +41 -122
  158. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  159. package/dest/contract/interfaces/contract_data_source.d.ts +3 -2
  160. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  161. package/dest/contract/interfaces/contract_instance.d.ts +11 -11
  162. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  163. package/dest/contract/interfaces/contract_instance_update.d.ts +3 -3
  164. package/dest/contract/interfaces/index.d.ts +1 -1
  165. package/dest/contract/interfaces/node-info.d.ts +1 -1
  166. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
  167. package/dest/contract/partial_address.d.ts +1 -1
  168. package/dest/contract/private_function.d.ts +1 -1
  169. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  170. package/dest/contract/private_function_membership_proof.js +1 -1
  171. package/dest/contract/utility_function_membership_proof.d.ts +1 -1
  172. package/dest/database-version/index.d.ts +1 -1
  173. package/dest/database-version/version_manager.d.ts +6 -8
  174. package/dest/database-version/version_manager.d.ts.map +1 -1
  175. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +1 -1
  176. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  177. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +1 -1
  178. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  179. package/dest/delayed_public_mutable/index.d.ts +1 -1
  180. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
  181. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
  182. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +1 -1
  183. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  184. package/dest/epoch-helpers/index.d.ts +12 -11
  185. package/dest/epoch-helpers/index.d.ts.map +1 -1
  186. package/dest/epoch-helpers/index.js +10 -9
  187. package/dest/errors/index.d.ts +1 -1
  188. package/dest/errors/proving_error.d.ts +2 -2
  189. package/dest/errors/proving_error.d.ts.map +1 -1
  190. package/dest/errors/simulation_error.d.ts +1 -1
  191. package/dest/errors/simulation_error.d.ts.map +1 -1
  192. package/dest/fees/index.d.ts +1 -1
  193. package/dest/fees/transaction_fee.d.ts +1 -1
  194. package/dest/file-store/factory.d.ts +1 -1
  195. package/dest/file-store/gcs.d.ts +1 -1
  196. package/dest/file-store/gcs.d.ts.map +1 -1
  197. package/dest/file-store/http.d.ts +1 -1
  198. package/dest/file-store/http.d.ts.map +1 -1
  199. package/dest/file-store/http.js +8 -3
  200. package/dest/file-store/index.d.ts +1 -1
  201. package/dest/file-store/interface.d.ts +1 -1
  202. package/dest/file-store/local.d.ts +1 -1
  203. package/dest/file-store/local.d.ts.map +1 -1
  204. package/dest/file-store/s3.d.ts +1 -1
  205. package/dest/file-store/s3.d.ts.map +1 -1
  206. package/dest/file-store/s3.js +3 -7
  207. package/dest/gas/gas.d.ts +9 -1
  208. package/dest/gas/gas.d.ts.map +1 -1
  209. package/dest/gas/gas.js +12 -0
  210. package/dest/gas/gas_fees.d.ts +9 -1
  211. package/dest/gas/gas_fees.d.ts.map +1 -1
  212. package/dest/gas/gas_fees.js +12 -0
  213. package/dest/gas/gas_settings.d.ts +9 -1
  214. package/dest/gas/gas_settings.d.ts.map +1 -1
  215. package/dest/gas/gas_settings.js +12 -0
  216. package/dest/gas/gas_used.d.ts +13 -2
  217. package/dest/gas/gas_used.d.ts.map +1 -1
  218. package/dest/gas/gas_used.js +19 -1
  219. package/dest/gas/index.d.ts +1 -1
  220. package/dest/hash/hash.d.ts +11 -3
  221. package/dest/hash/hash.d.ts.map +1 -1
  222. package/dest/hash/hash.js +11 -1
  223. package/dest/hash/index.d.ts +1 -1
  224. package/dest/hash/map_slot.d.ts +1 -1
  225. package/dest/interfaces/allowed_element.d.ts +5 -5
  226. package/dest/interfaces/api_limit.d.ts +1 -1
  227. package/dest/interfaces/archiver.d.ts +6 -1
  228. package/dest/interfaces/archiver.d.ts.map +1 -1
  229. package/dest/interfaces/archiver.js +22 -14
  230. package/dest/interfaces/aztec-node-admin.d.ts +92 -85
  231. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  232. package/dest/interfaces/aztec-node.d.ts +30 -24
  233. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  234. package/dest/interfaces/aztec-node.js +26 -24
  235. package/dest/interfaces/block-builder.d.ts +3 -2
  236. package/dest/interfaces/block-builder.d.ts.map +1 -1
  237. package/dest/interfaces/client.d.ts +1 -1
  238. package/dest/interfaces/configs.d.ts +31 -21
  239. package/dest/interfaces/configs.d.ts.map +1 -1
  240. package/dest/interfaces/configs.js +3 -1
  241. package/dest/interfaces/epoch-prover.d.ts +7 -7
  242. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  243. package/dest/interfaces/get_logs_response.d.ts +6 -4
  244. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  245. package/dest/interfaces/l2_logs_source.d.ts +4 -3
  246. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  247. package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
  248. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  249. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  250. package/dest/interfaces/p2p.d.ts +3 -2
  251. package/dest/interfaces/p2p.d.ts.map +1 -1
  252. package/dest/interfaces/p2p.js +1 -1
  253. package/dest/interfaces/private_kernel_prover.d.ts +1 -1
  254. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  255. package/dest/interfaces/prover-agent.d.ts +1 -1
  256. package/dest/interfaces/prover-broker.d.ts +1 -1
  257. package/dest/interfaces/prover-client.d.ts +5 -5
  258. package/dest/interfaces/prover-client.d.ts.map +1 -1
  259. package/dest/interfaces/prover-coordination.d.ts +1 -1
  260. package/dest/interfaces/prover-node.d.ts +1 -1
  261. package/dest/interfaces/proving-job-source.d.ts +1 -1
  262. package/dest/interfaces/proving-job.d.ts +1680 -1163
  263. package/dest/interfaces/proving-job.d.ts.map +1 -1
  264. package/dest/interfaces/proving-job.js +3 -2
  265. package/dest/interfaces/public_state_source.d.ts +1 -1
  266. package/dest/interfaces/server.d.ts +1 -1
  267. package/dest/interfaces/server_circuit_prover.d.ts +2 -3
  268. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  269. package/dest/interfaces/service.d.ts +1 -1
  270. package/dest/interfaces/slasher.d.ts +3 -3
  271. package/dest/interfaces/tx_provider.d.ts +3 -3
  272. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  273. package/dest/interfaces/validator.d.ts +27 -19
  274. package/dest/interfaces/validator.d.ts.map +1 -1
  275. package/dest/interfaces/validator.js +2 -1
  276. package/dest/interfaces/world_state.d.ts +9 -26
  277. package/dest/interfaces/world_state.d.ts.map +1 -1
  278. package/dest/interfaces/world_state.js +4 -3
  279. package/dest/kernel/claimed_length_array.d.ts +1 -1
  280. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  281. package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
  282. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
  283. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  284. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +1 -1
  285. package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
  286. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  287. package/dest/kernel/hints/build_transient_data_hints.js +2 -2
  288. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  289. package/dest/kernel/hints/index.d.ts +1 -1
  290. package/dest/kernel/hints/key_validation_hint.d.ts +1 -2
  291. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  292. package/dest/kernel/hints/key_validation_request.d.ts +1 -2
  293. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  294. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -6
  295. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  296. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +1 -1
  297. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  298. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +1 -1
  299. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  300. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
  301. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  302. package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
  303. package/dest/kernel/hints/read_request.d.ts +1 -7
  304. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  305. package/dest/kernel/hints/read_request_hints.d.ts +1 -7
  306. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  307. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -1
  308. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  309. package/dest/kernel/hints/scoped_value_cache.d.ts +1 -1
  310. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  311. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +1 -1
  312. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  313. package/dest/kernel/hints/tree_leaf_read_request.d.ts +1 -1
  314. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  315. package/dest/kernel/index.d.ts +1 -1
  316. package/dest/kernel/log_hash.d.ts +1 -1
  317. package/dest/kernel/log_hash.d.ts.map +1 -1
  318. package/dest/kernel/note_hash.d.ts +1 -1
  319. package/dest/kernel/note_hash.d.ts.map +1 -1
  320. package/dest/kernel/nullifier.d.ts +1 -1
  321. package/dest/kernel/nullifier.d.ts.map +1 -1
  322. package/dest/kernel/padded_side_effects.d.ts +1 -1
  323. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  324. package/dest/kernel/private_accumulated_data.d.ts +1 -23
  325. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  326. package/dest/kernel/private_call_data.d.ts +1 -25
  327. package/dest/kernel/private_call_data.d.ts.map +1 -1
  328. package/dest/kernel/private_call_request.d.ts +1 -16
  329. package/dest/kernel/private_call_request.d.ts.map +1 -1
  330. package/dest/kernel/private_circuit_public_inputs.d.ts +17 -74
  331. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  332. package/dest/kernel/private_circuit_public_inputs.js +17 -5
  333. package/dest/kernel/private_context_inputs.d.ts +1 -1
  334. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  335. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -29
  336. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_kernel_circuit_public_inputs.js +8 -4
  338. package/dest/kernel/private_kernel_data.d.ts +1 -7
  339. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  340. package/dest/kernel/private_kernel_data.js +0 -2
  341. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +7 -20
  342. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  343. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -3
  344. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
  345. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  346. package/dest/kernel/private_kernel_prover_output.d.ts +10 -10
  347. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
  348. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  349. package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
  350. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  351. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
  352. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
  353. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -23
  355. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  356. package/dest/kernel/private_log_data.d.ts +1 -1
  357. package/dest/kernel/private_log_data.d.ts.map +1 -1
  358. package/dest/kernel/private_to_avm_accumulated_data.d.ts +17 -1
  359. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  360. package/dest/kernel/private_to_avm_accumulated_data.js +18 -0
  361. package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
  362. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  363. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +1 -1
  364. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  365. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +1 -1
  366. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  367. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -17
  368. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  369. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +1 -16
  370. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  371. package/dest/kernel/private_validation_requests.d.ts +2 -24
  372. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  373. package/dest/kernel/private_validation_requests.js +5 -13
  374. package/dest/kernel/public_call_request.d.ts +22 -27
  375. package/dest/kernel/public_call_request.d.ts.map +1 -1
  376. package/dest/kernel/public_call_request.js +18 -0
  377. package/dest/kernel/utils/index.d.ts +1 -1
  378. package/dest/kernel/utils/interfaces.d.ts +1 -1
  379. package/dest/kernel/utils/optional_number.d.ts +1 -7
  380. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  381. package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
  382. package/dest/keys/derivation.d.ts +1 -1
  383. package/dest/keys/index.d.ts +1 -1
  384. package/dest/keys/key_types.d.ts +1 -1
  385. package/dest/keys/public_key.d.ts +1 -1
  386. package/dest/keys/public_keys.d.ts +9 -5
  387. package/dest/keys/public_keys.d.ts.map +1 -1
  388. package/dest/keys/public_keys.js +12 -0
  389. package/dest/keys/utils.d.ts +1 -1
  390. package/dest/l1-contracts/index.d.ts +1 -1
  391. package/dest/l1-contracts/slash_factory.d.ts +3 -3
  392. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  393. package/dest/logs/contract_class_log.d.ts +20 -4
  394. package/dest/logs/contract_class_log.d.ts.map +1 -1
  395. package/dest/logs/contract_class_log.js +24 -0
  396. package/dest/logs/debug_log.d.ts +10 -2
  397. package/dest/logs/debug_log.d.ts.map +1 -1
  398. package/dest/logs/debug_log.js +13 -0
  399. package/dest/logs/directional_app_tagging_secret.d.ts +1 -1
  400. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  401. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  402. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  403. package/dest/logs/extended_public_log.d.ts +7 -7
  404. package/dest/logs/extended_public_log.d.ts.map +1 -1
  405. package/dest/logs/index.d.ts +1 -1
  406. package/dest/logs/log_filter.d.ts +1 -1
  407. package/dest/logs/log_id.d.ts +8 -8
  408. package/dest/logs/log_id.d.ts.map +1 -1
  409. package/dest/logs/log_id.js +5 -4
  410. package/dest/logs/log_with_tx_data.d.ts +1 -1
  411. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  412. package/dest/logs/message_context.d.ts +1 -1
  413. package/dest/logs/message_context.d.ts.map +1 -1
  414. package/dest/logs/pending_tagged_log.d.ts +1 -1
  415. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  416. package/dest/logs/pre_tag.d.ts +1 -1
  417. package/dest/logs/private_log.d.ts +10 -2
  418. package/dest/logs/private_log.d.ts.map +1 -1
  419. package/dest/logs/private_log.js +14 -5
  420. package/dest/logs/public_log.d.ts +9 -1
  421. package/dest/logs/public_log.d.ts.map +1 -1
  422. package/dest/logs/public_log.js +9 -0
  423. package/dest/logs/shared_secret_derivation.d.ts +1 -1
  424. package/dest/logs/tx_scoped_l2_log.d.ts +14 -11
  425. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  426. package/dest/logs/tx_scoped_l2_log.js +4 -3
  427. package/dest/messaging/in_hash.d.ts +4 -0
  428. package/dest/messaging/in_hash.d.ts.map +1 -0
  429. package/dest/messaging/in_hash.js +8 -0
  430. package/dest/messaging/inbox_leaf.d.ts +1 -3
  431. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  432. package/dest/messaging/index.d.ts +3 -1
  433. package/dest/messaging/index.d.ts.map +1 -1
  434. package/dest/messaging/index.js +2 -0
  435. package/dest/messaging/l1_actor.d.ts +1 -7
  436. package/dest/messaging/l1_actor.d.ts.map +1 -1
  437. package/dest/messaging/l1_to_l2_message.d.ts +1 -6
  438. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  439. package/dest/messaging/l1_to_l2_message_source.d.ts +10 -3
  440. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  441. package/dest/messaging/l2_actor.d.ts +1 -7
  442. package/dest/messaging/l2_actor.d.ts.map +1 -1
  443. package/dest/messaging/l2_to_l1_membership.d.ts +4 -3
  444. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  445. package/dest/messaging/l2_to_l1_membership.js +2 -2
  446. package/dest/messaging/l2_to_l1_message.d.ts +17 -1
  447. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  448. package/dest/messaging/l2_to_l1_message.js +18 -0
  449. package/dest/messaging/out_hash.d.ts +5 -0
  450. package/dest/messaging/out_hash.d.ts.map +1 -0
  451. package/dest/messaging/out_hash.js +28 -0
  452. package/dest/noir/index.d.ts +7 -7
  453. package/dest/noir/index.d.ts.map +1 -1
  454. package/dest/noir/index.js +6 -6
  455. package/dest/note/comparator.d.ts +1 -1
  456. package/dest/note/index.d.ts +2 -2
  457. package/dest/note/index.d.ts.map +1 -1
  458. package/dest/note/index.js +1 -1
  459. package/dest/note/note.d.ts +2 -17
  460. package/dest/note/note.d.ts.map +1 -1
  461. package/dest/note/note_dao.d.ts +75 -0
  462. package/dest/note/note_dao.d.ts.map +1 -0
  463. package/dest/note/note_dao.js +106 -0
  464. package/dest/note/note_status.d.ts +1 -1
  465. package/dest/note/notes_filter.d.ts +3 -1
  466. package/dest/note/notes_filter.d.ts.map +1 -1
  467. package/dest/note/notes_filter.js +1 -0
  468. package/dest/p2p/attestation_utils.d.ts +1 -1
  469. package/dest/p2p/block_attestation.d.ts +5 -12
  470. package/dest/p2p/block_attestation.d.ts.map +1 -1
  471. package/dest/p2p/block_proposal.d.ts +3 -6
  472. package/dest/p2p/block_proposal.d.ts.map +1 -1
  473. package/dest/p2p/block_proposal.js +1 -1
  474. package/dest/p2p/client_type.d.ts +1 -1
  475. package/dest/p2p/consensus_payload.d.ts +10 -188
  476. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  477. package/dest/p2p/consensus_payload.js +16 -23
  478. package/dest/p2p/gossipable.d.ts +6 -5
  479. package/dest/p2p/gossipable.d.ts.map +1 -1
  480. package/dest/p2p/gossipable.js +16 -10
  481. package/dest/p2p/index.d.ts +1 -1
  482. package/dest/p2p/interface.d.ts +1 -1
  483. package/dest/p2p/message_validator.d.ts +1 -1
  484. package/dest/p2p/peer_error.d.ts +1 -1
  485. package/dest/p2p/signature_utils.d.ts +1 -1
  486. package/dest/p2p/topic_type.d.ts +1 -1
  487. package/dest/parity/index.d.ts +1 -1
  488. package/dest/parity/parity_base_private_inputs.d.ts +1 -3
  489. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  490. package/dest/parity/parity_public_inputs.d.ts +1 -4
  491. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  492. package/dest/parity/parity_root_private_inputs.d.ts +1 -2
  493. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  494. package/dest/proofs/chonk_proof.d.ts +1 -1
  495. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  496. package/dest/proofs/index.d.ts +1 -1
  497. package/dest/proofs/proof.d.ts +1 -4
  498. package/dest/proofs/proof.d.ts.map +1 -1
  499. package/dest/proofs/proof_data.d.ts +1 -1
  500. package/dest/proofs/proof_data.d.ts.map +1 -1
  501. package/dest/proofs/proving_request_type.d.ts +1 -1
  502. package/dest/proofs/recursive_proof.d.ts +2 -26
  503. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  504. package/dest/rollup/avm_proof_data.d.ts +1 -1
  505. package/dest/rollup/base_rollup_hints.d.ts +1 -34
  506. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  507. package/dest/rollup/block_constant_data.d.ts +1 -12
  508. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  509. package/dest/rollup/block_headers_hash.d.ts +4 -0
  510. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  511. package/dest/rollup/block_headers_hash.js +9 -0
  512. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +1 -4
  513. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  514. package/dest/rollup/block_rollup_public_inputs.d.ts +8 -40
  515. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  516. package/dest/rollup/block_rollup_public_inputs.js +8 -2
  517. package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -76
  518. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  519. package/dest/rollup/block_root_rollup_private_inputs.js +1 -9
  520. package/dest/rollup/checkpoint_constant_data.d.ts +26 -13
  521. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  522. package/dest/rollup/checkpoint_constant_data.js +27 -3
  523. package/dest/rollup/checkpoint_header.d.ts +16 -14
  524. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  525. package/dest/rollup/checkpoint_header.js +40 -13
  526. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +1 -4
  527. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  528. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +1 -25
  529. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  530. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -29
  531. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  532. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +4 -4
  533. package/dest/rollup/epoch_constant_data.d.ts +1 -16
  534. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  535. package/dest/rollup/index.d.ts +2 -1
  536. package/dest/rollup/index.d.ts.map +1 -1
  537. package/dest/rollup/index.js +1 -0
  538. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +1 -1
  539. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  540. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +1 -1
  541. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  542. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +1 -1
  543. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  544. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  545. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  546. package/dest/rollup/root_rollup_private_inputs.d.ts +1 -6
  547. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  548. package/dest/rollup/root_rollup_public_inputs.d.ts +1 -3
  549. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  550. package/dest/rollup/tree_snapshot_diff_hints.d.ts +1 -24
  551. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  552. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +1 -4
  553. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  554. package/dest/rollup/tx_rollup_public_inputs.d.ts +1 -29
  555. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  556. package/dest/schemas/index.d.ts +1 -1
  557. package/dest/schemas/schemas.d.ts +86 -15
  558. package/dest/schemas/schemas.d.ts.map +1 -1
  559. package/dest/schemas/schemas.js +12 -1
  560. package/dest/slashing/empire.d.ts +1 -1
  561. package/dest/slashing/empire.d.ts.map +1 -1
  562. package/dest/slashing/empire.js +5 -4
  563. package/dest/slashing/helpers.d.ts +7 -6
  564. package/dest/slashing/helpers.d.ts.map +1 -1
  565. package/dest/slashing/helpers.js +8 -6
  566. package/dest/slashing/index.d.ts +1 -1
  567. package/dest/slashing/interfaces.d.ts +3 -2
  568. package/dest/slashing/interfaces.d.ts.map +1 -1
  569. package/dest/slashing/serialization.d.ts +1 -1
  570. package/dest/slashing/tally.d.ts +1 -1
  571. package/dest/slashing/types.d.ts +10 -10
  572. package/dest/snapshots/download.d.ts +1 -1
  573. package/dest/snapshots/index.d.ts +1 -1
  574. package/dest/snapshots/types.d.ts +18 -18
  575. package/dest/snapshots/upload.d.ts +1 -1
  576. package/dest/stats/index.d.ts +1 -1
  577. package/dest/stats/stats.d.ts +1 -1
  578. package/dest/tests/factories.d.ts +34 -29
  579. package/dest/tests/factories.d.ts.map +1 -1
  580. package/dest/tests/factories.js +76 -151
  581. package/dest/tests/fixtures.d.ts +1 -1
  582. package/dest/tests/index.d.ts +1 -1
  583. package/dest/tests/jest.d.ts +1 -1
  584. package/dest/tests/mocks.d.ts +54 -23
  585. package/dest/tests/mocks.d.ts.map +1 -1
  586. package/dest/tests/mocks.js +135 -34
  587. package/dest/trees/append_only_tree_snapshot.d.ts +9 -16
  588. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  589. package/dest/trees/append_only_tree_snapshot.js +9 -9
  590. package/dest/trees/database_public_state_source.d.ts +1 -1
  591. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  592. package/dest/trees/index.d.ts +1 -1
  593. package/dest/trees/merkle_tree_id.d.ts +5 -5
  594. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  595. package/dest/trees/nullifier_leaf.d.ts +17 -13
  596. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  597. package/dest/trees/nullifier_leaf.js +24 -0
  598. package/dest/trees/nullifier_membership_witness.d.ts +4 -37
  599. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  600. package/dest/trees/public_data_leaf.d.ts +28 -27
  601. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  602. package/dest/trees/public_data_leaf.js +24 -0
  603. package/dest/trees/public_data_witness.d.ts +11 -45
  604. package/dest/trees/public_data_witness.d.ts.map +1 -1
  605. package/dest/tx/block_header.d.ts +7 -14
  606. package/dest/tx/block_header.d.ts.map +1 -1
  607. package/dest/tx/block_header.js +13 -2
  608. package/dest/tx/call_context.d.ts +6 -18
  609. package/dest/tx/call_context.d.ts.map +1 -1
  610. package/dest/tx/capsule.d.ts +1 -4
  611. package/dest/tx/capsule.d.ts.map +1 -1
  612. package/dest/tx/content_commitment.d.ts +3 -2
  613. package/dest/tx/content_commitment.d.ts.map +1 -1
  614. package/dest/tx/content_commitment.js +10 -2
  615. package/dest/tx/execution_payload.d.ts +37 -0
  616. package/dest/tx/execution_payload.d.ts.map +1 -0
  617. package/dest/tx/execution_payload.js +40 -0
  618. package/dest/tx/function_data.d.ts +4 -6
  619. package/dest/tx/function_data.d.ts.map +1 -1
  620. package/dest/tx/global_variable_builder.d.ts +3 -2
  621. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  622. package/dest/tx/global_variables.d.ts +52 -31
  623. package/dest/tx/global_variables.d.ts.map +1 -1
  624. package/dest/tx/global_variables.js +50 -10
  625. package/dest/tx/hashed_values.d.ts +1 -7
  626. package/dest/tx/hashed_values.d.ts.map +1 -1
  627. package/dest/tx/index.d.ts +2 -1
  628. package/dest/tx/index.d.ts.map +1 -1
  629. package/dest/tx/index.js +1 -0
  630. package/dest/tx/indexed_tx_effect.d.ts +9 -6
  631. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  632. package/dest/tx/indexed_tx_effect.js +5 -2
  633. package/dest/tx/offchain_effect.d.ts +1 -1
  634. package/dest/tx/partial_state_reference.d.ts +4 -7
  635. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  636. package/dest/tx/partial_state_reference.js +10 -10
  637. package/dest/tx/private_execution_result.d.ts +16 -51
  638. package/dest/tx/private_execution_result.d.ts.map +1 -1
  639. package/dest/tx/private_execution_result.js +6 -3
  640. package/dest/tx/private_tx_constant_data.d.ts +1 -16
  641. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  642. package/dest/tx/processed_tx.d.ts +2 -2
  643. package/dest/tx/processed_tx.d.ts.map +1 -1
  644. package/dest/tx/processed_tx.js +4 -1
  645. package/dest/tx/profiling.d.ts +38 -38
  646. package/dest/tx/profiling.d.ts.map +1 -1
  647. package/dest/tx/profiling.js +5 -4
  648. package/dest/tx/protocol_contracts.d.ts +10 -2
  649. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  650. package/dest/tx/protocol_contracts.js +9 -0
  651. package/dest/tx/proven_tx.d.ts +18 -18
  652. package/dest/tx/proven_tx.d.ts.map +1 -1
  653. package/dest/tx/public_call_request_with_calldata.d.ts +9 -7
  654. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  655. package/dest/tx/public_call_request_with_calldata.js +12 -0
  656. package/dest/tx/public_simulation_output.d.ts +3 -1
  657. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  658. package/dest/tx/public_simulation_output.js +8 -1
  659. package/dest/tx/simulated_tx.d.ts +21 -21
  660. package/dest/tx/simulated_tx.d.ts.map +1 -1
  661. package/dest/tx/state_reference.d.ts +10 -12
  662. package/dest/tx/state_reference.d.ts.map +1 -1
  663. package/dest/tx/state_reference.js +9 -9
  664. package/dest/tx/tree_snapshots.d.ts +15 -7
  665. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  666. package/dest/tx/tree_snapshots.js +9 -0
  667. package/dest/tx/tx.d.ts +4 -18
  668. package/dest/tx/tx.d.ts.map +1 -1
  669. package/dest/tx/tx.js +6 -4
  670. package/dest/tx/tx_constant_data.d.ts +1 -1
  671. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  672. package/dest/tx/tx_context.d.ts +1 -2
  673. package/dest/tx/tx_context.d.ts.map +1 -1
  674. package/dest/tx/tx_effect.d.ts +20 -42
  675. package/dest/tx/tx_effect.d.ts.map +1 -1
  676. package/dest/tx/tx_effect.js +54 -59
  677. package/dest/tx/tx_execution_request.d.ts +1 -30
  678. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  679. package/dest/tx/tx_hash.d.ts +1 -2
  680. package/dest/tx/tx_hash.d.ts.map +1 -1
  681. package/dest/tx/tx_receipt.d.ts +4 -9
  682. package/dest/tx/tx_receipt.d.ts.map +1 -1
  683. package/dest/tx/tx_receipt.js +2 -1
  684. package/dest/tx/tx_request.d.ts +1 -6
  685. package/dest/tx/tx_request.d.ts.map +1 -1
  686. package/dest/tx/validator/empty_validator.d.ts +1 -1
  687. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  688. package/dest/tx/validator/error_texts.d.ts +1 -1
  689. package/dest/tx/validator/tx_validator.d.ts +5 -5
  690. package/dest/types/index.d.ts +1 -1
  691. package/dest/types/shared.d.ts +1 -4
  692. package/dest/types/shared.d.ts.map +1 -1
  693. package/dest/update-checker/index.d.ts +1 -1
  694. package/dest/update-checker/update-checker.d.ts +2 -3
  695. package/dest/update-checker/update-checker.d.ts.map +1 -1
  696. package/dest/validators/errors.d.ts +6 -7
  697. package/dest/validators/errors.d.ts.map +1 -1
  698. package/dest/validators/errors.js +2 -4
  699. package/dest/validators/index.d.ts +1 -1
  700. package/dest/validators/schemas.d.ts +266 -208
  701. package/dest/validators/schemas.d.ts.map +1 -1
  702. package/dest/validators/schemas.js +7 -7
  703. package/dest/validators/types.d.ts +10 -9
  704. package/dest/validators/types.d.ts.map +1 -1
  705. package/dest/versioning/index.d.ts +1 -1
  706. package/dest/versioning/versioning.d.ts +1 -1
  707. package/dest/versioning/versioning.d.ts.map +1 -1
  708. package/dest/vks/index.d.ts +1 -1
  709. package/dest/vks/verification_key.d.ts +10 -22
  710. package/dest/vks/verification_key.d.ts.map +1 -1
  711. package/dest/vks/verification_key.js +20 -0
  712. package/dest/vks/vk_data.d.ts +1 -7
  713. package/dest/vks/vk_data.d.ts.map +1 -1
  714. package/dest/world-state/index.d.ts +1 -1
  715. package/dest/world-state/world_state_revision.d.ts +34 -2
  716. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  717. package/dest/world-state/world_state_revision.js +24 -1
  718. package/dest/zkpassport/index.d.ts +1 -1
  719. package/dest/zkpassport/index.d.ts.map +1 -1
  720. package/package.json +12 -11
  721. package/src/abi/abi.ts +4 -4
  722. package/src/abi/contract_artifact.ts +3 -3
  723. package/src/avm/avm.ts +777 -6
  724. package/src/avm/avm_accumulated_data.ts +40 -0
  725. package/src/avm/avm_circuit_public_inputs.ts +40 -0
  726. package/src/avm/message_pack.ts +4 -1
  727. package/src/avm/public_data_write.ts +12 -1
  728. package/src/avm/revert_code.ts +29 -9
  729. package/src/aztec-address/index.ts +26 -2
  730. package/src/block/attestation_info.ts +8 -1
  731. package/src/block/block_parameter.ts +8 -0
  732. package/src/block/body.ts +16 -39
  733. package/src/block/in_block.ts +13 -9
  734. package/src/block/index.ts +2 -1
  735. package/src/block/l2_block.ts +70 -7
  736. package/src/block/l2_block_code_to_purge.ts +6 -4
  737. package/src/block/l2_block_header.ts +19 -5
  738. package/src/block/l2_block_info.ts +10 -9
  739. package/src/block/l2_block_new.ts +176 -0
  740. package/src/block/l2_block_source.ts +48 -29
  741. package/src/block/l2_block_stream/l2_block_stream.ts +10 -5
  742. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -2
  743. package/src/block/proposal/attestations_and_signers.ts +20 -1
  744. package/src/block/published_l2_block.ts +14 -31
  745. package/src/block/test/l2_tips_store_test_suite.ts +8 -3
  746. package/src/block/validate_block_result.ts +9 -7
  747. package/src/checkpoint/checkpoint.ts +88 -0
  748. package/src/checkpoint/index.ts +2 -1
  749. package/src/checkpoint/published_checkpoint.ts +91 -0
  750. package/src/contract/contract_deployment_data.ts +125 -0
  751. package/src/contract/index.ts +1 -0
  752. package/src/contract/interfaces/contract_data_source.ts +2 -1
  753. package/src/contract/private_function_membership_proof.ts +1 -1
  754. package/src/epoch-helpers/index.ts +28 -21
  755. package/src/file-store/http.ts +6 -3
  756. package/src/file-store/s3.ts +3 -7
  757. package/src/gas/gas.ts +14 -0
  758. package/src/gas/gas_fees.ts +14 -0
  759. package/src/gas/gas_settings.ts +19 -0
  760. package/src/gas/gas_used.ts +22 -1
  761. package/src/hash/hash.ts +13 -2
  762. package/src/interfaces/archiver.ts +27 -13
  763. package/src/interfaces/aztec-node.ts +64 -48
  764. package/src/interfaces/block-builder.ts +2 -1
  765. package/src/interfaces/configs.ts +6 -0
  766. package/src/interfaces/epoch-prover.ts +5 -6
  767. package/src/interfaces/l2_logs_source.ts +3 -2
  768. package/src/interfaces/merkle_tree_operations.ts +4 -3
  769. package/src/interfaces/p2p.ts +4 -2
  770. package/src/interfaces/proving-job.ts +14 -5
  771. package/src/interfaces/tx_provider.ts +2 -2
  772. package/src/interfaces/validator.ts +5 -2
  773. package/src/interfaces/world_state.ts +12 -11
  774. package/src/kernel/hints/build_transient_data_hints.ts +2 -2
  775. package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
  776. package/src/kernel/private_circuit_public_inputs.ts +29 -9
  777. package/src/kernel/private_kernel_circuit_public_inputs.ts +7 -0
  778. package/src/kernel/private_kernel_data.ts +0 -2
  779. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +6 -0
  780. package/src/kernel/private_to_avm_accumulated_data.ts +35 -0
  781. package/src/kernel/private_validation_requests.ts +1 -13
  782. package/src/kernel/public_call_request.ts +27 -0
  783. package/src/keys/public_keys.ts +19 -0
  784. package/src/logs/contract_class_log.ts +32 -0
  785. package/src/logs/debug_log.ts +20 -1
  786. package/src/logs/log_id.ts +6 -5
  787. package/src/logs/private_log.ts +19 -3
  788. package/src/logs/public_log.ts +14 -0
  789. package/src/logs/tx_scoped_l2_log.ts +5 -4
  790. package/src/messaging/in_hash.ts +10 -0
  791. package/src/messaging/index.ts +2 -0
  792. package/src/messaging/l1_to_l2_message_source.ts +10 -2
  793. package/src/messaging/l2_to_l1_membership.ts +5 -4
  794. package/src/messaging/l2_to_l1_message.ts +25 -0
  795. package/src/messaging/out_hash.ts +36 -0
  796. package/src/noir/index.ts +6 -6
  797. package/src/note/index.ts +1 -1
  798. package/src/note/note_dao.ts +161 -0
  799. package/src/note/notes_filter.ts +3 -0
  800. package/src/p2p/block_attestation.ts +2 -1
  801. package/src/p2p/block_proposal.ts +3 -2
  802. package/src/p2p/consensus_payload.ts +16 -26
  803. package/src/p2p/gossipable.ts +17 -8
  804. package/src/rollup/block_headers_hash.ts +12 -0
  805. package/src/rollup/block_rollup_public_inputs.ts +8 -0
  806. package/src/rollup/block_root_rollup_private_inputs.ts +0 -9
  807. package/src/rollup/checkpoint_constant_data.ts +43 -4
  808. package/src/rollup/checkpoint_header.ts +48 -22
  809. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +5 -5
  810. package/src/rollup/index.ts +1 -0
  811. package/src/schemas/schemas.ts +18 -0
  812. package/src/slashing/empire.ts +6 -4
  813. package/src/slashing/helpers.ts +17 -12
  814. package/src/slashing/interfaces.ts +3 -1
  815. package/src/tests/factories.ts +213 -229
  816. package/src/tests/mocks.ts +230 -51
  817. package/src/trees/append_only_tree_snapshot.ts +11 -12
  818. package/src/trees/nullifier_leaf.ts +32 -0
  819. package/src/trees/public_data_leaf.ts +32 -0
  820. package/src/tx/block_header.ts +17 -4
  821. package/src/tx/content_commitment.ts +11 -2
  822. package/src/tx/execution_payload.ts +60 -0
  823. package/src/tx/global_variable_builder.ts +2 -1
  824. package/src/tx/global_variables.ts +69 -15
  825. package/src/tx/index.ts +1 -0
  826. package/src/tx/indexed_tx_effect.ts +5 -4
  827. package/src/tx/partial_state_reference.ts +9 -17
  828. package/src/tx/private_execution_result.ts +7 -4
  829. package/src/tx/processed_tx.ts +8 -2
  830. package/src/tx/profiling.ts +4 -6
  831. package/src/tx/protocol_contracts.ts +16 -0
  832. package/src/tx/public_call_request_with_calldata.ts +17 -0
  833. package/src/tx/public_simulation_output.ts +18 -1
  834. package/src/tx/state_reference.ts +9 -15
  835. package/src/tx/tree_snapshots.ts +16 -0
  836. package/src/tx/tx.ts +7 -6
  837. package/src/tx/tx_effect.ts +84 -90
  838. package/src/tx/tx_receipt.ts +3 -2
  839. package/src/validators/errors.ts +3 -4
  840. package/src/validators/schemas.ts +7 -7
  841. package/src/validators/types.ts +9 -8
  842. package/src/vks/verification_key.ts +25 -0
  843. package/src/world-state/world_state_revision.ts +47 -5
  844. package/dest/block/l2_block_number.d.ts +0 -5
  845. package/dest/block/l2_block_number.d.ts.map +0 -1
  846. package/dest/block/l2_block_number.js +0 -6
  847. package/dest/checkpoint/checkpoint_body.d.ts +0 -4
  848. package/dest/checkpoint/checkpoint_body.d.ts.map +0 -1
  849. package/dest/checkpoint/checkpoint_body.js +0 -9
  850. package/dest/note/unique_note.d.ts +0 -43
  851. package/dest/note/unique_note.d.ts.map +0 -1
  852. package/dest/note/unique_note.js +0 -67
  853. package/src/block/l2_block_number.ts +0 -8
  854. package/src/checkpoint/checkpoint_body.ts +0 -10
  855. package/src/note/unique_note.ts +0 -88
@@ -1,3 +1,4 @@
1
+ import { SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import { Buffer32 } from '@aztec/foundation/buffer';
2
3
  import { keccak256, tryRecoverAddress } from '@aztec/foundation/crypto';
3
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
@@ -62,7 +63,7 @@ export class BlockAttestation extends Gossipable {
62
63
  return this.payload.archive;
63
64
  }
64
65
 
65
- get slotNumber(): Fr {
66
+ get slotNumber(): SlotNumber {
66
67
  return this.payload.header.slotNumber;
67
68
  }
68
69
 
@@ -1,3 +1,4 @@
1
+ import { SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import { Buffer32 } from '@aztec/foundation/buffer';
2
3
  import { keccak256, tryRecoverAddress } from '@aztec/foundation/crypto';
3
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
@@ -65,13 +66,13 @@ export class BlockProposal extends Gossipable {
65
66
  return this.payload.archive;
66
67
  }
67
68
 
68
- get slotNumber(): Fr {
69
+ get slotNumber(): SlotNumber {
69
70
  return this.payload.header.slotNumber;
70
71
  }
71
72
 
72
73
  toBlockInfo(): Omit<L2BlockInfo, 'blockNumber'> {
73
74
  return {
74
- slotNumber: this.slotNumber.toNumber(),
75
+ slotNumber: this.slotNumber,
75
76
  lastArchive: this.payload.header.lastArchiveRoot,
76
77
  timestamp: this.payload.header.timestamp,
77
78
  archive: this.archive,
@@ -8,8 +8,8 @@ import { encodeAbiParameters, parseAbiParameters } from 'viem';
8
8
  import { z } from 'zod';
9
9
 
10
10
  import type { L2Block } from '../block/l2_block.js';
11
+ import type { Checkpoint } from '../checkpoint/checkpoint.js';
11
12
  import { CheckpointHeader } from '../rollup/checkpoint_header.js';
12
- import { StateReference } from '../tx/state_reference.js';
13
13
  import type { Signable, SignatureDomainSeparator } from './signature_utils.js';
14
14
 
15
15
  export class ConsensusPayload implements Signable {
@@ -20,8 +20,6 @@ export class ConsensusPayload implements Signable {
20
20
  public readonly header: CheckpointHeader,
21
21
  /** The archive root after the block is added */
22
22
  public readonly archive: Fr,
23
- /** The state reference after the block is added */
24
- public readonly stateReference: StateReference,
25
23
  ) {}
26
24
 
27
25
  static get schema() {
@@ -29,13 +27,12 @@ export class ConsensusPayload implements Signable {
29
27
  .object({
30
28
  header: CheckpointHeader.schema,
31
29
  archive: schemas.Fr,
32
- stateReference: StateReference.schema,
33
30
  })
34
- .transform(obj => new ConsensusPayload(obj.header, obj.archive, obj.stateReference));
31
+ .transform(obj => new ConsensusPayload(obj.header, obj.archive));
35
32
  }
36
33
 
37
34
  static getFields(fields: FieldsOf<ConsensusPayload>) {
38
- return [fields.header, fields.archive, fields.stateReference] as const;
35
+ return [fields.header, fields.archive] as const;
39
36
  }
40
37
 
41
38
  getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer {
@@ -43,59 +40,53 @@ export class ConsensusPayload implements Signable {
43
40
  'uint8, ' + //domainSeperator
44
41
  '(' +
45
42
  'bytes32, ' + // archive
46
- '((bytes32,uint32),((bytes32,uint32),(bytes32,uint32),(bytes32,uint32))), ' + // stateReference
47
43
  '(int256), ' + // oracleInput
48
44
  'bytes32' + // headerHash
49
45
  ')',
50
46
  );
51
47
  const archiveRoot = this.archive.toString();
52
- const stateReference = this.stateReference.toAbi();
53
48
 
54
49
  const headerHash = this.header.hash().toString();
55
50
  const encodedData = encodeAbiParameters(abi, [
56
51
  domainSeparator,
57
- [archiveRoot, stateReference, [0n] /* @todo See #9963 */, headerHash],
52
+ [archiveRoot, [0n] /* @todo See #9963 */, headerHash],
58
53
  ] as const);
59
54
 
60
55
  return hexToBuffer(encodedData);
61
56
  }
62
57
 
63
58
  toBuffer(): Buffer {
64
- return serializeToBuffer([this.header, this.archive, this.stateReference]);
59
+ return serializeToBuffer([this.header, this.archive]);
65
60
  }
66
61
 
67
62
  public equals(other: ConsensusPayload): boolean {
68
- return (
69
- this.header.equals(other.header) &&
70
- this.archive.equals(other.archive) &&
71
- this.stateReference.equals(other.stateReference)
72
- );
63
+ return this.header.equals(other.header) && this.archive.equals(other.archive);
73
64
  }
74
65
 
75
66
  static fromBuffer(buf: Buffer | BufferReader): ConsensusPayload {
76
67
  const reader = BufferReader.asReader(buf);
77
- const payload = new ConsensusPayload(
78
- reader.readObject(CheckpointHeader),
79
- reader.readObject(Fr),
80
- reader.readObject(StateReference),
81
- );
68
+ const payload = new ConsensusPayload(reader.readObject(CheckpointHeader), reader.readObject(Fr));
82
69
  return payload;
83
70
  }
84
71
 
85
72
  static fromFields(fields: FieldsOf<ConsensusPayload>): ConsensusPayload {
86
- return new ConsensusPayload(fields.header, fields.archive, fields.stateReference);
73
+ return new ConsensusPayload(fields.header, fields.archive);
87
74
  }
88
75
 
89
76
  static fromBlock(block: L2Block): ConsensusPayload {
90
- return new ConsensusPayload(block.header.toCheckpointHeader(), block.archive.root, block.header.state);
77
+ return new ConsensusPayload(block.header.toCheckpointHeader(), block.archive.root);
78
+ }
79
+
80
+ static fromCheckpoint(checkpoint: Checkpoint): ConsensusPayload {
81
+ return new ConsensusPayload(checkpoint.header, checkpoint.archive.root);
91
82
  }
92
83
 
93
84
  static empty(): ConsensusPayload {
94
- return new ConsensusPayload(CheckpointHeader.empty(), Fr.ZERO, StateReference.empty());
85
+ return new ConsensusPayload(CheckpointHeader.empty(), Fr.ZERO);
95
86
  }
96
87
 
97
88
  static random(): ConsensusPayload {
98
- return new ConsensusPayload(CheckpointHeader.random(), Fr.random(), StateReference.random());
89
+ return new ConsensusPayload(CheckpointHeader.random(), Fr.random());
99
90
  }
100
91
 
101
92
  /**
@@ -115,11 +106,10 @@ export class ConsensusPayload implements Signable {
115
106
  return {
116
107
  header: this.header.toInspect(),
117
108
  archive: this.archive.toString(),
118
- stateReference: this.stateReference.toInspect(),
119
109
  };
120
110
  }
121
111
 
122
112
  toString() {
123
- return `header: ${this.header.toString()}, archive: ${this.archive.toString()}, stateReference: ${this.stateReference.l1ToL2MessageTree.root.toString()}`;
113
+ return `header: ${this.header.toString()}, archive: ${this.archive.toString()}}`;
124
114
  }
125
115
  }
@@ -1,23 +1,32 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
3
3
 
4
4
  import type { TopicType } from './topic_type.js';
5
5
 
6
6
  export class P2PMessage {
7
- constructor(public readonly payload: Buffer) {}
7
+ constructor(
8
+ public readonly payload: Buffer,
9
+ public readonly timestamp?: Date,
10
+ ) {}
8
11
 
9
- static fromGossipable(message: Gossipable): P2PMessage {
10
- return new P2PMessage(message.toBuffer());
12
+ static fromGossipable(message: Gossipable, instrumentMessages = false): P2PMessage {
13
+ return new P2PMessage(message.toBuffer(), instrumentMessages ? new Date() : undefined);
11
14
  }
12
15
 
13
- static fromMessageData(messageData: Buffer): P2PMessage {
16
+ static fromMessageData(messageData: Buffer, instrumentMessages = false): P2PMessage {
14
17
  const reader = new BufferReader(messageData);
18
+ const timestamp = instrumentMessages ? new Date(Number(reader.readUInt64())) : undefined;
15
19
  const payload = reader.readBuffer();
16
- return new P2PMessage(payload);
20
+ return new P2PMessage(payload, timestamp);
17
21
  }
18
22
 
19
23
  toMessageData(): Buffer {
20
- return serializeToBuffer([serializeToBuffer(this.payload.length, this.payload)]);
24
+ const arr: Buffer[] = [];
25
+ if (this.timestamp) {
26
+ arr.push(bigintToUInt64BE(BigInt(this.timestamp.getTime())));
27
+ }
28
+ arr.push(serializeToBuffer(this.payload.length, this.payload));
29
+ return serializeToBuffer(arr);
21
30
  }
22
31
  }
23
32
 
@@ -35,7 +44,7 @@ export abstract class Gossipable {
35
44
  * A digest of the message information **used for logging only**.
36
45
  * The identifier used for deduplication is `getMsgIdFn` as defined in `encoding.ts` which is a hash over topic and data.
37
46
  */
38
- async p2pMessageIdentifier(): Promise<Buffer32> {
47
+ async p2pMessageLoggingIdentifier(): Promise<Buffer32> {
39
48
  if (this.cachedId) {
40
49
  return this.cachedId;
41
50
  }
@@ -0,0 +1,12 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+ import { computeUnbalancedPoseidonRoot } from '@aztec/foundation/trees';
3
+
4
+ import type { BlockHeader } from '../tx/block_header.js';
5
+
6
+ export async function computeBlockHeadersHash(blockHeaders: BlockHeader[]): Promise<Fr> {
7
+ const blockHeaderHashes = await Promise.all(blockHeaders.map(header => header.hash()));
8
+ // Must match the implementation in merge_block_rollups.nr, with the **wonky** rollup structure
9
+ // (see validate_consecutive_block_rollups.nr > assert_rollups_filled_greedily.nr).
10
+ const blockHeadersHash = await computeUnbalancedPoseidonRoot(blockHeaderHashes.map(hash => hash.toBuffer()));
11
+ return Fr.fromBuffer(blockHeadersHash);
12
+ }
@@ -50,6 +50,12 @@ export class BlockRollupPublicInputs {
50
50
  * Timestamp of the last block in this block range.
51
51
  */
52
52
  public endTimestamp: UInt64,
53
+ /**
54
+ * Hash of the headers of all blocks in this block range. It will be combined with the `blockHeadersHash` from
55
+ * other blocks in the same checkpoint to form a wonky tree. The root of that tree becomes the final hash stored in
56
+ * the checkpoint header, enabling validation of the blocks included in a checkpoint given their headers.
57
+ */
58
+ public blockHeadersHash: Fr,
53
59
  /**
54
60
  * SHA256 hash of l1 to l2 messages.
55
61
  */
@@ -84,6 +90,7 @@ export class BlockRollupPublicInputs {
84
90
  Fr.fromBuffer(reader),
85
91
  Fr.fromBuffer(reader),
86
92
  Fr.fromBuffer(reader),
93
+ Fr.fromBuffer(reader),
87
94
  );
88
95
  }
89
96
 
@@ -98,6 +105,7 @@ export class BlockRollupPublicInputs {
98
105
  this.endSpongeBlob,
99
106
  bigintToUInt64BE(this.startTimestamp),
100
107
  bigintToUInt64BE(this.endTimestamp),
108
+ this.blockHeadersHash,
101
109
  this.inHash,
102
110
  this.outHash,
103
111
  this.accumulatedFees,
@@ -1,4 +1,3 @@
1
- import { SpongeBlob } from '@aztec/blob-lib/types';
2
1
  import { ARCHIVE_HEIGHT, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH } from '@aztec/constants';
3
2
  import { Fr } from '@aztec/foundation/fields';
4
3
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
@@ -157,11 +156,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
157
156
  * The constants of the checkpoint.
158
157
  */
159
158
  public constants: CheckpointConstantData,
160
- /**
161
- * The start sponge blob of this block. No data has been absorbed into it yet, since it's the first block. But the
162
- * number of expected fields must be set to the total number of fields in the entire checkpoint.
163
- */
164
- public startSpongeBlob: SpongeBlob,
165
159
  /**
166
160
  * The timestamp of this block.
167
161
  */
@@ -186,7 +180,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
186
180
  fields.previousArchive,
187
181
  fields.previousState,
188
182
  fields.constants,
189
- fields.startSpongeBlob,
190
183
  fields.timestamp,
191
184
  fields.newL1ToL2MessageSubtreeRootSiblingPath,
192
185
  fields.newArchiveSiblingPath,
@@ -199,7 +192,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
199
192
  this.previousArchive,
200
193
  this.previousState,
201
194
  this.constants,
202
- this.startSpongeBlob,
203
195
  bigintToUInt64BE(this.timestamp),
204
196
  this.newL1ToL2MessageSubtreeRootSiblingPath,
205
197
  this.newArchiveSiblingPath,
@@ -213,7 +205,6 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
213
205
  AppendOnlyTreeSnapshot.fromBuffer(reader),
214
206
  StateReference.fromBuffer(reader),
215
207
  CheckpointConstantData.fromBuffer(reader),
216
- SpongeBlob.fromBuffer(reader),
217
208
  reader.readUInt64(),
218
209
  reader.readArray(L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr),
219
210
  reader.readArray(ARCHIVE_HEIGHT, Fr),
@@ -1,8 +1,11 @@
1
+ import { SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import { EthAddress } from '@aztec/foundation/eth-address';
2
3
  import { Fr } from '@aztec/foundation/fields';
3
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
5
  import type { FieldsOf } from '@aztec/foundation/types';
5
6
 
7
+ import { inspect } from 'util';
8
+
6
9
  import { AztecAddress } from '../aztec-address/index.js';
7
10
  import { GasFees } from '../gas/gas_fees.js';
8
11
 
@@ -22,7 +25,7 @@ export class CheckpointConstantData {
22
25
  /** Identifier of the prover. */
23
26
  public proverId: Fr,
24
27
  /** Slot number of the checkpoint. */
25
- public slotNumber: Fr,
28
+ public slotNumber: SlotNumber,
26
29
  /** Coinbase address of the rollup. */
27
30
  public coinbase: EthAddress,
28
31
  /** Address to receive fees. */
@@ -56,7 +59,7 @@ export class CheckpointConstantData {
56
59
  Fr.ZERO,
57
60
  Fr.ZERO,
58
61
  Fr.ZERO,
59
- Fr.ZERO,
62
+ SlotNumber.ZERO,
60
63
  EthAddress.ZERO,
61
64
  AztecAddress.ZERO,
62
65
  GasFees.empty(),
@@ -64,7 +67,17 @@ export class CheckpointConstantData {
64
67
  }
65
68
 
66
69
  toBuffer() {
67
- return serializeToBuffer(...CheckpointConstantData.getFields(this));
70
+ return serializeToBuffer(
71
+ this.chainId,
72
+ this.version,
73
+ this.vkTreeRoot,
74
+ this.protocolContractsHash,
75
+ this.proverId,
76
+ new Fr(this.slotNumber),
77
+ this.coinbase,
78
+ this.feeRecipient,
79
+ this.gasFees,
80
+ );
68
81
  }
69
82
 
70
83
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -75,10 +88,36 @@ export class CheckpointConstantData {
75
88
  Fr.fromBuffer(reader),
76
89
  Fr.fromBuffer(reader),
77
90
  Fr.fromBuffer(reader),
78
- Fr.fromBuffer(reader),
91
+ SlotNumber(Fr.fromBuffer(reader).toNumber()),
79
92
  reader.readObject(EthAddress),
80
93
  reader.readObject(AztecAddress),
81
94
  reader.readObject(GasFees),
82
95
  );
83
96
  }
97
+
98
+ /**
99
+ * Returns the slot number as a SlotNumber branded type.
100
+ * @deprecated Use slotNumber directly instead.
101
+ */
102
+ getSlotNumber(): SlotNumber {
103
+ return this.slotNumber;
104
+ }
105
+
106
+ toInspect() {
107
+ return {
108
+ chainId: this.chainId.toNumber(),
109
+ version: this.version.toNumber(),
110
+ vkTreeRoot: this.vkTreeRoot.toString(),
111
+ protocolContractsHash: this.protocolContractsHash.toString(),
112
+ proverId: this.proverId.toString(),
113
+ slotNumber: this.slotNumber,
114
+ coinbase: this.coinbase.toString(),
115
+ feeRecipient: this.feeRecipient.toString(),
116
+ gasFees: this.gasFees.toInspect(),
117
+ };
118
+ }
119
+
120
+ [inspect.custom]() {
121
+ return `CheckpointConstantData ${inspect(this.toInspect())}`;
122
+ }
84
123
  }
@@ -1,4 +1,5 @@
1
1
  import type { ViemHeader } from '@aztec/ethereum';
2
+ import { SlotNumber } from '@aztec/foundation/branded-types';
2
3
  import { sha256ToField } from '@aztec/foundation/crypto';
3
4
  import { EthAddress } from '@aztec/foundation/eth-address';
4
5
  import { Fr } from '@aztec/foundation/fields';
@@ -20,10 +21,12 @@ export class CheckpointHeader {
20
21
  constructor(
21
22
  /** Root of the archive tree before this block is added. */
22
23
  public lastArchiveRoot: Fr,
24
+ /** Hash of the headers of all blocks in this checkpoint. */
25
+ public blockHeadersHash: Fr,
23
26
  /** Content commitment of the L2 block. */
24
27
  public contentCommitment: ContentCommitment,
25
28
  /** Slot number of the L2 block */
26
- public slotNumber: Fr,
29
+ public slotNumber: SlotNumber,
27
30
  /** Timestamp of the L2 block. */
28
31
  public timestamp: UInt64,
29
32
  /** Recipient of block reward. */
@@ -40,8 +43,9 @@ export class CheckpointHeader {
40
43
  return z
41
44
  .object({
42
45
  lastArchiveRoot: schemas.Fr,
46
+ blockHeadersHash: schemas.Fr,
43
47
  contentCommitment: ContentCommitment.schema,
44
- slotNumber: schemas.Fr,
48
+ slotNumber: schemas.SlotNumber,
45
49
  timestamp: schemas.BigInt,
46
50
  coinbase: schemas.EthAddress,
47
51
  feeRecipient: schemas.AztecAddress,
@@ -54,6 +58,7 @@ export class CheckpointHeader {
54
58
  static getFields(fields: FieldsOf<CheckpointHeader>) {
55
59
  return [
56
60
  fields.lastArchiveRoot,
61
+ fields.blockHeadersHash,
57
62
  fields.contentCommitment,
58
63
  fields.slotNumber,
59
64
  fields.timestamp,
@@ -72,9 +77,10 @@ export class CheckpointHeader {
72
77
  const reader = BufferReader.asReader(buffer);
73
78
 
74
79
  return new CheckpointHeader(
80
+ reader.readObject(Fr),
75
81
  reader.readObject(Fr),
76
82
  reader.readObject(ContentCommitment),
77
- Fr.fromBuffer(reader),
83
+ SlotNumber(Fr.fromBuffer(reader).toNumber()),
78
84
  reader.readUInt64(),
79
85
  reader.readObject(EthAddress),
80
86
  reader.readObject(AztecAddress),
@@ -86,8 +92,9 @@ export class CheckpointHeader {
86
92
  equals(other: CheckpointHeader) {
87
93
  return (
88
94
  this.lastArchiveRoot.equals(other.lastArchiveRoot) &&
95
+ this.blockHeadersHash.equals(other.blockHeadersHash) &&
89
96
  this.contentCommitment.equals(other.contentCommitment) &&
90
- this.slotNumber.equals(other.slotNumber) &&
97
+ this.slotNumber === other.slotNumber &&
91
98
  this.timestamp === other.timestamp &&
92
99
  this.coinbase.equals(other.coinbase) &&
93
100
  this.feeRecipient.equals(other.feeRecipient) &&
@@ -100,8 +107,9 @@ export class CheckpointHeader {
100
107
  // Note: The order here must match the order in the ProposedHeaderLib solidity library.
101
108
  return serializeToBuffer([
102
109
  this.lastArchiveRoot,
110
+ this.blockHeadersHash,
103
111
  this.contentCommitment,
104
- this.slotNumber,
112
+ new Fr(this.slotNumber),
105
113
  bigintToUInt64BE(this.timestamp),
106
114
  this.coinbase,
107
115
  this.feeRecipient,
@@ -117,8 +125,9 @@ export class CheckpointHeader {
117
125
  static empty(fields: Partial<FieldsOf<CheckpointHeader>> = {}) {
118
126
  return CheckpointHeader.from({
119
127
  lastArchiveRoot: Fr.ZERO,
128
+ blockHeadersHash: Fr.ZERO,
120
129
  contentCommitment: ContentCommitment.empty(),
121
- slotNumber: Fr.ZERO,
130
+ slotNumber: SlotNumber.ZERO,
122
131
  timestamp: 0n,
123
132
  coinbase: EthAddress.ZERO,
124
133
  feeRecipient: AztecAddress.ZERO,
@@ -128,24 +137,29 @@ export class CheckpointHeader {
128
137
  });
129
138
  }
130
139
 
131
- static random(): CheckpointHeader {
132
- return new CheckpointHeader(
133
- Fr.random(),
134
- ContentCommitment.random(),
135
- new Fr(BigInt(Math.floor(Math.random() * 1000) + 1)),
136
- BigInt(Math.floor(Date.now() / 1000)),
137
- EthAddress.random(),
138
- new AztecAddress(Fr.random()),
139
- GasFees.random(),
140
- new Fr(BigInt(Math.floor(Math.random() * 1000000))),
141
- );
140
+ static random(
141
+ overrides: Partial<FieldsOf<CheckpointHeader>> & Partial<FieldsOf<ContentCommitment>> = {},
142
+ ): CheckpointHeader {
143
+ return CheckpointHeader.from({
144
+ lastArchiveRoot: Fr.random(),
145
+ blockHeadersHash: Fr.random(),
146
+ contentCommitment: ContentCommitment.random(overrides),
147
+ slotNumber: SlotNumber(Math.floor(Math.random() * 1000) + 1),
148
+ timestamp: BigInt(Math.floor(Date.now() / 1000)),
149
+ coinbase: EthAddress.random(),
150
+ feeRecipient: new AztecAddress(Fr.random()),
151
+ gasFees: GasFees.random(),
152
+ totalManaUsed: new Fr(BigInt(Math.floor(Math.random() * 1000000))),
153
+ ...overrides,
154
+ });
142
155
  }
143
156
 
144
157
  isEmpty(): boolean {
145
158
  return (
146
159
  this.lastArchiveRoot.isZero() &&
160
+ this.blockHeadersHash.isZero() &&
147
161
  this.contentCommitment.isEmpty() &&
148
- this.slotNumber.isZero() &&
162
+ this.slotNumber === 0 &&
149
163
  this.timestamp === 0n &&
150
164
  this.coinbase.isZero() &&
151
165
  this.feeRecipient.isZero() &&
@@ -169,8 +183,9 @@ export class CheckpointHeader {
169
183
  static fromViem(header: ViemHeader) {
170
184
  return new CheckpointHeader(
171
185
  Fr.fromString(header.lastArchiveRoot),
186
+ Fr.fromString(header.blockHeadersHash),
172
187
  ContentCommitment.fromViem(header.contentCommitment),
173
- new Fr(header.slotNumber),
188
+ SlotNumber.fromBigInt(header.slotNumber),
174
189
  header.timestamp,
175
190
  new EthAddress(hexToBuffer(header.coinbase)),
176
191
  new AztecAddress(hexToBuffer(header.feeRecipient)),
@@ -179,11 +194,20 @@ export class CheckpointHeader {
179
194
  );
180
195
  }
181
196
 
197
+ /**
198
+ * Returns the slot number as a SlotNumber branded type.
199
+ * @deprecated Use slotNumber directly instead.
200
+ */
201
+ getSlotNumber(): SlotNumber {
202
+ return this.slotNumber;
203
+ }
204
+
182
205
  toViem(): ViemHeader {
183
206
  return {
184
207
  lastArchiveRoot: this.lastArchiveRoot.toString(),
208
+ blockHeadersHash: this.blockHeadersHash.toString(),
185
209
  contentCommitment: this.contentCommitment.toViem(),
186
- slotNumber: this.slotNumber.toBigInt(),
210
+ slotNumber: BigInt(this.slotNumber),
187
211
  timestamp: this.timestamp,
188
212
  coinbase: this.coinbase.toString(),
189
213
  feeRecipient: `0x${this.feeRecipient.toBuffer().toString('hex').padStart(64, '0')}`,
@@ -198,8 +222,9 @@ export class CheckpointHeader {
198
222
  toInspect() {
199
223
  return {
200
224
  lastArchive: this.lastArchiveRoot.toString(),
225
+ blockHeadersHash: this.blockHeadersHash.toString(),
201
226
  contentCommitment: this.contentCommitment.toInspect(),
202
- slotNumber: this.slotNumber.toBigInt(),
227
+ slotNumber: this.slotNumber,
203
228
  timestamp: this.timestamp,
204
229
  coinbase: this.coinbase.toString(),
205
230
  feeRecipient: this.feeRecipient.toString(),
@@ -212,8 +237,9 @@ export class CheckpointHeader {
212
237
  const gasfees = `da:${this.gasFees.feePerDaGas}, l2:${this.gasFees.feePerL2Gas}`;
213
238
  return `Header {
214
239
  lastArchiveRoot: ${this.lastArchiveRoot.toString()},
240
+ blockHeadersHash: ${this.blockHeadersHash.toString()},
215
241
  contentCommitment: ${inspect(this.contentCommitment)},
216
- slotNumber: ${this.slotNumber.toBigInt()},
242
+ slotNumber: ${this.slotNumber},
217
243
  timestamp: ${this.timestamp},
218
244
  coinbase: ${this.coinbase.toString()},
219
245
  feeRecipient: ${this.feeRecipient.toString()},
@@ -1,5 +1,5 @@
1
1
  import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
2
- import { ARCHIVE_HEIGHT, BLOBS_PER_BLOCK, FIELDS_PER_BLOB } from '@aztec/constants';
2
+ import { ARCHIVE_HEIGHT, BLOBS_PER_CHECKPOINT, FIELDS_PER_BLOB } from '@aztec/constants';
3
3
  import { BLS12Point, Fr } from '@aztec/foundation/fields';
4
4
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
5
5
  import { BufferReader, type Tuple, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -31,13 +31,13 @@ export class CheckpointRootRollupHints {
31
31
  /**
32
32
  * Flat list of all tx effects which will be added to the blob.
33
33
  * Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
34
- * Tuple<Fr, FIELDS_PER_BLOB * BLOBS_PER_BLOCK>
34
+ * Tuple<Fr, FIELDS_PER_BLOB * BLOBS_PER_CHECKPOINT>
35
35
  */
36
36
  public blobFields: Fr[],
37
37
  /**
38
38
  * KZG commitments representing the blob (precomputed in ts, injected to use inside circuit).
39
39
  */
40
- public blobCommitments: Tuple<BLS12Point, typeof BLOBS_PER_BLOCK>,
40
+ public blobCommitments: Tuple<BLS12Point, typeof BLOBS_PER_CHECKPOINT>,
41
41
  /**
42
42
  * The hash of eth blob hashes for this block
43
43
  * See yarn-project/foundation/src/blob/index.ts or body.ts for calculation
@@ -74,8 +74,8 @@ export class CheckpointRootRollupHints {
74
74
  reader.readObject(FinalBlobBatchingChallenges),
75
75
  // Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
76
76
  // reader.readArray(FIELDS_PER_BLOB, Fr),
77
- Array.from({ length: FIELDS_PER_BLOB * BLOBS_PER_BLOCK }, () => Fr.fromBuffer(reader)),
78
- reader.readArray(BLOBS_PER_BLOCK, BLS12Point),
77
+ Array.from({ length: FIELDS_PER_BLOB * BLOBS_PER_CHECKPOINT }, () => Fr.fromBuffer(reader)),
78
+ reader.readArray(BLOBS_PER_CHECKPOINT, BLS12Point),
79
79
  Fr.fromBuffer(reader),
80
80
  );
81
81
  }
@@ -1,6 +1,7 @@
1
1
  export * from './avm_proof_data.js';
2
2
  export * from './base_rollup_hints.js';
3
3
  export * from './block_constant_data.js';
4
+ export * from './block_headers_hash.js';
4
5
  export * from './block_merge_rollup_private_inputs.js';
5
6
  export * from './block_rollup_public_inputs.js';
6
7
  export * from './block_root_rollup_private_inputs.js';
@@ -1,3 +1,4 @@
1
+ import type { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import type { Buffer32 } from '@aztec/foundation/buffer';
2
3
  import type { EthAddress } from '@aztec/foundation/eth-address';
3
4
  import type { Fq, Fr, Point } from '@aztec/foundation/fields';
@@ -10,6 +11,7 @@ import { EventSelector } from '../abi/event_selector.js';
10
11
  import { FunctionSelector } from '../abi/function_selector.js';
11
12
  import { NoteSelector } from '../abi/note_selector.js';
12
13
  import { AztecAddress } from '../aztec-address/index.js';
14
+ import { Gas } from '../gas/gas.js';
13
15
 
14
16
  /**
15
17
  * Validation schemas for common types. Every schema must match its toJSON.
@@ -63,6 +65,19 @@ export const schemas = {
63
65
 
64
66
  /** Accepts a hex string. */
65
67
  EventSelector: EventSelector.schema,
68
+
69
+ /** Accepts a number, bigint, or string and coerces to SlotNumber. */
70
+ SlotNumber: foundationSchemas.SlotNumber as ZodFor<SlotNumber>,
71
+
72
+ /** Accepts a number, bigint, or string and coerces to EpochNumber. */
73
+ EpochNumber: foundationSchemas.EpochNumber as ZodFor<EpochNumber>,
74
+
75
+ GasUsed: z.object({
76
+ totalGas: Gas.schema,
77
+ teardownGas: Gas.schema,
78
+ publicGas: Gas.schema,
79
+ billedGas: Gas.schema,
80
+ }),
66
81
  };
67
82
 
68
83
  export const AbiDecodedSchema: ZodFor<AbiDecoded> = z.union([
@@ -73,6 +88,9 @@ export const AbiDecodedSchema: ZodFor<AbiDecoded> = z.union([
73
88
  z.record(z.lazy(() => AbiDecodedSchema)),
74
89
  ]);
75
90
 
91
+ // C++ only supports null values, which we want to convert to undefined.
92
+ export const NullishToUndefined = (schema: ZodFor<any>) => schema.nullish().transform(x => x ?? undefined);
93
+
76
94
  export {
77
95
  type ZodFor,
78
96
  bufferSchema,