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

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 (1560) hide show
  1. package/dest/abi/abi.d.ts +988 -412
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +79 -45
  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 +71 -0
  7. package/dest/abi/buffer.d.ts +2 -4
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +18 -5
  11. package/dest/abi/contract_artifact.d.ts.map +1 -1
  12. package/dest/abi/contract_artifact.js +79 -56
  13. package/dest/abi/decoder.d.ts +3 -3
  14. package/dest/abi/decoder.d.ts.map +1 -1
  15. package/dest/abi/decoder.js +8 -10
  16. package/dest/abi/encoder.d.ts +2 -2
  17. package/dest/abi/encoder.d.ts.map +1 -1
  18. package/dest/abi/encoder.js +69 -3
  19. package/dest/abi/event_metadata_definition.d.ts +8 -0
  20. package/dest/abi/event_metadata_definition.d.ts.map +1 -0
  21. package/dest/abi/event_selector.d.ts +2 -4
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/event_selector.js +2 -1
  24. package/dest/abi/function_call.d.ts +9 -4
  25. package/dest/abi/function_call.d.ts.map +1 -1
  26. package/dest/abi/function_call.js +6 -2
  27. package/dest/abi/function_selector.d.ts +3 -4
  28. package/dest/abi/function_selector.d.ts.map +1 -1
  29. package/dest/abi/function_selector.js +9 -1
  30. package/dest/abi/index.d.ts +3 -1
  31. package/dest/abi/index.d.ts.map +1 -1
  32. package/dest/abi/index.js +2 -0
  33. package/dest/abi/mocked_keys.d.ts +1 -1
  34. package/dest/abi/note_selector.d.ts +2 -4
  35. package/dest/abi/note_selector.d.ts.map +1 -1
  36. package/dest/abi/note_selector.js +2 -2
  37. package/dest/abi/selector.d.ts +2 -5
  38. package/dest/abi/selector.d.ts.map +1 -1
  39. package/dest/abi/selector.js +4 -2
  40. package/dest/abi/utils.d.ts +13 -3
  41. package/dest/abi/utils.d.ts.map +1 -1
  42. package/dest/abi/utils.js +14 -0
  43. package/dest/auth_witness/auth_witness.d.ts +24 -5
  44. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  45. package/dest/auth_witness/auth_witness.js +30 -1
  46. package/dest/auth_witness/index.d.ts +1 -1
  47. package/dest/avm/avm.d.ts +11630 -2931
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +947 -132
  50. package/dest/avm/avm_accumulated_data.d.ts +103 -29
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_accumulated_data.js +114 -13
  53. package/dest/avm/avm_circuit_public_inputs.d.ts +273 -201
  54. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  55. package/dest/avm/avm_circuit_public_inputs.js +73 -11
  56. package/dest/avm/avm_proving_request.d.ts +4597 -1115
  57. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  58. package/dest/avm/contract_storage_read.d.ts +3 -5
  59. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  60. package/dest/avm/contract_storage_read.js +1 -1
  61. package/dest/avm/contract_storage_update_request.d.ts +3 -5
  62. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  63. package/dest/avm/contract_storage_update_request.js +1 -1
  64. package/dest/avm/index.d.ts +2 -2
  65. package/dest/avm/index.d.ts.map +1 -1
  66. package/dest/avm/index.js +1 -1
  67. package/dest/avm/message_pack.d.ts +2 -3
  68. package/dest/avm/message_pack.d.ts.map +1 -1
  69. package/dest/avm/message_pack.js +41 -7
  70. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -5
  71. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  72. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  73. package/dest/avm/public_data_read.d.ts +3 -5
  74. package/dest/avm/public_data_read.d.ts.map +1 -1
  75. package/dest/avm/public_data_read.js +1 -1
  76. package/dest/avm/public_data_update_request.d.ts +3 -6
  77. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  78. package/dest/avm/public_data_update_request.js +4 -2
  79. package/dest/avm/public_data_write.d.ts +18 -8
  80. package/dest/avm/public_data_write.d.ts.map +1 -1
  81. package/dest/avm/public_data_write.js +32 -2
  82. package/dest/avm/public_inner_call_request.d.ts +3 -6
  83. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  84. package/dest/avm/public_inner_call_request.js +4 -2
  85. package/dest/avm/revert_code.d.ts +14 -8
  86. package/dest/avm/revert_code.d.ts.map +1 -1
  87. package/dest/avm/revert_code.js +28 -10
  88. package/dest/aztec-address/index.d.ts +13 -6
  89. package/dest/aztec-address/index.d.ts.map +1 -1
  90. package/dest/aztec-address/index.js +29 -4
  91. package/dest/block/attestation_info.d.ts +32 -0
  92. package/dest/block/attestation_info.d.ts.map +1 -0
  93. package/dest/block/attestation_info.js +42 -0
  94. package/dest/block/block_hash.d.ts +19 -13
  95. package/dest/block/block_hash.d.ts.map +1 -1
  96. package/dest/block/block_hash.js +26 -13
  97. package/dest/block/block_parameter.d.ts +6 -0
  98. package/dest/block/block_parameter.d.ts.map +1 -0
  99. package/dest/block/block_parameter.js +8 -0
  100. package/dest/block/body.d.ts +10 -9
  101. package/dest/block/body.d.ts.map +1 -1
  102. package/dest/block/body.js +18 -32
  103. package/dest/block/checkpointed_l2_block.d.ts +150 -0
  104. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  105. package/dest/block/checkpointed_l2_block.js +46 -0
  106. package/dest/block/in_block.d.ts +36 -24
  107. package/dest/block/in_block.d.ts.map +1 -1
  108. package/dest/block/in_block.js +21 -12
  109. package/dest/block/index.d.ts +8 -4
  110. package/dest/block/index.d.ts.map +1 -1
  111. package/dest/block/index.js +7 -3
  112. package/dest/block/l2_block.d.ts +56 -47
  113. package/dest/block/l2_block.d.ts.map +1 -1
  114. package/dest/block/l2_block.js +92 -77
  115. package/dest/block/l2_block_info.d.ts +46 -0
  116. package/dest/block/l2_block_info.d.ts.map +1 -0
  117. package/dest/block/l2_block_info.js +41 -0
  118. package/dest/block/l2_block_source.d.ts +424 -134
  119. package/dest/block/l2_block_source.d.ts.map +1 -1
  120. package/dest/block/l2_block_source.js +39 -15
  121. package/dest/block/l2_block_stream/index.d.ts +5 -0
  122. package/dest/block/l2_block_stream/index.d.ts.map +1 -0
  123. package/dest/block/l2_block_stream/index.js +4 -0
  124. package/dest/block/l2_block_stream/interfaces.d.ts +36 -0
  125. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -0
  126. package/dest/block/l2_block_stream/interfaces.js +1 -0
  127. package/dest/block/l2_block_stream/l2_block_stream.d.ts +40 -0
  128. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -0
  129. package/dest/block/l2_block_stream/l2_block_stream.js +272 -0
  130. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +27 -0
  131. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -0
  132. package/dest/block/l2_block_stream/l2_tips_memory_store.js +66 -0
  133. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  134. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  135. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  136. package/dest/block/proposal/attestations_and_signers.d.ts +59 -0
  137. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
  138. package/dest/block/proposal/attestations_and_signers.js +113 -0
  139. package/dest/block/proposal/committee_attestation.d.ts +36 -0
  140. package/dest/block/proposal/committee_attestation.d.ts.map +1 -0
  141. package/dest/block/proposal/committee_attestation.js +101 -0
  142. package/dest/block/proposal/index.d.ts +3 -0
  143. package/dest/block/proposal/index.d.ts.map +1 -0
  144. package/dest/block/proposal/index.js +2 -0
  145. package/dest/block/test/index.d.ts +2 -0
  146. package/dest/block/test/index.d.ts.map +1 -0
  147. package/dest/block/test/index.js +1 -0
  148. package/dest/block/test/l2_tips_store_test_suite.d.ts +3 -0
  149. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -0
  150. package/dest/block/test/l2_tips_store_test_suite.js +545 -0
  151. package/dest/block/validate_block_result.d.ts +50 -0
  152. package/dest/block/validate_block_result.d.ts.map +1 -0
  153. package/dest/block/validate_block_result.js +85 -0
  154. package/dest/checkpoint/checkpoint.d.ts +163 -0
  155. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  156. package/dest/checkpoint/checkpoint.js +113 -0
  157. package/dest/checkpoint/checkpoint_info.d.ts +38 -0
  158. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  159. package/dest/checkpoint/checkpoint_info.js +34 -0
  160. package/dest/checkpoint/index.d.ts +4 -0
  161. package/dest/checkpoint/index.d.ts.map +1 -0
  162. package/dest/checkpoint/index.js +3 -0
  163. package/dest/checkpoint/published_checkpoint.d.ts +240 -0
  164. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  165. package/dest/checkpoint/published_checkpoint.js +82 -0
  166. package/dest/config/chain-config.d.ts +19 -0
  167. package/dest/config/chain-config.d.ts.map +1 -0
  168. package/dest/config/{config.js → chain-config.js} +4 -5
  169. package/dest/config/index.d.ts +3 -2
  170. package/dest/config/index.d.ts.map +1 -1
  171. package/dest/config/index.js +2 -1
  172. package/dest/config/node-rpc-config.d.ts +13 -0
  173. package/dest/config/node-rpc-config.d.ts.map +1 -0
  174. package/dest/config/node-rpc-config.js +24 -0
  175. package/dest/contract/artifact_hash.d.ts +8 -10
  176. package/dest/contract/artifact_hash.d.ts.map +1 -1
  177. package/dest/contract/artifact_hash.js +13 -12
  178. package/dest/contract/complete_address.d.ts +2 -4
  179. package/dest/contract/complete_address.d.ts.map +1 -1
  180. package/dest/contract/complete_address.js +1 -1
  181. package/dest/contract/contract_address.d.ts +3 -3
  182. package/dest/contract/contract_address.d.ts.map +1 -1
  183. package/dest/contract/contract_address.js +4 -4
  184. package/dest/contract/contract_class.d.ts +2 -2
  185. package/dest/contract/contract_class.d.ts.map +1 -1
  186. package/dest/contract/contract_class.js +4 -20
  187. package/dest/contract/contract_class_id.d.ts +3 -5
  188. package/dest/contract/contract_class_id.d.ts.map +1 -1
  189. package/dest/contract/contract_class_id.js +9 -7
  190. package/dest/contract/contract_deployment_data.d.ts +119 -0
  191. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  192. package/dest/contract/contract_deployment_data.js +99 -0
  193. package/dest/contract/contract_function_dao.d.ts +1 -1
  194. package/dest/contract/contract_instance.d.ts +15 -16
  195. package/dest/contract/contract_instance.d.ts.map +1 -1
  196. package/dest/contract/contract_instance.js +8 -8
  197. package/dest/contract/contract_instance_update.d.ts +5 -6
  198. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  199. package/dest/contract/contract_instance_update.js +7 -7
  200. package/dest/contract/deployment_info.d.ts +2 -2
  201. package/dest/contract/deployment_info.d.ts.map +1 -1
  202. package/dest/contract/index.d.ts +3 -2
  203. package/dest/contract/index.d.ts.map +1 -1
  204. package/dest/contract/index.js +2 -1
  205. package/dest/contract/interfaces/contract_class.d.ts +81 -297
  206. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  207. package/dest/contract/interfaces/contract_class.js +36 -24
  208. package/dest/contract/interfaces/contract_data_source.d.ts +14 -21
  209. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  210. package/dest/contract/interfaces/contract_instance.d.ts +50 -41
  211. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  212. package/dest/contract/interfaces/contract_instance.js +30 -5
  213. package/dest/contract/interfaces/contract_instance_update.d.ts +16 -16
  214. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  215. package/dest/contract/interfaces/contract_instance_update.js +6 -6
  216. package/dest/contract/interfaces/index.d.ts +1 -1
  217. package/dest/contract/interfaces/node-info.d.ts +3 -3
  218. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  219. package/dest/contract/interfaces/node-info.js +1 -1
  220. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +10 -10
  221. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  222. package/dest/contract/interfaces/protocol_contract_addresses.js +4 -4
  223. package/dest/contract/partial_address.d.ts +2 -2
  224. package/dest/contract/partial_address.d.ts.map +1 -1
  225. package/dest/contract/private_function.d.ts +2 -4
  226. package/dest/contract/private_function.d.ts.map +1 -1
  227. package/dest/contract/private_function.js +4 -4
  228. package/dest/contract/private_function_membership_proof.d.ts +5 -5
  229. package/dest/contract/private_function_membership_proof.js +11 -11
  230. package/dest/contract/utility_function_membership_proof.d.ts +27 -0
  231. package/dest/contract/utility_function_membership_proof.d.ts.map +1 -0
  232. package/dest/contract/{unconstrained_function_membership_proof.js → utility_function_membership_proof.js} +14 -14
  233. package/dest/database-version/database_version.d.ts +58 -0
  234. package/dest/database-version/database_version.d.ts.map +1 -0
  235. package/dest/database-version/database_version.js +69 -0
  236. package/dest/database-version/version_manager.d.ts +20 -49
  237. package/dest/database-version/version_manager.d.ts.map +1 -1
  238. package/dest/database-version/version_manager.js +33 -75
  239. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +20 -0
  240. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -0
  241. package/dest/{shared_mutable/shared_mutable_values.js → delayed_public_mutable/delayed_public_mutable_values.js} +20 -23
  242. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +15 -0
  243. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -0
  244. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +30 -0
  245. package/dest/delayed_public_mutable/index.d.ts +5 -0
  246. package/dest/delayed_public_mutable/index.d.ts.map +1 -0
  247. package/dest/delayed_public_mutable/index.js +4 -0
  248. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +10 -0
  249. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -0
  250. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_delay_change.js +5 -5
  251. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +12 -0
  252. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -0
  253. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_value_change.js +8 -8
  254. package/dest/deserialization/index.d.ts +11 -0
  255. package/dest/deserialization/index.d.ts.map +1 -0
  256. package/dest/deserialization/index.js +10 -0
  257. package/dest/epoch-helpers/index.d.ts +31 -6
  258. package/dest/epoch-helpers/index.d.ts.map +1 -1
  259. package/dest/epoch-helpers/index.js +46 -11
  260. package/dest/errors/index.d.ts +1 -1
  261. package/dest/errors/proving_error.d.ts +1 -1
  262. package/dest/errors/proving_error.d.ts.map +1 -1
  263. package/dest/errors/simulation_error.d.ts +2 -2
  264. package/dest/errors/simulation_error.d.ts.map +1 -1
  265. package/dest/errors/simulation_error.js +2 -2
  266. package/dest/fees/index.d.ts +1 -1
  267. package/dest/fees/transaction_fee.d.ts +7 -2
  268. package/dest/fees/transaction_fee.d.ts.map +1 -1
  269. package/dest/fees/transaction_fee.js +15 -5
  270. package/dest/file-store/factory.d.ts +7 -0
  271. package/dest/file-store/factory.d.ts.map +1 -0
  272. package/dest/file-store/factory.js +64 -0
  273. package/dest/file-store/gcs.d.ts +20 -0
  274. package/dest/file-store/gcs.d.ts.map +1 -0
  275. package/dest/file-store/gcs.js +115 -0
  276. package/dest/file-store/http.d.ts +14 -0
  277. package/dest/file-store/http.d.ts.map +1 -0
  278. package/dest/file-store/http.js +74 -0
  279. package/dest/file-store/index.d.ts +3 -0
  280. package/dest/file-store/index.d.ts.map +1 -0
  281. package/dest/file-store/index.js +2 -0
  282. package/dest/file-store/interface.d.ts +28 -0
  283. package/dest/file-store/interface.d.ts.map +1 -0
  284. package/dest/file-store/interface.js +1 -0
  285. package/dest/file-store/local.d.ts +14 -0
  286. package/dest/file-store/local.d.ts.map +1 -0
  287. package/dest/file-store/local.js +40 -0
  288. package/dest/file-store/s3.d.ts +26 -0
  289. package/dest/file-store/s3.d.ts.map +1 -0
  290. package/dest/file-store/s3.js +248 -0
  291. package/dest/gas/gas.d.ts +12 -6
  292. package/dest/gas/gas.d.ts.map +1 -1
  293. package/dest/gas/gas.js +20 -3
  294. package/dest/gas/gas_fees.d.ts +26 -20
  295. package/dest/gas/gas_fees.d.ts.map +1 -1
  296. package/dest/gas/gas_fees.js +32 -19
  297. package/dest/gas/gas_settings.d.ts +35 -29
  298. package/dest/gas/gas_settings.d.ts.map +1 -1
  299. package/dest/gas/gas_settings.js +19 -7
  300. package/dest/gas/gas_used.d.ts +13 -2
  301. package/dest/gas/gas_used.d.ts.map +1 -1
  302. package/dest/gas/gas_used.js +19 -1
  303. package/dest/gas/index.d.ts +1 -1
  304. package/dest/hash/hash.d.ts +30 -10
  305. package/dest/hash/hash.d.ts.map +1 -1
  306. package/dest/hash/hash.js +39 -28
  307. package/dest/hash/index.d.ts +1 -1
  308. package/dest/hash/map_slot.d.ts +2 -2
  309. package/dest/hash/map_slot.d.ts.map +1 -1
  310. package/dest/hash/map_slot.js +4 -3
  311. package/dest/interfaces/allowed_element.d.ts +52 -0
  312. package/dest/interfaces/allowed_element.d.ts.map +1 -0
  313. package/dest/interfaces/allowed_element.js +18 -0
  314. package/dest/interfaces/api_limit.d.ts +6 -0
  315. package/dest/interfaces/api_limit.d.ts.map +1 -0
  316. package/dest/interfaces/api_limit.js +5 -0
  317. package/dest/interfaces/archiver.d.ts +55 -3
  318. package/dest/interfaces/archiver.d.ts.map +1 -1
  319. package/dest/interfaces/archiver.js +59 -25
  320. package/dest/interfaces/aztec-node-admin.d.ts +357 -0
  321. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -0
  322. package/dest/interfaces/aztec-node-admin.js +39 -0
  323. package/dest/interfaces/aztec-node.d.ts +153 -143
  324. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  325. package/dest/interfaces/aztec-node.js +54 -44
  326. package/dest/interfaces/block-builder.d.ts +53 -7
  327. package/dest/interfaces/block-builder.d.ts.map +1 -1
  328. package/dest/interfaces/block-builder.js +16 -1
  329. package/dest/interfaces/client.d.ts +3 -2
  330. package/dest/interfaces/client.d.ts.map +1 -1
  331. package/dest/interfaces/client.js +2 -1
  332. package/dest/interfaces/configs.d.ts +124 -60
  333. package/dest/interfaces/configs.d.ts.map +1 -1
  334. package/dest/interfaces/configs.js +24 -23
  335. package/dest/interfaces/epoch-prover.d.ts +36 -17
  336. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  337. package/dest/interfaces/get_logs_response.d.ts +23 -6
  338. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  339. package/dest/interfaces/get_logs_response.js +5 -4
  340. package/dest/interfaces/l2_logs_source.d.ts +21 -14
  341. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  342. package/dest/interfaces/merkle_tree_operations.d.ts +31 -14
  343. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  344. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  345. package/dest/interfaces/p2p.d.ts +19 -8
  346. package/dest/interfaces/p2p.d.ts.map +1 -1
  347. package/dest/interfaces/p2p.js +6 -3
  348. package/dest/interfaces/private_kernel_prover.d.ts +6 -7
  349. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  350. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  351. package/dest/interfaces/prover-agent.d.ts +32 -7
  352. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  353. package/dest/interfaces/prover-agent.js +15 -6
  354. package/dest/interfaces/prover-broker.d.ts +16 -1
  355. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  356. package/dest/interfaces/prover-broker.js +4 -1
  357. package/dest/interfaces/prover-client.d.ts +26 -10
  358. package/dest/interfaces/prover-client.d.ts.map +1 -1
  359. package/dest/interfaces/prover-client.js +24 -10
  360. package/dest/interfaces/prover-coordination.d.ts +5 -10
  361. package/dest/interfaces/prover-coordination.d.ts.map +1 -1
  362. package/dest/interfaces/prover-coordination.js +1 -7
  363. package/dest/interfaces/prover-node.d.ts +6 -3
  364. package/dest/interfaces/prover-node.d.ts.map +1 -1
  365. package/dest/interfaces/prover-node.js +8 -3
  366. package/dest/interfaces/proving-job-source.d.ts +1 -1
  367. package/dest/interfaces/proving-job.d.ts +4875 -1278
  368. package/dest/interfaces/proving-job.d.ts.map +1 -1
  369. package/dest/interfaces/proving-job.js +139 -113
  370. package/dest/interfaces/public_state_source.d.ts +8 -0
  371. package/dest/interfaces/public_state_source.d.ts.map +1 -0
  372. package/dest/interfaces/public_state_source.js +1 -0
  373. package/dest/interfaces/server.d.ts +12 -6
  374. package/dest/interfaces/server.d.ts.map +1 -1
  375. package/dest/interfaces/server.js +11 -5
  376. package/dest/interfaces/server_circuit_prover.d.ts +48 -36
  377. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  378. package/dest/interfaces/service.d.ts +4 -3
  379. package/dest/interfaces/service.d.ts.map +1 -1
  380. package/dest/interfaces/slasher.d.ts +86 -0
  381. package/dest/interfaces/slasher.d.ts.map +1 -0
  382. package/dest/interfaces/slasher.js +23 -0
  383. package/dest/interfaces/tx_provider.d.ts +24 -0
  384. package/dest/interfaces/tx_provider.d.ts.map +1 -0
  385. package/dest/interfaces/tx_provider.js +1 -0
  386. package/dest/interfaces/validator.d.ts +292 -0
  387. package/dest/interfaces/validator.d.ts.map +1 -0
  388. package/dest/interfaces/validator.js +21 -0
  389. package/dest/interfaces/world_state.d.ts +38 -44
  390. package/dest/interfaces/world_state.d.ts.map +1 -1
  391. package/dest/interfaces/world_state.js +4 -3
  392. package/dest/kernel/claimed_length_array.d.ts +34 -0
  393. package/dest/kernel/claimed_length_array.d.ts.map +1 -0
  394. package/dest/kernel/claimed_length_array.js +60 -0
  395. package/dest/kernel/hiding_kernel_private_inputs.d.ts +19 -0
  396. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -0
  397. package/dest/kernel/hiding_kernel_private_inputs.js +34 -0
  398. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +10 -9
  399. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  400. package/dest/kernel/hints/build_note_hash_read_request_hints.js +34 -27
  401. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +12 -14
  402. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  403. package/dest/kernel/hints/build_nullifier_read_request_hints.js +30 -37
  404. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -4
  405. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  406. package/dest/kernel/hints/build_transient_data_hints.js +10 -11
  407. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  408. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  409. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +2 -4
  410. package/dest/kernel/hints/index.d.ts +2 -3
  411. package/dest/kernel/hints/index.d.ts.map +1 -1
  412. package/dest/kernel/hints/index.js +1 -2
  413. package/dest/kernel/hints/key_validation_hint.d.ts +5 -11
  414. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  415. package/dest/kernel/hints/key_validation_hint.js +6 -8
  416. package/dest/kernel/hints/key_validation_request.d.ts +5 -6
  417. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  418. package/dest/kernel/hints/key_validation_request.js +2 -1
  419. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +3 -5
  420. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  421. package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
  422. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -4
  423. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  424. package/dest/kernel/hints/note_hash_read_request_hints.js +5 -5
  425. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +5 -6
  426. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  427. package/dest/kernel/hints/nullifier_read_request_hints.js +4 -4
  428. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +10 -22
  429. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  430. package/dest/kernel/hints/private_kernel_reset_hints.js +13 -14
  431. package/dest/kernel/hints/read_request.d.ts +2 -4
  432. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  433. package/dest/kernel/hints/read_request.js +1 -1
  434. package/dest/kernel/hints/read_request_hints.d.ts +30 -32
  435. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  436. package/dest/kernel/hints/read_request_hints.js +28 -28
  437. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +3 -5
  438. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  439. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  440. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  441. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +17 -0
  442. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -0
  443. package/dest/kernel/hints/{transient_data_index_hint.js → transient_data_squashing_hint.js} +9 -7
  444. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -4
  445. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  446. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  447. package/dest/kernel/index.d.ts +5 -3
  448. package/dest/kernel/index.d.ts.map +1 -1
  449. package/dest/kernel/index.js +4 -2
  450. package/dest/kernel/log_hash.d.ts +29 -11
  451. package/dest/kernel/log_hash.d.ts.map +1 -1
  452. package/dest/kernel/log_hash.js +76 -15
  453. package/dest/kernel/note_hash.d.ts +2 -4
  454. package/dest/kernel/note_hash.d.ts.map +1 -1
  455. package/dest/kernel/note_hash.js +1 -1
  456. package/dest/kernel/nullifier.d.ts +4 -6
  457. package/dest/kernel/nullifier.d.ts.map +1 -1
  458. package/dest/kernel/nullifier.js +12 -12
  459. package/dest/kernel/padded_side_effects.d.ts +26 -0
  460. package/dest/kernel/padded_side_effects.d.ts.map +1 -0
  461. package/dest/kernel/padded_side_effects.js +51 -0
  462. package/dest/kernel/private_accumulated_data.d.ts +20 -21
  463. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  464. package/dest/kernel/private_accumulated_data.js +5 -5
  465. package/dest/kernel/private_call_data.d.ts +10 -32
  466. package/dest/kernel/private_call_data.d.ts.map +1 -1
  467. package/dest/kernel/private_call_data.js +7 -19
  468. package/dest/kernel/private_call_request.d.ts +3 -5
  469. package/dest/kernel/private_call_request.d.ts.map +1 -1
  470. package/dest/kernel/private_call_request.js +2 -2
  471. package/dest/kernel/private_circuit_public_inputs.d.ts +98 -83
  472. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  473. package/dest/kernel/private_circuit_public_inputs.js +90 -60
  474. package/dest/kernel/private_context_inputs.d.ts +4 -4
  475. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  476. package/dest/kernel/private_context_inputs.js +4 -4
  477. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +25 -10
  478. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  479. package/dest/kernel/private_kernel_circuit_public_inputs.js +15 -7
  480. package/dest/kernel/private_kernel_data.d.ts +8 -29
  481. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  482. package/dest/kernel/private_kernel_data.js +8 -21
  483. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +17 -10
  484. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  485. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +13 -8
  486. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +2 -4
  487. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  488. package/dest/kernel/private_kernel_prover_output.d.ts +79 -0
  489. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -0
  490. package/dest/kernel/private_kernel_prover_output.js +28 -0
  491. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +10 -9
  492. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  493. package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +10 -6
  494. package/dest/kernel/private_kernel_reset_dimensions.d.ts +12 -14
  495. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  496. package/dest/kernel/private_kernel_reset_dimensions.js +29 -29
  497. package/dest/kernel/private_kernel_simulated_output.d.ts +7 -13
  498. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  499. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +21 -5
  500. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  501. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +14 -6
  502. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +22 -14
  503. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  504. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +29 -22
  505. package/dest/kernel/private_log_data.d.ts +3 -6
  506. package/dest/kernel/private_log_data.d.ts.map +1 -1
  507. package/dest/kernel/private_log_data.js +9 -4
  508. package/dest/kernel/private_to_avm_accumulated_data.d.ts +24 -17
  509. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  510. package/dest/kernel/private_to_avm_accumulated_data.js +35 -3
  511. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -7
  512. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  513. package/dest/kernel/private_to_public_accumulated_data.js +4 -2
  514. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  515. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  516. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  517. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +9 -9
  518. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  519. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +17 -11
  520. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -8
  521. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  522. package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
  523. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +15 -17
  524. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  525. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +12 -13
  526. package/dest/kernel/private_validation_requests.d.ts +10 -38
  527. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  528. package/dest/kernel/private_validation_requests.js +13 -31
  529. package/dest/kernel/public_call_request.d.ts +93 -31
  530. package/dest/kernel/public_call_request.d.ts.map +1 -1
  531. package/dest/kernel/public_call_request.js +100 -22
  532. package/dest/kernel/utils/index.d.ts +1 -1
  533. package/dest/kernel/utils/interfaces.d.ts +1 -1
  534. package/dest/kernel/utils/optional_number.d.ts +3 -5
  535. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  536. package/dest/kernel/utils/order_and_comparison.d.ts +1 -4
  537. package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -1
  538. package/dest/kernel/utils/order_and_comparison.js +0 -19
  539. package/dest/keys/derivation.d.ts +7 -8
  540. package/dest/keys/derivation.d.ts.map +1 -1
  541. package/dest/keys/derivation.js +15 -25
  542. package/dest/keys/index.d.ts +1 -1
  543. package/dest/keys/key_types.d.ts +2 -2
  544. package/dest/keys/public_key.d.ts +2 -2
  545. package/dest/keys/public_key.d.ts.map +1 -1
  546. package/dest/keys/public_keys.d.ts +11 -4
  547. package/dest/keys/public_keys.d.ts.map +1 -1
  548. package/dest/keys/public_keys.js +15 -3
  549. package/dest/keys/utils.d.ts +1 -1
  550. package/dest/keys/utils.d.ts.map +1 -1
  551. package/dest/keys/utils.js +7 -3
  552. package/dest/l1-contracts/index.d.ts +2 -0
  553. package/dest/l1-contracts/index.d.ts.map +1 -0
  554. package/dest/l1-contracts/index.js +1 -0
  555. package/dest/l1-contracts/slash_factory.d.ts +45 -0
  556. package/dest/l1-contracts/slash_factory.d.ts.map +1 -0
  557. package/dest/l1-contracts/slash_factory.js +158 -0
  558. package/dest/logs/contract_class_log.d.ts +72 -18
  559. package/dest/logs/contract_class_log.d.ts.map +1 -1
  560. package/dest/logs/contract_class_log.js +139 -82
  561. package/dest/logs/debug_log.d.ts +21 -0
  562. package/dest/logs/debug_log.d.ts.map +1 -0
  563. package/dest/logs/debug_log.js +39 -0
  564. package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
  565. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
  566. package/dest/logs/directional_app_tagging_secret.js +64 -0
  567. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  568. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  569. package/dest/logs/extended_public_log.d.ts +11 -5
  570. package/dest/logs/extended_public_log.d.ts.map +1 -1
  571. package/dest/logs/index.d.ts +9 -4
  572. package/dest/logs/index.d.ts.map +1 -1
  573. package/dest/logs/index.js +8 -3
  574. package/dest/logs/log_filter.d.ts +1 -1
  575. package/dest/logs/log_id.d.ts +17 -7
  576. package/dest/logs/log_id.d.ts.map +1 -1
  577. package/dest/logs/log_id.js +20 -11
  578. package/dest/logs/message_context.d.ts +29 -0
  579. package/dest/logs/message_context.d.ts.map +1 -0
  580. package/dest/logs/message_context.js +56 -0
  581. package/dest/logs/pending_tagged_log.d.ts +14 -0
  582. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  583. package/dest/logs/pending_tagged_log.js +34 -0
  584. package/dest/logs/pre_tag.d.ts +34 -0
  585. package/dest/logs/pre_tag.d.ts.map +1 -0
  586. package/dest/logs/pre_tag.js +7 -0
  587. package/dest/logs/private_log.d.ts +26 -10
  588. package/dest/logs/private_log.d.ts.map +1 -1
  589. package/dest/logs/private_log.js +65 -25
  590. package/dest/logs/public_log.d.ts +37 -14
  591. package/dest/logs/public_log.d.ts.map +1 -1
  592. package/dest/logs/public_log.js +144 -36
  593. package/dest/logs/shared_secret_derivation.d.ts +17 -0
  594. package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
  595. package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +6 -10
  596. package/dest/logs/siloed_tag.d.ts +23 -0
  597. package/dest/logs/siloed_tag.d.ts.map +1 -0
  598. package/dest/logs/siloed_tag.js +31 -0
  599. package/dest/logs/tag.d.ts +21 -0
  600. package/dest/logs/tag.d.ts.map +1 -0
  601. package/dest/logs/tag.js +30 -0
  602. package/dest/logs/tx_scoped_l2_log.d.ts +34 -45
  603. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  604. package/dest/logs/tx_scoped_l2_log.js +38 -26
  605. package/dest/messaging/in_hash.d.ts +6 -0
  606. package/dest/messaging/in_hash.d.ts.map +1 -0
  607. package/dest/messaging/in_hash.js +10 -0
  608. package/dest/messaging/inbox_leaf.d.ts +11 -5
  609. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  610. package/dest/messaging/inbox_leaf.js +19 -4
  611. package/dest/messaging/index.d.ts +4 -1
  612. package/dest/messaging/index.d.ts.map +1 -1
  613. package/dest/messaging/index.js +3 -0
  614. package/dest/messaging/l1_actor.d.ts +2 -4
  615. package/dest/messaging/l1_actor.d.ts.map +1 -1
  616. package/dest/messaging/l1_actor.js +2 -2
  617. package/dest/messaging/l1_to_l2_message.d.ts +2 -4
  618. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  619. package/dest/messaging/l1_to_l2_message.js +2 -2
  620. package/dest/messaging/l1_to_l2_message_source.d.ts +9 -8
  621. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  622. package/dest/messaging/l2_actor.d.ts +2 -4
  623. package/dest/messaging/l2_actor.d.ts.map +1 -1
  624. package/dest/messaging/l2_actor.js +2 -2
  625. package/dest/messaging/l2_to_l1_membership.d.ts +97 -0
  626. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -0
  627. package/dest/messaging/l2_to_l1_membership.js +181 -0
  628. package/dest/messaging/l2_to_l1_message.d.ts +128 -19
  629. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  630. package/dest/messaging/l2_to_l1_message.js +102 -35
  631. package/dest/messaging/out_hash.d.ts +43 -0
  632. package/dest/messaging/out_hash.d.ts.map +1 -0
  633. package/dest/messaging/out_hash.js +63 -0
  634. package/dest/noir/index.d.ts +25 -8
  635. package/dest/noir/index.d.ts.map +1 -1
  636. package/dest/noir/index.js +6 -5
  637. package/dest/note/comparator.d.ts +1 -1
  638. package/dest/note/index.d.ts +2 -2
  639. package/dest/note/index.d.ts.map +1 -1
  640. package/dest/note/index.js +1 -1
  641. package/dest/note/note.d.ts +39 -21
  642. package/dest/note/note.d.ts.map +1 -1
  643. package/dest/note/note.js +55 -5
  644. package/dest/note/note_dao.d.ts +110 -0
  645. package/dest/note/note_dao.d.ts.map +1 -0
  646. package/dest/note/note_dao.js +115 -0
  647. package/dest/note/note_status.d.ts +1 -1
  648. package/dest/note/notes_filter.d.ts +9 -9
  649. package/dest/note/notes_filter.d.ts.map +1 -1
  650. package/dest/note/notes_filter.js +2 -4
  651. package/dest/p2p/attestation_utils.d.ts +10 -0
  652. package/dest/p2p/attestation_utils.d.ts.map +1 -0
  653. package/dest/p2p/attestation_utils.js +21 -0
  654. package/dest/p2p/block_proposal.d.ts +117 -25
  655. package/dest/p2p/block_proposal.d.ts.map +1 -1
  656. package/dest/p2p/block_proposal.js +160 -31
  657. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  658. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  659. package/dest/p2p/checkpoint_attestation.js +104 -0
  660. package/dest/p2p/checkpoint_proposal.d.ts +167 -0
  661. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  662. package/dest/p2p/checkpoint_proposal.js +229 -0
  663. package/dest/p2p/client_type.d.ts +1 -1
  664. package/dest/p2p/consensus_payload.d.ts +42 -24
  665. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  666. package/dest/p2p/consensus_payload.js +43 -30
  667. package/dest/p2p/constants.d.ts +3 -0
  668. package/dest/p2p/constants.d.ts.map +1 -0
  669. package/dest/p2p/constants.js +2 -0
  670. package/dest/p2p/gossipable.d.ts +21 -18
  671. package/dest/p2p/gossipable.d.ts.map +1 -1
  672. package/dest/p2p/gossipable.js +52 -4
  673. package/dest/p2p/index.d.ts +6 -2
  674. package/dest/p2p/index.d.ts.map +1 -1
  675. package/dest/p2p/index.js +5 -1
  676. package/dest/p2p/interface.d.ts +1 -14
  677. package/dest/p2p/interface.d.ts.map +1 -1
  678. package/dest/p2p/interface.js +1 -19
  679. package/dest/p2p/message_validator.d.ts +18 -3
  680. package/dest/p2p/message_validator.d.ts.map +1 -1
  681. package/dest/p2p/message_validator.js +2 -1
  682. package/dest/p2p/peer_error.d.ts +1 -1
  683. package/dest/p2p/signature_utils.d.ts +8 -7
  684. package/dest/p2p/signature_utils.d.ts.map +1 -1
  685. package/dest/p2p/signature_utils.js +10 -6
  686. package/dest/p2p/signed_txs.d.ts +42 -0
  687. package/dest/p2p/signed_txs.d.ts.map +1 -0
  688. package/dest/p2p/signed_txs.js +75 -0
  689. package/dest/p2p/topic_type.d.ts +9 -11
  690. package/dest/p2p/topic_type.d.ts.map +1 -1
  691. package/dest/p2p/topic_type.js +44 -17
  692. package/dest/parity/index.d.ts +3 -4
  693. package/dest/parity/index.d.ts.map +1 -1
  694. package/dest/parity/index.js +2 -3
  695. package/dest/parity/parity_base_private_inputs.d.ts +35 -0
  696. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  697. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +11 -7
  698. package/dest/parity/parity_public_inputs.d.ts +4 -6
  699. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  700. package/dest/parity/parity_public_inputs.js +1 -1
  701. package/dest/parity/parity_root_private_inputs.d.ts +39 -0
  702. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  703. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  704. package/dest/proofs/chonk_proof.d.ts +28 -0
  705. package/dest/proofs/chonk_proof.d.ts.map +1 -0
  706. package/dest/proofs/chonk_proof.js +106 -0
  707. package/dest/proofs/index.d.ts +3 -2
  708. package/dest/proofs/index.d.ts.map +1 -1
  709. package/dest/proofs/index.js +2 -1
  710. package/dest/proofs/proof.d.ts +7 -8
  711. package/dest/proofs/proof.d.ts.map +1 -1
  712. package/dest/proofs/proof.js +29 -21
  713. package/dest/proofs/proof_data.d.ts +33 -0
  714. package/dest/proofs/proof_data.d.ts.map +1 -0
  715. package/dest/proofs/proof_data.js +39 -0
  716. package/dest/proofs/proving_request_type.d.ts +18 -13
  717. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  718. package/dest/proofs/proving_request_type.js +17 -11
  719. package/dest/proofs/recursive_proof.d.ts +5 -22
  720. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  721. package/dest/proofs/recursive_proof.js +1 -1
  722. package/dest/rollup/avm_proof_data.d.ts +4 -16
  723. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  724. package/dest/rollup/avm_proof_data.js +1 -25
  725. package/dest/rollup/base_rollup_hints.d.ts +36 -37
  726. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  727. package/dest/rollup/base_rollup_hints.js +41 -40
  728. package/dest/rollup/block_constant_data.d.ts +51 -0
  729. package/dest/rollup/block_constant_data.d.ts.map +1 -0
  730. package/dest/rollup/block_constant_data.js +50 -0
  731. package/dest/rollup/block_headers_hash.d.ts +4 -0
  732. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  733. package/dest/rollup/block_headers_hash.js +9 -0
  734. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +50 -0
  735. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  736. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
  737. package/dest/rollup/block_rollup_public_inputs.d.ts +128 -0
  738. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
  739. package/dest/rollup/block_rollup_public_inputs.js +87 -0
  740. package/dest/rollup/block_root_rollup_private_inputs.d.ts +225 -0
  741. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  742. package/dest/rollup/block_root_rollup_private_inputs.js +249 -0
  743. package/dest/rollup/checkpoint_constant_data.d.ts +77 -0
  744. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
  745. package/dest/rollup/checkpoint_constant_data.js +82 -0
  746. package/dest/rollup/checkpoint_header.d.ts +119 -0
  747. package/dest/rollup/checkpoint_header.d.ts.map +1 -0
  748. package/dest/rollup/checkpoint_header.js +214 -0
  749. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
  750. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  751. package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
  752. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +122 -0
  753. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
  754. package/dest/rollup/checkpoint_rollup_public_inputs.js +116 -0
  755. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +141 -0
  756. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  757. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +190 -0
  758. package/dest/rollup/epoch_constant_data.d.ts +56 -0
  759. package/dest/rollup/epoch_constant_data.d.ts.map +1 -0
  760. package/dest/rollup/epoch_constant_data.js +53 -0
  761. package/dest/rollup/index.d.ts +21 -17
  762. package/dest/rollup/index.d.ts.map +1 -1
  763. package/dest/rollup/index.js +20 -16
  764. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
  765. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  766. package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
  767. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
  768. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
  769. package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
  770. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
  771. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
  772. package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
  773. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
  774. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  775. package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
  776. package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
  777. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  778. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  779. package/dest/rollup/root_rollup_public_inputs.d.ts +59 -0
  780. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  781. package/dest/rollup/root_rollup_public_inputs.js +77 -0
  782. package/dest/rollup/tree_snapshot_diff_hints.d.ts +87 -0
  783. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
  784. package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
  785. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +44 -0
  786. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  787. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  788. package/dest/rollup/tx_rollup_public_inputs.d.ts +115 -0
  789. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  790. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +17 -22
  791. package/dest/schemas/index.d.ts +1 -1
  792. package/dest/schemas/schemas.d.ts +93 -19
  793. package/dest/schemas/schemas.d.ts.map +1 -1
  794. package/dest/schemas/schemas.js +15 -2
  795. package/dest/slashing/empire.d.ts +31 -0
  796. package/dest/slashing/empire.d.ts.map +1 -0
  797. package/dest/slashing/empire.js +85 -0
  798. package/dest/slashing/helpers.d.ts +36 -0
  799. package/dest/slashing/helpers.d.ts.map +1 -0
  800. package/dest/slashing/helpers.js +91 -0
  801. package/dest/slashing/index.d.ts +7 -0
  802. package/dest/slashing/index.d.ts.map +1 -0
  803. package/dest/slashing/index.js +6 -0
  804. package/dest/slashing/interfaces.d.ts +12 -0
  805. package/dest/slashing/interfaces.d.ts.map +1 -0
  806. package/dest/slashing/interfaces.js +1 -0
  807. package/dest/slashing/serialization.d.ts +8 -0
  808. package/dest/slashing/serialization.d.ts.map +1 -0
  809. package/dest/slashing/serialization.js +78 -0
  810. package/dest/slashing/tally.d.ts +23 -0
  811. package/dest/slashing/tally.d.ts.map +1 -0
  812. package/dest/slashing/tally.js +60 -0
  813. package/dest/slashing/types.d.ts +161 -0
  814. package/dest/slashing/types.d.ts.map +1 -0
  815. package/dest/slashing/types.js +88 -0
  816. package/dest/snapshots/download.d.ts +9 -0
  817. package/dest/snapshots/download.d.ts.map +1 -0
  818. package/dest/snapshots/download.js +93 -0
  819. package/dest/snapshots/index.d.ts +4 -0
  820. package/dest/snapshots/index.d.ts.map +1 -0
  821. package/dest/snapshots/index.js +3 -0
  822. package/dest/snapshots/types.d.ts +120 -0
  823. package/dest/snapshots/types.d.ts.map +1 -0
  824. package/dest/snapshots/types.js +35 -0
  825. package/dest/snapshots/upload.d.ts +8 -0
  826. package/dest/snapshots/upload.d.ts.map +1 -0
  827. package/dest/snapshots/upload.js +42 -0
  828. package/dest/stats/index.d.ts +1 -1
  829. package/dest/stats/stats.d.ts +19 -17
  830. package/dest/stats/stats.d.ts.map +1 -1
  831. package/dest/tests/factories.d.ts +143 -131
  832. package/dest/tests/factories.d.ts.map +1 -1
  833. package/dest/tests/factories.js +451 -376
  834. package/dest/tests/fixtures.d.ts +1 -1
  835. package/dest/tests/index.d.ts +1 -1
  836. package/dest/tests/jest.d.ts +1 -1
  837. package/dest/tests/jest.js +1 -1
  838. package/dest/tests/mocks.d.ts +142 -23
  839. package/dest/tests/mocks.d.ts.map +1 -1
  840. package/dest/tests/mocks.js +352 -93
  841. package/dest/trees/append_only_tree_snapshot.d.ts +14 -8
  842. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  843. package/dest/trees/append_only_tree_snapshot.js +21 -4
  844. package/dest/trees/database_public_state_source.d.ts +11 -0
  845. package/dest/trees/database_public_state_source.d.ts.map +1 -0
  846. package/dest/trees/database_public_state_source.js +18 -0
  847. package/dest/trees/index.d.ts +2 -2
  848. package/dest/trees/index.d.ts.map +1 -1
  849. package/dest/trees/index.js +1 -1
  850. package/dest/trees/merkle_tree_id.d.ts +17 -9
  851. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  852. package/dest/trees/merkle_tree_id.js +10 -0
  853. package/dest/trees/nullifier_leaf.d.ts +67 -19
  854. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  855. package/dest/trees/nullifier_leaf.js +70 -23
  856. package/dest/trees/nullifier_membership_witness.d.ts +40 -45
  857. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  858. package/dest/trees/nullifier_membership_witness.js +15 -2
  859. package/dest/trees/public_data_leaf.d.ts +80 -32
  860. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  861. package/dest/trees/public_data_leaf.js +66 -31
  862. package/dest/trees/public_data_witness.d.ts +47 -54
  863. package/dest/trees/public_data_witness.d.ts.map +1 -1
  864. package/dest/trees/public_data_witness.js +21 -5
  865. package/dest/tx/block_header.d.ts +32 -28
  866. package/dest/tx/block_header.d.ts.map +1 -1
  867. package/dest/tx/block_header.js +47 -24
  868. package/dest/tx/call_context.d.ts +8 -11
  869. package/dest/tx/call_context.d.ts.map +1 -1
  870. package/dest/tx/call_context.js +3 -1
  871. package/dest/tx/capsule.d.ts +5 -5
  872. package/dest/tx/capsule.d.ts.map +1 -1
  873. package/dest/tx/capsule.js +3 -1
  874. package/dest/tx/execution_payload.d.ts +45 -0
  875. package/dest/tx/execution_payload.d.ts.map +1 -0
  876. package/dest/tx/execution_payload.js +40 -0
  877. package/dest/tx/function_data.d.ts +4 -6
  878. package/dest/tx/function_data.d.ts.map +1 -1
  879. package/dest/tx/function_data.js +1 -1
  880. package/dest/tx/global_variable_builder.d.ts +8 -5
  881. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  882. package/dest/tx/global_variables.d.ts +76 -44
  883. package/dest/tx/global_variables.d.ts.map +1 -1
  884. package/dest/tx/global_variables.js +72 -22
  885. package/dest/tx/hashed_values.d.ts +19 -9
  886. package/dest/tx/hashed_values.d.ts.map +1 -1
  887. package/dest/tx/hashed_values.js +27 -10
  888. package/dest/tx/in_tx.d.ts +26 -0
  889. package/dest/tx/in_tx.d.ts.map +1 -0
  890. package/dest/tx/in_tx.js +14 -0
  891. package/dest/tx/index.d.ts +11 -4
  892. package/dest/tx/index.d.ts.map +1 -1
  893. package/dest/tx/index.js +10 -3
  894. package/dest/tx/indexed_tx_effect.d.ts +31 -0
  895. package/dest/tx/indexed_tx_effect.d.ts.map +1 -0
  896. package/dest/tx/indexed_tx_effect.js +36 -0
  897. package/dest/tx/offchain_effect.d.ts +14 -0
  898. package/dest/tx/offchain_effect.d.ts.map +1 -0
  899. package/dest/tx/offchain_effect.js +4 -0
  900. package/dest/tx/partial_state_reference.d.ts +12 -5
  901. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  902. package/dest/tx/partial_state_reference.js +22 -2
  903. package/dest/tx/private_execution_result.d.ts +71 -69
  904. package/dest/tx/private_execution_result.d.ts.map +1 -1
  905. package/dest/tx/private_execution_result.js +74 -100
  906. package/dest/tx/private_tx_constant_data.d.ts +60 -0
  907. package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
  908. package/dest/tx/private_tx_constant_data.js +69 -0
  909. package/dest/tx/processed_tx.d.ts +10 -11
  910. package/dest/tx/processed_tx.d.ts.map +1 -1
  911. package/dest/tx/processed_tx.js +28 -25
  912. package/dest/tx/profiling.d.ts +483 -0
  913. package/dest/tx/profiling.d.ts.map +1 -0
  914. package/dest/tx/profiling.js +167 -0
  915. package/dest/tx/protocol_contracts.d.ts +37 -0
  916. package/dest/tx/protocol_contracts.d.ts.map +1 -0
  917. package/dest/tx/protocol_contracts.js +58 -0
  918. package/dest/tx/proven_tx.d.ts +129 -0
  919. package/dest/tx/proven_tx.d.ts.map +1 -0
  920. package/dest/tx/proven_tx.js +45 -0
  921. package/dest/tx/public_call_request_with_calldata.d.ts +46 -0
  922. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -0
  923. package/dest/tx/public_call_request_with_calldata.js +71 -0
  924. package/dest/tx/public_simulation_output.d.ts +7 -5
  925. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  926. package/dest/tx/public_simulation_output.js +16 -9
  927. package/dest/tx/simulated_tx.d.ts +1194 -46
  928. package/dest/tx/simulated_tx.d.ts.map +1 -1
  929. package/dest/tx/simulated_tx.js +52 -47
  930. package/dest/tx/state_reference.d.ts +18 -12
  931. package/dest/tx/state_reference.d.ts.map +1 -1
  932. package/dest/tx/state_reference.js +41 -6
  933. package/dest/tx/tree_snapshots.d.ts +15 -10
  934. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  935. package/dest/tx/tree_snapshots.js +15 -4
  936. package/dest/tx/tx.d.ts +80 -90
  937. package/dest/tx/tx.d.ts.map +1 -1
  938. package/dest/tx/tx.js +165 -152
  939. package/dest/tx/tx_constant_data.d.ts +9 -43
  940. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  941. package/dest/tx/tx_constant_data.js +12 -21
  942. package/dest/tx/tx_context.d.ts +35 -37
  943. package/dest/tx/tx_context.d.ts.map +1 -1
  944. package/dest/tx/tx_context.js +1 -1
  945. package/dest/tx/tx_effect.d.ts +22 -54
  946. package/dest/tx/tx_effect.d.ts.map +1 -1
  947. package/dest/tx/tx_effect.js +85 -275
  948. package/dest/tx/tx_execution_request.d.ts +15 -8
  949. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  950. package/dest/tx/tx_execution_request.js +23 -12
  951. package/dest/tx/tx_hash.d.ts +13 -6
  952. package/dest/tx/tx_hash.d.ts.map +1 -1
  953. package/dest/tx/tx_hash.js +25 -6
  954. package/dest/tx/tx_receipt.d.ts +45 -45
  955. package/dest/tx/tx_receipt.d.ts.map +1 -1
  956. package/dest/tx/tx_receipt.js +50 -28
  957. package/dest/tx/tx_request.d.ts +13 -11
  958. package/dest/tx/tx_request.d.ts.map +1 -1
  959. package/dest/tx/tx_request.js +13 -10
  960. package/dest/tx/validator/empty_validator.d.ts +1 -1
  961. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  962. package/dest/tx/validator/error_texts.d.ts +25 -0
  963. package/dest/tx/validator/error_texts.d.ts.map +1 -0
  964. package/dest/tx/validator/error_texts.js +33 -0
  965. package/dest/tx/validator/tx_validator.d.ts +3 -4
  966. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  967. package/dest/tx/validator/tx_validator.js +7 -4
  968. package/dest/types/index.d.ts +1 -1
  969. package/dest/types/shared.d.ts +10 -12
  970. package/dest/types/shared.d.ts.map +1 -1
  971. package/dest/types/shared.js +0 -8
  972. package/dest/update-checker/index.d.ts +2 -0
  973. package/dest/update-checker/index.d.ts.map +1 -0
  974. package/dest/update-checker/index.js +1 -0
  975. package/dest/update-checker/update-checker.d.ts +49 -0
  976. package/dest/update-checker/update-checker.d.ts.map +1 -0
  977. package/dest/update-checker/update-checker.js +130 -0
  978. package/dest/validators/errors.d.ts +33 -0
  979. package/dest/validators/errors.d.ts.map +1 -0
  980. package/dest/validators/errors.js +45 -0
  981. package/dest/validators/index.d.ts +4 -0
  982. package/dest/validators/index.d.ts.map +1 -0
  983. package/dest/validators/index.js +2 -0
  984. package/dest/validators/schemas.d.ts +650 -0
  985. package/dest/validators/schemas.d.ts.map +1 -0
  986. package/dest/validators/schemas.js +52 -0
  987. package/dest/validators/types.d.ts +53 -0
  988. package/dest/validators/types.d.ts.map +1 -0
  989. package/dest/validators/types.js +1 -0
  990. package/dest/versioning/index.d.ts +1 -1
  991. package/dest/versioning/versioning.d.ts +6 -6
  992. package/dest/versioning/versioning.d.ts.map +1 -1
  993. package/dest/versioning/versioning.js +23 -18
  994. package/dest/vks/index.d.ts +2 -2
  995. package/dest/vks/index.d.ts.map +1 -1
  996. package/dest/vks/index.js +1 -1
  997. package/dest/vks/verification_key.d.ts +19 -14
  998. package/dest/vks/verification_key.d.ts.map +1 -1
  999. package/dest/vks/verification_key.js +30 -12
  1000. package/dest/vks/vk_data.d.ts +30 -0
  1001. package/dest/vks/vk_data.d.ts.map +1 -0
  1002. package/dest/vks/{vk_witness_data.js → vk_data.js} +11 -11
  1003. package/dest/world-state/index.d.ts +2 -0
  1004. package/dest/world-state/index.d.ts.map +1 -0
  1005. package/dest/world-state/index.js +1 -0
  1006. package/dest/world-state/world_state_revision.d.ts +54 -0
  1007. package/dest/world-state/world_state_revision.d.ts.map +1 -0
  1008. package/dest/world-state/world_state_revision.js +44 -0
  1009. package/dest/zkpassport/index.d.ts +34 -0
  1010. package/dest/zkpassport/index.d.ts.map +1 -0
  1011. package/dest/zkpassport/index.js +82 -0
  1012. package/package.json +51 -25
  1013. package/src/abi/abi.ts +138 -102
  1014. package/src/abi/authorization_selector.ts +96 -0
  1015. package/src/abi/buffer.ts +1 -1
  1016. package/src/abi/contract_artifact.ts +101 -70
  1017. package/src/abi/decoder.ts +19 -14
  1018. package/src/abi/encoder.ts +89 -4
  1019. package/src/abi/event_metadata_definition.ts +8 -0
  1020. package/src/abi/event_selector.ts +3 -2
  1021. package/src/abi/function_call.ts +6 -2
  1022. package/src/abi/function_selector.ts +11 -2
  1023. package/src/abi/index.ts +2 -0
  1024. package/src/abi/note_selector.ts +2 -2
  1025. package/src/abi/selector.ts +1 -1
  1026. package/src/abi/utils.ts +32 -0
  1027. package/src/auth_witness/auth_witness.ts +30 -1
  1028. package/src/avm/avm.ts +1330 -127
  1029. package/src/avm/avm_accumulated_data.ts +170 -13
  1030. package/src/avm/avm_circuit_public_inputs.ts +121 -4
  1031. package/src/avm/contract_storage_read.ts +1 -1
  1032. package/src/avm/contract_storage_update_request.ts +1 -1
  1033. package/src/avm/index.ts +1 -1
  1034. package/src/avm/message_pack.ts +38 -3
  1035. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  1036. package/src/avm/public_data_read.ts +1 -1
  1037. package/src/avm/public_data_update_request.ts +1 -1
  1038. package/src/avm/public_data_write.ts +37 -2
  1039. package/src/avm/public_inner_call_request.ts +2 -2
  1040. package/src/avm/revert_code.ts +35 -15
  1041. package/src/aztec-address/index.ts +28 -3
  1042. package/src/block/attestation_info.ts +72 -0
  1043. package/src/block/block_hash.ts +31 -16
  1044. package/src/block/block_parameter.ts +10 -0
  1045. package/src/block/body.ts +24 -39
  1046. package/src/block/checkpointed_l2_block.ts +70 -0
  1047. package/src/block/in_block.ts +28 -15
  1048. package/src/block/index.ts +7 -3
  1049. package/src/block/l2_block.ts +131 -112
  1050. package/src/block/l2_block_info.ts +64 -0
  1051. package/src/block/l2_block_source.ts +267 -54
  1052. package/src/block/l2_block_stream/index.ts +4 -0
  1053. package/src/block/l2_block_stream/interfaces.ts +44 -0
  1054. package/src/block/l2_block_stream/l2_block_stream.ts +307 -0
  1055. package/src/block/l2_block_stream/l2_tips_memory_store.ts +84 -0
  1056. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  1057. package/src/block/proposal/attestations_and_signers.ts +140 -0
  1058. package/src/block/proposal/committee_attestation.ts +120 -0
  1059. package/src/block/proposal/index.ts +2 -0
  1060. package/src/block/test/index.ts +1 -0
  1061. package/src/block/test/l2_tips_store_test_suite.ts +537 -0
  1062. package/src/block/validate_block_result.ts +129 -0
  1063. package/src/checkpoint/checkpoint.ts +158 -0
  1064. package/src/checkpoint/checkpoint_info.ts +52 -0
  1065. package/src/checkpoint/index.ts +3 -0
  1066. package/src/checkpoint/published_checkpoint.ts +106 -0
  1067. package/src/config/{config.ts → chain-config.ts} +8 -7
  1068. package/src/config/index.ts +2 -1
  1069. package/src/config/node-rpc-config.ts +37 -0
  1070. package/src/contract/artifact_hash.ts +16 -14
  1071. package/src/contract/complete_address.ts +1 -1
  1072. package/src/contract/contract_address.ts +4 -4
  1073. package/src/contract/contract_class.ts +9 -26
  1074. package/src/contract/contract_class_id.ts +13 -7
  1075. package/src/contract/contract_deployment_data.ts +125 -0
  1076. package/src/contract/contract_instance.ts +27 -18
  1077. package/src/contract/contract_instance_update.ts +8 -7
  1078. package/src/contract/deployment_info.ts +1 -1
  1079. package/src/contract/index.ts +2 -1
  1080. package/src/contract/interfaces/contract_class.ts +98 -79
  1081. package/src/contract/interfaces/contract_data_source.ts +14 -22
  1082. package/src/contract/interfaces/contract_instance.ts +48 -16
  1083. package/src/contract/interfaces/contract_instance_update.ts +15 -12
  1084. package/src/contract/interfaces/node-info.ts +3 -3
  1085. package/src/contract/interfaces/protocol_contract_addresses.ts +5 -10
  1086. package/src/contract/partial_address.ts +1 -1
  1087. package/src/contract/private_function.ts +7 -5
  1088. package/src/contract/private_function_membership_proof.ts +11 -11
  1089. package/src/contract/{unconstrained_function_membership_proof.ts → utility_function_membership_proof.ts} +19 -19
  1090. package/src/database-version/database_version.ts +87 -0
  1091. package/src/database-version/version_manager.ts +60 -83
  1092. package/src/{shared_mutable/shared_mutable_values.ts → delayed_public_mutable/delayed_public_mutable_values.ts} +29 -27
  1093. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +38 -0
  1094. package/src/delayed_public_mutable/index.ts +4 -0
  1095. package/src/delayed_public_mutable/scheduled_delay_change.ts +17 -0
  1096. package/src/{shared_mutable → delayed_public_mutable}/scheduled_value_change.ts +12 -6
  1097. package/src/deserialization/index.ts +21 -0
  1098. package/src/epoch-helpers/index.ts +97 -20
  1099. package/src/errors/proving_error.ts +5 -1
  1100. package/src/errors/simulation_error.ts +3 -3
  1101. package/src/fees/transaction_fee.ts +29 -9
  1102. package/src/file-store/factory.ts +76 -0
  1103. package/src/file-store/gcs.ts +121 -0
  1104. package/src/file-store/http.ts +70 -0
  1105. package/src/file-store/index.ts +2 -0
  1106. package/src/file-store/interface.ts +25 -0
  1107. package/src/file-store/local.ts +46 -0
  1108. package/src/file-store/s3.ts +250 -0
  1109. package/src/gas/gas.ts +24 -3
  1110. package/src/gas/gas_fees.ts +42 -24
  1111. package/src/gas/gas_settings.ts +31 -10
  1112. package/src/gas/gas_used.ts +22 -1
  1113. package/src/hash/hash.ts +51 -32
  1114. package/src/hash/map_slot.ts +4 -3
  1115. package/src/interfaces/allowed_element.ts +23 -0
  1116. package/src/interfaces/api_limit.ts +5 -0
  1117. package/src/interfaces/archiver.ts +104 -37
  1118. package/src/interfaces/aztec-node-admin.ts +103 -0
  1119. package/src/interfaces/aztec-node.ts +285 -240
  1120. package/src/interfaces/block-builder.ts +83 -10
  1121. package/src/interfaces/client.ts +2 -1
  1122. package/src/interfaces/configs.ts +90 -39
  1123. package/src/interfaces/epoch-prover.ts +46 -17
  1124. package/src/interfaces/get_logs_response.ts +13 -9
  1125. package/src/interfaces/l2_logs_source.ts +24 -13
  1126. package/src/interfaces/merkle_tree_operations.ts +37 -11
  1127. package/src/interfaces/p2p.ts +34 -11
  1128. package/src/interfaces/private_kernel_prover.ts +13 -4
  1129. package/src/interfaces/prover-agent.ts +9 -10
  1130. package/src/interfaces/prover-broker.ts +22 -0
  1131. package/src/interfaces/prover-client.ts +50 -20
  1132. package/src/interfaces/prover-coordination.ts +6 -16
  1133. package/src/interfaces/prover-node.ts +10 -2
  1134. package/src/interfaces/proving-job.ts +244 -139
  1135. package/src/interfaces/public_state_source.ts +9 -0
  1136. package/src/interfaces/server.ts +11 -5
  1137. package/src/interfaces/server_circuit_prover.ts +111 -59
  1138. package/src/interfaces/service.ts +4 -2
  1139. package/src/interfaces/slasher.ts +52 -0
  1140. package/src/interfaces/tx_provider.ts +17 -0
  1141. package/src/interfaces/validator.ts +150 -0
  1142. package/src/interfaces/world_state.ts +45 -29
  1143. package/src/kernel/claimed_length_array.ts +104 -0
  1144. package/src/kernel/hiding_kernel_private_inputs.ts +37 -0
  1145. package/src/kernel/hints/build_note_hash_read_request_hints.ts +47 -41
  1146. package/src/kernel/hints/build_nullifier_read_request_hints.ts +49 -76
  1147. package/src/kernel/hints/build_transient_data_hints.ts +14 -16
  1148. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +5 -7
  1149. package/src/kernel/hints/index.ts +1 -2
  1150. package/src/kernel/hints/key_validation_hint.ts +5 -7
  1151. package/src/kernel/hints/key_validation_request.ts +2 -1
  1152. package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
  1153. package/src/kernel/hints/note_hash_read_request_hints.ts +9 -18
  1154. package/src/kernel/hints/nullifier_read_request_hints.ts +11 -20
  1155. package/src/kernel/hints/private_kernel_reset_hints.ts +37 -54
  1156. package/src/kernel/hints/read_request.ts +5 -2
  1157. package/src/kernel/hints/read_request_hints.ts +59 -38
  1158. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
  1159. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  1160. package/src/kernel/hints/{transient_data_index_hint.ts → transient_data_squashing_hint.ts} +10 -7
  1161. package/src/kernel/hints/tree_leaf_read_request.ts +5 -2
  1162. package/src/kernel/index.ts +4 -2
  1163. package/src/kernel/log_hash.ts +87 -15
  1164. package/src/kernel/note_hash.ts +9 -3
  1165. package/src/kernel/nullifier.ts +17 -10
  1166. package/src/kernel/padded_side_effects.ts +73 -0
  1167. package/src/kernel/private_accumulated_data.ts +25 -25
  1168. package/src/kernel/private_call_data.ts +6 -25
  1169. package/src/kernel/private_call_request.ts +2 -2
  1170. package/src/kernel/private_circuit_public_inputs.ts +161 -117
  1171. package/src/kernel/private_context_inputs.ts +3 -3
  1172. package/src/kernel/private_kernel_circuit_public_inputs.ts +21 -6
  1173. package/src/kernel/private_kernel_data.ts +7 -31
  1174. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +12 -5
  1175. package/src/kernel/private_kernel_prover_output.ts +70 -0
  1176. package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +16 -13
  1177. package/src/kernel/private_kernel_reset_dimensions.ts +27 -27
  1178. package/src/kernel/private_kernel_simulated_output.ts +7 -16
  1179. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +22 -5
  1180. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -25
  1181. package/src/kernel/private_log_data.ts +14 -5
  1182. package/src/kernel/private_to_avm_accumulated_data.ts +54 -2
  1183. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  1184. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  1185. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +18 -9
  1186. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  1187. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +18 -12
  1188. package/src/kernel/private_validation_requests.ts +19 -62
  1189. package/src/kernel/public_call_request.ts +120 -29
  1190. package/src/kernel/utils/optional_number.ts +1 -1
  1191. package/src/kernel/utils/order_and_comparison.ts +0 -25
  1192. package/src/keys/derivation.ts +15 -32
  1193. package/src/keys/key_types.ts +1 -1
  1194. package/src/keys/public_key.ts +1 -1
  1195. package/src/keys/public_keys.ts +23 -3
  1196. package/src/keys/utils.ts +7 -3
  1197. package/src/l1-contracts/index.ts +1 -0
  1198. package/src/l1-contracts/slash_factory.ts +180 -0
  1199. package/src/logs/contract_class_log.ts +168 -66
  1200. package/src/logs/debug_log.ts +51 -0
  1201. package/src/logs/directional_app_tagging_secret.ts +79 -0
  1202. package/src/logs/index.ts +8 -3
  1203. package/src/logs/log_id.ts +23 -11
  1204. package/src/logs/message_context.ts +62 -0
  1205. package/src/logs/pending_tagged_log.ts +41 -0
  1206. package/src/logs/pre_tag.ts +25 -0
  1207. package/src/logs/private_log.ts +79 -26
  1208. package/src/logs/public_log.ts +158 -37
  1209. package/src/logs/shared_secret_derivation.ts +26 -0
  1210. package/src/logs/siloed_tag.ts +45 -0
  1211. package/src/logs/tag.ts +42 -0
  1212. package/src/logs/tx_scoped_l2_log.ts +48 -33
  1213. package/src/messaging/in_hash.ts +12 -0
  1214. package/src/messaging/inbox_leaf.ts +20 -4
  1215. package/src/messaging/index.ts +3 -0
  1216. package/src/messaging/l1_actor.ts +2 -2
  1217. package/src/messaging/l1_to_l2_message.ts +3 -2
  1218. package/src/messaging/l1_to_l2_message_source.ts +9 -7
  1219. package/src/messaging/l2_actor.ts +2 -2
  1220. package/src/messaging/l2_to_l1_membership.ts +225 -0
  1221. package/src/messaging/l2_to_l1_message.ts +131 -37
  1222. package/src/messaging/out_hash.ts +77 -0
  1223. package/src/noir/index.ts +24 -7
  1224. package/src/note/index.ts +1 -1
  1225. package/src/note/note.ts +65 -6
  1226. package/src/note/note_dao.ts +187 -0
  1227. package/src/note/notes_filter.ts +10 -11
  1228. package/src/p2p/attestation_utils.ts +35 -0
  1229. package/src/p2p/block_proposal.ts +249 -36
  1230. package/src/p2p/checkpoint_attestation.ts +143 -0
  1231. package/src/p2p/checkpoint_proposal.ts +355 -0
  1232. package/src/p2p/consensus_payload.ts +53 -32
  1233. package/src/p2p/constants.ts +3 -0
  1234. package/src/p2p/gossipable.ts +60 -15
  1235. package/src/p2p/index.ts +5 -1
  1236. package/src/p2p/interface.ts +0 -24
  1237. package/src/p2p/message_validator.ts +14 -2
  1238. package/src/p2p/signature_utils.ts +12 -11
  1239. package/src/p2p/signed_txs.ts +88 -0
  1240. package/src/p2p/topic_type.ts +35 -15
  1241. package/src/parity/index.ts +2 -3
  1242. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +14 -12
  1243. package/src/parity/parity_public_inputs.ts +1 -1
  1244. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  1245. package/src/proofs/chonk_proof.ts +122 -0
  1246. package/src/proofs/index.ts +2 -1
  1247. package/src/proofs/proof.ts +30 -22
  1248. package/src/proofs/proof_data.ts +60 -0
  1249. package/src/proofs/proving_request_type.ts +14 -9
  1250. package/src/proofs/recursive_proof.ts +1 -1
  1251. package/src/rollup/avm_proof_data.ts +3 -32
  1252. package/src/rollup/base_rollup_hints.ts +42 -41
  1253. package/src/rollup/block_constant_data.ts +73 -0
  1254. package/src/rollup/block_headers_hash.ts +12 -0
  1255. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
  1256. package/src/rollup/block_rollup_public_inputs.ts +125 -0
  1257. package/src/rollup/block_root_rollup_private_inputs.ts +303 -0
  1258. package/src/rollup/checkpoint_constant_data.ts +124 -0
  1259. package/src/rollup/checkpoint_header.ts +297 -0
  1260. package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
  1261. package/src/rollup/checkpoint_rollup_public_inputs.ts +151 -0
  1262. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +232 -0
  1263. package/src/rollup/epoch_constant_data.ts +62 -0
  1264. package/src/rollup/index.ts +20 -16
  1265. package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
  1266. package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
  1267. package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
  1268. package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
  1269. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  1270. package/src/rollup/root_rollup_public_inputs.ts +108 -0
  1271. package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +27 -42
  1272. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  1273. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +18 -26
  1274. package/src/schemas/schemas.ts +27 -1
  1275. package/src/slashing/empire.ts +102 -0
  1276. package/src/slashing/helpers.ts +141 -0
  1277. package/src/slashing/index.ts +6 -0
  1278. package/src/slashing/interfaces.ts +13 -0
  1279. package/src/slashing/serialization.ts +103 -0
  1280. package/src/slashing/tally.ts +87 -0
  1281. package/src/slashing/types.ts +156 -0
  1282. package/src/snapshots/download.ts +123 -0
  1283. package/src/snapshots/index.ts +3 -0
  1284. package/src/snapshots/types.ts +74 -0
  1285. package/src/snapshots/upload.ts +64 -0
  1286. package/src/stats/stats.ts +38 -26
  1287. package/src/tests/factories.ts +852 -657
  1288. package/src/tests/jest.ts +1 -1
  1289. package/src/tests/mocks.ts +578 -151
  1290. package/src/trees/append_only_tree_snapshot.ts +18 -3
  1291. package/src/trees/database_public_state_source.ts +30 -0
  1292. package/src/trees/index.ts +1 -1
  1293. package/src/trees/merkle_tree_id.ts +12 -0
  1294. package/src/trees/nullifier_leaf.ts +81 -22
  1295. package/src/trees/nullifier_membership_witness.ts +18 -2
  1296. package/src/trees/public_data_leaf.ts +73 -30
  1297. package/src/trees/public_data_witness.ts +24 -5
  1298. package/src/tx/block_header.ts +61 -32
  1299. package/src/tx/call_context.ts +1 -1
  1300. package/src/tx/capsule.ts +3 -1
  1301. package/src/tx/execution_payload.ts +60 -0
  1302. package/src/tx/function_data.ts +1 -1
  1303. package/src/tx/global_variable_builder.ts +13 -5
  1304. package/src/tx/global_variables.ts +107 -32
  1305. package/src/tx/hashed_values.ts +30 -10
  1306. package/src/tx/in_tx.ts +24 -0
  1307. package/src/tx/index.ts +10 -3
  1308. package/src/tx/indexed_tx_effect.ts +41 -0
  1309. package/src/tx/offchain_effect.ts +20 -0
  1310. package/src/tx/partial_state_reference.ts +30 -5
  1311. package/src/tx/private_execution_result.ts +76 -107
  1312. package/src/tx/private_tx_constant_data.ts +94 -0
  1313. package/src/tx/processed_tx.ts +58 -49
  1314. package/src/tx/profiling.ts +201 -0
  1315. package/src/tx/protocol_contracts.ts +86 -0
  1316. package/src/tx/proven_tx.ts +62 -0
  1317. package/src/tx/public_call_request_with_calldata.ts +89 -0
  1318. package/src/tx/public_simulation_output.ts +24 -7
  1319. package/src/tx/simulated_tx.ts +66 -76
  1320. package/src/tx/state_reference.ts +49 -6
  1321. package/src/tx/tree_snapshots.ts +30 -14
  1322. package/src/tx/tx.ts +178 -200
  1323. package/src/tx/tx_constant_data.ts +9 -22
  1324. package/src/tx/tx_context.ts +1 -1
  1325. package/src/tx/tx_effect.ts +138 -316
  1326. package/src/tx/tx_execution_request.ts +17 -4
  1327. package/src/tx/tx_hash.ts +27 -6
  1328. package/src/tx/tx_receipt.ts +79 -57
  1329. package/src/tx/tx_request.ts +18 -8
  1330. package/src/tx/validator/error_texts.ts +41 -0
  1331. package/src/tx/validator/tx_validator.ts +13 -6
  1332. package/src/types/shared.ts +10 -9
  1333. package/src/update-checker/index.ts +1 -0
  1334. package/src/update-checker/update-checker.ts +166 -0
  1335. package/src/validators/errors.ts +58 -0
  1336. package/src/validators/index.ts +3 -0
  1337. package/src/validators/schemas.ts +81 -0
  1338. package/src/validators/types.ts +47 -0
  1339. package/src/versioning/versioning.ts +29 -33
  1340. package/src/vks/index.ts +1 -1
  1341. package/src/vks/verification_key.ts +44 -19
  1342. package/src/vks/{vk_witness_data.ts → vk_data.ts} +7 -7
  1343. package/src/world-state/index.ts +1 -0
  1344. package/src/world-state/world_state_revision.ts +63 -0
  1345. package/src/zkpassport/index.ts +118 -0
  1346. package/dest/avm/public_data_hint.d.ts +0 -18
  1347. package/dest/avm/public_data_hint.d.ts.map +0 -1
  1348. package/dest/avm/public_data_hint.js +0 -27
  1349. package/dest/block/l2_block_code_to_purge.d.ts +0 -24
  1350. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  1351. package/dest/block/l2_block_code_to_purge.js +0 -51
  1352. package/dest/block/l2_block_downloader/index.d.ts +0 -3
  1353. package/dest/block/l2_block_downloader/index.d.ts.map +0 -1
  1354. package/dest/block/l2_block_downloader/index.js +0 -2
  1355. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +0 -58
  1356. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +0 -1
  1357. package/dest/block/l2_block_downloader/l2_block_downloader.js +0 -124
  1358. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +0 -57
  1359. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +0 -1
  1360. package/dest/block/l2_block_downloader/l2_block_stream.js +0 -137
  1361. package/dest/block/l2_block_number.d.ts +0 -5
  1362. package/dest/block/l2_block_number.d.ts.map +0 -1
  1363. package/dest/block/l2_block_number.js +0 -6
  1364. package/dest/block/nullifier_with_block_source.d.ts +0 -6
  1365. package/dest/block/nullifier_with_block_source.d.ts.map +0 -1
  1366. package/dest/config/config.d.ts +0 -18
  1367. package/dest/config/config.d.ts.map +0 -1
  1368. package/dest/contract/unconstrained_function_membership_proof.d.ts +0 -27
  1369. package/dest/contract/unconstrained_function_membership_proof.d.ts.map +0 -1
  1370. package/dest/database-version/index.d.ts +0 -2
  1371. package/dest/database-version/index.d.ts.map +0 -1
  1372. package/dest/database-version/index.js +0 -1
  1373. package/dest/event/event.d.ts +0 -24
  1374. package/dest/event/event.d.ts.map +0 -1
  1375. package/dest/event/event.js +0 -13
  1376. package/dest/event/event_metadata.d.ts +0 -38
  1377. package/dest/event/event_metadata.d.ts.map +0 -1
  1378. package/dest/event/event_metadata.js +0 -45
  1379. package/dest/event/index.d.ts +0 -4
  1380. package/dest/event/index.d.ts.map +0 -1
  1381. package/dest/event/index.js +0 -3
  1382. package/dest/event/l1_event_payload.d.ts +0 -52
  1383. package/dest/event/l1_event_payload.d.ts.map +0 -1
  1384. package/dest/event/l1_event_payload.js +0 -64
  1385. package/dest/interfaces/pxe.d.ts +0 -347
  1386. package/dest/interfaces/pxe.d.ts.map +0 -1
  1387. package/dest/interfaces/pxe.js +0 -104
  1388. package/dest/kernel/combined_constant_data.d.ts +0 -73
  1389. package/dest/kernel/combined_constant_data.d.ts.map +0 -1
  1390. package/dest/kernel/combined_constant_data.js +0 -73
  1391. package/dest/kernel/hints/rollup_validation_requests.d.ts +0 -40
  1392. package/dest/kernel/hints/rollup_validation_requests.d.ts.map +0 -1
  1393. package/dest/kernel/hints/rollup_validation_requests.js +0 -57
  1394. package/dest/kernel/hints/transient_data_index_hint.d.ts +0 -20
  1395. package/dest/kernel/hints/transient_data_index_hint.d.ts.map +0 -1
  1396. package/dest/kernel/private_kernel_prover_profile_result.d.ts +0 -25
  1397. package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +0 -1
  1398. package/dest/kernel/private_kernel_prover_profile_result.js +0 -7
  1399. package/dest/logs/indexed_tagging_secret.d.ts +0 -28
  1400. package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
  1401. package/dest/logs/indexed_tagging_secret.js +0 -50
  1402. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
  1403. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
  1404. package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
  1405. package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
  1406. package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
  1407. package/dest/logs/l1_payload/encryption_util.js +0 -46
  1408. package/dest/logs/l1_payload/index.d.ts +0 -3
  1409. package/dest/logs/l1_payload/index.d.ts.map +0 -1
  1410. package/dest/logs/l1_payload/index.js +0 -2
  1411. package/dest/logs/l1_payload/l1_note_payload.d.ts +0 -82
  1412. package/dest/logs/l1_payload/l1_note_payload.d.ts.map +0 -1
  1413. package/dest/logs/l1_payload/l1_note_payload.js +0 -129
  1414. package/dest/logs/l1_payload/payload.d.ts +0 -60
  1415. package/dest/logs/l1_payload/payload.d.ts.map +0 -1
  1416. package/dest/logs/l1_payload/payload.js +0 -61
  1417. package/dest/logs/l1_payload/shared_secret_derivation.d.ts +0 -16
  1418. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
  1419. package/dest/logs/log_with_tx_data.d.ts +0 -11
  1420. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1421. package/dest/logs/log_with_tx_data.js +0 -36
  1422. package/dest/network/index.d.ts +0 -32
  1423. package/dest/network/index.d.ts.map +0 -1
  1424. package/dest/network/index.js +0 -30
  1425. package/dest/note/extended_note.d.ts +0 -124
  1426. package/dest/note/extended_note.d.ts.map +0 -1
  1427. package/dest/note/extended_note.js +0 -115
  1428. package/dest/p2p/block_attestation.d.ts +0 -49
  1429. package/dest/p2p/block_attestation.d.ts.map +0 -1
  1430. package/dest/p2p/block_attestation.js +0 -78
  1431. package/dest/parity/base_parity_inputs.d.ts +0 -37
  1432. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  1433. package/dest/parity/root_parity_input.d.ts +0 -54
  1434. package/dest/parity/root_parity_input.d.ts.map +0 -1
  1435. package/dest/parity/root_parity_input.js +0 -50
  1436. package/dest/parity/root_parity_inputs.d.ts +0 -39
  1437. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  1438. package/dest/proofs/client_ivc_proof.d.ts +0 -21
  1439. package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
  1440. package/dest/proofs/client_ivc_proof.js +0 -44
  1441. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +0 -126
  1442. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  1443. package/dest/rollup/block_merge_rollup.d.ts +0 -45
  1444. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  1445. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -159
  1446. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
  1447. package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -136
  1448. package/dest/rollup/block_root_rollup.d.ts +0 -262
  1449. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  1450. package/dest/rollup/block_root_rollup.js +0 -293
  1451. package/dest/rollup/constant_rollup_data.d.ts +0 -47
  1452. package/dest/rollup/constant_rollup_data.d.ts.map +0 -1
  1453. package/dest/rollup/constant_rollup_data.js +0 -45
  1454. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -54
  1455. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
  1456. package/dest/rollup/empty_block_root_rollup_inputs.js +0 -68
  1457. package/dest/rollup/merge_rollup.d.ts +0 -45
  1458. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  1459. package/dest/rollup/previous_rollup_block_data.d.ts +0 -58
  1460. package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
  1461. package/dest/rollup/previous_rollup_block_data.js +0 -42
  1462. package/dest/rollup/previous_rollup_data.d.ts +0 -58
  1463. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  1464. package/dest/rollup/previous_rollup_data.js +0 -42
  1465. package/dest/rollup/private_base_rollup_inputs.d.ts +0 -23
  1466. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  1467. package/dest/rollup/private_base_rollup_inputs.js +0 -44
  1468. package/dest/rollup/private_tube_data.d.ts +0 -17
  1469. package/dest/rollup/private_tube_data.d.ts.map +0 -1
  1470. package/dest/rollup/private_tube_data.js +0 -25
  1471. package/dest/rollup/public_base_rollup_inputs.d.ts +0 -25
  1472. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  1473. package/dest/rollup/public_base_rollup_inputs.js +0 -48
  1474. package/dest/rollup/public_tube_data.d.ts +0 -17
  1475. package/dest/rollup/public_tube_data.d.ts.map +0 -1
  1476. package/dest/rollup/public_tube_data.js +0 -25
  1477. package/dest/rollup/root_rollup.d.ts +0 -112
  1478. package/dest/rollup/root_rollup.d.ts.map +0 -1
  1479. package/dest/rollup/root_rollup.js +0 -158
  1480. package/dest/rollup/state_diff_hints.d.ts +0 -105
  1481. package/dest/rollup/state_diff_hints.d.ts.map +0 -1
  1482. package/dest/rollup/state_diff_hints.js +0 -85
  1483. package/dest/rollup/tube_inputs.d.ts +0 -40
  1484. package/dest/rollup/tube_inputs.d.ts.map +0 -1
  1485. package/dest/rollup/tube_inputs.js +0 -57
  1486. package/dest/shared_mutable/index.d.ts +0 -5
  1487. package/dest/shared_mutable/index.d.ts.map +0 -1
  1488. package/dest/shared_mutable/index.js +0 -4
  1489. package/dest/shared_mutable/scheduled_delay_change.d.ts +0 -10
  1490. package/dest/shared_mutable/scheduled_delay_change.d.ts.map +0 -1
  1491. package/dest/shared_mutable/scheduled_value_change.d.ts +0 -11
  1492. package/dest/shared_mutable/scheduled_value_change.d.ts.map +0 -1
  1493. package/dest/shared_mutable/shared_mutable_values.d.ts +0 -22
  1494. package/dest/shared_mutable/shared_mutable_values.d.ts.map +0 -1
  1495. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts +0 -15
  1496. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +0 -1
  1497. package/dest/shared_mutable/shared_mutable_values_with_hash.js +0 -30
  1498. package/dest/trees/protocol_contract_leaf.d.ts +0 -87
  1499. package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
  1500. package/dest/trees/protocol_contract_leaf.js +0 -103
  1501. package/dest/tx/content_commitment.d.ts +0 -105
  1502. package/dest/tx/content_commitment.d.ts.map +0 -1
  1503. package/dest/tx/content_commitment.js +0 -96
  1504. package/dest/tx/max_block_number.d.ts +0 -55
  1505. package/dest/tx/max_block_number.d.ts.map +0 -1
  1506. package/dest/tx/max_block_number.js +0 -65
  1507. package/dest/tx/public_execution_request.d.ts +0 -45
  1508. package/dest/tx/public_execution_request.d.ts.map +0 -1
  1509. package/dest/tx/public_execution_request.js +0 -72
  1510. package/dest/vks/vk_witness_data.d.ts +0 -32
  1511. package/dest/vks/vk_witness_data.d.ts.map +0 -1
  1512. package/src/avm/public_data_hint.ts +0 -38
  1513. package/src/block/l2_block_code_to_purge.ts +0 -103
  1514. package/src/block/l2_block_downloader/index.ts +0 -2
  1515. package/src/block/l2_block_downloader/l2_block_downloader.ts +0 -149
  1516. package/src/block/l2_block_downloader/l2_block_stream.ts +0 -179
  1517. package/src/block/l2_block_number.ts +0 -8
  1518. package/src/block/nullifier_with_block_source.ts +0 -7
  1519. package/src/database-version/index.ts +0 -1
  1520. package/src/event/event.ts +0 -16
  1521. package/src/event/event_metadata.ts +0 -56
  1522. package/src/event/index.ts +0 -3
  1523. package/src/event/l1_event_payload.ts +0 -87
  1524. package/src/interfaces/pxe.ts +0 -536
  1525. package/src/kernel/combined_constant_data.ts +0 -128
  1526. package/src/kernel/hints/rollup_validation_requests.ts +0 -73
  1527. package/src/kernel/private_kernel_prover_profile_result.ts +0 -7
  1528. package/src/logs/indexed_tagging_secret.ts +0 -45
  1529. package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
  1530. package/src/logs/l1_payload/encryption_util.ts +0 -54
  1531. package/src/logs/l1_payload/index.ts +0 -2
  1532. package/src/logs/l1_payload/l1_note_payload.ts +0 -182
  1533. package/src/logs/l1_payload/payload.ts +0 -73
  1534. package/src/logs/l1_payload/shared_secret_derivation.ts +0 -35
  1535. package/src/logs/log_with_tx_data.ts +0 -36
  1536. package/src/network/index.ts +0 -32
  1537. package/src/note/extended_note.ts +0 -168
  1538. package/src/p2p/block_attestation.ts +0 -107
  1539. package/src/parity/root_parity_input.ts +0 -71
  1540. package/src/proofs/client_ivc_proof.ts +0 -61
  1541. package/src/rollup/block_root_or_block_merge_public_inputs.ts +0 -175
  1542. package/src/rollup/block_root_rollup.ts +0 -362
  1543. package/src/rollup/constant_rollup_data.ts +0 -54
  1544. package/src/rollup/empty_block_root_rollup_inputs.ts +0 -85
  1545. package/src/rollup/previous_rollup_block_data.ts +0 -54
  1546. package/src/rollup/previous_rollup_data.ts +0 -54
  1547. package/src/rollup/private_base_rollup_inputs.ts +0 -50
  1548. package/src/rollup/private_tube_data.ts +0 -35
  1549. package/src/rollup/public_base_rollup_inputs.ts +0 -59
  1550. package/src/rollup/public_tube_data.ts +0 -35
  1551. package/src/rollup/root_rollup.ts +0 -206
  1552. package/src/rollup/tube_inputs.ts +0 -70
  1553. package/src/shared_mutable/index.ts +0 -4
  1554. package/src/shared_mutable/scheduled_delay_change.ts +0 -13
  1555. package/src/shared_mutable/shared_mutable_values_with_hash.ts +0 -38
  1556. package/src/trees/protocol_contract_leaf.ts +0 -132
  1557. package/src/tx/content_commitment.ts +0 -133
  1558. package/src/tx/max_block_number.ts +0 -79
  1559. package/src/tx/public_execution_request.ts +0 -97
  1560. /package/dest/{block/nullifier_with_block_source.js → abi/event_metadata_definition.js} +0 -0
