@aztec/stdlib 0.0.0-test.1 → 0.0.1-commit.b655e406

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 (1341) hide show
  1. package/dest/abi/abi.d.ts +316 -323
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +71 -37
  4. package/dest/abi/authorization_selector.d.ts +52 -0
  5. package/dest/abi/authorization_selector.d.ts.map +1 -0
  6. package/dest/abi/authorization_selector.js +70 -0
  7. package/dest/abi/buffer.d.ts +0 -2
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/contract_artifact.d.ts +17 -4
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +76 -53
  12. package/dest/abi/decoder.d.ts +1 -1
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +8 -10
  15. package/dest/abi/encoder.d.ts.map +1 -1
  16. package/dest/abi/encoder.js +68 -2
  17. package/dest/abi/event_metadata_definition.d.ts +8 -0
  18. package/dest/abi/event_metadata_definition.d.ts.map +1 -0
  19. package/dest/abi/event_selector.d.ts +0 -2
  20. package/dest/abi/event_selector.d.ts.map +1 -1
  21. package/dest/abi/function_call.d.ts +7 -2
  22. package/dest/abi/function_call.d.ts.map +1 -1
  23. package/dest/abi/function_call.js +6 -2
  24. package/dest/abi/function_selector.d.ts +0 -2
  25. package/dest/abi/function_selector.d.ts.map +1 -1
  26. package/dest/abi/index.d.ts +2 -0
  27. package/dest/abi/index.d.ts.map +1 -1
  28. package/dest/abi/index.js +2 -0
  29. package/dest/abi/note_selector.d.ts +0 -2
  30. package/dest/abi/note_selector.d.ts.map +1 -1
  31. package/dest/abi/selector.d.ts +0 -3
  32. package/dest/abi/selector.d.ts.map +1 -1
  33. package/dest/abi/utils.d.ts +6 -2
  34. package/dest/abi/utils.d.ts.map +1 -1
  35. package/dest/abi/utils.js +7 -0
  36. package/dest/auth_witness/auth_witness.d.ts +22 -3
  37. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  38. package/dest/auth_witness/auth_witness.js +29 -0
  39. package/dest/avm/avm.d.ts +8446 -2091
  40. package/dest/avm/avm.d.ts.map +1 -1
  41. package/dest/avm/avm.js +371 -131
  42. package/dest/avm/avm_accumulated_data.d.ts +78 -20
  43. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  44. package/dest/avm/avm_accumulated_data.js +91 -11
  45. package/dest/avm/avm_circuit_public_inputs.d.ts +276 -216
  46. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  47. package/dest/avm/avm_circuit_public_inputs.js +60 -9
  48. package/dest/avm/avm_proving_request.d.ts +4119 -1161
  49. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  50. package/dest/avm/contract_storage_read.d.ts +1 -3
  51. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  52. package/dest/avm/contract_storage_update_request.d.ts +1 -3
  53. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  54. package/dest/avm/index.d.ts +1 -1
  55. package/dest/avm/index.d.ts.map +1 -1
  56. package/dest/avm/index.js +1 -1
  57. package/dest/avm/message_pack.d.ts +1 -2
  58. package/dest/avm/message_pack.d.ts.map +1 -1
  59. package/dest/avm/message_pack.js +36 -6
  60. package/dest/avm/public_call_stack_item_compressed.d.ts +1 -3
  61. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  62. package/dest/avm/public_data_read.d.ts +1 -3
  63. package/dest/avm/public_data_read.d.ts.map +1 -1
  64. package/dest/avm/public_data_update_request.d.ts +1 -4
  65. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  66. package/dest/avm/public_data_write.d.ts +5 -3
  67. package/dest/avm/public_data_write.d.ts.map +1 -1
  68. package/dest/avm/public_data_write.js +22 -1
  69. package/dest/avm/public_inner_call_request.d.ts +1 -4
  70. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  71. package/dest/avm/public_inner_call_request.js +1 -1
  72. package/dest/avm/revert_code.d.ts +0 -3
  73. package/dest/avm/revert_code.d.ts.map +1 -1
  74. package/dest/aztec-address/index.d.ts +1 -4
  75. package/dest/aztec-address/index.d.ts.map +1 -1
  76. package/dest/block/attestation_info.d.ts +30 -0
  77. package/dest/block/attestation_info.d.ts.map +1 -0
  78. package/dest/block/attestation_info.js +39 -0
  79. package/dest/block/block_hash.d.ts +5 -3
  80. package/dest/block/block_hash.d.ts.map +1 -1
  81. package/dest/block/block_hash.js +11 -0
  82. package/dest/block/body.d.ts +7 -6
  83. package/dest/block/body.d.ts.map +1 -1
  84. package/dest/block/body.js +26 -27
  85. package/dest/block/in_block.d.ts +12 -11
  86. package/dest/block/in_block.d.ts.map +1 -1
  87. package/dest/block/in_block.js +4 -4
  88. package/dest/block/index.d.ts +7 -2
  89. package/dest/block/index.d.ts.map +1 -1
  90. package/dest/block/index.js +7 -2
  91. package/dest/block/l2_block.d.ts +24 -23
  92. package/dest/block/l2_block.d.ts.map +1 -1
  93. package/dest/block/l2_block.js +55 -49
  94. package/dest/block/l2_block_code_to_purge.d.ts +4 -16
  95. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  96. package/dest/block/l2_block_code_to_purge.js +26 -17
  97. package/dest/block/l2_block_header.d.ts +100 -0
  98. package/dest/block/l2_block_header.d.ts.map +1 -0
  99. package/dest/block/l2_block_header.js +146 -0
  100. package/dest/block/l2_block_info.d.ts +41 -0
  101. package/dest/block/l2_block_info.d.ts.map +1 -0
  102. package/dest/block/l2_block_info.js +40 -0
  103. package/dest/block/l2_block_source.d.ts +84 -15
  104. package/dest/block/l2_block_source.d.ts.map +1 -1
  105. package/dest/block/l2_block_source.js +11 -0
  106. package/dest/block/l2_block_stream/index.d.ts +4 -0
  107. package/dest/block/l2_block_stream/index.d.ts.map +1 -0
  108. package/dest/block/l2_block_stream/index.js +3 -0
  109. package/dest/block/l2_block_stream/interfaces.d.ts +26 -0
  110. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -0
  111. package/dest/block/l2_block_stream/interfaces.js +1 -0
  112. package/dest/block/l2_block_stream/l2_block_stream.d.ts +35 -0
  113. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -0
  114. package/dest/block/{l2_block_downloader → l2_block_stream}/l2_block_stream.js +70 -19
  115. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +18 -0
  116. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -0
  117. package/dest/block/l2_block_stream/l2_tips_memory_store.js +70 -0
  118. package/dest/block/proposal/attestations_and_signers.d.ts +48 -0
  119. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
  120. package/dest/block/proposal/attestations_and_signers.js +99 -0
  121. package/dest/block/proposal/committee_attestation.d.ts +36 -0
  122. package/dest/block/proposal/committee_attestation.d.ts.map +1 -0
  123. package/dest/block/proposal/committee_attestation.js +101 -0
  124. package/dest/block/proposal/index.d.ts +3 -0
  125. package/dest/block/proposal/index.d.ts.map +1 -0
  126. package/dest/block/proposal/index.js +2 -0
  127. package/dest/block/published_l2_block.d.ts +143 -0
  128. package/dest/block/published_l2_block.d.ts.map +1 -0
  129. package/dest/block/published_l2_block.js +63 -0
  130. package/dest/block/test/index.d.ts +2 -0
  131. package/dest/block/test/index.d.ts.map +1 -0
  132. package/dest/block/test/index.js +1 -0
  133. package/dest/block/test/l2_tips_store_test_suite.d.ts +3 -0
  134. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -0
  135. package/dest/block/test/l2_tips_store_test_suite.js +106 -0
  136. package/dest/block/validate_block_result.d.ts +222 -0
  137. package/dest/block/validate_block_result.d.ts.map +1 -0
  138. package/dest/block/validate_block_result.js +83 -0
  139. package/dest/checkpoint/checkpoint_body.d.ts +4 -0
  140. package/dest/checkpoint/checkpoint_body.d.ts.map +1 -0
  141. package/dest/checkpoint/checkpoint_body.js +9 -0
  142. package/dest/checkpoint/index.d.ts +2 -0
  143. package/dest/checkpoint/index.d.ts.map +1 -0
  144. package/dest/checkpoint/index.js +1 -0
  145. package/dest/config/{config.d.ts → chain-config.d.ts} +5 -4
  146. package/dest/config/chain-config.d.ts.map +1 -0
  147. package/dest/config/{config.js → chain-config.js} +4 -5
  148. package/dest/config/index.d.ts +2 -1
  149. package/dest/config/index.d.ts.map +1 -1
  150. package/dest/config/index.js +2 -1
  151. package/dest/config/node-rpc-config.d.ts +13 -0
  152. package/dest/config/node-rpc-config.d.ts.map +1 -0
  153. package/dest/config/node-rpc-config.js +24 -0
  154. package/dest/contract/artifact_hash.d.ts +6 -8
  155. package/dest/contract/artifact_hash.d.ts.map +1 -1
  156. package/dest/contract/artifact_hash.js +11 -10
  157. package/dest/contract/complete_address.d.ts +0 -2
  158. package/dest/contract/complete_address.d.ts.map +1 -1
  159. package/dest/contract/contract_address.d.ts +1 -1
  160. package/dest/contract/contract_address.js +1 -1
  161. package/dest/contract/contract_class.d.ts.map +1 -1
  162. package/dest/contract/contract_class.js +3 -19
  163. package/dest/contract/contract_class_id.d.ts +0 -2
  164. package/dest/contract/contract_class_id.d.ts.map +1 -1
  165. package/dest/contract/contract_class_id.js +6 -4
  166. package/dest/contract/contract_class_metadata.d.ts +8 -0
  167. package/dest/contract/contract_class_metadata.d.ts.map +1 -0
  168. package/dest/contract/contract_class_metadata.js +1 -0
  169. package/dest/contract/contract_instance.d.ts +13 -14
  170. package/dest/contract/contract_instance.d.ts.map +1 -1
  171. package/dest/contract/contract_instance.js +7 -7
  172. package/dest/contract/contract_instance_update.d.ts +3 -4
  173. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  174. package/dest/contract/contract_instance_update.js +6 -6
  175. package/dest/contract/contract_metadata.d.ts +7 -0
  176. package/dest/contract/contract_metadata.d.ts.map +1 -0
  177. package/dest/contract/contract_metadata.js +1 -0
  178. package/dest/contract/index.d.ts +3 -1
  179. package/dest/contract/index.d.ts.map +1 -1
  180. package/dest/contract/index.js +3 -1
  181. package/dest/contract/interfaces/contract_class.d.ts +46 -186
  182. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  183. package/dest/contract/interfaces/contract_class.js +4 -9
  184. package/dest/contract/interfaces/contract_data_source.d.ts +10 -18
  185. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  186. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  187. package/dest/contract/interfaces/contract_instance_update.d.ts +9 -8
  188. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  189. package/dest/contract/interfaces/contract_instance_update.js +1 -1
  190. package/dest/contract/interfaces/node-info.d.ts +2 -2
  191. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  192. package/dest/contract/interfaces/node-info.js +1 -1
  193. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +9 -9
  194. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  195. package/dest/contract/interfaces/protocol_contract_addresses.js +4 -4
  196. package/dest/contract/private_function.d.ts +0 -2
  197. package/dest/contract/private_function.d.ts.map +1 -1
  198. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  199. package/dest/contract/private_function_membership_proof.js +7 -7
  200. package/dest/contract/utility_function_membership_proof.d.ts +27 -0
  201. package/dest/contract/utility_function_membership_proof.d.ts.map +1 -0
  202. package/dest/contract/{unconstrained_function_membership_proof.js → utility_function_membership_proof.js} +13 -13
  203. package/dest/database-version/version_manager.d.ts +29 -10
  204. package/dest/database-version/version_manager.d.ts.map +1 -1
  205. package/dest/database-version/version_manager.js +42 -21
  206. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +20 -0
  207. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -0
  208. package/dest/{shared_mutable/shared_mutable_values.js → delayed_public_mutable/delayed_public_mutable_values.js} +16 -16
  209. package/dest/{shared_mutable/shared_mutable_values_with_hash.d.ts → delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts} +6 -6
  210. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -0
  211. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +30 -0
  212. package/dest/delayed_public_mutable/index.d.ts +5 -0
  213. package/dest/delayed_public_mutable/index.d.ts.map +1 -0
  214. package/dest/delayed_public_mutable/index.js +4 -0
  215. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +10 -0
  216. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -0
  217. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_delay_change.js +5 -5
  218. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +12 -0
  219. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -0
  220. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_value_change.js +7 -7
  221. package/dest/epoch-helpers/index.d.ts +24 -2
  222. package/dest/epoch-helpers/index.d.ts.map +1 -1
  223. package/dest/epoch-helpers/index.js +32 -2
  224. package/dest/errors/proving_error.d.ts.map +1 -1
  225. package/dest/errors/simulation_error.d.ts.map +1 -1
  226. package/dest/errors/simulation_error.js +2 -2
  227. package/dest/fees/transaction_fee.d.ts +5 -0
  228. package/dest/fees/transaction_fee.d.ts.map +1 -1
  229. package/dest/fees/transaction_fee.js +15 -5
  230. package/dest/file-store/factory.d.ts +7 -0
  231. package/dest/file-store/factory.d.ts.map +1 -0
  232. package/dest/file-store/factory.js +64 -0
  233. package/dest/file-store/gcs.d.ts +20 -0
  234. package/dest/file-store/gcs.d.ts.map +1 -0
  235. package/dest/file-store/gcs.js +115 -0
  236. package/dest/file-store/http.d.ts +14 -0
  237. package/dest/file-store/http.d.ts.map +1 -0
  238. package/dest/file-store/http.js +69 -0
  239. package/dest/file-store/index.d.ts +3 -0
  240. package/dest/file-store/index.d.ts.map +1 -0
  241. package/dest/file-store/index.js +2 -0
  242. package/dest/file-store/interface.d.ts +28 -0
  243. package/dest/file-store/interface.d.ts.map +1 -0
  244. package/dest/file-store/interface.js +1 -0
  245. package/dest/file-store/local.d.ts +14 -0
  246. package/dest/file-store/local.d.ts.map +1 -0
  247. package/dest/file-store/local.js +40 -0
  248. package/dest/file-store/s3.d.ts +26 -0
  249. package/dest/file-store/s3.d.ts.map +1 -0
  250. package/dest/file-store/s3.js +252 -0
  251. package/dest/gas/gas.d.ts +2 -4
  252. package/dest/gas/gas.d.ts.map +1 -1
  253. package/dest/gas/gas.js +4 -1
  254. package/dest/gas/gas_fees.d.ts +16 -18
  255. package/dest/gas/gas_fees.d.ts.map +1 -1
  256. package/dest/gas/gas_fees.js +17 -18
  257. package/dest/gas/gas_settings.d.ts +25 -27
  258. package/dest/gas/gas_settings.d.ts.map +1 -1
  259. package/dest/gas/gas_settings.js +6 -6
  260. package/dest/hash/hash.d.ts +27 -7
  261. package/dest/hash/hash.d.ts.map +1 -1
  262. package/dest/hash/hash.js +36 -24
  263. package/dest/interfaces/allowed_element.d.ts +53 -0
  264. package/dest/interfaces/allowed_element.d.ts.map +1 -0
  265. package/dest/interfaces/allowed_element.js +18 -0
  266. package/dest/interfaces/api_limit.d.ts +4 -0
  267. package/dest/interfaces/api_limit.d.ts.map +1 -0
  268. package/dest/interfaces/api_limit.js +3 -0
  269. package/dest/interfaces/archiver.d.ts +44 -2
  270. package/dest/interfaces/archiver.d.ts.map +1 -1
  271. package/dest/interfaces/archiver.js +33 -15
  272. package/dest/interfaces/aztec-node-admin.d.ts +289 -0
  273. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -0
  274. package/dest/interfaces/aztec-node-admin.js +37 -0
  275. package/dest/interfaces/aztec-node.d.ts +93 -79
  276. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  277. package/dest/interfaces/aztec-node.js +43 -32
  278. package/dest/interfaces/block-builder.d.ts +40 -4
  279. package/dest/interfaces/block-builder.d.ts.map +1 -1
  280. package/dest/interfaces/block-builder.js +1 -1
  281. package/dest/interfaces/client.d.ts +2 -1
  282. package/dest/interfaces/client.d.ts.map +1 -1
  283. package/dest/interfaces/client.js +2 -1
  284. package/dest/interfaces/configs.d.ts +59 -34
  285. package/dest/interfaces/configs.d.ts.map +1 -1
  286. package/dest/interfaces/configs.js +11 -18
  287. package/dest/interfaces/epoch-prover.d.ts +34 -15
  288. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  289. package/dest/interfaces/get_logs_response.d.ts +1 -1
  290. package/dest/interfaces/l2_logs_source.d.ts +2 -1
  291. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  292. package/dest/interfaces/merkle_tree_operations.d.ts +26 -10
  293. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  294. package/dest/interfaces/p2p.d.ts +15 -3
  295. package/dest/interfaces/p2p.d.ts.map +1 -1
  296. package/dest/interfaces/p2p.js +6 -2
  297. package/dest/interfaces/private_kernel_prover.d.ts +5 -6
  298. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  299. package/dest/interfaces/prover-agent.d.ts +31 -6
  300. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  301. package/dest/interfaces/prover-agent.js +15 -6
  302. package/dest/interfaces/prover-client.d.ts +5 -5
  303. package/dest/interfaces/prover-client.d.ts.map +1 -1
  304. package/dest/interfaces/prover-client.js +8 -6
  305. package/dest/interfaces/prover-coordination.d.ts +4 -9
  306. package/dest/interfaces/prover-coordination.d.ts.map +1 -1
  307. package/dest/interfaces/prover-coordination.js +1 -7
  308. package/dest/interfaces/prover-node.d.ts +5 -2
  309. package/dest/interfaces/prover-node.d.ts.map +1 -1
  310. package/dest/interfaces/prover-node.js +8 -3
  311. package/dest/interfaces/proving-job.d.ts +4422 -1342
  312. package/dest/interfaces/proving-job.d.ts.map +1 -1
  313. package/dest/interfaces/proving-job.js +136 -105
  314. package/dest/interfaces/public_state_source.d.ts +8 -0
  315. package/dest/interfaces/public_state_source.d.ts.map +1 -0
  316. package/dest/interfaces/public_state_source.js +1 -0
  317. package/dest/interfaces/server.d.ts +11 -5
  318. package/dest/interfaces/server.d.ts.map +1 -1
  319. package/dest/interfaces/server.js +11 -5
  320. package/dest/interfaces/server_circuit_prover.d.ts +46 -34
  321. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  322. package/dest/interfaces/service.d.ts +3 -2
  323. package/dest/interfaces/service.d.ts.map +1 -1
  324. package/dest/interfaces/slasher.d.ts +86 -0
  325. package/dest/interfaces/slasher.d.ts.map +1 -0
  326. package/dest/interfaces/slasher.js +23 -0
  327. package/dest/interfaces/tx_provider.d.ts +24 -0
  328. package/dest/interfaces/tx_provider.d.ts.map +1 -0
  329. package/dest/interfaces/tx_provider.js +1 -0
  330. package/dest/interfaces/validator.d.ts +163 -0
  331. package/dest/interfaces/validator.d.ts.map +1 -0
  332. package/dest/interfaces/validator.js +18 -0
  333. package/dest/interfaces/world_state.d.ts +23 -21
  334. package/dest/interfaces/world_state.d.ts.map +1 -1
  335. package/dest/interfaces/world_state.js +1 -1
  336. package/dest/kernel/claimed_length_array.d.ts +34 -0
  337. package/dest/kernel/claimed_length_array.d.ts.map +1 -0
  338. package/dest/kernel/claimed_length_array.js +58 -0
  339. package/dest/kernel/hiding_kernel_private_inputs.d.ts +19 -0
  340. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -0
  341. package/dest/kernel/hiding_kernel_private_inputs.js +34 -0
  342. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -6
  343. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  344. package/dest/kernel/hints/build_note_hash_read_request_hints.js +18 -20
  345. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +10 -12
  346. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  347. package/dest/kernel/hints/build_nullifier_read_request_hints.js +17 -32
  348. package/dest/kernel/hints/build_transient_data_hints.d.ts +4 -3
  349. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  350. package/dest/kernel/hints/build_transient_data_hints.js +9 -10
  351. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -1
  352. package/dest/kernel/hints/index.d.ts +1 -2
  353. package/dest/kernel/hints/index.d.ts.map +1 -1
  354. package/dest/kernel/hints/index.js +1 -2
  355. package/dest/kernel/hints/key_validation_hint.d.ts +3 -9
  356. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  357. package/dest/kernel/hints/key_validation_hint.js +5 -7
  358. package/dest/kernel/hints/key_validation_request.d.ts +1 -3
  359. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  360. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -3
  361. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  362. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +0 -2
  363. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  364. package/dest/kernel/hints/note_hash_read_request_hints.js +4 -4
  365. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +4 -5
  366. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  367. package/dest/kernel/hints/nullifier_read_request_hints.js +4 -4
  368. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +9 -11
  369. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  370. package/dest/kernel/hints/private_kernel_reset_hints.js +13 -9
  371. package/dest/kernel/hints/read_request.d.ts +0 -2
  372. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  373. package/dest/kernel/hints/read_request_hints.d.ts +29 -31
  374. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  375. package/dest/kernel/hints/read_request_hints.js +28 -28
  376. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -3
  377. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  378. package/dest/kernel/hints/{transient_data_index_hint.d.ts → transient_data_squashing_hint.d.ts} +5 -8
  379. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -0
  380. package/dest/kernel/hints/{transient_data_index_hint.js → transient_data_squashing_hint.js} +5 -5
  381. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -2
  382. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  383. package/dest/kernel/index.d.ts +4 -2
  384. package/dest/kernel/index.d.ts.map +1 -1
  385. package/dest/kernel/index.js +4 -2
  386. package/dest/kernel/log_hash.d.ts +27 -9
  387. package/dest/kernel/log_hash.d.ts.map +1 -1
  388. package/dest/kernel/log_hash.js +72 -13
  389. package/dest/kernel/note_hash.d.ts +0 -2
  390. package/dest/kernel/note_hash.d.ts.map +1 -1
  391. package/dest/kernel/nullifier.d.ts +2 -4
  392. package/dest/kernel/nullifier.d.ts.map +1 -1
  393. package/dest/kernel/nullifier.js +11 -11
  394. package/dest/kernel/padded_side_effects.d.ts +26 -0
  395. package/dest/kernel/padded_side_effects.d.ts.map +1 -0
  396. package/dest/kernel/padded_side_effects.js +51 -0
  397. package/dest/kernel/private_accumulated_data.d.ts +19 -20
  398. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  399. package/dest/kernel/private_accumulated_data.js +5 -5
  400. package/dest/kernel/private_call_data.d.ts +8 -30
  401. package/dest/kernel/private_call_data.d.ts.map +1 -1
  402. package/dest/kernel/private_call_data.js +6 -18
  403. package/dest/kernel/private_call_request.d.ts +1 -3
  404. package/dest/kernel/private_call_request.d.ts.map +1 -1
  405. package/dest/kernel/private_call_request.js +1 -1
  406. package/dest/kernel/private_circuit_public_inputs.d.ts +35 -36
  407. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  408. package/dest/kernel/private_circuit_public_inputs.js +45 -27
  409. package/dest/kernel/private_context_inputs.d.ts +2 -2
  410. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  411. package/dest/kernel/private_context_inputs.js +4 -4
  412. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +14 -7
  413. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  414. package/dest/kernel/private_kernel_circuit_public_inputs.js +9 -5
  415. package/dest/kernel/private_kernel_data.d.ts +7 -28
  416. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  417. package/dest/kernel/private_kernel_data.js +10 -21
  418. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +6 -7
  419. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  420. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -6
  421. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -3
  422. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  423. package/dest/kernel/private_kernel_prover_output.d.ts +79 -0
  424. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -0
  425. package/dest/kernel/private_kernel_prover_output.js +28 -0
  426. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +9 -8
  427. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  428. package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +10 -6
  429. package/dest/kernel/private_kernel_reset_dimensions.d.ts +11 -13
  430. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  431. package/dest/kernel/private_kernel_reset_dimensions.js +29 -29
  432. package/dest/kernel/private_kernel_simulated_output.d.ts +6 -12
  433. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  434. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +20 -4
  435. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  436. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +14 -6
  437. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +20 -12
  438. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  439. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +28 -21
  440. package/dest/kernel/private_log_data.d.ts +1 -4
  441. package/dest/kernel/private_log_data.d.ts.map +1 -1
  442. package/dest/kernel/private_log_data.js +4 -2
  443. package/dest/kernel/private_to_avm_accumulated_data.d.ts +4 -13
  444. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  445. package/dest/kernel/private_to_avm_accumulated_data.js +11 -0
  446. package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -5
  447. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  448. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -7
  449. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  450. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +16 -10
  451. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +3 -6
  452. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  453. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +13 -15
  454. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  455. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +11 -12
  456. package/dest/kernel/private_validation_requests.d.ts +9 -24
  457. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  458. package/dest/kernel/private_validation_requests.js +10 -22
  459. package/dest/kernel/public_call_request.d.ts +70 -24
  460. package/dest/kernel/public_call_request.d.ts.map +1 -1
  461. package/dest/kernel/public_call_request.js +77 -20
  462. package/dest/kernel/utils/optional_number.d.ts +1 -3
  463. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  464. package/dest/kernel/utils/order_and_comparison.d.ts +0 -3
  465. package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -1
  466. package/dest/kernel/utils/order_and_comparison.js +0 -19
  467. package/dest/keys/derivation.d.ts +0 -2
  468. package/dest/keys/derivation.d.ts.map +1 -1
  469. package/dest/keys/derivation.js +2 -15
  470. package/dest/keys/public_keys.d.ts +0 -2
  471. package/dest/keys/public_keys.d.ts.map +1 -1
  472. package/dest/keys/public_keys.js +0 -1
  473. package/dest/l1-contracts/index.d.ts +2 -0
  474. package/dest/l1-contracts/index.d.ts.map +1 -0
  475. package/dest/l1-contracts/index.js +1 -0
  476. package/dest/l1-contracts/slash_factory.d.ts +44 -0
  477. package/dest/l1-contracts/slash_factory.d.ts.map +1 -0
  478. package/dest/l1-contracts/slash_factory.js +157 -0
  479. package/dest/logs/contract_class_log.d.ts +54 -16
  480. package/dest/logs/contract_class_log.d.ts.map +1 -1
  481. package/dest/logs/contract_class_log.js +110 -79
  482. package/dest/logs/debug_log.d.ts +13 -0
  483. package/dest/logs/debug_log.d.ts.map +1 -0
  484. package/dest/logs/debug_log.js +26 -0
  485. package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
  486. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
  487. package/dest/logs/directional_app_tagging_secret.js +63 -0
  488. package/dest/logs/extended_contract_class_log.d.ts +0 -2
  489. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  490. package/dest/logs/extended_public_log.d.ts +1 -3
  491. package/dest/logs/extended_public_log.d.ts.map +1 -1
  492. package/dest/logs/index.d.ts +6 -2
  493. package/dest/logs/index.d.ts.map +1 -1
  494. package/dest/logs/index.js +6 -2
  495. package/dest/logs/log_id.d.ts +0 -2
  496. package/dest/logs/log_id.d.ts.map +1 -1
  497. package/dest/logs/log_with_tx_data.d.ts +12 -4
  498. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  499. package/dest/logs/log_with_tx_data.js +23 -10
  500. package/dest/logs/message_context.d.ts +29 -0
  501. package/dest/logs/message_context.d.ts.map +1 -0
  502. package/dest/logs/message_context.js +56 -0
  503. package/dest/logs/pending_tagged_log.d.ts +14 -0
  504. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  505. package/dest/logs/pending_tagged_log.js +34 -0
  506. package/dest/logs/pre_tag.d.ts +34 -0
  507. package/dest/logs/pre_tag.d.ts.map +1 -0
  508. package/dest/logs/pre_tag.js +7 -0
  509. package/dest/logs/private_log.d.ts +16 -8
  510. package/dest/logs/private_log.d.ts.map +1 -1
  511. package/dest/logs/private_log.js +50 -22
  512. package/dest/logs/public_log.d.ts +26 -12
  513. package/dest/logs/public_log.d.ts.map +1 -1
  514. package/dest/logs/public_log.js +128 -34
  515. package/dest/logs/{l1_payload/shared_secret_derivation.d.ts → shared_secret_derivation.d.ts} +4 -3
  516. package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
  517. package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +5 -9
  518. package/dest/logs/tx_scoped_l2_log.d.ts +28 -33
  519. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  520. package/dest/logs/tx_scoped_l2_log.js +36 -19
  521. package/dest/messaging/inbox_leaf.d.ts +8 -3
  522. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  523. package/dest/messaging/inbox_leaf.js +16 -2
  524. package/dest/messaging/index.d.ts +1 -0
  525. package/dest/messaging/index.d.ts.map +1 -1
  526. package/dest/messaging/index.js +1 -0
  527. package/dest/messaging/l1_actor.d.ts +0 -2
  528. package/dest/messaging/l1_actor.d.ts.map +1 -1
  529. package/dest/messaging/l1_to_l2_message.d.ts +0 -2
  530. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  531. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -1
  532. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  533. package/dest/messaging/l2_actor.d.ts +0 -2
  534. package/dest/messaging/l2_actor.d.ts.map +1 -1
  535. package/dest/messaging/l2_to_l1_membership.d.ts +14 -0
  536. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -0
  537. package/dest/messaging/l2_to_l1_membership.js +63 -0
  538. package/dest/messaging/l2_to_l1_message.d.ts +110 -18
  539. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  540. package/dest/messaging/l2_to_l1_message.js +83 -37
  541. package/dest/noir/index.d.ts +19 -2
  542. package/dest/noir/index.d.ts.map +1 -1
  543. package/dest/noir/index.js +1 -0
  544. package/dest/note/index.d.ts +1 -1
  545. package/dest/note/index.d.ts.map +1 -1
  546. package/dest/note/index.js +1 -1
  547. package/dest/note/note.d.ts +39 -6
  548. package/dest/note/note.d.ts.map +1 -1
  549. package/dest/note/note.js +51 -4
  550. package/dest/note/notes_filter.d.ts +5 -7
  551. package/dest/note/notes_filter.d.ts.map +1 -1
  552. package/dest/note/notes_filter.js +1 -4
  553. package/dest/note/unique_note.d.ts +43 -0
  554. package/dest/note/unique_note.d.ts.map +1 -0
  555. package/dest/note/unique_note.js +67 -0
  556. package/dest/p2p/attestation_utils.d.ts +10 -0
  557. package/dest/p2p/attestation_utils.d.ts.map +1 -0
  558. package/dest/p2p/attestation_utils.js +21 -0
  559. package/dest/p2p/block_attestation.d.ts +51 -13
  560. package/dest/p2p/block_attestation.d.ts.map +1 -1
  561. package/dest/p2p/block_attestation.js +45 -23
  562. package/dest/p2p/block_proposal.d.ts +26 -10
  563. package/dest/p2p/block_proposal.d.ts.map +1 -1
  564. package/dest/p2p/block_proposal.js +47 -20
  565. package/dest/p2p/consensus_payload.d.ts +216 -20
  566. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  567. package/dest/p2p/consensus_payload.js +47 -25
  568. package/dest/p2p/gossipable.d.ts +18 -17
  569. package/dest/p2p/gossipable.d.ts.map +1 -1
  570. package/dest/p2p/gossipable.js +35 -4
  571. package/dest/p2p/index.d.ts +1 -0
  572. package/dest/p2p/index.d.ts.map +1 -1
  573. package/dest/p2p/index.js +1 -0
  574. package/dest/p2p/interface.d.ts +0 -13
  575. package/dest/p2p/interface.d.ts.map +1 -1
  576. package/dest/p2p/interface.js +1 -19
  577. package/dest/p2p/signature_utils.d.ts +5 -6
  578. package/dest/p2p/signature_utils.d.ts.map +1 -1
  579. package/dest/p2p/signature_utils.js +5 -4
  580. package/dest/p2p/topic_type.d.ts +6 -9
  581. package/dest/p2p/topic_type.d.ts.map +1 -1
  582. package/dest/p2p/topic_type.js +35 -15
  583. package/dest/parity/index.d.ts +2 -3
  584. package/dest/parity/index.d.ts.map +1 -1
  585. package/dest/parity/index.js +2 -3
  586. package/dest/parity/{base_parity_inputs.d.ts → parity_base_private_inputs.d.ts} +9 -11
  587. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  588. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +10 -6
  589. package/dest/parity/parity_public_inputs.d.ts +2 -4
  590. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  591. package/dest/parity/parity_root_private_inputs.d.ts +39 -0
  592. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  593. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  594. package/dest/proofs/chonk_proof.d.ts +28 -0
  595. package/dest/proofs/chonk_proof.d.ts.map +1 -0
  596. package/dest/proofs/chonk_proof.js +101 -0
  597. package/dest/proofs/index.d.ts +2 -1
  598. package/dest/proofs/index.d.ts.map +1 -1
  599. package/dest/proofs/index.js +2 -1
  600. package/dest/proofs/proof.d.ts +5 -6
  601. package/dest/proofs/proof.d.ts.map +1 -1
  602. package/dest/proofs/proof.js +28 -20
  603. package/dest/proofs/proof_data.d.ts +21 -0
  604. package/dest/proofs/proof_data.d.ts.map +1 -0
  605. package/dest/proofs/proof_data.js +22 -0
  606. package/dest/proofs/proving_request_type.d.ts +17 -12
  607. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  608. package/dest/proofs/proving_request_type.js +17 -11
  609. package/dest/proofs/recursive_proof.d.ts +4 -6
  610. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  611. package/dest/rollup/avm_proof_data.d.ts +5 -15
  612. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  613. package/dest/rollup/avm_proof_data.js +8 -24
  614. package/dest/rollup/base_rollup_hints.d.ts +35 -36
  615. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  616. package/dest/rollup/base_rollup_hints.js +41 -40
  617. package/dest/rollup/block_constant_data.d.ts +51 -0
  618. package/dest/rollup/block_constant_data.d.ts.map +1 -0
  619. package/dest/rollup/block_constant_data.js +50 -0
  620. package/dest/rollup/{block_merge_rollup.d.ts → block_merge_rollup_private_inputs.d.ts} +19 -14
  621. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  622. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
  623. package/dest/rollup/block_rollup_public_inputs.d.ts +124 -0
  624. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
  625. package/dest/rollup/block_rollup_public_inputs.js +85 -0
  626. package/dest/rollup/block_root_rollup_private_inputs.d.ts +236 -0
  627. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  628. package/dest/rollup/block_root_rollup_private_inputs.js +257 -0
  629. package/dest/rollup/checkpoint_constant_data.d.ts +54 -0
  630. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
  631. package/dest/rollup/checkpoint_constant_data.js +55 -0
  632. package/dest/rollup/checkpoint_header.d.ts +83 -0
  633. package/dest/rollup/checkpoint_header.d.ts.map +1 -0
  634. package/dest/rollup/checkpoint_header.js +154 -0
  635. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
  636. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  637. package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
  638. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +106 -0
  639. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
  640. package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
  641. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +123 -0
  642. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  643. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +178 -0
  644. package/dest/rollup/epoch_constant_data.d.ts +56 -0
  645. package/dest/rollup/epoch_constant_data.d.ts.map +1 -0
  646. package/dest/rollup/epoch_constant_data.js +53 -0
  647. package/dest/rollup/index.d.ts +19 -16
  648. package/dest/rollup/index.d.ts.map +1 -1
  649. package/dest/rollup/index.js +19 -16
  650. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
  651. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  652. package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
  653. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
  654. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
  655. package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
  656. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
  657. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
  658. package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
  659. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
  660. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  661. package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
  662. package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
  663. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  664. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  665. package/dest/rollup/root_rollup_public_inputs.d.ts +46 -0
  666. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  667. package/dest/rollup/root_rollup_public_inputs.js +71 -0
  668. package/dest/rollup/{state_diff_hints.d.ts → tree_snapshot_diff_hints.d.ts} +22 -40
  669. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
  670. package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
  671. package/dest/rollup/{merge_rollup.d.ts → tx_merge_rollup_private_inputs.d.ts} +13 -14
  672. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  673. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  674. package/dest/rollup/{base_or_merge_rollup_public_inputs.d.ts → tx_rollup_public_inputs.d.ts} +19 -30
  675. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  676. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +16 -21
  677. package/dest/schemas/schemas.d.ts +6 -6
  678. package/dest/schemas/schemas.d.ts.map +1 -1
  679. package/dest/schemas/schemas.js +1 -0
  680. package/dest/slashing/empire.d.ts +31 -0
  681. package/dest/slashing/empire.d.ts.map +1 -0
  682. package/dest/slashing/empire.js +84 -0
  683. package/dest/slashing/helpers.d.ts +35 -0
  684. package/dest/slashing/helpers.d.ts.map +1 -0
  685. package/dest/slashing/helpers.js +89 -0
  686. package/dest/slashing/index.d.ts +7 -0
  687. package/dest/slashing/index.d.ts.map +1 -0
  688. package/dest/slashing/index.js +6 -0
  689. package/dest/slashing/interfaces.d.ts +11 -0
  690. package/dest/slashing/interfaces.d.ts.map +1 -0
  691. package/dest/slashing/interfaces.js +1 -0
  692. package/dest/slashing/serialization.d.ts +8 -0
  693. package/dest/slashing/serialization.d.ts.map +1 -0
  694. package/dest/slashing/serialization.js +78 -0
  695. package/dest/slashing/tally.d.ts +23 -0
  696. package/dest/slashing/tally.d.ts.map +1 -0
  697. package/dest/slashing/tally.js +60 -0
  698. package/dest/slashing/types.d.ts +162 -0
  699. package/dest/slashing/types.d.ts.map +1 -0
  700. package/dest/slashing/types.js +88 -0
  701. package/dest/snapshots/download.d.ts +9 -0
  702. package/dest/snapshots/download.d.ts.map +1 -0
  703. package/dest/snapshots/download.js +93 -0
  704. package/dest/snapshots/index.d.ts +4 -0
  705. package/dest/snapshots/index.d.ts.map +1 -0
  706. package/dest/snapshots/index.js +3 -0
  707. package/dest/snapshots/types.d.ts +120 -0
  708. package/dest/snapshots/types.d.ts.map +1 -0
  709. package/dest/snapshots/types.js +35 -0
  710. package/dest/snapshots/upload.d.ts +8 -0
  711. package/dest/snapshots/upload.d.ts.map +1 -0
  712. package/dest/snapshots/upload.js +42 -0
  713. package/dest/stats/stats.d.ts +9 -9
  714. package/dest/stats/stats.d.ts.map +1 -1
  715. package/dest/tests/factories.d.ts +81 -104
  716. package/dest/tests/factories.d.ts.map +1 -1
  717. package/dest/tests/factories.js +386 -303
  718. package/dest/tests/mocks.d.ts +33 -13
  719. package/dest/tests/mocks.d.ts.map +1 -1
  720. package/dest/tests/mocks.js +116 -82
  721. package/dest/trees/append_only_tree_snapshot.d.ts +7 -6
  722. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  723. package/dest/trees/append_only_tree_snapshot.js +17 -2
  724. package/dest/trees/database_public_state_source.d.ts +11 -0
  725. package/dest/trees/database_public_state_source.d.ts.map +1 -0
  726. package/dest/trees/database_public_state_source.js +18 -0
  727. package/dest/trees/index.d.ts +1 -1
  728. package/dest/trees/index.d.ts.map +1 -1
  729. package/dest/trees/index.js +1 -1
  730. package/dest/trees/merkle_tree_id.d.ts +12 -4
  731. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  732. package/dest/trees/merkle_tree_id.js +10 -0
  733. package/dest/trees/nullifier_leaf.d.ts +49 -17
  734. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  735. package/dest/trees/nullifier_leaf.js +45 -22
  736. package/dest/trees/nullifier_membership_witness.d.ts +41 -22
  737. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  738. package/dest/trees/nullifier_membership_witness.js +14 -1
  739. package/dest/trees/public_data_leaf.d.ts +60 -28
  740. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  741. package/dest/trees/public_data_leaf.js +41 -30
  742. package/dest/trees/public_data_witness.d.ts +47 -30
  743. package/dest/trees/public_data_witness.d.ts.map +1 -1
  744. package/dest/trees/public_data_witness.js +20 -4
  745. package/dest/tx/block_header.d.ts +15 -17
  746. package/dest/tx/block_header.d.ts.map +1 -1
  747. package/dest/tx/block_header.js +20 -19
  748. package/dest/tx/call_context.d.ts +1 -4
  749. package/dest/tx/call_context.d.ts.map +1 -1
  750. package/dest/tx/capsule.d.ts +3 -3
  751. package/dest/tx/capsule.d.ts.map +1 -1
  752. package/dest/tx/capsule.js +2 -0
  753. package/dest/tx/content_commitment.d.ts +24 -81
  754. package/dest/tx/content_commitment.d.ts.map +1 -1
  755. package/dest/tx/content_commitment.js +39 -53
  756. package/dest/tx/function_data.d.ts +0 -2
  757. package/dest/tx/function_data.d.ts.map +1 -1
  758. package/dest/tx/global_variable_builder.d.ts +2 -2
  759. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  760. package/dest/tx/global_variables.d.ts +29 -31
  761. package/dest/tx/global_variables.d.ts.map +1 -1
  762. package/dest/tx/global_variables.js +24 -16
  763. package/dest/tx/hashed_values.d.ts +17 -7
  764. package/dest/tx/hashed_values.d.ts.map +1 -1
  765. package/dest/tx/hashed_values.js +26 -9
  766. package/dest/tx/index.d.ts +8 -2
  767. package/dest/tx/index.d.ts.map +1 -1
  768. package/dest/tx/index.js +8 -2
  769. package/dest/tx/indexed_tx_effect.d.ts +27 -0
  770. package/dest/tx/indexed_tx_effect.d.ts.map +1 -0
  771. package/dest/tx/indexed_tx_effect.js +32 -0
  772. package/dest/tx/offchain_effect.d.ts +14 -0
  773. package/dest/tx/offchain_effect.d.ts.map +1 -0
  774. package/dest/tx/offchain_effect.js +4 -0
  775. package/dest/tx/partial_state_reference.d.ts +10 -3
  776. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  777. package/dest/tx/partial_state_reference.js +22 -2
  778. package/dest/tx/private_execution_result.d.ts +55 -35
  779. package/dest/tx/private_execution_result.d.ts.map +1 -1
  780. package/dest/tx/private_execution_result.js +66 -78
  781. package/dest/tx/private_tx_constant_data.d.ts +60 -0
  782. package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
  783. package/dest/tx/private_tx_constant_data.js +69 -0
  784. package/dest/tx/processed_tx.d.ts +6 -8
  785. package/dest/tx/processed_tx.d.ts.map +1 -1
  786. package/dest/tx/processed_tx.js +24 -22
  787. package/dest/tx/profiling.d.ts +360 -0
  788. package/dest/tx/profiling.d.ts.map +1 -0
  789. package/dest/tx/profiling.js +129 -0
  790. package/dest/tx/protocol_contracts.d.ts +29 -0
  791. package/dest/tx/protocol_contracts.d.ts.map +1 -0
  792. package/dest/tx/protocol_contracts.js +49 -0
  793. package/dest/tx/proven_tx.d.ts +129 -0
  794. package/dest/tx/proven_tx.d.ts.map +1 -0
  795. package/dest/tx/proven_tx.js +45 -0
  796. package/dest/tx/public_call_request_with_calldata.d.ts +38 -0
  797. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -0
  798. package/dest/tx/public_call_request_with_calldata.js +57 -0
  799. package/dest/tx/public_simulation_output.d.ts +3 -3
  800. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  801. package/dest/tx/public_simulation_output.js +7 -7
  802. package/dest/tx/simulated_tx.d.ts +169 -45
  803. package/dest/tx/simulated_tx.d.ts.map +1 -1
  804. package/dest/tx/simulated_tx.js +52 -47
  805. package/dest/tx/state_reference.d.ts +10 -4
  806. package/dest/tx/state_reference.d.ts.map +1 -1
  807. package/dest/tx/state_reference.js +38 -5
  808. package/dest/tx/tree_snapshots.d.ts +11 -14
  809. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  810. package/dest/tx/tree_snapshots.js +3 -3
  811. package/dest/tx/tx.d.ts +63 -89
  812. package/dest/tx/tx.d.ts.map +1 -1
  813. package/dest/tx/tx.js +147 -148
  814. package/dest/tx/tx_constant_data.d.ts +7 -41
  815. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  816. package/dest/tx/tx_constant_data.js +11 -20
  817. package/dest/tx/tx_context.d.ts +33 -35
  818. package/dest/tx/tx_context.d.ts.map +1 -1
  819. package/dest/tx/tx_effect.d.ts +6 -42
  820. package/dest/tx/tx_effect.d.ts.map +1 -1
  821. package/dest/tx/tx_effect.js +75 -257
  822. package/dest/tx/tx_execution_request.d.ts +13 -6
  823. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  824. package/dest/tx/tx_execution_request.js +16 -9
  825. package/dest/tx/tx_hash.d.ts +11 -4
  826. package/dest/tx/tx_hash.d.ts.map +1 -1
  827. package/dest/tx/tx_hash.js +24 -5
  828. package/dest/tx/tx_receipt.d.ts +1 -30
  829. package/dest/tx/tx_receipt.d.ts.map +1 -1
  830. package/dest/tx/tx_receipt.js +4 -14
  831. package/dest/tx/tx_request.d.ts +11 -9
  832. package/dest/tx/tx_request.d.ts.map +1 -1
  833. package/dest/tx/tx_request.js +11 -8
  834. package/dest/tx/validator/error_texts.d.ts +24 -0
  835. package/dest/tx/validator/error_texts.d.ts.map +1 -0
  836. package/dest/tx/validator/error_texts.js +31 -0
  837. package/dest/tx/validator/tx_validator.d.ts +6 -4
  838. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  839. package/dest/tx/validator/tx_validator.js +3 -0
  840. package/dest/types/shared.d.ts +9 -11
  841. package/dest/types/shared.d.ts.map +1 -1
  842. package/dest/types/shared.js +0 -8
  843. package/dest/update-checker/index.d.ts +2 -0
  844. package/dest/update-checker/index.d.ts.map +1 -0
  845. package/dest/update-checker/index.js +1 -0
  846. package/dest/update-checker/update-checker.d.ts +50 -0
  847. package/dest/update-checker/update-checker.d.ts.map +1 -0
  848. package/dest/update-checker/update-checker.js +130 -0
  849. package/dest/validators/errors.d.ts +34 -0
  850. package/dest/validators/errors.d.ts.map +1 -0
  851. package/dest/validators/errors.js +47 -0
  852. package/dest/validators/index.d.ts +4 -0
  853. package/dest/validators/index.d.ts.map +1 -0
  854. package/dest/validators/index.js +2 -0
  855. package/dest/validators/schemas.d.ts +592 -0
  856. package/dest/validators/schemas.d.ts.map +1 -0
  857. package/dest/validators/schemas.js +52 -0
  858. package/dest/validators/types.d.ts +52 -0
  859. package/dest/validators/types.d.ts.map +1 -0
  860. package/dest/validators/types.js +1 -0
  861. package/dest/versioning/versioning.d.ts +4 -4
  862. package/dest/versioning/versioning.d.ts.map +1 -1
  863. package/dest/versioning/versioning.js +23 -18
  864. package/dest/vks/index.d.ts +1 -1
  865. package/dest/vks/index.d.ts.map +1 -1
  866. package/dest/vks/index.js +1 -1
  867. package/dest/vks/verification_key.d.ts +8 -12
  868. package/dest/vks/verification_key.d.ts.map +1 -1
  869. package/dest/vks/verification_key.js +9 -11
  870. package/dest/vks/{vk_witness_data.d.ts → vk_data.d.ts} +9 -11
  871. package/dest/vks/vk_data.d.ts.map +1 -0
  872. package/dest/vks/{vk_witness_data.js → vk_data.js} +10 -10
  873. package/dest/world-state/index.d.ts +2 -0
  874. package/dest/world-state/index.d.ts.map +1 -0
  875. package/dest/world-state/index.js +1 -0
  876. package/dest/world-state/world_state_revision.d.ts +22 -0
  877. package/dest/world-state/world_state_revision.d.ts.map +1 -0
  878. package/dest/world-state/world_state_revision.js +21 -0
  879. package/dest/zkpassport/index.d.ts +35 -0
  880. package/dest/zkpassport/index.d.ts.map +1 -0
  881. package/dest/zkpassport/index.js +82 -0
  882. package/package.json +40 -23
  883. package/src/abi/abi.ts +96 -66
  884. package/src/abi/authorization_selector.ts +95 -0
  885. package/src/abi/contract_artifact.ts +90 -59
  886. package/src/abi/decoder.ts +18 -13
  887. package/src/abi/encoder.ts +88 -3
  888. package/src/abi/event_metadata_definition.ts +8 -0
  889. package/src/abi/function_call.ts +5 -1
  890. package/src/abi/index.ts +2 -0
  891. package/src/abi/utils.ts +15 -0
  892. package/src/auth_witness/auth_witness.ts +29 -0
  893. package/src/avm/avm.ts +452 -123
  894. package/src/avm/avm_accumulated_data.ts +129 -12
  895. package/src/avm/avm_circuit_public_inputs.ts +80 -3
  896. package/src/avm/index.ts +1 -1
  897. package/src/avm/message_pack.ts +33 -2
  898. package/src/avm/public_data_write.ts +25 -1
  899. package/src/avm/public_inner_call_request.ts +1 -1
  900. package/src/avm/revert_code.ts +5 -5
  901. package/src/block/attestation_info.ts +62 -0
  902. package/src/block/block_hash.ts +14 -0
  903. package/src/block/body.ts +41 -34
  904. package/src/block/in_block.ts +6 -6
  905. package/src/block/index.ts +7 -2
  906. package/src/block/l2_block.ts +59 -64
  907. package/src/block/l2_block_code_to_purge.ts +32 -49
  908. package/src/block/l2_block_header.ts +232 -0
  909. package/src/block/l2_block_info.ts +63 -0
  910. package/src/block/l2_block_source.ts +100 -13
  911. package/src/block/l2_block_stream/index.ts +3 -0
  912. package/src/block/l2_block_stream/interfaces.ts +33 -0
  913. package/src/block/{l2_block_downloader → l2_block_stream}/l2_block_stream.ts +81 -58
  914. package/src/block/l2_block_stream/l2_tips_memory_store.ts +75 -0
  915. package/src/block/proposal/attestations_and_signers.ts +121 -0
  916. package/src/block/proposal/committee_attestation.ts +120 -0
  917. package/src/block/proposal/index.ts +2 -0
  918. package/src/block/published_l2_block.ts +82 -0
  919. package/src/block/test/index.ts +1 -0
  920. package/src/block/test/l2_tips_store_test_suite.ts +87 -0
  921. package/src/block/validate_block_result.ts +122 -0
  922. package/src/checkpoint/checkpoint_body.ts +10 -0
  923. package/src/checkpoint/index.ts +1 -0
  924. package/src/config/{config.ts → chain-config.ts} +8 -7
  925. package/src/config/index.ts +2 -1
  926. package/src/config/node-rpc-config.ts +37 -0
  927. package/src/contract/artifact_hash.ts +14 -12
  928. package/src/contract/contract_address.ts +1 -1
  929. package/src/contract/contract_class.ts +7 -24
  930. package/src/contract/contract_class_id.ts +10 -4
  931. package/src/contract/contract_class_metadata.ts +8 -0
  932. package/src/contract/contract_instance.ts +26 -17
  933. package/src/contract/contract_instance_update.ts +7 -6
  934. package/src/contract/contract_metadata.ts +7 -0
  935. package/src/contract/index.ts +3 -1
  936. package/src/contract/interfaces/contract_class.ts +23 -35
  937. package/src/contract/interfaces/contract_data_source.ts +11 -20
  938. package/src/contract/interfaces/contract_instance_update.ts +4 -3
  939. package/src/contract/interfaces/node-info.ts +3 -3
  940. package/src/contract/interfaces/protocol_contract_addresses.ts +5 -10
  941. package/src/contract/private_function.ts +4 -2
  942. package/src/contract/private_function_membership_proof.ts +7 -7
  943. package/src/contract/{unconstrained_function_membership_proof.ts → utility_function_membership_proof.ts} +18 -18
  944. package/src/database-version/version_manager.ts +78 -25
  945. package/src/{shared_mutable/shared_mutable_values.ts → delayed_public_mutable/delayed_public_mutable_values.ts} +23 -20
  946. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +38 -0
  947. package/src/delayed_public_mutable/index.ts +4 -0
  948. package/src/delayed_public_mutable/scheduled_delay_change.ts +17 -0
  949. package/src/{shared_mutable → delayed_public_mutable}/scheduled_value_change.ts +11 -5
  950. package/src/epoch-helpers/index.ts +61 -2
  951. package/src/errors/proving_error.ts +5 -1
  952. package/src/errors/simulation_error.ts +2 -2
  953. package/src/fees/transaction_fee.ts +28 -8
  954. package/src/file-store/factory.ts +76 -0
  955. package/src/file-store/gcs.ts +121 -0
  956. package/src/file-store/http.ts +67 -0
  957. package/src/file-store/index.ts +2 -0
  958. package/src/file-store/interface.ts +25 -0
  959. package/src/file-store/local.ts +46 -0
  960. package/src/file-store/s3.ts +254 -0
  961. package/src/gas/gas.ts +9 -2
  962. package/src/gas/gas_fees.ts +27 -23
  963. package/src/gas/gas_settings.ts +11 -9
  964. package/src/hash/hash.ts +45 -27
  965. package/src/interfaces/allowed_element.ts +21 -0
  966. package/src/interfaces/api_limit.ts +3 -0
  967. package/src/interfaces/archiver.ts +67 -25
  968. package/src/interfaces/aztec-node-admin.ts +99 -0
  969. package/src/interfaces/aztec-node.ts +196 -137
  970. package/src/interfaces/block-builder.ts +53 -8
  971. package/src/interfaces/client.ts +2 -1
  972. package/src/interfaces/configs.ts +29 -18
  973. package/src/interfaces/epoch-prover.ts +46 -16
  974. package/src/interfaces/l2_logs_source.ts +2 -1
  975. package/src/interfaces/merkle_tree_operations.ts +30 -8
  976. package/src/interfaces/p2p.ts +29 -4
  977. package/src/interfaces/private_kernel_prover.ts +13 -4
  978. package/src/interfaces/prover-agent.ts +9 -10
  979. package/src/interfaces/prover-client.ts +16 -11
  980. package/src/interfaces/prover-coordination.ts +6 -16
  981. package/src/interfaces/prover-node.ts +10 -2
  982. package/src/interfaces/proving-job.ts +230 -125
  983. package/src/interfaces/public_state_source.ts +9 -0
  984. package/src/interfaces/server.ts +11 -5
  985. package/src/interfaces/server_circuit_prover.ts +110 -58
  986. package/src/interfaces/service.ts +4 -2
  987. package/src/interfaces/slasher.ts +50 -0
  988. package/src/interfaces/tx_provider.ts +17 -0
  989. package/src/interfaces/validator.ts +95 -0
  990. package/src/interfaces/world_state.ts +27 -19
  991. package/src/kernel/claimed_length_array.ts +104 -0
  992. package/src/kernel/hiding_kernel_private_inputs.ts +37 -0
  993. package/src/kernel/hints/build_note_hash_read_request_hints.ts +28 -30
  994. package/src/kernel/hints/build_nullifier_read_request_hints.ts +31 -61
  995. package/src/kernel/hints/build_transient_data_hints.ts +12 -14
  996. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +3 -3
  997. package/src/kernel/hints/index.ts +1 -2
  998. package/src/kernel/hints/key_validation_hint.ts +4 -6
  999. package/src/kernel/hints/note_hash_read_request_hints.ts +8 -17
  1000. package/src/kernel/hints/nullifier_read_request_hints.ts +11 -20
  1001. package/src/kernel/hints/private_kernel_reset_hints.ts +37 -46
  1002. package/src/kernel/hints/read_request.ts +4 -1
  1003. package/src/kernel/hints/read_request_hints.ts +59 -38
  1004. package/src/kernel/hints/{transient_data_index_hint.ts → transient_data_squashing_hint.ts} +9 -6
  1005. package/src/kernel/hints/tree_leaf_read_request.ts +4 -1
  1006. package/src/kernel/index.ts +4 -2
  1007. package/src/kernel/log_hash.ts +86 -14
  1008. package/src/kernel/note_hash.ts +8 -2
  1009. package/src/kernel/nullifier.ts +16 -9
  1010. package/src/kernel/padded_side_effects.ts +73 -0
  1011. package/src/kernel/private_accumulated_data.ts +25 -25
  1012. package/src/kernel/private_call_data.ts +5 -24
  1013. package/src/kernel/private_call_request.ts +1 -1
  1014. package/src/kernel/private_circuit_public_inputs.ts +100 -76
  1015. package/src/kernel/private_context_inputs.ts +2 -2
  1016. package/src/kernel/private_kernel_circuit_public_inputs.ts +13 -5
  1017. package/src/kernel/private_kernel_data.ts +9 -31
  1018. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +5 -4
  1019. package/src/kernel/private_kernel_prover_output.ts +70 -0
  1020. package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +16 -13
  1021. package/src/kernel/private_kernel_reset_dimensions.ts +27 -27
  1022. package/src/kernel/private_kernel_simulated_output.ts +7 -16
  1023. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +22 -5
  1024. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +41 -24
  1025. package/src/kernel/private_log_data.ts +13 -4
  1026. package/src/kernel/private_to_avm_accumulated_data.ts +18 -1
  1027. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +16 -7
  1028. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +16 -10
  1029. package/src/kernel/private_validation_requests.ts +20 -51
  1030. package/src/kernel/public_call_request.ts +92 -28
  1031. package/src/kernel/utils/order_and_comparison.ts +0 -25
  1032. package/src/keys/derivation.ts +2 -22
  1033. package/src/keys/public_keys.ts +1 -1
  1034. package/src/l1-contracts/index.ts +1 -0
  1035. package/src/l1-contracts/slash_factory.ts +177 -0
  1036. package/src/logs/contract_class_log.ts +134 -64
  1037. package/src/logs/debug_log.ts +32 -0
  1038. package/src/logs/directional_app_tagging_secret.ts +77 -0
  1039. package/src/logs/index.ts +6 -2
  1040. package/src/logs/log_with_tx_data.ts +19 -9
  1041. package/src/logs/message_context.ts +62 -0
  1042. package/src/logs/pending_tagged_log.ts +41 -0
  1043. package/src/logs/pre_tag.ts +25 -0
  1044. package/src/logs/private_log.ts +60 -24
  1045. package/src/logs/public_log.ts +137 -37
  1046. package/src/logs/{l1_payload/shared_secret_derivation.ts → shared_secret_derivation.ts} +6 -15
  1047. package/src/logs/tx_scoped_l2_log.ts +37 -25
  1048. package/src/messaging/inbox_leaf.ts +17 -2
  1049. package/src/messaging/index.ts +1 -0
  1050. package/src/messaging/l1_to_l2_message_source.ts +8 -1
  1051. package/src/messaging/l2_to_l1_membership.ts +98 -0
  1052. package/src/messaging/l2_to_l1_message.ts +105 -40
  1053. package/src/noir/index.ts +19 -2
  1054. package/src/note/index.ts +1 -1
  1055. package/src/note/note.ts +61 -5
  1056. package/src/note/notes_filter.ts +6 -10
  1057. package/src/note/unique_note.ts +88 -0
  1058. package/src/p2p/attestation_utils.ts +35 -0
  1059. package/src/p2p/block_attestation.ts +54 -26
  1060. package/src/p2p/block_proposal.ts +63 -19
  1061. package/src/p2p/consensus_payload.ts +62 -29
  1062. package/src/p2p/gossipable.ts +41 -15
  1063. package/src/p2p/index.ts +1 -0
  1064. package/src/p2p/interface.ts +0 -24
  1065. package/src/p2p/signature_utils.ts +7 -9
  1066. package/src/p2p/topic_type.ts +32 -13
  1067. package/src/parity/index.ts +2 -3
  1068. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +13 -11
  1069. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  1070. package/src/proofs/chonk_proof.ts +118 -0
  1071. package/src/proofs/index.ts +2 -1
  1072. package/src/proofs/proof.ts +29 -21
  1073. package/src/proofs/proof_data.ts +36 -0
  1074. package/src/proofs/proving_request_type.ts +14 -9
  1075. package/src/rollup/avm_proof_data.ts +8 -30
  1076. package/src/rollup/base_rollup_hints.ts +42 -41
  1077. package/src/rollup/block_constant_data.ts +73 -0
  1078. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
  1079. package/src/rollup/block_rollup_public_inputs.ts +123 -0
  1080. package/src/rollup/block_root_rollup_private_inputs.ts +312 -0
  1081. package/src/rollup/checkpoint_constant_data.ts +84 -0
  1082. package/src/rollup/checkpoint_header.ts +224 -0
  1083. package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
  1084. package/src/rollup/checkpoint_rollup_public_inputs.ts +139 -0
  1085. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +218 -0
  1086. package/src/rollup/epoch_constant_data.ts +62 -0
  1087. package/src/rollup/index.ts +19 -16
  1088. package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
  1089. package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
  1090. package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
  1091. package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
  1092. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  1093. package/src/rollup/root_rollup_public_inputs.ts +99 -0
  1094. package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +26 -41
  1095. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  1096. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +17 -25
  1097. package/src/schemas/schemas.ts +3 -0
  1098. package/src/slashing/empire.ts +100 -0
  1099. package/src/slashing/helpers.ts +136 -0
  1100. package/src/slashing/index.ts +6 -0
  1101. package/src/slashing/interfaces.ts +11 -0
  1102. package/src/slashing/serialization.ts +103 -0
  1103. package/src/slashing/tally.ts +87 -0
  1104. package/src/slashing/types.ts +152 -0
  1105. package/src/snapshots/download.ts +123 -0
  1106. package/src/snapshots/index.ts +3 -0
  1107. package/src/snapshots/types.ts +70 -0
  1108. package/src/snapshots/upload.ts +64 -0
  1109. package/src/stats/stats.ts +28 -19
  1110. package/src/tests/factories.ts +647 -518
  1111. package/src/tests/mocks.ts +186 -135
  1112. package/src/trees/append_only_tree_snapshot.ts +18 -2
  1113. package/src/trees/database_public_state_source.ts +30 -0
  1114. package/src/trees/index.ts +1 -1
  1115. package/src/trees/merkle_tree_id.ts +12 -0
  1116. package/src/trees/nullifier_leaf.ts +48 -21
  1117. package/src/trees/nullifier_membership_witness.ts +17 -1
  1118. package/src/trees/public_data_leaf.ts +40 -29
  1119. package/src/trees/public_data_witness.ts +23 -4
  1120. package/src/tx/block_header.ts +23 -21
  1121. package/src/tx/capsule.ts +2 -0
  1122. package/src/tx/content_commitment.ts +48 -77
  1123. package/src/tx/global_variable_builder.ts +2 -2
  1124. package/src/tx/global_variables.ts +37 -22
  1125. package/src/tx/hashed_values.ts +29 -9
  1126. package/src/tx/index.ts +8 -2
  1127. package/src/tx/indexed_tx_effect.ts +39 -0
  1128. package/src/tx/offchain_effect.ts +20 -0
  1129. package/src/tx/partial_state_reference.ts +37 -4
  1130. package/src/tx/private_execution_result.ts +69 -88
  1131. package/src/tx/private_tx_constant_data.ts +94 -0
  1132. package/src/tx/processed_tx.ts +41 -35
  1133. package/src/tx/profiling.ts +161 -0
  1134. package/src/tx/protocol_contracts.ts +70 -0
  1135. package/src/tx/proven_tx.ts +62 -0
  1136. package/src/tx/public_call_request_with_calldata.ts +72 -0
  1137. package/src/tx/public_simulation_output.ts +5 -5
  1138. package/src/tx/simulated_tx.ts +66 -76
  1139. package/src/tx/state_reference.ts +54 -5
  1140. package/src/tx/tree_snapshots.ts +13 -13
  1141. package/src/tx/tx.ts +161 -192
  1142. package/src/tx/tx_constant_data.ts +8 -21
  1143. package/src/tx/tx_effect.ts +128 -293
  1144. package/src/tx/tx_execution_request.ts +14 -3
  1145. package/src/tx/tx_hash.ts +26 -5
  1146. package/src/tx/tx_receipt.ts +1 -37
  1147. package/src/tx/tx_request.ts +16 -6
  1148. package/src/tx/validator/error_texts.ts +38 -0
  1149. package/src/tx/validator/tx_validator.ts +5 -0
  1150. package/src/types/shared.ts +10 -9
  1151. package/src/update-checker/index.ts +1 -0
  1152. package/src/update-checker/update-checker.ts +165 -0
  1153. package/src/validators/errors.ts +59 -0
  1154. package/src/validators/index.ts +3 -0
  1155. package/src/validators/schemas.ts +75 -0
  1156. package/src/validators/types.ts +46 -0
  1157. package/src/versioning/versioning.ts +28 -32
  1158. package/src/vks/index.ts +1 -1
  1159. package/src/vks/verification_key.ts +18 -18
  1160. package/src/vks/{vk_witness_data.ts → vk_data.ts} +6 -6
  1161. package/src/world-state/index.ts +1 -0
  1162. package/src/world-state/world_state_revision.ts +21 -0
  1163. package/src/zkpassport/index.ts +119 -0
  1164. package/dest/avm/public_data_hint.d.ts +0 -18
  1165. package/dest/avm/public_data_hint.d.ts.map +0 -1
  1166. package/dest/avm/public_data_hint.js +0 -27
  1167. package/dest/block/l2_block_downloader/index.d.ts +0 -3
  1168. package/dest/block/l2_block_downloader/index.d.ts.map +0 -1
  1169. package/dest/block/l2_block_downloader/index.js +0 -2
  1170. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +0 -58
  1171. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +0 -1
  1172. package/dest/block/l2_block_downloader/l2_block_downloader.js +0 -124
  1173. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +0 -57
  1174. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +0 -1
  1175. package/dest/block/nullifier_with_block_source.d.ts +0 -6
  1176. package/dest/block/nullifier_with_block_source.d.ts.map +0 -1
  1177. package/dest/config/config.d.ts.map +0 -1
  1178. package/dest/contract/unconstrained_function_membership_proof.d.ts +0 -27
  1179. package/dest/contract/unconstrained_function_membership_proof.d.ts.map +0 -1
  1180. package/dest/event/event.d.ts +0 -24
  1181. package/dest/event/event.d.ts.map +0 -1
  1182. package/dest/event/event.js +0 -13
  1183. package/dest/event/event_metadata.d.ts +0 -38
  1184. package/dest/event/event_metadata.d.ts.map +0 -1
  1185. package/dest/event/event_metadata.js +0 -45
  1186. package/dest/event/index.d.ts +0 -4
  1187. package/dest/event/index.d.ts.map +0 -1
  1188. package/dest/event/index.js +0 -3
  1189. package/dest/event/l1_event_payload.d.ts +0 -52
  1190. package/dest/event/l1_event_payload.d.ts.map +0 -1
  1191. package/dest/event/l1_event_payload.js +0 -64
  1192. package/dest/interfaces/pxe.d.ts +0 -347
  1193. package/dest/interfaces/pxe.d.ts.map +0 -1
  1194. package/dest/interfaces/pxe.js +0 -104
  1195. package/dest/kernel/combined_constant_data.d.ts +0 -73
  1196. package/dest/kernel/combined_constant_data.d.ts.map +0 -1
  1197. package/dest/kernel/combined_constant_data.js +0 -73
  1198. package/dest/kernel/hints/rollup_validation_requests.d.ts +0 -40
  1199. package/dest/kernel/hints/rollup_validation_requests.d.ts.map +0 -1
  1200. package/dest/kernel/hints/rollup_validation_requests.js +0 -57
  1201. package/dest/kernel/hints/transient_data_index_hint.d.ts.map +0 -1
  1202. package/dest/kernel/private_kernel_prover_profile_result.d.ts +0 -25
  1203. package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +0 -1
  1204. package/dest/kernel/private_kernel_prover_profile_result.js +0 -7
  1205. package/dest/logs/indexed_tagging_secret.d.ts +0 -28
  1206. package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
  1207. package/dest/logs/indexed_tagging_secret.js +0 -50
  1208. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
  1209. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
  1210. package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
  1211. package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
  1212. package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
  1213. package/dest/logs/l1_payload/encryption_util.js +0 -46
  1214. package/dest/logs/l1_payload/index.d.ts +0 -3
  1215. package/dest/logs/l1_payload/index.d.ts.map +0 -1
  1216. package/dest/logs/l1_payload/index.js +0 -2
  1217. package/dest/logs/l1_payload/l1_note_payload.d.ts +0 -82
  1218. package/dest/logs/l1_payload/l1_note_payload.d.ts.map +0 -1
  1219. package/dest/logs/l1_payload/l1_note_payload.js +0 -129
  1220. package/dest/logs/l1_payload/payload.d.ts +0 -60
  1221. package/dest/logs/l1_payload/payload.d.ts.map +0 -1
  1222. package/dest/logs/l1_payload/payload.js +0 -61
  1223. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
  1224. package/dest/network/index.d.ts +0 -32
  1225. package/dest/network/index.d.ts.map +0 -1
  1226. package/dest/network/index.js +0 -30
  1227. package/dest/note/extended_note.d.ts +0 -124
  1228. package/dest/note/extended_note.d.ts.map +0 -1
  1229. package/dest/note/extended_note.js +0 -115
  1230. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  1231. package/dest/parity/root_parity_input.d.ts +0 -54
  1232. package/dest/parity/root_parity_input.d.ts.map +0 -1
  1233. package/dest/parity/root_parity_input.js +0 -50
  1234. package/dest/parity/root_parity_inputs.d.ts +0 -39
  1235. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  1236. package/dest/proofs/client_ivc_proof.d.ts +0 -21
  1237. package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
  1238. package/dest/proofs/client_ivc_proof.js +0 -44
  1239. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  1240. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  1241. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -159
  1242. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
  1243. package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -136
  1244. package/dest/rollup/block_root_rollup.d.ts +0 -262
  1245. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  1246. package/dest/rollup/block_root_rollup.js +0 -293
  1247. package/dest/rollup/constant_rollup_data.d.ts +0 -47
  1248. package/dest/rollup/constant_rollup_data.d.ts.map +0 -1
  1249. package/dest/rollup/constant_rollup_data.js +0 -45
  1250. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -54
  1251. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
  1252. package/dest/rollup/empty_block_root_rollup_inputs.js +0 -68
  1253. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  1254. package/dest/rollup/previous_rollup_block_data.d.ts +0 -58
  1255. package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
  1256. package/dest/rollup/previous_rollup_block_data.js +0 -42
  1257. package/dest/rollup/previous_rollup_data.d.ts +0 -58
  1258. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  1259. package/dest/rollup/previous_rollup_data.js +0 -42
  1260. package/dest/rollup/private_base_rollup_inputs.d.ts +0 -23
  1261. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  1262. package/dest/rollup/private_base_rollup_inputs.js +0 -44
  1263. package/dest/rollup/private_tube_data.d.ts +0 -17
  1264. package/dest/rollup/private_tube_data.d.ts.map +0 -1
  1265. package/dest/rollup/private_tube_data.js +0 -25
  1266. package/dest/rollup/public_base_rollup_inputs.d.ts +0 -25
  1267. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  1268. package/dest/rollup/public_base_rollup_inputs.js +0 -48
  1269. package/dest/rollup/public_tube_data.d.ts +0 -17
  1270. package/dest/rollup/public_tube_data.d.ts.map +0 -1
  1271. package/dest/rollup/public_tube_data.js +0 -25
  1272. package/dest/rollup/root_rollup.d.ts +0 -112
  1273. package/dest/rollup/root_rollup.d.ts.map +0 -1
  1274. package/dest/rollup/root_rollup.js +0 -158
  1275. package/dest/rollup/state_diff_hints.d.ts.map +0 -1
  1276. package/dest/rollup/state_diff_hints.js +0 -85
  1277. package/dest/rollup/tube_inputs.d.ts +0 -40
  1278. package/dest/rollup/tube_inputs.d.ts.map +0 -1
  1279. package/dest/rollup/tube_inputs.js +0 -57
  1280. package/dest/shared_mutable/index.d.ts +0 -5
  1281. package/dest/shared_mutable/index.d.ts.map +0 -1
  1282. package/dest/shared_mutable/index.js +0 -4
  1283. package/dest/shared_mutable/scheduled_delay_change.d.ts +0 -10
  1284. package/dest/shared_mutable/scheduled_delay_change.d.ts.map +0 -1
  1285. package/dest/shared_mutable/scheduled_value_change.d.ts +0 -11
  1286. package/dest/shared_mutable/scheduled_value_change.d.ts.map +0 -1
  1287. package/dest/shared_mutable/shared_mutable_values.d.ts +0 -22
  1288. package/dest/shared_mutable/shared_mutable_values.d.ts.map +0 -1
  1289. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +0 -1
  1290. package/dest/shared_mutable/shared_mutable_values_with_hash.js +0 -30
  1291. package/dest/trees/protocol_contract_leaf.d.ts +0 -87
  1292. package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
  1293. package/dest/trees/protocol_contract_leaf.js +0 -103
  1294. package/dest/tx/max_block_number.d.ts +0 -55
  1295. package/dest/tx/max_block_number.d.ts.map +0 -1
  1296. package/dest/tx/max_block_number.js +0 -65
  1297. package/dest/tx/public_execution_request.d.ts +0 -45
  1298. package/dest/tx/public_execution_request.d.ts.map +0 -1
  1299. package/dest/tx/public_execution_request.js +0 -72
  1300. package/dest/vks/vk_witness_data.d.ts.map +0 -1
  1301. package/src/avm/public_data_hint.ts +0 -38
  1302. package/src/block/l2_block_downloader/index.ts +0 -2
  1303. package/src/block/l2_block_downloader/l2_block_downloader.ts +0 -149
  1304. package/src/block/nullifier_with_block_source.ts +0 -7
  1305. package/src/event/event.ts +0 -16
  1306. package/src/event/event_metadata.ts +0 -56
  1307. package/src/event/index.ts +0 -3
  1308. package/src/event/l1_event_payload.ts +0 -87
  1309. package/src/interfaces/pxe.ts +0 -536
  1310. package/src/kernel/combined_constant_data.ts +0 -128
  1311. package/src/kernel/hints/rollup_validation_requests.ts +0 -73
  1312. package/src/kernel/private_kernel_prover_profile_result.ts +0 -7
  1313. package/src/logs/indexed_tagging_secret.ts +0 -45
  1314. package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
  1315. package/src/logs/l1_payload/encryption_util.ts +0 -54
  1316. package/src/logs/l1_payload/index.ts +0 -2
  1317. package/src/logs/l1_payload/l1_note_payload.ts +0 -182
  1318. package/src/logs/l1_payload/payload.ts +0 -73
  1319. package/src/network/index.ts +0 -32
  1320. package/src/note/extended_note.ts +0 -168
  1321. package/src/parity/root_parity_input.ts +0 -71
  1322. package/src/proofs/client_ivc_proof.ts +0 -61
  1323. package/src/rollup/block_root_or_block_merge_public_inputs.ts +0 -175
  1324. package/src/rollup/block_root_rollup.ts +0 -362
  1325. package/src/rollup/constant_rollup_data.ts +0 -54
  1326. package/src/rollup/empty_block_root_rollup_inputs.ts +0 -85
  1327. package/src/rollup/previous_rollup_block_data.ts +0 -54
  1328. package/src/rollup/previous_rollup_data.ts +0 -54
  1329. package/src/rollup/private_base_rollup_inputs.ts +0 -50
  1330. package/src/rollup/private_tube_data.ts +0 -35
  1331. package/src/rollup/public_base_rollup_inputs.ts +0 -59
  1332. package/src/rollup/public_tube_data.ts +0 -35
  1333. package/src/rollup/root_rollup.ts +0 -206
  1334. package/src/rollup/tube_inputs.ts +0 -70
  1335. package/src/shared_mutable/index.ts +0 -4
  1336. package/src/shared_mutable/scheduled_delay_change.ts +0 -13
  1337. package/src/shared_mutable/shared_mutable_values_with_hash.ts +0 -38
  1338. package/src/trees/protocol_contract_leaf.ts +0 -132
  1339. package/src/tx/max_block_number.ts +0 -79
  1340. package/src/tx/public_execution_request.ts +0 -97
  1341. /package/dest/{block/nullifier_with_block_source.js → abi/event_metadata_definition.js} +0 -0
