@aztec/stdlib 4.0.0-nightly.20250907 → 4.0.0-nightly.20260107

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 (1307) hide show
  1. package/dest/abi/abi.d.ts +701 -118
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +10 -10
  4. package/dest/abi/authorization_selector.d.ts +2 -2
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/authorization_selector.js +2 -1
  7. package/dest/abi/buffer.d.ts +2 -2
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +1 -1
  11. package/dest/abi/contract_artifact.js +6 -3
  12. package/dest/abi/decoder.d.ts +2 -2
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.d.ts +2 -2
  15. package/dest/abi/encoder.d.ts.map +1 -1
  16. package/dest/abi/encoder.js +1 -1
  17. package/dest/abi/event_metadata_definition.d.ts +8 -0
  18. package/dest/abi/event_metadata_definition.d.ts.map +1 -0
  19. package/dest/abi/event_metadata_definition.js +1 -0
  20. package/dest/abi/event_selector.d.ts +2 -2
  21. package/dest/abi/event_selector.d.ts.map +1 -1
  22. package/dest/abi/event_selector.js +2 -1
  23. package/dest/abi/function_call.d.ts +8 -11
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +6 -2
  26. package/dest/abi/function_selector.d.ts +3 -2
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +9 -1
  29. package/dest/abi/index.d.ts +2 -1
  30. package/dest/abi/index.d.ts.map +1 -1
  31. package/dest/abi/index.js +1 -0
  32. package/dest/abi/mocked_keys.d.ts +1 -1
  33. package/dest/abi/note_selector.d.ts +2 -2
  34. package/dest/abi/note_selector.d.ts.map +1 -1
  35. package/dest/abi/note_selector.js +2 -2
  36. package/dest/abi/selector.d.ts +2 -2
  37. package/dest/abi/selector.d.ts.map +1 -1
  38. package/dest/abi/selector.js +4 -2
  39. package/dest/abi/utils.d.ts +1 -1
  40. package/dest/auth_witness/auth_witness.d.ts +2 -3
  41. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  42. package/dest/auth_witness/auth_witness.js +2 -2
  43. package/dest/auth_witness/index.d.ts +1 -1
  44. package/dest/avm/avm.d.ts +4275 -1872
  45. package/dest/avm/avm.d.ts.map +1 -1
  46. package/dest/avm/avm.js +597 -18
  47. package/dest/avm/avm_accumulated_data.d.ts +33 -55
  48. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  49. package/dest/avm/avm_accumulated_data.js +44 -26
  50. package/dest/avm/avm_circuit_public_inputs.d.ts +182 -153
  51. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.js +30 -8
  53. package/dest/avm/avm_proving_request.d.ts +2053 -1481
  54. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  55. package/dest/avm/contract_storage_read.d.ts +2 -14
  56. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  57. package/dest/avm/contract_storage_read.js +1 -1
  58. package/dest/avm/contract_storage_update_request.d.ts +2 -14
  59. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  60. package/dest/avm/contract_storage_update_request.js +1 -1
  61. package/dest/avm/index.d.ts +2 -2
  62. package/dest/avm/index.d.ts.map +1 -1
  63. package/dest/avm/index.js +1 -1
  64. package/dest/avm/message_pack.d.ts +2 -1
  65. package/dest/avm/message_pack.d.ts.map +1 -1
  66. package/dest/avm/message_pack.js +33 -6
  67. package/dest/avm/public_call_stack_item_compressed.d.ts +2 -4
  68. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  69. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  70. package/dest/avm/public_data_read.d.ts +2 -11
  71. package/dest/avm/public_data_read.d.ts.map +1 -1
  72. package/dest/avm/public_data_read.js +1 -1
  73. package/dest/avm/public_data_update_request.d.ts +2 -11
  74. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  75. package/dest/avm/public_data_update_request.js +4 -2
  76. package/dest/avm/public_data_write.d.ts +14 -12
  77. package/dest/avm/public_data_write.d.ts.map +1 -1
  78. package/dest/avm/public_data_write.js +10 -1
  79. package/dest/avm/public_inner_call_request.d.ts +2 -5
  80. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  81. package/dest/avm/public_inner_call_request.js +3 -1
  82. package/dest/avm/revert_code.d.ts +17 -8
  83. package/dest/avm/revert_code.d.ts.map +1 -1
  84. package/dest/avm/revert_code.js +28 -10
  85. package/dest/aztec-address/index.d.ts +12 -2
  86. package/dest/aztec-address/index.d.ts.map +1 -1
  87. package/dest/aztec-address/index.js +29 -4
  88. package/dest/block/attestation_info.d.ts +32 -0
  89. package/dest/block/attestation_info.d.ts.map +1 -0
  90. package/dest/block/attestation_info.js +42 -0
  91. package/dest/block/block_hash.d.ts +2 -2
  92. package/dest/block/block_hash.d.ts.map +1 -1
  93. package/dest/block/block_hash.js +1 -1
  94. package/dest/block/block_parameter.d.ts +5 -0
  95. package/dest/block/block_parameter.d.ts.map +1 -0
  96. package/dest/block/block_parameter.js +6 -0
  97. package/dest/block/body.d.ts +8 -5
  98. package/dest/block/body.d.ts.map +1 -1
  99. package/dest/block/body.js +14 -26
  100. package/dest/block/checkpointed_l2_block.d.ts +267 -0
  101. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  102. package/dest/block/checkpointed_l2_block.js +84 -0
  103. package/dest/block/in_block.d.ts +30 -19
  104. package/dest/block/in_block.d.ts.map +1 -1
  105. package/dest/block/in_block.js +17 -8
  106. package/dest/block/index.d.ts +8 -3
  107. package/dest/block/index.d.ts.map +1 -1
  108. package/dest/block/index.js +7 -2
  109. package/dest/block/l2_block.d.ts +39 -23
  110. package/dest/block/l2_block.d.ts.map +1 -1
  111. package/dest/block/l2_block.js +88 -12
  112. package/dest/block/l2_block_code_to_purge.d.ts +5 -16
  113. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  114. package/dest/block/l2_block_code_to_purge.js +25 -14
  115. package/dest/block/l2_block_header.d.ts +98 -0
  116. package/dest/block/l2_block_header.d.ts.map +1 -0
  117. package/dest/block/l2_block_header.js +155 -0
  118. package/dest/block/l2_block_info.d.ts +46 -0
  119. package/dest/block/l2_block_info.d.ts.map +1 -0
  120. package/dest/block/l2_block_info.js +41 -0
  121. package/dest/block/l2_block_new.d.ts +135 -0
  122. package/dest/block/l2_block_new.d.ts.map +1 -0
  123. package/dest/block/l2_block_new.js +152 -0
  124. package/dest/block/l2_block_source.d.ts +145 -552
  125. package/dest/block/l2_block_source.d.ts.map +1 -1
  126. package/dest/block/l2_block_source.js +5 -39
  127. package/dest/block/l2_block_stream/index.d.ts +1 -1
  128. package/dest/block/l2_block_stream/interfaces.d.ts +2 -2
  129. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  130. package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -6
  131. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  132. package/dest/block/l2_block_stream/l2_block_stream.js +13 -4
  133. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -2
  134. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  135. package/dest/block/l2_block_stream/l2_tips_memory_store.js +5 -3
  136. package/dest/block/proposal/attestations_and_signers.d.ts +59 -0
  137. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
  138. package/dest/block/proposal/attestations_and_signers.js +113 -0
  139. package/dest/block/proposal/committee_attestation.d.ts +2 -2
  140. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  141. package/dest/block/proposal/index.d.ts +2 -1
  142. package/dest/block/proposal/index.d.ts.map +1 -1
  143. package/dest/block/proposal/index.js +1 -0
  144. package/dest/block/test/index.d.ts +1 -1
  145. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  146. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  147. package/dest/block/test/l2_tips_store_test_suite.js +12 -14
  148. package/dest/block/validate_block_result.d.ts +50 -0
  149. package/dest/block/validate_block_result.d.ts.map +1 -0
  150. package/dest/block/validate_block_result.js +84 -0
  151. package/dest/checkpoint/checkpoint.d.ts +153 -0
  152. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  153. package/dest/checkpoint/checkpoint.js +100 -0
  154. package/dest/checkpoint/checkpoint_info.d.ts +9 -0
  155. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  156. package/dest/checkpoint/checkpoint_info.js +1 -0
  157. package/dest/checkpoint/index.d.ts +3 -0
  158. package/dest/checkpoint/index.d.ts.map +1 -0
  159. package/dest/checkpoint/index.js +2 -0
  160. package/dest/checkpoint/published_checkpoint.d.ts +238 -0
  161. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  162. package/dest/checkpoint/published_checkpoint.js +81 -0
  163. package/dest/config/chain-config.d.ts +1 -1
  164. package/dest/config/index.d.ts +1 -1
  165. package/dest/config/node-rpc-config.d.ts +3 -1
  166. package/dest/config/node-rpc-config.d.ts.map +1 -1
  167. package/dest/config/node-rpc-config.js +6 -0
  168. package/dest/contract/artifact_hash.d.ts +3 -3
  169. package/dest/contract/artifact_hash.d.ts.map +1 -1
  170. package/dest/contract/artifact_hash.js +2 -2
  171. package/dest/contract/complete_address.d.ts +2 -5
  172. package/dest/contract/complete_address.d.ts.map +1 -1
  173. package/dest/contract/complete_address.js +1 -1
  174. package/dest/contract/contract_address.d.ts +3 -3
  175. package/dest/contract/contract_address.d.ts.map +1 -1
  176. package/dest/contract/contract_address.js +3 -3
  177. package/dest/contract/contract_class.d.ts +2 -2
  178. package/dest/contract/contract_class.d.ts.map +1 -1
  179. package/dest/contract/contract_class.js +1 -1
  180. package/dest/contract/contract_class_id.d.ts +2 -2
  181. package/dest/contract/contract_class_id.d.ts.map +1 -1
  182. package/dest/contract/contract_class_id.js +3 -3
  183. package/dest/contract/contract_class_metadata.d.ts +8 -0
  184. package/dest/contract/contract_class_metadata.d.ts.map +1 -0
  185. package/dest/contract/contract_class_metadata.js +1 -0
  186. package/dest/contract/contract_deployment_data.d.ts +119 -0
  187. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  188. package/dest/contract/contract_deployment_data.js +99 -0
  189. package/dest/contract/contract_function_dao.d.ts +1 -1
  190. package/dest/contract/contract_instance.d.ts +11 -10
  191. package/dest/contract/contract_instance.d.ts.map +1 -1
  192. package/dest/contract/contract_instance.js +2 -3
  193. package/dest/contract/contract_instance_update.d.ts +2 -2
  194. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  195. package/dest/contract/contract_instance_update.js +1 -1
  196. package/dest/contract/contract_metadata.d.ts +7 -0
  197. package/dest/contract/contract_metadata.d.ts.map +1 -0
  198. package/dest/contract/contract_metadata.js +1 -0
  199. package/dest/contract/deployment_info.d.ts +2 -2
  200. package/dest/contract/deployment_info.d.ts.map +1 -1
  201. package/dest/contract/index.d.ts +4 -1
  202. package/dest/contract/index.d.ts.map +1 -1
  203. package/dest/contract/index.js +3 -0
  204. package/dest/contract/interfaces/contract_class.d.ts +58 -134
  205. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  206. package/dest/contract/interfaces/contract_class.js +35 -18
  207. package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
  208. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  209. package/dest/contract/interfaces/contract_instance.d.ts +52 -43
  210. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  211. package/dest/contract/interfaces/contract_instance.js +30 -5
  212. package/dest/contract/interfaces/contract_instance_update.d.ts +9 -10
  213. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  214. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  215. package/dest/contract/interfaces/index.d.ts +1 -1
  216. package/dest/contract/interfaces/node-info.d.ts +1 -1
  217. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
  218. package/dest/contract/partial_address.d.ts +2 -2
  219. package/dest/contract/partial_address.d.ts.map +1 -1
  220. package/dest/contract/private_function.d.ts +2 -2
  221. package/dest/contract/private_function.d.ts.map +1 -1
  222. package/dest/contract/private_function.js +3 -2
  223. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  224. package/dest/contract/private_function_membership_proof.js +3 -3
  225. package/dest/contract/utility_function_membership_proof.d.ts +1 -1
  226. package/dest/contract/utility_function_membership_proof.js +1 -1
  227. package/dest/database-version/index.d.ts +1 -1
  228. package/dest/database-version/version_manager.d.ts +6 -8
  229. package/dest/database-version/version_manager.d.ts.map +1 -1
  230. package/dest/database-version/version_manager.js +3 -1
  231. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  232. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  233. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +2 -2
  234. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  235. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  236. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  237. package/dest/delayed_public_mutable/index.d.ts +1 -1
  238. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
  239. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
  240. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  241. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  242. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  243. package/dest/epoch-helpers/index.d.ts +13 -10
  244. package/dest/epoch-helpers/index.d.ts.map +1 -1
  245. package/dest/epoch-helpers/index.js +15 -11
  246. package/dest/errors/index.d.ts +1 -1
  247. package/dest/errors/proving_error.d.ts +2 -2
  248. package/dest/errors/proving_error.d.ts.map +1 -1
  249. package/dest/errors/simulation_error.d.ts +2 -2
  250. package/dest/errors/simulation_error.d.ts.map +1 -1
  251. package/dest/fees/index.d.ts +1 -1
  252. package/dest/fees/transaction_fee.d.ts +2 -2
  253. package/dest/fees/transaction_fee.d.ts.map +1 -1
  254. package/dest/file-store/factory.d.ts +1 -1
  255. package/dest/file-store/factory.d.ts.map +1 -1
  256. package/dest/file-store/factory.js +18 -0
  257. package/dest/file-store/gcs.d.ts +1 -1
  258. package/dest/file-store/gcs.d.ts.map +1 -1
  259. package/dest/file-store/http.d.ts +1 -1
  260. package/dest/file-store/http.d.ts.map +1 -1
  261. package/dest/file-store/http.js +8 -3
  262. package/dest/file-store/index.d.ts +1 -1
  263. package/dest/file-store/interface.d.ts +9 -3
  264. package/dest/file-store/interface.d.ts.map +1 -1
  265. package/dest/file-store/local.d.ts +1 -1
  266. package/dest/file-store/local.d.ts.map +1 -1
  267. package/dest/file-store/s3.d.ts +26 -0
  268. package/dest/file-store/s3.d.ts.map +1 -0
  269. package/dest/file-store/s3.js +248 -0
  270. package/dest/gas/gas.d.ts +10 -2
  271. package/dest/gas/gas.d.ts.map +1 -1
  272. package/dest/gas/gas.js +16 -2
  273. package/dest/gas/gas_fees.d.ts +10 -2
  274. package/dest/gas/gas_fees.d.ts.map +1 -1
  275. package/dest/gas/gas_fees.js +15 -1
  276. package/dest/gas/gas_settings.d.ts +10 -2
  277. package/dest/gas/gas_settings.d.ts.map +1 -1
  278. package/dest/gas/gas_settings.js +13 -1
  279. package/dest/gas/gas_used.d.ts +13 -2
  280. package/dest/gas/gas_used.d.ts.map +1 -1
  281. package/dest/gas/gas_used.js +19 -1
  282. package/dest/gas/index.d.ts +1 -1
  283. package/dest/hash/hash.d.ts +10 -10
  284. package/dest/hash/hash.d.ts.map +1 -1
  285. package/dest/hash/hash.js +12 -16
  286. package/dest/hash/index.d.ts +1 -1
  287. package/dest/hash/map_slot.d.ts +2 -2
  288. package/dest/hash/map_slot.d.ts.map +1 -1
  289. package/dest/hash/map_slot.js +1 -1
  290. package/dest/interfaces/allowed_element.d.ts +12 -13
  291. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  292. package/dest/interfaces/allowed_element.js +3 -3
  293. package/dest/interfaces/api_limit.d.ts +1 -1
  294. package/dest/interfaces/archiver.d.ts +54 -1
  295. package/dest/interfaces/archiver.d.ts.map +1 -1
  296. package/dest/interfaces/archiver.js +45 -18
  297. package/dest/interfaces/aztec-node-admin.d.ts +163 -110
  298. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  299. package/dest/interfaces/aztec-node-admin.js +8 -3
  300. package/dest/interfaces/aztec-node.d.ts +73 -42
  301. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  302. package/dest/interfaces/aztec-node.js +37 -30
  303. package/dest/interfaces/block-builder.d.ts +12 -11
  304. package/dest/interfaces/block-builder.d.ts.map +1 -1
  305. package/dest/interfaces/block-builder.js +9 -1
  306. package/dest/interfaces/client.d.ts +1 -2
  307. package/dest/interfaces/client.d.ts.map +1 -1
  308. package/dest/interfaces/client.js +0 -1
  309. package/dest/interfaces/configs.d.ts +84 -40
  310. package/dest/interfaces/configs.d.ts.map +1 -1
  311. package/dest/interfaces/configs.js +15 -6
  312. package/dest/interfaces/epoch-prover.d.ts +31 -14
  313. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  314. package/dest/interfaces/get_logs_response.d.ts +24 -7
  315. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  316. package/dest/interfaces/get_logs_response.js +5 -4
  317. package/dest/interfaces/l2_logs_source.d.ts +12 -15
  318. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  319. package/dest/interfaces/merkle_tree_operations.d.ts +10 -4
  320. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  321. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  322. package/dest/interfaces/p2p.d.ts +5 -2
  323. package/dest/interfaces/p2p.d.ts.map +1 -1
  324. package/dest/interfaces/p2p.js +3 -2
  325. package/dest/interfaces/private_kernel_prover.d.ts +3 -3
  326. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  327. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  328. package/dest/interfaces/prover-agent.d.ts +1 -1
  329. package/dest/interfaces/prover-broker.d.ts +1 -1
  330. package/dest/interfaces/prover-client.d.ts +9 -7
  331. package/dest/interfaces/prover-client.d.ts.map +1 -1
  332. package/dest/interfaces/prover-client.js +5 -4
  333. package/dest/interfaces/prover-coordination.d.ts +1 -1
  334. package/dest/interfaces/prover-node.d.ts +1 -1
  335. package/dest/interfaces/proving-job-source.d.ts +1 -1
  336. package/dest/interfaces/proving-job.d.ts +1929 -1263
  337. package/dest/interfaces/proving-job.d.ts.map +1 -1
  338. package/dest/interfaces/proving-job.js +134 -115
  339. package/dest/interfaces/public_state_source.d.ts +2 -2
  340. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  341. package/dest/interfaces/server.d.ts +1 -1
  342. package/dest/interfaces/server_circuit_prover.d.ts +36 -37
  343. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  344. package/dest/interfaces/service.d.ts +1 -1
  345. package/dest/interfaces/slasher.d.ts +7 -3
  346. package/dest/interfaces/slasher.d.ts.map +1 -1
  347. package/dest/interfaces/slasher.js +4 -3
  348. package/dest/interfaces/tx_provider.d.ts +4 -4
  349. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  350. package/dest/interfaces/validator.d.ts +118 -8
  351. package/dest/interfaces/validator.d.ts.map +1 -1
  352. package/dest/interfaces/validator.js +13 -4
  353. package/dest/interfaces/world_state.d.ts +23 -31
  354. package/dest/interfaces/world_state.d.ts.map +1 -1
  355. package/dest/interfaces/world_state.js +4 -3
  356. package/dest/kernel/claimed_length_array.d.ts +2 -2
  357. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  358. package/dest/kernel/claimed_length_array.js +3 -1
  359. package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
  360. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
  361. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  362. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +5 -4
  363. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  364. package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
  365. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  366. package/dest/kernel/hints/build_transient_data_hints.js +2 -2
  367. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  368. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  369. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
  370. package/dest/kernel/hints/index.d.ts +1 -1
  371. package/dest/kernel/hints/key_validation_hint.d.ts +2 -3
  372. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  373. package/dest/kernel/hints/key_validation_hint.js +1 -1
  374. package/dest/kernel/hints/key_validation_request.d.ts +4 -4
  375. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  376. package/dest/kernel/hints/key_validation_request.js +2 -1
  377. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +2 -7
  378. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  379. package/dest/kernel/hints/key_validation_request_and_generator.js +1 -1
  380. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  381. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  382. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  383. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +5 -4
  384. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  385. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
  386. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  387. package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
  388. package/dest/kernel/hints/read_request.d.ts +2 -8
  389. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  390. package/dest/kernel/hints/read_request.js +1 -1
  391. package/dest/kernel/hints/read_request_hints.d.ts +1 -7
  392. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  393. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +2 -2
  394. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  395. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  396. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  397. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  398. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  399. package/dest/kernel/hints/transient_data_squashing_hint.js +4 -2
  400. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
  401. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  402. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  403. package/dest/kernel/index.d.ts +1 -1
  404. package/dest/kernel/log_hash.d.ts +2 -2
  405. package/dest/kernel/log_hash.d.ts.map +1 -1
  406. package/dest/kernel/log_hash.js +4 -2
  407. package/dest/kernel/note_hash.d.ts +2 -2
  408. package/dest/kernel/note_hash.d.ts.map +1 -1
  409. package/dest/kernel/note_hash.js +1 -1
  410. package/dest/kernel/nullifier.d.ts +4 -4
  411. package/dest/kernel/nullifier.d.ts.map +1 -1
  412. package/dest/kernel/nullifier.js +12 -12
  413. package/dest/kernel/padded_side_effects.d.ts +2 -2
  414. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  415. package/dest/kernel/padded_side_effects.js +1 -1
  416. package/dest/kernel/private_accumulated_data.d.ts +1 -23
  417. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  418. package/dest/kernel/private_call_data.d.ts +6 -50
  419. package/dest/kernel/private_call_data.d.ts.map +1 -1
  420. package/dest/kernel/private_call_data.js +5 -17
  421. package/dest/kernel/private_call_request.d.ts +2 -17
  422. package/dest/kernel/private_call_request.d.ts.map +1 -1
  423. package/dest/kernel/private_call_request.js +1 -1
  424. package/dest/kernel/private_circuit_public_inputs.d.ts +52 -109
  425. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  426. package/dest/kernel/private_circuit_public_inputs.js +61 -49
  427. package/dest/kernel/private_context_inputs.d.ts +4 -4
  428. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  429. package/dest/kernel/private_context_inputs.js +4 -4
  430. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +11 -33
  431. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  432. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -6
  433. package/dest/kernel/private_kernel_data.d.ts +1 -7
  434. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  435. package/dest/kernel/private_kernel_data.js +0 -2
  436. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +12 -24
  437. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  438. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +13 -8
  439. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
  440. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  441. package/dest/kernel/private_kernel_prover_output.d.ts +14 -14
  442. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  443. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
  444. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  445. package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
  446. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  447. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
  448. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
  449. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  450. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +3 -24
  451. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  452. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +5 -2
  453. package/dest/kernel/private_log_data.d.ts +2 -2
  454. package/dest/kernel/private_log_data.d.ts.map +1 -1
  455. package/dest/kernel/private_log_data.js +5 -2
  456. package/dest/kernel/private_to_avm_accumulated_data.d.ts +18 -2
  457. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  458. package/dest/kernel/private_to_avm_accumulated_data.js +24 -3
  459. package/dest/kernel/private_to_public_accumulated_data.d.ts +3 -3
  460. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  461. package/dest/kernel/private_to_public_accumulated_data.js +4 -2
  462. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  463. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  464. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  465. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +4 -2
  466. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  467. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +8 -1
  468. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +3 -19
  469. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  470. package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
  471. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +2 -17
  472. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  473. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +1 -1
  474. package/dest/kernel/private_validation_requests.d.ts +2 -24
  475. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  476. package/dest/kernel/private_validation_requests.js +8 -14
  477. package/dest/kernel/public_call_request.d.ts +23 -28
  478. package/dest/kernel/public_call_request.d.ts.map +1 -1
  479. package/dest/kernel/public_call_request.js +24 -3
  480. package/dest/kernel/utils/index.d.ts +1 -1
  481. package/dest/kernel/utils/interfaces.d.ts +1 -1
  482. package/dest/kernel/utils/optional_number.d.ts +2 -8
  483. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  484. package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
  485. package/dest/keys/derivation.d.ts +4 -5
  486. package/dest/keys/derivation.d.ts.map +1 -1
  487. package/dest/keys/derivation.js +7 -25
  488. package/dest/keys/index.d.ts +1 -1
  489. package/dest/keys/key_types.d.ts +1 -1
  490. package/dest/keys/public_key.d.ts +2 -2
  491. package/dest/keys/public_key.d.ts.map +1 -1
  492. package/dest/keys/public_keys.d.ts +11 -6
  493. package/dest/keys/public_keys.d.ts.map +1 -1
  494. package/dest/keys/public_keys.js +15 -2
  495. package/dest/keys/utils.d.ts +1 -1
  496. package/dest/l1-contracts/index.d.ts +1 -1
  497. package/dest/l1-contracts/slash_factory.d.ts +5 -4
  498. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  499. package/dest/l1-contracts/slash_factory.js +1 -1
  500. package/dest/logs/contract_class_log.d.ts +22 -6
  501. package/dest/logs/contract_class_log.d.ts.map +1 -1
  502. package/dest/logs/contract_class_log.js +30 -6
  503. package/dest/logs/debug_log.d.ts +21 -0
  504. package/dest/logs/debug_log.d.ts.map +1 -0
  505. package/dest/logs/debug_log.js +39 -0
  506. package/dest/logs/directional_app_tagging_secret.d.ts +40 -0
  507. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -0
  508. package/dest/logs/directional_app_tagging_secret.js +64 -0
  509. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  510. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  511. package/dest/logs/extended_public_log.d.ts +13 -7
  512. package/dest/logs/extended_public_log.d.ts.map +1 -1
  513. package/dest/logs/index.d.ts +6 -3
  514. package/dest/logs/index.d.ts.map +1 -1
  515. package/dest/logs/index.js +5 -2
  516. package/dest/logs/log_filter.d.ts +1 -1
  517. package/dest/logs/log_id.d.ts +16 -8
  518. package/dest/logs/log_id.d.ts.map +1 -1
  519. package/dest/logs/log_id.js +19 -11
  520. package/dest/logs/message_context.d.ts +2 -2
  521. package/dest/logs/message_context.d.ts.map +1 -1
  522. package/dest/logs/message_context.js +1 -1
  523. package/dest/logs/pending_tagged_log.d.ts +2 -2
  524. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  525. package/dest/logs/pending_tagged_log.js +1 -1
  526. package/dest/logs/pre_tag.d.ts +34 -0
  527. package/dest/logs/pre_tag.d.ts.map +1 -0
  528. package/dest/logs/pre_tag.js +7 -0
  529. package/dest/logs/private_log.d.ts +11 -3
  530. package/dest/logs/private_log.d.ts.map +1 -1
  531. package/dest/logs/private_log.js +20 -8
  532. package/dest/logs/public_log.d.ts +34 -12
  533. package/dest/logs/public_log.d.ts.map +1 -1
  534. package/dest/logs/public_log.js +134 -45
  535. package/dest/logs/shared_secret_derivation.d.ts +2 -2
  536. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  537. package/dest/logs/shared_secret_derivation.js +3 -5
  538. package/dest/logs/siloed_tag.d.ts +23 -0
  539. package/dest/logs/siloed_tag.d.ts.map +1 -0
  540. package/dest/logs/siloed_tag.js +30 -0
  541. package/dest/logs/tag.d.ts +21 -0
  542. package/dest/logs/tag.d.ts.map +1 -0
  543. package/dest/logs/tag.js +30 -0
  544. package/dest/logs/tx_scoped_l2_log.d.ts +32 -38
  545. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  546. package/dest/logs/tx_scoped_l2_log.js +40 -45
  547. package/dest/messaging/in_hash.d.ts +4 -0
  548. package/dest/messaging/in_hash.d.ts.map +1 -0
  549. package/dest/messaging/in_hash.js +8 -0
  550. package/dest/messaging/inbox_leaf.d.ts +8 -7
  551. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  552. package/dest/messaging/inbox_leaf.js +11 -7
  553. package/dest/messaging/index.d.ts +3 -1
  554. package/dest/messaging/index.d.ts.map +1 -1
  555. package/dest/messaging/index.js +2 -0
  556. package/dest/messaging/l1_actor.d.ts +2 -8
  557. package/dest/messaging/l1_actor.d.ts.map +1 -1
  558. package/dest/messaging/l1_actor.js +2 -2
  559. package/dest/messaging/l1_to_l2_message.d.ts +2 -7
  560. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  561. package/dest/messaging/l1_to_l2_message.js +2 -2
  562. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
  563. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  564. package/dest/messaging/l2_actor.d.ts +2 -8
  565. package/dest/messaging/l2_actor.d.ts.map +1 -1
  566. package/dest/messaging/l2_actor.js +2 -2
  567. package/dest/messaging/l2_to_l1_membership.d.ts +6 -5
  568. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  569. package/dest/messaging/l2_to_l1_membership.js +18 -20
  570. package/dest/messaging/l2_to_l1_message.d.ts +19 -2
  571. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  572. package/dest/messaging/l2_to_l1_message.js +22 -1
  573. package/dest/messaging/out_hash.d.ts +5 -0
  574. package/dest/messaging/out_hash.d.ts.map +1 -0
  575. package/dest/messaging/out_hash.js +28 -0
  576. package/dest/noir/index.d.ts +18 -7
  577. package/dest/noir/index.d.ts.map +1 -1
  578. package/dest/noir/index.js +6 -6
  579. package/dest/note/comparator.d.ts +1 -1
  580. package/dest/note/index.d.ts +2 -2
  581. package/dest/note/index.d.ts.map +1 -1
  582. package/dest/note/index.js +1 -1
  583. package/dest/note/note.d.ts +3 -18
  584. package/dest/note/note.d.ts.map +1 -1
  585. package/dest/note/note.js +5 -2
  586. package/dest/note/note_dao.d.ts +79 -0
  587. package/dest/note/note_dao.d.ts.map +1 -0
  588. package/dest/note/note_dao.js +112 -0
  589. package/dest/note/note_status.d.ts +1 -1
  590. package/dest/note/notes_filter.d.ts +4 -7
  591. package/dest/note/notes_filter.d.ts.map +1 -1
  592. package/dest/note/notes_filter.js +1 -3
  593. package/dest/p2p/attestation_utils.d.ts +1 -1
  594. package/dest/p2p/block_attestation.d.ts +43 -14
  595. package/dest/p2p/block_attestation.d.ts.map +1 -1
  596. package/dest/p2p/block_attestation.js +38 -15
  597. package/dest/p2p/block_proposal.d.ts +11 -16
  598. package/dest/p2p/block_proposal.d.ts.map +1 -1
  599. package/dest/p2p/block_proposal.js +15 -15
  600. package/dest/p2p/client_type.d.ts +1 -1
  601. package/dest/p2p/consensus_payload.d.ts +36 -185
  602. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  603. package/dest/p2p/consensus_payload.js +30 -24
  604. package/dest/p2p/gossipable.d.ts +10 -19
  605. package/dest/p2p/gossipable.d.ts.map +1 -1
  606. package/dest/p2p/gossipable.js +19 -25
  607. package/dest/p2p/index.d.ts +1 -1
  608. package/dest/p2p/interface.d.ts +1 -1
  609. package/dest/p2p/message_validator.d.ts +1 -1
  610. package/dest/p2p/peer_error.d.ts +1 -1
  611. package/dest/p2p/signature_utils.d.ts +3 -2
  612. package/dest/p2p/signature_utils.d.ts.map +1 -1
  613. package/dest/p2p/signature_utils.js +3 -1
  614. package/dest/p2p/topic_type.d.ts +5 -9
  615. package/dest/p2p/topic_type.d.ts.map +1 -1
  616. package/dest/p2p/topic_type.js +14 -8
  617. package/dest/parity/index.d.ts +3 -4
  618. package/dest/parity/index.d.ts.map +1 -1
  619. package/dest/parity/index.js +2 -3
  620. package/dest/parity/parity_base_private_inputs.d.ts +33 -0
  621. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  622. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +11 -7
  623. package/dest/parity/parity_public_inputs.d.ts +2 -5
  624. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  625. package/dest/parity/parity_public_inputs.js +1 -1
  626. package/dest/parity/parity_root_private_inputs.d.ts +38 -0
  627. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  628. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  629. package/dest/proofs/chonk_proof.d.ts +28 -0
  630. package/dest/proofs/chonk_proof.d.ts.map +1 -0
  631. package/dest/proofs/chonk_proof.js +101 -0
  632. package/dest/proofs/index.d.ts +3 -2
  633. package/dest/proofs/index.d.ts.map +1 -1
  634. package/dest/proofs/index.js +2 -1
  635. package/dest/proofs/proof.d.ts +2 -5
  636. package/dest/proofs/proof.d.ts.map +1 -1
  637. package/dest/proofs/proof.js +1 -1
  638. package/dest/proofs/proof_data.d.ts +33 -0
  639. package/dest/proofs/proof_data.d.ts.map +1 -0
  640. package/dest/proofs/proof_data.js +39 -0
  641. package/dest/proofs/proving_request_type.d.ts +18 -14
  642. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  643. package/dest/proofs/proving_request_type.js +17 -12
  644. package/dest/proofs/recursive_proof.d.ts +3 -27
  645. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  646. package/dest/proofs/recursive_proof.js +1 -1
  647. package/dest/rollup/avm_proof_data.d.ts +3 -15
  648. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  649. package/dest/rollup/avm_proof_data.js +1 -33
  650. package/dest/rollup/base_rollup_hints.d.ts +17 -50
  651. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  652. package/dest/rollup/base_rollup_hints.js +26 -26
  653. package/dest/rollup/block_constant_data.d.ts +18 -15
  654. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  655. package/dest/rollup/block_constant_data.js +19 -11
  656. package/dest/rollup/block_headers_hash.d.ts +4 -0
  657. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  658. package/dest/rollup/block_headers_hash.js +9 -0
  659. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +47 -0
  660. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  661. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
  662. package/dest/rollup/block_rollup_public_inputs.d.ts +87 -0
  663. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
  664. package/dest/rollup/block_rollup_public_inputs.js +87 -0
  665. package/dest/rollup/block_root_rollup_private_inputs.d.ts +162 -0
  666. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  667. package/dest/rollup/block_root_rollup_private_inputs.js +249 -0
  668. package/dest/rollup/checkpoint_constant_data.d.ts +68 -0
  669. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
  670. package/dest/rollup/checkpoint_constant_data.js +82 -0
  671. package/dest/rollup/checkpoint_header.d.ts +89 -0
  672. package/dest/rollup/checkpoint_header.d.ts.map +1 -0
  673. package/dest/{tx/proposed_block_header.js → rollup/checkpoint_header.js} +57 -19
  674. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +27 -0
  675. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  676. package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
  677. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +82 -0
  678. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
  679. package/dest/rollup/checkpoint_rollup_public_inputs.js +108 -0
  680. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +100 -0
  681. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  682. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +179 -0
  683. package/dest/rollup/epoch_constant_data.d.ts +16 -14
  684. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  685. package/dest/rollup/epoch_constant_data.js +26 -13
  686. package/dest/rollup/index.d.ts +19 -17
  687. package/dest/rollup/index.d.ts.map +1 -1
  688. package/dest/rollup/index.js +18 -16
  689. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
  690. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  691. package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
  692. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
  693. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
  694. package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
  695. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
  696. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
  697. package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
  698. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
  699. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  700. package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
  701. package/dest/rollup/root_rollup_private_inputs.d.ts +62 -0
  702. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  703. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  704. package/dest/rollup/root_rollup_public_inputs.d.ts +44 -0
  705. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  706. package/dest/rollup/root_rollup_public_inputs.js +71 -0
  707. package/dest/rollup/tree_snapshot_diff_hints.d.ts +64 -0
  708. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
  709. package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
  710. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +41 -0
  711. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  712. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  713. package/dest/rollup/tx_rollup_public_inputs.d.ts +87 -0
  714. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  715. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +16 -16
  716. package/dest/schemas/index.d.ts +1 -1
  717. package/dest/schemas/schemas.d.ts +91 -17
  718. package/dest/schemas/schemas.d.ts.map +1 -1
  719. package/dest/schemas/schemas.js +14 -2
  720. package/dest/slashing/empire.d.ts +1 -1
  721. package/dest/slashing/empire.d.ts.map +1 -1
  722. package/dest/slashing/empire.js +5 -4
  723. package/dest/slashing/helpers.d.ts +7 -6
  724. package/dest/slashing/helpers.d.ts.map +1 -1
  725. package/dest/slashing/helpers.js +8 -6
  726. package/dest/slashing/index.d.ts +1 -1
  727. package/dest/slashing/interfaces.d.ts +3 -2
  728. package/dest/slashing/interfaces.d.ts.map +1 -1
  729. package/dest/slashing/serialization.d.ts +1 -1
  730. package/dest/slashing/tally.d.ts +1 -1
  731. package/dest/slashing/types.d.ts +13 -13
  732. package/dest/slashing/types.d.ts.map +1 -1
  733. package/dest/slashing/types.js +27 -5
  734. package/dest/snapshots/download.d.ts +1 -1
  735. package/dest/snapshots/download.d.ts.map +1 -1
  736. package/dest/snapshots/download.js +58 -2
  737. package/dest/snapshots/index.d.ts +1 -1
  738. package/dest/snapshots/types.d.ts +18 -18
  739. package/dest/snapshots/types.d.ts.map +1 -1
  740. package/dest/snapshots/types.js +5 -5
  741. package/dest/snapshots/upload.d.ts +1 -1
  742. package/dest/snapshots/upload.d.ts.map +1 -1
  743. package/dest/snapshots/upload.js +1 -0
  744. package/dest/stats/index.d.ts +1 -1
  745. package/dest/stats/stats.d.ts +13 -9
  746. package/dest/stats/stats.d.ts.map +1 -1
  747. package/dest/tests/factories.d.ts +99 -102
  748. package/dest/tests/factories.d.ts.map +1 -1
  749. package/dest/tests/factories.js +223 -288
  750. package/dest/tests/fixtures.d.ts +1 -1
  751. package/dest/tests/index.d.ts +1 -1
  752. package/dest/tests/jest.d.ts +1 -1
  753. package/dest/tests/mocks.d.ts +79 -29
  754. package/dest/tests/mocks.d.ts.map +1 -1
  755. package/dest/tests/mocks.js +233 -52
  756. package/dest/trees/append_only_tree_snapshot.d.ts +10 -17
  757. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  758. package/dest/trees/append_only_tree_snapshot.js +13 -11
  759. package/dest/trees/database_public_state_source.d.ts +2 -2
  760. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  761. package/dest/trees/database_public_state_source.js +1 -1
  762. package/dest/trees/index.d.ts +1 -2
  763. package/dest/trees/index.d.ts.map +1 -1
  764. package/dest/trees/index.js +0 -1
  765. package/dest/trees/merkle_tree_id.d.ts +9 -9
  766. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  767. package/dest/trees/nullifier_leaf.d.ts +18 -14
  768. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  769. package/dest/trees/nullifier_leaf.js +25 -1
  770. package/dest/trees/nullifier_membership_witness.d.ts +6 -39
  771. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  772. package/dest/trees/nullifier_membership_witness.js +1 -1
  773. package/dest/trees/public_data_leaf.d.ts +29 -28
  774. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  775. package/dest/trees/public_data_leaf.js +25 -1
  776. package/dest/trees/public_data_witness.d.ts +12 -46
  777. package/dest/trees/public_data_witness.d.ts.map +1 -1
  778. package/dest/trees/public_data_witness.js +1 -1
  779. package/dest/tx/block_header.d.ts +22 -29
  780. package/dest/tx/block_header.d.ts.map +1 -1
  781. package/dest/tx/block_header.js +38 -25
  782. package/dest/tx/call_context.d.ts +7 -19
  783. package/dest/tx/call_context.d.ts.map +1 -1
  784. package/dest/tx/call_context.js +3 -1
  785. package/dest/tx/capsule.d.ts +2 -5
  786. package/dest/tx/capsule.d.ts.map +1 -1
  787. package/dest/tx/capsule.js +1 -1
  788. package/dest/tx/content_commitment.d.ts +5 -3
  789. package/dest/tx/content_commitment.d.ts.map +1 -1
  790. package/dest/tx/content_commitment.js +12 -1
  791. package/dest/tx/execution_payload.d.ts +37 -0
  792. package/dest/tx/execution_payload.d.ts.map +1 -0
  793. package/dest/tx/execution_payload.js +40 -0
  794. package/dest/tx/function_data.d.ts +5 -7
  795. package/dest/tx/function_data.d.ts.map +1 -1
  796. package/dest/tx/function_data.js +1 -1
  797. package/dest/tx/global_variable_builder.d.ts +6 -3
  798. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  799. package/dest/tx/global_variables.d.ts +58 -32
  800. package/dest/tx/global_variables.d.ts.map +1 -1
  801. package/dest/tx/global_variables.js +54 -13
  802. package/dest/tx/hashed_values.d.ts +2 -8
  803. package/dest/tx/hashed_values.d.ts.map +1 -1
  804. package/dest/tx/hashed_values.js +1 -1
  805. package/dest/tx/in_tx.d.ts +26 -0
  806. package/dest/tx/in_tx.d.ts.map +1 -0
  807. package/dest/tx/in_tx.js +14 -0
  808. package/dest/tx/index.d.ts +5 -2
  809. package/dest/tx/index.d.ts.map +1 -1
  810. package/dest/tx/index.js +4 -1
  811. package/dest/tx/indexed_tx_effect.d.ts +15 -11
  812. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  813. package/dest/tx/indexed_tx_effect.js +7 -4
  814. package/dest/tx/offchain_effect.d.ts +2 -2
  815. package/dest/tx/offchain_effect.d.ts.map +1 -1
  816. package/dest/tx/offchain_effect.js +1 -1
  817. package/dest/tx/partial_state_reference.d.ts +6 -8
  818. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  819. package/dest/tx/partial_state_reference.js +12 -9
  820. package/dest/tx/private_execution_result.d.ts +22 -52
  821. package/dest/tx/private_execution_result.d.ts.map +1 -1
  822. package/dest/tx/private_execution_result.js +18 -11
  823. package/dest/tx/private_tx_constant_data.d.ts +45 -0
  824. package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
  825. package/dest/tx/private_tx_constant_data.js +69 -0
  826. package/dest/tx/processed_tx.d.ts +7 -7
  827. package/dest/tx/processed_tx.d.ts.map +1 -1
  828. package/dest/tx/processed_tx.js +10 -14
  829. package/dest/tx/profiling.d.ts +38 -38
  830. package/dest/tx/profiling.d.ts.map +1 -1
  831. package/dest/tx/profiling.js +6 -7
  832. package/dest/tx/protocol_contracts.d.ts +37 -0
  833. package/dest/tx/protocol_contracts.d.ts.map +1 -0
  834. package/dest/tx/protocol_contracts.js +58 -0
  835. package/dest/tx/proven_tx.d.ts +25 -25
  836. package/dest/tx/proven_tx.d.ts.map +1 -1
  837. package/dest/tx/proven_tx.js +8 -8
  838. package/dest/tx/public_call_request_with_calldata.d.ts +10 -8
  839. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  840. package/dest/tx/public_call_request_with_calldata.js +16 -2
  841. package/dest/tx/public_simulation_output.d.ts +4 -2
  842. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  843. package/dest/tx/public_simulation_output.js +9 -2
  844. package/dest/tx/simulated_tx.d.ts +1054 -30
  845. package/dest/tx/simulated_tx.d.ts.map +1 -1
  846. package/dest/tx/simulated_tx.js +2 -2
  847. package/dest/tx/state_reference.d.ts +12 -13
  848. package/dest/tx/state_reference.d.ts.map +1 -1
  849. package/dest/tx/state_reference.js +15 -10
  850. package/dest/tx/tree_snapshots.d.ts +16 -8
  851. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  852. package/dest/tx/tree_snapshots.js +12 -1
  853. package/dest/tx/tx.d.ts +23 -33
  854. package/dest/tx/tx.d.ts.map +1 -1
  855. package/dest/tx/tx.js +36 -28
  856. package/dest/tx/tx_constant_data.d.ts +8 -40
  857. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  858. package/dest/tx/tx_constant_data.js +12 -21
  859. package/dest/tx/tx_context.d.ts +2 -3
  860. package/dest/tx/tx_context.d.ts.map +1 -1
  861. package/dest/tx/tx_context.js +1 -1
  862. package/dest/tx/tx_effect.d.ts +22 -77
  863. package/dest/tx/tx_effect.d.ts.map +1 -1
  864. package/dest/tx/tx_effect.js +81 -221
  865. package/dest/tx/tx_execution_request.d.ts +2 -31
  866. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  867. package/dest/tx/tx_execution_request.js +4 -2
  868. package/dest/tx/tx_hash.d.ts +2 -3
  869. package/dest/tx/tx_hash.d.ts.map +1 -1
  870. package/dest/tx/tx_hash.js +1 -1
  871. package/dest/tx/tx_receipt.d.ts +4 -9
  872. package/dest/tx/tx_receipt.d.ts.map +1 -1
  873. package/dest/tx/tx_receipt.js +2 -1
  874. package/dest/tx/tx_request.d.ts +2 -7
  875. package/dest/tx/tx_request.d.ts.map +1 -1
  876. package/dest/tx/tx_request.js +2 -2
  877. package/dest/tx/validator/empty_validator.d.ts +1 -1
  878. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  879. package/dest/tx/validator/error_texts.d.ts +2 -2
  880. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  881. package/dest/tx/validator/error_texts.js +1 -1
  882. package/dest/tx/validator/tx_validator.d.ts +5 -8
  883. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  884. package/dest/tx/validator/tx_validator.js +4 -4
  885. package/dest/types/index.d.ts +1 -1
  886. package/dest/types/shared.d.ts +1 -4
  887. package/dest/types/shared.d.ts.map +1 -1
  888. package/dest/update-checker/index.d.ts +1 -1
  889. package/dest/update-checker/update-checker.d.ts +3 -4
  890. package/dest/update-checker/update-checker.d.ts.map +1 -1
  891. package/dest/update-checker/update-checker.js +2 -2
  892. package/dest/validators/errors.d.ts +7 -8
  893. package/dest/validators/errors.d.ts.map +1 -1
  894. package/dest/validators/errors.js +2 -4
  895. package/dest/validators/index.d.ts +1 -1
  896. package/dest/validators/schemas.d.ts +266 -208
  897. package/dest/validators/schemas.d.ts.map +1 -1
  898. package/dest/validators/schemas.js +20 -20
  899. package/dest/validators/types.d.ts +10 -9
  900. package/dest/validators/types.d.ts.map +1 -1
  901. package/dest/versioning/index.d.ts +1 -1
  902. package/dest/versioning/versioning.d.ts +4 -4
  903. package/dest/versioning/versioning.d.ts.map +1 -1
  904. package/dest/versioning/versioning.js +18 -13
  905. package/dest/vks/index.d.ts +1 -1
  906. package/dest/vks/verification_key.d.ts +11 -23
  907. package/dest/vks/verification_key.d.ts.map +1 -1
  908. package/dest/vks/verification_key.js +21 -1
  909. package/dest/vks/vk_data.d.ts +2 -8
  910. package/dest/vks/vk_data.d.ts.map +1 -1
  911. package/dest/vks/vk_data.js +1 -1
  912. package/dest/world-state/index.d.ts +2 -0
  913. package/dest/world-state/index.d.ts.map +1 -0
  914. package/dest/world-state/index.js +1 -0
  915. package/dest/world-state/world_state_revision.d.ts +54 -0
  916. package/dest/world-state/world_state_revision.d.ts.map +1 -0
  917. package/dest/world-state/world_state_revision.js +44 -0
  918. package/dest/zkpassport/index.d.ts +18 -14
  919. package/dest/zkpassport/index.d.ts.map +1 -1
  920. package/dest/zkpassport/index.js +23 -22
  921. package/package.json +22 -13
  922. package/src/abi/abi.ts +45 -39
  923. package/src/abi/authorization_selector.ts +3 -2
  924. package/src/abi/buffer.ts +1 -1
  925. package/src/abi/contract_artifact.ts +6 -3
  926. package/src/abi/decoder.ts +1 -1
  927. package/src/abi/encoder.ts +1 -1
  928. package/src/abi/event_metadata_definition.ts +8 -0
  929. package/src/abi/event_selector.ts +3 -2
  930. package/src/abi/function_call.ts +6 -2
  931. package/src/abi/function_selector.ts +11 -2
  932. package/src/abi/index.ts +1 -0
  933. package/src/abi/note_selector.ts +2 -2
  934. package/src/abi/selector.ts +1 -1
  935. package/src/auth_witness/auth_witness.ts +2 -2
  936. package/src/avm/avm.ts +894 -9
  937. package/src/avm/avm_accumulated_data.ts +66 -30
  938. package/src/avm/avm_circuit_public_inputs.ts +62 -1
  939. package/src/avm/contract_storage_read.ts +1 -1
  940. package/src/avm/contract_storage_update_request.ts +1 -1
  941. package/src/avm/index.ts +1 -1
  942. package/src/avm/message_pack.ts +30 -2
  943. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  944. package/src/avm/public_data_read.ts +1 -1
  945. package/src/avm/public_data_update_request.ts +1 -1
  946. package/src/avm/public_data_write.ts +13 -2
  947. package/src/avm/public_inner_call_request.ts +1 -1
  948. package/src/avm/revert_code.ts +30 -10
  949. package/src/aztec-address/index.ts +28 -3
  950. package/src/block/attestation_info.ts +69 -0
  951. package/src/block/block_hash.ts +1 -1
  952. package/src/block/block_parameter.ts +8 -0
  953. package/src/block/body.ts +17 -38
  954. package/src/block/checkpointed_l2_block.ts +120 -0
  955. package/src/block/in_block.ts +25 -12
  956. package/src/block/index.ts +7 -2
  957. package/src/block/l2_block.ts +116 -25
  958. package/src/block/l2_block_code_to_purge.ts +33 -32
  959. package/src/block/l2_block_header.ts +246 -0
  960. package/src/block/l2_block_info.ts +64 -0
  961. package/src/block/l2_block_new.ts +207 -0
  962. package/src/block/l2_block_source.ts +130 -101
  963. package/src/block/l2_block_stream/interfaces.ts +1 -1
  964. package/src/block/l2_block_stream/l2_block_stream.ts +19 -5
  965. package/src/block/l2_block_stream/l2_tips_memory_store.ts +6 -3
  966. package/src/block/proposal/attestations_and_signers.ts +140 -0
  967. package/src/block/proposal/committee_attestation.ts +1 -1
  968. package/src/block/proposal/index.ts +1 -0
  969. package/src/block/test/l2_tips_store_test_suite.ts +16 -10
  970. package/src/block/validate_block_result.ts +124 -0
  971. package/src/checkpoint/checkpoint.ts +135 -0
  972. package/src/checkpoint/checkpoint_info.ts +9 -0
  973. package/src/checkpoint/index.ts +2 -0
  974. package/src/checkpoint/published_checkpoint.ts +105 -0
  975. package/src/config/node-rpc-config.ts +9 -0
  976. package/src/contract/artifact_hash.ts +2 -2
  977. package/src/contract/complete_address.ts +1 -1
  978. package/src/contract/contract_address.ts +3 -3
  979. package/src/contract/contract_class.ts +2 -2
  980. package/src/contract/contract_class_id.ts +3 -3
  981. package/src/contract/contract_class_metadata.ts +8 -0
  982. package/src/contract/contract_deployment_data.ts +125 -0
  983. package/src/contract/contract_instance.ts +12 -11
  984. package/src/contract/contract_instance_update.ts +1 -1
  985. package/src/contract/contract_metadata.ts +7 -0
  986. package/src/contract/deployment_info.ts +1 -1
  987. package/src/contract/index.ts +3 -0
  988. package/src/contract/interfaces/contract_class.ts +79 -48
  989. package/src/contract/interfaces/contract_data_source.ts +3 -2
  990. package/src/contract/interfaces/contract_instance.ts +48 -16
  991. package/src/contract/interfaces/contract_instance_update.ts +12 -10
  992. package/src/contract/partial_address.ts +1 -1
  993. package/src/contract/private_function.ts +3 -2
  994. package/src/contract/private_function_membership_proof.ts +3 -3
  995. package/src/contract/utility_function_membership_proof.ts +1 -1
  996. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +2 -2
  997. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  998. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  999. package/src/epoch-helpers/index.ts +45 -28
  1000. package/src/errors/simulation_error.ts +1 -1
  1001. package/src/fees/transaction_fee.ts +1 -1
  1002. package/src/file-store/factory.ts +15 -0
  1003. package/src/file-store/http.ts +6 -3
  1004. package/src/file-store/interface.ts +8 -2
  1005. package/src/file-store/s3.ts +250 -0
  1006. package/src/gas/gas.ts +15 -1
  1007. package/src/gas/gas_fees.ts +15 -1
  1008. package/src/gas/gas_settings.ts +20 -1
  1009. package/src/gas/gas_used.ts +22 -1
  1010. package/src/hash/hash.ts +12 -15
  1011. package/src/hash/map_slot.ts +2 -2
  1012. package/src/interfaces/allowed_element.ts +10 -8
  1013. package/src/interfaces/archiver.ts +87 -19
  1014. package/src/interfaces/aztec-node-admin.ts +15 -4
  1015. package/src/interfaces/aztec-node.ts +133 -77
  1016. package/src/interfaces/block-builder.ts +24 -14
  1017. package/src/interfaces/client.ts +0 -1
  1018. package/src/interfaces/configs.ts +72 -29
  1019. package/src/interfaces/epoch-prover.ts +39 -16
  1020. package/src/interfaces/get_logs_response.ts +13 -9
  1021. package/src/interfaces/l2_logs_source.ts +11 -14
  1022. package/src/interfaces/merkle_tree_operations.ts +13 -3
  1023. package/src/interfaces/p2p.ts +8 -2
  1024. package/src/interfaces/private_kernel_prover.ts +2 -2
  1025. package/src/interfaces/prover-client.ts +13 -10
  1026. package/src/interfaces/proving-job.ts +232 -139
  1027. package/src/interfaces/public_state_source.ts +1 -1
  1028. package/src/interfaces/server_circuit_prover.ts +89 -62
  1029. package/src/interfaces/slasher.ts +25 -21
  1030. package/src/interfaces/tx_provider.ts +3 -2
  1031. package/src/interfaces/validator.ts +50 -18
  1032. package/src/interfaces/world_state.ts +26 -18
  1033. package/src/kernel/claimed_length_array.ts +1 -1
  1034. package/src/kernel/hints/build_nullifier_read_request_hints.ts +4 -3
  1035. package/src/kernel/hints/build_transient_data_hints.ts +2 -2
  1036. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
  1037. package/src/kernel/hints/key_validation_hint.ts +1 -1
  1038. package/src/kernel/hints/key_validation_request.ts +2 -1
  1039. package/src/kernel/hints/key_validation_request_and_generator.ts +1 -1
  1040. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  1041. package/src/kernel/hints/nullifier_read_request_hints.ts +3 -3
  1042. package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
  1043. package/src/kernel/hints/read_request.ts +1 -1
  1044. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +1 -1
  1045. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  1046. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  1047. package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
  1048. package/src/kernel/log_hash.ts +1 -1
  1049. package/src/kernel/note_hash.ts +1 -1
  1050. package/src/kernel/nullifier.ts +9 -9
  1051. package/src/kernel/padded_side_effects.ts +1 -1
  1052. package/src/kernel/private_call_data.ts +3 -22
  1053. package/src/kernel/private_call_request.ts +1 -1
  1054. package/src/kernel/private_circuit_public_inputs.ts +95 -75
  1055. package/src/kernel/private_context_inputs.ts +3 -3
  1056. package/src/kernel/private_kernel_circuit_public_inputs.ts +12 -5
  1057. package/src/kernel/private_kernel_data.ts +0 -2
  1058. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +12 -5
  1059. package/src/kernel/private_kernel_prover_output.ts +4 -4
  1060. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +9 -3
  1061. package/src/kernel/private_log_data.ts +1 -1
  1062. package/src/kernel/private_to_avm_accumulated_data.ts +36 -1
  1063. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  1064. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  1065. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +11 -2
  1066. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  1067. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +2 -2
  1068. package/src/kernel/private_validation_requests.ts +1 -13
  1069. package/src/kernel/public_call_request.ts +28 -1
  1070. package/src/kernel/utils/optional_number.ts +1 -1
  1071. package/src/keys/derivation.ts +7 -30
  1072. package/src/keys/public_key.ts +1 -1
  1073. package/src/keys/public_keys.ts +22 -2
  1074. package/src/l1-contracts/slash_factory.ts +3 -1
  1075. package/src/logs/contract_class_log.ts +36 -5
  1076. package/src/logs/debug_log.ts +51 -0
  1077. package/src/logs/directional_app_tagging_secret.ts +79 -0
  1078. package/src/logs/index.ts +5 -2
  1079. package/src/logs/log_id.ts +22 -11
  1080. package/src/logs/message_context.ts +1 -1
  1081. package/src/logs/pending_tagged_log.ts +1 -1
  1082. package/src/logs/pre_tag.ts +25 -0
  1083. package/src/logs/private_log.ts +22 -5
  1084. package/src/logs/public_log.ts +140 -57
  1085. package/src/logs/shared_secret_derivation.ts +4 -6
  1086. package/src/logs/siloed_tag.ts +44 -0
  1087. package/src/logs/tag.ts +42 -0
  1088. package/src/logs/tx_scoped_l2_log.ts +48 -45
  1089. package/src/messaging/in_hash.ts +10 -0
  1090. package/src/messaging/inbox_leaf.ts +13 -7
  1091. package/src/messaging/index.ts +2 -0
  1092. package/src/messaging/l1_actor.ts +2 -2
  1093. package/src/messaging/l1_to_l2_message.ts +3 -2
  1094. package/src/messaging/l1_to_l2_message_source.ts +5 -10
  1095. package/src/messaging/l2_actor.ts +2 -2
  1096. package/src/messaging/l2_to_l1_membership.ts +25 -30
  1097. package/src/messaging/l2_to_l1_message.ts +30 -1
  1098. package/src/messaging/out_hash.ts +36 -0
  1099. package/src/noir/index.ts +17 -6
  1100. package/src/note/index.ts +1 -1
  1101. package/src/note/note.ts +5 -2
  1102. package/src/note/note_dao.ts +182 -0
  1103. package/src/note/notes_filter.ts +4 -8
  1104. package/src/p2p/block_attestation.ts +50 -17
  1105. package/src/p2p/block_proposal.ts +20 -21
  1106. package/src/p2p/consensus_payload.ts +34 -24
  1107. package/src/p2p/gossipable.ts +17 -26
  1108. package/src/p2p/signature_utils.ts +3 -1
  1109. package/src/p2p/topic_type.ts +15 -8
  1110. package/src/parity/index.ts +2 -3
  1111. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +14 -12
  1112. package/src/parity/parity_public_inputs.ts +1 -1
  1113. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  1114. package/src/proofs/chonk_proof.ts +118 -0
  1115. package/src/proofs/index.ts +2 -1
  1116. package/src/proofs/proof.ts +1 -1
  1117. package/src/proofs/proof_data.ts +60 -0
  1118. package/src/proofs/proving_request_type.ts +14 -10
  1119. package/src/proofs/recursive_proof.ts +1 -1
  1120. package/src/rollup/avm_proof_data.ts +2 -38
  1121. package/src/rollup/base_rollup_hints.ts +22 -22
  1122. package/src/rollup/block_constant_data.ts +17 -7
  1123. package/src/rollup/block_headers_hash.ts +12 -0
  1124. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
  1125. package/src/rollup/block_rollup_public_inputs.ts +125 -0
  1126. package/src/rollup/block_root_rollup_private_inputs.ts +303 -0
  1127. package/src/rollup/checkpoint_constant_data.ts +124 -0
  1128. package/src/{tx/proposed_block_header.ts → rollup/checkpoint_header.ts} +83 -28
  1129. package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
  1130. package/src/rollup/{block_root_or_block_merge_public_inputs.ts → checkpoint_rollup_public_inputs.ts} +31 -53
  1131. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +219 -0
  1132. package/src/rollup/epoch_constant_data.ts +29 -11
  1133. package/src/rollup/index.ts +18 -16
  1134. package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
  1135. package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
  1136. package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
  1137. package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
  1138. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  1139. package/src/rollup/root_rollup_public_inputs.ts +99 -0
  1140. package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +27 -42
  1141. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  1142. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +14 -14
  1143. package/src/schemas/schemas.ts +24 -1
  1144. package/src/slashing/empire.ts +6 -4
  1145. package/src/slashing/helpers.ts +17 -12
  1146. package/src/slashing/interfaces.ts +3 -1
  1147. package/src/slashing/types.ts +47 -20
  1148. package/src/snapshots/download.ts +66 -2
  1149. package/src/snapshots/types.ts +33 -29
  1150. package/src/snapshots/upload.ts +1 -0
  1151. package/src/stats/stats.ts +31 -20
  1152. package/src/tests/factories.ts +472 -480
  1153. package/src/tests/mocks.ts +368 -84
  1154. package/src/trees/append_only_tree_snapshot.ts +12 -13
  1155. package/src/trees/database_public_state_source.ts +1 -1
  1156. package/src/trees/index.ts +0 -1
  1157. package/src/trees/nullifier_leaf.ts +33 -1
  1158. package/src/trees/nullifier_membership_witness.ts +1 -1
  1159. package/src/trees/public_data_leaf.ts +33 -1
  1160. package/src/trees/public_data_witness.ts +1 -1
  1161. package/src/tx/block_header.ts +47 -43
  1162. package/src/tx/call_context.ts +1 -1
  1163. package/src/tx/capsule.ts +1 -1
  1164. package/src/tx/content_commitment.ts +15 -2
  1165. package/src/tx/execution_payload.ts +60 -0
  1166. package/src/tx/function_data.ts +1 -1
  1167. package/src/tx/global_variable_builder.ts +10 -2
  1168. package/src/tx/global_variables.ts +76 -17
  1169. package/src/tx/hashed_values.ts +1 -1
  1170. package/src/tx/in_tx.ts +24 -0
  1171. package/src/tx/index.ts +4 -1
  1172. package/src/tx/indexed_tx_effect.ts +6 -5
  1173. package/src/tx/offchain_effect.ts +1 -1
  1174. package/src/tx/partial_state_reference.ts +14 -14
  1175. package/src/tx/private_execution_result.ts +17 -8
  1176. package/src/tx/private_tx_constant_data.ts +94 -0
  1177. package/src/tx/processed_tx.ts +23 -26
  1178. package/src/tx/profiling.ts +5 -9
  1179. package/src/tx/protocol_contracts.ts +86 -0
  1180. package/src/tx/proven_tx.ts +6 -6
  1181. package/src/tx/public_call_request_with_calldata.ts +18 -1
  1182. package/src/tx/public_simulation_output.ts +19 -2
  1183. package/src/tx/simulated_tx.ts +2 -2
  1184. package/src/tx/state_reference.ts +13 -15
  1185. package/src/tx/tree_snapshots.ts +17 -1
  1186. package/src/tx/tx.ts +37 -30
  1187. package/src/tx/tx_constant_data.ts +9 -22
  1188. package/src/tx/tx_context.ts +1 -1
  1189. package/src/tx/tx_effect.ts +110 -263
  1190. package/src/tx/tx_execution_request.ts +1 -1
  1191. package/src/tx/tx_hash.ts +1 -1
  1192. package/src/tx/tx_receipt.ts +3 -2
  1193. package/src/tx/tx_request.ts +2 -2
  1194. package/src/tx/validator/error_texts.ts +1 -1
  1195. package/src/tx/validator/tx_validator.ts +8 -6
  1196. package/src/update-checker/update-checker.ts +3 -2
  1197. package/src/validators/errors.ts +4 -5
  1198. package/src/validators/schemas.ts +55 -49
  1199. package/src/validators/types.ts +9 -8
  1200. package/src/versioning/versioning.ts +21 -16
  1201. package/src/vks/verification_key.ts +26 -1
  1202. package/src/vks/vk_data.ts +1 -1
  1203. package/src/world-state/index.ts +1 -0
  1204. package/src/world-state/world_state_revision.ts +63 -0
  1205. package/src/zkpassport/index.ts +41 -37
  1206. package/dest/avm/public_data_hint.d.ts +0 -16
  1207. package/dest/avm/public_data_hint.d.ts.map +0 -1
  1208. package/dest/avm/public_data_hint.js +0 -27
  1209. package/dest/block/l2_block_number.d.ts +0 -5
  1210. package/dest/block/l2_block_number.d.ts.map +0 -1
  1211. package/dest/block/l2_block_number.js +0 -6
  1212. package/dest/block/published_l2_block.d.ts +0 -121
  1213. package/dest/block/published_l2_block.d.ts.map +0 -1
  1214. package/dest/block/published_l2_block.js +0 -50
  1215. package/dest/interfaces/pxe.d.ts +0 -329
  1216. package/dest/interfaces/pxe.d.ts.map +0 -1
  1217. package/dest/interfaces/pxe.js +0 -100
  1218. package/dest/logs/indexed_tagging_secret.d.ts +0 -28
  1219. package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
  1220. package/dest/logs/indexed_tagging_secret.js +0 -50
  1221. package/dest/logs/log_with_tx_data.d.ts +0 -22
  1222. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1223. package/dest/logs/log_with_tx_data.js +0 -54
  1224. package/dest/note/extended_note.d.ts +0 -111
  1225. package/dest/note/extended_note.d.ts.map +0 -1
  1226. package/dest/note/extended_note.js +0 -106
  1227. package/dest/parity/base_parity_inputs.d.ts +0 -35
  1228. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  1229. package/dest/parity/root_parity_input.d.ts +0 -52
  1230. package/dest/parity/root_parity_input.d.ts.map +0 -1
  1231. package/dest/parity/root_parity_input.js +0 -50
  1232. package/dest/parity/root_parity_inputs.d.ts +0 -37
  1233. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  1234. package/dest/proofs/client_ivc_proof.d.ts +0 -18
  1235. package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
  1236. package/dest/proofs/client_ivc_proof.js +0 -41
  1237. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +0 -115
  1238. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  1239. package/dest/rollup/block_merge_rollup.d.ts +0 -43
  1240. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  1241. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -134
  1242. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
  1243. package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -125
  1244. package/dest/rollup/block_root_rollup.d.ts +0 -283
  1245. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  1246. package/dest/rollup/block_root_rollup.js +0 -306
  1247. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -51
  1248. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
  1249. package/dest/rollup/empty_block_root_rollup_inputs.js +0 -65
  1250. package/dest/rollup/merge_rollup.d.ts +0 -43
  1251. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  1252. package/dest/rollup/padding_block_root_rollup_inputs.d.ts +0 -20
  1253. package/dest/rollup/padding_block_root_rollup_inputs.d.ts.map +0 -1
  1254. package/dest/rollup/padding_block_root_rollup_inputs.js +0 -39
  1255. package/dest/rollup/previous_rollup_block_data.d.ts +0 -47
  1256. package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
  1257. package/dest/rollup/previous_rollup_block_data.js +0 -37
  1258. package/dest/rollup/previous_rollup_data.d.ts +0 -47
  1259. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  1260. package/dest/rollup/previous_rollup_data.js +0 -37
  1261. package/dest/rollup/private_base_rollup_inputs.d.ts +0 -21
  1262. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  1263. package/dest/rollup/private_base_rollup_inputs.js +0 -44
  1264. package/dest/rollup/private_tube_data.d.ts +0 -15
  1265. package/dest/rollup/private_tube_data.d.ts.map +0 -1
  1266. package/dest/rollup/private_tube_data.js +0 -25
  1267. package/dest/rollup/public_base_rollup_inputs.d.ts +0 -23
  1268. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  1269. package/dest/rollup/public_base_rollup_inputs.js +0 -48
  1270. package/dest/rollup/public_tube_data.d.ts +0 -15
  1271. package/dest/rollup/public_tube_data.d.ts.map +0 -1
  1272. package/dest/rollup/public_tube_data.js +0 -25
  1273. package/dest/rollup/root_rollup.d.ts +0 -106
  1274. package/dest/rollup/root_rollup.d.ts.map +0 -1
  1275. package/dest/rollup/root_rollup.js +0 -147
  1276. package/dest/rollup/state_diff_hints.d.ts +0 -103
  1277. package/dest/rollup/state_diff_hints.d.ts.map +0 -1
  1278. package/dest/rollup/state_diff_hints.js +0 -85
  1279. package/dest/rollup/tube_inputs.d.ts +0 -43
  1280. package/dest/rollup/tube_inputs.d.ts.map +0 -1
  1281. package/dest/rollup/tube_inputs.js +0 -63
  1282. package/dest/trees/protocol_contract_leaf.d.ts +0 -84
  1283. package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
  1284. package/dest/trees/protocol_contract_leaf.js +0 -100
  1285. package/dest/tx/proposed_block_header.d.ts +0 -82
  1286. package/dest/tx/proposed_block_header.d.ts.map +0 -1
  1287. package/src/avm/public_data_hint.ts +0 -38
  1288. package/src/block/l2_block_number.ts +0 -8
  1289. package/src/block/published_l2_block.ts +0 -60
  1290. package/src/interfaces/pxe.ts +0 -532
  1291. package/src/logs/indexed_tagging_secret.ts +0 -48
  1292. package/src/logs/log_with_tx_data.ts +0 -56
  1293. package/src/note/extended_note.ts +0 -149
  1294. package/src/parity/root_parity_input.ts +0 -71
  1295. package/src/proofs/client_ivc_proof.ts +0 -51
  1296. package/src/rollup/block_root_rollup.ts +0 -380
  1297. package/src/rollup/empty_block_root_rollup_inputs.ts +0 -80
  1298. package/src/rollup/padding_block_root_rollup_inputs.ts +0 -47
  1299. package/src/rollup/previous_rollup_block_data.ts +0 -48
  1300. package/src/rollup/previous_rollup_data.ts +0 -48
  1301. package/src/rollup/private_base_rollup_inputs.ts +0 -53
  1302. package/src/rollup/private_tube_data.ts +0 -35
  1303. package/src/rollup/public_base_rollup_inputs.ts +0 -59
  1304. package/src/rollup/public_tube_data.ts +0 -35
  1305. package/src/rollup/root_rollup.ts +0 -195
  1306. package/src/rollup/tube_inputs.ts +0 -77
  1307. package/src/trees/protocol_contract_leaf.ts +0 -128