@@ -1,15 +1,17 @@
1
- import { makeBlockBlobPublicInputs, makeSpongeBlob } from '@aztec/blob-lib/testing';
1
+ import {
2
+ makeBlobAccumulator,
3
+ makeFinalBlobAccumulator,
4
+ makeFinalBlobBatchingChallenges,
5
+ makeSpongeBlob,
6
+ } from '@aztec/blob-lib/testing';
2
7
  import {
3
8
  ARCHIVE_HEIGHT,
4
- AVM_PROOF_LENGTH_IN_FIELDS,
9
+ AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
5
10
  AZTEC_MAX_EPOCH_DURATION,
6
- BLOBS_PER_BLOCK,
7
- CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS,
8
- FIELDS_PER_BLOB,
9
- FIXED_DA_GAS,
10
- FIXED_L2_GAS,
11
+ CHONK_PROOF_LENGTH,
12
+ CONTRACT_CLASS_LOG_SIZE_IN_FIELDS,
11
13
  GeneratorIndex,
12
- L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH,
14
+ L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
13
15
  MAX_CONTRACT_CLASS_LOGS_PER_TX,
14
16
  MAX_ENQUEUED_CALLS_PER_CALL,
15
17
  MAX_ENQUEUED_CALLS_PER_TX,
@@ -25,29 +27,32 @@ import {
25
27
  MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL,
26
28
  MAX_PRIVATE_LOGS_PER_CALL,
27
29
  MAX_PRIVATE_LOGS_PER_TX,
28
- MAX_PUBLIC_LOGS_PER_TX,
30
+ MAX_PROTOCOL_CONTRACTS,
31
+ MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
29
32
  MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
30
- NESTED_RECURSIVE_PROOF_LENGTH,
31
33
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
32
- NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH,
33
- NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH,
34
+ NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
35
+ NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
34
36
  NULLIFIER_TREE_HEIGHT,
37
+ NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP,
35
38
  NUM_BASE_PARITY_PER_ROOT_PARITY,
36
39
  NUM_MSGS_PER_BASE_PARITY,
37
40
  PRIVATE_LOG_SIZE_IN_FIELDS,
38
41
  PUBLIC_DATA_TREE_HEIGHT,
39
- PUBLIC_LOG_DATA_SIZE_IN_FIELDS,
40
- RECURSIVE_PROOF_LENGTH,
41
- TUBE_PROOF_LENGTH,
42
+ RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
42
43
  VK_TREE_HEIGHT,
43
44
  } from '@aztec/constants';
44
- import { type FieldsOf, makeHalfFullTuple, makeTuple } from '@aztec/foundation/array';
45
- import { toBufferBE } from '@aztec/foundation/bigint-buffer';
45
+ import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
46
+ import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
46
47
  import { compact } from '@aztec/foundation/collection';
47
- import { SchnorrSignature, poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
48
+ import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
49
+ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
50
+ import { SchnorrSignature } from '@aztec/foundation/crypto/schnorr';
51
+ import { sha256 } from '@aztec/foundation/crypto/sha256';
52
+ import { Fq, Fr } from '@aztec/foundation/curves/bn254';
53
+ import { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
48
54
  import { EthAddress } from '@aztec/foundation/eth-address';
49
- import { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
50
- import type { Bufferable } from '@aztec/foundation/serialize';
55
+ import type { Bufferable, Serializable, Tuple } from '@aztec/foundation/serialize';
51
56
  import { MembershipWitness } from '@aztec/foundation/trees';
52
57
 
53
58
  import { FunctionSelector } from '../abi/function_selector.js';
@@ -55,42 +60,52 @@ import { ContractStorageRead } from '../avm/contract_storage_read.js';
55
60
  import { ContractStorageUpdateRequest } from '../avm/contract_storage_update_request.js';
56
61
  import {
57
62
  AvmAccumulatedData,
58
- AvmAppendTreeHint,
63
+ AvmAccumulatedDataArrayLengths,
64
+ AvmAppendLeavesHint,
65
+ AvmBytecodeCommitmentHint,
59
66
  AvmCircuitInputs,
60
67
  AvmCircuitPublicInputs,
68
+ AvmCommitCheckpointHint,
61
69
  AvmContractClassHint,
70
+ AvmContractDbCommitCheckpointHint,
71
+ AvmContractDbCreateCheckpointHint,
72
+ AvmContractDbRevertCheckpointHint,
62
73
  AvmContractInstanceHint,
63
- AvmEnqueuedCallHint,
74
+ AvmCreateCheckpointHint,
75
+ AvmDebugFunctionNameHint,
64
76
  AvmExecutionHints,
65
- AvmNullifierReadTreeHint,
66
- AvmNullifierWriteTreeHint,
67
- AvmPublicDataReadTreeHint,
68
- AvmPublicDataWriteTreeHint,
69
- RevertCode,
77
+ AvmGetLeafPreimageHintNullifierTree,
78
+ AvmGetLeafPreimageHintPublicDataTree,
79
+ AvmGetLeafValueHint,
80
+ AvmGetPreviousValueIndexHint,
81
+ AvmGetSiblingPathHint,
82
+ AvmRevertCheckpointHint,
83
+ AvmSequentialInsertHintNullifierTree,
84
+ AvmSequentialInsertHintPublicDataTree,
85
+ AvmTxHint,
70
86
  } from '../avm/index.js';
71
- import { PublicDataHint } from '../avm/public_data_hint.js';
72
87
  import { PublicDataRead } from '../avm/public_data_read.js';
73
88
  import { PublicDataWrite } from '../avm/public_data_write.js';
74
89
  import { AztecAddress } from '../aztec-address/index.js';
90
+ import type { L2Tips } from '../block/l2_block_source.js';
75
91
  import {
76
92
  type ContractClassPublic,
93
+ ContractDeploymentData,
77
94
  type ContractInstanceWithAddress,
78
95
  type ExecutablePrivateFunctionWithMembershipProof,
79
96
  type PrivateFunction,
80
- type PublicFunction,
81
97
  SerializableContractInstance,
82
- type UnconstrainedFunctionWithMembershipProof,
98
+ type UtilityFunctionWithMembershipProof,
83
99
  computeContractClassId,
84
100
  computePublicBytecodeCommitment,
85
101
  } from '../contract/index.js';
86
- import { Gas, GasFees, GasSettings, type GasUsed } from '../gas/index.js';
87
- import type { MerkleTreeReadOperations } from '../interfaces/merkle_tree_operations.js';
102
+ import { Gas, GasFees, GasSettings } from '../gas/index.js';
103
+ import { computeCalldataHash } from '../hash/hash.js';
88
104
  import { KeyValidationRequest } from '../kernel/hints/key_validation_request.js';
89
105
  import { KeyValidationRequestAndGenerator } from '../kernel/hints/key_validation_request_and_generator.js';
90
- import { ReadRequest } from '../kernel/hints/read_request.js';
91
- import { RollupValidationRequests } from '../kernel/hints/rollup_validation_requests.js';
106
+ import { ReadRequest, ScopedReadRequest } from '../kernel/hints/read_request.js';
92
107
  import {
93
- CombinedConstantData,
108
+ ClaimedLengthArray,
94
109
  PartialPrivateTailPublicInputsForPublic,
95
110
  PartialPrivateTailPublicInputsForRollup,
96
111
  PrivateKernelTailCircuitPublicInputs,
@@ -99,70 +114,70 @@ import {
99
114
  PrivateToPublicAccumulatedData,
100
115
  PrivateToPublicKernelCircuitPublicInputs,
101
116
  PrivateToRollupAccumulatedData,
102
- mergeAccumulatedData,
103
117
  } from '../kernel/index.js';
104
- import { LogHash, ScopedLogHash } from '../kernel/log_hash.js';
118
+ import { CountedLogHash, LogHash, ScopedLogHash } from '../kernel/log_hash.js';
105
119
  import { NoteHash } from '../kernel/note_hash.js';
106
120
  import { Nullifier } from '../kernel/nullifier.js';
107
121
  import { PrivateCallRequest } from '../kernel/private_call_request.js';
108
122
  import { PrivateCircuitPublicInputs } from '../kernel/private_circuit_public_inputs.js';
109
123
  import { PrivateLogData } from '../kernel/private_log_data.js';
110
124
  import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
111
- import { CountedPublicCallRequest, PublicCallRequest } from '../kernel/public_call_request.js';
125
+ import {
126
+ CountedPublicCallRequest,
127
+ PublicCallRequest,
128
+ PublicCallRequestArrayLengths,
129
+ } from '../kernel/public_call_request.js';
112
130
  import { PublicKeys, computeAddress } from '../keys/index.js';
113
- import { ContractClassLog } from '../logs/contract_class_log.js';
131
+ import { ContractClassLog, ContractClassLogFields } from '../logs/index.js';
114
132
  import { PrivateLog } from '../logs/private_log.js';
115
- import { PublicLog } from '../logs/public_log.js';
116
- import { L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
117
- import { BaseParityInputs } from '../parity/base_parity_inputs.js';
133
+ import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
134
+ import { TxScopedL2Log } from '../logs/tx_scoped_l2_log.js';
135
+ import { CountedL2ToL1Message, L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
136
+ import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
118
137
  import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
119
- import { RootParityInput } from '../parity/root_parity_input.js';
120
- import { RootParityInputs } from '../parity/root_parity_inputs.js';
138
+ import { ParityRootPrivateInputs } from '../parity/parity_root_private_inputs.js';
139
+ import { ProofData, ProofDataForFixedVk } from '../proofs/index.js';
121
140
  import { Proof } from '../proofs/proof.js';
122
- import { ProvingRequestType } from '../proofs/proving_request_type.js';
123
141
  import { makeRecursiveProof } from '../proofs/recursive_proof.js';
124
- import { AvmProofData } from '../rollup/avm_proof_data.js';
125
- import { BaseOrMergeRollupPublicInputs } from '../rollup/base_or_merge_rollup_public_inputs.js';
126
142
  import { PrivateBaseRollupHints, PublicBaseRollupHints } from '../rollup/base_rollup_hints.js';
127
- import { BlockMergeRollupInputs } from '../rollup/block_merge_rollup.js';
128
- import { BlockRootOrBlockMergePublicInputs, FeeRecipient } from '../rollup/block_root_or_block_merge_public_inputs.js';
143
+ import { BlockConstantData } from '../rollup/block_constant_data.js';
144
+ import { BlockMergeRollupPrivateInputs } from '../rollup/block_merge_rollup_private_inputs.js';
145
+ import { BlockRollupPublicInputs } from '../rollup/block_rollup_public_inputs.js';
129
146
  import {
130
- BlockRootRollupBlobData,
131
- BlockRootRollupData,
132
- BlockRootRollupInputs,
133
- SingleTxBlockRootRollupInputs,
134
- } from '../rollup/block_root_rollup.js';
135
- import { ConstantRollupData } from '../rollup/constant_rollup_data.js';
136
- import { EmptyBlockRootRollupInputs } from '../rollup/empty_block_root_rollup_inputs.js';
137
- import { MergeRollupInputs } from '../rollup/merge_rollup.js';
138
- import { PreviousRollupBlockData } from '../rollup/previous_rollup_block_data.js';
139
- import { PreviousRollupData } from '../rollup/previous_rollup_data.js';
140
- import { PrivateBaseRollupInputs } from '../rollup/private_base_rollup_inputs.js';
141
- import { PrivateTubeData } from '../rollup/private_tube_data.js';
142
- import { PublicBaseRollupInputs } from '../rollup/public_base_rollup_inputs.js';
143
- import { PublicTubeData } from '../rollup/public_tube_data.js';
144
- import { RootRollupInputs, RootRollupPublicInputs } from '../rollup/root_rollup.js';
145
- import { PrivateBaseStateDiffHints } from '../rollup/state_diff_hints.js';
147
+ BlockRootFirstRollupPrivateInputs,
148
+ BlockRootSingleTxRollupPrivateInputs,
149
+ } from '../rollup/block_root_rollup_private_inputs.js';
150
+ import { CheckpointConstantData } from '../rollup/checkpoint_constant_data.js';
151
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
152
+ import { CheckpointRollupPublicInputs, FeeRecipient } from '../rollup/checkpoint_rollup_public_inputs.js';
153
+ import { EpochConstantData } from '../rollup/epoch_constant_data.js';
154
+ import { PrivateTxBaseRollupPrivateInputs } from '../rollup/private_tx_base_rollup_private_inputs.js';
155
+ import { PublicChonkVerifierPublicInputs } from '../rollup/public_chonk_verifier_public_inputs.js';
156
+ import { PublicTxBaseRollupPrivateInputs } from '../rollup/public_tx_base_rollup_private_inputs.js';
157
+ import { RootRollupPublicInputs } from '../rollup/root_rollup_public_inputs.js';
158
+ import { TreeSnapshotDiffHints } from '../rollup/tree_snapshot_diff_hints.js';
159
+ import { TxMergeRollupPrivateInputs } from '../rollup/tx_merge_rollup_private_inputs.js';
160
+ import { TxRollupPublicInputs } from '../rollup/tx_rollup_public_inputs.js';
146
161
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
147
- import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
162
+ import { MerkleTreeId } from '../trees/merkle_tree_id.js';
163
+ import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
148
164
  import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
149
165
  import { BlockHeader } from '../tx/block_header.js';
150
166
  import { CallContext } from '../tx/call_context.js';
151
- import { ContentCommitment, NUM_BYTES_PER_SHA256 } from '../tx/content_commitment.js';
152
167
  import { FunctionData } from '../tx/function_data.js';
153
168
  import { GlobalVariables } from '../tx/global_variables.js';
154
- import { MaxBlockNumber } from '../tx/max_block_number.js';
155
169
  import { PartialStateReference } from '../tx/partial_state_reference.js';
156
- import { makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/processed_tx.js';
170
+ import { ProtocolContracts } from '../tx/protocol_contracts.js';
171
+ import { PublicCallRequestWithCalldata } from '../tx/public_call_request_with_calldata.js';
157
172
  import { StateReference } from '../tx/state_reference.js';
158
173
  import { TreeSnapshots } from '../tx/tree_snapshots.js';
159
174
  import { TxConstantData } from '../tx/tx_constant_data.js';
160
175
  import { TxContext } from '../tx/tx_context.js';
176
+ import { TxHash } from '../tx/tx_hash.js';
161
177
  import { TxRequest } from '../tx/tx_request.js';
162
- import { RollupTypes, Vector } from '../types/index.js';
178
+ import { Vector } from '../types/index.js';
179
+ import { VkData } from '../vks/index.js';
163
180
  import { VerificationKey, VerificationKeyAsFields, VerificationKeyData } from '../vks/verification_key.js';
164
- import { VkWitnessData } from '../vks/vk_witness_data.js';
165
- import { mockTx } from './mocks.js';
166
181
 
167
182
  /**
168
183
  * Creates an arbitrary side effect object with the given seed.
@@ -170,7 +185,11 @@ import { mockTx } from './mocks.js';
170
185
  * @returns A side effect object.
171
186
  */
172
187
  function makeLogHash(seed: number) {
173
- return new LogHash(fr(seed), seed + 1, seed + 2);
188
+ return new LogHash(fr(seed), seed + 1);
189
+ }
190
+
191
+ function makeCountedLogHash(seed: number) {
192
+ return new CountedLogHash(makeLogHash(seed), seed + 0x10);
174
193
  }
175
194
 
176
195
  function makeScopedLogHash(seed: number) {
@@ -182,19 +201,11 @@ function makeNoteHash(seed: number) {
182
201
  }
183
202
 
184
203
  function makeNullifier(seed: number) {
185
- return new Nullifier(fr(seed), seed + 1, fr(seed + 2));
186
- }
187
-
188
- function makeContractClassLog(seed: number) {
189
- // The '* 1' removes the 'Type instantiation is excessively deep and possibly infinite. ts(2589)' err
190
- return new ContractClassLog(
191
- makeAztecAddress(seed),
192
- makeTuple(CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS * 1, fr, seed + 1),
193
- );
204
+ return new Nullifier(fr(seed), fr(seed + 1), seed + 2);
194
205
  }
195
206
 
196
207
  function makePrivateLog(seed: number) {
197
- return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed));
208
+ return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed), PRIVATE_LOG_SIZE_IN_FIELDS);
198
209
  }
199
210
 
200
211
  function makePrivateLogData(seed: number) {
@@ -202,7 +213,10 @@ function makePrivateLogData(seed: number) {
202
213
  }
203
214
 
204
215
  function makePublicLog(seed: number) {
205
- return new PublicLog(makeAztecAddress(seed), makeTuple(PUBLIC_LOG_DATA_SIZE_IN_FIELDS, fr, seed + 1));
216
+ return new PublicLog(
217
+ makeAztecAddress(seed),
218
+ new Array(10).fill(null).map((_, i) => new Fr(seed + i)),
219
+ );
206
220
  }
207
221
 
208
222
  /**
@@ -231,8 +245,8 @@ export function makeSelector(seed: number): FunctionSelector {
231
245
  return new FunctionSelector(seed);
232
246
  }
233
247
 
234
- function makeReadRequest(n: number): ReadRequest {
235
- return new ReadRequest(new Fr(BigInt(n)), n + 1);
248
+ function makeScopedReadRequest(n: number): ScopedReadRequest {
249
+ return new ScopedReadRequest(new ReadRequest(new Fr(BigInt(n)), n + 1), makeAztecAddress(n + 2));
236
250
  }
237
251
 
238
252
  /**
@@ -253,7 +267,7 @@ function makeKeyValidationRequestAndGenerators(seed: number): KeyValidationReque
253
267
  return new KeyValidationRequestAndGenerator(makeKeyValidationRequests(seed), fr(seed + 4));
254
268
  }
255
269
 
256
- function makePublicDataWrite(seed = 1) {
270
+ export function makePublicDataWrite(seed = 1) {
257
271
  return new PublicDataWrite(fr(seed), fr(seed + 1));
258
272
  }
259
273
 
@@ -292,49 +306,110 @@ export function makeContractStorageRead(seed = 1): ContractStorageRead {
292
306
  return new ContractStorageRead(fr(seed), fr(seed + 1), seed + 2);
293
307
  }
294
308
 
295
- export function makeRollupValidationRequests(seed = 1) {
296
- return new RollupValidationRequests(new MaxBlockNumber(true, new Fr(seed + 0x31415)));
297
- }
298
-
299
309
  function makeTxConstantData(seed = 1) {
300
- return new TxConstantData(makeHeader(seed), makeTxContext(seed + 0x100), new Fr(seed + 0x200), new Fr(seed + 0x201));
301
- }
302
-
303
- export function makeCombinedConstantData(seed = 1): CombinedConstantData {
304
- return new CombinedConstantData(
305
- makeHeader(seed),
310
+ return new TxConstantData(
311
+ makeBlockHeader(seed),
306
312
  makeTxContext(seed + 0x100),
307
313
  new Fr(seed + 0x200),
308
314
  new Fr(seed + 0x201),
309
- makeGlobalVariables(seed + 0x300),
310
315
  );
311
316
  }
312
317
 
318
+ function makePaddedTuple<T, N extends number>(
319
+ length: N,
320
+ fn: (i: number) => T,
321
+ nonPaddedLength = 0,
322
+ makePadding: () => T,
323
+ offset = 0,
324
+ ) {
325
+ return makeTuple(length, i => (i < nonPaddedLength ? fn(i + offset) : makePadding()));
326
+ }
327
+
313
328
  /**
314
329
  * Creates arbitrary accumulated data.
315
330
  * @param seed - The seed to use for generating the accumulated data.
316
331
  * @returns An accumulated data.
317
332
  */
318
- export function makePrivateToRollupAccumulatedData(seed = 1, full = false): PrivateToRollupAccumulatedData {
319
- const tupleGenerator = full ? makeTuple : makeHalfFullTuple;
320
-
333
+ export function makePrivateToRollupAccumulatedData(
334
+ seed = 1,
335
+ {
336
+ numNoteHashes = MAX_NOTE_HASHES_PER_TX,
337
+ numNullifiers = MAX_NULLIFIERS_PER_TX,
338
+ numL2ToL1Messages = MAX_L2_TO_L1_MSGS_PER_TX,
339
+ numPrivateLogs = MAX_PRIVATE_LOGS_PER_TX,
340
+ numContractClassLogs = MAX_CONTRACT_CLASS_LOGS_PER_TX,
341
+ }: {
342
+ numNoteHashes?: number;
343
+ numNullifiers?: number;
344
+ numL2ToL1Messages?: number;
345
+ numPrivateLogs?: number;
346
+ numContractClassLogs?: number;
347
+ } = {},
348
+ ): PrivateToRollupAccumulatedData {
321
349
  return new PrivateToRollupAccumulatedData(
322
- tupleGenerator(MAX_NOTE_HASHES_PER_TX, fr, seed + 0x120, Fr.zero),
323
- tupleGenerator(MAX_NULLIFIERS_PER_TX, fr, seed + 0x200, Fr.zero),
324
- tupleGenerator(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x600, ScopedL2ToL1Message.empty),
325
- tupleGenerator(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, seed + 0x700, PrivateLog.empty),
326
- tupleGenerator(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeScopedLogHash, seed + 0xa00, ScopedLogHash.empty), // contract class logs
350
+ makePaddedTuple(MAX_NOTE_HASHES_PER_TX, fr, numNoteHashes, Fr.zero, seed + 0x100),
351
+ makePaddedTuple(MAX_NULLIFIERS_PER_TX, fr, numNullifiers, Fr.zero, seed + 0x200),
352
+ makePaddedTuple(
353
+ MAX_L2_TO_L1_MSGS_PER_TX,
354
+ makeScopedL2ToL1Message,
355
+ numL2ToL1Messages,
356
+ ScopedL2ToL1Message.empty,
357
+ seed + 0x300,
358
+ ),
359
+ makePaddedTuple(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, numPrivateLogs, PrivateLog.empty, seed + 0x400),
360
+ makePaddedTuple(
361
+ MAX_CONTRACT_CLASS_LOGS_PER_TX,
362
+ makeScopedLogHash,
363
+ numContractClassLogs,
364
+ ScopedLogHash.empty,
365
+ seed + 0x500,
366
+ ),
327
367
  );
328
368
  }
329
369
 
330
- export function makePrivateToPublicAccumulatedData(seed = 1) {
370
+ export function makePrivateToPublicAccumulatedData(
371
+ seed = 1,
372
+ {
373
+ numNoteHashes = MAX_NOTE_HASHES_PER_TX,
374
+ numNullifiers = MAX_NULLIFIERS_PER_TX,
375
+ numL2ToL1Messages = MAX_L2_TO_L1_MSGS_PER_TX,
376
+ numPrivateLogs = MAX_PRIVATE_LOGS_PER_TX,
377
+ numContractClassLogs = MAX_CONTRACT_CLASS_LOGS_PER_TX,
378
+ numEnqueuedCalls = MAX_ENQUEUED_CALLS_PER_TX,
379
+ }: {
380
+ numNoteHashes?: number;
381
+ numNullifiers?: number;
382
+ numL2ToL1Messages?: number;
383
+ numPrivateLogs?: number;
384
+ numContractClassLogs?: number;
385
+ numEnqueuedCalls?: number;
386
+ } = {},
387
+ ) {
331
388
  return new PrivateToPublicAccumulatedData(
332
- makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
333
- makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
334
- makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
335
- makeTuple(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, seed + 0x700),
336
- makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeScopedLogHash, seed + 0x900),
337
- makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x500),
389
+ makePaddedTuple(MAX_NOTE_HASHES_PER_TX, fr, numNoteHashes, Fr.zero, seed),
390
+ makePaddedTuple(MAX_NULLIFIERS_PER_TX, fr, numNullifiers, Fr.zero, seed + 0x100),
391
+ makePaddedTuple(
392
+ MAX_L2_TO_L1_MSGS_PER_TX,
393
+ makeScopedL2ToL1Message,
394
+ numL2ToL1Messages,
395
+ ScopedL2ToL1Message.empty,
396
+ seed + 0x200,
397
+ ),
398
+ makePaddedTuple(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, numPrivateLogs, PrivateLog.empty, seed + 0x300),
399
+ makePaddedTuple(
400
+ MAX_CONTRACT_CLASS_LOGS_PER_TX,
401
+ makeScopedLogHash,
402
+ numContractClassLogs,
403
+ ScopedLogHash.empty,
404
+ seed + 0x400,
405
+ ),
406
+ makePaddedTuple(
407
+ MAX_ENQUEUED_CALLS_PER_TX,
408
+ makePublicCallRequest,
409
+ numEnqueuedCalls,
410
+ PublicCallRequest.empty,
411
+ seed + 0x500,
412
+ ),
338
413
  );
339
414
  }
340
415
 
@@ -355,13 +430,20 @@ function makeAvmAccumulatedData(seed = 1) {
355
430
  makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
356
431
  makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
357
432
  makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
358
- makeTuple(MAX_PUBLIC_LOGS_PER_TX, makePublicLog, seed + 0x300),
433
+ FlatPublicLogs.fromLogs(new Array(20).fill(null).map((_, i) => makePublicLog(seed + i * 256))),
359
434
  makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, makePublicDataWrite, seed + 0x400),
360
435
  );
361
436
  }
362
437
 
438
+ function makeAvmAccumulatedDataArrayLengths(seed = 1) {
439
+ return new AvmAccumulatedDataArrayLengths(seed, seed + 1, seed + 2, seed + 3);
440
+ }
441
+
363
442
  export function makeGas(seed = 1) {
364
- return new Gas(seed, seed + 1);
443
+ // Constrain gas values to u32 range
444
+ const daGas = seed % 2 ** 32;
445
+ const l2Gas = (seed + 1) % 2 ** 32;
446
+ return new Gas(daGas, l2Gas);
365
447
  }
366
448
 
367
449
  /**
@@ -400,51 +482,60 @@ export function makePrivateKernelTailCircuitPublicInputs(
400
482
  : undefined;
401
483
  return new PrivateKernelTailCircuitPublicInputs(
402
484
  makeTxConstantData(seed + 0x300),
403
- makeRollupValidationRequests(seed + 0x500),
404
485
  makeGas(seed + 0x600),
405
486
  makeAztecAddress(seed + 0x700),
487
+ BigInt(seed + 0x800),
406
488
  forPublic,
407
489
  forRollup,
408
490
  );
409
491
  }
410
492
 
411
- function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
493
+ export function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
412
494
  return new PrivateToPublicKernelCircuitPublicInputs(
413
495
  makeTxConstantData(seed),
414
- makeRollupValidationRequests(seed + 0x100),
415
496
  makePrivateToPublicAccumulatedData(seed + 0x200),
416
497
  makePrivateToPublicAccumulatedData(seed + 0x300),
417
498
  makePublicCallRequest(seed + 0x400),
418
499
  makeGas(seed + 0x500),
419
500
  makeAztecAddress(seed + 0x600),
501
+ BigInt(seed + 0x700),
420
502
  );
421
503
  }
422
504
 
505
+ export function makePublicChonkVerifierPublicInputs(seed = 1) {
506
+ return new PublicChonkVerifierPublicInputs(makePrivateToPublicKernelCircuitPublicInputs(seed), fr(seed + 0x1000));
507
+ }
508
+
509
+ export function makeProtocolContracts(seed = 1) {
510
+ return new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed));
511
+ }
512
+
423
513
  /**
424
514
  * Creates arbitrary public kernel circuit public inputs.
425
515
  * @param seed - The seed to use for generating the kernel circuit public inputs.
426
516
  * @returns Public kernel circuit public inputs.
427
517
  */
428
- export function makePrivateToRollupKernelCircuitPublicInputs(
429
- seed = 1,
430
- fullAccumulatedData = true,
431
- ): PrivateToRollupKernelCircuitPublicInputs {
518
+ export function makePrivateToRollupKernelCircuitPublicInputs(seed = 1): PrivateToRollupKernelCircuitPublicInputs {
432
519
  return new PrivateToRollupKernelCircuitPublicInputs(
433
520
  makeTxConstantData(seed + 0x100),
434
- makeRollupValidationRequests(seed),
435
- makePrivateToRollupAccumulatedData(seed, fullAccumulatedData),
521
+ makePrivateToRollupAccumulatedData(seed),
436
522
  makeGas(seed + 0x600),
437
523
  makeAztecAddress(seed + 0x700),
524
+ BigInt(seed + 0x800),
438
525
  );
439
526
  }
440
527
 
441
528
  function makeAvmCircuitPublicInputs(seed = 1) {
442
529
  return new AvmCircuitPublicInputs(
443
530
  makeGlobalVariables(seed),
531
+ makeProtocolContracts(seed + 0x100),
444
532
  makeTreeSnapshots(seed + 0x10),
445
533
  makeGas(seed + 0x20),
446
534
  makeGasSettings(),
535
+ makeGasFees(seed + 0x30),
447
536
  makeAztecAddress(seed + 0x40),
537
+ fr(seed + 0x50),
538
+ makePublicCallRequestArrayLengths(seed + 0x60),
448
539
  makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x100),
449
540
  makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x200),
450
541
  makePublicCallRequest(seed + 0x300),
@@ -454,6 +545,7 @@ function makeAvmCircuitPublicInputs(seed = 1) {
454
545
  makePrivateToAvmAccumulatedData(seed + 0x600),
455
546
  makeTreeSnapshots(seed + 0x700),
456
547
  makeGas(seed + 0x750),
548
+ makeAvmAccumulatedDataArrayLengths(seed + 0x800),
457
549
  makeAvmAccumulatedData(seed + 0x800),
458
550
  fr(seed + 0x900),
459
551
  false,
@@ -522,13 +614,11 @@ function makePrivateCallRequest(seed = 1): PrivateCallRequest {
522
614
  }
523
615
 
524
616
  export function makePublicCallRequest(seed = 1) {
525
- return new PublicCallRequest(
526
- makeAztecAddress(seed),
527
- makeAztecAddress(seed + 1),
528
- makeSelector(seed + 2),
529
- false,
530
- fr(seed + 0x3),
531
- );
617
+ return new PublicCallRequest(makeAztecAddress(seed), makeAztecAddress(seed + 1), false, fr(seed + 0x3));
618
+ }
619
+
620
+ export function makePublicCallRequestArrayLengths(seed = 1) {
621
+ return new PublicCallRequestArrayLengths(seed, seed + 1, seed % 2 === 0);
532
622
  }
533
623
 
534
624
  function makeCountedPublicCallRequest(seed = 1) {
@@ -546,9 +636,19 @@ export function makeTxRequest(seed = 1): TxRequest {
546
636
  functionData: new FunctionData(makeSelector(seed + 0x100), /*isPrivate=*/ true),
547
637
  argsHash: fr(seed + 0x200),
548
638
  txContext: makeTxContext(seed + 0x400),
639
+ salt: fr(seed + 0x500),
549
640
  });
550
641
  }
551
642
 
643
+ function makeClaimedLengthArray<T extends Serializable, N extends number>(
644
+ arraySize: N,
645
+ makeItem: (seed: number) => T,
646
+ seed: number,
647
+ length = arraySize,
648
+ ): ClaimedLengthArray<T, N> {
649
+ return new ClaimedLengthArray(makeTuple(arraySize, makeItem, seed) as Tuple<T, N>, length);
650
+ }
651
+
552
652
  /**
553
653
  * Makes arbitrary private circuit public inputs.
554
654
  * @param seed - The seed to use for generating the private circuit public inputs.
@@ -556,29 +656,43 @@ export function makeTxRequest(seed = 1): TxRequest {
556
656
  */
557
657
  export function makePrivateCircuitPublicInputs(seed = 0): PrivateCircuitPublicInputs {
558
658
  return PrivateCircuitPublicInputs.from({
559
- maxBlockNumber: new MaxBlockNumber(true, new Fr(seed + 0x31415)),
659
+ includeByTimestamp: BigInt(seed + 0x31415),
560
660
  callContext: makeCallContext(seed, { isStaticCall: true }),
561
661
  argsHash: fr(seed + 0x100),
562
662
  returnsHash: fr(seed + 0x200),
563
663
  minRevertibleSideEffectCounter: fr(0),
564
- noteHashReadRequests: makeTuple(MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x300),
565
- nullifierReadRequests: makeTuple(MAX_NULLIFIER_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x310),
566
- keyValidationRequestsAndGenerators: makeTuple(
664
+ noteHashReadRequests: makeClaimedLengthArray(
665
+ MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,
666
+ makeScopedReadRequest,
667
+ seed + 0x300,
668
+ ),
669
+ nullifierReadRequests: makeClaimedLengthArray(
670
+ MAX_NULLIFIER_READ_REQUESTS_PER_CALL,
671
+ makeScopedReadRequest,
672
+ seed + 0x310,
673
+ ),
674
+ keyValidationRequestsAndGenerators: makeClaimedLengthArray(
567
675
  MAX_KEY_VALIDATION_REQUESTS_PER_CALL,
568
676
  makeKeyValidationRequestAndGenerators,
569
677
  seed + 0x320,
570
678
  ),
571
- noteHashes: makeTuple(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
572
- nullifiers: makeTuple(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
573
- privateCallRequests: makeTuple(MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, makePrivateCallRequest, seed + 0x600),
574
- publicCallRequests: makeTuple(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
679
+ noteHashes: makeClaimedLengthArray(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
680
+ nullifiers: makeClaimedLengthArray(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
681
+ privateCallRequests: makeClaimedLengthArray(
682
+ MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL,
683
+ makePrivateCallRequest,
684
+ seed + 0x600,
685
+ ),
686
+ publicCallRequests: makeClaimedLengthArray(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
575
687
  publicTeardownCallRequest: makePublicCallRequest(seed + 0x800),
576
- l2ToL1Msgs: makeTuple(MAX_L2_TO_L1_MSGS_PER_CALL, makeL2ToL1Message, seed + 0x800),
577
- privateLogs: makeTuple(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
578
- contractClassLogsHashes: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeLogHash, seed + 0xa00),
688
+ l2ToL1Msgs: makeClaimedLengthArray(MAX_L2_TO_L1_MSGS_PER_CALL, makeCountedL2ToL1Message, seed + 0x800),
689
+ privateLogs: makeClaimedLengthArray(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
690
+ contractClassLogsHashes: makeClaimedLengthArray(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeCountedLogHash, seed + 0xa00),
579
691
  startSideEffectCounter: fr(seed + 0x849),
580
692
  endSideEffectCounter: fr(seed + 0x850),
581
- historicalHeader: makeHeader(seed + 0xd00, undefined),
693
+ expectedNonRevertibleSideEffectCounter: fr(seed + 0x860),
694
+ expectedRevertibleSideEffectCounter: fr(seed + 0x861),
695
+ anchorBlockHeader: makeBlockHeader(seed + 0xd00),
582
696
  txContext: makeTxContext(seed + 0x1400),
583
697
  isFeePayer: false,
584
698
  });
@@ -588,53 +702,33 @@ export function makeGlobalVariables(seed = 1, overrides: Partial<FieldsOf<Global
588
702
  return GlobalVariables.from({
589
703
  chainId: new Fr(seed),
590
704
  version: new Fr(seed + 1),
591
- blockNumber: new Fr(seed + 2),
592
- slotNumber: new Fr(seed + 3),
593
- timestamp: new Fr(seed + 4),
705
+ blockNumber: BlockNumber(seed + 2),
706
+ slotNumber: SlotNumber(seed + 3),
707
+ timestamp: BigInt(seed + 4),
594
708
  coinbase: EthAddress.fromField(new Fr(seed + 5)),
595
709
  feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
596
- gasFees: new GasFees(new Fr(seed + 7), new Fr(seed + 8)),
710
+ gasFees: new GasFees(seed + 7, seed + 8),
597
711
  ...compact(overrides),
598
712
  });
599
713
  }
600
714
 
601
- export function makeGasFees(seed = 1) {
602
- return new GasFees(fr(seed), fr(seed + 1));
715
+ function makeGasFees(seed = 1) {
716
+ return new GasFees(seed, seed + 1);
603
717
  }
604
718
 
605
- export function makeFeeRecipient(seed = 1) {
719
+ function makeFeeRecipient(seed = 1) {
606
720
  return new FeeRecipient(EthAddress.fromField(fr(seed)), fr(seed + 1));
607
721
  }
608
722
 
609
- /**
610
- * Makes constant base rollup data.
611
- * @param seed - The seed to use for generating the constant base rollup data.
612
- * @param blockNumber - The block number to use for generating the global variables.
613
- * @returns A constant base rollup data.
614
- */
615
- export function makeConstantRollupData(
616
- seed = 1,
617
- globalVariables: GlobalVariables | undefined = undefined,
618
- ): ConstantRollupData {
619
- return ConstantRollupData.from({
620
- lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x300),
621
- vkTreeRoot: fr(seed + 0x401),
622
- protocolContractTreeRoot: fr(seed + 0x402),
623
- globalVariables: globalVariables ?? makeGlobalVariables(seed + 0x500),
624
- });
625
- }
626
-
627
- export function makeScopedL2ToL1Message(seed = 1): ScopedL2ToL1Message {
628
- return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
629
- }
630
-
631
723
  /**
632
724
  * Makes arbitrary append only tree snapshot.
633
725
  * @param seed - The seed to use for generating the append only tree snapshot.
634
726
  * @returns An append only tree snapshot.
635
727
  */
636
728
  export function makeAppendOnlyTreeSnapshot(seed = 1): AppendOnlyTreeSnapshot {
637
- return new AppendOnlyTreeSnapshot(fr(seed), seed);
729
+ // Constrain nextAvailableLeafIndex to u32 range
730
+ const nextAvailableLeafIndex = seed % 2 ** 32;
731
+ return new AppendOnlyTreeSnapshot(fr(seed), nextAvailableLeafIndex);
638
732
  }
639
733
 
640
734
  /**
@@ -674,20 +768,48 @@ export function makeSchnorrSignature(seed = 1): SchnorrSignature {
674
768
  return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
675
769
  }
676
770
 
771
+ function makeBlockConstantData(seed = 1, globalVariables?: GlobalVariables) {
772
+ return new BlockConstantData(
773
+ makeAppendOnlyTreeSnapshot(seed + 0x100),
774
+ makeAppendOnlyTreeSnapshot(seed + 0x200),
775
+ fr(seed + 0x300),
776
+ fr(seed + 0x400),
777
+ globalVariables ?? makeGlobalVariables(seed + 0x500),
778
+ fr(seed + 0x600),
779
+ );
780
+ }
781
+
782
+ function makeCheckpointConstantData(seed = 1) {
783
+ return new CheckpointConstantData(
784
+ fr(seed),
785
+ fr(seed + 1),
786
+ fr(seed + 2),
787
+ fr(seed + 3),
788
+ fr(seed + 4),
789
+ SlotNumber(seed + 5),
790
+ makeEthAddress(seed + 6),
791
+ makeAztecAddress(seed + 7),
792
+ makeGasFees(seed + 8),
793
+ );
794
+ }
795
+
796
+ function makeEpochConstantData(seed = 1) {
797
+ return new EpochConstantData(fr(seed), fr(seed + 1), fr(seed + 2), fr(seed + 3), fr(seed + 4));
798
+ }
799
+
677
800
  /**
678
801
  * Makes arbitrary base or merge rollup circuit public inputs.
679
802
  * @param seed - The seed to use for generating the base rollup circuit public inputs.
680
803
  * @param blockNumber - The block number to use for generating the base rollup circuit public inputs.
681
804
  * @returns A base or merge rollup circuit public inputs.
682
805
  */
683
- export function makeBaseOrMergeRollupPublicInputs(
806
+ export function makeTxRollupPublicInputs(
684
807
  seed = 0,
685
808
  globalVariables: GlobalVariables | undefined = undefined,
686
- ): BaseOrMergeRollupPublicInputs {
687
- return new BaseOrMergeRollupPublicInputs(
688
- RollupTypes.Base,
809
+ ): TxRollupPublicInputs {
810
+ return new TxRollupPublicInputs(
689
811
  1,
690
- makeConstantRollupData(seed + 0x200, globalVariables),
812
+ makeBlockConstantData(seed + 0x200, globalVariables),
691
813
  makePartialStateReference(seed + 0x300),
692
814
  makePartialStateReference(seed + 0x400),
693
815
  makeSpongeBlob(seed + 0x500),
@@ -704,147 +826,36 @@ export function makeBaseOrMergeRollupPublicInputs(
704
826
  * @param blockNumber - The block number to use for generating the block merge or block root rollup circuit public inputs.
705
827
  * @returns A block merge or block root rollup circuit public inputs.
706
828
  */
707
- export function makeBlockRootOrBlockMergeRollupPublicInputs(
708
- seed = 0,
709
- globalVariables: GlobalVariables | undefined = undefined,
710
- ): BlockRootOrBlockMergePublicInputs {
711
- return new BlockRootOrBlockMergePublicInputs(
829
+ export function makeBlockRollupPublicInputs(seed = 0): BlockRollupPublicInputs {
830
+ return new BlockRollupPublicInputs(
831
+ makeCheckpointConstantData(seed + 0x100),
712
832
  makeAppendOnlyTreeSnapshot(seed + 0x200),
713
833
  makeAppendOnlyTreeSnapshot(seed + 0x300),
714
- fr(seed + 0x400),
715
- fr(seed + 0x500),
716
- globalVariables ?? makeGlobalVariables(seed + 0x501),
717
- globalVariables ?? makeGlobalVariables(seed + 0x502),
718
- fr(seed + 0x600),
719
- makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x700),
720
- fr(seed + 0x800),
721
- fr(seed + 0x801),
722
- fr(seed + 0x900),
723
- makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeBlockBlobPublicInputs(seed), 0x100),
724
- );
725
- }
726
-
727
- /**
728
- * Makes arbitrary previous rollup data.
729
- * @param seed - The seed to use for generating the previous rollup data.
730
- * @param globalVariables - The global variables to use when generating the previous rollup data.
731
- * @returns A previous rollup data.
732
- */
733
- export function makePreviousRollupData(
734
- seed = 0,
735
- globalVariables: GlobalVariables | undefined = undefined,
736
- ): PreviousRollupData {
737
- return new PreviousRollupData(
738
- makeBaseOrMergeRollupPublicInputs(seed, globalVariables),
739
- makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
740
- NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
741
- seed + 0x50,
742
- ),
743
- VerificationKeyAsFields.makeFakeHonk(),
744
- makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
745
- );
746
- }
747
-
748
- /**
749
- * Makes arbitrary previous rollup block data.
750
- * @param seed - The seed to use for generating the previous rollup block data.
751
- * @param globalVariables - The global variables to use when generating the previous rollup block data.
752
- * @returns A previous rollup block data.
753
- */
754
- export function makePreviousRollupBlockData(
755
- seed = 0,
756
- globalVariables: GlobalVariables | undefined = undefined,
757
- ): PreviousRollupBlockData {
758
- return new PreviousRollupBlockData(
759
- makeBlockRootOrBlockMergeRollupPublicInputs(seed, globalVariables),
760
- makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
761
- NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
762
- seed + 0x50,
763
- ),
764
- VerificationKeyAsFields.makeFakeHonk(),
765
- makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
766
- );
767
- }
768
-
769
- /**
770
- * Makes root rollup inputs.
771
- * @param seed - The seed to use for generating the root rollup inputs.
772
- * @param globalVariables - The global variables to use.
773
- * @returns A root rollup inputs.
774
- */
775
- export function makeRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): RootRollupInputs {
776
- return new RootRollupInputs(
777
- [makePreviousRollupBlockData(seed, globalVariables), makePreviousRollupBlockData(seed + 0x1000, globalVariables)],
778
- fr(seed + 0x2000),
779
- );
780
- }
781
-
782
- function makeBlockRootRollupData(seed = 0) {
783
- return new BlockRootRollupData(
784
- makeRootParityInput<typeof NESTED_RECURSIVE_PROOF_LENGTH>(NESTED_RECURSIVE_PROOF_LENGTH, seed + 0x2000),
785
- makeTuple(L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, fr, 0x2100),
786
- makeTuple(ARCHIVE_HEIGHT, fr, 0x2200),
787
- makeHeader(seed + 0x2300),
788
- fr(seed + 0x2400),
789
- );
790
- }
791
-
792
- function makeBlockRootRollupBlobData(seed = 0) {
793
- return new BlockRootRollupBlobData(
794
- makeTuple(FIELDS_PER_BLOB * BLOBS_PER_BLOCK, fr, 0x2500),
795
- makeTuple(BLOBS_PER_BLOCK, () => makeTuple(2, fr, 0x2600)),
796
- fr(seed + 0x2700),
797
- );
798
- }
799
-
800
- /**
801
- * Makes block root rollup inputs.
802
- * @param seed - The seed to use for generating the root rollup inputs.
803
- * @param globalVariables - The global variables to use.
804
- * @returns A block root rollup inputs.
805
- */
806
- export function makeBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): BlockRootRollupInputs {
807
- return new BlockRootRollupInputs(
808
- [makePreviousRollupData(seed, globalVariables), makePreviousRollupData(seed + 0x1000, globalVariables)],
809
- makeBlockRootRollupData(seed + 0x2000),
810
- makeBlockRootRollupBlobData(seed + 0x4000),
811
- );
812
- }
813
-
814
- export function makeSingleTxBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables) {
815
- return new SingleTxBlockRootRollupInputs(
816
- [makePreviousRollupData(seed, globalVariables)],
817
- makeBlockRootRollupData(seed + 0x2000),
818
- makeBlockRootRollupBlobData(seed + 0x4000),
819
- );
820
- }
821
-
822
- /**
823
- * Makes empty block root rollup inputs.
824
- * @param seed - The seed to use for generating the root rollup inputs.
825
- * @param globalVariables - The global variables to use.
826
- * @returns A block root rollup inputs.
827
- */
828
- export function makeEmptyBlockRootRollupInputs(
829
- seed = 0,
830
- globalVariables?: GlobalVariables,
831
- ): EmptyBlockRootRollupInputs {
832
- return new EmptyBlockRootRollupInputs(
833
- makeBlockRootRollupData(seed + 0x1000),
834
- makeConstantRollupData(0x2500, globalVariables),
835
- true,
834
+ makeStateReference(seed + 0x400),
835
+ makeStateReference(seed + 0x500),
836
+ makeSpongeBlob(seed + 0x600),
837
+ makeSpongeBlob(seed + 0x700),
838
+ BigInt(seed + 0x800),
839
+ fr(seed + 0x820),
840
+ fr(seed + 0x830),
841
+ fr(seed + 0x840),
842
+ fr(seed + 0x850),
843
+ fr(seed + 0x860),
836
844
  );
837
845
  }
838
846
 
839
- export function makeRootParityInput<PROOF_LENGTH extends number>(
840
- proofSize: PROOF_LENGTH,
841
- seed = 0,
842
- ): RootParityInput<PROOF_LENGTH> {
843
- return new RootParityInput<PROOF_LENGTH>(
844
- makeRecursiveProof<PROOF_LENGTH>(proofSize, seed),
845
- VerificationKeyAsFields.makeFake(seed + 0x100),
846
- makeTuple(VK_TREE_HEIGHT, fr, 0x200),
847
- makeParityPublicInputs(seed + 0x300),
847
+ export function makeCheckpointRollupPublicInputs(seed = 0) {
848
+ return new CheckpointRollupPublicInputs(
849
+ makeEpochConstantData(seed),
850
+ makeAppendOnlyTreeSnapshot(seed + 0x100),
851
+ makeAppendOnlyTreeSnapshot(seed + 0x200),
852
+ makeAppendOnlyTreeSnapshot(seed + 0x300),
853
+ makeAppendOnlyTreeSnapshot(seed + 0x350),
854
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => fr(seed), 0x400),
855
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x500),
856
+ makeBlobAccumulator(seed + 0x600),
857
+ makeBlobAccumulator(seed + 0x700),
858
+ makeFinalBlobBatchingChallenges(seed + 0x800),
848
859
  );
849
860
  }
850
861
 
@@ -856,17 +867,13 @@ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
856
867
  );
857
868
  }
858
869
 
859
- export function makeBaseParityInputs(seed = 0): BaseParityInputs {
860
- return new BaseParityInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
870
+ export function makeParityBasePrivateInputs(seed = 0): ParityBasePrivateInputs {
871
+ return new ParityBasePrivateInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
861
872
  }
862
873
 
863
- export function makeRootParityInputs(seed = 0): RootParityInputs {
864
- return new RootParityInputs(
865
- makeTuple(
866
- NUM_BASE_PARITY_PER_ROOT_PARITY,
867
- () => makeRootParityInput<typeof RECURSIVE_PROOF_LENGTH>(RECURSIVE_PROOF_LENGTH),
868
- seed + 0x4100,
869
- ),
874
+ export function makeParityRootPrivateInputs(seed = 0) {
875
+ return new ParityRootPrivateInputs(
876
+ makeTuple(NUM_BASE_PARITY_PER_ROOT_PARITY, () => makeProofData(seed, makeParityPublicInputs)),
870
877
  );
871
878
  }
872
879
 
@@ -878,52 +885,46 @@ export function makeRootParityInputs(seed = 0): RootParityInputs {
878
885
  */
879
886
  export function makeRootRollupPublicInputs(seed = 0): RootRollupPublicInputs {
880
887
  return new RootRollupPublicInputs(
881
- makeAppendOnlyTreeSnapshot(seed + 0x200),
882
- makeAppendOnlyTreeSnapshot(seed + 0x300),
883
- fr(seed + 0x400),
884
- fr(seed + 0x500),
885
- fr(seed + 0x600),
886
- fr(seed + 0x700),
887
- fr(seed + 0x800),
888
- makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x900),
889
888
  fr(seed + 0x100),
890
- fr(seed + 0x101),
891
889
  fr(seed + 0x200),
892
- makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeBlockBlobPublicInputs(seed), 0x300),
893
- );
894
- }
895
-
896
- /**
897
- * Makes content commitment
898
- */
899
- export function makeContentCommitment(seed = 0): ContentCommitment {
900
- return new ContentCommitment(
901
- new Fr(seed),
902
- toBufferBE(BigInt(seed + 0x100), NUM_BYTES_PER_SHA256),
903
- toBufferBE(BigInt(seed + 0x200), NUM_BYTES_PER_SHA256),
904
- toBufferBE(BigInt(seed + 0x300), NUM_BYTES_PER_SHA256),
890
+ fr(seed + 0x300),
891
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => fr(seed), 0x400),
892
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x500),
893
+ makeEpochConstantData(seed + 0x600),
894
+ makeFinalBlobAccumulator(seed + 0x700),
905
895
  );
906
896
  }
907
897
 
908
- /**
909
- * Makes header.
910
- */
911
- export function makeHeader(
898
+ export function makeBlockHeader(
912
899
  seed = 0,
913
- blockNumber: number | undefined = undefined,
914
- slotNumber: number | undefined = undefined,
900
+ overrides: Partial<FieldsOf<Omit<BlockHeader, 'globalVariables'>>> & Partial<FieldsOf<GlobalVariables>> = {},
915
901
  ): BlockHeader {
916
- return new BlockHeader(
917
- makeAppendOnlyTreeSnapshot(seed + 0x100),
918
- makeContentCommitment(seed + 0x200),
919
- makeStateReference(seed + 0x600),
920
- makeGlobalVariables((seed += 0x700), {
921
- ...(blockNumber ? { blockNumber: new Fr(blockNumber) } : {}),
922
- ...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
923
- }),
924
- fr(seed + 0x800),
925
- fr(seed + 0x900),
926
- );
902
+ return BlockHeader.from({
903
+ lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x100),
904
+ state: makeStateReference(seed + 0x200),
905
+ spongeBlobHash: fr(seed + 0x300),
906
+ globalVariables: makeGlobalVariables((seed += 0x700), overrides),
907
+ totalFees: fr(seed + 0x800),
908
+ totalManaUsed: fr(seed + 0x900),
909
+ ...overrides,
910
+ });
911
+ }
912
+
913
+ export function makeCheckpointHeader(seed = 0, overrides: Partial<FieldsOf<CheckpointHeader>> = {}) {
914
+ return CheckpointHeader.from({
915
+ lastArchiveRoot: fr(seed + 0x100),
916
+ blockHeadersHash: fr(seed + 0x150),
917
+ blobsHash: fr(seed + 0x200),
918
+ inHash: fr(seed + 0x210),
919
+ epochOutHash: fr(seed + 0x220),
920
+ slotNumber: SlotNumber(seed + 0x300),
921
+ timestamp: BigInt(seed + 0x400),
922
+ coinbase: makeEthAddress(seed + 0x500),
923
+ feeRecipient: makeAztecAddress(seed + 0x600),
924
+ gasFees: makeGasFees(seed + 0x700),
925
+ totalManaUsed: fr(seed + 0x800),
926
+ ...overrides,
927
+ });
927
928
  }
928
929
 
929
930
  /**
@@ -932,15 +933,18 @@ export function makeHeader(
932
933
  * @returns A state reference.
933
934
  */
934
935
  export function makeStateReference(seed = 0): StateReference {
935
- return new StateReference(makeAppendOnlyTreeSnapshot(seed), makePartialStateReference(seed + 1));
936
+ return new StateReference(
937
+ makeAppendOnlyTreeSnapshot(NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP * seed),
938
+ makePartialStateReference(seed + 1),
939
+ );
936
940
  }
937
941
 
938
942
  function makeTreeSnapshots(seed = 0) {
939
943
  return new TreeSnapshots(
940
- makeAppendOnlyTreeSnapshot(seed),
941
- makeAppendOnlyTreeSnapshot(seed + 0x10),
942
- makeAppendOnlyTreeSnapshot(seed + 0x20),
943
- makeAppendOnlyTreeSnapshot(seed + 0x30),
944
+ makeAppendOnlyTreeSnapshot(seed * NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP),
945
+ makeAppendOnlyTreeSnapshot((seed + 0x10) * MAX_NOTE_HASHES_PER_TX),
946
+ makeAppendOnlyTreeSnapshot((seed + 0x20) * MAX_NULLIFIERS_PER_TX),
947
+ makeAppendOnlyTreeSnapshot((seed + 0x30) * MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX),
944
948
  );
945
949
  }
946
950
 
@@ -953,7 +957,15 @@ export function makeL2ToL1Message(seed = 0): L2ToL1Message {
953
957
  const recipient = EthAddress.fromField(new Fr(seed));
954
958
  const content = new Fr(seed + 1);
955
959
 
956
- return new L2ToL1Message(recipient, content, seed + 2);
960
+ return new L2ToL1Message(recipient, content);
961
+ }
962
+
963
+ function makeCountedL2ToL1Message(seed = 0) {
964
+ return new CountedL2ToL1Message(makeL2ToL1Message(seed), seed + 2);
965
+ }
966
+
967
+ export function makeScopedL2ToL1Message(seed = 1) {
968
+ return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
957
969
  }
958
970
 
959
971
  /**
@@ -963,19 +975,34 @@ export function makeL2ToL1Message(seed = 0): L2ToL1Message {
963
975
  */
964
976
  export function makePartialStateReference(seed = 0): PartialStateReference {
965
977
  return new PartialStateReference(
966
- makeAppendOnlyTreeSnapshot(seed),
967
- makeAppendOnlyTreeSnapshot(seed + 1),
968
- makeAppendOnlyTreeSnapshot(seed + 2),
978
+ makeAppendOnlyTreeSnapshot(MAX_NOTE_HASHES_PER_TX * seed),
979
+ makeAppendOnlyTreeSnapshot(MAX_NULLIFIERS_PER_TX * (seed + 1)),
980
+ makeAppendOnlyTreeSnapshot(MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX * (seed + 2)),
969
981
  );
970
982
  }
971
983
 
972
- /**
973
- * Makes arbitrary merge rollup inputs.
974
- * @param seed - The seed to use for generating the merge rollup inputs.
975
- * @returns A merge rollup inputs.
976
- */
977
- export function makeMergeRollupInputs(seed = 0): MergeRollupInputs {
978
- return new MergeRollupInputs([makePreviousRollupData(seed), makePreviousRollupData(seed + 0x1000)]);
984
+ export function makeTxMergeRollupPrivateInputs(seed = 0): TxMergeRollupPrivateInputs {
985
+ return new TxMergeRollupPrivateInputs([
986
+ makeProofData(seed, makeTxRollupPublicInputs),
987
+ makeProofData(seed + 0x1000, makeTxRollupPublicInputs),
988
+ ]);
989
+ }
990
+
991
+ export function makeBlockRootFirstRollupPrivateInputs(seed = 0) {
992
+ return new BlockRootFirstRollupPrivateInputs(
993
+ makeProofData(seed, makeParityPublicInputs),
994
+ [makeProofData(seed + 0x1000, makeTxRollupPublicInputs), makeProofData(seed + 0x2000, makeTxRollupPublicInputs)],
995
+ makeAppendOnlyTreeSnapshot(seed + 0x3000),
996
+ makeSiblingPath(seed + 0x4000, L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH),
997
+ makeSiblingPath(seed + 0x5000, ARCHIVE_HEIGHT),
998
+ );
999
+ }
1000
+
1001
+ export function makeBlockRootSingleTxRollupPrivateInputs(seed = 0) {
1002
+ return new BlockRootSingleTxRollupPrivateInputs(
1003
+ makeProofData(seed + 0x1000, makeTxRollupPublicInputs),
1004
+ makeSiblingPath(seed + 0x4000, ARCHIVE_HEIGHT),
1005
+ );
979
1006
  }
980
1007
 
981
1008
  /**
@@ -983,8 +1010,11 @@ export function makeMergeRollupInputs(seed = 0): MergeRollupInputs {
983
1010
  * @param seed - The seed to use for generating the merge rollup inputs.
984
1011
  * @returns A block merge rollup inputs.
985
1012
  */
986
- export function makeBlockMergeRollupInputs(seed = 0): BlockMergeRollupInputs {
987
- return new BlockMergeRollupInputs([makePreviousRollupBlockData(seed), makePreviousRollupBlockData(seed + 0x1000)]);
1013
+ export function makeBlockMergeRollupPrivateInputs(seed = 0) {
1014
+ return new BlockMergeRollupPrivateInputs([
1015
+ makeProofData(seed, makeBlockRollupPublicInputs),
1016
+ makeProofData(seed + 0x1000, makeBlockRollupPublicInputs),
1017
+ ]);
988
1018
  }
989
1019
 
990
1020
  /**
@@ -996,24 +1026,42 @@ export function makePublicDataTreeLeaf(seed = 0): PublicDataTreeLeaf {
996
1026
  return new PublicDataTreeLeaf(new Fr(seed), new Fr(seed + 1));
997
1027
  }
998
1028
 
1029
+ /**
1030
+ * Makes arbitrary nullifier leaf.
1031
+ * @param seed - The seed to use for generating the nullifier leaf.
1032
+ * @returns A nullifier leaf.
1033
+ */
1034
+ export function makeNullifierLeaf(seed = 0): NullifierLeaf {
1035
+ return new NullifierLeaf(new Fr(seed));
1036
+ }
1037
+
1038
+ /**
1039
+ * Makes arbitrary nullifier leaf preimages.
1040
+ * @param seed - The seed to use for generating the nullifier leaf preimage.
1041
+ * @returns A nullifier leaf preimage.
1042
+ */
1043
+ export function makeNullifierLeafPreimage(seed = 0): NullifierLeafPreimage {
1044
+ return new NullifierLeafPreimage(makeNullifierLeaf(seed), new Fr(seed + 1), BigInt(seed + 2));
1045
+ }
1046
+
999
1047
  /**
1000
1048
  * Makes arbitrary public data tree leaf preimages.
1001
1049
  * @param seed - The seed to use for generating the public data tree leaf preimage.
1002
1050
  * @returns A public data tree leaf preimage.
1003
1051
  */
1004
1052
  export function makePublicDataTreeLeafPreimage(seed = 0): PublicDataTreeLeafPreimage {
1005
- return new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3));
1053
+ return new PublicDataTreeLeafPreimage(makePublicDataTreeLeaf(seed), new Fr(seed + 2), BigInt(seed + 3));
1006
1054
  }
1007
1055
 
1008
1056
  /**
1009
- * Creates an instance of PrivateBaseStateDiffHints with arbitrary values based on the provided seed.
1057
+ * Creates an instance of TreeSnapshotDiffHints with arbitrary values based on the provided seed.
1010
1058
  * @param seed - The seed to use for generating the hints.
1011
- * @returns A PrivateBaseStateDiffHints object.
1059
+ * @returns A TreeSnapshotDiffHints object.
1012
1060
  */
1013
- export function makePrivateBaseStateDiffHints(seed = 1): PrivateBaseStateDiffHints {
1061
+ export function makeTreeSnapshotDiffHints(seed = 1): TreeSnapshotDiffHints {
1014
1062
  const nullifierPredecessorPreimages = makeTuple(
1015
1063
  MAX_NULLIFIERS_PER_TX,
1016
- x => new NullifierLeafPreimage(fr(x), fr(x + 0x100), BigInt(x + 0x200)),
1064
+ x => makeNullifierLeafPreimage(x),
1017
1065
  seed + 0x1000,
1018
1066
  );
1019
1067
 
@@ -1027,115 +1075,108 @@ export function makePrivateBaseStateDiffHints(seed = 1): PrivateBaseStateDiffHin
1027
1075
 
1028
1076
  const sortedNullifierIndexes = makeTuple(MAX_NULLIFIERS_PER_TX, i => i, seed + 0x4000);
1029
1077
 
1030
- const noteHashSubtreeSiblingPath = makeTuple(NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
1078
+ const noteHashSubtreeRootSiblingPath = makeTuple(NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
1031
1079
 
1032
- const nullifierSubtreeSiblingPath = makeTuple(NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
1080
+ const nullifierSubtreeRootSiblingPath = makeTuple(NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
1033
1081
 
1034
- const feeWriteLowLeafPreimage = makePublicDataTreeLeafPreimage(seed + 0x7000);
1035
- const feeWriteLowLeafMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
1036
- const feeWriteSiblingPath = makeTuple(PUBLIC_DATA_TREE_HEIGHT, fr, seed + 0x9000);
1082
+ const feePayerBalanceMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
1037
1083
 
1038
- return new PrivateBaseStateDiffHints(
1084
+ return new TreeSnapshotDiffHints(
1085
+ noteHashSubtreeRootSiblingPath,
1039
1086
  nullifierPredecessorPreimages,
1040
1087
  nullifierPredecessorMembershipWitnesses,
1041
1088
  sortedNullifiers,
1042
1089
  sortedNullifierIndexes,
1043
- noteHashSubtreeSiblingPath,
1044
- nullifierSubtreeSiblingPath,
1045
- feeWriteLowLeafPreimage,
1046
- feeWriteLowLeafMembershipWitness,
1047
- feeWriteSiblingPath,
1090
+ nullifierSubtreeRootSiblingPath,
1091
+ feePayerBalanceMembershipWitness,
1048
1092
  );
1049
1093
  }
1050
1094
 
1051
- function makeVkWitnessData(seed = 1) {
1052
- return new VkWitnessData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
1095
+ function makeVkData(seed = 1) {
1096
+ return new VkData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
1053
1097
  }
1054
1098
 
1055
- function makePrivateTubeData(seed = 1, kernelPublicInputs?: PrivateToRollupKernelCircuitPublicInputs) {
1056
- return new PrivateTubeData(
1057
- kernelPublicInputs ?? makePrivateToRollupKernelCircuitPublicInputs(seed, true),
1058
- makeRecursiveProof<typeof TUBE_PROOF_LENGTH>(TUBE_PROOF_LENGTH, seed + 0x100),
1059
- makeVkWitnessData(seed + 0x200),
1099
+ export function makeProofData<T extends Bufferable, PROOF_LENGTH extends number>(
1100
+ seed = 0,
1101
+ makePublicInputs: (seed: number) => T,
1102
+ proofSize: PROOF_LENGTH = NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH as PROOF_LENGTH,
1103
+ ) {
1104
+ return new ProofData(
1105
+ makePublicInputs(seed),
1106
+ makeRecursiveProof<PROOF_LENGTH>(proofSize, seed + 0x100),
1107
+ makeVkData(seed + 0x200),
1060
1108
  );
1061
1109
  }
1062
1110
 
1111
+ function makeProofDataForFixedVk<T extends Bufferable, PROOF_LENGTH extends number>(
1112
+ seed = 0,
1113
+ makePublicInputs: (seed: number) => T,
1114
+ proofSize: PROOF_LENGTH = NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH as PROOF_LENGTH,
1115
+ ) {
1116
+ return new ProofDataForFixedVk(makePublicInputs(seed), makeRecursiveProof<PROOF_LENGTH>(proofSize, seed + 0x100));
1117
+ }
1118
+
1119
+ function makeContractClassLogFields(seed = 1) {
1120
+ return new ContractClassLogFields(makeArray(CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, fr, seed));
1121
+ }
1122
+
1063
1123
  function makePrivateBaseRollupHints(seed = 1) {
1064
1124
  const start = makePartialStateReference(seed + 0x100);
1065
1125
 
1066
1126
  const startSpongeBlob = makeSpongeBlob(seed + 0x200);
1067
1127
 
1068
- const stateDiffHints = makePrivateBaseStateDiffHints(seed + 0x600);
1128
+ const treeSnapshotDiffHints = makeTreeSnapshotDiffHints(seed + 0x600);
1069
1129
 
1070
- const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
1130
+ const anchorBlockArchiveSiblingPath = makeSiblingPath(seed + 0x9000, ARCHIVE_HEIGHT);
1071
1131
 
1072
- const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
1132
+ const contractClassLogsFields = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x800);
1073
1133
 
1074
- const constants = makeConstantRollupData(0x100);
1134
+ const constants = makeBlockConstantData(0x100);
1075
1135
 
1076
- const feePayerFeeJuiceBalanceReadHint = PublicDataHint.empty();
1136
+ const feePayerBalanceLeafPreimage = PublicDataTreeLeafPreimage.empty();
1077
1137
 
1078
1138
  return PrivateBaseRollupHints.from({
1079
1139
  start,
1080
1140
  startSpongeBlob,
1081
- stateDiffHints,
1082
- feePayerFeeJuiceBalanceReadHint,
1083
- archiveRootMembershipWitness,
1084
- contractClassLogsPreimages,
1141
+ treeSnapshotDiffHints,
1142
+ feePayerBalanceLeafPreimage,
1143
+ anchorBlockArchiveSiblingPath,
1144
+ contractClassLogsFields,
1085
1145
  constants,
1086
1146
  });
1087
1147
  }
1088
1148
 
1089
1149
  function makePublicBaseRollupHints(seed = 1) {
1090
- const startSpongeBlob = makeSpongeBlob(seed + 0x200);
1091
-
1092
- const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
1093
-
1094
- const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
1095
-
1096
- const constants = makeConstantRollupData(0x100);
1097
-
1098
1150
  return PublicBaseRollupHints.from({
1099
- startSpongeBlob,
1100
- archiveRootMembershipWitness,
1101
- contractClassLogsPreimages,
1102
- constants,
1151
+ startSpongeBlob: makeSpongeBlob(seed),
1152
+ lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x1000),
1153
+ anchorBlockArchiveSiblingPath: makeSiblingPath(seed + 0x2000, ARCHIVE_HEIGHT),
1154
+ contractClassLogsFields: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLogFields, seed + 0x3000),
1103
1155
  });
1104
1156
  }
1105
1157
 
1106
- export function makePrivateBaseRollupInputs(seed = 0) {
1107
- const tubeData = makePrivateTubeData(seed);
1108
- const hints = makePrivateBaseRollupHints(seed + 0x100);
1109
-
1110
- return PrivateBaseRollupInputs.from({
1111
- tubeData,
1112
- hints,
1158
+ export function makePrivateTxBaseRollupPrivateInputs(seed = 0) {
1159
+ return PrivateTxBaseRollupPrivateInputs.from({
1160
+ hidingKernelProofData: makeProofData(seed, makePrivateToRollupKernelCircuitPublicInputs, CHONK_PROOF_LENGTH),
1161
+ hints: makePrivateBaseRollupHints(seed + 0x100),
1113
1162
  });
1114
1163
  }
1115
1164
 
1116
- function makePublicTubeData(seed = 1) {
1117
- return new PublicTubeData(
1118
- makePrivateToPublicKernelCircuitPublicInputs(seed),
1119
- makeRecursiveProof<typeof TUBE_PROOF_LENGTH>(TUBE_PROOF_LENGTH, seed + 0x100),
1120
- makeVkWitnessData(seed + 0x200),
1165
+ export function makePublicTxBaseRollupPrivateInputs(seed = 0) {
1166
+ const publicChonkVerifierProofData = makeProofData(
1167
+ seed,
1168
+ makePublicChonkVerifierPublicInputs,
1169
+ RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
1121
1170
  );
1122
- }
1123
-
1124
- function makeAvmProofData(seed = 1) {
1125
- return new AvmProofData(
1126
- makeAvmCircuitPublicInputs(seed),
1127
- makeRecursiveProof<typeof AVM_PROOF_LENGTH_IN_FIELDS>(AVM_PROOF_LENGTH_IN_FIELDS, seed + 0x100),
1128
- makeVkWitnessData(seed + 0x200),
1171
+ const avmProofData = makeProofDataForFixedVk(
1172
+ seed + 0x100,
1173
+ makeAvmCircuitPublicInputs,
1174
+ AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
1129
1175
  );
1130
- }
1131
-
1132
- export function makePublicBaseRollupInputs(seed = 0) {
1133
- const tubeData = makePublicTubeData(seed);
1134
- const avmProofData = makeAvmProofData(seed + 0x100);
1135
1176
  const hints = makePublicBaseRollupHints(seed + 0x200);
1136
1177
 
1137
- return PublicBaseRollupInputs.from({
1138
- tubeData,
1178
+ return PublicTxBaseRollupPrivateInputs.from({
1179
+ publicChonkVerifierProofData,
1139
1180
  avmProofData,
1140
1181
  hints,
1141
1182
  });
@@ -1153,12 +1194,12 @@ export function makeExecutablePrivateFunctionWithMembershipProof(
1153
1194
  privateFunctionTreeLeafIndex: seed + 3,
1154
1195
  artifactMetadataHash: fr(seed + 4),
1155
1196
  functionMetadataHash: fr(seed + 5),
1156
- unconstrainedFunctionsArtifactTreeRoot: fr(seed + 6),
1197
+ utilityFunctionsTreeRoot: fr(seed + 6),
1157
1198
  vkHash: fr(seed + 7),
1158
1199
  };
1159
1200
  }
1160
1201
 
1161
- export function makeUnconstrainedFunctionWithMembershipProof(seed = 0): UnconstrainedFunctionWithMembershipProof {
1202
+ export function makeUtilityFunctionWithMembershipProof(seed = 0): UtilityFunctionWithMembershipProof {
1162
1203
  return {
1163
1204
  selector: makeSelector(seed),
1164
1205
  bytecode: makeBytes(100, seed + 1),
@@ -1170,16 +1211,10 @@ export function makeUnconstrainedFunctionWithMembershipProof(seed = 0): Unconstr
1170
1211
  };
1171
1212
  }
1172
1213
 
1173
- export async function makeContractClassPublic(
1174
- seed = 0,
1175
- publicDispatchFunction?: PublicFunction,
1176
- ): Promise<ContractClassPublic> {
1214
+ export async function makeContractClassPublic(seed = 0, publicBytecode?: Buffer): Promise<ContractClassPublic> {
1177
1215
  const artifactHash = fr(seed + 1);
1178
- const publicFunctions = publicDispatchFunction
1179
- ? [publicDispatchFunction]
1180
- : makeTuple(1, makeContractClassPublicFunction, seed + 2);
1181
1216
  const privateFunctionsRoot = fr(seed + 3);
1182
- const packedBytecode = publicDispatchFunction?.bytecode ?? makeBytes(100, seed + 4);
1217
+ const packedBytecode = publicBytecode ?? makeBytes(100, seed + 4);
1183
1218
  const publicBytecodeCommitment = await computePublicBytecodeCommitment(packedBytecode);
1184
1219
  const id = await computeContractClassId({ artifactHash, privateFunctionsRoot, publicBytecodeCommitment });
1185
1220
  return {
@@ -1187,20 +1222,12 @@ export async function makeContractClassPublic(
1187
1222
  artifactHash,
1188
1223
  packedBytecode,
1189
1224
  privateFunctionsRoot,
1190
- publicFunctions,
1191
1225
  privateFunctions: [],
1192
- unconstrainedFunctions: [],
1226
+ utilityFunctions: [],
1193
1227
  version: 1,
1194
1228
  };
1195
1229
  }
1196
1230
 
1197
- function makeContractClassPublicFunction(seed = 0): PublicFunction {
1198
- return {
1199
- selector: FunctionSelector.fromField(fr(seed + 1)),
1200
- bytecode: makeBytes(100, seed + 2),
1201
- };
1202
- }
1203
-
1204
1231
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
1205
1232
  function makeContractClassPrivateFunction(seed = 0): PrivateFunction {
1206
1233
  return {
@@ -1237,13 +1264,10 @@ export async function makeMapAsync<T>(size: number, fn: (i: number) => Promise<[
1237
1264
  return new Map(await makeArrayAsync(size, i => fn(i + offset)));
1238
1265
  }
1239
1266
 
1240
- export function makePublicKeys(seed = 0): PublicKeys {
1241
- return new PublicKeys(
1242
- new Point(new Fr(seed + 0), new Fr(seed + 1), false),
1243
- new Point(new Fr(seed + 2), new Fr(seed + 3), false),
1244
- new Point(new Fr(seed + 4), new Fr(seed + 5), false),
1245
- new Point(new Fr(seed + 6), new Fr(seed + 7), false),
1246
- );
1267
+ export async function makePublicKeys(seed = 0): Promise<PublicKeys> {
1268
+ const f = (offset: number) => Grumpkin.mul(Grumpkin.generator, new Fq(seed + offset));
1269
+
1270
+ return new PublicKeys(await f(0), await f(1), await f(2), await f(3));
1247
1271
  }
1248
1272
 
1249
1273
  export async function makeContractInstanceFromClassId(
@@ -1259,7 +1283,7 @@ export async function makeContractInstanceFromClassId(
1259
1283
  const salt = new Fr(seed);
1260
1284
  const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
1261
1285
  const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
1262
- const publicKeys = overrides?.publicKeys ?? makePublicKeys(seed + 3);
1286
+ const publicKeys = overrides?.publicKeys ?? (await makePublicKeys(seed + 3));
1263
1287
 
1264
1288
  const saltedInitializationHash = await poseidon2HashWithSeparator(
1265
1289
  [salt, initializationHash, deployer],
@@ -1281,51 +1305,162 @@ export async function makeContractInstanceFromClassId(
1281
1305
  }).withAddress(address);
1282
1306
  }
1283
1307
 
1284
- export function makeAvmTreeHints(seed = 0): AvmAppendTreeHint {
1285
- return new AvmAppendTreeHint(
1286
- new Fr(seed),
1287
- new Fr(seed + 1),
1288
- makeArray(10, i => new Fr(i), seed + 0x1000),
1308
+ export function makeAvmGetSiblingPathHint(seed = 0): AvmGetSiblingPathHint {
1309
+ // We want a possibly large index, but non-random.
1310
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
1311
+ return new AvmGetSiblingPathHint(
1312
+ makeAppendOnlyTreeSnapshot(seed),
1313
+ /*treeId=*/ (seed + 1) % 5,
1314
+ /*index=*/ index,
1315
+ makeArray(seed % 64, i => new Fr(i), seed + 10),
1289
1316
  );
1290
1317
  }
1291
1318
 
1292
- export function makeAvmNullifierReadTreeHints(seed = 0): AvmNullifierReadTreeHint {
1293
- const lowNullifierPreimage = new NullifierLeafPreimage(new Fr(seed), new Fr(seed + 1), BigInt(seed + 2));
1294
- return new AvmNullifierReadTreeHint(
1295
- lowNullifierPreimage,
1296
- new Fr(seed + 1),
1297
- makeArray(10, i => new Fr(i), seed + 0x1000),
1319
+ export function makeAvmGetPreviousValueIndexHint(seed = 0): AvmGetPreviousValueIndexHint {
1320
+ // We want a possibly large index, but non-random.
1321
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
1322
+ const value = new Fr(BigInt(`0x${sha256(Buffer.from((seed + 2).toString())).toString('hex')}`) % (1n << 128n));
1323
+ return new AvmGetPreviousValueIndexHint(
1324
+ makeAppendOnlyTreeSnapshot(seed),
1325
+ /*treeId=*/ (seed + 1) % 5,
1326
+ value,
1327
+ index,
1328
+ /*alreadyPresent=*/ index % 2n === 0n,
1298
1329
  );
1299
1330
  }
1300
1331
 
1301
- export function makeAvmPublicDataReadTreeHints(seed = 0): AvmPublicDataReadTreeHint {
1302
- return new AvmPublicDataReadTreeHint(
1303
- new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1304
- new Fr(seed + 1),
1305
- makeArray(10, i => new Fr(i), seed + 0x1000),
1332
+ export function makeAvmGetLeafPreimageHintPublicDataTree(seed = 0): AvmGetLeafPreimageHintPublicDataTree {
1333
+ // We want a possibly large index, but non-random.
1334
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
1335
+ return new AvmGetLeafPreimageHintPublicDataTree(
1336
+ makeAppendOnlyTreeSnapshot(seed),
1337
+ /*index=*/ index,
1338
+ /*leafPreimage=*/ makePublicDataTreeLeafPreimage(seed + 3),
1306
1339
  );
1307
1340
  }
1308
1341
 
1309
- export function makeAvmNullifierInsertionTreeHints(seed = 0): AvmNullifierWriteTreeHint {
1310
- return new AvmNullifierWriteTreeHint(
1311
- makeAvmNullifierReadTreeHints(seed),
1312
- makeArray(20, i => new Fr(i), seed + 0x1000),
1342
+ export function makeAvmGetLeafPreimageHintNullifierTree(seed = 0): AvmGetLeafPreimageHintNullifierTree {
1343
+ // We want a possibly large index, but non-random.
1344
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
1345
+ return new AvmGetLeafPreimageHintNullifierTree(
1346
+ makeAppendOnlyTreeSnapshot(seed),
1347
+ /*index=*/ index,
1348
+ /*leafPreimage=*/ makeNullifierLeafPreimage(seed + 3),
1313
1349
  );
1314
1350
  }
1315
1351
 
1316
- export function makeAvmStorageReadTreeHints(seed = 0): AvmPublicDataReadTreeHint {
1317
- return new AvmPublicDataReadTreeHint(
1318
- new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1319
- new Fr(seed + 1),
1320
- makeArray(10, i => new Fr(i), seed + 0x1000),
1352
+ export function makeAvmGetLeafValueHint(seed = 0): AvmGetLeafValueHint {
1353
+ // We want a possibly large index, but non-random.
1354
+ const index = BigInt(`0x${sha256(Buffer.from(seed.toString())).toString('hex')}`) % (1n << 64n);
1355
+ return new AvmGetLeafValueHint(
1356
+ makeAppendOnlyTreeSnapshot(seed),
1357
+ /*treeId=*/ (seed + 1) % 5,
1358
+ /*index=*/ index,
1359
+ /*value=*/ new Fr(seed + 3),
1321
1360
  );
1322
1361
  }
1323
1362
 
1324
- export function makeAvmStorageUpdateTreeHints(seed = 0): AvmPublicDataWriteTreeHint {
1325
- return new AvmPublicDataWriteTreeHint(
1326
- makeAvmStorageReadTreeHints(seed),
1327
- new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1328
- makeArray(20, i => new Fr(i), seed + 0x1000),
1363
+ export function makeAvmSequentialInsertHintPublicDataTree(seed = 0): AvmSequentialInsertHintPublicDataTree {
1364
+ const lowLeavesWitnessData = {
1365
+ leaf: makePublicDataTreeLeafPreimage(seed + 3),
1366
+ index: BigInt(seed + 4),
1367
+ path: makeArray(seed % 64, i => new Fr(i), seed + 5),
1368
+ };
1369
+ const insertionWitnessData = {
1370
+ leaf: makePublicDataTreeLeafPreimage(seed + 6),
1371
+ index: BigInt(seed + 7),
1372
+ path: makeArray(seed % 64, i => new Fr(i), seed + 8),
1373
+ };
1374
+
1375
+ return new AvmSequentialInsertHintPublicDataTree(
1376
+ makeAppendOnlyTreeSnapshot(seed),
1377
+ makeAppendOnlyTreeSnapshot(seed + 1),
1378
+ MerkleTreeId.PUBLIC_DATA_TREE,
1379
+ makePublicDataTreeLeaf(seed + 2),
1380
+ lowLeavesWitnessData,
1381
+ insertionWitnessData,
1382
+ );
1383
+ }
1384
+
1385
+ export function makeAvmSequentialInsertHintNullifierTree(seed = 0): AvmSequentialInsertHintNullifierTree {
1386
+ const lowLeavesWitnessData = {
1387
+ leaf: makeNullifierLeafPreimage(seed + 3),
1388
+ index: BigInt(seed + 4),
1389
+ path: makeArray(seed % 64, i => new Fr(i), seed + 5),
1390
+ };
1391
+ const insertionWitnessData = {
1392
+ leaf: makeNullifierLeafPreimage(seed + 6),
1393
+ index: BigInt(seed + 7),
1394
+ path: makeArray(seed % 64, i => new Fr(i), seed + 8),
1395
+ };
1396
+
1397
+ return new AvmSequentialInsertHintNullifierTree(
1398
+ makeAppendOnlyTreeSnapshot(seed),
1399
+ makeAppendOnlyTreeSnapshot(seed + 1),
1400
+ MerkleTreeId.NULLIFIER_TREE,
1401
+ makeNullifierLeaf(seed + 2),
1402
+ lowLeavesWitnessData,
1403
+ insertionWitnessData,
1404
+ );
1405
+ }
1406
+
1407
+ export function makeAvmAppendLeavesHint(seed = 0): AvmAppendLeavesHint {
1408
+ return new AvmAppendLeavesHint(
1409
+ makeAppendOnlyTreeSnapshot(seed),
1410
+ makeAppendOnlyTreeSnapshot(seed + 1),
1411
+ // Use NOTE_HASH_TREE or L1_TO_L2_MESSAGE_TREE as mentioned in the comment on AvmAppendLeavesHint
1412
+ seed % 2 === 0 ? MerkleTreeId.NOTE_HASH_TREE : MerkleTreeId.L1_TO_L2_MESSAGE_TREE,
1413
+ makeArray((seed % 5) + 1, i => new Fr(seed + i + 2), 0),
1414
+ );
1415
+ }
1416
+
1417
+ export function makeAvmCheckpointActionCreateCheckpointHint(seed = 0): AvmCreateCheckpointHint {
1418
+ return new AvmCreateCheckpointHint(
1419
+ /*actionCounter=*/ seed,
1420
+ /*oldCheckpointId=*/ seed + 1,
1421
+ /*newCheckpointId=*/ seed + 2,
1422
+ );
1423
+ }
1424
+
1425
+ export function makeAvmCheckpointActionCommitCheckpointHint(seed = 0): AvmCommitCheckpointHint {
1426
+ return new AvmCommitCheckpointHint(
1427
+ /*actionCounter=*/ seed,
1428
+ /*oldCheckpointId=*/ seed + 1,
1429
+ /*newCheckpointId=*/ seed + 2,
1430
+ );
1431
+ }
1432
+
1433
+ export function makeAvmCheckpointActionRevertCheckpointHint(seed = 0): AvmRevertCheckpointHint {
1434
+ return new AvmRevertCheckpointHint(
1435
+ /*actionCounter=*/ seed,
1436
+ /*oldCheckpointId=*/ seed + 1,
1437
+ /*newCheckpointId=*/ seed + 2,
1438
+ /*beforeState=*/ makeTreeSnapshots(seed + 3),
1439
+ /*afterState=*/ makeTreeSnapshots(seed + 7),
1440
+ );
1441
+ }
1442
+
1443
+ export function makeAvmContractDbCheckpointActionCreateCheckpointHint(seed = 0): AvmContractDbCreateCheckpointHint {
1444
+ return new AvmContractDbCreateCheckpointHint(
1445
+ /*actionCounter=*/ seed,
1446
+ /*oldCheckpointId=*/ seed + 1,
1447
+ /*newCheckpointId=*/ seed + 2,
1448
+ );
1449
+ }
1450
+
1451
+ export function makeAvmContractDbCheckpointActionCommitCheckpointHint(seed = 0): AvmContractDbCommitCheckpointHint {
1452
+ return new AvmContractDbCommitCheckpointHint(
1453
+ /*actionCounter=*/ seed,
1454
+ /*oldCheckpointId=*/ seed + 1,
1455
+ /*newCheckpointId=*/ seed + 2,
1456
+ );
1457
+ }
1458
+
1459
+ export function makeAvmContractDbCheckpointActionRevertCheckpointHint(seed = 0): AvmContractDbRevertCheckpointHint {
1460
+ return new AvmContractDbRevertCheckpointHint(
1461
+ /*actionCounter=*/ seed,
1462
+ /*oldCheckpointId=*/ seed + 1,
1463
+ /*newCheckpointId=*/ seed + 2,
1329
1464
  );
1330
1465
  }
1331
1466
 
@@ -1336,8 +1471,8 @@ export function makeAvmStorageUpdateTreeHints(seed = 0): AvmPublicDataWriteTreeH
1336
1471
  */
1337
1472
  export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
1338
1473
  return new AvmContractInstanceHint(
1474
+ seed,
1339
1475
  new AztecAddress(new Fr(seed)),
1340
- true /* exists */,
1341
1476
  new Fr(seed + 0x2),
1342
1477
  new AztecAddress(new Fr(seed + 0x3)),
1343
1478
  new Fr(seed + 0x4),
@@ -1349,31 +1484,77 @@ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
1349
1484
  new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false),
1350
1485
  new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false),
1351
1486
  ),
1352
- makeAvmPublicDataReadTreeHints(seed + 0x2000),
1353
- makeArray(4, i => new Fr(i), seed + 0x3000),
1354
1487
  );
1355
1488
  }
1356
1489
 
1490
+ /**
1491
+ * Makes arbitrary AvmDebugFunctionNameHint.
1492
+ * @param seed - The seed to use for generating the hint.
1493
+ * @returns AvmDebugFunctionNameHint.
1494
+ */
1495
+ export function makeAvmDebugFunctionNameHint(seed = 0): AvmDebugFunctionNameHint {
1496
+ return new AvmDebugFunctionNameHint(new AztecAddress(new Fr(seed)), new Fr(seed + 0x2), `function-${seed}`);
1497
+ }
1498
+
1357
1499
  /* Makes arbitrary AvmContractClassHint.
1358
1500
  * @param seed - The seed to use for generating the state reference.
1359
1501
  * @returns AvmContractClassHint.
1360
1502
  */
1361
- export async function makeAvmContractClassHint(seed = 0): Promise<AvmContractClassHint> {
1503
+ export function makeAvmContractClassHint(seed = 0): AvmContractClassHint {
1362
1504
  const bytecode = makeBytes(32, seed + 0x5);
1363
- return new AvmContractClassHint(
1364
- new Fr(seed),
1365
- true /* exists */,
1366
- new Fr(seed + 0x2),
1367
- new Fr(seed + 0x3),
1368
- await computePublicBytecodeCommitment(bytecode),
1369
- bytecode,
1370
- );
1505
+ return new AvmContractClassHint(seed, new Fr(seed), new Fr(seed + 0x2), new Fr(seed + 0x3), bytecode);
1371
1506
  }
1372
1507
 
1373
- export function makeAvmEnqueuedCallHint(seed = 0): AvmEnqueuedCallHint {
1374
- return new AvmEnqueuedCallHint(
1508
+ export async function makeAvmBytecodeCommitmentHint(seed = 0): Promise<AvmBytecodeCommitmentHint> {
1509
+ const classId = new Fr(seed + 2);
1510
+ const bytecode = makeBytes(32, seed + 0x5);
1511
+ return new AvmBytecodeCommitmentHint(seed, classId, await computePublicBytecodeCommitment(bytecode));
1512
+ }
1513
+
1514
+ export async function makePublicCallRequestWithCalldata(seed = 0): Promise<PublicCallRequestWithCalldata> {
1515
+ const calldata = makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x1000);
1516
+ const calldataHash = await computeCalldataHash(calldata);
1517
+ const publicCallRequest = new PublicCallRequest(
1375
1518
  new AztecAddress(new Fr(seed)),
1376
- makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x1000),
1519
+ new AztecAddress(new Fr(seed + 1)),
1520
+ false /*isStatic*/,
1521
+ calldataHash,
1522
+ );
1523
+ return new PublicCallRequestWithCalldata(publicCallRequest, calldata);
1524
+ }
1525
+
1526
+ export function makeContractClassLog(seed = 0): ContractClassLog {
1527
+ return new ContractClassLog(makeAztecAddress(seed + 0x1000), makeContractClassLogFields(seed + 0x2000), seed % 20);
1528
+ }
1529
+
1530
+ export function makeContractDeploymentData(seed = 0): ContractDeploymentData {
1531
+ const contractClassLogs = makeArray(seed % 20, i => makeContractClassLog(i), seed + 0x1000);
1532
+ const privateLogs = makeArray(seed % 20, i => makePrivateLog(i), seed + 0x2000);
1533
+ return new ContractDeploymentData(contractClassLogs, privateLogs);
1534
+ }
1535
+
1536
+ export async function makeAvmTxHint(seed = 0): Promise<AvmTxHint> {
1537
+ return new AvmTxHint(
1538
+ `txhash-${seed}`,
1539
+ makeGasSettings(),
1540
+ makeGasFees(seed + 0x1000),
1541
+ makeContractDeploymentData(seed + 0x2000),
1542
+ makeContractDeploymentData(seed + 0x3000),
1543
+ {
1544
+ noteHashes: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x1000),
1545
+ nullifiers: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x2000),
1546
+ l2ToL1Messages: makeArray((seed % 20) + 4, i => makeScopedL2ToL1Message(i), seed + 0x3000),
1547
+ },
1548
+ {
1549
+ noteHashes: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x3000),
1550
+ nullifiers: makeArray((seed % 20) + 4, i => new Fr(i), seed + 0x4000),
1551
+ l2ToL1Messages: makeArray((seed % 20) + 4, i => makeScopedL2ToL1Message(i), seed + 0x5000),
1552
+ },
1553
+ await makeArrayAsync((seed % 20) + 4, i => makePublicCallRequestWithCalldata(i), seed + 0x5000), //setupEnqueuedCalls
1554
+ await makeArrayAsync((seed % 20) + 4, i => makePublicCallRequestWithCalldata(i), seed + 0x6000), // appLogicEnqueuedCalls
1555
+ await makePublicCallRequestWithCalldata(seed + 0x7000), // teardownEnqueuedCall
1556
+ makeGas(seed + 0x8000), // gasUsedByPrivate
1557
+ makeAztecAddress(seed + 0x9000), // feePayer
1377
1558
  );
1378
1559
  }
1379
1560
 
@@ -1391,30 +1572,78 @@ export async function makeAvmExecutionHints(
1391
1572
  const baseLength = lengthOffset + (seed % lengthSeedMod);
1392
1573
 
1393
1574
  const fields = {
1394
- enqueuedCalls: makeArray(baseLength, makeAvmEnqueuedCallHint, seed + 0x4100),
1395
- contractInstances: makeArray(baseLength + 5, makeAvmContractInstanceHint, seed + 0x4700),
1396
- contractClasses: await makeArrayAsync(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
1397
- publicDataReads: makeArray(baseLength + 7, makeAvmStorageReadTreeHints, seed + 0x4900),
1398
- publicDataWrites: makeArray(baseLength + 8, makeAvmStorageUpdateTreeHints, seed + 0x4a00),
1399
- nullifierReads: makeArray(baseLength + 9, makeAvmNullifierReadTreeHints, seed + 0x4b00),
1400
- nullifierWrites: makeArray(baseLength + 10, makeAvmNullifierInsertionTreeHints, seed + 0x4c00),
1401
- noteHashReads: makeArray(baseLength + 11, makeAvmTreeHints, seed + 0x4d00),
1402
- noteHashWrites: makeArray(baseLength + 12, makeAvmTreeHints, seed + 0x4e00),
1403
- l1ToL2MessageReads: makeArray(baseLength + 13, makeAvmTreeHints, seed + 0x4f00),
1575
+ globalVariables: makeGlobalVariables(seed + 0x4000),
1576
+ tx: await makeAvmTxHint(seed + 0x4100),
1577
+ protocolContracts: new ProtocolContracts(makeTuple(MAX_PROTOCOL_CONTRACTS, makeAztecAddress, seed + 0x4600)),
1578
+ contractInstances: makeArray(baseLength + 2, makeAvmContractInstanceHint, seed + 0x4700),
1579
+ contractClasses: makeArray(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
1580
+ bytecodeCommitments: await makeArrayAsync(baseLength + 5, makeAvmBytecodeCommitmentHint, seed + 0x4900),
1581
+ debugFunctionNames: makeArray(baseLength + 5, makeAvmDebugFunctionNameHint, seed + 0x4a00),
1582
+ contractDbCreateCheckpointHints: makeArray(
1583
+ baseLength + 5,
1584
+ makeAvmContractDbCheckpointActionCreateCheckpointHint,
1585
+ seed + 0x5900,
1586
+ ),
1587
+ contractDbCommitCheckpointHints: makeArray(
1588
+ baseLength + 5,
1589
+ makeAvmContractDbCheckpointActionCommitCheckpointHint,
1590
+ seed + 0x5b00,
1591
+ ),
1592
+ contractDbRevertCheckpointHints: makeArray(
1593
+ baseLength + 5,
1594
+ makeAvmContractDbCheckpointActionRevertCheckpointHint,
1595
+ seed + 0x5d00,
1596
+ ),
1597
+ startingTreeRoots: makeTreeSnapshots(seed + 0x4900),
1598
+ getSiblingPathHints: makeArray(baseLength + 5, makeAvmGetSiblingPathHint, seed + 0x4b00),
1599
+ getPreviousValueIndexHints: makeArray(baseLength + 5, makeAvmGetPreviousValueIndexHint, seed + 0x4d00),
1600
+ getLeafPreimageHintPublicDataTree: makeArray(
1601
+ baseLength + 5,
1602
+ makeAvmGetLeafPreimageHintPublicDataTree,
1603
+ seed + 0x4f00,
1604
+ ),
1605
+ getLeafPreimageHintNullifierTree: makeArray(baseLength + 5, makeAvmGetLeafPreimageHintNullifierTree, seed + 0x5100),
1606
+ getLeafValueHints: makeArray(baseLength + 5, makeAvmGetLeafValueHint, seed + 0x5300),
1607
+ sequentialInsertHintsPublicDataTree: makeArray(
1608
+ baseLength + 5,
1609
+ makeAvmSequentialInsertHintPublicDataTree,
1610
+ seed + 0x5500,
1611
+ ),
1612
+ sequentialInsertHintsNullifierTree: makeArray(
1613
+ baseLength + 5,
1614
+ makeAvmSequentialInsertHintNullifierTree,
1615
+ seed + 0x5700,
1616
+ ),
1617
+ appendLeavesHints: makeArray(baseLength + 5, makeAvmAppendLeavesHint, seed + 0x5800),
1618
+ createCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCreateCheckpointHint, seed + 0x5900),
1619
+ commitCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionCommitCheckpointHint, seed + 0x5b00),
1620
+ revertCheckpointHints: makeArray(baseLength + 5, makeAvmCheckpointActionRevertCheckpointHint, seed + 0x5d00),
1404
1621
  ...overrides,
1405
1622
  };
1406
1623
 
1407
1624
  return new AvmExecutionHints(
1408
- fields.enqueuedCalls,
1625
+ fields.globalVariables,
1626
+ fields.tx,
1627
+ fields.protocolContracts,
1409
1628
  fields.contractInstances,
1410
1629
  fields.contractClasses,
1411
- fields.publicDataReads,
1412
- fields.publicDataWrites,
1413
- fields.nullifierReads,
1414
- fields.nullifierWrites,
1415
- fields.noteHashReads,
1416
- fields.noteHashWrites,
1417
- fields.l1ToL2MessageReads,
1630
+ fields.bytecodeCommitments,
1631
+ fields.debugFunctionNames,
1632
+ fields.contractDbCreateCheckpointHints,
1633
+ fields.contractDbCommitCheckpointHints,
1634
+ fields.contractDbRevertCheckpointHints,
1635
+ fields.startingTreeRoots,
1636
+ fields.getSiblingPathHints,
1637
+ fields.getPreviousValueIndexHints,
1638
+ fields.getLeafPreimageHintPublicDataTree,
1639
+ fields.getLeafPreimageHintNullifierTree,
1640
+ fields.getLeafValueHints,
1641
+ fields.sequentialInsertHintsPublicDataTree,
1642
+ fields.sequentialInsertHintsNullifierTree,
1643
+ fields.appendLeavesHints,
1644
+ fields.createCheckpointHints,
1645
+ fields.commitCheckpointHints,
1646
+ fields.revertCheckpointHints,
1418
1647
  );
1419
1648
  }
1420
1649
 
@@ -1428,14 +1657,12 @@ export async function makeAvmCircuitInputs(
1428
1657
  overrides: Partial<FieldsOf<AvmCircuitInputs>> = {},
1429
1658
  ): Promise<AvmCircuitInputs> {
1430
1659
  const fields = {
1431
- functionName: `function${seed}`,
1432
- calldata: makeArray((seed % 100) + 10, i => new Fr(i), seed + 0x1000),
1433
- avmHints: await makeAvmExecutionHints(seed + 0x3000),
1660
+ hints: await makeAvmExecutionHints(seed + 0x3000),
1434
1661
  publicInputs: makeAvmCircuitPublicInputs(seed + 0x4000),
1435
1662
  ...overrides,
1436
1663
  };
1437
1664
 
1438
- return new AvmCircuitInputs(fields.functionName, fields.calldata, fields.avmHints, fields.publicInputs);
1665
+ return new AvmCircuitInputs(fields.hints, fields.publicInputs);
1439
1666
  }
1440
1667
 
1441
1668
  /**
@@ -1448,117 +1675,85 @@ export function fr(n: number): Fr {
1448
1675
  return new Fr(BigInt(n));
1449
1676
  }
1450
1677
 
1451
- /** Makes a bloated processed tx for testing purposes. */
1452
- export async function makeBloatedProcessedTx({
1453
- seed = 1,
1454
- header,
1455
- db,
1456
- chainId = Fr.ZERO,
1457
- version = Fr.ZERO,
1458
- gasSettings = GasSettings.default({ maxFeesPerGas: new GasFees(10, 10) }),
1459
- vkTreeRoot = Fr.ZERO,
1460
- protocolContractTreeRoot = Fr.ZERO,
1461
- globalVariables = GlobalVariables.empty(),
1462
- feePayer,
1463
- feePaymentPublicDataWrite,
1464
- privateOnly = false,
1465
- }: {
1466
- seed?: number;
1467
- header?: BlockHeader;
1468
- db?: MerkleTreeReadOperations;
1469
- chainId?: Fr;
1470
- version?: Fr;
1471
- gasSettings?: GasSettings;
1472
- vkTreeRoot?: Fr;
1473
- globalVariables?: GlobalVariables;
1474
- protocolContractTreeRoot?: Fr;
1475
- feePayer?: AztecAddress;
1476
- feePaymentPublicDataWrite?: PublicDataWrite;
1477
- privateOnly?: boolean;
1478
- } = {}) {
1479
- seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
1480
- header ??= db?.getInitialHeader() ?? makeHeader(seed);
1481
- feePayer ??= await AztecAddress.random();
1482
-
1483
- const txConstantData = TxConstantData.empty();
1484
- txConstantData.historicalHeader = header!;
1485
- txConstantData.txContext.chainId = chainId;
1486
- txConstantData.txContext.version = version;
1487
- txConstantData.txContext.gasSettings = gasSettings;
1488
- txConstantData.vkTreeRoot = vkTreeRoot;
1489
- txConstantData.protocolContractTreeRoot = protocolContractTreeRoot;
1490
-
1491
- const tx = !privateOnly
1492
- ? await mockTx(seed, { feePayer })
1493
- : await mockTx(seed, {
1494
- numberOfNonRevertiblePublicCallRequests: 0,
1495
- numberOfRevertiblePublicCallRequests: 0,
1496
- feePayer,
1497
- });
1498
- tx.data.constants = txConstantData;
1499
-
1500
- // No side effects were created in mockTx. The default gasUsed is the tx overhead.
1501
- tx.data.gasUsed = Gas.from({ daGas: FIXED_DA_GAS, l2Gas: FIXED_L2_GAS });
1502
-
1503
- if (privateOnly) {
1504
- const data = makePrivateToRollupAccumulatedData(seed + 0x1000);
1505
-
1506
- const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
1507
- feePaymentPublicDataWrite ??= new PublicDataWrite(Fr.random(), Fr.random());
1508
-
1509
- clearLogs(data);
1510
-
1511
- tx.data.forRollup!.end = data;
1512
-
1513
- return makeProcessedTxFromPrivateOnlyTx(tx, transactionFee, feePaymentPublicDataWrite, globalVariables);
1514
- } else {
1515
- const nonRevertibleData = tx.data.forPublic!.nonRevertibleAccumulatedData;
1516
- const revertibleData = makePrivateToPublicAccumulatedData(seed + 0x1000);
1517
-
1518
- revertibleData.nullifiers[MAX_NULLIFIERS_PER_TX - 1] = Fr.ZERO; // Leave one space for the tx hash nullifier in nonRevertibleAccumulatedData.
1519
-
1520
- clearLogs(revertibleData);
1521
-
1522
- tx.data.forPublic!.revertibleAccumulatedData = revertibleData;
1523
-
1524
- const avmOutput = AvmCircuitPublicInputs.empty();
1525
- avmOutput.globalVariables = globalVariables;
1526
- avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
1527
- avmOutput.accumulatedData.nullifiers = mergeAccumulatedData(
1528
- nonRevertibleData.nullifiers,
1529
- revertibleData.nullifiers,
1530
- MAX_NULLIFIERS_PER_TX,
1531
- );
1532
- avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
1533
- avmOutput.accumulatedData.publicDataWrites = makeTuple(
1534
- MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
1535
- i => new PublicDataWrite(new Fr(i), new Fr(i + 10)),
1536
- seed + 0x2000,
1537
- );
1538
-
1539
- const avmCircuitInputs = await makeAvmCircuitInputs(seed + 0x3000, { publicInputs: avmOutput });
1540
- const gasUsed = {
1541
- totalGas: Gas.empty(),
1542
- teardownGas: Gas.empty(),
1543
- publicGas: Gas.empty(),
1544
- billedGas: Gas.empty(),
1545
- } satisfies GasUsed;
1546
-
1547
- return makeProcessedTxFromTxWithPublicCalls(
1548
- tx,
1549
- {
1550
- type: ProvingRequestType.PUBLIC_VM,
1551
- inputs: avmCircuitInputs,
1552
- },
1553
- gasUsed,
1554
- RevertCode.OK,
1555
- undefined /* revertReason */,
1556
- );
1557
- }
1558
- }
1559
-
1560
- // 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.
1561
- function clearLogs(data: { publicLogs?: PublicLog[]; contractClassLogsHashes: ScopedLogHash[] }) {
1562
- data.publicLogs?.forEach((_, i) => (data.publicLogs![i] = PublicLog.empty()));
1563
- data.contractClassLogsHashes.forEach((_, i) => (data.contractClassLogsHashes[i] = ScopedLogHash.empty()));
1678
+ /**
1679
+ * Creates a random TxScopedL2Log with private log data.
1680
+ */
1681
+ export function randomTxScopedPrivateL2Log(opts?: {
1682
+ tag?: Fr;
1683
+ txHash?: TxHash;
1684
+ blockNumber?: number;
1685
+ blockTimestamp?: bigint;
1686
+ noteHashes?: Fr[];
1687
+ firstNullifier?: Fr;
1688
+ }) {
1689
+ const log = PrivateLog.random(opts?.tag);
1690
+ return new TxScopedL2Log(
1691
+ opts?.txHash ?? TxHash.random(),
1692
+ BlockNumber(opts?.blockNumber ?? 1),
1693
+ opts?.blockTimestamp ?? 1n,
1694
+ log.getEmittedFields(),
1695
+ opts?.noteHashes ?? [Fr.random(), Fr.random()],
1696
+ opts?.firstNullifier ?? Fr.random(),
1697
+ );
1698
+ }
1699
+
1700
+ /**
1701
+ * Creates a random TxScopedL2Log with public log data.
1702
+ */
1703
+ export async function randomTxScopedPublicL2Log(opts?: {
1704
+ txHash?: TxHash;
1705
+ blockNumber?: number;
1706
+ blockTimestamp?: bigint;
1707
+ noteHashes?: Fr[];
1708
+ firstNullifier?: Fr;
1709
+ }) {
1710
+ const log = await PublicLog.random();
1711
+ return new TxScopedL2Log(
1712
+ opts?.txHash ?? TxHash.random(),
1713
+ BlockNumber(opts?.blockNumber ?? 1),
1714
+ opts?.blockTimestamp ?? 1n,
1715
+ log.getEmittedFields(),
1716
+ opts?.noteHashes ?? [Fr.random(), Fr.random()],
1717
+ opts?.firstNullifier ?? Fr.random(),
1718
+ );
1719
+ }
1720
+
1721
+ /**
1722
+ * Creates L2Tips with all tips pointing to the same block number.
1723
+ * Useful for mocking aztecNode.getL2Tips() in tests.
1724
+ * @param blockNumber - The block number to use for all tips.
1725
+ * @param hash - Optional hash for the block (defaults to empty string).
1726
+ * @param checkpointNumber - Optional checkpoint number (defaults to blockNumber).
1727
+ * @param checkpointHash - Optional checkpoint hash (defaults to block hash).
1728
+ * @returns L2Tips object with all tips at the same block.
1729
+ */
1730
+ export function makeL2Tips(
1731
+ blockNumber: number | BlockNumber,
1732
+ hash = '',
1733
+ checkpointNumber?: number | CheckpointNumber,
1734
+ checkpointHash?: string,
1735
+ ): L2Tips {
1736
+ const bn = typeof blockNumber === 'number' ? BlockNumber(blockNumber) : blockNumber;
1737
+ const cpn =
1738
+ checkpointNumber !== undefined
1739
+ ? typeof checkpointNumber === 'number'
1740
+ ? CheckpointNumber(checkpointNumber)
1741
+ : checkpointNumber
1742
+ : CheckpointNumber.fromBlockNumber(bn);
1743
+ const cph = checkpointHash ?? hash;
1744
+ return {
1745
+ proposed: { number: bn, hash },
1746
+ checkpointed: {
1747
+ block: { number: bn, hash },
1748
+ checkpoint: { number: cpn, hash: cph },
1749
+ },
1750
+ proven: {
1751
+ block: { number: bn, hash },
1752
+ checkpoint: { number: cpn, hash: cph },
1753
+ },
1754
+ finalized: {
1755
+ block: { number: bn, hash },
1756
+ checkpoint: { number: cpn, hash: cph },
1757
+ },
1758
+ };
1564
1759
  }