@@ -1,90 +1,94 @@
1
- import { makeBlockBlobPublicInputs, makeSpongeBlob } from '@aztec/blob-lib/testing';
2
- import { ARCHIVE_HEIGHT, AVM_PROOF_LENGTH_IN_FIELDS, AZTEC_MAX_EPOCH_DURATION, BLOBS_PER_BLOCK, CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS, FIELDS_PER_BLOB, FIXED_DA_GAS, FIXED_L2_GAS, GeneratorIndex, L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, MAX_CONTRACT_CLASS_LOGS_PER_TX, MAX_ENQUEUED_CALLS_PER_CALL, MAX_ENQUEUED_CALLS_PER_TX, MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_TX, MAX_NOTE_HASHES_PER_CALL, MAX_NOTE_HASHES_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIERS_PER_CALL, MAX_NULLIFIERS_PER_TX, MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PRIVATE_LOGS_PER_CALL, MAX_PRIVATE_LOGS_PER_TX, MAX_PUBLIC_LOGS_PER_TX, MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, NESTED_RECURSIVE_PROOF_LENGTH, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH, NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH, NULLIFIER_TREE_HEIGHT, NUM_BASE_PARITY_PER_ROOT_PARITY, NUM_MSGS_PER_BASE_PARITY, PRIVATE_LOG_SIZE_IN_FIELDS, PUBLIC_DATA_TREE_HEIGHT, PUBLIC_LOG_DATA_SIZE_IN_FIELDS, RECURSIVE_PROOF_LENGTH, TUBE_PROOF_LENGTH, VK_TREE_HEIGHT } from '@aztec/constants';
1
+ import { makeBatchedBlobAccumulator, makeSpongeBlob } from '@aztec/blob-lib/testing';
2
+ import { ARCHIVE_HEIGHT, AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED, AZTEC_MAX_EPOCH_DURATION, CHONK_PROOF_LENGTH, CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, FIXED_DA_GAS, FIXED_L2_GAS, GeneratorIndex, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, MAX_CONTRACT_CLASS_LOGS_PER_TX, MAX_ENQUEUED_CALLS_PER_CALL, MAX_ENQUEUED_CALLS_PER_TX, MAX_KEY_VALIDATION_REQUESTS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_CALL, MAX_L2_TO_L1_MSGS_PER_TX, MAX_NOTE_HASHES_PER_CALL, MAX_NOTE_HASHES_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIERS_PER_CALL, MAX_NULLIFIERS_PER_TX, MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PRIVATE_LOGS_PER_CALL, MAX_PRIVATE_LOGS_PER_TX, MAX_PROTOCOL_CONTRACTS, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, NULLIFIER_TREE_HEIGHT, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP, NUM_BASE_PARITY_PER_ROOT_PARITY, NUM_MSGS_PER_BASE_PARITY, PRIVATE_LOG_SIZE_IN_FIELDS, PUBLIC_DATA_TREE_HEIGHT, RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, VK_TREE_HEIGHT } from '@aztec/constants';
3
3
  import { makeHalfFullTuple, makeTuple } from '@aztec/foundation/array';