package/dest/avm/avm.js CHANGED
@@ -1,29 +1,43 @@
1
+ import { DEFAULT_MAX_DEBUG_LOG_MEMORY_READS } from '@aztec/constants';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
1
3
  import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
2
- import { schemas } from '@aztec/foundation/schemas';
3
4
  import { z } from 'zod';
5
+ import { FunctionSelector } from '../abi/index.js';
4
6
  import { AztecAddress } from '../aztec-address/index.js';
7
+ import { AllContractDeploymentData, ContractDeploymentData } from '../contract/index.js';
8
+ import { SimulationError } from '../errors/simulation_error.js';
5
9
  import { computeEffectiveGasFees } from '../fees/transaction_fee.js';
6
10
  import { Gas } from '../gas/gas.js';
7
11
  import { GasFees } from '../gas/gas_fees.js';
8
12
  import { GasSettings } from '../gas/gas_settings.js';
13
+ import { GasUsed } from '../gas/gas_used.js';
9
14
  import { PublicKeys } from '../keys/public_keys.js';
15
+ import { DebugLog } from '../logs/debug_log.js';
16
+ import { PublicLog } from '../logs/public_log.js';
10
17
  import { ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
18
+ import { NullishToUndefined, schemas } from '../schemas/schemas.js';
11
19
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
12
20
  import { MerkleTreeId } from '../trees/merkle_tree_id.js';
13
- import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
14
- import { PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
15
- import { GlobalVariables, PublicCallRequestWithCalldata, TreeSnapshots } from '../tx/index.js';
21
+ import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
22
+ import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
23
+ import { GlobalVariables, NestedProcessReturnValues, ProtocolContracts, PublicCallRequestWithCalldata, TreeSnapshots } from '../tx/index.js';
24
+ import { TxExecutionPhase } from '../tx/processed_tx.js';
25
+ import { WorldStateRevision } from '../world-state/world_state_revision.js';
16
26
  import { AvmCircuitPublicInputs } from './avm_circuit_public_inputs.js';
17
27
  import { serializeWithMessagePack } from './message_pack.js';
28
+ import { PublicDataWrite } from './public_data_write.js';
29
+ import { RevertCode } from './revert_code.js';
18
30
  ////////////////////////////////////////////////////////////////////////////
19
31
  // Hints (contracts)
20
32
  ////////////////////////////////////////////////////////////////////////////
21
33
  export class AvmContractClassHint {
34
+ hintKey;
22
35
  classId;
23
36
  artifactHash;
24
37
  privateFunctionsRoot;
25
38
  packedBytecode;
26
- constructor(classId, artifactHash, privateFunctionsRoot, packedBytecode){
39
+ constructor(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode){
40
+ this.hintKey = hintKey;
27
41
  this.classId = classId;
28
42
  this.artifactHash = artifactHash;
29
43
  this.privateFunctionsRoot = privateFunctionsRoot;
@@ -31,28 +45,57 @@ export class AvmContractClassHint {
31
45
  }
32
46
  static get schema() {
33
47
  return z.object({
48
+ hintKey: z.number().int().nonnegative(),
34
49
  classId: schemas.Fr,
35
50
  artifactHash: schemas.Fr,
36
51
  privateFunctionsRoot: schemas.Fr,
37
52
  packedBytecode: schemas.Buffer
38
- }).transform(({ classId, artifactHash, privateFunctionsRoot, packedBytecode })=>new AvmContractClassHint(classId, artifactHash, privateFunctionsRoot, packedBytecode));
53
+ }).transform(({ hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode })=>new AvmContractClassHint(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode));
54
+ }
55
+ /**
56
+ * Creates an AvmContractClassHint from a plain object without Zod validation.
57
+ * This method is optimized for performance and skips validation, making it suitable
58
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
59
+ * @param obj - Plain object containing AvmContractClassHint fields
60
+ * @returns An AvmContractClassHint instance
61
+ */ static fromPlainObject(obj) {
62
+ if (obj instanceof AvmContractClassHint) {
63
+ return obj;
64
+ }
65
+ return new AvmContractClassHint(obj.hintKey, Fr.fromPlainObject(obj.classId), Fr.fromPlainObject(obj.artifactHash), Fr.fromPlainObject(obj.privateFunctionsRoot), obj.packedBytecode instanceof Buffer ? obj.packedBytecode : Buffer.from(obj.packedBytecode));
39
66
  }
40
67
  }
41
68
  export class AvmBytecodeCommitmentHint {
69
+ hintKey;
42
70
  classId;
43
71
  commitment;
44
- constructor(classId, commitment){
72
+ constructor(hintKey, classId, commitment){
73
+ this.hintKey = hintKey;
45
74
  this.classId = classId;
46
75
  this.commitment = commitment;
47
76
  }
48
77
  static get schema() {
49
78
  return z.object({
79
+ hintKey: z.number().int().nonnegative(),
50
80
  classId: schemas.Fr,
51
81
  commitment: schemas.Fr
52
- }).transform(({ classId, commitment })=>new AvmBytecodeCommitmentHint(classId, commitment));
82
+ }).transform(({ hintKey, classId, commitment })=>new AvmBytecodeCommitmentHint(hintKey, classId, commitment));
83
+ }
84
+ /**
85
+ * Creates an AvmBytecodeCommitmentHint from a plain object without Zod validation.
86
+ * This method is optimized for performance and skips validation, making it suitable
87
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
88
+ * @param obj - Plain object containing AvmBytecodeCommitmentHint fields
89
+ * @returns An AvmBytecodeCommitmentHint instance
90
+ */ static fromPlainObject(obj) {
91
+ if (obj instanceof AvmBytecodeCommitmentHint) {
92
+ return obj;
93
+ }
94
+ return new AvmBytecodeCommitmentHint(obj.hintKey, Fr.fromPlainObject(obj.classId), Fr.fromPlainObject(obj.commitment));
53
95
  }
54
96
  }
55
97
  export class AvmContractInstanceHint {
98
+ hintKey;
56
99
  address;
57
100
  salt;
58
101
  deployer;
@@ -60,7 +103,8 @@ export class AvmContractInstanceHint {
60
103
  originalContractClassId;
61
104
  initializationHash;
62
105
  publicKeys;
63
- constructor(address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys){
106
+ constructor(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys){
107
+ this.hintKey = hintKey;
64
108
  this.address = address;
65
109
  this.salt = salt;
66
110
  this.deployer = deployer;
@@ -71,6 +115,7 @@ export class AvmContractInstanceHint {
71
115
  }
72
116
  static get schema() {
73
117
  return z.object({
118
+ hintKey: z.number().int().nonnegative(),
74
119
  address: AztecAddress.schema,
75
120
  salt: schemas.Fr,
76
121
  deployer: AztecAddress.schema,
@@ -78,7 +123,48 @@ export class AvmContractInstanceHint {
78
123
  originalContractClassId: schemas.Fr,
79
124
  initializationHash: schemas.Fr,
80
125
  publicKeys: PublicKeys.schema
81
- }).transform(({ address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
126
+ }).transform(({ hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
127
+ }
128
+ /**
129
+ * Creates an AvmContractInstanceHint from a plain object without Zod validation.
130
+ * This method is optimized for performance and skips validation, making it suitable
131
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
132
+ * @param obj - Plain object containing AvmContractInstanceHint fields
133
+ * @returns An AvmContractInstanceHint instance
134
+ */ static fromPlainObject(obj) {
135
+ if (obj instanceof AvmContractInstanceHint) {
136
+ return obj;
137
+ }
138
+ return new AvmContractInstanceHint(obj.hintKey, AztecAddress.fromPlainObject(obj.address), Fr.fromPlainObject(obj.salt), AztecAddress.fromPlainObject(obj.deployer), Fr.fromPlainObject(obj.currentContractClassId), Fr.fromPlainObject(obj.originalContractClassId), Fr.fromPlainObject(obj.initializationHash), PublicKeys.fromPlainObject(obj.publicKeys));
139
+ }
140
+ }
141
+ export class AvmDebugFunctionNameHint {
142
+ address;
143
+ selector;
144
+ name;
145
+ constructor(address, selector, name){
146
+ this.address = address;
147
+ this.selector = selector;
148
+ this.name = name;
149
+ }
150
+ static get schema() {
151
+ return z.object({
152
+ address: AztecAddress.schema,
153
+ selector: schemas.Fr,
154
+ name: z.string()
155
+ }).transform(({ address, selector, name })=>new AvmDebugFunctionNameHint(address, selector, name));
156
+ }
157
+ /**
158
+ * Creates an AvmDebugFunctionNameHint from a plain object without Zod validation.
159
+ * This method is optimized for performance and skips validation, making it suitable
160
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
161
+ * @param obj - Plain object containing AvmDebugFunctionNameHint fields
162
+ * @returns An AvmDebugFunctionNameHint instance
163
+ */ static fromPlainObject(obj) {
164
+ if (obj instanceof AvmDebugFunctionNameHint) {
165
+ return obj;
166
+ }
167
+ return new AvmDebugFunctionNameHint(AztecAddress.fromPlainObject(obj.address), Fr.fromPlainObject(obj.selector), obj.name);
82
168
  }
83
169
  }
84
170
  ////////////////////////////////////////////////////////////////////////////
@@ -106,6 +192,18 @@ export class AvmGetSiblingPathHint {
106
192
  path: schemas.Fr.array()
107
193
  }).transform(({ hintKey, treeId, index, path })=>new AvmGetSiblingPathHint(hintKey, treeId, index, path));
108
194
  }
195
+ /**
196
+ * Creates an AvmGetSiblingPathHint from a plain object without Zod validation.
197
+ * This method is optimized for performance and skips validation, making it suitable
198
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
199
+ * @param obj - Plain object containing AvmGetSiblingPathHint fields
200
+ * @returns An AvmGetSiblingPathHint instance
201
+ */ static fromPlainObject(obj) {
202
+ if (obj instanceof AvmGetSiblingPathHint) {
203
+ return obj;
204
+ }
205
+ return new AvmGetSiblingPathHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), obj.path.map((p)=>Fr.fromPlainObject(p)));
206
+ }
109
207
  }
110
208
  // Hint for MerkleTreeDB.getPreviousValueIndex.
111
209
  export class AvmGetPreviousValueIndexHint {
@@ -132,6 +230,18 @@ export class AvmGetPreviousValueIndexHint {
132
230
  alreadyPresent: z.boolean()
133
231
  }).transform(({ hintKey, treeId, value, index, alreadyPresent })=>new AvmGetPreviousValueIndexHint(hintKey, treeId, value, index, alreadyPresent));
134
232
  }
233
+ /**
234
+ * Creates an AvmGetPreviousValueIndexHint from a plain object without Zod validation.
235
+ * This method is optimized for performance and skips validation, making it suitable
236
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
237
+ * @param obj - Plain object containing AvmGetPreviousValueIndexHint fields
238
+ * @returns An AvmGetPreviousValueIndexHint instance
239
+ */ static fromPlainObject(obj) {
240
+ if (obj instanceof AvmGetPreviousValueIndexHint) {
241
+ return obj;
242
+ }
243
+ return new AvmGetPreviousValueIndexHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, Fr.fromPlainObject(obj.value), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), obj.alreadyPresent);
244
+ }
135
245
  }
