@aztec/stdlib 3.0.0-devnet.2 → 3.0.0-devnet.2-patch.1

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 (1115) hide show
  1. package/dest/abi/abi.d.ts +93 -108
  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 +2 -2
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/authorization_selector.js +2 -1
  7. package/dest/abi/buffer.d.ts +2 -2
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +1 -1
  11. package/dest/abi/contract_artifact.js +3 -3
  12. package/dest/abi/decoder.d.ts +2 -2
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.d.ts +2 -2
  15. package/dest/abi/encoder.d.ts.map +1 -1
  16. package/dest/abi/encoder.js +1 -1
  17. package/dest/abi/event_metadata_definition.d.ts +1 -1
  18. package/dest/abi/event_selector.d.ts +2 -2
  19. package/dest/abi/event_selector.d.ts.map +1 -1
  20. package/dest/abi/event_selector.js +2 -1
  21. package/dest/abi/function_call.d.ts +2 -10
  22. package/dest/abi/function_call.d.ts.map +1 -1
  23. package/dest/abi/function_selector.d.ts +2 -2
  24. package/dest/abi/function_selector.d.ts.map +1 -1
  25. package/dest/abi/function_selector.js +2 -1
  26. package/dest/abi/index.d.ts +1 -1
  27. package/dest/abi/mocked_keys.d.ts +1 -1
  28. package/dest/abi/note_selector.d.ts +2 -2
  29. package/dest/abi/note_selector.d.ts.map +1 -1
  30. package/dest/abi/note_selector.js +2 -2
  31. package/dest/abi/selector.d.ts +2 -2
  32. package/dest/abi/selector.d.ts.map +1 -1
  33. package/dest/abi/selector.js +1 -1
  34. package/dest/abi/utils.d.ts +1 -1
  35. package/dest/auth_witness/auth_witness.d.ts +2 -3
  36. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  37. package/dest/auth_witness/auth_witness.js +2 -2
  38. package/dest/auth_witness/index.d.ts +1 -1
  39. package/dest/avm/avm.d.ts +4253 -1909
  40. package/dest/avm/avm.d.ts.map +1 -1
  41. package/dest/avm/avm.js +591 -16
  42. package/dest/avm/avm_accumulated_data.d.ts +26 -37
  43. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  44. package/dest/avm/avm_accumulated_data.js +19 -1
  45. package/dest/avm/avm_circuit_public_inputs.d.ts +161 -149
  46. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  47. package/dest/avm/avm_circuit_public_inputs.js +10 -1
  48. package/dest/avm/avm_proving_request.d.ts +2031 -1507
  49. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  50. package/dest/avm/contract_storage_read.d.ts +2 -14
  51. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  52. package/dest/avm/contract_storage_read.js +1 -1
  53. package/dest/avm/contract_storage_update_request.d.ts +2 -14
  54. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  55. package/dest/avm/contract_storage_update_request.js +1 -1
  56. package/dest/avm/index.d.ts +1 -1
  57. package/dest/avm/message_pack.d.ts +2 -2
  58. package/dest/avm/message_pack.d.ts.map +1 -1
  59. package/dest/avm/message_pack.js +5 -1
  60. package/dest/avm/public_call_stack_item_compressed.d.ts +2 -4
  61. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  62. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  63. package/dest/avm/public_data_read.d.ts +2 -11
  64. package/dest/avm/public_data_read.d.ts.map +1 -1
  65. package/dest/avm/public_data_read.js +1 -1
  66. package/dest/avm/public_data_update_request.d.ts +2 -11
  67. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  68. package/dest/avm/public_data_update_request.js +1 -1
  69. package/dest/avm/public_data_write.d.ts +14 -12
  70. package/dest/avm/public_data_write.d.ts.map +1 -1
  71. package/dest/avm/public_data_write.js +10 -1
  72. package/dest/avm/public_inner_call_request.d.ts +2 -5
  73. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  74. package/dest/avm/revert_code.d.ts +17 -8
  75. package/dest/avm/revert_code.d.ts.map +1 -1
  76. package/dest/avm/revert_code.js +25 -9
  77. package/dest/aztec-address/index.d.ts +12 -2
  78. package/dest/aztec-address/index.d.ts.map +1 -1
  79. package/dest/aztec-address/index.js +26 -3
  80. package/dest/block/attestation_info.d.ts +3 -1
  81. package/dest/block/attestation_info.d.ts.map +1 -1
  82. package/dest/block/attestation_info.js +5 -2
  83. package/dest/block/block_hash.d.ts +2 -2
  84. package/dest/block/block_hash.d.ts.map +1 -1
  85. package/dest/block/block_hash.js +1 -1
  86. package/dest/block/block_parameter.d.ts +5 -0
  87. package/dest/block/block_parameter.d.ts.map +1 -0
  88. package/dest/block/block_parameter.js +6 -0
  89. package/dest/block/body.d.ts +8 -8
  90. package/dest/block/body.d.ts.map +1 -1
  91. package/dest/block/body.js +11 -27
  92. package/dest/block/in_block.d.ts +30 -19
  93. package/dest/block/in_block.d.ts.map +1 -1
  94. package/dest/block/in_block.js +17 -8
  95. package/dest/block/index.d.ts +3 -2
  96. package/dest/block/index.d.ts.map +1 -1
  97. package/dest/block/index.js +2 -1
  98. package/dest/block/l2_block.d.ts +19 -11
  99. package/dest/block/l2_block.d.ts.map +1 -1
  100. package/dest/block/l2_block.js +58 -5
  101. package/dest/block/l2_block_code_to_purge.d.ts +2 -2
  102. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  103. package/dest/block/l2_block_code_to_purge.js +7 -6
  104. package/dest/block/l2_block_header.d.ts +13 -15
  105. package/dest/block/l2_block_header.d.ts.map +1 -1
  106. package/dest/block/l2_block_header.js +19 -12
  107. package/dest/block/l2_block_info.d.ts +22 -17
  108. package/dest/block/l2_block_info.d.ts.map +1 -1
  109. package/dest/block/l2_block_info.js +8 -7
  110. package/dest/block/l2_block_new.d.ts +130 -0
  111. package/dest/block/l2_block_new.d.ts.map +1 -0
  112. package/dest/block/l2_block_new.js +151 -0
  113. package/dest/block/l2_block_source.d.ts +75 -108
  114. package/dest/block/l2_block_source.d.ts.map +1 -1
  115. package/dest/block/l2_block_source.js +5 -11
  116. package/dest/block/l2_block_stream/index.d.ts +1 -1
  117. package/dest/block/l2_block_stream/interfaces.d.ts +1 -1
  118. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -6
  119. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  120. package/dest/block/l2_block_stream/l2_block_stream.js +4 -3
  121. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -2
  122. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  123. package/dest/block/l2_block_stream/l2_tips_memory_store.js +4 -2
  124. package/dest/block/proposal/attestations_and_signers.d.ts +17 -6
  125. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  126. package/dest/block/proposal/attestations_and_signers.js +14 -0
  127. package/dest/block/proposal/committee_attestation.d.ts +2 -2
  128. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  129. package/dest/block/proposal/index.d.ts +1 -1
  130. package/dest/block/published_l2_block.d.ts +15 -28
  131. package/dest/block/published_l2_block.d.ts.map +1 -1
  132. package/dest/block/published_l2_block.js +12 -27
  133. package/dest/block/test/index.d.ts +1 -1
  134. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  135. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  136. package/dest/block/test/l2_tips_store_test_suite.js +7 -5
  137. package/dest/block/validate_block_result.d.ts +6 -178
  138. package/dest/block/validate_block_result.d.ts.map +1 -1
  139. package/dest/block/validate_block_result.js +4 -3
  140. package/dest/checkpoint/checkpoint.d.ts +138 -0
  141. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  142. package/dest/checkpoint/checkpoint.js +62 -0
  143. package/dest/checkpoint/index.d.ts +3 -2
  144. package/dest/checkpoint/index.d.ts.map +1 -1
  145. package/dest/checkpoint/index.js +2 -1
  146. package/dest/checkpoint/published_checkpoint.d.ts +232 -0
  147. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  148. package/dest/checkpoint/published_checkpoint.js +71 -0
  149. package/dest/config/chain-config.d.ts +1 -1
  150. package/dest/config/index.d.ts +1 -1
  151. package/dest/config/node-rpc-config.d.ts +1 -1
  152. package/dest/contract/artifact_hash.d.ts +3 -3
  153. package/dest/contract/artifact_hash.d.ts.map +1 -1
  154. package/dest/contract/artifact_hash.js +2 -2
  155. package/dest/contract/complete_address.d.ts +2 -5
  156. package/dest/contract/complete_address.d.ts.map +1 -1
  157. package/dest/contract/complete_address.js +1 -1
  158. package/dest/contract/contract_address.d.ts +2 -2
  159. package/dest/contract/contract_address.d.ts.map +1 -1
  160. package/dest/contract/contract_address.js +2 -2
  161. package/dest/contract/contract_class.d.ts +2 -2
  162. package/dest/contract/contract_class.d.ts.map +1 -1
  163. package/dest/contract/contract_class.js +1 -1
  164. package/dest/contract/contract_class_id.d.ts +2 -2
  165. package/dest/contract/contract_class_id.d.ts.map +1 -1
  166. package/dest/contract/contract_class_id.js +2 -2
  167. package/dest/contract/contract_class_metadata.d.ts +1 -1
  168. package/dest/contract/contract_deployment_data.d.ts +119 -0
  169. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  170. package/dest/contract/contract_deployment_data.js +99 -0
  171. package/dest/contract/contract_function_dao.d.ts +1 -1
  172. package/dest/contract/contract_instance.d.ts +2 -2
  173. package/dest/contract/contract_instance.d.ts.map +1 -1
  174. package/dest/contract/contract_instance.js +1 -1
  175. package/dest/contract/contract_instance_update.d.ts +2 -2
  176. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  177. package/dest/contract/contract_instance_update.js +1 -1
  178. package/dest/contract/contract_metadata.d.ts +1 -1
  179. package/dest/contract/deployment_info.d.ts +2 -2
  180. package/dest/contract/deployment_info.d.ts.map +1 -1
  181. package/dest/contract/index.d.ts +2 -1
  182. package/dest/contract/index.d.ts.map +1 -1
  183. package/dest/contract/index.js +1 -0
  184. package/dest/contract/interfaces/contract_class.d.ts +49 -123
  185. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  186. package/dest/contract/interfaces/contract_class.js +17 -0
  187. package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
  188. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  189. package/dest/contract/interfaces/contract_instance.d.ts +39 -29
  190. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  191. package/dest/contract/interfaces/contract_instance.js +25 -0
  192. package/dest/contract/interfaces/contract_instance_update.d.ts +4 -4
  193. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  194. package/dest/contract/interfaces/index.d.ts +1 -1
  195. package/dest/contract/interfaces/node-info.d.ts +1 -1
  196. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
  197. package/dest/contract/partial_address.d.ts +2 -2
  198. package/dest/contract/partial_address.d.ts.map +1 -1
  199. package/dest/contract/private_function.d.ts +2 -2
  200. package/dest/contract/private_function.d.ts.map +1 -1
  201. package/dest/contract/private_function.js +3 -2
  202. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  203. package/dest/contract/private_function_membership_proof.js +3 -3
  204. package/dest/contract/utility_function_membership_proof.d.ts +1 -1
  205. package/dest/contract/utility_function_membership_proof.js +1 -1
  206. package/dest/database-version/index.d.ts +1 -1
  207. package/dest/database-version/version_manager.d.ts +6 -8
  208. package/dest/database-version/version_manager.d.ts.map +1 -1
  209. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  210. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  211. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +2 -2
  212. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  213. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  214. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  215. package/dest/delayed_public_mutable/index.d.ts +1 -1
  216. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
  217. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
  218. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  219. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  220. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  221. package/dest/epoch-helpers/index.d.ts +12 -11
  222. package/dest/epoch-helpers/index.d.ts.map +1 -1
  223. package/dest/epoch-helpers/index.js +10 -9
  224. package/dest/errors/index.d.ts +1 -1
  225. package/dest/errors/proving_error.d.ts +2 -2
  226. package/dest/errors/proving_error.d.ts.map +1 -1
  227. package/dest/errors/simulation_error.d.ts +2 -2
  228. package/dest/errors/simulation_error.d.ts.map +1 -1
  229. package/dest/fees/index.d.ts +1 -1
  230. package/dest/fees/transaction_fee.d.ts +2 -2
  231. package/dest/fees/transaction_fee.d.ts.map +1 -1
  232. package/dest/file-store/factory.d.ts +1 -1
  233. package/dest/file-store/gcs.d.ts +1 -1
  234. package/dest/file-store/gcs.d.ts.map +1 -1
  235. package/dest/file-store/http.d.ts +1 -1
  236. package/dest/file-store/http.d.ts.map +1 -1
  237. package/dest/file-store/http.js +8 -3
  238. package/dest/file-store/index.d.ts +1 -1
  239. package/dest/file-store/interface.d.ts +1 -1
  240. package/dest/file-store/local.d.ts +1 -1
  241. package/dest/file-store/local.d.ts.map +1 -1
  242. package/dest/file-store/s3.d.ts +1 -1
  243. package/dest/file-store/s3.d.ts.map +1 -1
  244. package/dest/file-store/s3.js +3 -7
  245. package/dest/gas/gas.d.ts +10 -2
  246. package/dest/gas/gas.d.ts.map +1 -1
  247. package/dest/gas/gas.js +13 -1
  248. package/dest/gas/gas_fees.d.ts +10 -2
  249. package/dest/gas/gas_fees.d.ts.map +1 -1
  250. package/dest/gas/gas_fees.js +12 -0
  251. package/dest/gas/gas_settings.d.ts +10 -2
  252. package/dest/gas/gas_settings.d.ts.map +1 -1
  253. package/dest/gas/gas_settings.js +13 -1
  254. package/dest/gas/gas_used.d.ts +13 -2
  255. package/dest/gas/gas_used.d.ts.map +1 -1
  256. package/dest/gas/gas_used.js +19 -1
  257. package/dest/gas/index.d.ts +1 -1
  258. package/dest/hash/hash.d.ts +12 -4
  259. package/dest/hash/hash.d.ts.map +1 -1
  260. package/dest/hash/hash.js +14 -3
  261. package/dest/hash/index.d.ts +1 -1
  262. package/dest/hash/map_slot.d.ts +2 -2
  263. package/dest/hash/map_slot.d.ts.map +1 -1
  264. package/dest/hash/map_slot.js +1 -1
  265. package/dest/interfaces/allowed_element.d.ts +6 -6
  266. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  267. package/dest/interfaces/api_limit.d.ts +1 -1
  268. package/dest/interfaces/archiver.d.ts +12 -2
  269. package/dest/interfaces/archiver.d.ts.map +1 -1
  270. package/dest/interfaces/archiver.js +22 -16
  271. package/dest/interfaces/aztec-node-admin.d.ts +93 -85
  272. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  273. package/dest/interfaces/aztec-node.d.ts +30 -32
  274. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  275. package/dest/interfaces/aztec-node.js +26 -26
  276. package/dest/interfaces/block-builder.d.ts +4 -3
  277. package/dest/interfaces/block-builder.d.ts.map +1 -1
  278. package/dest/interfaces/client.d.ts +1 -1
  279. package/dest/interfaces/configs.d.ts +31 -21
  280. package/dest/interfaces/configs.d.ts.map +1 -1
  281. package/dest/interfaces/configs.js +3 -1
  282. package/dest/interfaces/epoch-prover.d.ts +11 -11
  283. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  284. package/dest/interfaces/get_logs_response.d.ts +6 -4
  285. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  286. package/dest/interfaces/l2_logs_source.d.ts +4 -11
  287. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  288. package/dest/interfaces/merkle_tree_operations.d.ts +6 -5
  289. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  290. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  291. package/dest/interfaces/p2p.d.ts +3 -2
  292. package/dest/interfaces/p2p.d.ts.map +1 -1
  293. package/dest/interfaces/p2p.js +1 -1
  294. package/dest/interfaces/private_kernel_prover.d.ts +3 -3
  295. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  296. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  297. package/dest/interfaces/prover-agent.d.ts +1 -1
  298. package/dest/interfaces/prover-broker.d.ts +1 -1
  299. package/dest/interfaces/prover-client.d.ts +5 -5
  300. package/dest/interfaces/prover-client.d.ts.map +1 -1
  301. package/dest/interfaces/prover-coordination.d.ts +1 -1
  302. package/dest/interfaces/prover-node.d.ts +1 -1
  303. package/dest/interfaces/proving-job-source.d.ts +1 -1
  304. package/dest/interfaces/proving-job.d.ts +1784 -1267
  305. package/dest/interfaces/proving-job.d.ts.map +1 -1
  306. package/dest/interfaces/proving-job.js +11 -10
  307. package/dest/interfaces/public_state_source.d.ts +2 -2
  308. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  309. package/dest/interfaces/server.d.ts +1 -1
  310. package/dest/interfaces/server_circuit_prover.d.ts +5 -6
  311. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  312. package/dest/interfaces/service.d.ts +1 -1
  313. package/dest/interfaces/slasher.d.ts +3 -3
  314. package/dest/interfaces/tx_provider.d.ts +3 -3
  315. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  316. package/dest/interfaces/validator.d.ts +28 -20
  317. package/dest/interfaces/validator.d.ts.map +1 -1
  318. package/dest/interfaces/validator.js +2 -1
  319. package/dest/interfaces/world_state.d.ts +9 -26
  320. package/dest/interfaces/world_state.d.ts.map +1 -1
  321. package/dest/interfaces/world_state.js +4 -3
  322. package/dest/kernel/claimed_length_array.d.ts +2 -2
  323. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  324. package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
  325. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
  326. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  327. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +2 -2
  328. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  329. package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
  330. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  331. package/dest/kernel/hints/build_transient_data_hints.js +2 -2
  332. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  333. package/dest/kernel/hints/index.d.ts +1 -1
  334. package/dest/kernel/hints/key_validation_hint.d.ts +2 -3
  335. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  336. package/dest/kernel/hints/key_validation_hint.js +1 -1
  337. package/dest/kernel/hints/key_validation_request.d.ts +4 -4
  338. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  339. package/dest/kernel/hints/key_validation_request.js +2 -1
  340. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +2 -7
  341. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  342. package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
  343. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  344. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  345. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  346. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +1 -1
  347. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  348. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
  349. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  350. package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
  351. package/dest/kernel/hints/read_request.d.ts +2 -8
  352. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  353. package/dest/kernel/hints/read_request.js +1 -1
  354. package/dest/kernel/hints/read_request_hints.d.ts +1 -7
  355. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  356. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +2 -2
  357. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  358. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  359. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  360. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  361. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  362. package/dest/kernel/hints/transient_data_squashing_hint.js +1 -1
  363. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
  364. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  365. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  366. package/dest/kernel/index.d.ts +1 -1
  367. package/dest/kernel/log_hash.d.ts +2 -2
  368. package/dest/kernel/log_hash.d.ts.map +1 -1
  369. package/dest/kernel/log_hash.js +1 -1
  370. package/dest/kernel/note_hash.d.ts +2 -2
  371. package/dest/kernel/note_hash.d.ts.map +1 -1
  372. package/dest/kernel/note_hash.js +1 -1
  373. package/dest/kernel/nullifier.d.ts +2 -2
  374. package/dest/kernel/nullifier.d.ts.map +1 -1
  375. package/dest/kernel/nullifier.js +1 -1
  376. package/dest/kernel/padded_side_effects.d.ts +2 -2
  377. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  378. package/dest/kernel/padded_side_effects.js +1 -1
  379. package/dest/kernel/private_accumulated_data.d.ts +1 -23
  380. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  381. package/dest/kernel/private_call_data.d.ts +2 -26
  382. package/dest/kernel/private_call_data.d.ts.map +1 -1
  383. package/dest/kernel/private_call_data.js +1 -1
  384. package/dest/kernel/private_call_request.d.ts +2 -17
  385. package/dest/kernel/private_call_request.d.ts.map +1 -1
  386. package/dest/kernel/private_call_request.js +1 -1
  387. package/dest/kernel/private_circuit_public_inputs.d.ts +18 -75
  388. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  389. package/dest/kernel/private_circuit_public_inputs.js +18 -6
  390. package/dest/kernel/private_context_inputs.d.ts +2 -2
  391. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  392. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +8 -30
  393. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  394. package/dest/kernel/private_kernel_circuit_public_inputs.js +9 -5
  395. package/dest/kernel/private_kernel_data.d.ts +1 -7
  396. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  397. package/dest/kernel/private_kernel_data.js +0 -2
  398. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +8 -21
  399. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  400. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +8 -4
  401. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
  402. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  403. package/dest/kernel/private_kernel_prover_output.d.ts +14 -14
  404. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  405. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
  406. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  407. package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
  408. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  409. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
  410. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
  411. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  412. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -24
  413. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  414. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +1 -1
  415. package/dest/kernel/private_log_data.d.ts +2 -2
  416. package/dest/kernel/private_log_data.d.ts.map +1 -1
  417. package/dest/kernel/private_to_avm_accumulated_data.d.ts +18 -2
  418. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  419. package/dest/kernel/private_to_avm_accumulated_data.js +19 -1
  420. package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -2
  421. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  422. package/dest/kernel/private_to_public_accumulated_data.js +1 -1
  423. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  424. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  425. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  426. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +2 -2
  427. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  428. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +1 -1
  429. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +2 -18
  430. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  431. package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
  432. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +2 -17
  433. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  434. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +1 -1
  435. package/dest/kernel/private_validation_requests.d.ts +2 -24
  436. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  437. package/dest/kernel/private_validation_requests.js +5 -13
  438. package/dest/kernel/public_call_request.d.ts +23 -28
  439. package/dest/kernel/public_call_request.d.ts.map +1 -1
  440. package/dest/kernel/public_call_request.js +19 -1
  441. package/dest/kernel/utils/index.d.ts +1 -1
  442. package/dest/kernel/utils/interfaces.d.ts +1 -1
  443. package/dest/kernel/utils/optional_number.d.ts +2 -8
  444. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  445. package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
  446. package/dest/keys/derivation.d.ts +4 -3
  447. package/dest/keys/derivation.d.ts.map +1 -1
  448. package/dest/keys/derivation.js +7 -5
  449. package/dest/keys/index.d.ts +1 -1
  450. package/dest/keys/key_types.d.ts +1 -1
  451. package/dest/keys/public_key.d.ts +2 -2
  452. package/dest/keys/public_key.d.ts.map +1 -1
  453. package/dest/keys/public_keys.d.ts +11 -6
  454. package/dest/keys/public_keys.d.ts.map +1 -1
  455. package/dest/keys/public_keys.js +15 -2
  456. package/dest/keys/utils.d.ts +1 -1
  457. package/dest/l1-contracts/index.d.ts +1 -1
  458. package/dest/l1-contracts/slash_factory.d.ts +5 -4
  459. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  460. package/dest/l1-contracts/slash_factory.js +1 -1
  461. package/dest/logs/contract_class_log.d.ts +21 -5
  462. package/dest/logs/contract_class_log.d.ts.map +1 -1
  463. package/dest/logs/contract_class_log.js +26 -2
  464. package/dest/logs/debug_log.d.ts +10 -2
  465. package/dest/logs/debug_log.d.ts.map +1 -1
  466. package/dest/logs/debug_log.js +13 -0
  467. package/dest/logs/directional_app_tagging_secret.d.ts +2 -2
  468. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  469. package/dest/logs/directional_app_tagging_secret.js +4 -4
  470. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  471. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  472. package/dest/logs/extended_public_log.d.ts +7 -7
  473. package/dest/logs/extended_public_log.d.ts.map +1 -1
  474. package/dest/logs/index.d.ts +1 -1
  475. package/dest/logs/log_filter.d.ts +1 -1
  476. package/dest/logs/log_id.d.ts +8 -8
  477. package/dest/logs/log_id.d.ts.map +1 -1
  478. package/dest/logs/log_id.js +5 -4
  479. package/dest/logs/log_with_tx_data.d.ts +2 -2
  480. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  481. package/dest/logs/log_with_tx_data.js +1 -1
  482. package/dest/logs/message_context.d.ts +2 -2
  483. package/dest/logs/message_context.d.ts.map +1 -1
  484. package/dest/logs/message_context.js +1 -1
  485. package/dest/logs/pending_tagged_log.d.ts +2 -2
  486. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  487. package/dest/logs/pending_tagged_log.js +1 -1
  488. package/dest/logs/pre_tag.d.ts +1 -1
  489. package/dest/logs/private_log.d.ts +11 -3
  490. package/dest/logs/private_log.d.ts.map +1 -1
  491. package/dest/logs/private_log.js +15 -6
  492. package/dest/logs/public_log.d.ts +11 -2
  493. package/dest/logs/public_log.d.ts.map +1 -1
  494. package/dest/logs/public_log.js +13 -1
  495. package/dest/logs/shared_secret_derivation.d.ts +2 -2
  496. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  497. package/dest/logs/shared_secret_derivation.js +3 -5
  498. package/dest/logs/tx_scoped_l2_log.d.ts +14 -11
  499. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  500. package/dest/logs/tx_scoped_l2_log.js +4 -3
  501. package/dest/messaging/in_hash.d.ts +4 -0
  502. package/dest/messaging/in_hash.d.ts.map +1 -0
  503. package/dest/messaging/in_hash.js +8 -0
  504. package/dest/messaging/inbox_leaf.d.ts +8 -9
  505. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  506. package/dest/messaging/inbox_leaf.js +10 -9
  507. package/dest/messaging/index.d.ts +3 -1
  508. package/dest/messaging/index.d.ts.map +1 -1
  509. package/dest/messaging/index.js +2 -0
  510. package/dest/messaging/l1_actor.d.ts +2 -8
  511. package/dest/messaging/l1_actor.d.ts.map +1 -1
  512. package/dest/messaging/l1_actor.js +2 -2
  513. package/dest/messaging/l1_to_l2_message.d.ts +2 -7
  514. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  515. package/dest/messaging/l1_to_l2_message.js +2 -2
  516. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
  517. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  518. package/dest/messaging/l2_actor.d.ts +2 -8
  519. package/dest/messaging/l2_actor.d.ts.map +1 -1
  520. package/dest/messaging/l2_actor.js +2 -2
  521. package/dest/messaging/l2_to_l1_membership.d.ts +5 -4
  522. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  523. package/dest/messaging/l2_to_l1_membership.js +3 -3
  524. package/dest/messaging/l2_to_l1_message.d.ts +19 -2
  525. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  526. package/dest/messaging/l2_to_l1_message.js +22 -1
  527. package/dest/messaging/out_hash.d.ts +5 -0
  528. package/dest/messaging/out_hash.d.ts.map +1 -0
  529. package/dest/messaging/out_hash.js +28 -0
  530. package/dest/noir/index.d.ts +7 -7
  531. package/dest/noir/index.d.ts.map +1 -1
  532. package/dest/noir/index.js +6 -6
  533. package/dest/note/comparator.d.ts +1 -1
  534. package/dest/note/index.d.ts +2 -2
  535. package/dest/note/index.d.ts.map +1 -1
  536. package/dest/note/index.js +1 -1
  537. package/dest/note/note.d.ts +3 -18
  538. package/dest/note/note.d.ts.map +1 -1
  539. package/dest/note/note.js +5 -2
  540. package/dest/note/note_dao.d.ts +79 -0
  541. package/dest/note/note_dao.d.ts.map +1 -0
  542. package/dest/note/note_dao.js +112 -0
  543. package/dest/note/note_status.d.ts +1 -1
  544. package/dest/note/notes_filter.d.ts +4 -2
  545. package/dest/note/notes_filter.d.ts.map +1 -1
  546. package/dest/note/notes_filter.js +1 -0
  547. package/dest/p2p/attestation_utils.d.ts +1 -1
  548. package/dest/p2p/block_attestation.d.ts +6 -13
  549. package/dest/p2p/block_attestation.d.ts.map +1 -1
  550. package/dest/p2p/block_attestation.js +2 -1
  551. package/dest/p2p/block_proposal.d.ts +4 -7
  552. package/dest/p2p/block_proposal.d.ts.map +1 -1
  553. package/dest/p2p/block_proposal.js +3 -2
  554. package/dest/p2p/client_type.d.ts +1 -1
  555. package/dest/p2p/consensus_payload.d.ts +11 -189
  556. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  557. package/dest/p2p/consensus_payload.js +17 -24
  558. package/dest/p2p/gossipable.d.ts +10 -17
  559. package/dest/p2p/gossipable.d.ts.map +1 -1
  560. package/dest/p2p/gossipable.js +20 -17
  561. package/dest/p2p/index.d.ts +1 -1
  562. package/dest/p2p/interface.d.ts +1 -1
  563. package/dest/p2p/message_validator.d.ts +1 -1
  564. package/dest/p2p/peer_error.d.ts +1 -1
  565. package/dest/p2p/signature_utils.d.ts +1 -1
  566. package/dest/p2p/signature_utils.d.ts.map +1 -1
  567. package/dest/p2p/signature_utils.js +2 -1
  568. package/dest/p2p/topic_type.d.ts +5 -9
  569. package/dest/p2p/topic_type.d.ts.map +1 -1
  570. package/dest/p2p/topic_type.js +14 -8
  571. package/dest/parity/index.d.ts +1 -1
  572. package/dest/parity/parity_base_private_inputs.d.ts +2 -4
  573. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  574. package/dest/parity/parity_base_private_inputs.js +1 -1
  575. package/dest/parity/parity_public_inputs.d.ts +2 -5
  576. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  577. package/dest/parity/parity_public_inputs.js +1 -1
  578. package/dest/parity/parity_root_private_inputs.d.ts +1 -2
  579. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  580. package/dest/proofs/chonk_proof.d.ts +28 -0
  581. package/dest/proofs/chonk_proof.d.ts.map +1 -0
  582. package/dest/proofs/{client_ivc_proof.js → chonk_proof.js} +24 -23
  583. package/dest/proofs/index.d.ts +2 -2
  584. package/dest/proofs/index.d.ts.map +1 -1
  585. package/dest/proofs/index.js +1 -1
  586. package/dest/proofs/proof.d.ts +2 -5
  587. package/dest/proofs/proof.d.ts.map +1 -1
  588. package/dest/proofs/proof.js +1 -1
  589. package/dest/proofs/proof_data.d.ts +3 -3
  590. package/dest/proofs/proof_data.d.ts.map +1 -1
  591. package/dest/proofs/proving_request_type.d.ts +2 -2
  592. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  593. package/dest/proofs/proving_request_type.js +1 -1
  594. package/dest/proofs/recursive_proof.d.ts +3 -27
  595. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  596. package/dest/proofs/recursive_proof.js +1 -1
  597. package/dest/rollup/avm_proof_data.d.ts +2 -2
  598. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  599. package/dest/rollup/avm_proof_data.js +1 -1
  600. package/dest/rollup/base_rollup_hints.d.ts +2 -35
  601. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  602. package/dest/rollup/base_rollup_hints.js +1 -1
  603. package/dest/rollup/block_constant_data.d.ts +2 -13
  604. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  605. package/dest/rollup/block_constant_data.js +1 -1
  606. package/dest/rollup/block_headers_hash.d.ts +4 -0
  607. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  608. package/dest/rollup/block_headers_hash.js +9 -0
  609. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +1 -4
  610. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  611. package/dest/rollup/block_rollup_public_inputs.d.ts +9 -41
  612. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  613. package/dest/rollup/block_rollup_public_inputs.js +9 -3
  614. package/dest/rollup/block_root_rollup_private_inputs.d.ts +3 -77
  615. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  616. package/dest/rollup/block_root_rollup_private_inputs.js +2 -10
  617. package/dest/rollup/checkpoint_constant_data.d.ts +27 -14
  618. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  619. package/dest/rollup/checkpoint_constant_data.js +28 -4
  620. package/dest/rollup/checkpoint_header.d.ts +18 -16
  621. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  622. package/dest/rollup/checkpoint_header.js +42 -15
  623. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +1 -4
  624. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  625. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +2 -26
  626. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  627. package/dest/rollup/checkpoint_rollup_public_inputs.js +1 -1
  628. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +8 -31
  629. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  630. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +6 -5
  631. package/dest/rollup/epoch_constant_data.d.ts +2 -17
  632. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  633. package/dest/rollup/epoch_constant_data.js +1 -1
  634. package/dest/rollup/index.d.ts +4 -3
  635. package/dest/rollup/index.d.ts.map +1 -1
  636. package/dest/rollup/index.js +3 -2
  637. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +5 -5
  638. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  639. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
  640. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
  641. package/dest/rollup/{public_tube_private_inputs.js → public_chonk_verifier_private_inputs.js} +8 -7
  642. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
  643. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
  644. package/dest/rollup/{public_tube_public_inputs.js → public_chonk_verifier_public_inputs.js} +8 -7
  645. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +5 -5
  646. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  647. package/dest/rollup/public_tx_base_rollup_private_inputs.js +6 -6
  648. package/dest/rollup/root_rollup_private_inputs.d.ts +1 -6
  649. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  650. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -4
  651. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  652. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  653. package/dest/rollup/tree_snapshot_diff_hints.d.ts +2 -25
  654. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  655. package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
  656. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +1 -4
  657. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  658. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -30
  659. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  660. package/dest/rollup/tx_rollup_public_inputs.js +1 -1
  661. package/dest/schemas/index.d.ts +1 -1
  662. package/dest/schemas/schemas.d.ts +88 -16
  663. package/dest/schemas/schemas.d.ts.map +1 -1
  664. package/dest/schemas/schemas.js +12 -1
  665. package/dest/slashing/empire.d.ts +1 -1
  666. package/dest/slashing/empire.d.ts.map +1 -1
  667. package/dest/slashing/empire.js +5 -4
  668. package/dest/slashing/helpers.d.ts +7 -6
  669. package/dest/slashing/helpers.d.ts.map +1 -1
  670. package/dest/slashing/helpers.js +8 -6
  671. package/dest/slashing/index.d.ts +1 -1
  672. package/dest/slashing/interfaces.d.ts +3 -2
  673. package/dest/slashing/interfaces.d.ts.map +1 -1
  674. package/dest/slashing/serialization.d.ts +1 -1
  675. package/dest/slashing/tally.d.ts +1 -1
  676. package/dest/slashing/types.d.ts +10 -10
  677. package/dest/snapshots/download.d.ts +1 -1
  678. package/dest/snapshots/index.d.ts +1 -1
  679. package/dest/snapshots/types.d.ts +18 -18
  680. package/dest/snapshots/upload.d.ts +1 -1
  681. package/dest/stats/index.d.ts +1 -1
  682. package/dest/stats/stats.d.ts +4 -4
  683. package/dest/stats/stats.d.ts.map +1 -1
  684. package/dest/tests/factories.d.ts +40 -34
  685. package/dest/tests/factories.d.ts.map +1 -1
  686. package/dest/tests/factories.js +99 -164
  687. package/dest/tests/fixtures.d.ts +1 -1
  688. package/dest/tests/index.d.ts +1 -1
  689. package/dest/tests/jest.d.ts +1 -1
  690. package/dest/tests/mocks.d.ts +71 -28
  691. package/dest/tests/mocks.d.ts.map +1 -1
  692. package/dest/tests/mocks.js +185 -39
  693. package/dest/trees/append_only_tree_snapshot.d.ts +10 -17
  694. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  695. package/dest/trees/append_only_tree_snapshot.js +10 -10
  696. package/dest/trees/database_public_state_source.d.ts +2 -2
  697. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  698. package/dest/trees/database_public_state_source.js +1 -1
  699. package/dest/trees/index.d.ts +1 -1
  700. package/dest/trees/merkle_tree_id.d.ts +5 -5
  701. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  702. package/dest/trees/nullifier_leaf.d.ts +18 -14
  703. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  704. package/dest/trees/nullifier_leaf.js +25 -1
  705. package/dest/trees/nullifier_membership_witness.d.ts +5 -38
  706. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  707. package/dest/trees/nullifier_membership_witness.js +1 -1
  708. package/dest/trees/public_data_leaf.d.ts +29 -28
  709. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  710. package/dest/trees/public_data_leaf.js +25 -1
  711. package/dest/trees/public_data_witness.d.ts +12 -46
  712. package/dest/trees/public_data_witness.d.ts.map +1 -1
  713. package/dest/trees/public_data_witness.js +1 -1
  714. package/dest/tx/block_header.d.ts +8 -15
  715. package/dest/tx/block_header.d.ts.map +1 -1
  716. package/dest/tx/block_header.js +15 -3
  717. package/dest/tx/call_context.d.ts +7 -19
  718. package/dest/tx/call_context.d.ts.map +1 -1
  719. package/dest/tx/capsule.d.ts +2 -5
  720. package/dest/tx/capsule.d.ts.map +1 -1
  721. package/dest/tx/capsule.js +1 -1
  722. package/dest/tx/content_commitment.d.ts +5 -4
  723. package/dest/tx/content_commitment.d.ts.map +1 -1
  724. package/dest/tx/content_commitment.js +11 -3
  725. package/dest/tx/execution_payload.d.ts +37 -0
  726. package/dest/tx/execution_payload.d.ts.map +1 -0
  727. package/dest/tx/execution_payload.js +40 -0
  728. package/dest/tx/function_data.d.ts +5 -7
  729. package/dest/tx/function_data.d.ts.map +1 -1
  730. package/dest/tx/function_data.js +1 -1
  731. package/dest/tx/global_variable_builder.d.ts +3 -2
  732. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  733. package/dest/tx/global_variables.d.ts +53 -32
  734. package/dest/tx/global_variables.d.ts.map +1 -1
  735. package/dest/tx/global_variables.js +51 -11
  736. package/dest/tx/hashed_values.d.ts +2 -8
  737. package/dest/tx/hashed_values.d.ts.map +1 -1
  738. package/dest/tx/hashed_values.js +1 -1
  739. package/dest/tx/in_tx.d.ts +26 -0
  740. package/dest/tx/in_tx.d.ts.map +1 -0
  741. package/dest/tx/in_tx.js +14 -0
  742. package/dest/tx/index.d.ts +3 -1
  743. package/dest/tx/index.d.ts.map +1 -1
  744. package/dest/tx/index.js +2 -0
  745. package/dest/tx/indexed_tx_effect.d.ts +12 -8
  746. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  747. package/dest/tx/indexed_tx_effect.js +7 -4
  748. package/dest/tx/offchain_effect.d.ts +2 -2
  749. package/dest/tx/offchain_effect.d.ts.map +1 -1
  750. package/dest/tx/offchain_effect.js +1 -1
  751. package/dest/tx/partial_state_reference.d.ts +5 -8
  752. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  753. package/dest/tx/partial_state_reference.js +10 -10
  754. package/dest/tx/private_execution_result.d.ts +17 -52
  755. package/dest/tx/private_execution_result.d.ts.map +1 -1
  756. package/dest/tx/private_execution_result.js +8 -5
  757. package/dest/tx/private_tx_constant_data.d.ts +2 -17
  758. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  759. package/dest/tx/private_tx_constant_data.js +1 -1
  760. package/dest/tx/processed_tx.d.ts +7 -6
  761. package/dest/tx/processed_tx.d.ts.map +1 -1
  762. package/dest/tx/processed_tx.js +10 -9
  763. package/dest/tx/profiling.d.ts +38 -38
  764. package/dest/tx/profiling.d.ts.map +1 -1
  765. package/dest/tx/profiling.js +6 -5
  766. package/dest/tx/protocol_contracts.d.ts +11 -3
  767. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  768. package/dest/tx/protocol_contracts.js +10 -1
  769. package/dest/tx/proven_tx.d.ts +25 -25
  770. package/dest/tx/proven_tx.d.ts.map +1 -1
  771. package/dest/tx/proven_tx.js +8 -8
  772. package/dest/tx/public_call_request_with_calldata.d.ts +10 -8
  773. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  774. package/dest/tx/public_call_request_with_calldata.js +13 -1
  775. package/dest/tx/public_simulation_output.d.ts +4 -2
  776. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  777. package/dest/tx/public_simulation_output.js +9 -2
  778. package/dest/tx/simulated_tx.d.ts +21 -21
  779. package/dest/tx/simulated_tx.d.ts.map +1 -1
  780. package/dest/tx/simulated_tx.js +2 -2
  781. package/dest/tx/state_reference.d.ts +11 -13
  782. package/dest/tx/state_reference.d.ts.map +1 -1
  783. package/dest/tx/state_reference.js +9 -9
  784. package/dest/tx/tree_snapshots.d.ts +16 -8
  785. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  786. package/dest/tx/tree_snapshots.js +9 -0
  787. package/dest/tx/tx.d.ts +8 -22
  788. package/dest/tx/tx.d.ts.map +1 -1
  789. package/dest/tx/tx.js +19 -17
  790. package/dest/tx/tx_constant_data.d.ts +2 -2
  791. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  792. package/dest/tx/tx_constant_data.js +1 -1
  793. package/dest/tx/tx_context.d.ts +2 -3
  794. package/dest/tx/tx_context.d.ts.map +1 -1
  795. package/dest/tx/tx_context.js +1 -1
  796. package/dest/tx/tx_effect.d.ts +21 -43
  797. package/dest/tx/tx_effect.d.ts.map +1 -1
  798. package/dest/tx/tx_effect.js +55 -60
  799. package/dest/tx/tx_execution_request.d.ts +2 -31
  800. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  801. package/dest/tx/tx_execution_request.js +1 -1
  802. package/dest/tx/tx_hash.d.ts +2 -3
  803. package/dest/tx/tx_hash.d.ts.map +1 -1
  804. package/dest/tx/tx_hash.js +1 -1
  805. package/dest/tx/tx_receipt.d.ts +4 -9
  806. package/dest/tx/tx_receipt.d.ts.map +1 -1
  807. package/dest/tx/tx_receipt.js +2 -1
  808. package/dest/tx/tx_request.d.ts +2 -7
  809. package/dest/tx/tx_request.d.ts.map +1 -1
  810. package/dest/tx/tx_request.js +2 -2
  811. package/dest/tx/validator/empty_validator.d.ts +1 -1
  812. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  813. package/dest/tx/validator/error_texts.d.ts +1 -1
  814. package/dest/tx/validator/tx_validator.d.ts +5 -5
  815. package/dest/types/index.d.ts +1 -1
  816. package/dest/types/shared.d.ts +1 -4
  817. package/dest/types/shared.d.ts.map +1 -1
  818. package/dest/update-checker/index.d.ts +1 -1
  819. package/dest/update-checker/update-checker.d.ts +3 -4
  820. package/dest/update-checker/update-checker.d.ts.map +1 -1
  821. package/dest/update-checker/update-checker.js +1 -1
  822. package/dest/validators/errors.d.ts +7 -8
  823. package/dest/validators/errors.d.ts.map +1 -1
  824. package/dest/validators/errors.js +2 -4
  825. package/dest/validators/index.d.ts +1 -1
  826. package/dest/validators/schemas.d.ts +266 -208
  827. package/dest/validators/schemas.d.ts.map +1 -1
  828. package/dest/validators/schemas.js +7 -7
  829. package/dest/validators/types.d.ts +10 -9
  830. package/dest/validators/types.d.ts.map +1 -1
  831. package/dest/versioning/index.d.ts +1 -1
  832. package/dest/versioning/versioning.d.ts +2 -2
  833. package/dest/versioning/versioning.d.ts.map +1 -1
  834. package/dest/vks/index.d.ts +1 -1
  835. package/dest/vks/verification_key.d.ts +11 -23
  836. package/dest/vks/verification_key.d.ts.map +1 -1
  837. package/dest/vks/verification_key.js +21 -1
  838. package/dest/vks/vk_data.d.ts +2 -8
  839. package/dest/vks/vk_data.d.ts.map +1 -1
  840. package/dest/vks/vk_data.js +1 -1
  841. package/dest/world-state/index.d.ts +1 -1
  842. package/dest/world-state/world_state_revision.d.ts +34 -2
  843. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  844. package/dest/world-state/world_state_revision.js +24 -1
  845. package/dest/zkpassport/index.d.ts +3 -5
  846. package/dest/zkpassport/index.d.ts.map +1 -1
  847. package/dest/zkpassport/index.js +7 -12
  848. package/package.json +12 -11
  849. package/src/abi/abi.ts +5 -5
  850. package/src/abi/authorization_selector.ts +3 -2
  851. package/src/abi/buffer.ts +1 -1
  852. package/src/abi/contract_artifact.ts +3 -3
  853. package/src/abi/decoder.ts +1 -1
  854. package/src/abi/encoder.ts +1 -1
  855. package/src/abi/event_selector.ts +3 -2
  856. package/src/abi/function_call.ts +1 -1
  857. package/src/abi/function_selector.ts +3 -2
  858. package/src/abi/note_selector.ts +2 -2
  859. package/src/abi/selector.ts +1 -1
  860. package/src/auth_witness/auth_witness.ts +2 -2
  861. package/src/avm/avm.ts +881 -7
  862. package/src/avm/avm_accumulated_data.ts +41 -1
  863. package/src/avm/avm_circuit_public_inputs.ts +41 -1
  864. package/src/avm/contract_storage_read.ts +1 -1
  865. package/src/avm/contract_storage_update_request.ts +1 -1
  866. package/src/avm/message_pack.ts +6 -2
  867. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  868. package/src/avm/public_data_read.ts +1 -1
  869. package/src/avm/public_data_update_request.ts +1 -1
  870. package/src/avm/public_data_write.ts +13 -2
  871. package/src/avm/public_inner_call_request.ts +1 -1
  872. package/src/avm/revert_code.ts +30 -10
  873. package/src/aztec-address/index.ts +28 -3
  874. package/src/block/attestation_info.ts +9 -2
  875. package/src/block/block_hash.ts +1 -1
  876. package/src/block/block_parameter.ts +8 -0
  877. package/src/block/body.ts +16 -39
  878. package/src/block/in_block.ts +25 -12
  879. package/src/block/index.ts +2 -1
  880. package/src/block/l2_block.ts +79 -8
  881. package/src/block/l2_block_code_to_purge.ts +7 -5
  882. package/src/block/l2_block_header.ts +20 -6
  883. package/src/block/l2_block_info.ts +11 -10
  884. package/src/block/l2_block_new.ts +197 -0
  885. package/src/block/l2_block_source.ts +52 -33
  886. package/src/block/l2_block_stream/l2_block_stream.ts +10 -5
  887. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -2
  888. package/src/block/proposal/attestations_and_signers.ts +21 -2
  889. package/src/block/proposal/committee_attestation.ts +1 -1
  890. package/src/block/published_l2_block.ts +14 -31
  891. package/src/block/test/l2_tips_store_test_suite.ts +9 -4
  892. package/src/block/validate_block_result.ts +9 -7
  893. package/src/checkpoint/checkpoint.ts +88 -0
  894. package/src/checkpoint/index.ts +2 -1
  895. package/src/checkpoint/published_checkpoint.ts +91 -0
  896. package/src/contract/artifact_hash.ts +2 -2
  897. package/src/contract/complete_address.ts +1 -1
  898. package/src/contract/contract_address.ts +2 -2
  899. package/src/contract/contract_class.ts +2 -2
  900. package/src/contract/contract_class_id.ts +2 -2
  901. package/src/contract/contract_deployment_data.ts +125 -0
  902. package/src/contract/contract_instance.ts +1 -1
  903. package/src/contract/contract_instance_update.ts +1 -1
  904. package/src/contract/deployment_info.ts +1 -1
  905. package/src/contract/index.ts +1 -0
  906. package/src/contract/interfaces/contract_class.ts +19 -1
  907. package/src/contract/interfaces/contract_data_source.ts +3 -2
  908. package/src/contract/interfaces/contract_instance.ts +32 -2
  909. package/src/contract/interfaces/contract_instance_update.ts +1 -1
  910. package/src/contract/partial_address.ts +1 -1
  911. package/src/contract/private_function.ts +3 -2
  912. package/src/contract/private_function_membership_proof.ts +3 -3
  913. package/src/contract/utility_function_membership_proof.ts +1 -1
  914. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +2 -2
  915. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  916. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  917. package/src/epoch-helpers/index.ts +28 -21
  918. package/src/errors/simulation_error.ts +1 -1
  919. package/src/fees/transaction_fee.ts +1 -1
  920. package/src/file-store/http.ts +6 -3
  921. package/src/file-store/s3.ts +3 -7
  922. package/src/gas/gas.ts +15 -1
  923. package/src/gas/gas_fees.ts +15 -1
  924. package/src/gas/gas_settings.ts +20 -1
  925. package/src/gas/gas_used.ts +22 -1
  926. package/src/hash/hash.ts +16 -4
  927. package/src/hash/map_slot.ts +2 -2
  928. package/src/interfaces/allowed_element.ts +1 -1
  929. package/src/interfaces/archiver.ts +31 -16
  930. package/src/interfaces/aztec-node.ts +64 -62
  931. package/src/interfaces/block-builder.ts +3 -2
  932. package/src/interfaces/configs.ts +6 -0
  933. package/src/interfaces/epoch-prover.ts +9 -10
  934. package/src/interfaces/l2_logs_source.ts +3 -11
  935. package/src/interfaces/merkle_tree_operations.ts +5 -4
  936. package/src/interfaces/p2p.ts +4 -2
  937. package/src/interfaces/private_kernel_prover.ts +2 -2
  938. package/src/interfaces/proving-job.ts +27 -15
  939. package/src/interfaces/public_state_source.ts +1 -1
  940. package/src/interfaces/server_circuit_prover.ts +7 -5
  941. package/src/interfaces/tx_provider.ts +2 -2
  942. package/src/interfaces/validator.ts +6 -3
  943. package/src/interfaces/world_state.ts +12 -11
  944. package/src/kernel/claimed_length_array.ts +1 -1
  945. package/src/kernel/hints/build_nullifier_read_request_hints.ts +1 -1
  946. package/src/kernel/hints/build_transient_data_hints.ts +2 -2
  947. package/src/kernel/hints/key_validation_hint.ts +1 -1
  948. package/src/kernel/hints/key_validation_request.ts +2 -1
  949. package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
  950. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  951. package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
  952. package/src/kernel/hints/read_request.ts +1 -1
  953. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
  954. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  955. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  956. package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
  957. package/src/kernel/log_hash.ts +1 -1
  958. package/src/kernel/note_hash.ts +1 -1
  959. package/src/kernel/nullifier.ts +1 -1
  960. package/src/kernel/padded_side_effects.ts +1 -1
  961. package/src/kernel/private_call_data.ts +1 -1
  962. package/src/kernel/private_call_request.ts +1 -1
  963. package/src/kernel/private_circuit_public_inputs.ts +30 -10
  964. package/src/kernel/private_context_inputs.ts +1 -1
  965. package/src/kernel/private_kernel_circuit_public_inputs.ts +8 -1
  966. package/src/kernel/private_kernel_data.ts +0 -2
  967. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +7 -1
  968. package/src/kernel/private_kernel_prover_output.ts +4 -4
  969. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +1 -1
  970. package/src/kernel/private_log_data.ts +1 -1
  971. package/src/kernel/private_to_avm_accumulated_data.ts +36 -1
  972. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  973. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  974. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +2 -2
  975. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  976. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +2 -2
  977. package/src/kernel/private_validation_requests.ts +1 -13
  978. package/src/kernel/public_call_request.ts +28 -1
  979. package/src/kernel/utils/optional_number.ts +1 -1
  980. package/src/keys/derivation.ts +7 -5
  981. package/src/keys/public_key.ts +1 -1
  982. package/src/keys/public_keys.ts +22 -2
  983. package/src/l1-contracts/slash_factory.ts +3 -1
  984. package/src/logs/contract_class_log.ts +34 -2
  985. package/src/logs/debug_log.ts +20 -1
  986. package/src/logs/directional_app_tagging_secret.ts +5 -4
  987. package/src/logs/log_id.ts +6 -5
  988. package/src/logs/log_with_tx_data.ts +1 -1
  989. package/src/logs/message_context.ts +1 -1
  990. package/src/logs/pending_tagged_log.ts +1 -1
  991. package/src/logs/private_log.ts +20 -4
  992. package/src/logs/public_log.ts +22 -1
  993. package/src/logs/shared_secret_derivation.ts +4 -6
  994. package/src/logs/tx_scoped_l2_log.ts +5 -4
  995. package/src/messaging/in_hash.ts +10 -0
  996. package/src/messaging/inbox_leaf.ts +11 -10
  997. package/src/messaging/index.ts +2 -0
  998. package/src/messaging/l1_actor.ts +2 -2
  999. package/src/messaging/l1_to_l2_message.ts +2 -2
  1000. package/src/messaging/l1_to_l2_message_source.ts +5 -10
  1001. package/src/messaging/l2_actor.ts +2 -2
  1002. package/src/messaging/l2_to_l1_membership.ts +6 -5
  1003. package/src/messaging/l2_to_l1_message.ts +30 -1
  1004. package/src/messaging/out_hash.ts +36 -0
  1005. package/src/noir/index.ts +6 -6
  1006. package/src/note/index.ts +1 -1
  1007. package/src/note/note.ts +5 -2
  1008. package/src/note/note_dao.ts +182 -0
  1009. package/src/note/notes_filter.ts +4 -1
  1010. package/src/p2p/block_attestation.ts +5 -3
  1011. package/src/p2p/block_proposal.ts +6 -4
  1012. package/src/p2p/consensus_payload.ts +17 -27
  1013. package/src/p2p/gossipable.ts +21 -20
  1014. package/src/p2p/signature_utils.ts +2 -1
  1015. package/src/p2p/topic_type.ts +15 -8
  1016. package/src/parity/parity_base_private_inputs.ts +1 -1
  1017. package/src/parity/parity_public_inputs.ts +1 -1
  1018. package/src/proofs/{client_ivc_proof.ts → chonk_proof.ts} +27 -26
  1019. package/src/proofs/index.ts +1 -1
  1020. package/src/proofs/proof.ts +1 -1
  1021. package/src/proofs/proof_data.ts +2 -2
  1022. package/src/proofs/proving_request_type.ts +1 -1
  1023. package/src/proofs/recursive_proof.ts +1 -1
  1024. package/src/rollup/avm_proof_data.ts +1 -1
  1025. package/src/rollup/base_rollup_hints.ts +1 -1
  1026. package/src/rollup/block_constant_data.ts +1 -1
  1027. package/src/rollup/block_headers_hash.ts +12 -0
  1028. package/src/rollup/block_rollup_public_inputs.ts +9 -1
  1029. package/src/rollup/block_root_rollup_private_inputs.ts +1 -10
  1030. package/src/rollup/checkpoint_constant_data.ts +44 -5
  1031. package/src/rollup/checkpoint_header.ts +51 -25
  1032. package/src/rollup/checkpoint_rollup_public_inputs.ts +1 -1
  1033. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +7 -6
  1034. package/src/rollup/epoch_constant_data.ts +1 -1
  1035. package/src/rollup/index.ts +3 -2
  1036. package/src/rollup/private_tx_base_rollup_private_inputs.ts +2 -2
  1037. package/src/rollup/{public_tube_private_inputs.ts → public_chonk_verifier_private_inputs.ts} +12 -11
  1038. package/src/rollup/{public_tube_public_inputs.ts → public_chonk_verifier_public_inputs.ts} +10 -9
  1039. package/src/rollup/public_tx_base_rollup_private_inputs.ts +4 -4
  1040. package/src/rollup/root_rollup_public_inputs.ts +1 -1
  1041. package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
  1042. package/src/rollup/tx_rollup_public_inputs.ts +1 -1
  1043. package/src/schemas/schemas.ts +20 -1
  1044. package/src/slashing/empire.ts +6 -4
  1045. package/src/slashing/helpers.ts +17 -12
  1046. package/src/slashing/interfaces.ts +3 -1
  1047. package/src/stats/stats.ts +3 -3
  1048. package/src/tests/factories.ts +242 -248
  1049. package/src/tests/mocks.ts +299 -57
  1050. package/src/trees/append_only_tree_snapshot.ts +12 -13
  1051. package/src/trees/database_public_state_source.ts +1 -1
  1052. package/src/trees/nullifier_leaf.ts +33 -1
  1053. package/src/trees/nullifier_membership_witness.ts +1 -1
  1054. package/src/trees/public_data_leaf.ts +33 -1
  1055. package/src/trees/public_data_witness.ts +1 -1
  1056. package/src/tx/block_header.ts +19 -5
  1057. package/src/tx/call_context.ts +1 -1
  1058. package/src/tx/capsule.ts +1 -1
  1059. package/src/tx/content_commitment.ts +13 -4
  1060. package/src/tx/execution_payload.ts +60 -0
  1061. package/src/tx/function_data.ts +1 -1
  1062. package/src/tx/global_variable_builder.ts +2 -1
  1063. package/src/tx/global_variables.ts +70 -16
  1064. package/src/tx/hashed_values.ts +1 -1
  1065. package/src/tx/in_tx.ts +24 -0
  1066. package/src/tx/index.ts +2 -0
  1067. package/src/tx/indexed_tx_effect.ts +6 -5
  1068. package/src/tx/offchain_effect.ts +1 -1
  1069. package/src/tx/partial_state_reference.ts +10 -18
  1070. package/src/tx/private_execution_result.ts +9 -6
  1071. package/src/tx/private_tx_constant_data.ts +1 -1
  1072. package/src/tx/processed_tx.ts +23 -20
  1073. package/src/tx/profiling.ts +5 -7
  1074. package/src/tx/protocol_contracts.ts +18 -2
  1075. package/src/tx/proven_tx.ts +6 -6
  1076. package/src/tx/public_call_request_with_calldata.ts +18 -1
  1077. package/src/tx/public_simulation_output.ts +19 -2
  1078. package/src/tx/simulated_tx.ts +2 -2
  1079. package/src/tx/state_reference.ts +10 -16
  1080. package/src/tx/tree_snapshots.ts +17 -1
  1081. package/src/tx/tx.ts +18 -17
  1082. package/src/tx/tx_constant_data.ts +1 -1
  1083. package/src/tx/tx_context.ts +1 -1
  1084. package/src/tx/tx_effect.ts +85 -91
  1085. package/src/tx/tx_execution_request.ts +1 -1
  1086. package/src/tx/tx_hash.ts +1 -1
  1087. package/src/tx/tx_receipt.ts +3 -2
  1088. package/src/tx/tx_request.ts +2 -2
  1089. package/src/update-checker/update-checker.ts +2 -1
  1090. package/src/validators/errors.ts +4 -5
  1091. package/src/validators/schemas.ts +7 -7
  1092. package/src/validators/types.ts +9 -8
  1093. package/src/versioning/versioning.ts +1 -1
  1094. package/src/vks/verification_key.ts +26 -1
  1095. package/src/vks/vk_data.ts +1 -1
  1096. package/src/world-state/world_state_revision.ts +47 -5
  1097. package/src/zkpassport/index.ts +2 -10
  1098. package/dest/block/l2_block_number.d.ts +0 -5
  1099. package/dest/block/l2_block_number.d.ts.map +0 -1
  1100. package/dest/block/l2_block_number.js +0 -6
  1101. package/dest/checkpoint/checkpoint_body.d.ts +0 -4
  1102. package/dest/checkpoint/checkpoint_body.d.ts.map +0 -1
  1103. package/dest/checkpoint/checkpoint_body.js +0 -9
  1104. package/dest/note/unique_note.d.ts +0 -43
  1105. package/dest/note/unique_note.d.ts.map +0 -1
  1106. package/dest/note/unique_note.js +0 -67
  1107. package/dest/proofs/client_ivc_proof.d.ts +0 -28
  1108. package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
  1109. package/dest/rollup/public_tube_private_inputs.d.ts +0 -21
  1110. package/dest/rollup/public_tube_private_inputs.d.ts.map +0 -1
  1111. package/dest/rollup/public_tube_public_inputs.d.ts +0 -20
  1112. package/dest/rollup/public_tube_public_inputs.d.ts.map +0 -1
  1113. package/src/block/l2_block_number.ts +0 -8
  1114. package/src/checkpoint/checkpoint_body.ts +0 -10
  1115. package/src/note/unique_note.ts +0 -88