4
- import { toBufferBE } from '@aztec/foundation/bigint-buffer';
5
- import { compact } from '@aztec/foundation/collection';
6
- import { SchnorrSignature, poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
4
+ import { compact, padArrayEnd } from '@aztec/foundation/collection';
5
+ import { Grumpkin, SchnorrSignature, poseidon2HashWithSeparator, sha256 } from '@aztec/foundation/crypto';
7
6
  import { EthAddress } from '@aztec/foundation/eth-address';
8
- import { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
7
+ import { Fq, Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
9
8
  import { MembershipWitness } from '@aztec/foundation/trees';
10
9
  import { FunctionSelector } from '../abi/function_selector.js';
11
10
  import { ContractStorageRead } from '../avm/contract_storage_read.js';
12
11
  import { ContractStorageUpdateRequest } from '../avm/contract_storage_update_request.js';
13
- import { AvmAccumulatedData, AvmAppendTreeHint, AvmCircuitInputs, AvmCircuitPublicInputs, AvmContractClassHint, AvmContractInstanceHint, AvmEnqueuedCallHint, AvmExecutionHints, AvmNullifierReadTreeHint, AvmNullifierWriteTreeHint, AvmPublicDataReadTreeHint, AvmPublicDataWriteTreeHint, RevertCode } from '../avm/index.js';
14
- import { PublicDataHint } from '../avm/public_data_hint.js';
12
+ import { AvmAccumulatedData, AvmAccumulatedDataArrayLengths, AvmAppendLeavesHint, AvmBytecodeCommitmentHint, AvmCircuitInputs, AvmCircuitPublicInputs, AvmCommitCheckpointHint, AvmContractClassHint, AvmContractInstanceHint, AvmCreateCheckpointHint, AvmExecutionHints, AvmGetLeafPreimageHintNullifierTree, AvmGetLeafPreimageHintPublicDataTree, AvmGetLeafValueHint, AvmGetPreviousValueIndexHint, AvmGetSiblingPathHint, AvmRevertCheckpointHint, AvmSequentialInsertHintNullifierTree, AvmSequentialInsertHintPublicDataTree, AvmTxHint, RevertCode } from '../avm/index.js';
15
13
  import { PublicDataRead } from '../avm/public_data_read.js';
16
14
  import { PublicDataWrite } from '../avm/public_data_write.js';
17
15
  import { AztecAddress } from '../aztec-address/index.js';
16
+ import { L2BlockHeader } from '../block/index.js';
18
17
  import { SerializableContractInstance, computeContractClassId, computePublicBytecodeCommitment } from '../contract/index.js';
18
+ import { computeEffectiveGasFees } from '../fees/transaction_fee.js';
19
19
  import { Gas, GasFees, GasSettings } from '../gas/index.js';
20
+ import { computeCalldataHash } from '../hash/hash.js';
20
21
  import { KeyValidationRequest } from '../kernel/hints/key_validation_request.js';
21
22
  import { KeyValidationRequestAndGenerator } from '../kernel/hints/key_validation_request_and_generator.js';
22
23
  import { ReadRequest } from '../kernel/hints/read_request.js';
23
- import { RollupValidationRequests } from '../kernel/hints/rollup_validation_requests.js';
24
- import { CombinedConstantData, PartialPrivateTailPublicInputsForPublic, PartialPrivateTailPublicInputsForRollup, PrivateKernelTailCircuitPublicInputs, PrivateToAvmAccumulatedData, PrivateToAvmAccumulatedDataArrayLengths, PrivateToPublicAccumulatedData, PrivateToPublicKernelCircuitPublicInputs, PrivateToRollupAccumulatedData, mergeAccumulatedData } from '../kernel/index.js';
25
- import { LogHash, ScopedLogHash } from '../kernel/log_hash.js';
24
+ import { ClaimedLengthArray, PartialPrivateTailPublicInputsForPublic, PartialPrivateTailPublicInputsForRollup, PrivateKernelTailCircuitPublicInputs, PrivateToAvmAccumulatedData, PrivateToAvmAccumulatedDataArrayLengths, PrivateToPublicAccumulatedData, PrivateToPublicKernelCircuitPublicInputs, PrivateToRollupAccumulatedData } from '../kernel/index.js';
25
+ import { CountedLogHash, LogHash, ScopedLogHash } from '../kernel/log_hash.js';
26
26
  import { NoteHash } from '../kernel/note_hash.js';
27
27
  import { Nullifier } from '../kernel/nullifier.js';
28
28
  import { PrivateCallRequest } from '../kernel/private_call_request.js';
29
29
  import { PrivateCircuitPublicInputs } from '../kernel/private_circuit_public_inputs.js';
30
30
  import { PrivateLogData } from '../kernel/private_log_data.js';
31
31
  import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
32
- import { CountedPublicCallRequest, PublicCallRequest } from '../kernel/public_call_request.js';
32
+ import { CountedPublicCallRequest, PublicCallRequest, PublicCallRequestArrayLengths } from '../kernel/public_call_request.js';
33
33
  import { PublicKeys, computeAddress } from '../keys/index.js';
34
- import { ContractClassLog } from '../logs/contract_class_log.js';
34
+ import { ContractClassLogFields } from '../logs/index.js';
35
35
  import { PrivateLog } from '../logs/private_log.js';
36
- import { PublicLog } from '../logs/public_log.js';
37
- import { L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
38
- import { BaseParityInputs } from '../parity/base_parity_inputs.js';
36
+ import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
37
+ import { CountedL2ToL1Message, L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
38
+ import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
39
39
  import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
40
- import { RootParityInput } from '../parity/root_parity_input.js';
41
- import { RootParityInputs } from '../parity/root_parity_inputs.js';
40
+ import { ParityRootPrivateInputs } from '../parity/parity_root_private_inputs.js';
41
+ import { ProofData } from '../proofs/index.js';
42
42
  import { Proof } from '../proofs/proof.js';
43
43
  import { ProvingRequestType } from '../proofs/proving_request_type.js';
44
44
  import { makeRecursiveProof } from '../proofs/recursive_proof.js';
45
- import { AvmProofData } from '../rollup/avm_proof_data.js';
46
- import { BaseOrMergeRollupPublicInputs } from '../rollup/base_or_merge_rollup_public_inputs.js';
47
45
  import { PrivateBaseRollupHints, PublicBaseRollupHints } from '../rollup/base_rollup_hints.js';
48
- import { BlockMergeRollupInputs } from '../rollup/block_merge_rollup.js';
49
- import { BlockRootOrBlockMergePublicInputs, FeeRecipient } from '../rollup/block_root_or_block_merge_public_inputs.js';
50
- import { BlockRootRollupBlobData, BlockRootRollupData, BlockRootRollupInputs, SingleTxBlockRootRollupInputs } from '../rollup/block_root_rollup.js';
51
- import { ConstantRollupData } from '../rollup/constant_rollup_data.js';
52
- import { EmptyBlockRootRollupInputs } from '../rollup/empty_block_root_rollup_inputs.js';
53
- import { MergeRollupInputs } from '../rollup/merge_rollup.js';
54
- import { PreviousRollupBlockData } from '../rollup/previous_rollup_block_data.js';
55
- import { PreviousRollupData } from '../rollup/previous_rollup_data.js';
56
- import { PrivateBaseRollupInputs } from '../rollup/private_base_rollup_inputs.js';
57
- import { PrivateTubeData } from '../rollup/private_tube_data.js';
58
- import { PublicBaseRollupInputs } from '../rollup/public_base_rollup_inputs.js';
59
- import { PublicTubeData } from '../rollup/public_tube_data.js';
60
- import { RootRollupInputs, RootRollupPublicInputs } from '../rollup/root_rollup.js';
61
- import { PrivateBaseStateDiffHints } from '../rollup/state_diff_hints.js';
46
+ import { BlockConstantData } from '../rollup/block_constant_data.js';
47
+ import { BlockMergeRollupPrivateInputs } from '../rollup/block_merge_rollup_private_inputs.js';
48
+ import { BlockRollupPublicInputs } from '../rollup/block_rollup_public_inputs.js';
49
+ import { BlockRootFirstRollupPrivateInputs, BlockRootSingleTxRollupPrivateInputs } from '../rollup/block_root_rollup_private_inputs.js';
50
+ import { CheckpointConstantData } from '../rollup/checkpoint_constant_data.js';
51
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
52
+ import { CheckpointRollupPublicInputs, FeeRecipient } from '../rollup/checkpoint_rollup_public_inputs.js';
53
+ import { EpochConstantData } from '../rollup/epoch_constant_data.js';
54
+ import { PrivateTxBaseRollupPrivateInputs } from '../rollup/private_tx_base_rollup_private_inputs.js';
55
+ import { PublicChonkVerifierPublicInputs } from '../rollup/public_chonk_verifier_public_inputs.js';
56
+ import { PublicTxBaseRollupPrivateInputs } from '../rollup/public_tx_base_rollup_private_inputs.js';
57
+ import { RootRollupPublicInputs } from '../rollup/root_rollup_public_inputs.js';
58
+ import { TreeSnapshotDiffHints } from '../rollup/tree_snapshot_diff_hints.js';
59
+ import { TxMergeRollupPrivateInputs } from '../rollup/tx_merge_rollup_private_inputs.js';
60
+ import { TxRollupPublicInputs } from '../rollup/tx_rollup_public_inputs.js';
62
61
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
63
- import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
62
+ import { MerkleTreeId } from '../trees/merkle_tree_id.js';
63
+ import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
64
64
  import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
65
65
  import { BlockHeader } from '../tx/block_header.js';
66
66
  import { CallContext } from '../tx/call_context.js';
67
- import { ContentCommitment, NUM_BYTES_PER_SHA256 } from '../tx/content_commitment.js';
67
+ import { ContentCommitment } from '../tx/content_commitment.js';
68
68
  import { FunctionData } from '../tx/function_data.js';
69
69
  import { GlobalVariables } from '../tx/global_variables.js';
70
- import { MaxBlockNumber } from '../tx/max_block_number.js';
71
70
  import { PartialStateReference } from '../tx/partial_state_reference.js';
72
71
  import { makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/processed_tx.js';
72
+ import { ProtocolContracts } from '../tx/protocol_contracts.js';
73
+ import { PublicCallRequestWithCalldata } from '../tx/public_call_request_with_calldata.js';
73
74
  import { StateReference } from '../tx/state_reference.js';
74
75
  import { TreeSnapshots } from '../tx/tree_snapshots.js';
75
76
  import { TxConstantData } from '../tx/tx_constant_data.js';
76
77
  import { TxContext } from '../tx/tx_context.js';
77
78
  import { TxRequest } from '../tx/tx_request.js';
78
- import { RollupTypes, Vector } from '../types/index.js';
79
+ import { Vector } from '../types/index.js';
80
+ import { VkData } from '../vks/index.js';
79
81
  import { VerificationKey, VerificationKeyAsFields, VerificationKeyData } from '../vks/verification_key.js';
80
- import { VkWitnessData } from '../vks/vk_witness_data.js';
81
82
  import { mockTx } from './mocks.js';
82
83
  /**
83
84
  * Creates an arbitrary side effect object with the given seed.
84
85
  * @param seed - The seed to use for generating the object.
85
86
  * @returns A side effect object.
86
87
  */ function makeLogHash(seed) {
87
- return new LogHash(fr(seed), seed + 1, seed + 2);
88
+ return new LogHash(fr(seed), seed + 1);
89
+ }
90
+ function makeCountedLogHash(seed) {
91
+ return new CountedLogHash(makeLogHash(seed), seed + 0x10);
88
92
  }
89
93
  function makeScopedLogHash(seed) {
90
94
  return new ScopedLogHash(makeLogHash(seed), makeAztecAddress(seed + 3));
@@ -93,20 +97,16 @@ function makeNoteHash(seed) {
93
97
  return new NoteHash(fr(seed), seed + 1);
94
98
  }
95
99
  function makeNullifier(seed) {
96
- return new Nullifier(fr(seed), seed + 1, fr(seed + 2));
97
- }
98
- function makeContractClassLog(seed) {
99
- // The '* 1' removes the 'Type instantiation is excessively deep and possibly infinite. ts(2589)' err
100
- return new ContractClassLog(makeAztecAddress(seed), makeTuple(CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS * 1, fr, seed + 1));
100
+ return new Nullifier(fr(seed), fr(seed + 1), seed + 2);
101
101
  }
102
102
  function makePrivateLog(seed) {
103
- return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed));
103
+ return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed), PRIVATE_LOG_SIZE_IN_FIELDS);
104
104
  }
105
105
  function makePrivateLogData(seed) {
106
106
  return new PrivateLogData(makePrivateLog(seed + 0x100), seed, seed + 1);
107
107
  }
108
108
  function makePublicLog(seed) {
109
- return new PublicLog(makeAztecAddress(seed), makeTuple(PUBLIC_LOG_DATA_SIZE_IN_FIELDS, fr, seed + 1));
109
+ return new PublicLog(makeAztecAddress(seed), new Array(10).fill(null).map((_, i)=>new Fr(seed + i)));
110
110
  }
111
111
  /**
112
112
  * Creates an arbitrary tx context with the given seed.
@@ -177,15 +177,9 @@ function makePublicDataWrite(seed = 1) {
177
177
  */ export function makeContractStorageRead(seed = 1) {
178
178
  return new ContractStorageRead(fr(seed), fr(seed + 1), seed + 2);
179
179
  }
180
- export function makeRollupValidationRequests(seed = 1) {
181
- return new RollupValidationRequests(new MaxBlockNumber(true, new Fr(seed + 0x31415)));
182
- }
183
180
  function makeTxConstantData(seed = 1) {
184
181
  return new TxConstantData(makeHeader(seed), makeTxContext(seed + 0x100), new Fr(seed + 0x200), new Fr(seed + 0x201));
185
182
  }
186
- export function makeCombinedConstantData(seed = 1) {
187
- return new CombinedConstantData(makeHeader(seed), makeTxContext(seed + 0x100), new Fr(seed + 0x200), new Fr(seed + 0x201), makeGlobalVariables(seed + 0x300));
188
- }
189
183
  /**
190
184
  * Creates arbitrary accumulated data.
191
185
  * @param seed - The seed to use for generating the accumulated data.
@@ -204,7 +198,10 @@ function makePrivateToAvmAccumulatedDataArrayLengths(seed = 1) {
204
198
  return new PrivateToAvmAccumulatedDataArrayLengths(seed, seed + 1, seed + 2);
205
199
  }
206
200
  function makeAvmAccumulatedData(seed = 1) {
207
- return new AvmAccumulatedData(makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed), makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100), makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200), makeTuple(MAX_PUBLIC_LOGS_PER_TX, makePublicLog, seed + 0x300), makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, makePublicDataWrite, seed + 0x400));
201
+ return new AvmAccumulatedData(makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed), makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100), makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200), FlatPublicLogs.fromLogs(new Array(20).fill(null).map((_, i)=>makePublicLog(seed + i * 256))), makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, makePublicDataWrite, seed + 0x400));
202
+ }
203
+ function makeAvmAccumulatedDataArrayLengths(seed = 1) {
204
+ return new AvmAccumulatedDataArrayLengths(seed, seed + 1, seed + 2, seed + 3);
208
205
  }
209
206
  export function makeGas(seed = 1) {
210
207
  return new Gas(seed, seed + 1);
@@ -229,20 +226,26 @@ export function makeGas(seed = 1) {
229
226
  */ export function makePrivateKernelTailCircuitPublicInputs(seed = 1, isForPublic = true) {
230
227
  const forPublic = isForPublic ? new PartialPrivateTailPublicInputsForPublic(makePrivateToPublicAccumulatedData(seed + 0x100), makePrivateToPublicAccumulatedData(seed + 0x200), makePublicCallRequest(seed + 0x400)) : undefined;
231
228
  const forRollup = !isForPublic ? new PartialPrivateTailPublicInputsForRollup(makePrivateToRollupAccumulatedData(seed + 0x100)) : undefined;
232
- return new PrivateKernelTailCircuitPublicInputs(makeTxConstantData(seed + 0x300), makeRollupValidationRequests(seed + 0x500), makeGas(seed + 0x600), makeAztecAddress(seed + 0x700), forPublic, forRollup);
229
+ return new PrivateKernelTailCircuitPublicInputs(makeTxConstantData(seed + 0x300), makeGas(seed + 0x600), makeAztecAddress(seed + 0x700), BigInt(seed + 0x800), forPublic, forRollup);
230
+ }
231
+ export function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
232
+ return new PrivateToPublicKernelCircuitPublicInputs(makeTxConstantData(seed), makePrivateToPublicAccumulatedData(seed + 0x200), makePrivateToPublicAccumulatedData(seed + 0x300), makePublicCallRequest(seed + 0x400), makeGas(seed + 0x500), makeAztecAddress(seed + 0x600), BigInt(seed + 0x700));
233
233
  }
234
- function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
235
- return new PrivateToPublicKernelCircuitPublicInputs(makeTxConstantData(seed), makeRollupValidationRequests(seed + 0x100), makePrivateToPublicAccumulatedData(seed + 0x200), makePrivateToPublicAccumulatedData(seed + 0x300), makePublicCallRequest(seed + 0x400), makeGas(seed + 0x500), makeAztecAddress(seed + 0x600));
234
+ export function makePublicChonkVerifierPublicInputs(seed = 1) {
235
+ return new PublicChonkVerifierPublicInputs(makePrivateToPublicKernelCircuitPublicInputs(seed), fr(seed + 0x1000));
236
+ }
237
+ export function makeProtocolContracts(seed = 1) {
238
+ return new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed));
236
239
  }