136
246
  // Hint for MerkleTreeDB.getLeafPreimage.
137
247
  // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
@@ -155,6 +265,18 @@ function AvmGetLeafPreimageHintFactory(klass) {
155
265
  leafPreimage: klass.schema
156
266
  }).transform(({ hintKey, index, leafPreimage })=>new this(hintKey, index, leafPreimage));
157
267
  }
268
+ /**
269
+ * Creates an instance from a plain object without Zod validation.
270
+ * This method is optimized for performance and skips validation, making it suitable
271
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
272
+ * @param obj - Plain object containing hint fields
273
+ * @returns An instance
274
+ */ static fromPlainObject(obj) {
275
+ if (obj instanceof this) {
276
+ return obj;
277
+ }
278
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), klass.fromPlainObject(obj.leafPreimage));
279
+ }
158
280
  };
159
281
  }
160
282
  // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
@@ -185,6 +307,18 @@ export class AvmGetLeafValueHint {
185
307
  value: schemas.Fr
186
308
  }).transform(({ hintKey, treeId, index, value })=>new AvmGetLeafValueHint(hintKey, treeId, index, value));
187
309
  }
310
+ /**
311
+ * Creates an AvmGetLeafValueHint from a plain object without Zod validation.
312
+ * This method is optimized for performance and skips validation, making it suitable
313
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
314
+ * @param obj - Plain object containing AvmGetLeafValueHint fields
315
+ * @returns An AvmGetLeafValueHint instance
316
+ */ static fromPlainObject(obj) {
317
+ if (obj instanceof AvmGetLeafValueHint) {
318
+ return obj;
319
+ }
320
+ return new AvmGetLeafValueHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), Fr.fromPlainObject(obj.value));
321
+ }
188
322
  }
