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

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