237
240
  /**
238
241
  * Creates arbitrary public kernel circuit public inputs.
239
242
  * @param seed - The seed to use for generating the kernel circuit public inputs.
240
243
  * @returns Public kernel circuit public inputs.
241
244
  */ export function makePrivateToRollupKernelCircuitPublicInputs(seed = 1, fullAccumulatedData = true) {
242
- return new PrivateToRollupKernelCircuitPublicInputs(makeTxConstantData(seed + 0x100), makeRollupValidationRequests(seed), makePrivateToRollupAccumulatedData(seed, fullAccumulatedData), makeGas(seed + 0x600), makeAztecAddress(seed + 0x700));
245
+ return new PrivateToRollupKernelCircuitPublicInputs(makeTxConstantData(seed + 0x100), makePrivateToRollupAccumulatedData(seed, fullAccumulatedData), makeGas(seed + 0x600), makeAztecAddress(seed + 0x700), BigInt(seed + 0x800));
243
246
  }
244
247
  function makeAvmCircuitPublicInputs(seed = 1) {
245
- return new AvmCircuitPublicInputs(makeGlobalVariables(seed), makeTreeSnapshots(seed + 0x10), makeGas(seed + 0x20), makeGasSettings(), makeAztecAddress(seed + 0x40), makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x100), makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x200), makePublicCallRequest(seed + 0x300), makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x400), makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x410), makePrivateToAvmAccumulatedData(seed + 0x500), makePrivateToAvmAccumulatedData(seed + 0x600), makeTreeSnapshots(seed + 0x700), makeGas(seed + 0x750), makeAvmAccumulatedData(seed + 0x800), fr(seed + 0x900), false);
248
+ return new AvmCircuitPublicInputs(makeGlobalVariables(seed), makeProtocolContracts(seed + 0x100), makeTreeSnapshots(seed + 0x10), makeGas(seed + 0x20), makeGasSettings(), makeGasFees(seed + 0x30), makeAztecAddress(seed + 0x40), fr(seed + 0x50), makePublicCallRequestArrayLengths(seed + 0x60), makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x100), makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x200), makePublicCallRequest(seed + 0x300), makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x400), makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x410), makePrivateToAvmAccumulatedData(seed + 0x500), makePrivateToAvmAccumulatedData(seed + 0x600), makeTreeSnapshots(seed + 0x700), makeGas(seed + 0x750), makeAvmAccumulatedDataArrayLengths(seed + 0x800), makeAvmAccumulatedData(seed + 0x800), fr(seed + 0x900), false);
246
249
  }