189
323
  // Hint for MerkleTreeDB.sequentialInsert.
190
324
  // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
@@ -225,6 +359,28 @@ function AvmSequentialInsertHintFactory(klass) {
225
359
  })
226
360
  }).transform(({ hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData })=>new this(hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData));
227
361
  }
362
+ /**
363
+ * Creates an instance from a plain object without Zod validation.
364
+ * This method is optimized for performance and skips validation, making it suitable
365
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
366
+ * @param obj - Plain object containing hint fields
367
+ * @returns An instance
368
+ */ static fromPlainObject(obj) {
369
+ if (obj instanceof this) {
370
+ return obj;
371
+ }
372
+ // Determine the leaf class based on the klass parameter
373
+ const LeafClass = klass === PublicDataTreeLeafPreimage ? PublicDataTreeLeaf : NullifierLeaf;
374
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, LeafClass.fromPlainObject(obj.leaf), {
375
+ leaf: klass.fromPlainObject(obj.lowLeavesWitnessData.leaf),
376
+ index: typeof obj.lowLeavesWitnessData.index === 'bigint' ? obj.lowLeavesWitnessData.index : BigInt(obj.lowLeavesWitnessData.index),
377
+ path: obj.lowLeavesWitnessData.path.map((p)=>Fr.fromPlainObject(p))
378
+ }, {
379
+ leaf: klass.fromPlainObject(obj.insertionWitnessData.leaf),
380
+ index: typeof obj.insertionWitnessData.index === 'bigint' ? obj.insertionWitnessData.index : BigInt(obj.insertionWitnessData.index),
381
+ path: obj.insertionWitnessData.path.map((p)=>Fr.fromPlainObject(p))
382
+ });
383
+ }
228
384
  };