@@ -1,9 +1,18 @@
1
+ import {
2
+ BlockNumber,
3
+ BlockNumberSchema,
4
+ type CheckpointNumber,
5
+ type EpochNumber,
6
+ type SlotNumber,
7
+ } from '@aztec/foundation/branded-types';
8
+ import type { Fr } from '@aztec/foundation/curves/bn254';
1
9
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
- import type { Fr } from '@aztec/foundation/fields';
3
10
  import type { TypedEventEmitter } from '@aztec/foundation/types';
4
11
 
5
12
  import { z } from 'zod';
6
13
 
14
+ import type { Checkpoint } from '../checkpoint/checkpoint.js';
15
+ import type { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
7
16
  import type { L1RollupConstants } from '../epoch-helpers/index.js';
8
17
  import type { BlockHeader } from '../tx/block_header.js';
9
18
  import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
@@ -33,27 +42,27 @@ export interface L2BlockSource {
33
42
  * Gets the number of the latest L2 block processed by the block source implementation.
34
43
  * @returns The number of the latest L2 block processed by the block source implementation.
35
44
  */
36
- getBlockNumber(): Promise<number>;
45
+ getBlockNumber(): Promise<BlockNumber>;
37
46
 
38
47
  /**
39
48
  * Gets the number of the latest L2 block proven seen by the block source implementation.
40
49
  * @returns The number of the latest L2 block proven seen by the block source implementation.
41
50
  */
42
- getProvenBlockNumber(): Promise<number>;
51
+ getProvenBlockNumber(): Promise<BlockNumber>;
43
52
 
44
53
  /**
45
54
  * Gets an l2 block. If a negative number is passed, the block returned is the most recent.
46
55
  * @param number - The block number to return (inclusive).
47
56
  * @returns The requested L2 block.
48
57
  */
49
- getBlock(number: number): Promise<L2Block | undefined>;
58
+ getBlock(number: BlockNumber): Promise<L2Block | undefined>;
50
59
 
51
60
  /**
52
61
  * Gets an l2 block header.
53
62
  * @param number - The block number to return or 'latest' for the most recent one.
54
63
  * @returns The requested L2 block header.
55
64
  */
56
- getBlockHeader(number: number | 'latest'): Promise<BlockHeader | undefined>;
65
+ getBlockHeader(number: BlockNumber | 'latest'): Promise<BlockHeader | undefined>;
57
66
 
58
67
  /**
59
68
  * Gets up to `limit` amount of L2 blocks starting from `from`.
@@ -62,10 +71,20 @@ export interface L2BlockSource {
62
71
  * @param proven - If true, only return blocks that have been proven.
63
72
  * @returns The requested L2 blocks.
64
73
  */
65
- getBlocks(from: number, limit: number, proven?: boolean): Promise<L2Block[]>;
74
+ getBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<L2Block[]>;
75
+
76
+ getPublishedCheckpoints(from: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
77
+
78
+ /**
79
+ * Gets a checkpoint by the archive root, which should be the root of the archive tree after the requested checkpoint
80
+ * is applied.
81
+ * @param archive - The new archive root of the checkpoint.
82
+ * @returns The requested checkpoint (or undefined if not found).
83
+ */
84
+ getCheckpointByArchive(archive: Fr): Promise<Checkpoint | undefined>;
66
85
 
67
86
  /** Equivalent to getBlocks but includes publish data. */
68
- getPublishedBlocks(from: number, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
87
+ getPublishedBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
69
88
 
70
89
  /**
71
90
  * Gets a published block by its hash.
@@ -110,34 +129,41 @@ export interface L2BlockSource {
110
129
  getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
111
130
 
112
131
  /**
113
- * Returns the current L2 slot number based on the current L1 timestamp.
132
+ * Returns the current L2 slot number based on the currently synced L1 timestamp.
133
+ */
134
+ getL2SlotNumber(): Promise<SlotNumber | undefined>;
135
+
136
+ /**
137
+ * Returns the current L2 epoch number based on the currently synced L1 timestamp.
114
138
  */
115
- getL2SlotNumber(): Promise<bigint>;
139
+ getL2EpochNumber(): Promise<EpochNumber | undefined>;
116
140
 
117
141
  /**
118
- * Returns the current L2 epoch number based on the current L1 timestamp.
142
+ * Returns all checkpoints for a given epoch.
143
+ * @dev Use this method only with recent epochs, since it walks the checkpoint list backwards.
144
+ * @param epochNumber - The epoch number to return checkpoints for.
119
145
  */
120
- getL2EpochNumber(): Promise<bigint>;
146
+ getCheckpointsForEpoch(epochNumber: EpochNumber): Promise<Checkpoint[]>;
121
147
 
122
148
  /**
123
149
  * Returns all blocks for a given epoch.
124
150
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
125
151
  * @param epochNumber - The epoch number to return blocks for.
126
152
  */
127
- getBlocksForEpoch(epochNumber: bigint): Promise<L2Block[]>;
153
+ getBlocksForEpoch(epochNumber: EpochNumber): Promise<L2Block[]>;
128
154
 
129
155
  /**
130
156
  * Returns all block headers for a given epoch.
131
157
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
132
158
  * @param epochNumber - The epoch number to return headers for.
133
159
  */
134
- getBlockHeadersForEpoch(epochNumber: bigint): Promise<BlockHeader[]>;
160
+ getBlockHeadersForEpoch(epochNumber: EpochNumber): Promise<BlockHeader[]>;
135
161
 
136
162
  /**
137
163
  * Returns whether the given epoch is completed on L1, based on the current L1 and L2 block numbers.
138
164
  * @param epochNumber - The epoch number to check.
139
165
  */
140
- isEpochComplete(epochNumber: bigint): Promise<boolean>;
166
+ isEpochComplete(epochNumber: EpochNumber): Promise<boolean>;
141
167
 
142
168
  /**
143
169
  * Returns the tips of the L2 chain.
@@ -153,7 +179,7 @@ export interface L2BlockSource {
153
179
  getGenesisValues(): Promise<{ genesisArchiveRoot: Fr }>;
154
180
 
155
181
  /** Latest synced L1 timestamp. */
156
- getL1Timestamp(): Promise<bigint>;
182
+ getL1Timestamp(): Promise<bigint | undefined>;
157
183
 
158
184
  /**
159
185
  * Returns whether the latest block in the pending chain on L1 is invalid (ie its attestations are incorrect).
@@ -194,33 +220,26 @@ export type L2BlockTag = 'latest' | 'proven' | 'finalized';
194
220
  export type L2Tips = Record<L2BlockTag, L2BlockId>;
195
221
 
196
222
  /** Identifies a block by number and hash. */
197
- export type L2BlockId = z.infer<typeof L2BlockIdSchema>;
223
+ export type L2BlockId = { number: BlockNumber; hash: string };
198
224
 
199
225
  /** Creates an L2 block id */
200
- export function makeL2BlockId(number: number, hash?: string): L2BlockId {
226
+ export function makeL2BlockId(number: BlockNumber, hash?: string): L2BlockId {
201
227
  if (number !== 0 && !hash) {
202
228
  throw new Error(`Hash is required for non-genesis blocks (got block number ${number})`);
203
229
  }
204
230
  return { number, hash: hash! };
205
231
  }
206
232
 
207
- // TODO(palla/schemas): This package should know what is the block hash of the genesis block 0.
208
- const L2BlockIdSchema = z.union([
209
- z.object({
210
- number: z.literal(0),
211
- hash: z.undefined(),
212
- }),
213
- z.object({
214
- number: z.number(),
215
- hash: z.string(),
216
- }),
217
- ]);
233
+ const L2BlockIdSchema = z.object({
234
+ number: BlockNumberSchema,
235
+ hash: z.string(),
236
+ });
218
237
 
219
238
  export const L2TipsSchema = z.object({
220
239
  latest: L2BlockIdSchema,
221
240
  proven: L2BlockIdSchema,
222
241
  finalized: L2BlockIdSchema,
223
- }) satisfies z.ZodType<L2Tips>;
242
+ });
224
243
 
225
244
  export enum L2BlockSourceEvents {
226
245
  L2PruneDetected = 'l2PruneDetected',
@@ -230,14 +249,14 @@ export enum L2BlockSourceEvents {
230
249
 
231
250
  export type L2BlockProvenEvent = {
232
251
  type: 'l2BlockProven';
233
- blockNumber: bigint;
234
- slotNumber: bigint;
235
- epochNumber: bigint;
252
+ blockNumber: BlockNumber;
253
+ slotNumber: SlotNumber;
254
+ epochNumber: EpochNumber;
236
255
  };
237
256
 
238
257
  export type L2BlockPruneEvent = {
239
258
  type: 'l2PruneDetected';
240
- epochNumber: bigint;
259
+ epochNumber: EpochNumber;
241
260
  blocks: L2Block[];
242
261
  };
243
262
 
@@ -1,3 +1,4 @@
1
+ import { BlockNumber } from '@aztec/foundation/branded-types';
1
2
  import { AbortError } from '@aztec/foundation/error';
2
3
  import { createLogger } from '@aztec/foundation/log';
3
4
  import { RunningPromise } from '@aztec/foundation/running-promise';
@@ -74,7 +75,7 @@ export class L2BlockStream {
74
75
  }
75
76
 
76
77
  if (latestBlockNumber < localTips.latest.number) {
77
- latestBlockNumber = Math.min(latestBlockNumber, sourceTips.latest.number); // see #13471
78
+ latestBlockNumber = BlockNumber(Math.min(latestBlockNumber, sourceTips.latest.number)); // see #13471
78
79
  const hash = sourceCache.get(latestBlockNumber) ?? (await this.getBlockHashFromSource(latestBlockNumber));
79
80
  if (latestBlockNumber !== 0 && !hash) {
80
81
  throw new Error(`Block hash not found in block source for block number ${latestBlockNumber}`);
@@ -85,7 +86,7 @@ export class L2BlockStream {
85
86
 
86
87
  // If we are just starting, use the starting block number from the options.
87
88
  if (latestBlockNumber === 0 && this.opts.startingBlock !== undefined) {
88
- latestBlockNumber = Math.max(this.opts.startingBlock - 1, 0);
89
+ latestBlockNumber = BlockNumber(Math.max(this.opts.startingBlock - 1, 0));
89
90
  }
90
91
 
91
92
  // Only log this entry once (for sanity)
@@ -108,7 +109,11 @@ export class L2BlockStream {
108
109
  while (nextBlockNumber <= sourceTips.latest.number) {
109
110
  const limit = Math.min(this.opts.batchSize ?? 50, sourceTips.latest.number - nextBlockNumber + 1);
110
111
  this.log.trace(`Requesting blocks from ${nextBlockNumber} limit ${limit} proven=${this.opts.proven}`);
111
- const blocks = await this.l2BlockSource.getPublishedBlocks(nextBlockNumber, limit, this.opts.proven);
112
+ const blocks = await this.l2BlockSource.getPublishedBlocks(
113
+ BlockNumber(nextBlockNumber),
114
+ limit,
115
+ this.opts.proven,
116
+ );
112
117
  if (blocks.length === 0) {
113
118
  break;
114
119
  }
@@ -139,7 +144,7 @@ export class L2BlockStream {
139
144
  * @param blockNumber - The block number to test.
140
145
  * @param args - A cache of data already requested from source, to avoid re-requesting it.
141
146
  */
142
- private async areBlockHashesEqualAt(blockNumber: number, args: { sourceCache: BlockHashCache }) {
147
+ private async areBlockHashesEqualAt(blockNumber: BlockNumber, args: { sourceCache: BlockHashCache }) {
143
148
  if (blockNumber === 0) {
144
149
  return true;
145
150
  }
@@ -163,7 +168,7 @@ export class L2BlockStream {
163
168
  return localBlockHash === sourceBlockHash;
164
169
  }
165
170
 
166
- private getBlockHashFromSource(blockNumber: number) {
171
+ private getBlockHashFromSource(blockNumber: BlockNumber) {
167
172
  return this.l2BlockSource
168
173
  .getBlockHeader(blockNumber)
169
174
  .then(h => h?.hash())
@@ -1,3 +1,6 @@
1
+ import { GENESIS_BLOCK_HEADER_HASH } from '@aztec/constants';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
3
+
1
4
  import type { L2Block } from '../l2_block.js';
2
5
  import type { L2BlockId, L2BlockTag, L2Tips } from '../l2_block_source.js';
3
6
  import type { L2BlockStreamEvent, L2BlockStreamEventHandler, L2BlockStreamLocalDataProvider } from './interfaces.js';
@@ -7,7 +10,7 @@ import type { L2BlockStreamEvent, L2BlockStreamEventHandler, L2BlockStreamLocalD
7
10
  * @dev tests in kv-store/src/stores/l2_tips_memory_store.test.ts
8
11
  */
9
12
  export class L2TipsMemoryStore implements L2BlockStreamEventHandler, L2BlockStreamLocalDataProvider {
10
- protected readonly l2TipsStore: Map<L2BlockTag, number> = new Map();
13
+ protected readonly l2TipsStore: Map<L2BlockTag, BlockNumber> = new Map();
11
14
  protected readonly l2BlockHashesStore: Map<number, string> = new Map();
12
15
 
13
16
  public getL2BlockHash(number: number): Promise<string | undefined> {
@@ -25,7 +28,7 @@ export class L2TipsMemoryStore implements L2BlockStreamEventHandler, L2BlockStre
25
28
  private getL2Tip(tag: L2BlockTag): L2BlockId {
26
29
  const blockNumber = this.l2TipsStore.get(tag);
27
30
  if (blockNumber === undefined || blockNumber === 0) {
28
- return { number: 0, hash: undefined };
31
+ return { number: BlockNumber.ZERO, hash: GENESIS_BLOCK_HEADER_HASH.toString() };
29
32
  }
30
33
  const blockHash = this.l2BlockHashesStore.get(blockNumber);
31
34
  if (!blockHash) {
@@ -1,11 +1,11 @@
1
- import type { ViemCommitteeAttestations } from '@aztec/ethereum';
1
+ import type { ViemCommitteeAttestations } from '@aztec/ethereum/contracts';
2
2
  import { hexToBuffer } from '@aztec/foundation/string';
3
3
 
4
4
  import { encodeAbiParameters, parseAbiParameters } from 'viem';
5
5
  import { z } from 'zod';
6
6
 
7
7
  import type { Signable, SignatureDomainSeparator } from '../../p2p/signature_utils.js';
8
- import { CommitteeAttestation } from './committee_attestation.js';
8
+ import { CommitteeAttestation, EthAddress } from './committee_attestation.js';
9
9
 
10
10
  export class CommitteeAttestationsAndSigners implements Signable {
11
11
  constructor(public attestations: CommitteeAttestation[]) {}
@@ -119,3 +119,22 @@ export class CommitteeAttestationsAndSigners implements Signable {
119
119
  };
120
120
  }
121
121
  }
122
+
123
+ /**
124
+ * Malicious extension of CommitteeAttestationsAndSigners that keeps separate attestations and
125
+ * signers. Used for tricking the L1 contract into accepting attestations by reconstructing
126
+ * the correct committee commitment (which relies on the signers, ignoring the signatures)
127
+ * with an invalid set of attestation signatures.
128
+ */
129
+ export class MaliciousCommitteeAttestationsAndSigners extends CommitteeAttestationsAndSigners {
130
+ constructor(
131
+ attestations: CommitteeAttestation[],
132
+ private signers: EthAddress[],
133
+ ) {
134
+ super(attestations);
135
+ }
136
+
137
+ override getSigners(): EthAddress[] {
138
+ return this.signers;
139
+ }
140
+ }
@@ -1,4 +1,4 @@
1
- import type { ViemCommitteeAttestation, ViemCommitteeAttestations } from '@aztec/ethereum';
1
+ import type { ViemCommitteeAttestation, ViemCommitteeAttestations } from '@aztec/ethereum/contracts';
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { Signature } from '@aztec/foundation/eth-signature';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -1,43 +1,18 @@
1
1
  // Ignoring import issue to fix portable inferred type issue in zod schema
2
- import { Buffer32 } from '@aztec/foundation/buffer';
3
- import { randomBigInt } from '@aztec/foundation/crypto';
4
- import { schemas } from '@aztec/foundation/schemas';
5
2
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
6
3
  import type { FieldsOf } from '@aztec/foundation/types';
7
4
 
8
5
  import { z } from 'zod';
9
6
 
7
+ import { L1PublishedData, PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
10
8
  import { L2Block } from './l2_block.js';
11
9
  import { CommitteeAttestation } from './proposal/committee_attestation.js';
12
10
 
13
- export class L1PublishedData {
14
- constructor(
15
- public blockNumber: bigint,
16
- public timestamp: bigint,
17
- public blockHash: string,
18
- ) {}
19
-
20
- static get schema() {
21
- return z.object({
22
- blockNumber: schemas.BigInt,
23
- timestamp: schemas.BigInt,
24
- blockHash: z.string(),
25
- });
26
- }
27
-
28
- static random() {
29
- return new L1PublishedData(
30
- randomBigInt(1000n) + 1n,
31
- BigInt(Math.floor(Date.now() / 1000)),
32
- Buffer32.random().toString(),
33
- );
34
- }
35
-
36
- static fromFields(fields: FieldsOf<L1PublishedData>) {
37
- return new L1PublishedData(fields.blockNumber, fields.timestamp, fields.blockHash);
38
- }
39
- }
40
-
11
+ /**
12
+ * @deprecated `PublishedCheckpoint` is what will be retrieved from L1.
13
+ * L2 blocks do not need to link to L1PublishedData directly.
14
+ * TODO: Create another type (AttestedL2Block?) for an L2 block and its attestations.
15
+ */
41
16
  export class PublishedL2Block {
42
17
  constructor(
43
18
  public block: L2Block,
@@ -79,4 +54,12 @@ export class PublishedL2Block {
79
54
  this.attestations,
80
55
  );
81
56
  }
57
+
58
+ public toPublishedCheckpoint() {
59
+ return new PublishedCheckpoint(this.block.toCheckpoint(), this.l1, this.attestations);
60
+ }
61
+
62
+ static fromPublishedCheckpoint(checkpoint: PublishedCheckpoint) {
63
+ return new PublishedL2Block(L2Block.fromCheckpoint(checkpoint.checkpoint), checkpoint.l1, checkpoint.attestations);
64
+ }
82
65
  }
@@ -1,5 +1,7 @@
1
+ import { GENESIS_BLOCK_HEADER_HASH } from '@aztec/constants';
2
+ import { BlockNumber } from '@aztec/foundation/branded-types';
1
3
  import { times } from '@aztec/foundation/collection';
2
- import { Fr } from '@aztec/foundation/fields';
4
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
5
  import { type L2Block, type L2BlockId, PublishedL2Block } from '@aztec/stdlib/block';
4
6
 
5
7
  import { jestExpect as expect } from '@jest/expect';
@@ -15,17 +17,20 @@ export function testL2TipsStore(makeTipsStore: () => Promise<L2TipsStore>) {
15
17
 
16
18
  const makeBlock = (number: number): PublishedL2Block =>
17
19
  PublishedL2Block.fromFields({
18
- block: { number, hash: () => Promise.resolve(new Fr(number)) } as L2Block,
20
+ block: { number: BlockNumber(number), hash: () => Promise.resolve(new Fr(number)) } as L2Block,
19
21
  l1: { blockNumber: BigInt(number), blockHash: `0x${number}`, timestamp: BigInt(number) },
20
22
  attestations: [],
21
23
  });
22
24
 
23
25
  const makeBlockId = (number: number): L2BlockId => ({
24
- number,
26
+ number: BlockNumber(number),
25
27
  hash: new Fr(number).toString(),
26
28
  });
27
29
 
28
- const makeTip = (number: number) => ({ number, hash: number === 0 ? undefined : new Fr(number).toString() });
30
+ const makeTip = (number: number): L2BlockId => ({
31
+ number: BlockNumber(number),
32
+ hash: number === 0 ? GENESIS_BLOCK_HEADER_HASH.toString() : new Fr(number).toString(),
33
+ });
29
34
 
30
35
  const makeTips = (latest: number, proven: number, finalized: number) => ({
31
36
  latest: makeTip(latest),
@@ -1,3 +1,4 @@
1
+ import { EpochNumber, EpochNumberSchema } from '@aztec/foundation/branded-types';
1
2
  import { EthAddress } from '@aztec/foundation/eth-address';
2
3
  import { type ZodFor, schemas } from '@aztec/foundation/schemas';
3
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -16,7 +17,7 @@ export type ValidateBlockNegativeResult =
16
17
  /** Committee members at the epoch this block was proposed */
17
18
  committee: EthAddress[];
18
19
  /** Epoch in which this block was proposed */
19
- epoch: bigint;
20
+ epoch: EpochNumber;
20
21
  /** Proposer selection seed for the epoch */
21
22
  seed: bigint;
22
23
  /** List of committee members who signed this block proposal */
@@ -33,7 +34,7 @@ export type ValidateBlockNegativeResult =
33
34
  /** Committee members at the epoch this block was proposed */
34
35
  committee: EthAddress[];
35
36
  /** Epoch in which this block was proposed */
36
- epoch: bigint;
37
+ epoch: EpochNumber;
37
38
  /** Proposer selection seed for the epoch */
38
39
  seed: bigint;
39
40
  /** List of committee members who signed this block proposal */
@@ -46,16 +47,17 @@ export type ValidateBlockNegativeResult =
46
47
  invalidIndex: number;
47
48
  };
48
49
 
50
+ // TODO: Rename to ValidateAttestationsResult
49
51
  /** Result type for validating a block attestations */
50
52
  export type ValidateBlockResult = { valid: true } | ValidateBlockNegativeResult;
51
53
 
52
- export const ValidateBlockResultSchema = z.union([
54
+ export const ValidateBlockResultSchema: ZodFor<ValidateBlockResult> = z.union([
53
55
  z.object({ valid: z.literal(true) }),
54
56
  z.object({
55
57
  valid: z.literal(false),
56
58
  block: BlockInfoSchema,
57
59
  committee: z.array(schemas.EthAddress),
58
- epoch: schemas.BigInt,
60
+ epoch: EpochNumberSchema,
59
61
  seed: schemas.BigInt,
60
62
  attestors: z.array(schemas.EthAddress),
61
63
  attestations: z.array(CommitteeAttestation.schema),
@@ -65,14 +67,14 @@ export const ValidateBlockResultSchema = z.union([
65
67
  valid: z.literal(false),
66
68
  block: BlockInfoSchema,
67
69
  committee: z.array(schemas.EthAddress),
68
- epoch: schemas.BigInt,
70
+ epoch: EpochNumberSchema,
69
71
  seed: schemas.BigInt,
70
72
  attestors: z.array(schemas.EthAddress),
71
73
  attestations: z.array(CommitteeAttestation.schema),
72
74
  reason: z.literal('invalid-attestation'),
73
75
  invalidIndex: z.number(),
74
76
  }),
75
- ]) satisfies ZodFor<ValidateBlockResult>;
77
+ ]);
76
78
 
77
79
  export function serializeValidateBlockResult(result: ValidateBlockResult): Buffer {
78
80
  if (result.valid) {
@@ -106,7 +108,7 @@ export function deserializeValidateBlockResult(bufferOrReader: Buffer | BufferRe
106
108
  const reason = reader.readString() as 'insufficient-attestations' | 'invalid-attestation';
107
109
  const block = deserializeBlockInfo(reader.readBuffer());
108
110
  const committee = reader.readVector(EthAddress);
109
- const epoch = reader.readBigInt();
111
+ const epoch = EpochNumber(reader.readNumber());
110
112
  const seed = reader.readBigInt();
111
113
  const attestors = reader.readVector(EthAddress);
112
114
  const attestations = reader.readVector(CommitteeAttestation);
@@ -0,0 +1,88 @@
1
+ import { encodeCheckpointBlobDataFromBlocks } from '@aztec/blob-lib/encoding';
2
+ import { BlockNumber, CheckpointNumber, CheckpointNumberSchema } from '@aztec/foundation/branded-types';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
+ import type { FieldsOf } from '@aztec/foundation/types';
6
+
7
+ import { z } from 'zod';
8
+
9
+ import { L2BlockNew } from '../block/l2_block_new.js';
10
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
11
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
12
+
13
+ export class Checkpoint {
14
+ constructor(
15
+ /** Snapshot of archive tree after the checkpoint is added. */
16
+ public archive: AppendOnlyTreeSnapshot,
17
+ /** Header of the checkpoint. */
18
+ public header: CheckpointHeader,
19
+ /** L2 blocks in the checkpoint. */
20
+ public blocks: L2BlockNew[],
21
+ /** Number of the checkpoint. */
22
+ public number: CheckpointNumber,
23
+ ) {}
24
+
25
+ static get schema() {
26
+ return z
27
+ .object({
28
+ archive: AppendOnlyTreeSnapshot.schema,
29
+ header: CheckpointHeader.schema,
30
+ blocks: z.array(L2BlockNew.schema),
31
+ number: CheckpointNumberSchema,
32
+ })
33
+ .transform(({ archive, header, blocks, number }) => new Checkpoint(archive, header, blocks, number));
34
+ }
35
+
36
+ static from(fields: FieldsOf<Checkpoint>) {
37
+ return new Checkpoint(...Checkpoint.getFields(fields));
38
+ }
39
+
40
+ static getFields(fields: FieldsOf<Checkpoint>) {
41
+ return [fields.archive, fields.header, fields.blocks, fields.number] as const;
42
+ }
43
+
44
+ static fromBuffer(buf: Buffer | BufferReader) {
45
+ const reader = BufferReader.asReader(buf);
46
+ return new Checkpoint(
47
+ reader.readObject(AppendOnlyTreeSnapshot),
48
+ reader.readObject(CheckpointHeader),
49
+ reader.readVector(L2BlockNew),
50
+ CheckpointNumber(reader.readNumber()),
51
+ );
52
+ }
53
+
54
+ public toBuffer() {
55
+ return serializeToBuffer(this.archive, this.header, this.blocks.length, this.blocks, this.number);
56
+ }
57
+
58
+ public toBlobFields(): Fr[] {
59
+ const blocks = this.blocks.map(block => block.toBlockBlobData());
60
+ return encodeCheckpointBlobDataFromBlocks(blocks);
61
+ }
62
+
63
+ public hash(): Fr {
64
+ return this.header.hash();
65
+ }
66
+
67
+ public getState() {
68
+ return this.blocks.at(-1)!.header.state;
69
+ }
70
+
71
+ static async random(
72
+ checkpointNumber = CheckpointNumber(1),
73
+ {
74
+ numBlocks = 1,
75
+ startBlockNumber = 1,
76
+ ...options
77
+ }: { numBlocks?: number; startBlockNumber?: number } & Partial<Parameters<typeof CheckpointHeader.random>[0]> &
78
+ Partial<Parameters<typeof L2BlockNew.random>[1]> = {},
79
+ ) {
80
+ const header = CheckpointHeader.random(options);
81
+
82
+ const blocks = await Promise.all(
83
+ Array.from({ length: numBlocks }, (_, i) => L2BlockNew.random(BlockNumber(startBlockNumber + i), options)),
84
+ );
85
+
86
+ return new Checkpoint(AppendOnlyTreeSnapshot.random(), header, blocks, checkpointNumber);
87
+ }
88
+ }
@@ -1 +1,2 @@
1
- export * from './checkpoint_body.js';
1
+ export * from './checkpoint.js';
2
+ export * from './published_checkpoint.js';
@@ -0,0 +1,91 @@
1
+ // Ignoring import issue to fix portable inferred type issue in zod schema
2
+ import { Buffer32 } from '@aztec/foundation/buffer';
3
+ import { randomBigInt } from '@aztec/foundation/crypto/random';
4
+ import { schemas } from '@aztec/foundation/schemas';
5
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
6
+ import type { FieldsOf } from '@aztec/foundation/types';
7
+
8
+ import { z } from 'zod';
9
+
10
+ import { CommitteeAttestation } from '../block/proposal/committee_attestation.js';
11
+ import { Checkpoint } from './checkpoint.js';
12
+
13
+ export class L1PublishedData {
14
+ constructor(
15
+ public blockNumber: bigint,
16
+ public timestamp: bigint,
17
+ public blockHash: string,
18
+ ) {}
19
+
20
+ static get schema() {
21
+ return z.object({
22
+ blockNumber: schemas.BigInt,
23
+ timestamp: schemas.BigInt,
24
+ blockHash: z.string(),
25
+ });
26
+ }
27
+
28
+ static random() {
29
+ return new L1PublishedData(
30
+ randomBigInt(1000n) + 1n,
31
+ BigInt(Math.floor(Date.now() / 1000)),
32
+ Buffer32.random().toString(),
33
+ );
34
+ }
35
+
36
+ static fromFields(fields: FieldsOf<L1PublishedData>) {
37
+ return new L1PublishedData(fields.blockNumber, fields.timestamp, fields.blockHash);
38
+ }
39
+ }
40
+
41
+ export class PublishedCheckpoint {
42
+ constructor(
43
+ public checkpoint: Checkpoint,
44
+ public l1: L1PublishedData,
45
+ // The attestations for the last block in the checkpoint.
46
+ public attestations: CommitteeAttestation[],
47
+ ) {}
48
+
49
+ static get schema() {
50
+ return z
51
+ .object({
52
+ checkpoint: Checkpoint.schema,
53
+ l1: L1PublishedData.schema,
54
+ attestations: z.array(CommitteeAttestation.schema),
55
+ })
56
+ .transform(obj => PublishedCheckpoint.from(obj));
57
+ }
58
+
59
+ static getFields(fields: FieldsOf<PublishedCheckpoint>) {
60
+ return [fields.checkpoint, fields.l1, fields.attestations] as const;
61
+ }
62
+
63
+ static from(fields: FieldsOf<PublishedCheckpoint>) {
64
+ return new PublishedCheckpoint(...PublishedCheckpoint.getFields(fields));
65
+ }
66
+
67
+ static fromBuffer(bufferOrReader: Buffer | BufferReader): PublishedCheckpoint {
68
+ const reader = BufferReader.asReader(bufferOrReader);
69
+ const checkpoint = reader.readObject(Checkpoint);
70
+ const l1BlockNumber = reader.readBigInt();
71
+ const l1BlockHash = reader.readString();
72
+ const l1Timestamp = reader.readBigInt();
73
+ const attestations = reader.readVector(CommitteeAttestation);
74
+ return new PublishedCheckpoint(
75
+ checkpoint,
76
+ new L1PublishedData(l1BlockNumber, l1Timestamp, l1BlockHash),
77
+ attestations,
78
+ );
79
+ }
80
+
81
+ public toBuffer(): Buffer {
82
+ return serializeToBuffer(
83
+ this.checkpoint,
84
+ this.l1.blockNumber,
85
+ this.l1.blockHash,
86
+ this.l1.timestamp,
87
+ this.attestations.length,
88
+ this.attestations,
89
+ );
90
+ }
91
+ }
@@ -1,5 +1,5 @@
1
- import { sha256 } from '@aztec/foundation/crypto';
2
- import { Fr, reduceFn } from '@aztec/foundation/fields';
1
+ import { sha256 } from '@aztec/foundation/crypto/sha256';
2
+ import { Fr, reduceFn } from '@aztec/foundation/curves/bn254';
3
3
  import { createLogger } from '@aztec/foundation/log';
4
4
  import { numToUInt8 } from '@aztec/foundation/serialize';
5
5
  import { MerkleTree, MerkleTreeCalculator } from '@aztec/foundation/trees';