247
250
  function makeSiblingPath(seed, size) {
248
251
  return makeTuple(size, fr, seed);
@@ -292,7 +295,10 @@ function makePrivateCallRequest(seed = 1) {
292
295
  return new PrivateCallRequest(makeCallContext(seed + 0x1), fr(seed + 0x3), fr(seed + 0x4), seed + 0x10, seed + 0x11);
293
296
  }
294
297
  export function makePublicCallRequest(seed = 1) {
295
- return new PublicCallRequest(makeAztecAddress(seed), makeAztecAddress(seed + 1), makeSelector(seed + 2), false, fr(seed + 0x3));
298
+ return new PublicCallRequest(makeAztecAddress(seed), makeAztecAddress(seed + 1), false, fr(seed + 0x3));
299
+ }
300
+ export function makePublicCallRequestArrayLengths(seed = 1) {
301
+ return new PublicCallRequestArrayLengths(seed, seed + 1, seed % 2 === 0);
296
302
  }
297
303
  function makeCountedPublicCallRequest(seed = 1) {
298
304
  return new CountedPublicCallRequest(makePublicCallRequest(seed), seed + 0x100);
@@ -306,36 +312,40 @@ function makeCountedPublicCallRequest(seed = 1) {
306
312
  origin: makeAztecAddress(seed),
307
313
  functionData: new FunctionData(makeSelector(seed + 0x100), /*isPrivate=*/ true),
308
314
  argsHash: fr(seed + 0x200),
309
- txContext: makeTxContext(seed + 0x400)
315
+ txContext: makeTxContext(seed + 0x400),
316
+ salt: fr(seed + 0x500)
310
317
  });
311
318
  }