229
385
  }
230
386
  // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
@@ -254,6 +410,18 @@ export class AvmAppendLeavesHint {
254
410
  leaves: schemas.Fr.array()
255
411
  }).transform(({ hintKey, stateAfter, treeId, leaves })=>new AvmAppendLeavesHint(hintKey, stateAfter, treeId, leaves));
256
412
  }
413
+ /**
414
+ * Creates an AvmAppendLeavesHint from a plain object without Zod validation.
415
+ * This method is optimized for performance and skips validation, making it suitable
416
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
417
+ * @param obj - Plain object containing AvmAppendLeavesHint fields
418
+ * @returns An AvmAppendLeavesHint instance
419
+ */ static fromPlainObject(obj) {
420
+ if (obj instanceof AvmAppendLeavesHint) {
421
+ return obj;
422
+ }
423
+ return new AvmAppendLeavesHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, obj.leaves.map((l)=>Fr.fromPlainObject(l)));
424
+ }
257
425
  }
258
426
  // Hint for checkpoint actions that don't change the state.
259
427
  class AvmCheckpointActionNoStateChangeHint {
@@ -274,6 +442,18 @@ class AvmCheckpointActionNoStateChangeHint {
274
442
  newCheckpointId: z.number().int().nonnegative()
275
443
  }).transform(({ actionCounter, oldCheckpointId, newCheckpointId })=>new this(actionCounter, oldCheckpointId, newCheckpointId));