319
+ function makeClaimedLengthArray(arraySize, makeItem, seed, length = arraySize) {
320
+ return new ClaimedLengthArray(makeTuple(arraySize, makeItem, seed), length);
321
+ }
312
322
  /**
313
323
  * Makes arbitrary private circuit public inputs.
314
324
  * @param seed - The seed to use for generating the private circuit public inputs.
315
325
  * @returns A private circuit public inputs.
316
326
  */ export function makePrivateCircuitPublicInputs(seed = 0) {
317
327
  return PrivateCircuitPublicInputs.from({
318
- maxBlockNumber: new MaxBlockNumber(true, new Fr(seed + 0x31415)),
328
+ includeByTimestamp: BigInt(seed + 0x31415),
319
329
  callContext: makeCallContext(seed, {
320
330
  isStaticCall: true
321
331
  }),
322
332
  argsHash: fr(seed + 0x100),
323
333
  returnsHash: fr(seed + 0x200),
324
334
  minRevertibleSideEffectCounter: fr(0),
325
- noteHashReadRequests: makeTuple(MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x300),
326
- nullifierReadRequests: makeTuple(MAX_NULLIFIER_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x310),
327
- keyValidationRequestsAndGenerators: makeTuple(MAX_KEY_VALIDATION_REQUESTS_PER_CALL, makeKeyValidationRequestAndGenerators, seed + 0x320),
328
- noteHashes: makeTuple(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
329
- nullifiers: makeTuple(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
330
- privateCallRequests: makeTuple(MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, makePrivateCallRequest, seed + 0x600),
331
- publicCallRequests: makeTuple(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
335
+ noteHashReadRequests: makeClaimedLengthArray(MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x300),
336
+ nullifierReadRequests: makeClaimedLengthArray(MAX_NULLIFIER_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x310),
337
+ keyValidationRequestsAndGenerators: makeClaimedLengthArray(MAX_KEY_VALIDATION_REQUESTS_PER_CALL, makeKeyValidationRequestAndGenerators, seed + 0x320),
338
+ noteHashes: makeClaimedLengthArray(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
339
+ nullifiers: makeClaimedLengthArray(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
340
+ privateCallRequests: makeClaimedLengthArray(MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, makePrivateCallRequest, seed + 0x600),
341
+ publicCallRequests: makeClaimedLengthArray(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
332
342
  publicTeardownCallRequest: makePublicCallRequest(seed + 0x800),
333
- l2ToL1Msgs: makeTuple(MAX_L2_TO_L1_MSGS_PER_CALL, makeL2ToL1Message, seed + 0x800),
334
- privateLogs: makeTuple(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
335
- contractClassLogsHashes: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeLogHash, seed + 0xa00),
343
+ l2ToL1Msgs: makeClaimedLengthArray(MAX_L2_TO_L1_MSGS_PER_CALL, makeCountedL2ToL1Message, seed + 0x800),
344
+ privateLogs: makeClaimedLengthArray(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
345
+ contractClassLogsHashes: makeClaimedLengthArray(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeCountedLogHash, seed + 0xa00),
336
346
  startSideEffectCounter: fr(seed + 0x849),
337
347
  endSideEffectCounter: fr(seed + 0x850),
338
- historicalHeader: makeHeader(seed + 0xd00, undefined),
348
+ anchorBlockHeader: makeHeader(seed + 0xd00, undefined),
339
349
  txContext: makeTxContext(seed + 0x1400),
340
350
  isFeePayer: false
341
351
  });
@@ -344,37 +354,21 @@ export function makeGlobalVariables(seed = 1, overrides = {}) {
344
354
  return GlobalVariables.from({
345
355
  chainId: new Fr(seed),
346
356
  version: new Fr(seed + 1),
347
- blockNumber: new Fr(seed + 2),
357
+ blockNumber: seed + 2,
348
358
  slotNumber: new Fr(seed + 3),
349
- timestamp: new Fr(seed + 4),
359
+ timestamp: BigInt(seed + 4),
350
360
  coinbase: EthAddress.fromField(new Fr(seed + 5)),
351
361
  feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
352
- gasFees: new GasFees(new Fr(seed + 7), new Fr(seed + 8)),
362
+ gasFees: new GasFees(seed + 7, seed + 8),
353
363
  ...compact(overrides)
354
364
  });
355
365
  }
356
- export function makeGasFees(seed = 1) {
357
- return new GasFees(fr(seed), fr(seed + 1));
366
+ function makeGasFees(seed = 1) {
367
+ return new GasFees(seed, seed + 1);
358
368
  }
359
- export function makeFeeRecipient(seed = 1) {
369
+ function makeFeeRecipient(seed = 1) {
360
370
  return new FeeRecipient(EthAddress.fromField(fr(seed)), fr(seed + 1));
361
371
  }
362
- /**
363
- * Makes constant base rollup data.
364
- * @param seed - The seed to use for generating the constant base rollup data.
365
- * @param blockNumber - The block number to use for generating the global variables.
366
- * @returns A constant base rollup data.
367
- */ export function makeConstantRollupData(seed = 1, globalVariables = undefined) {
368
- return ConstantRollupData.from({
369
- lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x300),
370
- vkTreeRoot: fr(seed + 0x401),
371
- protocolContractTreeRoot: fr(seed + 0x402),
372
- globalVariables: globalVariables ?? makeGlobalVariables(seed + 0x500)
373
- });
374
- }
375
- export function makeScopedL2ToL1Message(seed = 1) {
376
- return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
377
- }
378
372
  /**
379
373
  * Makes arbitrary append only tree snapshot.
380
374
  * @param seed - The seed to use for generating the append only tree snapshot.
@@ -411,90 +405,43 @@ export function makeScopedL2ToL1Message(seed = 1) {
411
405
  */ export function makeSchnorrSignature(seed = 1) {
412
406
  return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
413
407
  }
408
+ function makeBlockConstantData(seed = 1, globalVariables) {
409
+ return new BlockConstantData(makeAppendOnlyTreeSnapshot(seed + 0x100), makeAppendOnlyTreeSnapshot(seed + 0x200), fr(seed + 0x300), fr(seed + 0x400), globalVariables ?? makeGlobalVariables(seed + 0x500), fr(seed + 0x600));
410
+ }
411
+ function makeCheckpointConstantData(seed = 1) {
412
+ return new CheckpointConstantData(fr(seed), fr(seed + 1), fr(seed + 2), fr(seed + 3), fr(seed + 4), fr(seed + 5), makeEthAddress(seed + 6), makeAztecAddress(seed + 7), makeGasFees(seed + 8));
413
+ }
414
+ function makeEpochConstantData(seed = 1) {
415
+ return new EpochConstantData(fr(seed), fr(seed + 1), fr(seed + 2), fr(seed + 3), fr(seed + 4));
416
+ }
414
417
  /**
415
418
  * Makes arbitrary base or merge rollup circuit public inputs.
416
419
  * @param seed - The seed to use for generating the base rollup circuit public inputs.
417
420
  * @param blockNumber - The block number to use for generating the base rollup circuit public inputs.
418
421
  * @returns A base or merge rollup circuit public inputs.
419
- */ export function makeBaseOrMergeRollupPublicInputs(seed = 0, globalVariables = undefined) {
420
- return new BaseOrMergeRollupPublicInputs(RollupTypes.Base, 1, makeConstantRollupData(seed + 0x200, globalVariables), makePartialStateReference(seed + 0x300), makePartialStateReference(seed + 0x400), makeSpongeBlob(seed + 0x500), makeSpongeBlob(seed + 0x600), fr(seed + 0x901), fr(seed + 0x902), fr(seed + 0x903));
422
+ */ export function makeTxRollupPublicInputs(seed = 0, globalVariables = undefined) {
423
+ return new TxRollupPublicInputs(1, makeBlockConstantData(seed + 0x200, globalVariables), makePartialStateReference(seed + 0x300), makePartialStateReference(seed + 0x400), makeSpongeBlob(seed + 0x500), makeSpongeBlob(seed + 0x600), fr(seed + 0x901), fr(seed + 0x902), fr(seed + 0x903));
421
424
  }
422
425
  /**
423
426
  * Makes arbitrary block merge or block root rollup circuit public inputs.
424
427
  * @param seed - The seed to use for generating the block merge or block root rollup circuit public inputs.
425
428
  * @param blockNumber - The block number to use for generating the block merge or block root rollup circuit public inputs.
426
429
  * @returns A block merge or block root rollup circuit public inputs.
427
- */ export function makeBlockRootOrBlockMergeRollupPublicInputs(seed = 0, globalVariables = undefined) {
428
- return new BlockRootOrBlockMergePublicInputs(makeAppendOnlyTreeSnapshot(seed + 0x200), makeAppendOnlyTreeSnapshot(seed + 0x300), fr(seed + 0x400), fr(seed + 0x500), globalVariables ?? makeGlobalVariables(seed + 0x501), globalVariables ?? makeGlobalVariables(seed + 0x502), fr(seed + 0x600), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeFeeRecipient(seed), 0x700), fr(seed + 0x800), fr(seed + 0x801), fr(seed + 0x900), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeBlockBlobPublicInputs(seed), 0x100));
429
- }
430
- /**
431
- * Makes arbitrary previous rollup data.
432
- * @param seed - The seed to use for generating the previous rollup data.
433
- * @param globalVariables - The global variables to use when generating the previous rollup data.
434
- * @returns A previous rollup data.
435
- */ export function makePreviousRollupData(seed = 0, globalVariables = undefined) {
436
- return new PreviousRollupData(makeBaseOrMergeRollupPublicInputs(seed, globalVariables), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, seed + 0x50), VerificationKeyAsFields.makeFakeHonk(), makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120));
437
- }
438
- /**
439
- * Makes arbitrary previous rollup block data.
440
- * @param seed - The seed to use for generating the previous rollup block data.
441
- * @param globalVariables - The global variables to use when generating the previous rollup block data.
442
- * @returns A previous rollup block data.
443
- */ export function makePreviousRollupBlockData(seed = 0, globalVariables = undefined) {
444
- return new PreviousRollupBlockData(makeBlockRootOrBlockMergeRollupPublicInputs(seed, globalVariables), makeRecursiveProof(NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH, seed + 0x50), VerificationKeyAsFields.makeFakeHonk(), makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120));
445
- }
446
- /**
447
- * Makes root rollup inputs.
448
- * @param seed - The seed to use for generating the root rollup inputs.
449
- * @param globalVariables - The global variables to use.
450
- * @returns A root rollup inputs.
451
- */ export function makeRootRollupInputs(seed = 0, globalVariables) {
452
- return new RootRollupInputs([
453
- makePreviousRollupBlockData(seed, globalVariables),
454
- makePreviousRollupBlockData(seed + 0x1000, globalVariables)
455
- ], fr(seed + 0x2000));
456
- }
457
- function makeBlockRootRollupData(seed = 0) {
458
- return new BlockRootRollupData(makeRootParityInput(NESTED_RECURSIVE_PROOF_LENGTH, seed + 0x2000), makeTuple(L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, fr, 0x2100), makeTuple(ARCHIVE_HEIGHT, fr, 0x2200), makeHeader(seed + 0x2300), fr(seed + 0x2400));
430
+ */ export function makeBlockRollupPublicInputs(seed = 0) {
431
+ return new BlockRollupPublicInputs(makeCheckpointConstantData(seed + 0x100), makeAppendOnlyTreeSnapshot(seed + 0x200), makeAppendOnlyTreeSnapshot(seed + 0x300), makeStateReference(seed + 0x400), makeStateReference(seed + 0x500), makeSpongeBlob(seed + 0x600), makeSpongeBlob(seed + 0x700), BigInt(seed + 0x810), BigInt(seed + 0x820), fr(seed + 0x830), fr(seed + 0x840), fr(seed + 0x850), fr(seed + 0x860));
459
432
  }
460
- function makeBlockRootRollupBlobData(seed = 0) {
461
- return new BlockRootRollupBlobData(makeTuple(FIELDS_PER_BLOB * BLOBS_PER_BLOCK, fr, 0x2500), makeTuple(BLOBS_PER_BLOCK, ()=>makeTuple(2, fr, 0x2600)), fr(seed + 0x2700));
462
- }
463
- /**
464
- * Makes block root rollup inputs.
465
- * @param seed - The seed to use for generating the root rollup inputs.
466
- * @param globalVariables - The global variables to use.
467
- * @returns A block root rollup inputs.
468
- */ export function makeBlockRootRollupInputs(seed = 0, globalVariables) {
469
- return new BlockRootRollupInputs([
470
- makePreviousRollupData(seed, globalVariables),
471
- makePreviousRollupData(seed + 0x1000, globalVariables)
472
- ], makeBlockRootRollupData(seed + 0x2000), makeBlockRootRollupBlobData(seed + 0x4000));
473
- }
474
- export function makeSingleTxBlockRootRollupInputs(seed = 0, globalVariables) {
475
- return new SingleTxBlockRootRollupInputs([
476
- makePreviousRollupData(seed, globalVariables)
477
- ], makeBlockRootRollupData(seed + 0x2000), makeBlockRootRollupBlobData(seed + 0x4000));
478
- }
479
- /**
480
- * Makes empty block root rollup inputs.
481
- * @param seed - The seed to use for generating the root rollup inputs.
482
- * @param globalVariables - The global variables to use.
483
- * @returns A block root rollup inputs.
484
- */ export function makeEmptyBlockRootRollupInputs(seed = 0, globalVariables) {
485
- return new EmptyBlockRootRollupInputs(makeBlockRootRollupData(seed + 0x1000), makeConstantRollupData(0x2500, globalVariables), true);
486
- }
487
- export function makeRootParityInput(proofSize, seed = 0) {
488
- return new RootParityInput(makeRecursiveProof(proofSize, seed), VerificationKeyAsFields.makeFake(seed + 0x100), makeTuple(VK_TREE_HEIGHT, fr, 0x200), makeParityPublicInputs(seed + 0x300));
433
+ export function makeCheckpointRollupPublicInputs(seed = 0) {
434
+ const startBlobAccumulator = makeBatchedBlobAccumulator(seed);
435
+ return new CheckpointRollupPublicInputs(makeEpochConstantData(seed), makeAppendOnlyTreeSnapshot(seed + 0x100), makeAppendOnlyTreeSnapshot(seed + 0x200), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>fr(seed), 0x300), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeFeeRecipient(seed), 0x700), startBlobAccumulator.toBlobAccumulator(), makeBatchedBlobAccumulator(seed + 1).toBlobAccumulator(), startBlobAccumulator.finalBlobChallenges);
489
436
  }
490
437
  export function makeParityPublicInputs(seed = 0) {
491
438
  return new ParityPublicInputs(new Fr(BigInt(seed + 0x200)), new Fr(BigInt(seed + 0x300)), new Fr(BigInt(seed + 0x400)));
492
439
  }
493
- export function makeBaseParityInputs(seed = 0) {
494
- return new BaseParityInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
440
+ export function makeParityBasePrivateInputs(seed = 0) {
441
+ return new ParityBasePrivateInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
495
442
  }
496
- export function makeRootParityInputs(seed = 0) {
497
- return new RootParityInputs(makeTuple(NUM_BASE_PARITY_PER_ROOT_PARITY, ()=>makeRootParityInput(RECURSIVE_PROOF_LENGTH), seed + 0x4100));
443
+ export function makeParityRootPrivateInputs(seed = 0) {
444
+ return new ParityRootPrivateInputs(makeTuple(NUM_BASE_PARITY_PER_ROOT_PARITY, ()=>makeProofData(seed, makeParityPublicInputs)));
498
445
  }
499
446
  /**
500
447
  * Makes root rollup public inputs.
@@ -502,34 +449,64 @@ export function makeRootParityInputs(seed = 0) {
502
449
  * @param blockNumber - The block number to use in the global variables of a header.
503
450
  * @returns A root rollup public inputs.
504
451
  */ export function makeRootRollupPublicInputs(seed = 0) {
505
- return new RootRollupPublicInputs(makeAppendOnlyTreeSnapshot(seed + 0x200), makeAppendOnlyTreeSnapshot(seed + 0x300), fr(seed + 0x400), fr(seed + 0x500), fr(seed + 0x600), fr(seed + 0x700), fr(seed + 0x800), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeFeeRecipient(seed), 0x900), fr(seed + 0x100), fr(seed + 0x101), fr(seed + 0x200), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeBlockBlobPublicInputs(seed), 0x300));
452
+ return new RootRollupPublicInputs(fr(seed + 0x100), fr(seed + 0x200), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>fr(seed), 0x300), makeTuple(AZTEC_MAX_EPOCH_DURATION, ()=>makeFeeRecipient(seed), 0x500), makeEpochConstantData(seed + 0x600), makeBatchedBlobAccumulator(seed).toFinalBlobAccumulator());
506
453
  }
507
454
  /**
508
455
  * Makes content commitment
509
456
  */ export function makeContentCommitment(seed = 0) {
510
- return new ContentCommitment(new Fr(seed), toBufferBE(BigInt(seed + 0x100), NUM_BYTES_PER_SHA256), toBufferBE(BigInt(seed + 0x200), NUM_BYTES_PER_SHA256), toBufferBE(BigInt(seed + 0x300), NUM_BYTES_PER_SHA256));
457
+ return new ContentCommitment(fr(seed + 0x100), fr(seed + 0x200), fr(seed + 0x300));
511
458
  }
512
459
  /**
513
460
  * Makes header.
514
- */ export function makeHeader(seed = 0, blockNumber = undefined, slotNumber = undefined) {
515
- return new BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), makeContentCommitment(seed + 0x200), makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
461
+ */ export function makeHeader(seed = 0, blockNumber = undefined, slotNumber = undefined, overrides = {}) {
462
+ return BlockHeader.from({
463
+ lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x100),
464
+ state: makeStateReference(seed + 0x200),
465
+ spongeBlobHash: fr(seed + 0x300),
466
+ globalVariables: makeGlobalVariables(seed += 0x700, {
467
+ ...blockNumber ? {
468
+ blockNumber
469
+ } : {},
470
+ ...slotNumber ? {
471
+ slotNumber: new Fr(slotNumber)
472
+ } : {}
473
+ }),
474
+ totalFees: fr(seed + 0x800),
475
+ totalManaUsed: fr(seed + 0x900),
476
+ ...overrides
477
+ });
478
+ }
479
+ export function makeL2BlockHeader(seed = 0, blockNumber, slotNumber, overrides = {}) {
480
+ return new L2BlockHeader(makeAppendOnlyTreeSnapshot(seed + 0x100), overrides?.contentCommitment ?? makeContentCommitment(seed + 0x200), overrides?.state ?? makeStateReference(seed + 0x600), makeGlobalVariables(seed += 0x700, {
516
481
  ...blockNumber ? {
517
- blockNumber: new Fr(blockNumber)
482
+ blockNumber
518
483
  } : {},
519
484
  ...slotNumber ? {
520
485
  slotNumber: new Fr(slotNumber)
521
486
  } : {}
522
- }), fr(seed + 0x800), fr(seed + 0x900));
487
+ }), new Fr(seed + 0x800), new Fr(seed + 0x900), new Fr(seed + 0xa00));
488
+ }
489
+ export function makeCheckpointHeader(seed = 0) {
490
+ return CheckpointHeader.from({
491
+ lastArchiveRoot: fr(seed + 0x100),
492
+ contentCommitment: makeContentCommitment(seed + 0x200),
493
+ slotNumber: new Fr(seed + 0x300),
494
+ timestamp: BigInt(seed + 0x400),
495
+ coinbase: makeEthAddress(seed + 0x500),
496
+ feeRecipient: makeAztecAddress(seed + 0x600),
497
+ gasFees: makeGasFees(seed + 0x700),
498
+ totalManaUsed: fr(seed + 0x800)
499
+ });
523
500
  }
524
501
  /**
525
502
  * Makes arbitrary state reference.
526
503
  * @param seed - The seed to use for generating the state reference.
527
504
  * @returns A state reference.
528
505
  */ export function makeStateReference(seed = 0) {
529
- return new StateReference(makeAppendOnlyTreeSnapshot(seed), makePartialStateReference(seed + 1));
506
+ return new StateReference(makeAppendOnlyTreeSnapshot(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP * seed), makePartialStateReference(seed + 1));
530
507
  }
531
508
  function makeTreeSnapshots(seed = 0) {
532
- return new TreeSnapshots(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 0x10), makeAppendOnlyTreeSnapshot(seed + 0x20), makeAppendOnlyTreeSnapshot(seed + 0x30));
509
+ return new TreeSnapshots(makeAppendOnlyTreeSnapshot(seed * NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP), makeAppendOnlyTreeSnapshot((seed + 0x10) * MAX_NOTE_HASHES_PER_TX), makeAppendOnlyTreeSnapshot((seed + 0x20) * MAX_NULLIFIERS_PER_TX), makeAppendOnlyTreeSnapshot((seed + 0x30) * MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX));
533
510
  }
534
511
  /**
535
512
  * Makes arbitrary L2 to L1 message.
@@ -538,33 +515,44 @@ function makeTreeSnapshots(seed = 0) {
538
515
  */ export function makeL2ToL1Message(seed = 0) {
539
516
  const recipient = EthAddress.fromField(new Fr(seed));
540
517
  const content = new Fr(seed + 1);
541
- return new L2ToL1Message(recipient, content, seed + 2);
518
+ return new L2ToL1Message(recipient, content);
519
+ }
520
+ function makeCountedL2ToL1Message(seed = 0) {
521
+ return new CountedL2ToL1Message(makeL2ToL1Message(seed), seed + 2);
522
+ }
523
+ function makeScopedL2ToL1Message(seed = 1) {
524
+ return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
542
525
  }
543
526
  /**
544
527
  * Makes arbitrary partial state reference.
545
528
  * @param seed - The seed to use for generating the partial state reference.
546
529
  * @returns A partial state reference.
547
530
  */ export function makePartialStateReference(seed = 0) {
548
- return new PartialStateReference(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), makeAppendOnlyTreeSnapshot(seed + 2));
531
+ return new PartialStateReference(makeAppendOnlyTreeSnapshot(MAX_NOTE_HASHES_PER_TX * seed), makeAppendOnlyTreeSnapshot(MAX_NULLIFIERS_PER_TX * (seed + 1)), makeAppendOnlyTreeSnapshot(MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX * (seed + 2)));
549
532
  }
550
- /**
551
- * Makes arbitrary merge rollup inputs.
552
- * @param seed - The seed to use for generating the merge rollup inputs.
553
- * @returns A merge rollup inputs.
554
- */ export function makeMergeRollupInputs(seed = 0) {
555
- return new MergeRollupInputs([
556
- makePreviousRollupData(seed),
557
- makePreviousRollupData(seed + 0x1000)
533
+ export function makeTxMergeRollupPrivateInputs(seed = 0) {
534
+ return new TxMergeRollupPrivateInputs([
535
+ makeProofData(seed, makeTxRollupPublicInputs),
536
+ makeProofData(seed + 0x1000, makeTxRollupPublicInputs)
558
537
  ]);
559
538
  }
539
+ export function makeBlockRootFirstRollupPrivateInputs(seed = 0) {
540
+ return new BlockRootFirstRollupPrivateInputs(makeProofData(seed, makeParityPublicInputs), [
541
+ makeProofData(seed + 0x1000, makeTxRollupPublicInputs),
542
+ makeProofData(seed + 0x2000, makeTxRollupPublicInputs)
543
+ ], makeAppendOnlyTreeSnapshot(seed + 0x3000), makeSiblingPath(seed + 0x4000, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH), makeSiblingPath(seed + 0x5000, ARCHIVE_HEIGHT));
544
+ }
545
+ export function makeBlockRootSingleTxRollupPrivateInputs(seed = 0) {
546
+ return new BlockRootSingleTxRollupPrivateInputs(makeProofData(seed + 0x1000, makeTxRollupPublicInputs), makeSiblingPath(seed + 0x4000, ARCHIVE_HEIGHT));
547
+ }
560
548
  /**
561
549
  * Makes arbitrary block merge rollup inputs.
562
550
  * @param seed - The seed to use for generating the merge rollup inputs.
563
551
  * @returns A block merge rollup inputs.
564
- */ export function makeBlockMergeRollupInputs(seed = 0) {
565
- return new BlockMergeRollupInputs([
566
- makePreviousRollupBlockData(seed),
567
- makePreviousRollupBlockData(seed + 0x1000)
552
+ */ export function makeBlockMergeRollupPrivateInputs(seed = 0) {
553
+ return new BlockMergeRollupPrivateInputs([
554
+ makeProofData(seed, makeBlockRollupPublicInputs),
555
+ makeProofData(seed + 0x1000, makeBlockRollupPublicInputs)
568
556
  ]);
569
557
  }
570
558
  /**
@@ -574,85 +562,88 @@ function makeTreeSnapshots(seed = 0) {
574
562
  */ export function makePublicDataTreeLeaf(seed = 0) {
575
563
  return new PublicDataTreeLeaf(new Fr(seed), new Fr(seed + 1));
576
564
  }
565
+ /**
566
+ * Makes arbitrary nullifier leaf.
567
+ * @param seed - The seed to use for generating the nullifier leaf.
568
+ * @returns A nullifier leaf.
569
+ */ export function makeNullifierLeaf(seed = 0) {
570
+ return new NullifierLeaf(new Fr(seed));
571
+ }
572
+ /**
573
+ * Makes arbitrary nullifier leaf preimages.
574
+ * @param seed - The seed to use for generating the nullifier leaf preimage.
575
+ * @returns A nullifier leaf preimage.
576
+ */ export function makeNullifierLeafPreimage(seed = 0) {
577
+ return new NullifierLeafPreimage(makeNullifierLeaf(seed), new Fr(seed + 1), BigInt(seed + 2));
578
+ }
577
579
  /**
578
580
  * Makes arbitrary public data tree leaf preimages.
579
581
  * @param seed - The seed to use for generating the public data tree leaf preimage.
580
582
  * @returns A public data tree leaf preimage.
581
583
  */ export function makePublicDataTreeLeafPreimage(seed = 0) {
582
- return new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3));
584
+ return new PublicDataTreeLeafPreimage(makePublicDataTreeLeaf(seed), new Fr(seed + 2), BigInt(seed + 3));
583
585
  }
584
586
  /**
585
- * Creates an instance of PrivateBaseStateDiffHints with arbitrary values based on the provided seed.
587
+ * Creates an instance of TreeSnapshotDiffHints with arbitrary values based on the provided seed.
586
588
  * @param seed - The seed to use for generating the hints.
587
- * @returns A PrivateBaseStateDiffHints object.
588
- */ export function makePrivateBaseStateDiffHints(seed = 1) {
589
- const nullifierPredecessorPreimages = makeTuple(MAX_NULLIFIERS_PER_TX, (x)=>new NullifierLeafPreimage(fr(x), fr(x + 0x100), BigInt(x + 0x200)), seed + 0x1000);
589
+ * @returns A TreeSnapshotDiffHints object.
590
+ */ export function makeTreeSnapshotDiffHints(seed = 1) {
591
+ const nullifierPredecessorPreimages = makeTuple(MAX_NULLIFIERS_PER_TX, (x)=>makeNullifierLeafPreimage(x), seed + 0x1000);
590
592
  const nullifierPredecessorMembershipWitnesses = makeTuple(MAX_NULLIFIERS_PER_TX, (x)=>makeMembershipWitness(NULLIFIER_TREE_HEIGHT, x), seed + 0x2000);
591
593
  const sortedNullifiers = makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x3000);
592
594
  const sortedNullifierIndexes = makeTuple(MAX_NULLIFIERS_PER_TX, (i)=>i, seed + 0x4000);
593
- const noteHashSubtreeSiblingPath = makeTuple(NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
594
- const nullifierSubtreeSiblingPath = makeTuple(NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
595
- const feeWriteLowLeafPreimage = makePublicDataTreeLeafPreimage(seed + 0x7000);
596
- const feeWriteLowLeafMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
597
- const feeWriteSiblingPath = makeTuple(PUBLIC_DATA_TREE_HEIGHT, fr, seed + 0x9000);
598
- return new PrivateBaseStateDiffHints(nullifierPredecessorPreimages, nullifierPredecessorMembershipWitnesses, sortedNullifiers, sortedNullifierIndexes, noteHashSubtreeSiblingPath, nullifierSubtreeSiblingPath, feeWriteLowLeafPreimage, feeWriteLowLeafMembershipWitness, feeWriteSiblingPath);
595
+ const noteHashSubtreeRootSiblingPath = makeTuple(NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
596
+ const nullifierSubtreeRootSiblingPath = makeTuple(NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
597
+ const feePayerBalanceMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
598
+ return new TreeSnapshotDiffHints(noteHashSubtreeRootSiblingPath, nullifierPredecessorPreimages, nullifierPredecessorMembershipWitnesses, sortedNullifiers, sortedNullifierIndexes, nullifierSubtreeRootSiblingPath, feePayerBalanceMembershipWitness);
599
599
  }
600
- function makeVkWitnessData(seed = 1) {
601
- return new VkWitnessData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
600
+ function makeVkData(seed = 1) {
601
+ return new VkData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
602
602
  }
603
- function makePrivateTubeData(seed = 1, kernelPublicInputs) {
604
- return new PrivateTubeData(kernelPublicInputs ?? makePrivateToRollupKernelCircuitPublicInputs(seed, true), makeRecursiveProof(TUBE_PROOF_LENGTH, seed + 0x100), makeVkWitnessData(seed + 0x200));
603
+ export function makeProofData(seed = 0, makePublicInputs, proofSize = NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH) {
604
+ return new ProofData(makePublicInputs(seed), makeRecursiveProof(proofSize, seed + 0x100), makeVkData(seed + 0x200));
605
+ }
606
+ function makeContractClassLogFields(seed = 1) {
607
+ return new ContractClassLogFields(makeArray(CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, fr, seed));
605
608
  }
606
609
  function makePrivateBaseRollupHints(seed = 1) {
607
610
  const start = makePartialStateReference(seed + 0x100);
608
611
  const startSpongeBlob = makeSpongeBlob(seed + 0x200);
609
- const stateDiffHints = makePrivateBaseStateDiffHints(seed + 0x600);
610
- const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
611
- const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
612
- const constants = makeConstantRollupData(0x100);
613
- const feePayerFeeJuiceBalanceReadHint = PublicDataHint.empty();
612
+ const treeSnapshotDiffHints = makeTreeSnapshotDiffHints(seed + 0x600);
613
+ const anchorBlockArchiveSiblingPath = makeSiblingPath(seed + 0x9000, ARCHIVE_HEIGHT);
614
+ const contractClassLogsFields = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x800);
615
+ const constants = makeBlockConstantData(0x100);
616
+ const feePayerBalanceLeafPreimage = PublicDataTreeLeafPreimage.empty();
614
617
  return PrivateBaseRollupHints.from({
615
618
  start,
616
619
  startSpongeBlob,
617
- stateDiffHints,
618
- feePayerFeeJuiceBalanceReadHint,
619
- archiveRootMembershipWitness,
620
- contractClassLogsPreimages,
620
+ treeSnapshotDiffHints,
621
+ feePayerBalanceLeafPreimage,
622
+ anchorBlockArchiveSiblingPath,
623
+ contractClassLogsFields,
621
624
  constants
622
625
  });
623
626
  }
624
627
  function makePublicBaseRollupHints(seed = 1) {
625
- const startSpongeBlob = makeSpongeBlob(seed + 0x200);
626
- const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
627
- const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
628
- const constants = makeConstantRollupData(0x100);
629
628
  return PublicBaseRollupHints.from({
630
- startSpongeBlob,
631
- archiveRootMembershipWitness,
632
- contractClassLogsPreimages,
633
- constants
629
+ startSpongeBlob: makeSpongeBlob(seed),
630
+ lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x1000),
631
+ anchorBlockArchiveSiblingPath: makeSiblingPath(seed + 0x2000, ARCHIVE_HEIGHT),
632
+ contractClassLogsFields: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x3000)
634
633
  });
635
634
  }
636
- export function makePrivateBaseRollupInputs(seed = 0) {
637
- const tubeData = makePrivateTubeData(seed);
638
- const hints = makePrivateBaseRollupHints(seed + 0x100);
639
- return PrivateBaseRollupInputs.from({
640
- tubeData,
641
- hints
635
+ export function makePrivateTxBaseRollupPrivateInputs(seed = 0) {
636
+ return PrivateTxBaseRollupPrivateInputs.from({
637
+ hidingKernelProofData: makeProofData(seed, makePrivateToRollupKernelCircuitPublicInputs, CHONK_PROOF_LENGTH),
638
+ hints: makePrivateBaseRollupHints(seed + 0x100)
642
639
  });
643
640
  }
644
- function makePublicTubeData(seed = 1) {
645
- return new PublicTubeData(makePrivateToPublicKernelCircuitPublicInputs(seed), makeRecursiveProof(TUBE_PROOF_LENGTH, seed + 0x100), makeVkWitnessData(seed + 0x200));
646
- }
647
- function makeAvmProofData(seed = 1) {
648
- return new AvmProofData(makeAvmCircuitPublicInputs(seed), makeRecursiveProof(AVM_PROOF_LENGTH_IN_FIELDS, seed + 0x100), makeVkWitnessData(seed + 0x200));
649
- }
650
- export function makePublicBaseRollupInputs(seed = 0) {
651
- const tubeData = makePublicTubeData(seed);
652
- const avmProofData = makeAvmProofData(seed + 0x100);
641
+ export function makePublicTxBaseRollupPrivateInputs(seed = 0) {
642
+ const publicChonkVerifierProofData = makeProofData(seed, makePublicChonkVerifierPublicInputs, RECURSIVE_ROLLUP_HONK_PROOF_LENGTH);
643
+ const avmProofData = makeProofData(seed + 0x100, makeAvmCircuitPublicInputs, AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED);
653
644
  const hints = makePublicBaseRollupHints(seed + 0x200);
654
- return PublicBaseRollupInputs.from({
655
- tubeData,
645
+ return PublicTxBaseRollupPrivateInputs.from({
646
+ publicChonkVerifierProofData,
656
647
  avmProofData,
657
648
  hints
658
649
  });
@@ -667,11 +658,11 @@ export function makeExecutablePrivateFunctionWithMembershipProof(seed = 0) {
667
658
  privateFunctionTreeLeafIndex: seed + 3,
668
659
  artifactMetadataHash: fr(seed + 4),
669
660
  functionMetadataHash: fr(seed + 5),
670
- unconstrainedFunctionsArtifactTreeRoot: fr(seed + 6),
661
+ utilityFunctionsTreeRoot: fr(seed + 6),
671
662
  vkHash: fr(seed + 7)
672
663
  };
673
664
  }
674
- export function makeUnconstrainedFunctionWithMembershipProof(seed = 0) {
665
+ export function makeUtilityFunctionWithMembershipProof(seed = 0) {
675
666
  return {
676
667
  selector: makeSelector(seed),
677
668
  bytecode: makeBytes(100, seed + 1),
@@ -682,13 +673,10 @@ export function makeUnconstrainedFunctionWithMembershipProof(seed = 0) {
682
673
  privateFunctionsArtifactTreeRoot: fr(seed + 6)
683
674
  };
684
675
  }
685
- export async function makeContractClassPublic(seed = 0, publicDispatchFunction) {
676
+ export async function makeContractClassPublic(seed = 0, publicBytecode) {
686
677
  const artifactHash = fr(seed + 1);
687
- const publicFunctions = publicDispatchFunction ? [
688
- publicDispatchFunction
689
- ] : makeTuple(1, makeContractClassPublicFunction, seed + 2);
690
678
  const privateFunctionsRoot = fr(seed + 3);
691
- const packedBytecode = publicDispatchFunction?.bytecode ?? makeBytes(100, seed + 4);
679
+ const packedBytecode = publicBytecode ?? makeBytes(100, seed + 4);
692
680
  const publicBytecodeCommitment = await computePublicBytecodeCommitment(packedBytecode);
693
681
  const id = await computeContractClassId({
694
682
  artifactHash,
@@ -700,18 +688,11 @@ export async function makeContractClassPublic(seed = 0, publicDispatchFunction)
700
688
  artifactHash,
701
689
  packedBytecode,
702
690
  privateFunctionsRoot,
703
- publicFunctions,
704
691
  privateFunctions: [],
705
- unconstrainedFunctions: [],
692
+ utilityFunctions: [],
706
693
  version: 1
707
694
  };
708
695
  }
709
- function makeContractClassPublicFunction(seed = 0) {
710
- return {
711
- selector: FunctionSelector.fromField(fr(seed + 1)),
712
- bytecode: makeBytes(100, seed + 2)
713
- };
714
- }
715
696
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
716
697
  function makeContractClassPrivateFunction(seed = 0) {
717
698
  return {
@@ -739,14 +720,15 @@ export function makeMap(size, fn, offset = 0) {
739
720
  export async function makeMapAsync(size, fn, offset = 0) {
740
721
  return new Map(await makeArrayAsync(size, (i)=>fn(i + offset)));
741
722
  }
742
- export function makePublicKeys(seed = 0) {
743
- return new PublicKeys(new Point(new Fr(seed + 0), new Fr(seed + 1), false), new Point(new Fr(seed + 2), new Fr(seed + 3), false), new Point(new Fr(seed + 4), new Fr(seed + 5), false), new Point(new Fr(seed + 6), new Fr(seed + 7), false));
723
+ export async function makePublicKeys(seed = 0) {
724
+ const f = (offset)=>Grumpkin.mul(Grumpkin.generator, new Fq(seed + offset));
725
+ return new PublicKeys(await f(0), await f(1), await f(2), await f(3));
744
726
  }
745
727
  export async function makeContractInstanceFromClassId(classId, seed = 0, overrides) {
746
728
  const salt = new Fr(seed);
747
729
  const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
748
730
  const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
749
- const publicKeys = overrides?.publicKeys ?? makePublicKeys(seed + 3);
731
+ const publicKeys = overrides?.publicKeys ?? await makePublicKeys(seed + 3);
750
732
  const saltedInitializationHash = await poseidon2HashWithSeparator([
751
733
  salt,
752
734
  initializationHash,
@@ -767,41 +749,106 @@ export async function makeContractInstanceFromClassId(classId, seed = 0, overrid
767
749
  publicKeys
768
750
  }).withAddress(address);
769
751
  }
770
- export function makeAvmTreeHints(seed = 0) {
771
- return new AvmAppendTreeHint(new Fr(seed), new Fr(seed + 1), makeArray(10, (i)=>new Fr(i), seed + 0x1000));
752
+ export function makeAvmGetSiblingPathHint(seed = 0) {
753
+ // We want a possibly large index, but non-random.
754
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
755
+ return new AvmGetSiblingPathHint(makeAppendOnlyTreeSnapshot(seed), /*treeId=*/ (seed + 1) % 5, /*index=*/ index, makeArray(seed % 64, (i)=>new Fr(i), seed + 10));
756
+ }
757
+ export function makeAvmGetPreviousValueIndexHint(seed = 0) {
758
+ // We want a possibly large index, but non-random.
759
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
760
+ const value = new Fr(BigInt(`0x${sha256(Buffer.from((seed + 2).toString())).toString('hex')}`) % (1n << 128n));
761
+ return new AvmGetPreviousValueIndexHint(makeAppendOnlyTreeSnapshot(seed), /*treeId=*/ (seed + 1) % 5, value, index, /*alreadyPresent=*/ index % 2n === 0n);
762
+ }
763
+ export function makeAvmGetLeafPreimageHintPublicDataTree(seed = 0) {
764
+ // We want a possibly large index, but non-random.
765
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
766
+ return new AvmGetLeafPreimageHintPublicDataTree(makeAppendOnlyTreeSnapshot(seed), /*index=*/ index, /*leafPreimage=*/ makePublicDataTreeLeafPreimage(seed + 3));
767
+ }
768
+ export function makeAvmGetLeafPreimageHintNullifierTree(seed = 0) {
769
+ // We want a possibly large index, but non-random.
770
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
771
+ return new AvmGetLeafPreimageHintNullifierTree(makeAppendOnlyTreeSnapshot(seed), /*index=*/ index, /*leafPreimage=*/ makeNullifierLeafPreimage(seed + 3));
772
+ }
773
+ export function makeAvmGetLeafValueHint(seed = 0) {
774
+ // We want a possibly large index, but non-random.
775
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
776
+ return new AvmGetLeafValueHint(makeAppendOnlyTreeSnapshot(seed), /*treeId=*/ (seed + 1) % 5, /*index=*/ index, /*value=*/ new Fr(seed + 3));
777
+ }
778
+ export function makeAvmSequentialInsertHintPublicDataTree(seed = 0) {
779
+ const lowLeavesWitnessData = {
780
+ leaf: makePublicDataTreeLeafPreimage(seed + 3),
781
+ index: BigInt(seed + 4),
782
+ path: makeArray(seed % 64, (i)=>new Fr(i), seed + 5)
783
+ };
784
+ const insertionWitnessData = {
785
+ leaf: makePublicDataTreeLeafPreimage(seed + 6),
786
+ index: BigInt(seed + 7),
787
+ path: makeArray(seed % 64, (i)=>new Fr(i), seed + 8)
788
+ };
789
+ return new AvmSequentialInsertHintPublicDataTree(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), MerkleTreeId.PUBLIC_DATA_TREE, makePublicDataTreeLeaf(seed + 2), lowLeavesWitnessData, insertionWitnessData);
772
790
  }
773
- export function makeAvmNullifierReadTreeHints(seed = 0) {
774
- const lowNullifierPreimage = new NullifierLeafPreimage(new Fr(seed), new Fr(seed + 1), BigInt(seed + 2));
775
- return new AvmNullifierReadTreeHint(lowNullifierPreimage, new Fr(seed + 1), makeArray(10, (i)=>new Fr(i), seed + 0x1000));
791
+ export function makeAvmSequentialInsertHintNullifierTree(seed = 0) {
792
+ const lowLeavesWitnessData = {
793
+ leaf: makeNullifierLeafPreimage(seed + 3),
794
+ index: BigInt(seed + 4),
795
+ path: makeArray(seed % 64, (i)=>new Fr(i), seed + 5)
796
+ };
797
+ const insertionWitnessData = {
798
+ leaf: makeNullifierLeafPreimage(seed + 6),
799
+ index: BigInt(seed + 7),
800
+ path: makeArray(seed % 64, (i)=>new Fr(i), seed + 8)
801
+ };
802
+ return new AvmSequentialInsertHintNullifierTree(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), MerkleTreeId.NULLIFIER_TREE, makeNullifierLeaf(seed + 2), lowLeavesWitnessData, insertionWitnessData);
776
803
  }
777
- export function makeAvmPublicDataReadTreeHints(seed = 0) {
778
- return new AvmPublicDataReadTreeHint(new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)), new Fr(seed + 1), makeArray(10, (i)=>new Fr(i), seed + 0x1000));
804
+ export function makeAvmAppendLeavesHint(seed = 0) {
805
+ return new AvmAppendLeavesHint(makeAppendOnlyTreeSnapshot(seed), makeAppendOnlyTreeSnapshot(seed + 1), // Use NOTE_HASH_TREE or L1_TO_L2_MESSAGE_TREE as mentioned in the comment on AvmAppendLeavesHint
806
+ seed % 2 === 0 ? MerkleTreeId.NOTE_HASH_TREE : MerkleTreeId.L1_TO_L2_MESSAGE_TREE, makeArray(seed % 5 + 1, (i)=>new Fr(seed + i + 2), 0));
779
807
  }
780
- export function makeAvmNullifierInsertionTreeHints(seed = 0) {
781
- return new AvmNullifierWriteTreeHint(makeAvmNullifierReadTreeHints(seed), makeArray(20, (i)=>new Fr(i), seed + 0x1000));
808
+ export function makeAvmCheckpointActionCreateCheckpointHint(seed = 0) {
809
+ return new AvmCreateCheckpointHint(/*actionCounter=*/ seed, /*oldCheckpointId=*/ seed + 1, /*newCheckpointId=*/ seed + 2);
782
810
  }
783
- export function makeAvmStorageReadTreeHints(seed = 0) {
784
- return new AvmPublicDataReadTreeHint(new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)), new Fr(seed + 1), makeArray(10, (i)=>new Fr(i), seed + 0x1000));
811
+ export function makeAvmCheckpointActionCommitCheckpointHint(seed = 0) {
812
+ return new AvmCommitCheckpointHint(/*actionCounter=*/ seed, /*oldCheckpointId=*/ seed + 1, /*newCheckpointId=*/ seed + 2);
785
813
  }
786
- export function makeAvmStorageUpdateTreeHints(seed = 0) {
787
- return new AvmPublicDataWriteTreeHint(makeAvmStorageReadTreeHints(seed), new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)), makeArray(20, (i)=>new Fr(i), seed + 0x1000));
814
+ export function makeAvmCheckpointActionRevertCheckpointHint(seed = 0) {
815
+ return new AvmRevertCheckpointHint(/*actionCounter=*/ seed, /*oldCheckpointId=*/ seed + 1, /*newCheckpointId=*/ seed + 2, /*beforeState=*/ makeTreeSnapshots(seed + 3), /*afterState=*/ makeTreeSnapshots(seed + 7));
788
816
  }
789
817
  /**
790
818
  * Makes arbitrary AvmContractInstanceHint.
791
819
  * @param seed - The seed to use for generating the state reference.
792
820
  * @returns AvmContractInstanceHint.
793
821
  */ export function makeAvmContractInstanceHint(seed = 0) {
794
- return new AvmContractInstanceHint(new AztecAddress(new Fr(seed)), true, new Fr(seed + 0x2), new AztecAddress(new Fr(seed + 0x3)), new Fr(seed + 0x4), new Fr(seed + 0x5), new Fr(seed + 0x6), new PublicKeys(new Point(new Fr(seed + 0x7), new Fr(seed + 0x8), false), new Point(new Fr(seed + 0x9), new Fr(seed + 0x10), false), new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false), new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false)), makeAvmPublicDataReadTreeHints(seed + 0x2000), makeArray(4, (i)=>new Fr(i), seed + 0x3000));
822
+ return new AvmContractInstanceHint(new AztecAddress(new Fr(seed)), new Fr(seed + 0x2), new AztecAddress(new Fr(seed + 0x3)), new Fr(seed + 0x4), new Fr(seed + 0x5), new Fr(seed + 0x6), new PublicKeys(new Point(new Fr(seed + 0x7), new Fr(seed + 0x8), false), new Point(new Fr(seed + 0x9), new Fr(seed + 0x10), false), new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false), new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false)));
795
823
  }
796
824
  /* Makes arbitrary AvmContractClassHint.
797
825
  * @param seed - The seed to use for generating the state reference.
798
826
  * @returns AvmContractClassHint.
799
- */ export async function makeAvmContractClassHint(seed = 0) {
827
+ */ export function makeAvmContractClassHint(seed = 0) {
800
828
  const bytecode = makeBytes(32, seed + 0x5);
801
- return new AvmContractClassHint(new Fr(seed), true, new Fr(seed + 0x2), new Fr(seed + 0x3), await computePublicBytecodeCommitment(bytecode), bytecode);
829
+ return new AvmContractClassHint(new Fr(seed), new Fr(seed + 0x2), new Fr(seed + 0x3), bytecode);
802
830
  }
803
- export function makeAvmEnqueuedCallHint(seed = 0) {
804
- return new AvmEnqueuedCallHint(new AztecAddress(new Fr(seed)), makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x1000));
831
+ export async function makeAvmBytecodeCommitmentHint(seed = 0) {
832
+ const classId = new Fr(seed + 2);
833
+ const bytecode = makeBytes(32, seed + 0x5);
834
+ return new AvmBytecodeCommitmentHint(classId, await computePublicBytecodeCommitment(bytecode));
835
+ }
836
+ export async function makePublicCallRequestWithCalldata(seed = 0) {
837
+ const calldata = makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x1000);
838
+ const calldataHash = await computeCalldataHash(calldata);
839
+ const publicCallRequest = new PublicCallRequest(new AztecAddress(new Fr(seed)), new AztecAddress(new Fr(seed + 1)), false, calldataHash);
840
+ return new PublicCallRequestWithCalldata(publicCallRequest, calldata);
841
+ }
842
+ export async function makeAvmTxHint(seed = 0) {
843
+ return new AvmTxHint(`txhash-${seed}`, makeGasSettings(), makeGasFees(seed + 0x1000), {
844
+ noteHashes: makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x1000),
845
+ nullifiers: makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x2000),
846
+ l2ToL1Messages: makeArray(seed % 20 + 4, (i)=>makeScopedL2ToL1Message(i), seed + 0x3000)
847
+ }, {
848
+ noteHashes: makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x3000),
849
+ nullifiers: makeArray(seed % 20 + 4, (i)=>new Fr(i), seed + 0x4000),
850
+ l2ToL1Messages: makeArray(seed % 20 + 4, (i)=>makeScopedL2ToL1Message(i), seed + 0x5000)
851
+ }, await makeArrayAsync(seed % 20 + 4, (i)=>makePublicCallRequestWithCalldata(i), seed + 0x5000), await makeArrayAsync(seed % 20 + 4, (i)=>makePublicCallRequestWithCalldata(i), seed + 0x6000), await makePublicCallRequestWithCalldata(seed + 0x7000), makeGas(seed + 0x8000), makeAztecAddress(seed + 0x9000));
805
852
  }
806
853
  /**
807
854
  * Creates arbitrary AvmExecutionHints.
@@ -812,19 +859,27 @@ export function makeAvmEnqueuedCallHint(seed = 0) {
812
859
  const lengthSeedMod = 10;
813
860
  const baseLength = lengthOffset + seed % lengthSeedMod;
814
861
  const fields = {
815
- enqueuedCalls: makeArray(baseLength, makeAvmEnqueuedCallHint, seed + 0x4100),
816
- contractInstances: makeArray(baseLength + 5, makeAvmContractInstanceHint, seed + 0x4700),
817
- contractClasses: await makeArrayAsync(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
818
- publicDataReads: makeArray(baseLength + 7, makeAvmStorageReadTreeHints, seed + 0x4900),
819
- publicDataWrites: makeArray(baseLength + 8, makeAvmStorageUpdateTreeHints, seed + 0x4a00),
820
- nullifierReads: makeArray(baseLength + 9, makeAvmNullifierReadTreeHints, seed + 0x4b00),
821
- nullifierWrites: makeArray(baseLength + 10, makeAvmNullifierInsertionTreeHints, seed + 0x4c00),
822
- noteHashReads: makeArray(baseLength + 11, makeAvmTreeHints, seed + 0x4d00),
823
- noteHashWrites: makeArray(baseLength + 12, makeAvmTreeHints, seed + 0x4e00),
824
- l1ToL2MessageReads: makeArray(baseLength + 13, makeAvmTreeHints, seed + 0x4f00),
862
+ globalVariables: makeGlobalVariables(seed + 0x4000),
863
+ tx: await makeAvmTxHint(seed + 0x4100),
864
+ protocolContracts: new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed + 0x4600)),
865
+ contractInstances: makeArray(baseLength + 2, makeAvmContractInstanceHint, seed + 0x4700),
866
+ contractClasses: makeArray(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
867
+ bytecodeCommitments: await makeArrayAsync(baseLength + 5, makeAvmBytecodeCommitmentHint, seed + 0x4900),
868
+ startingTreeRoots: makeTreeSnapshots(seed + 0x4900),
869
+ getSiblingPathHints: makeArray(baseLength + 5, makeAvmGetSiblingPathHint, seed + 0x4b00),
870
+ getPreviousValueIndexHints: makeArray(baseLength + 5, makeAvmGetPreviousValueIndexHint, seed + 0x4d00),
871
+ getLeafPreimageHintPublicDataTree: makeArray(baseLength + 5, makeAvmGetLeafPreimageHintPublicDataTree, seed + 0x4f00),
872
+ getLeafPreimageHintNullifierTree: makeArray(baseLength + 5, makeAvmGetLeafPreimageHintNullifierTree, seed + 0x5100),
873
+ getLeafValueHints: makeArray(baseLength + 5, makeAvmGetLeafValueHint, seed + 0x5300),
874
+ sequentialInsertHintsPublicDataTree: makeArray(baseLength + 5, makeAvmSequentialInsertHintPublicDataTree, seed + 0x5500),
875
+ sequentialInsertHintsNullifierTree: makeArray(baseLength + 5, makeAvmSequentialInsertHintNullifierTree, seed + 0x5700),
876
+ appendLeavesHints: makeArray(baseLength + 5, makeAvmAppendLeavesHint, seed + 0x5800),
877
+ createCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCreateCheckpointHint, seed + 0x5900),
878
+ commitCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCommitCheckpointHint, seed + 0x5b00),
879
+ revertCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionRevertCheckpointHint, seed + 0x5d00),
825
880
  ...overrides
826
881
  };
827
- return new AvmExecutionHints(fields.enqueuedCalls, fields.contractInstances, fields.contractClasses, fields.publicDataReads, fields.publicDataWrites, fields.nullifierReads, fields.nullifierWrites, fields.noteHashReads, fields.noteHashWrites, fields.l1ToL2MessageReads);
882
+ return new AvmExecutionHints(fields.globalVariables, fields.tx, fields.protocolContracts, fields.contractInstances, fields.contractClasses, fields.bytecodeCommitments, fields.startingTreeRoots, fields.getSiblingPathHints, fields.getPreviousValueIndexHints, fields.getLeafPreimageHintPublicDataTree, fields.getLeafPreimageHintNullifierTree, fields.getLeafValueHints, fields.sequentialInsertHintsPublicDataTree, fields.sequentialInsertHintsNullifierTree, fields.appendLeavesHints, fields.createCheckpointHints, fields.commitCheckpointHints, fields.revertCheckpointHints);
828
883
  }
829
884
  /**
830
885
  * Creates arbitrary AvmCircuitInputs.
@@ -832,13 +887,11 @@ export function makeAvmEnqueuedCallHint(seed = 0) {
832
887
  * @returns the execution hints.
833
888
  */ export async function makeAvmCircuitInputs(seed = 0, overrides = {}) {
834
889
  const fields = {
835
- functionName: `function${seed}`,
836
- calldata: makeArray(seed % 100 + 10, (i)=>new Fr(i), seed + 0x1000),
837
- avmHints: await makeAvmExecutionHints(seed + 0x3000),
890
+ hints: await makeAvmExecutionHints(seed + 0x3000),
838
891
  publicInputs: makeAvmCircuitPublicInputs(seed + 0x4000),
839
892
  ...overrides
840
893
  };
841
- return new AvmCircuitInputs(fields.functionName, fields.calldata, fields.avmHints, fields.publicInputs);
894
+ return new AvmCircuitInputs(fields.hints, fields.publicInputs);
842
895
  }
843
896
  /**
844
897
  * TODO: Since the max value check is currently disabled this function is pointless. Should it be removed?
@@ -850,66 +903,96 @@ export function makeAvmEnqueuedCallHint(seed = 0) {
850
903
  }
851
904
  /** Makes a bloated processed tx for testing purposes. */ export async function makeBloatedProcessedTx({ seed = 1, header, db, chainId = Fr.ZERO, version = Fr.ZERO, gasSettings = GasSettings.default({
852
905
  maxFeesPerGas: new GasFees(10, 10)
853
- }), vkTreeRoot = Fr.ZERO, protocolContractTreeRoot = Fr.ZERO, globalVariables = GlobalVariables.empty(), feePayer, feePaymentPublicDataWrite, privateOnly = false } = {}) {
906
+ }), vkTreeRoot = Fr.ZERO, protocolContracts = makeProtocolContracts(seed + 0x100), globalVariables = GlobalVariables.empty(), newL1ToL2Snapshot = AppendOnlyTreeSnapshot.empty(), feePayer, feePaymentPublicDataWrite, // The default gasUsed is the tx overhead.
907
+ gasUsed = Gas.from({
908
+ daGas: FIXED_DA_GAS,
909
+ l2Gas: FIXED_L2_GAS
910
+ }), privateOnly = false } = {}) {
854
911
  seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
855
912
  header ??= db?.getInitialHeader() ?? makeHeader(seed);
856
913
  feePayer ??= await AztecAddress.random();
857
914
  const txConstantData = TxConstantData.empty();
858
- txConstantData.historicalHeader = header;
915
+ txConstantData.anchorBlockHeader = header;
859
916
  txConstantData.txContext.chainId = chainId;
860
917
  txConstantData.txContext.version = version;
861
918
  txConstantData.txContext.gasSettings = gasSettings;
862
919
  txConstantData.vkTreeRoot = vkTreeRoot;
863
- txConstantData.protocolContractTreeRoot = protocolContractTreeRoot;
920
+ txConstantData.protocolContractsHash = await protocolContracts.hash();
864
921
  const tx = !privateOnly ? await mockTx(seed, {
865
- feePayer
922
+ feePayer,
923
+ gasUsed
866
924
  }) : await mockTx(seed, {
867
925
  numberOfNonRevertiblePublicCallRequests: 0,
868
926
  numberOfRevertiblePublicCallRequests: 0,
869
- feePayer
927
+ feePayer,
928
+ gasUsed
870
929
  });
871
930
  tx.data.constants = txConstantData;
872
- // No side effects were created in mockTx. The default gasUsed is the tx overhead.
873
- tx.data.gasUsed = Gas.from({
874
- daGas: FIXED_DA_GAS,
875
- l2Gas: FIXED_L2_GAS
876
- });
931
+ const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
877
932
  if (privateOnly) {
878
933
  const data = makePrivateToRollupAccumulatedData(seed + 0x1000);
879
- const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
934
+ clearContractClassLogs(data);
880
935
  feePaymentPublicDataWrite ??= new PublicDataWrite(Fr.random(), Fr.random());
881
- clearLogs(data);
882
936
  tx.data.forRollup.end = data;
937
+ await tx.recomputeHash();
883
938
  return makeProcessedTxFromPrivateOnlyTx(tx, transactionFee, feePaymentPublicDataWrite, globalVariables);
884
939
  } else {
885
- const nonRevertibleData = tx.data.forPublic.nonRevertibleAccumulatedData;
940
+ const dataFromPrivate = tx.data.forPublic;
941
+ const nonRevertibleData = dataFromPrivate.nonRevertibleAccumulatedData;
942
+ // Create revertible data.
886
943
  const revertibleData = makePrivateToPublicAccumulatedData(seed + 0x1000);
944
+ clearContractClassLogs(revertibleData);
887
945
  revertibleData.nullifiers[MAX_NULLIFIERS_PER_TX - 1] = Fr.ZERO; // Leave one space for the tx hash nullifier in nonRevertibleAccumulatedData.
888
- clearLogs(revertibleData);
889
- tx.data.forPublic.revertibleAccumulatedData = revertibleData;
946
+ dataFromPrivate.revertibleAccumulatedData = revertibleData;
947
+ // Create avm output.
890
948
  const avmOutput = AvmCircuitPublicInputs.empty();
949
+ // Assign data from hints.
950
+ avmOutput.protocolContracts = protocolContracts;
951
+ avmOutput.startTreeSnapshots.l1ToL2MessageTree = newL1ToL2Snapshot;
952
+ avmOutput.endTreeSnapshots.l1ToL2MessageTree = newL1ToL2Snapshot;
953
+ avmOutput.effectiveGasFees = computeEffectiveGasFees(globalVariables.gasFees, gasSettings);
954
+ // Assign data from private.
891
955
  avmOutput.globalVariables = globalVariables;
956
+ avmOutput.startGasUsed = tx.data.gasUsed;
957
+ avmOutput.gasSettings = gasSettings;
958
+ avmOutput.feePayer = feePayer;
959
+ avmOutput.publicCallRequestArrayLengths = new PublicCallRequestArrayLengths(tx.data.numberOfNonRevertiblePublicCallRequests(), tx.data.numberOfRevertiblePublicCallRequests(), tx.data.hasTeardownPublicCallRequest());
960
+ avmOutput.publicSetupCallRequests = dataFromPrivate.nonRevertibleAccumulatedData.publicCallRequests;
961
+ avmOutput.publicAppLogicCallRequests = dataFromPrivate.revertibleAccumulatedData.publicCallRequests;
962
+ avmOutput.publicTeardownCallRequest = dataFromPrivate.publicTeardownCallRequest;
963
+ avmOutput.previousNonRevertibleAccumulatedData = new PrivateToAvmAccumulatedData(dataFromPrivate.nonRevertibleAccumulatedData.noteHashes, dataFromPrivate.nonRevertibleAccumulatedData.nullifiers, dataFromPrivate.nonRevertibleAccumulatedData.l2ToL1Msgs);
964
+ avmOutput.previousNonRevertibleAccumulatedDataArrayLengths = avmOutput.previousNonRevertibleAccumulatedData.getArrayLengths();
965
+ avmOutput.previousRevertibleAccumulatedData = new PrivateToAvmAccumulatedData(dataFromPrivate.revertibleAccumulatedData.noteHashes, dataFromPrivate.revertibleAccumulatedData.nullifiers, dataFromPrivate.revertibleAccumulatedData.l2ToL1Msgs);
966
+ avmOutput.previousRevertibleAccumulatedDataArrayLengths = avmOutput.previousRevertibleAccumulatedData.getArrayLengths();
967
+ // Assign final data emitted from avm.
892
968
  avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
893
- avmOutput.accumulatedData.nullifiers = mergeAccumulatedData(nonRevertibleData.nullifiers, revertibleData.nullifiers, MAX_NULLIFIERS_PER_TX);
969
+ avmOutput.accumulatedData.nullifiers = padArrayEnd(nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter((n)=>!n.isEmpty()), Fr.ZERO, MAX_NULLIFIERS_PER_TX);
894
970
  avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
895
971
  avmOutput.accumulatedData.publicDataWrites = makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, (i)=>new PublicDataWrite(new Fr(i), new Fr(i + 10)), seed + 0x2000);
972
+ avmOutput.accumulatedDataArrayLengths = avmOutput.accumulatedData.getArrayLengths();
973
+ avmOutput.gasSettings = gasSettings;
974
+ // Note: The fee is computed from the tx's gas used, which only includes the gas used in private. But this shouldn't
975
+ // be a problem for the tests.
976
+ avmOutput.transactionFee = transactionFee;
896
977
  const avmCircuitInputs = await makeAvmCircuitInputs(seed + 0x3000, {
897
978
  publicInputs: avmOutput
898
979
  });
980
+ avmCircuitInputs.hints.startingTreeRoots.l1ToL2MessageTree = newL1ToL2Snapshot;
899
981
  const gasUsed = {
900
982
  totalGas: Gas.empty(),
901
983
  teardownGas: Gas.empty(),
902
984
  publicGas: Gas.empty(),
903
985
  billedGas: Gas.empty()
904
986
  };
987
+ await tx.recomputeHash();
905
988
  return makeProcessedTxFromTxWithPublicCalls(tx, {
906
989
  type: ProvingRequestType.PUBLIC_VM,
907
990
  inputs: avmCircuitInputs
908
991
  }, gasUsed, RevertCode.OK, undefined /* revertReason */ );
909
992
  }
910
993
  }
911
- // Remove all logs as it's ugly to mock them at the moment and we are going to change it to have the preimages be part of the public inputs soon.
912
- function clearLogs(data) {
913
- data.publicLogs?.forEach((_, i)=>data.publicLogs[i] = PublicLog.empty());
994
+ // Remove all contract class log hashes from the data as they are not required for the current tests.
995
+ // If they are needed one day, change this to create the random fields first and update the data with real hashes of those fields.
996
+ function clearContractClassLogs(data) {
914
997
  data.contractClassLogsHashes.forEach((_, i)=>data.contractClassLogsHashes[i] = ScopedLogHash.empty());
915
998
  }