276
444
  }
445
+ /**
446
+ * Creates an instance from a plain object without Zod validation.
447
+ * This method is optimized for performance and skips validation, making it suitable
448
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
449
+ * @param obj - Plain object containing hint fields
450
+ * @returns An instance
451
+ */ static fromPlainObject(obj) {
452
+ if (obj instanceof this) {
453
+ return obj;
454
+ }
455
+ return new this(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId);
456
+ }
277
457
  }
278
458
  // Hint for MerkleTreeDB.createCheckpoint.
279
459
  export class AvmCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
@@ -311,6 +491,24 @@ export class AvmRevertCheckpointHint {
311
491
  stateAfter: TreeSnapshots.schema
312
492
  }).transform(({ actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter })=>new AvmRevertCheckpointHint(actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter));
313
493
  }
494
+ /**
495
+ * Creates an AvmRevertCheckpointHint from a plain object without Zod validation.
496
+ * This method is optimized for performance and skips validation, making it suitable
497
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
498
+ * @param obj - Plain object containing AvmRevertCheckpointHint fields
499
+ * @returns An AvmRevertCheckpointHint instance
500
+ */ static fromPlainObject(obj) {
501
+ if (obj instanceof AvmRevertCheckpointHint) {
502
+ return obj;
503
+ }
504
+ return new AvmRevertCheckpointHint(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId, TreeSnapshots.fromPlainObject(obj.stateBefore), TreeSnapshots.fromPlainObject(obj.stateAfter));
505
+ }
506
+ }
507
+ export class AvmContractDbCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
508
+ }
509
+ export class AvmContractDbCommitCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
510
+ }
511
+ export class AvmContractDbRevertCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
314
512
  }
315
513
  ////////////////////////////////////////////////////////////////////////////
316
514
  // Hints (other)
@@ -319,6 +517,8 @@ export class AvmTxHint {
319
517
  hash;
320
518
  gasSettings;
321
519
  effectiveGasFees;
520
+ nonRevertibleContractDeploymentData;
521
+ revertibleContractDeploymentData;
322
522
  nonRevertibleAccumulatedData;
323
523
  revertibleAccumulatedData;
324
524
  setupEnqueuedCalls;
@@ -326,12 +526,14 @@ export class AvmTxHint {
326
526
  teardownEnqueuedCall;
327
527
  gasUsedByPrivate;
328
528
  feePayer;
329
- constructor(hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, // We need this to be null and not undefined because that's what
529
+ constructor(hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, // We need this to be null and not undefined because that's what
330
530
  // MessagePack expects for an std::optional.
331
531
  teardownEnqueuedCall, gasUsedByPrivate, feePayer){
332
532
  this.hash = hash;
333
533
  this.gasSettings = gasSettings;
334
534
  this.effectiveGasFees = effectiveGasFees;
535
+ this.nonRevertibleContractDeploymentData = nonRevertibleContractDeploymentData;
536
+ this.revertibleContractDeploymentData = revertibleContractDeploymentData;
335
537
  this.nonRevertibleAccumulatedData = nonRevertibleAccumulatedData;
336
538
  this.revertibleAccumulatedData = revertibleAccumulatedData;
337
539
  this.setupEnqueuedCalls = setupEnqueuedCalls;
@@ -346,9 +548,10 @@ export class AvmTxHint {
346
548
  const teardownCallRequest = tx.getTeardownPublicCallRequestWithCalldata();
347
549
  const gasSettings = tx.data.constants.txContext.gasSettings;
348
550
  const effectiveGasFees = computeEffectiveGasFees(gasFees, gasSettings);
551
+ const allContractDeploymentData = AllContractDeploymentData.fromTx(tx);
349
552
  // For informational purposes. Assumed quick because it should be cached.
350
553
  const txHash = tx.getTxHash();
351
- return new AvmTxHint(txHash.hash.toString(), gasSettings, effectiveGasFees, {
554
+ return new AvmTxHint(txHash.hash.toString(), gasSettings, effectiveGasFees, allContractDeploymentData.getNonRevertibleContractDeploymentData(), allContractDeploymentData.getRevertibleContractDeploymentData(), {
352
555
  noteHashes: tx.data.forPublic.nonRevertibleAccumulatedData.noteHashes.filter((x)=>!x.isZero()),
353
556
  nullifiers: tx.data.forPublic.nonRevertibleAccumulatedData.nullifiers.filter((x)=>!x.isZero()),
354
557
  l2ToL1Messages: tx.data.forPublic.nonRevertibleAccumulatedData.l2ToL1Msgs.filter((x)=>!x.isEmpty())
@@ -359,7 +562,7 @@ export class AvmTxHint {
359
562
  }, setupCallRequests, appLogicCallRequests, teardownCallRequest ?? null, tx.data.gasUsed, tx.data.feePayer);
360
563
  }
361
564
  static empty() {
362
- return new AvmTxHint('', GasSettings.empty(), GasFees.empty(), {
565
+ return new AvmTxHint('', GasSettings.empty(), GasFees.empty(), ContractDeploymentData.empty(), ContractDeploymentData.empty(), {
363
566
  noteHashes: [],
364
567
  nullifiers: [],
365
568
  l2ToL1Messages: []
@@ -369,11 +572,33 @@ export class AvmTxHint {
369
572
  l2ToL1Messages: []
370
573
  }, [], [], null, Gas.empty(), AztecAddress.zero());
371
574
  }
575
+ /**
576
+ * Creates an AvmTxHint from a plain object without Zod validation.
577
+ * This method is optimized for performance and skips validation, making it suitable
578
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
579
+ * @param obj - Plain object containing AvmTxHint fields
580
+ * @returns An AvmTxHint instance
581
+ */ static fromPlainObject(obj) {
582
+ if (obj instanceof AvmTxHint) {
583
+ return obj;
584
+ }
585
+ return new AvmTxHint(obj.hash, GasSettings.fromPlainObject(obj.gasSettings), GasFees.fromPlainObject(obj.effectiveGasFees), ContractDeploymentData.fromPlainObject(obj.nonRevertibleContractDeploymentData), ContractDeploymentData.fromPlainObject(obj.revertibleContractDeploymentData), {
586
+ noteHashes: obj.nonRevertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
587
+ nullifiers: obj.nonRevertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
588
+ l2ToL1Messages: obj.nonRevertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
589
+ }, {
590
+ noteHashes: obj.revertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
591
+ nullifiers: obj.revertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
592
+ l2ToL1Messages: obj.revertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
593
+ }, obj.setupEnqueuedCalls.map((c)=>PublicCallRequestWithCalldata.fromPlainObject(c)), obj.appLogicEnqueuedCalls.map((c)=>PublicCallRequestWithCalldata.fromPlainObject(c)), obj.teardownEnqueuedCall ? PublicCallRequestWithCalldata.fromPlainObject(obj.teardownEnqueuedCall) : null, Gas.fromPlainObject(obj.gasUsedByPrivate), AztecAddress.fromPlainObject(obj.feePayer));
594
+ }
372
595
  static get schema() {
373
596
  return z.object({
374
597
  hash: z.string(),
375
598
  gasSettings: GasSettings.schema,
376
599
  effectiveGasFees: GasFees.schema,
600
+ nonRevertibleContractDeploymentData: ContractDeploymentData.schema,
601
+ revertibleContractDeploymentData: ContractDeploymentData.schema,
377
602
  nonRevertibleAccumulatedData: z.object({
378
603
  noteHashes: schemas.Fr.array(),
379
604
  nullifiers: schemas.Fr.array(),
@@ -389,15 +614,20 @@ export class AvmTxHint {
389
614
  teardownEnqueuedCall: PublicCallRequestWithCalldata.schema.nullable(),
390
615
  gasUsedByPrivate: Gas.schema,
391
616
  feePayer: AztecAddress.schema
392
- }).transform(({ hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer })=>new AvmTxHint(hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer));
617
+ }).transform(({ hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer })=>new AvmTxHint(hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer));
393
618
  }
394
619
  }
395
620
  export class AvmExecutionHints {
396
621
  globalVariables;
397
622
  tx;
623
+ protocolContracts;
398
624
  contractInstances;
399
625
  contractClasses;
400
626
  bytecodeCommitments;
627
+ debugFunctionNames;
628
+ contractDbCreateCheckpointHints;
629
+ contractDbCommitCheckpointHints;
630
+ contractDbRevertCheckpointHints;
401
631
  startingTreeRoots;
402
632
  getSiblingPathHints;
403
633
  getPreviousValueIndexHints;
@@ -410,14 +640,20 @@ export class AvmExecutionHints {
410
640
  createCheckpointHints;
411
641
  commitCheckpointHints;
412
642
  revertCheckpointHints;
413
- constructor(globalVariables, tx, // Contract hints.
414
- contractInstances = [], contractClasses = [], bytecodeCommitments = [], // Merkle DB hints.
643
+ constructor(globalVariables, tx, // Protocol contracts.
644
+ protocolContracts, // Contract hints.
645
+ contractInstances = [], contractClasses = [], bytecodeCommitments = [], debugFunctionNames = [], contractDbCreateCheckpointHints = [], contractDbCommitCheckpointHints = [], contractDbRevertCheckpointHints = [], // Merkle DB hints.
415
646
  startingTreeRoots = TreeSnapshots.empty(), getSiblingPathHints = [], getPreviousValueIndexHints = [], getLeafPreimageHintsPublicDataTree = [], getLeafPreimageHintsNullifierTree = [], getLeafValueHints = [], sequentialInsertHintsPublicDataTree = [], sequentialInsertHintsNullifierTree = [], appendLeavesHints = [], createCheckpointHints = [], commitCheckpointHints = [], revertCheckpointHints = []){
416
647
  this.globalVariables = globalVariables;
417
648
  this.tx = tx;
649
+ this.protocolContracts = protocolContracts;
418
650
  this.contractInstances = contractInstances;
419
651
  this.contractClasses = contractClasses;
420
652
  this.bytecodeCommitments = bytecodeCommitments;
653
+ this.debugFunctionNames = debugFunctionNames;
654
+ this.contractDbCreateCheckpointHints = contractDbCreateCheckpointHints;
655
+ this.contractDbCommitCheckpointHints = contractDbCommitCheckpointHints;
656
+ this.contractDbRevertCheckpointHints = contractDbRevertCheckpointHints;
421
657
  this.startingTreeRoots = startingTreeRoots;
422
658
  this.getSiblingPathHints = getSiblingPathHints;
423
659
  this.getPreviousValueIndexHints = getPreviousValueIndexHints;
@@ -431,16 +667,33 @@ export class AvmExecutionHints {
431
667
  this.commitCheckpointHints = commitCheckpointHints;
432
668
  this.revertCheckpointHints = revertCheckpointHints;
433
669
  }
670
+ /**
671
+ * Creates an AvmExecutionHints from a plain object without Zod validation.
672
+ * This method is optimized for performance and skips validation, making it suitable
673
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
674
+ * @param obj - Plain object containing AvmExecutionHints fields
675
+ * @returns An AvmExecutionHints instance
676
+ */ static fromPlainObject(obj) {
677
+ if (obj instanceof AvmExecutionHints) {
678
+ return obj;
679
+ }
680
+ return new AvmExecutionHints(GlobalVariables.fromPlainObject(obj.globalVariables), AvmTxHint.fromPlainObject(obj.tx), ProtocolContracts.fromPlainObject(obj.protocolContracts), obj.contractInstances?.map((i)=>AvmContractInstanceHint.fromPlainObject(i)) || [], obj.contractClasses?.map((c)=>AvmContractClassHint.fromPlainObject(c)) || [], obj.bytecodeCommitments?.map((b)=>AvmBytecodeCommitmentHint.fromPlainObject(b)) || [], obj.debugFunctionNames?.map((d)=>AvmDebugFunctionNameHint.fromPlainObject(d)) || [], obj.contractDbCreateCheckpointHints?.map((h)=>AvmContractDbCreateCheckpointHint.fromPlainObject(h)) || [], obj.contractDbCommitCheckpointHints?.map((h)=>AvmContractDbCommitCheckpointHint.fromPlainObject(h)) || [], obj.contractDbRevertCheckpointHints?.map((h)=>AvmContractDbRevertCheckpointHint.fromPlainObject(h)) || [], obj.startingTreeRoots ? TreeSnapshots.fromPlainObject(obj.startingTreeRoots) : TreeSnapshots.empty(), obj.getSiblingPathHints?.map((h)=>AvmGetSiblingPathHint.fromPlainObject(h)) || [], obj.getPreviousValueIndexHints?.map((h)=>AvmGetPreviousValueIndexHint.fromPlainObject(h)) || [], obj.getLeafPreimageHintsPublicDataTree?.map((h)=>AvmGetLeafPreimageHintPublicDataTree.fromPlainObject(h)) || [], obj.getLeafPreimageHintsNullifierTree?.map((h)=>AvmGetLeafPreimageHintNullifierTree.fromPlainObject(h)) || [], obj.getLeafValueHints?.map((h)=>AvmGetLeafValueHint.fromPlainObject(h)) || [], obj.sequentialInsertHintsPublicDataTree?.map((h)=>AvmSequentialInsertHintPublicDataTree.fromPlainObject(h)) || [], obj.sequentialInsertHintsNullifierTree?.map((h)=>AvmSequentialInsertHintNullifierTree.fromPlainObject(h)) || [], obj.appendLeavesHints?.map((h)=>AvmAppendLeavesHint.fromPlainObject(h)) || [], obj.createCheckpointHints?.map((h)=>AvmCreateCheckpointHint.fromPlainObject(h)) || [], obj.commitCheckpointHints?.map((h)=>AvmCommitCheckpointHint.fromPlainObject(h)) || [], obj.revertCheckpointHints?.map((h)=>AvmRevertCheckpointHint.fromPlainObject(h)) || []);
681
+ }
434
682
  static empty() {
435
- return new AvmExecutionHints(GlobalVariables.empty(), AvmTxHint.empty());
683
+ return new AvmExecutionHints(GlobalVariables.empty(), AvmTxHint.empty(), ProtocolContracts.empty());
436
684
  }
437
685
  static get schema() {
438
686
  return z.object({
439
687
  globalVariables: GlobalVariables.schema,
440
688
  tx: AvmTxHint.schema,
689
+ protocolContracts: ProtocolContracts.schema,
441
690
  contractInstances: AvmContractInstanceHint.schema.array(),
442
691
  contractClasses: AvmContractClassHint.schema.array(),
443
692
  bytecodeCommitments: AvmBytecodeCommitmentHint.schema.array(),
693
+ debugFunctionNames: AvmDebugFunctionNameHint.schema.array(),
694
+ contractDbCreateCheckpointHints: AvmContractDbCreateCheckpointHint.schema.array(),
695
+ contractDbCommitCheckpointHints: AvmContractDbCommitCheckpointHint.schema.array(),
696
+ contractDbRevertCheckpointHints: AvmContractDbRevertCheckpointHint.schema.array(),
444
697
  startingTreeRoots: TreeSnapshots.schema,
445
698
  getSiblingPathHints: AvmGetSiblingPathHint.schema.array(),
446
699
  getPreviousValueIndexHints: AvmGetPreviousValueIndexHint.schema.array(),
@@ -453,7 +706,7 @@ export class AvmExecutionHints {
453
706
  createCheckpointHints: AvmCreateCheckpointHint.schema.array(),
454
707
  commitCheckpointHints: AvmCommitCheckpointHint.schema.array(),
455
708
  revertCheckpointHints: AvmRevertCheckpointHint.schema.array()
456
- }).transform(({ globalVariables, tx, contractInstances, contractClasses, bytecodeCommitments, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints })=>new AvmExecutionHints(globalVariables, tx, contractInstances, contractClasses, bytecodeCommitments, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints));
709
+ }).transform(({ globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, debugFunctionNames, contractDbCreateCheckpointHints, contractDbCommitCheckpointHints, contractDbRevertCheckpointHints, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints })=>new AvmExecutionHints(globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, debugFunctionNames, contractDbCreateCheckpointHints, contractDbCommitCheckpointHints, contractDbRevertCheckpointHints, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints));
457
710
  }
458
711
  }
459
712
  export class AvmCircuitInputs {
@@ -466,6 +719,9 @@ export class AvmCircuitInputs {
466
719
  static empty() {
467
720
  return new AvmCircuitInputs(AvmExecutionHints.empty(), AvmCircuitPublicInputs.empty());
468
721
  }
722
+ static fromPlainObject(obj) {
723
+ return new AvmCircuitInputs(AvmExecutionHints.fromPlainObject(obj.hints), AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs));
724
+ }
469
725
  static get schema() {
470
726
  return z.object({
471
727
  hints: AvmExecutionHints.schema,
@@ -483,3 +739,326 @@ export class AvmCircuitInputs {
483
739
  return jsonParseWithSchema(buf.toString(), this.schema);
484
740
  }
485
741
  }
742
+ // Metadata about a given (enqueued or external) call.
743
+ export class CallStackMetadata {
744
+ phase;
745
+ contractAddress;
746
+ callerPc;
747
+ calldata;
748
+ isStaticCall;
749
+ gasLimit;
750
+ output;
751
+ internalCallStackAtExit;
752
+ haltingMessage;
753
+ reverted;
754
+ nested;
755
+ numNestedCalls;
756
+ constructor(phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls){
757
+ this.phase = phase;
758
+ this.contractAddress = contractAddress;
759
+ this.callerPc = callerPc;
760
+ this.calldata = calldata;
761
+ this.isStaticCall = isStaticCall;
762
+ this.gasLimit = gasLimit;
763
+ this.output = output;
764
+ this.internalCallStackAtExit = internalCallStackAtExit;
765
+ this.haltingMessage = haltingMessage;
766
+ this.reverted = reverted;
767
+ this.nested = nested;
768
+ this.numNestedCalls = numNestedCalls;
769
+ }
770
+ static get schema() {
771
+ return z.object({
772
+ phase: z.nativeEnum(TxExecutionPhase),
773
+ contractAddress: Fr.schema,
774
+ callerPc: z.number(),
775
+ calldata: Fr.schema.array(),
776
+ isStaticCall: z.boolean(),
777
+ gasLimit: Gas.schema,
778
+ output: Fr.schema.array(),
779
+ internalCallStackAtExit: z.number().array(),
780
+ haltingMessage: NullishToUndefined(z.string()),
781
+ reverted: z.boolean(),
782
+ nested: CallStackMetadata.schema.array(),
783
+ numNestedCalls: z.number()
784
+ }).transform(({ phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls })=>new CallStackMetadata(phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls));
785
+ }
786
+ /**
787
+ * Creates a CallStackMetadata from a plain object without Zod validation.
788
+ * This method is optimized for performance and skips validation, making it suitable
789
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
790
+ * @param obj - Plain object containing CallStackMetadata fields
791
+ * @returns A CallStackMetadata instance
792
+ */ static fromPlainObject(obj) {
793
+ if (obj instanceof CallStackMetadata) {
794
+ return obj;
795
+ }
796
+ return new CallStackMetadata(obj.phase, Fr.fromPlainObject(obj.contractAddress), obj.callerPc, obj.calldata.map((f)=>Fr.fromPlainObject(f)), obj.isStaticCall, Gas.fromPlainObject(obj.gasLimit), obj.output.map((f)=>Fr.fromPlainObject(f)), obj.internalCallStackAtExit.map((p)=>Number(p)), obj.haltingMessage, obj.reverted, obj.nested.map((n)=>CallStackMetadata.fromPlainObject(n)), obj.numNestedCalls);
797
+ }
798
+ getRevertReason() {
799
+ const failingCall = this.findDeepestRevert([
800
+ this
801
+ ]);
802
+ if (!failingCall) {
803
+ return undefined;
804
+ }
805
+ const { stack, leaf } = failingCall;
806
+ const aztecCallStack = stack.map((call)=>({
807
+ contractAddress: AztecAddress.fromField(call.contractAddress),
808
+ functionSelector: call.calldata.length > 0 ? FunctionSelector.fromFieldOrUndefined(call.calldata[0]) : undefined
809
+ }));
810
+ // The Noir call stack is the internal call stack at exit of the failing call
811
+ const noirCallStack = leaf.internalCallStackAtExit.map((pc)=>`0.${pc}`);
812
+ return new SimulationError(leaf.haltingMessage ?? 'Transaction reverted', aztecCallStack, leaf.output, noirCallStack);
813
+ }
814
+ /**
815
+ * Finds the "rightmost deepest" revert in the call tree.
816
+ *
817
+ * At each level, we select the LAST (rightmost) reverted call, then recurse into its
818
+ * nested calls to find the deepest reverted leaf along that path. The chain stops
819
+ * when we encounter a non-reverted call (since you can choose not to rethrow).
820
+ *
821
+ * Examples (X = reverted, O = passed):
822
+ *
823
+ * 1. [X, X, X] at depth 1 -> returns the last X (rightmost)
824
+ *
825
+ * 2. [X(depth2), X, X] where first X has a nested revert -> returns the last X at depth 1,
826
+ * NOT the deeper revert in the first X (rightmost takes priority over depth)
827
+ *
828
+ * 3. X -> X -> X -> O -> O -> X (nested chain)
829
+ * Returns the 3rd X, because the O's break the reverted chain (they didn't rethrow)
830
+ *
831
+ * @param calls - Array of call metadata at the current level
832
+ * @param parentStack - Accumulated stack of parent calls (for building the result)
833
+ * @returns The deepest reverted call along the rightmost reverted path, or undefined if none
834
+ */ findDeepestRevert(calls, parentStack = []) {
835
+ const lastReverted = calls.findLast((call)=>call.reverted);
836
+ if (!lastReverted) {
837
+ return undefined;
838
+ }
839
+ const currentStack = [
840
+ ...parentStack,
841
+ lastReverted
842
+ ];
843
+ return this.findDeepestRevert(lastReverted.nested, currentStack) || {
844
+ stack: currentStack,
845
+ leaf: lastReverted
846
+ };
847
+ }
848
+ }
849
+ export class PublicTxEffect {
850
+ transactionFee;
851
+ noteHashes;
852
+ nullifiers;
853
+ l2ToL1Msgs;
854
+ publicLogs;
855
+ publicDataWrites;
856
+ constructor(transactionFee, noteHashes, nullifiers, l2ToL1Msgs, publicLogs, publicDataWrites){
857
+ this.transactionFee = transactionFee;
858
+ this.noteHashes = noteHashes;
859
+ this.nullifiers = nullifiers;
860
+ this.l2ToL1Msgs = l2ToL1Msgs;
861
+ this.publicLogs = publicLogs;
862
+ this.publicDataWrites = publicDataWrites;
863
+ }
864
+ static empty() {
865
+ return new PublicTxEffect(Fr.ZERO, [], [], [], [], []);
866
+ }
867
+ static get schema() {
868
+ return z.object({
869
+ transactionFee: Fr.schema,
870
+ noteHashes: Fr.schema.array(),
871
+ nullifiers: Fr.schema.array(),
872
+ l2ToL1Msgs: ScopedL2ToL1Message.schema.array(),
873
+ publicLogs: PublicLog.schema.array(),
874
+ publicDataWrites: PublicDataWrite.schema.array()
875
+ }).transform(PublicTxEffect.from);
876
+ }
877
+ static from(obj) {
878
+ return new PublicTxEffect(obj.transactionFee, obj.noteHashes, obj.nullifiers, obj.l2ToL1Msgs, obj.publicLogs, obj.publicDataWrites);
879
+ }
880
+ static fromPlainObject(obj) {
881
+ return new PublicTxEffect(Fr.fromPlainObject(obj.transactionFee), obj.noteHashes.map((h)=>Fr.fromPlainObject(h)), obj.nullifiers.map((n)=>Fr.fromPlainObject(n)), obj.l2ToL1Msgs.map((m)=>ScopedL2ToL1Message.fromPlainObject(m)), obj.publicLogs.map((l)=>PublicLog.fromPlainObject(l)), obj.publicDataWrites.map((w)=>PublicDataWrite.fromPlainObject(w)));
882
+ }
883
+ equals(other) {
884
+ return this.transactionFee.equals(other.transactionFee) && this.noteHashes.length === other.noteHashes.length && this.noteHashes.every((h, i)=>h.equals(other.noteHashes[i])) && this.nullifiers.length === other.nullifiers.length && this.nullifiers.every((h, i)=>h.equals(other.nullifiers[i])) && this.l2ToL1Msgs.length === other.l2ToL1Msgs.length && this.l2ToL1Msgs.every((m, i)=>m.equals(other.l2ToL1Msgs[i])) && this.publicLogs.length === other.publicLogs.length && this.publicLogs.every((l, i)=>l.equals(other.publicLogs[i])) && this.publicDataWrites.length === other.publicDataWrites.length && this.publicDataWrites.every((w, i)=>w.equals(other.publicDataWrites[i]));
885
+ }
886
+ }
887
+ export class PublicTxResult {
888
+ gasUsed;
889
+ revertCode;
890
+ publicTxEffect;
891
+ callStackMetadata;
892
+ logs;
893
+ hints;
894
+ publicInputs;
895
+ constructor(// Simulation result.
896
+ gasUsed, revertCode, publicTxEffect, // These are only guaranteed to be present if the simulator is configured to collect them.
897
+ // TODO(fcarreiro): Remove NestedProcessReturnValues[] once we migrate to the C++ simulator.
898
+ callStackMetadata, logs, // For the proving request.
899
+ hints, publicInputs){
900
+ this.gasUsed = gasUsed;
901
+ this.revertCode = revertCode;
902
+ this.publicTxEffect = publicTxEffect;
903
+ this.callStackMetadata = callStackMetadata;
904
+ this.logs = logs;
905
+ this.hints = hints;
906
+ this.publicInputs = publicInputs;
907
+ }
908
+ static empty() {
909
+ return new PublicTxResult({
910
+ totalGas: Gas.empty(),
911
+ teardownGas: Gas.empty(),
912
+ publicGas: Gas.empty(),
913
+ billedGas: Gas.empty()
914
+ }, RevertCode.OK, PublicTxEffect.empty(), /*callStackMetadata=*/ [], /*logs=*/ [], /*hints=*/ AvmExecutionHints.empty(), /*publicInputs=*/ AvmCircuitPublicInputs.empty());
915
+ }
916
+ static get schema() {
917
+ return z.object({
918
+ gasUsed: schemas.GasUsed,
919
+ revertCode: RevertCode.schema,
920
+ revertReason: NullishToUndefined(SimulationError.schema),
921
+ publicTxEffect: PublicTxEffect.schema,
922
+ callStackMetadata: z.union([
923
+ CallStackMetadata.schema.array(),
924
+ NestedProcessReturnValues.schema.array()
925
+ ]),
926
+ logs: NullishToUndefined(DebugLog.schema.array()),
927
+ // For the proving request.
928
+ publicInputs: NullishToUndefined(AvmCircuitPublicInputs.schema),
929
+ hints: NullishToUndefined(AvmExecutionHints.schema)
930
+ }).transform(({ gasUsed, revertCode, publicTxEffect, callStackMetadata, logs, hints, publicInputs })=>new PublicTxResult(gasUsed, revertCode, publicTxEffect, callStackMetadata, logs, hints, publicInputs));
931
+ }
932
+ /**
933
+ * Creates a PublicTxResult from a plain object without Zod validation.
934
+ * This method is optimized for performance and skips validation, making it suitable
935
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
936
+ * @param obj - Plain object containing PublicTxResult fields
937
+ * @returns A PublicTxResult instance
938
+ */ static fromPlainObject(obj) {
939
+ return new PublicTxResult(GasUsed.fromPlainObject(obj.gasUsed), RevertCode.fromPlainObject(obj.revertCode), PublicTxEffect.fromPlainObject(obj.publicTxEffect), obj.callStackMetadata.map(CallStackMetadata.fromPlainObject), obj.logs?.map(DebugLog.fromPlainObject), obj.hints ? AvmExecutionHints.fromPlainObject(obj.hints) : undefined, obj.publicInputs ? AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs) : undefined);
940
+ }
941
+ /** Returns one level of return values for the app logic phase, one per enqueued call. */ getAppLogicReturnValues() {
942
+ if (this.callStackMetadata.every((metadata)=>metadata instanceof CallStackMetadata)) {
943
+ return this.callStackMetadata.filter((metadata)=>metadata.phase === TxExecutionPhase.APP_LOGIC).map((metadata)=>new NestedProcessReturnValues(metadata.output));
944
+ } else {
945
+ return this.callStackMetadata.map((metadata)=>new NestedProcessReturnValues(metadata.values, metadata.nested));
946
+ }
947
+ }
948
+ findRevertReason() {
949
+ if (this.revertCode.isOK()) {
950
+ return undefined;
951
+ }
952
+ const callStackMetadata = this.callStackMetadata;
953
+ // TODO(fcarreiro): Remove this after migration to the C++ simulator.
954
+ // If the "stack" comes from TS, it will have this field.
955
+ if (callStackMetadata.revertReason !== undefined) {
956
+ return callStackMetadata.revertReason;
957
+ }
958
+ // Handle CallStackMetadata[].
959
+ let revertReason = undefined;
960
+ for (const call of callStackMetadata){
961
+ revertReason = call.getRevertReason();
962
+ if (revertReason) {
963
+ break;
964
+ }
965
+ }
966
+ return revertReason;
967
+ }
968
+ }
969
+ export class CollectionLimitsConfig {
970
+ maxDebugLogMemoryReads;
971
+ maxCalldataSizeInFields;
972
+ maxReturndataSizeInFields;
973
+ maxCallStackDepth;
974
+ maxCallStackItems;
975
+ constructor(maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems){
976
+ this.maxDebugLogMemoryReads = maxDebugLogMemoryReads;
977
+ this.maxCalldataSizeInFields = maxCalldataSizeInFields;
978
+ this.maxReturndataSizeInFields = maxReturndataSizeInFields;
979
+ this.maxCallStackDepth = maxCallStackDepth;
980
+ this.maxCallStackItems = maxCallStackItems;
981
+ }
982
+ static from(obj) {
983
+ return new CollectionLimitsConfig(obj.maxDebugLogMemoryReads ?? DEFAULT_MAX_DEBUG_LOG_MEMORY_READS, obj.maxCalldataSizeInFields ?? 300, obj.maxReturndataSizeInFields ?? 300, obj.maxCallStackDepth ?? 5, obj.maxCallStackItems ?? 100);
984
+ }
985
+ static empty() {
986
+ return CollectionLimitsConfig.from({});
987
+ }
988
+ static get schema() {
989
+ return z.object({
990
+ maxDebugLogMemoryReads: z.number(),
991
+ maxCalldataSizeInFields: z.number(),
992
+ maxReturndataSizeInFields: z.number(),
993
+ maxCallStackDepth: z.number(),
994
+ maxCallStackItems: z.number()
995
+ }).transform(({ maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems })=>new CollectionLimitsConfig(maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems));
996
+ }
997
+ }
998
+ export class PublicSimulatorConfig {
999
+ proverId;
1000
+ skipFeeEnforcement;
1001
+ collectCallMetadata;
1002
+ collectHints;
1003
+ collectPublicInputs;
1004
+ collectDebugLogs;
1005
+ collectStatistics;
1006
+ collectionLimits;
1007
+ constructor(proverId, skipFeeEnforcement, collectCallMetadata, collectHints, collectPublicInputs, collectDebugLogs, collectStatistics, collectionLimits){
1008
+ this.proverId = proverId;
1009
+ this.skipFeeEnforcement = skipFeeEnforcement;
1010
+ this.collectCallMetadata = collectCallMetadata;
1011
+ this.collectHints = collectHints;
1012
+ this.collectPublicInputs = collectPublicInputs;
1013
+ this.collectDebugLogs = collectDebugLogs;
1014
+ this.collectStatistics = collectStatistics;
1015
+ this.collectionLimits = collectionLimits;
1016
+ }
1017
+ static from(obj) {
1018
+ return new PublicSimulatorConfig(obj.proverId ?? Fr.ZERO, obj.skipFeeEnforcement ?? false, obj.collectCallMetadata ?? false, obj.collectHints ?? false, obj.collectPublicInputs ?? false, obj.collectDebugLogs ?? false, obj.collectStatistics ?? false, obj.collectionLimits ?? CollectionLimitsConfig.empty());
1019
+ }
1020
+ static empty() {
1021
+ return PublicSimulatorConfig.from({});
1022
+ }
1023
+ static get schema() {
1024
+ return z.object({
1025
+ proverId: Fr.schema,
1026
+ skipFeeEnforcement: z.boolean(),
1027
+ collectCallMetadata: z.boolean(),
1028
+ collectHints: z.boolean(),
1029
+ collectPublicInputs: z.boolean(),
1030
+ collectDebugLogs: z.boolean(),
1031
+ collectStatistics: z.boolean(),
1032
+ collectionLimits: CollectionLimitsConfig.schema
1033
+ }).transform(PublicSimulatorConfig.from);
1034
+ }
1035
+ }
1036
+ export class AvmFastSimulationInputs {
1037
+ wsRevision;
1038
+ config;
1039
+ tx;
1040
+ globalVariables;
1041
+ protocolContracts;
1042
+ constructor(wsRevision, config, tx, globalVariables, protocolContracts){
1043
+ this.wsRevision = wsRevision;
1044
+ this.config = config;
1045
+ this.tx = tx;
1046
+ this.globalVariables = globalVariables;
1047
+ this.protocolContracts = protocolContracts;
1048
+ }
1049
+ static empty() {
1050
+ return new AvmFastSimulationInputs(WorldStateRevision.empty(), PublicSimulatorConfig.empty(), AvmTxHint.empty(), GlobalVariables.empty(), ProtocolContracts.empty());
1051
+ }
1052
+ static get schema() {
1053
+ return z.object({
1054
+ wsRevision: WorldStateRevision.schema,
1055
+ config: PublicSimulatorConfig.schema,
1056
+ tx: AvmTxHint.schema,
1057
+ globalVariables: GlobalVariables.schema,
1058
+ protocolContracts: ProtocolContracts.schema
1059
+ }).transform(({ wsRevision, config, tx, globalVariables, protocolContracts })=>new AvmFastSimulationInputs(wsRevision, config, tx, globalVariables, protocolContracts));
1060
+ }
1061
+ serializeWithMessagePack() {
1062
+ return serializeWithMessagePack(this);
1063
+ }
1064
+ }