@aztec/stdlib 0.0.1-commit.7b97ef96e → 0.0.1-commit.7cbc774

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 (961) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +7 -25
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_selector.d.ts +3 -6
  26. package/dest/abi/function_selector.d.ts.map +1 -1
  27. package/dest/abi/function_selector.js +2 -4
  28. package/dest/abi/function_signature_decoder.d.ts +43 -0
  29. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  30. package/dest/abi/function_signature_decoder.js +66 -0
  31. package/dest/abi/index.d.ts +2 -1
  32. package/dest/abi/index.d.ts.map +1 -1
  33. package/dest/abi/index.js +1 -0
  34. package/dest/abi/note_selector.d.ts +4 -7
  35. package/dest/abi/note_selector.d.ts.map +1 -1
  36. package/dest/abi/note_selector.js +1 -3
  37. package/dest/abi/selector.d.ts +2 -2
  38. package/dest/abi/selector.d.ts.map +1 -1
  39. package/dest/abi/selector.js +1 -1
  40. package/dest/abi/utils.d.ts +14 -1
  41. package/dest/abi/utils.d.ts.map +1 -1
  42. package/dest/abi/utils.js +16 -1
  43. package/dest/auth_witness/auth_witness.d.ts +2 -2
  44. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  45. package/dest/avm/avm.d.ts +1756 -10463
  46. package/dest/avm/avm.d.ts.map +1 -1
  47. package/dest/avm/avm.js +6 -3
  48. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  49. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  50. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  51. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  52. package/dest/avm/avm_proving_request.d.ts +653 -5446
  53. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  54. package/dest/avm/message_pack.js +12 -3
  55. package/dest/avm/public_data_write.d.ts +6 -12
  56. package/dest/avm/public_data_write.d.ts.map +1 -1
  57. package/dest/avm/revert_code.d.ts +6 -7
  58. package/dest/avm/revert_code.d.ts.map +1 -1
  59. package/dest/avm/revert_code.js +13 -21
  60. package/dest/aztec-address/index.d.ts +8 -8
  61. package/dest/aztec-address/index.d.ts.map +1 -1
  62. package/dest/aztec-address/index.js +9 -6
  63. package/dest/block/attestation_info.d.ts +3 -2
  64. package/dest/block/attestation_info.d.ts.map +1 -1
  65. package/dest/block/attestation_info.js +7 -5
  66. package/dest/block/block_data.d.ts +13 -38
  67. package/dest/block/block_data.d.ts.map +1 -1
  68. package/dest/block/block_data.js +2 -2
  69. package/dest/block/block_hash.d.ts +11 -10
  70. package/dest/block/block_hash.d.ts.map +1 -1
  71. package/dest/block/block_hash.js +10 -9
  72. package/dest/block/block_parameter.d.ts +37 -4
  73. package/dest/block/block_parameter.d.ts.map +1 -1
  74. package/dest/block/block_parameter.js +53 -2
  75. package/dest/block/in_block.d.ts +5 -24
  76. package/dest/block/in_block.d.ts.map +1 -1
  77. package/dest/block/index.d.ts +1 -2
  78. package/dest/block/index.d.ts.map +1 -1
  79. package/dest/block/index.js +0 -1
  80. package/dest/block/l2_block.d.ts +21 -41
  81. package/dest/block/l2_block.d.ts.map +1 -1
  82. package/dest/block/l2_block.js +12 -2
  83. package/dest/block/l2_block_info.d.ts +10 -29
  84. package/dest/block/l2_block_info.d.ts.map +1 -1
  85. package/dest/block/l2_block_info.js +6 -5
  86. package/dest/block/l2_block_source.d.ts +204 -351
  87. package/dest/block/l2_block_source.d.ts.map +1 -1
  88. package/dest/block/l2_block_source.js +67 -1
  89. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  90. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  91. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  92. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  93. package/dest/block/l2_block_stream/l2_block_stream.js +49 -12
  94. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  95. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  97. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  98. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  100. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  101. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  102. package/dest/block/proposal/attestations_and_signers.js +26 -18
  103. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  104. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  105. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  106. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  107. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  108. package/dest/checkpoint/checkpoint.d.ts +31 -96
  109. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  110. package/dest/checkpoint/checkpoint.js +18 -5
  111. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  112. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  113. package/dest/checkpoint/checkpoint_data.js +12 -0
  114. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  115. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  116. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  117. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  118. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  119. package/dest/checkpoint/digest.d.ts +18 -0
  120. package/dest/checkpoint/digest.d.ts.map +1 -0
  121. package/dest/checkpoint/digest.js +12 -0
  122. package/dest/checkpoint/index.d.ts +5 -1
  123. package/dest/checkpoint/index.d.ts.map +1 -1
  124. package/dest/checkpoint/index.js +4 -0
  125. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  126. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  127. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  128. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  129. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  130. package/dest/checkpoint/validate.d.ts +36 -0
  131. package/dest/checkpoint/validate.d.ts.map +1 -0
  132. package/dest/checkpoint/validate.js +120 -0
  133. package/dest/config/chain-config.d.ts +4 -9
  134. package/dest/config/chain-config.d.ts.map +1 -1
  135. package/dest/config/chain-config.js +13 -12
  136. package/dest/config/index.d.ts +2 -1
  137. package/dest/config/index.d.ts.map +1 -1
  138. package/dest/config/index.js +1 -0
  139. package/dest/config/pipelining-config.d.ts +15 -0
  140. package/dest/config/pipelining-config.d.ts.map +1 -0
  141. package/dest/config/pipelining-config.js +18 -0
  142. package/dest/config/sequencer-config.d.ts +7 -3
  143. package/dest/config/sequencer-config.d.ts.map +1 -1
  144. package/dest/config/sequencer-config.js +23 -3
  145. package/dest/contract/complete_address.d.ts +3 -2
  146. package/dest/contract/complete_address.d.ts.map +1 -1
  147. package/dest/contract/complete_address.js +6 -2
  148. package/dest/contract/contract_address.d.ts +6 -6
  149. package/dest/contract/contract_address.d.ts.map +1 -1
  150. package/dest/contract/contract_address.js +6 -5
  151. package/dest/contract/contract_class_id.d.ts +2 -2
  152. package/dest/contract/contract_class_id.js +2 -2
  153. package/dest/contract/contract_deployment_data.d.ts +15 -61
  154. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  155. package/dest/contract/contract_instance.d.ts +4 -2
  156. package/dest/contract/contract_instance.d.ts.map +1 -1
  157. package/dest/contract/contract_instance.js +10 -3
  158. package/dest/contract/index.d.ts +1 -3
  159. package/dest/contract/index.d.ts.map +1 -1
  160. package/dest/contract/index.js +0 -2
  161. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  162. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  163. package/dest/contract/interfaces/contract_class.js +1 -28
  164. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  165. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  166. package/dest/contract/interfaces/contract_instance.js +4 -2
  167. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  168. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  169. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  170. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  171. package/dest/contract/private_function.d.ts +1 -1
  172. package/dest/contract/private_function.d.ts.map +1 -1
  173. package/dest/contract/private_function.js +2 -4
  174. package/dest/database-version/database_version.d.ts +5 -11
  175. package/dest/database-version/database_version.d.ts.map +1 -1
  176. package/dest/database-version/version_manager.d.ts +6 -2
  177. package/dest/database-version/version_manager.d.ts.map +1 -1
  178. package/dest/database-version/version_manager.js +12 -1
  179. package/dest/epoch-helpers/index.d.ts +12 -20
  180. package/dest/epoch-helpers/index.d.ts.map +1 -1
  181. package/dest/epoch-helpers/index.js +16 -2
  182. package/dest/file-store/factory.d.ts +4 -3
  183. package/dest/file-store/factory.d.ts.map +1 -1
  184. package/dest/file-store/factory.js +2 -2
  185. package/dest/file-store/http.d.ts +9 -2
  186. package/dest/file-store/http.d.ts.map +1 -1
  187. package/dest/file-store/http.js +20 -9
  188. package/dest/file-store/index.d.ts +2 -1
  189. package/dest/file-store/index.d.ts.map +1 -1
  190. package/dest/gas/fee_math.d.ts +49 -0
  191. package/dest/gas/fee_math.d.ts.map +1 -0
  192. package/dest/gas/fee_math.js +80 -0
  193. package/dest/gas/gas.d.ts +9 -14
  194. package/dest/gas/gas.d.ts.map +1 -1
  195. package/dest/gas/gas.js +6 -3
  196. package/dest/gas/gas_fees.d.ts +13 -14
  197. package/dest/gas/gas_fees.d.ts.map +1 -1
  198. package/dest/gas/gas_fees.js +20 -4
  199. package/dest/gas/gas_settings.d.ts +66 -86
  200. package/dest/gas/gas_settings.d.ts.map +1 -1
  201. package/dest/gas/gas_settings.js +56 -9
  202. package/dest/gas/index.d.ts +2 -1
  203. package/dest/gas/index.d.ts.map +1 -1
  204. package/dest/gas/index.js +1 -0
  205. package/dest/ha-signing/config.d.ts +72 -0
  206. package/dest/ha-signing/config.d.ts.map +1 -0
  207. package/dest/ha-signing/config.js +88 -0
  208. package/dest/ha-signing/index.d.ts +4 -0
  209. package/dest/ha-signing/index.d.ts.map +1 -0
  210. package/dest/ha-signing/index.js +3 -0
  211. package/dest/ha-signing/local_config.d.ts +32 -0
  212. package/dest/ha-signing/local_config.d.ts.map +1 -0
  213. package/dest/ha-signing/local_config.js +24 -0
  214. package/dest/ha-signing/types.d.ts +90 -0
  215. package/dest/ha-signing/types.d.ts.map +1 -0
  216. package/dest/ha-signing/types.js +39 -0
  217. package/dest/hash/hash.d.ts +34 -1
  218. package/dest/hash/hash.d.ts.map +1 -1
  219. package/dest/hash/hash.js +63 -2
  220. package/dest/interfaces/allowed_element.d.ts +17 -35
  221. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  222. package/dest/interfaces/allowed_element.js +8 -8
  223. package/dest/interfaces/api_limit.d.ts +1 -1
  224. package/dest/interfaces/api_limit.js +1 -1
  225. package/dest/interfaces/archiver.d.ts +22 -32
  226. package/dest/interfaces/archiver.d.ts.map +1 -1
  227. package/dest/interfaces/archiver.js +208 -68
  228. package/dest/interfaces/aztec-node-admin.d.ts +81 -273
  229. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  230. package/dest/interfaces/aztec-node-admin.js +59 -16
  231. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  232. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  233. package/dest/interfaces/aztec-node-debug.js +21 -0
  234. package/dest/interfaces/aztec-node.d.ts +84 -101
  235. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  236. package/dest/interfaces/aztec-node.js +298 -68
  237. package/dest/interfaces/block-builder.d.ts +40 -11
  238. package/dest/interfaces/block-builder.d.ts.map +1 -1
  239. package/dest/interfaces/block-builder.js +13 -6
  240. package/dest/interfaces/block_response.d.ts +90 -0
  241. package/dest/interfaces/block_response.d.ts.map +1 -0
  242. package/dest/interfaces/block_response.js +30 -0
  243. package/dest/interfaces/chain_tips.d.ts +50 -0
  244. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  245. package/dest/interfaces/chain_tips.js +11 -0
  246. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  247. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  248. package/dest/interfaces/checkpoint_parameter.js +18 -0
  249. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  250. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  251. package/dest/interfaces/checkpoint_response.js +26 -0
  252. package/dest/interfaces/client.d.ts +8 -2
  253. package/dest/interfaces/client.d.ts.map +1 -1
  254. package/dest/interfaces/client.js +7 -1
  255. package/dest/interfaces/configs.d.ts +64 -123
  256. package/dest/interfaces/configs.d.ts.map +1 -1
  257. package/dest/interfaces/configs.js +15 -3
  258. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  259. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  260. package/dest/interfaces/l1_publish_info.js +26 -0
  261. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  262. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  263. package/dest/interfaces/l2_logs_source.js +5 -0
  264. package/dest/interfaces/merkle_tree_operations.d.ts +12 -21
  265. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  266. package/dest/interfaces/p2p-bootstrap.js +8 -2
  267. package/dest/interfaces/p2p.d.ts +17 -12
  268. package/dest/interfaces/p2p.d.ts.map +1 -1
  269. package/dest/interfaces/p2p.js +28 -5
  270. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  271. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  272. package/dest/interfaces/prover-agent.d.ts +5 -23
  273. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  274. package/dest/interfaces/prover-agent.js +4 -1
  275. package/dest/interfaces/prover-client.d.ts +9 -25
  276. package/dest/interfaces/prover-client.d.ts.map +1 -1
  277. package/dest/interfaces/prover-client.js +7 -4
  278. package/dest/interfaces/prover-node.js +22 -8
  279. package/dest/interfaces/proving-job-source.js +24 -4
  280. package/dest/interfaces/proving-job.d.ts +742 -5793
  281. package/dest/interfaces/proving-job.d.ts.map +1 -1
  282. package/dest/interfaces/proving-job.js +1 -1
  283. package/dest/interfaces/public_storage_override.d.ts +22 -0
  284. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  285. package/dest/interfaces/public_storage_override.js +7 -0
  286. package/dest/interfaces/server.d.ts +6 -1
  287. package/dest/interfaces/server.d.ts.map +1 -1
  288. package/dest/interfaces/server.js +5 -0
  289. package/dest/interfaces/slasher.d.ts +25 -65
  290. package/dest/interfaces/slasher.d.ts.map +1 -1
  291. package/dest/interfaces/slasher.js +8 -4
  292. package/dest/interfaces/tx_provider.d.ts +6 -1
  293. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  294. package/dest/interfaces/validator.d.ts +70 -208
  295. package/dest/interfaces/validator.d.ts.map +1 -1
  296. package/dest/interfaces/validator.js +13 -5
  297. package/dest/interfaces/world_state.d.ts +6 -5
  298. package/dest/interfaces/world_state.d.ts.map +1 -1
  299. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  300. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  301. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  302. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  303. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  304. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  305. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  306. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  307. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  308. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  309. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  310. package/dest/kernel/hints/key_validation_request.js +20 -18
  311. package/dest/kernel/index.d.ts +5 -1
  312. package/dest/kernel/index.d.ts.map +1 -1
  313. package/dest/kernel/index.js +4 -0
  314. package/dest/kernel/log_hash.d.ts +6 -2
  315. package/dest/kernel/log_hash.d.ts.map +1 -1
  316. package/dest/kernel/log_hash.js +21 -9
  317. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  318. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  319. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  320. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  321. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  322. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  323. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  324. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  325. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  326. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  327. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  328. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  329. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  330. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  331. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  332. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  333. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  334. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  335. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +10 -6
  336. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +26 -7
  338. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  339. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  340. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  341. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  342. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  343. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  344. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  345. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  346. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  347. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  348. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  349. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  350. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  351. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  352. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  353. package/dest/kernel/public_call_request.d.ts +15 -30
  354. package/dest/kernel/public_call_request.d.ts.map +1 -1
  355. package/dest/kernel/public_call_request.js +16 -7
  356. package/dest/keys/derivation.d.ts +6 -2
  357. package/dest/keys/derivation.d.ts.map +1 -1
  358. package/dest/keys/derivation.js +16 -6
  359. package/dest/keys/public_key.d.ts +22 -3
  360. package/dest/keys/public_key.d.ts.map +1 -1
  361. package/dest/keys/public_key.js +20 -1
  362. package/dest/keys/public_keys.d.ts +55 -82
  363. package/dest/keys/public_keys.d.ts.map +1 -1
  364. package/dest/keys/public_keys.js +102 -74
  365. package/dest/kv-store/config.d.ts +14 -0
  366. package/dest/kv-store/config.d.ts.map +1 -0
  367. package/dest/kv-store/config.js +21 -0
  368. package/dest/kv-store/index.d.ts +2 -0
  369. package/dest/kv-store/index.d.ts.map +1 -0
  370. package/dest/kv-store/index.js +1 -0
  371. package/dest/l1-contracts/index.d.ts +2 -2
  372. package/dest/l1-contracts/index.d.ts.map +1 -1
  373. package/dest/l1-contracts/index.js +1 -1
  374. package/dest/logs/app_tagging_secret.d.ts +46 -0
  375. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  376. package/dest/logs/app_tagging_secret.js +109 -0
  377. package/dest/logs/app_tagging_secret_kind.d.ts +6 -0
  378. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  379. package/dest/logs/app_tagging_secret_kind.js +4 -0
  380. package/dest/logs/contract_class_log.d.ts +16 -34
  381. package/dest/logs/contract_class_log.d.ts.map +1 -1
  382. package/dest/logs/contract_class_log.js +11 -9
  383. package/dest/logs/debug_log_store.d.ts +30 -0
  384. package/dest/logs/debug_log_store.d.ts.map +1 -0
  385. package/dest/logs/debug_log_store.js +30 -0
  386. package/dest/logs/index.d.ts +9 -7
  387. package/dest/logs/index.d.ts.map +1 -1
  388. package/dest/logs/index.js +8 -6
  389. package/dest/logs/log_cursor.d.ts +51 -0
  390. package/dest/logs/log_cursor.d.ts.map +1 -0
  391. package/dest/logs/log_cursor.js +82 -0
  392. package/dest/logs/log_result.d.ts +54 -0
  393. package/dest/logs/log_result.d.ts.map +1 -0
  394. package/dest/logs/log_result.js +56 -0
  395. package/dest/logs/logs_query.d.ts +82 -0
  396. package/dest/logs/logs_query.d.ts.map +1 -0
  397. package/dest/logs/logs_query.js +50 -0
  398. package/dest/logs/message_context.d.ts +4 -7
  399. package/dest/logs/message_context.d.ts.map +1 -1
  400. package/dest/logs/message_context.js +23 -9
  401. package/dest/logs/pending_tagged_log.d.ts +2 -3
  402. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  403. package/dest/logs/pending_tagged_log.js +2 -2
  404. package/dest/logs/pre_tag.d.ts +14 -22
  405. package/dest/logs/pre_tag.d.ts.map +1 -1
  406. package/dest/logs/pre_tag.js +2 -2
  407. package/dest/logs/private_log.d.ts +7 -12
  408. package/dest/logs/private_log.d.ts.map +1 -1
  409. package/dest/logs/private_log.js +6 -3
  410. package/dest/logs/public_log.d.ts +4 -3
  411. package/dest/logs/public_log.d.ts.map +1 -1
  412. package/dest/logs/public_log.js +2 -1
  413. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  414. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  415. package/dest/logs/query_all_logs_by_tags.js +64 -0
  416. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  417. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  418. package/dest/logs/shared_secret_derivation.js +15 -9
  419. package/dest/logs/siloed_tag.d.ts +12 -9
  420. package/dest/logs/siloed_tag.d.ts.map +1 -1
  421. package/dest/logs/siloed_tag.js +17 -2
  422. package/dest/logs/tag.d.ts +5 -6
  423. package/dest/logs/tag.d.ts.map +1 -1
  424. package/dest/logs/tag.js +5 -1
  425. package/dest/logs/tagging_index_range.d.ts +22 -0
  426. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  427. package/dest/logs/tagging_index_range.js +8 -0
  428. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  429. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  430. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  431. package/dest/messaging/index.d.ts +2 -1
  432. package/dest/messaging/index.d.ts.map +1 -1
  433. package/dest/messaging/index.js +1 -0
  434. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  435. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  436. package/dest/messaging/l1_to_l2_message.js +11 -13
  437. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  438. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  439. package/dest/messaging/l2_to_l1_membership.d.ts +62 -6
  440. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  441. package/dest/messaging/l2_to_l1_membership.js +115 -27
  442. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  443. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  444. package/dest/messaging/l2_to_l1_message.js +21 -12
  445. package/dest/noir/index.d.ts +5 -3
  446. package/dest/noir/index.d.ts.map +1 -1
  447. package/dest/note/note.d.ts +2 -2
  448. package/dest/note/note.d.ts.map +1 -1
  449. package/dest/note/note_dao.d.ts +1 -1
  450. package/dest/note/note_dao.d.ts.map +1 -1
  451. package/dest/note/note_dao.js +1 -4
  452. package/dest/p2p/attestation_utils.d.ts +11 -1
  453. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  454. package/dest/p2p/attestation_utils.js +45 -0
  455. package/dest/p2p/block_proposal.d.ts +32 -15
  456. package/dest/p2p/block_proposal.d.ts.map +1 -1
  457. package/dest/p2p/block_proposal.js +58 -40
  458. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  459. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  460. package/dest/p2p/checkpoint_attestation.js +23 -24
  461. package/dest/p2p/checkpoint_proposal.d.ts +36 -22
  462. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  463. package/dest/p2p/checkpoint_proposal.js +60 -62
  464. package/dest/p2p/client_type.d.ts +2 -5
  465. package/dest/p2p/client_type.d.ts.map +1 -1
  466. package/dest/p2p/client_type.js +0 -7
  467. package/dest/p2p/consensus_payload.d.ts +26 -20
  468. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  469. package/dest/p2p/consensus_payload.js +38 -19
  470. package/dest/p2p/gossipable.d.ts +4 -4
  471. package/dest/p2p/gossipable.d.ts.map +1 -1
  472. package/dest/p2p/index.d.ts +1 -2
  473. package/dest/p2p/index.d.ts.map +1 -1
  474. package/dest/p2p/index.js +0 -1
  475. package/dest/p2p/peer_error.d.ts +3 -1
  476. package/dest/p2p/peer_error.d.ts.map +1 -1
  477. package/dest/p2p/peer_error.js +5 -0
  478. package/dest/p2p/signature_utils.d.ts +28 -19
  479. package/dest/p2p/signature_utils.d.ts.map +1 -1
  480. package/dest/p2p/signature_utils.js +118 -21
  481. package/dest/p2p/signed_txs.d.ts +15 -13
  482. package/dest/p2p/signed_txs.d.ts.map +1 -1
  483. package/dest/p2p/signed_txs.js +26 -24
  484. package/dest/p2p/topic_type.d.ts +3 -4
  485. package/dest/p2p/topic_type.d.ts.map +1 -1
  486. package/dest/p2p/topic_type.js +7 -24
  487. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  488. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  489. package/dest/parity/parity_base_private_inputs.js +7 -5
  490. package/dest/parity/parity_public_inputs.d.ts +8 -4
  491. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  492. package/dest/parity/parity_public_inputs.js +6 -3
  493. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  494. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  495. package/dest/proofs/chonk_proof.d.ts +57 -7
  496. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  497. package/dest/proofs/chonk_proof.js +112 -15
  498. package/dest/proofs/recursive_proof.d.ts +2 -2
  499. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  500. package/dest/rollup/block_headers_hash.d.ts +1 -1
  501. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  502. package/dest/rollup/block_headers_hash.js +8 -2
  503. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  504. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  505. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  506. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  507. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  508. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  509. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  510. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  511. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  512. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  513. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  514. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  515. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  516. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  517. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  518. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  519. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  520. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  521. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  522. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  523. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  524. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  525. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  526. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  527. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  528. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  529. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  530. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  531. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  532. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  533. package/dest/schemas/schemas.d.ts +32 -78
  534. package/dest/schemas/schemas.d.ts.map +1 -1
  535. package/dest/schemas/schemas.js +2 -2
  536. package/dest/slashing/helpers.d.ts +2 -2
  537. package/dest/slashing/helpers.d.ts.map +1 -1
  538. package/dest/slashing/helpers.js +10 -7
  539. package/dest/slashing/index.d.ts +2 -3
  540. package/dest/slashing/index.d.ts.map +1 -1
  541. package/dest/slashing/index.js +1 -2
  542. package/dest/slashing/serialization.d.ts +2 -6
  543. package/dest/slashing/serialization.d.ts.map +1 -1
  544. package/dest/slashing/serialization.js +0 -60
  545. package/dest/slashing/types.d.ts +18 -112
  546. package/dest/slashing/types.d.ts.map +1 -1
  547. package/dest/slashing/types.js +16 -24
  548. package/dest/slashing/{tally.d.ts → votes.d.ts} +7 -2
  549. package/dest/slashing/votes.d.ts.map +1 -0
  550. package/dest/slashing/{tally.js → votes.js} +30 -2
  551. package/dest/snapshots/types.d.ts +15 -78
  552. package/dest/snapshots/types.d.ts.map +1 -1
  553. package/dest/stats/stats.d.ts +2 -2
  554. package/dest/stats/stats.d.ts.map +1 -1
  555. package/dest/tests/factories.d.ts +25 -30
  556. package/dest/tests/factories.d.ts.map +1 -1
  557. package/dest/tests/factories.js +84 -76
  558. package/dest/tests/mocks.d.ts +12 -7
  559. package/dest/tests/mocks.d.ts.map +1 -1
  560. package/dest/tests/mocks.js +60 -67
  561. package/dest/timetable/index.d.ts +51 -1
  562. package/dest/timetable/index.d.ts.map +1 -1
  563. package/dest/timetable/index.js +218 -14
  564. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  565. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  566. package/dest/trees/append_only_tree_snapshot.js +6 -3
  567. package/dest/trees/nullifier_leaf.d.ts +19 -42
  568. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  569. package/dest/trees/nullifier_leaf.js +3 -0
  570. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  571. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  572. package/dest/trees/nullifier_membership_witness.js +2 -14
  573. package/dest/trees/public_data_leaf.d.ts +21 -53
  574. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  575. package/dest/trees/public_data_witness.d.ts +16 -58
  576. package/dest/trees/public_data_witness.d.ts.map +1 -1
  577. package/dest/tx/block_header.d.ts +7 -4
  578. package/dest/tx/block_header.d.ts.map +1 -1
  579. package/dest/tx/block_header.js +11 -4
  580. package/dest/tx/call_context.d.ts +4 -14
  581. package/dest/tx/call_context.d.ts.map +1 -1
  582. package/dest/tx/capsule.d.ts +7 -3
  583. package/dest/tx/capsule.d.ts.map +1 -1
  584. package/dest/tx/capsule.js +9 -3
  585. package/dest/tx/fee_provider.d.ts +10 -0
  586. package/dest/tx/fee_provider.d.ts.map +1 -0
  587. package/dest/tx/fee_provider.js +1 -0
  588. package/dest/tx/function_data.d.ts +4 -10
  589. package/dest/tx/function_data.d.ts.map +1 -1
  590. package/dest/tx/global_variable_builder.d.ts +3 -4
  591. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  592. package/dest/tx/global_variables.d.ts +16 -49
  593. package/dest/tx/global_variables.d.ts.map +1 -1
  594. package/dest/tx/global_variables.js +8 -12
  595. package/dest/tx/hashed_values.d.ts +4 -3
  596. package/dest/tx/hashed_values.d.ts.map +1 -1
  597. package/dest/tx/hashed_values.js +6 -3
  598. package/dest/tx/in_tx.d.ts +5 -17
  599. package/dest/tx/in_tx.d.ts.map +1 -1
  600. package/dest/tx/index.d.ts +2 -1
  601. package/dest/tx/index.d.ts.map +1 -1
  602. package/dest/tx/index.js +1 -0
  603. package/dest/tx/indexed_tx_effect.d.ts +4 -18
  604. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  605. package/dest/tx/indexed_tx_effect.js +1 -2
  606. package/dest/tx/partial_state_reference.d.ts +22 -65
  607. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  608. package/dest/tx/partial_state_reference.js +6 -3
  609. package/dest/tx/private_execution_result.d.ts +11 -21
  610. package/dest/tx/private_execution_result.d.ts.map +1 -1
  611. package/dest/tx/private_execution_result.js +6 -6
  612. package/dest/tx/profiling.d.ts +67 -353
  613. package/dest/tx/profiling.d.ts.map +1 -1
  614. package/dest/tx/profiling.js +17 -7
  615. package/dest/tx/protocol_contracts.d.ts +5 -9
  616. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  617. package/dest/tx/proven_tx.d.ts +30 -74
  618. package/dest/tx/proven_tx.d.ts.map +1 -1
  619. package/dest/tx/proven_tx.js +6 -0
  620. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  621. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  622. package/dest/tx/public_call_request_with_calldata.js +6 -3
  623. package/dest/tx/simulated_tx.d.ts +68 -1144
  624. package/dest/tx/simulated_tx.d.ts.map +1 -1
  625. package/dest/tx/simulated_tx.js +17 -12
  626. package/dest/tx/state_reference.d.ts +30 -117
  627. package/dest/tx/state_reference.d.ts.map +1 -1
  628. package/dest/tx/state_reference.js +6 -4
  629. package/dest/tx/tree_snapshots.d.ts +27 -84
  630. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  631. package/dest/tx/tree_snapshots.js +6 -4
  632. package/dest/tx/tx.d.ts +12 -17
  633. package/dest/tx/tx.d.ts.map +1 -1
  634. package/dest/tx/tx.js +40 -29
  635. package/dest/tx/tx_constant_data.d.ts +4 -3
  636. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  637. package/dest/tx/tx_constant_data.js +6 -3
  638. package/dest/tx/tx_context.d.ts +32 -131
  639. package/dest/tx/tx_context.d.ts.map +1 -1
  640. package/dest/tx/tx_context.js +6 -6
  641. package/dest/tx/tx_hash.d.ts +6 -4
  642. package/dest/tx/tx_hash.d.ts.map +1 -1
  643. package/dest/tx/tx_hash.js +13 -5
  644. package/dest/tx/tx_receipt.d.ts +23 -6
  645. package/dest/tx/tx_receipt.d.ts.map +1 -1
  646. package/dest/tx/tx_receipt.js +17 -19
  647. package/dest/tx/validator/error_texts.d.ts +9 -1
  648. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  649. package/dest/tx/validator/error_texts.js +10 -0
  650. package/dest/tx/validator/tx_validator.d.ts +5 -27
  651. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  652. package/dest/tx/validator/tx_validator.js +0 -4
  653. package/dest/types/shared.d.ts +4 -12
  654. package/dest/types/shared.d.ts.map +1 -1
  655. package/dest/types/shared.js +6 -12
  656. package/dest/update-checker/dev_version.d.ts +3 -0
  657. package/dest/update-checker/dev_version.d.ts.map +1 -0
  658. package/dest/update-checker/dev_version.js +1 -0
  659. package/dest/update-checker/index.d.ts +4 -2
  660. package/dest/update-checker/index.d.ts.map +1 -1
  661. package/dest/update-checker/index.js +3 -1
  662. package/dest/update-checker/package_version.d.ts +6 -0
  663. package/dest/update-checker/package_version.d.ts.map +1 -0
  664. package/dest/update-checker/package_version.js +13 -0
  665. package/dest/update-checker/version_checker.d.ts +25 -0
  666. package/dest/update-checker/version_checker.d.ts.map +1 -0
  667. package/dest/update-checker/version_checker.js +50 -0
  668. package/dest/validators/errors.d.ts +6 -1
  669. package/dest/validators/errors.d.ts.map +1 -1
  670. package/dest/validators/errors.js +7 -0
  671. package/dest/validators/schemas.d.ts +147 -614
  672. package/dest/validators/schemas.d.ts.map +1 -1
  673. package/dest/validators/schemas.js +6 -4
  674. package/dest/validators/types.d.ts +20 -3
  675. package/dest/validators/types.d.ts.map +1 -1
  676. package/dest/versioning/versioning.d.ts +4 -2
  677. package/dest/versioning/versioning.d.ts.map +1 -1
  678. package/dest/versioning/versioning.js +5 -2
  679. package/dest/vks/verification_key.d.ts +4 -139
  680. package/dest/vks/verification_key.d.ts.map +1 -1
  681. package/dest/vks/verification_key.js +5 -126
  682. package/dest/world-state/genesis_data.d.ts +13 -0
  683. package/dest/world-state/genesis_data.d.ts.map +1 -0
  684. package/dest/world-state/genesis_data.js +7 -0
  685. package/dest/world-state/index.d.ts +2 -1
  686. package/dest/world-state/index.d.ts.map +1 -1
  687. package/dest/world-state/index.js +1 -0
  688. package/dest/world-state/world_state_revision.d.ts +15 -26
  689. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  690. package/dest/world-state/world_state_revision.js +7 -1
  691. package/package.json +15 -13
  692. package/src/abi/abi.ts +78 -21
  693. package/src/abi/authorization_selector.ts +2 -8
  694. package/src/abi/buffer.ts +25 -4
  695. package/src/abi/contract_artifact.ts +11 -6
  696. package/src/abi/decoder.ts +36 -82
  697. package/src/abi/encoder.ts +85 -6
  698. package/src/abi/event_metadata_definition.ts +2 -0
  699. package/src/abi/event_selector.ts +2 -8
  700. package/src/abi/function_selector.ts +4 -13
  701. package/src/abi/function_signature_decoder.ts +77 -0
  702. package/src/abi/index.ts +1 -0
  703. package/src/abi/note_selector.ts +3 -12
  704. package/src/abi/selector.ts +1 -1
  705. package/src/abi/utils.ts +31 -4
  706. package/src/avm/avm.ts +5 -0
  707. package/src/avm/message_pack.ts +12 -3
  708. package/src/avm/revert_code.ts +20 -25
  709. package/src/aztec-address/index.ts +15 -12
  710. package/src/block/attestation_info.ts +11 -11
  711. package/src/block/block_data.ts +3 -4
  712. package/src/block/block_hash.ts +21 -14
  713. package/src/block/block_parameter.ts +72 -4
  714. package/src/block/index.ts +0 -1
  715. package/src/block/l2_block.ts +13 -1
  716. package/src/block/l2_block_info.ts +8 -6
  717. package/src/block/l2_block_source.ts +198 -139
  718. package/src/block/l2_block_stream/interfaces.ts +6 -2
  719. package/src/block/l2_block_stream/l2_block_stream.ts +49 -17
  720. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  721. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  722. package/src/block/proposal/attestations_and_signers.ts +32 -17
  723. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  724. package/src/checkpoint/checkpoint.ts +23 -4
  725. package/src/checkpoint/checkpoint_data.ts +44 -4
  726. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  727. package/src/checkpoint/digest.ts +28 -0
  728. package/src/checkpoint/index.ts +4 -0
  729. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  730. package/src/checkpoint/validate.ts +230 -0
  731. package/src/config/chain-config.ts +13 -16
  732. package/src/config/index.ts +1 -0
  733. package/src/config/pipelining-config.ts +31 -0
  734. package/src/config/sequencer-config.ts +41 -5
  735. package/src/contract/complete_address.ts +7 -3
  736. package/src/contract/contract_address.ts +7 -7
  737. package/src/contract/contract_class_id.ts +2 -2
  738. package/src/contract/contract_instance.ts +11 -2
  739. package/src/contract/index.ts +0 -2
  740. package/src/contract/interfaces/contract_class.ts +2 -82
  741. package/src/contract/interfaces/contract_instance.ts +6 -2
  742. package/src/contract/private_function.ts +3 -1
  743. package/src/database-version/version_manager.ts +17 -0
  744. package/src/epoch-helpers/index.ts +27 -0
  745. package/src/file-store/factory.ts +13 -4
  746. package/src/file-store/http.ts +29 -10
  747. package/src/file-store/index.ts +1 -0
  748. package/src/gas/README.md +154 -0
  749. package/src/gas/fee_math.ts +120 -0
  750. package/src/gas/gas.ts +8 -3
  751. package/src/gas/gas_fees.ts +29 -10
  752. package/src/gas/gas_settings.ts +73 -15
  753. package/src/gas/index.ts +1 -0
  754. package/src/ha-signing/config.ts +152 -0
  755. package/src/ha-signing/index.ts +29 -0
  756. package/src/ha-signing/local_config.ts +46 -0
  757. package/src/ha-signing/types.ts +126 -0
  758. package/src/hash/hash.ts +63 -2
  759. package/src/interfaces/allowed_element.ts +29 -9
  760. package/src/interfaces/api_limit.ts +1 -1
  761. package/src/interfaces/archiver.ts +82 -91
  762. package/src/interfaces/aztec-node-admin.ts +35 -20
  763. package/src/interfaces/aztec-node-debug.ts +40 -0
  764. package/src/interfaces/aztec-node.ts +260 -240
  765. package/src/interfaces/block-builder.ts +62 -14
  766. package/src/interfaces/block_response.ts +92 -0
  767. package/src/interfaces/chain_tips.ts +24 -0
  768. package/src/interfaces/checkpoint_parameter.ts +20 -0
  769. package/src/interfaces/checkpoint_response.ts +84 -0
  770. package/src/interfaces/client.ts +7 -1
  771. package/src/interfaces/configs.ts +64 -8
  772. package/src/interfaces/l1_publish_info.ts +40 -0
  773. package/src/interfaces/l2_logs_source.ts +13 -39
  774. package/src/interfaces/merkle_tree_operations.ts +11 -20
  775. package/src/interfaces/p2p-bootstrap.ts +2 -2
  776. package/src/interfaces/p2p.ts +37 -28
  777. package/src/interfaces/private_kernel_prover.ts +88 -0
  778. package/src/interfaces/prover-agent.ts +1 -1
  779. package/src/interfaces/prover-client.ts +10 -5
  780. package/src/interfaces/prover-node.ts +7 -7
  781. package/src/interfaces/proving-job-source.ts +4 -4
  782. package/src/interfaces/proving-job.ts +3 -3
  783. package/src/interfaces/public_storage_override.ts +26 -0
  784. package/src/interfaces/server.ts +5 -0
  785. package/src/interfaces/slasher.ts +17 -10
  786. package/src/interfaces/tx_provider.ts +6 -0
  787. package/src/interfaces/validator.ts +79 -38
  788. package/src/interfaces/world_state.ts +5 -4
  789. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  790. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  791. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  792. package/src/kernel/hints/key_validation_request.ts +18 -16
  793. package/src/kernel/index.ts +4 -0
  794. package/src/kernel/log_hash.ts +29 -9
  795. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  796. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  797. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  798. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  799. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +38 -14
  800. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  801. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  802. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  803. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  804. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  805. package/src/kernel/public_call_request.ts +22 -7
  806. package/src/keys/derivation.ts +21 -9
  807. package/src/keys/public_key.ts +26 -2
  808. package/src/keys/public_keys.ts +124 -110
  809. package/src/kv-store/config.ts +29 -0
  810. package/src/kv-store/index.ts +1 -0
  811. package/src/l1-contracts/index.ts +1 -1
  812. package/src/logs/app_tagging_secret.ts +137 -0
  813. package/src/logs/app_tagging_secret_kind.ts +6 -0
  814. package/src/logs/contract_class_log.ts +15 -5
  815. package/src/logs/debug_log_store.ts +54 -0
  816. package/src/logs/index.ts +8 -6
  817. package/src/logs/log_cursor.ts +110 -0
  818. package/src/logs/log_result.ts +104 -0
  819. package/src/logs/logs_query.ts +138 -0
  820. package/src/logs/message_context.ts +17 -7
  821. package/src/logs/pending_tagged_log.ts +1 -3
  822. package/src/logs/pre_tag.ts +3 -6
  823. package/src/logs/private_log.ts +9 -3
  824. package/src/logs/public_log.ts +4 -2
  825. package/src/logs/query_all_logs_by_tags.ts +98 -0
  826. package/src/logs/shared_secret_derivation.ts +21 -10
  827. package/src/logs/siloed_tag.ts +27 -12
  828. package/src/logs/tag.ts +9 -9
  829. package/src/logs/tagging_index_range.ts +18 -0
  830. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  831. package/src/messaging/index.ts +1 -0
  832. package/src/messaging/l1_to_l2_message.ts +12 -9
  833. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  834. package/src/messaging/l2_to_l1_membership.ts +171 -34
  835. package/src/messaging/l2_to_l1_message.ts +29 -9
  836. package/src/noir/index.ts +4 -2
  837. package/src/note/note_dao.ts +1 -4
  838. package/src/p2p/attestation_utils.ts +56 -0
  839. package/src/p2p/block_proposal.ts +112 -37
  840. package/src/p2p/checkpoint_attestation.ts +27 -31
  841. package/src/p2p/checkpoint_proposal.ts +127 -86
  842. package/src/p2p/client_type.ts +0 -6
  843. package/src/p2p/consensus_payload.ts +59 -28
  844. package/src/p2p/gossipable.ts +4 -4
  845. package/src/p2p/index.ts +0 -1
  846. package/src/p2p/peer_error.ts +7 -0
  847. package/src/p2p/signature_utils.ts +110 -25
  848. package/src/p2p/signed_txs.ts +46 -28
  849. package/src/p2p/topic_type.ts +8 -15
  850. package/src/parity/parity_base_private_inputs.ts +10 -4
  851. package/src/parity/parity_public_inputs.ts +9 -2
  852. package/src/proofs/chonk_proof.ts +132 -12
  853. package/src/rollup/block_headers_hash.ts +11 -2
  854. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  855. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  856. package/src/schemas/schemas.ts +6 -1
  857. package/src/slashing/helpers.ts +13 -9
  858. package/src/slashing/index.ts +1 -2
  859. package/src/slashing/serialization.ts +1 -81
  860. package/src/slashing/types.ts +24 -49
  861. package/src/slashing/{tally.ts → votes.ts} +34 -1
  862. package/src/stats/stats.ts +4 -0
  863. package/src/tests/factories.ts +106 -105
  864. package/src/tests/mocks.ts +90 -79
  865. package/src/timetable/index.ts +308 -13
  866. package/src/trees/append_only_tree_snapshot.ts +8 -3
  867. package/src/trees/nullifier_leaf.ts +4 -0
  868. package/src/trees/nullifier_membership_witness.ts +2 -12
  869. package/src/tx/block_header.ts +16 -5
  870. package/src/tx/capsule.ts +10 -2
  871. package/src/tx/fee_provider.ts +10 -0
  872. package/src/tx/global_variable_builder.ts +2 -3
  873. package/src/tx/global_variables.ts +10 -18
  874. package/src/tx/hashed_values.ts +8 -3
  875. package/src/tx/index.ts +1 -0
  876. package/src/tx/indexed_tx_effect.ts +1 -2
  877. package/src/tx/partial_state_reference.ts +8 -3
  878. package/src/tx/private_execution_result.ts +5 -5
  879. package/src/tx/profiling.ts +15 -6
  880. package/src/tx/proven_tx.ts +6 -0
  881. package/src/tx/public_call_request_with_calldata.ts +8 -3
  882. package/src/tx/simulated_tx.ts +30 -22
  883. package/src/tx/state_reference.ts +9 -4
  884. package/src/tx/tree_snapshots.ts +9 -4
  885. package/src/tx/tx.ts +53 -35
  886. package/src/tx/tx_constant_data.ts +8 -3
  887. package/src/tx/tx_context.ts +8 -3
  888. package/src/tx/tx_hash.ts +20 -5
  889. package/src/tx/tx_receipt.ts +19 -16
  890. package/src/tx/validator/error_texts.ts +12 -0
  891. package/src/tx/validator/tx_validator.ts +1 -5
  892. package/src/types/shared.ts +8 -13
  893. package/src/update-checker/dev_version.ts +2 -0
  894. package/src/update-checker/index.ts +3 -1
  895. package/src/update-checker/package_version.ts +17 -0
  896. package/src/update-checker/version_checker.ts +65 -0
  897. package/src/validators/errors.ts +9 -0
  898. package/src/validators/schemas.ts +6 -4
  899. package/src/validators/types.ts +21 -2
  900. package/src/versioning/versioning.ts +5 -2
  901. package/src/vks/verification_key.ts +5 -184
  902. package/src/world-state/genesis_data.ts +27 -0
  903. package/src/world-state/index.ts +1 -0
  904. package/src/world-state/world_state_revision.ts +9 -1
  905. package/dest/abi/mocked_keys.d.ts +0 -2
  906. package/dest/abi/mocked_keys.d.ts.map +0 -1
  907. package/dest/abi/mocked_keys.js +0 -1
  908. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  909. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  910. package/dest/block/checkpointed_l2_block.js +0 -46
  911. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  912. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  913. package/dest/contract/private_function_membership_proof.js +0 -124
  914. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  915. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  916. package/dest/contract/utility_function_membership_proof.js +0 -87
  917. package/dest/interfaces/get_logs_response.d.ts +0 -97
  918. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  919. package/dest/interfaces/get_logs_response.js +0 -12
  920. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  921. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  922. package/dest/l1-contracts/slash_factory.js +0 -158
  923. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  924. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  925. package/dest/logs/directional_app_tagging_secret.js +0 -64
  926. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  927. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  928. package/dest/logs/extended_contract_class_log.js +0 -67
  929. package/dest/logs/extended_public_log.d.ts +0 -106
  930. package/dest/logs/extended_public_log.d.ts.map +0 -1
  931. package/dest/logs/extended_public_log.js +0 -73
  932. package/dest/logs/log_filter.d.ts +0 -22
  933. package/dest/logs/log_filter.d.ts.map +0 -1
  934. package/dest/logs/log_filter.js +0 -11
  935. package/dest/logs/log_id.d.ts +0 -85
  936. package/dest/logs/log_id.d.ts.map +0 -1
  937. package/dest/logs/log_id.js +0 -94
  938. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  939. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  940. package/dest/logs/tx_scoped_l2_log.js +0 -70
  941. package/dest/slashing/empire.d.ts +0 -31
  942. package/dest/slashing/empire.d.ts.map +0 -1
  943. package/dest/slashing/empire.js +0 -87
  944. package/dest/slashing/tally.d.ts.map +0 -1
  945. package/dest/update-checker/update-checker.d.ts +0 -49
  946. package/dest/update-checker/update-checker.d.ts.map +0 -1
  947. package/dest/update-checker/update-checker.js +0 -130
  948. package/src/abi/mocked_keys.ts +0 -2
  949. package/src/block/checkpointed_l2_block.ts +0 -70
  950. package/src/contract/private_function_membership_proof.ts +0 -167
  951. package/src/contract/utility_function_membership_proof.ts +0 -118
  952. package/src/interfaces/get_logs_response.ts +0 -35
  953. package/src/l1-contracts/slash_factory.ts +0 -180
  954. package/src/logs/directional_app_tagging_secret.ts +0 -79
  955. package/src/logs/extended_contract_class_log.ts +0 -87
  956. package/src/logs/extended_public_log.ts +0 -94
  957. package/src/logs/log_filter.ts +0 -31
  958. package/src/logs/log_id.ts +0 -125
  959. package/src/logs/tx_scoped_l2_log.ts +0 -98
  960. package/src/slashing/empire.ts +0 -104
  961. package/src/update-checker/update-checker.ts +0 -166
@@ -3,6 +3,7 @@ import { type ZodFor, optional, schemas } from '@aztec/foundation/schemas';
3
3
 
4
4
  import { z } from 'zod';
5
5
 
6
+ import { AztecAddress } from '../aztec-address/index.js';
6
7
  import type { AztecNode } from '../interfaces/aztec-node.js';
7
8
  import { type PrivateExecutionStep, PrivateExecutionStepSchema } from '../kernel/private_kernel_prover_output.js';
8
9
 
@@ -132,12 +133,12 @@ export class TxProfileResult {
132
133
  ],
133
134
  {
134
135
  nodeRPCCalls: {
135
- perMethod: { getBlockHeader: { times: [1] } },
136
+ perMethod: { getBlock: { times: [1] } },
136
137
  roundTrips: {
137
138
  roundTrips: 1,
138
139
  totalBlockingTime: 1,
139
140
  roundTripDurations: [1],
140
- roundTripMethods: [['getBlockHeader']],
141
+ roundTripMethods: [['getBlock']],
141
142
  },
142
143
  },
143
144
  timings: {
@@ -160,6 +161,9 @@ export class TxProfileResult {
160
161
  export class UtilityExecutionResult {
161
162
  constructor(
162
163
  public result: Fr[],
164
+ public offchainEffects: { data: Fr[]; contractAddress: AztecAddress }[],
165
+ /** Timestamp of the anchor block used during utility execution. */
166
+ public anchorBlockTimestamp: bigint,
163
167
  public stats?: SimulationStats,
164
168
  ) {}
165
169
 
@@ -167,20 +171,25 @@ export class UtilityExecutionResult {
167
171
  return z
168
172
  .object({
169
173
  result: z.array(schemas.Fr),
174
+ offchainEffects: z.array(z.object({ data: z.array(schemas.Fr), contractAddress: AztecAddress.schema })),
175
+ anchorBlockTimestamp: schemas.BigInt,
170
176
  stats: optional(SimulationStatsSchema),
171
177
  })
172
- .transform(({ result, stats }) => new UtilityExecutionResult(result, stats));
178
+ .transform(
179
+ ({ result, offchainEffects, anchorBlockTimestamp, stats }) =>
180
+ new UtilityExecutionResult(result, offchainEffects, anchorBlockTimestamp, stats),
181
+ );
173
182
  }
174
183
 
175
184
  static random(): UtilityExecutionResult {
176
- return new UtilityExecutionResult([Fr.random()], {
185
+ return new UtilityExecutionResult([Fr.random()], [], 0n, {
177
186
  nodeRPCCalls: {
178
- perMethod: { getBlockHeader: { times: [1] } },
187
+ perMethod: { getBlock: { times: [1] } },
179
188
  roundTrips: {
180
189
  roundTrips: 1,
181
190
  totalBlockingTime: 1,
182
191
  roundTripDurations: [1],
183
- roundTripMethods: [['getBlockHeader']],
192
+ roundTripMethods: [['getBlock']],
184
193
  },
185
194
  },
186
195
  timings: {
@@ -13,6 +13,7 @@ import {
13
13
  } from './private_execution_result.js';
14
14
  import { type ProvingStats, ProvingTimingsSchema } from './profiling.js';
15
15
  import { Tx } from './tx.js';
16
+ import type { TxHash } from './tx_hash.js';
16
17
 
17
18
  export class TxProvingResult {
18
19
  constructor(
@@ -22,6 +23,11 @@ export class TxProvingResult {
22
23
  public stats?: ProvingStats,
23
24
  ) {}
24
25
 
26
+ getTxHash(): Promise<TxHash> {
27
+ // Equivalent to `(await this.toTx()).txHash` but skips walking the execution result tree to collect logs.
28
+ return Tx.computeTxHash({ data: this.publicInputs });
29
+ }
30
+
25
31
  async toTx(): Promise<Tx> {
26
32
  const contractClassLogs = collectSortedContractClassLogs(this.privateExecutionResult);
27
33
 
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { BufferReader, BufferSink, serializeToSink } from '@aztec/foundation/serialize';
3
3
 
4
4
  import { inspect } from 'util';
5
5
  import { z } from 'zod';
@@ -63,8 +63,13 @@ export class PublicCallRequestWithCalldata {
63
63
  );
64
64
  }
65
65
 
66
- toBuffer() {
67
- return serializeToBuffer(this.request, new Vector(this.calldata));
66
+ toBuffer(): Buffer;
67
+ toBuffer(sink: BufferSink): void;
68
+ toBuffer(sink?: BufferSink): Buffer | void {
69
+ if (!sink) {
70
+ return BufferSink.serialize(this);
71
+ }
72
+ serializeToSink(sink, this.request, new Vector(this.calldata));
68
73
  }
69
74
 
70
75
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -3,18 +3,20 @@ import type { FieldsOf } from '@aztec/foundation/types';
3
3
 
4
4
  import { z } from 'zod';
5
5
 
6
- import { type ContractArtifact, ContractArtifactSchema } from '../abi/abi.js';
7
6
  import {
8
7
  type ContractInstanceWithAddress,
9
8
  ContractInstanceWithAddressSchema,
10
9
  } from '../contract/interfaces/contract_instance.js';
11
10
  import { Gas } from '../gas/gas.js';
12
11
  import type { GasUsed } from '../gas/gas_used.js';
12
+ import { type PublicStorageOverride, PublicStorageOverrideSchema } from '../interfaces/public_storage_override.js';
13
13
  import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
14
14
  import { ChonkProof } from '../proofs/chonk_proof.js';
15
+ import type { OffchainEffect } from './offchain_effect.js';
15
16
  import {
16
17
  PrivateCallExecutionResult,
17
18
  PrivateExecutionResult,
19
+ collectOffchainEffects,
18
20
  collectSortedContractClassLogs,
19
21
  } from './private_execution_result.js';
20
22
  import { type SimulationStats, SimulationStatsSchema } from './profiling.js';
@@ -22,35 +24,36 @@ import { NestedProcessReturnValues, PublicSimulationOutput } from './public_simu
22
24
  import { Tx } from './tx.js';
23
25
 
24
26
  /*
25
- * If passed during the execution of a user circuit, the contract function simulator will replace the instance and class
26
- * of the contract with the one provided in the overrides for that address. An example use case
27
- * would be overriding your own account contract so that valid signatures don't have to be provided while simulating.
27
+ * If passed during the execution of a user circuit, the contract function simulator will replace
28
+ * the contract instance at that address with the one provided. An example use case would be
29
+ * overriding your own account contract so that valid signatures don't have to be provided while
30
+ * simulating. The override's `currentContractClassId` resolves through PXE's locally registered
31
+ * classes, so pre-register the target artifact via `pxe.registerContractClass(...)`.
28
32
  */
29
- export type ContractOverrides = Record<
30
- string /* AztecAddress as string */,
31
- { instance: ContractInstanceWithAddress; artifact: ContractArtifact }
32
- >;
33
+ export type ContractOverrides = Record<string /* AztecAddress as string */, { instance: ContractInstanceWithAddress }>;
33
34
 
34
35
  /*
35
- * Optional values that can be overridden during simulation. In order to simulate a transaction with these
36
- * set, it *must* be run without the kernel circuits, or validations will fail
36
+ * Optional values that can be overridden during simulation. `publicStorage` writes to the public-data
37
+ * tree fork. `contracts` overrides contract instances in the contract DB.
38
+ * In order to simulate a transaction with these set, it *must* be run without the kernel circuits,
39
+ * or validations will fail.
37
40
  */
38
41
  export class SimulationOverrides {
39
- constructor(public contracts?: ContractOverrides) {}
42
+ public publicStorage?: PublicStorageOverride[];
43
+ public contracts?: ContractOverrides;
44
+
45
+ constructor(args: { publicStorage?: PublicStorageOverride[]; contracts?: ContractOverrides } = {}) {
46
+ this.publicStorage = args.publicStorage?.length ? args.publicStorage : undefined;
47
+ this.contracts = args.contracts && Object.keys(args.contracts).length > 0 ? args.contracts : undefined;
48
+ }
40
49
 
41
50
  static get schema() {
42
51
  return z
43
52
  .object({
44
- contracts: optional(
45
- z.record(
46
- z.string(),
47
- z.object({ instance: ContractInstanceWithAddressSchema, artifact: ContractArtifactSchema }),
48
- ),
49
- ),
53
+ publicStorage: optional(z.array(PublicStorageOverrideSchema)),
54
+ contracts: optional(z.record(z.string(), z.object({ instance: ContractInstanceWithAddressSchema }))),
50
55
  })
51
- .transform(({ contracts }) => {
52
- return new SimulationOverrides(contracts);
53
- });
56
+ .transform(args => new SimulationOverrides(args));
54
57
  }
55
58
  }
56
59
 
@@ -84,6 +87,11 @@ export class TxSimulationResult {
84
87
  public stats?: SimulationStats,
85
88
  ) {}
86
89
 
90
+ /** Returns offchain effects collected from private execution. */
91
+ get offchainEffects(): OffchainEffect[] {
92
+ return collectOffchainEffects(this.privateExecutionResult);
93
+ }
94
+
87
95
  get gasUsed(): GasUsed {
88
96
  return (
89
97
  this.publicOutput?.gasUsed ?? {
@@ -106,7 +114,7 @@ export class TxSimulationResult {
106
114
  .transform(TxSimulationResult.from);
107
115
  }
108
116
 
109
- static from(fields: Omit<FieldsOf<TxSimulationResult>, 'gasUsed'>) {
117
+ static from(fields: Omit<FieldsOf<TxSimulationResult>, 'gasUsed' | 'offchainEffects'>) {
110
118
  return new TxSimulationResult(
111
119
  fields.privateExecutionResult,
112
120
  fields.publicInputs,
@@ -150,7 +158,7 @@ export class TxSimulationResult {
150
158
  }
151
159
 
152
160
  /**
153
- * Recursively accummulate the return values of a call result and its nested executions,
161
+ * Recursively accumulate the return values of a call result and its nested executions,
154
162
  * so they can be retrieved in order.
155
163
  * @param executionResult
156
164
  * @returns
@@ -5,7 +5,7 @@ import {
5
5
  STATE_REFERENCE_LENGTH,
6
6
  } from '@aztec/constants';
7
7
  import type { Fr } from '@aztec/foundation/curves/bn254';
8
- import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
8
+ import { BufferReader, BufferSink, FieldReader, serializeToSink } from '@aztec/foundation/serialize';
9
9
  import type { FieldsOf } from '@aztec/foundation/types';
10
10
 
11
11
  import { inspect } from 'util';
@@ -46,9 +46,14 @@ export class StateReference {
46
46
  return new StateReference(...StateReference.getFields(fields));
47
47
  }
48
48
 
49
- toBuffer() {
50
- // Note: The order here must match the order in the ProposedHeaderLib solidity library.
51
- return serializeToBuffer(this.l1ToL2MessageTree, this.partial);
49
+ // Note: The order here must match the order in the ProposedHeaderLib solidity library.
50
+ toBuffer(): Buffer;
51
+ toBuffer(sink: BufferSink): void;
52
+ toBuffer(sink?: BufferSink): Buffer | void {
53
+ if (!sink) {
54
+ return BufferSink.serialize(this);
55
+ }
56
+ serializeToSink(sink, this.l1ToL2MessageTree, this.partial);
52
57
  }
53
58
 
54
59
  toFields(): Fr[] {
@@ -1,6 +1,6 @@
1
1
  import { TREE_SNAPSHOTS_LENGTH } from '@aztec/constants';
2
2
  import type { Fr } from '@aztec/foundation/curves/bn254';
3
- import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
+ import { BufferReader, BufferSink, FieldReader, serializeToSink } from '@aztec/foundation/serialize';
4
4
 
5
5
  import { inspect } from 'util';
6
6
  import { z } from 'zod';
@@ -51,9 +51,14 @@ export class TreeSnapshots {
51
51
  );
52
52
  }
53
53
 
54
- toBuffer() {
55
- // Note: The order here must match the order in the ProposedHeaderLib solidity library.
56
- return serializeToBuffer(this.l1ToL2MessageTree, this.noteHashTree, this.nullifierTree, this.publicDataTree);
54
+ // Note: The order here must match the order in the ProposedHeaderLib solidity library.
55
+ toBuffer(): Buffer;
56
+ toBuffer(sink: BufferSink): void;
57
+ toBuffer(sink?: BufferSink): Buffer | void {
58
+ if (!sink) {
59
+ return BufferSink.serialize(this);
60
+ }
61
+ serializeToSink(sink, this.l1ToL2MessageTree, this.noteHashTree, this.nullifierTree, this.publicDataTree);
57
62
  }
58
63
 
59
64
  static fromFields(fields: Fr[] | FieldReader) {
package/src/tx/tx.ts CHANGED
@@ -1,14 +1,19 @@
1
- import { Buffer32 } from '@aztec/foundation/buffer';
1
+ import { DA_GAS_PER_FIELD, TX_DA_GAS_OVERHEAD } from '@aztec/constants';
2
+ import { type BaseBuffer32, Buffer32 } from '@aztec/foundation/buffer';
2
3
  import { Fr } from '@aztec/foundation/curves/bn254';
3
4
  import type { ZodFor } from '@aztec/foundation/schemas';
4
- import { BufferReader, serializeArrayOfBufferableToVector, serializeToBuffer } from '@aztec/foundation/serialize';
5
- import type { FieldsOf } from '@aztec/foundation/types';
5
+ import {
6
+ BufferReader,
7
+ BufferSink,
8
+ serializeArrayOfBufferableToVector,
9
+ serializeArrayToSink,
10
+ serializeToSink,
11
+ } from '@aztec/foundation/serialize';
12
+ import { type FieldsOf, unfreeze } from '@aztec/foundation/types';
6
13
 
7
14
  import { z } from 'zod';
8
15
 
9
16
  import type { GasSettings } from '../gas/gas_settings.js';
10
- import type { GetPublicLogsResponse } from '../interfaces/get_logs_response.js';
11
- import type { L2LogsSource } from '../interfaces/l2_logs_source.js';
12
17
  import type { PublicCallRequest } from '../kernel/index.js';
13
18
  import { PrivateKernelTailCircuitPublicInputs } from '../kernel/private_kernel_tail_circuit_public_inputs.js';
14
19
  import { ContractClassLog, ContractClassLogFields } from '../logs/contract_class_log.js';
@@ -20,6 +25,14 @@ import { HashedValues } from './hashed_values.js';
20
25
  import { PublicCallRequestWithCalldata } from './public_call_request_with_calldata.js';
21
26
  import { TxHash } from './tx_hash.js';
22
27
 
28
+ // Static presize hint for the BufferSink the no-sink Tx.toBuffer() path allocates. Empirically a
29
+ // public-with-enqueued-calls Tx serialized by the bootstrapped bench (yarn-project/stdlib/src/tx/
30
+ // tx_bench.test.ts) is ~129128 bytes; a private-only Tx is ~81763 bytes. 128 KiB covers both shapes
31
+ // without a single doubling-growth `ensure()` resize on the cold path. Real-world Txs that happen to
32
+ // exceed this still serialize correctly — the sink falls back to its standard doubling growth — just
33
+ // with the existing cost.
34
+ const TX_SINK_PRESIZE_BYTES = 131072;
35
+
23
36
  /**
24
37
  * The interface of an L2 transaction.
25
38
  */
@@ -63,7 +76,7 @@ export class Tx extends Gossipable {
63
76
  // docs:end:tx_class
64
77
 
65
78
  // Gossipable method
66
- override generateP2PMessageIdentifier(): Promise<Buffer32> {
79
+ override generateP2PMessageIdentifier(): Promise<BaseBuffer32> {
67
80
  return Promise.resolve(new Buffer32(this.getTxHash().toBuffer()));
68
81
  }
69
82
 
@@ -126,14 +139,15 @@ export class Tx extends Gossipable {
126
139
  * Serializes the Tx object into a Buffer.
127
140
  * @returns Buffer representation of the Tx object.
128
141
  */
129
- toBuffer() {
130
- return serializeToBuffer([
131
- this.txHash,
132
- this.data,
133
- this.chonkProof,
134
- serializeArrayOfBufferableToVector(this.contractClassLogFields, 1),
135
- serializeArrayOfBufferableToVector(this.publicFunctionCalldata, 1),
136
- ]);
142
+ toBuffer(): Buffer;
143
+ toBuffer(sink: BufferSink): void;
144
+ toBuffer(sink?: BufferSink): Buffer | void {
145
+ if (!sink) {
146
+ return BufferSink.serialize(this, TX_SINK_PRESIZE_BYTES);
147
+ }
148
+ serializeToSink(sink, this.txHash, this.data, this.chonkProof);
149
+ serializeArrayToSink(sink, this.contractClassLogFields, 1);
150
+ serializeArrayToSink(sink, this.publicFunctionCalldata, 1);
137
151
  }
138
152
 
139
153
  static get schema(): ZodFor<Tx> {
@@ -179,15 +193,6 @@ export class Tx extends Gossipable {
179
193
  return this.txHash.equals(expectedHash);
180
194
  }
181
195
 
182
- /**
183
- * Gets public logs emitted by this tx.
184
- * @param logsSource - An instance of `L2LogsSource` which can be used to obtain the logs.
185
- * @returns The requested logs.
186
- */
187
- public getPublicLogs(logsSource: L2LogsSource): Promise<GetPublicLogsResponse> {
188
- return logsSource.getPublicLogs({ txHash: this.getTxHash() });
189
- }
190
-
191
196
  getContractClassLogs(): ContractClassLog[] {
192
197
  const logHashes = this.data.getNonEmptyContractClassLogsHashes();
193
198
  return logHashes.map((logHash, i) =>
@@ -264,16 +269,24 @@ export class Tx extends Gossipable {
264
269
  }
265
270
 
266
271
  /**
267
- * Estimates the tx size based on its private effects. Note that the actual size of the tx
268
- * after processing will probably be larger, as public execution would generate more data.
272
+ * Returns the number of fields this tx's effects will occupy in the blob,
273
+ * based on its private side effects only. Accurate for txs without public calls.
274
+ * For txs with public calls, the actual size will be larger due to public execution outputs.
269
275
  */
270
- getEstimatedPrivateTxEffectsSize() {
271
- return (
272
- this.data.getNonEmptyNoteHashes().length * Fr.SIZE_IN_BYTES +
273
- this.data.getNonEmptyNullifiers().length * Fr.SIZE_IN_BYTES +
274
- this.data.getEmittedPrivateLogsLength() * Fr.SIZE_IN_BYTES +
275
- this.data.getEmittedContractClassLogsLength() * Fr.SIZE_IN_BYTES
276
- );
276
+ getPrivateTxEffectsSizeInFields(): number {
277
+ // 3 fields overhead: tx_start_marker, tx_hash, tx_fee.
278
+ // TX_DA_GAS_OVERHEAD is defined as N * DA_GAS_PER_FIELD, so this division is always exact.
279
+ const overheadFields = TX_DA_GAS_OVERHEAD / DA_GAS_PER_FIELD;
280
+ const noteHashes = this.data.getNonEmptyNoteHashes().length;
281
+ const nullifiers = this.data.getNonEmptyNullifiers().length;
282
+ const l2ToL1Msgs = this.data.getNonEmptyL2ToL1Msgs().length;
283
+ // Each private log occupies (emittedLength + 1) fields: content + length field
284
+ const privateLogFields = this.data.getNonEmptyPrivateLogs().reduce((acc, log) => acc + log.emittedLength + 1, 0);
285
+ // Each contract class log occupies (length + 1) fields: content + contract address
286
+ const contractClassLogFields = this.data
287
+ .getNonEmptyContractClassLogsHashes()
288
+ .reduce((acc, log) => acc + log.logHash.length + 1, 0);
289
+ return overheadFields + noteHashes + nullifiers + l2ToL1Msgs + privateLogFields + contractClassLogFields;
277
290
  }
278
291
 
279
292
  /**
@@ -309,7 +322,7 @@ export class Tx extends Gossipable {
309
322
 
310
323
  /** Recomputes the tx hash. Used for testing purposes only when a property of the tx was mutated. */
311
324
  public async recomputeHash(): Promise<TxHash> {
312
- (this as any).txHash = await Tx.computeTxHash(this);
325
+ unfreeze(this).txHash = await Tx.computeTxHash(this);
313
326
  return this.txHash;
314
327
  }
315
328
 
@@ -336,7 +349,12 @@ export class TxArray extends Array<Tx> {
336
349
  }
337
350
  }
338
351
 
339
- public toBuffer(): Buffer {
340
- return serializeArrayOfBufferableToVector(this);
352
+ public toBuffer(): Buffer;
353
+ public toBuffer(sink: BufferSink): void;
354
+ public toBuffer(sink?: BufferSink): Buffer | void {
355
+ if (!sink) {
356
+ return serializeArrayOfBufferableToVector(this);
357
+ }
358
+ serializeArrayToSink(sink, [...this]);
341
359
  }
342
360
  }
@@ -1,6 +1,6 @@
1
1
  import { TX_CONSTANT_DATA_LENGTH } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
3
+ import { BufferReader, BufferSink, FieldReader, serializeToFields, serializeToSink } from '@aztec/foundation/serialize';
4
4
  import type { FieldsOf } from '@aztec/foundation/types';
5
5
 
6
6
  import { BlockHeader } from './block_header.js';
@@ -57,8 +57,13 @@ export class TxConstantData {
57
57
  );
58
58
  }
59
59
 
60
- toBuffer() {
61
- return serializeToBuffer(...TxConstantData.getFields(this));
60
+ toBuffer(): Buffer;
61
+ toBuffer(sink: BufferSink): void;
62
+ toBuffer(sink?: BufferSink): Buffer | void {
63
+ if (!sink) {
64
+ return BufferSink.serialize(this);
65
+ }
66
+ serializeToSink(sink, ...TxConstantData.getFields(this));
62
67
  }
63
68
 
64
69
  static empty() {
@@ -1,7 +1,7 @@
1
1
  import { TX_CONTEXT_LENGTH } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
- import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
4
+ import { BufferReader, BufferSink, FieldReader, serializeToFields, serializeToSink } from '@aztec/foundation/serialize';
5
5
  import type { FieldsOf } from '@aztec/foundation/types';
6
6
 
7
7
  import { z } from 'zod';
@@ -49,8 +49,13 @@ export class TxContext {
49
49
  * Serialize as a buffer.
50
50
  * @returns The buffer.
51
51
  */
52
- toBuffer() {
53
- return serializeToBuffer(...TxContext.getFields(this));
52
+ toBuffer(): Buffer;
53
+ toBuffer(sink: BufferSink): void;
54
+ toBuffer(sink?: BufferSink): Buffer | void {
55
+ if (!sink) {
56
+ return BufferSink.serialize(this);
57
+ }
58
+ serializeToSink(sink, ...TxContext.getFields(this));
54
59
  }
55
60
 
56
61
  static fromFields(fields: Fr[] | FieldReader): TxContext {
package/src/tx/tx_hash.ts CHANGED
@@ -1,5 +1,10 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { BufferReader, serializeArrayOfBufferableToVector } from '@aztec/foundation/serialize';
2
+ import {
3
+ BufferReader,
4
+ type BufferSink,
5
+ serializeArrayOfBufferableToVector,
6
+ serializeArrayToSink,
7
+ } from '@aztec/foundation/serialize';
3
8
 
4
9
  import { schemas } from '../schemas/index.js';
5
10
 
@@ -34,8 +39,13 @@ export class TxHash {
34
39
  return new TxHash(value);
35
40
  }
36
41
 
37
- public toBuffer() {
38
- return this.hash.toBuffer();
42
+ public toBuffer(): Buffer;
43
+ public toBuffer(sink: BufferSink): void;
44
+ public toBuffer(sink?: BufferSink): Buffer | void {
45
+ if (!sink) {
46
+ return this.hash.toBuffer();
47
+ }
48
+ this.hash.toBuffer(sink);
39
49
  }
40
50
 
41
51
  public toString() {
@@ -82,7 +92,12 @@ export class TxHashArray extends Array<TxHash> {
82
92
  }
83
93
  }
84
94
 
85
- public toBuffer(): Buffer {
86
- return serializeArrayOfBufferableToVector([...this]);
95
+ public toBuffer(): Buffer;
96
+ public toBuffer(sink: BufferSink): void;
97
+ public toBuffer(sink?: BufferSink): Buffer | void {
98
+ if (!sink) {
99
+ return serializeArrayOfBufferableToVector([...this]);
100
+ }
101
+ serializeArrayToSink(sink, [...this]);
87
102
  }
88
103
  }
@@ -1,9 +1,10 @@
1
- import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
1
+ import { BlockNumber, BlockNumberSchema, EpochNumber, EpochNumberSchema } from '@aztec/foundation/branded-types';
2
2
 
3
3
  import { z } from 'zod';
4
4
 
5
5
  import { RevertCode } from '../avm/revert_code.js';
6
6
  import { BlockHash } from '../block/block_hash.js';
7
+ import { DebugLog } from '../logs/debug_log.js';
7
8
  import { type ZodFor, schemas } from '../schemas/schemas.js';
8
9
  import { TxHash } from './tx_hash.js';
9
10
 
@@ -14,7 +15,7 @@ export enum TxStatus {
14
15
  PROPOSED = 'proposed',
15
16
  CHECKPOINTED = 'checkpointed',
16
17
  PROVEN = 'proven',
17
- FINALIZED = 'finalized', // TODO(#13569): Implement finalized status properly
18
+ FINALIZED = 'finalized',
18
19
  }
19
20
 
20
21
  /** Tx status sorted by finalization progress. */
@@ -30,9 +31,7 @@ export const SortedTxStatuses: TxStatus[] = [
30
31
  /** Execution result - only set when tx is in a block. */
31
32
  export enum TxExecutionResult {
32
33
  SUCCESS = 'success',
33
- APP_LOGIC_REVERTED = 'app_logic_reverted',
34
- TEARDOWN_REVERTED = 'teardown_reverted',
35
- BOTH_REVERTED = 'both_reverted',
34
+ REVERTED = 'reverted',
36
35
  }
37
36
 
38
37
  /**
@@ -57,6 +56,14 @@ export class TxReceipt {
57
56
  public blockHash?: BlockHash,
58
57
  /** The block number in which the transaction was included. */
59
58
  public blockNumber?: BlockNumber,
59
+ /** The epoch number in which the transaction was included. */
60
+ public epochNumber?: EpochNumber,
61
+ /**
62
+ * Debug logs collected during public function execution. Served only when the node is in test mode and placed on
63
+ * the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
64
+ * tx receipt is obtained).
65
+ */
66
+ public debugLogs?: DebugLog[],
60
67
  ) {}
61
68
 
62
69
  /** Returns true if the transaction was executed successfully. */
@@ -102,7 +109,9 @@ export class TxReceipt {
102
109
  error: z.string().optional(),
103
110
  blockHash: BlockHash.schema.optional(),
104
111
  blockNumber: BlockNumberSchema.optional(),
112
+ epochNumber: EpochNumberSchema.optional(),
105
113
  transactionFee: schemas.BigInt.optional(),
114
+ debugLogs: z.array(DebugLog.schema).optional(),
106
115
  })
107
116
  .transform(fields => TxReceipt.from(fields));
108
117
  }
@@ -115,6 +124,8 @@ export class TxReceipt {
115
124
  transactionFee?: bigint;
116
125
  blockHash?: BlockHash;
117
126
  blockNumber?: BlockNumber;
127
+ epochNumber?: EpochNumber;
128
+ debugLogs?: DebugLog[];
118
129
  }) {
119
130
  return new TxReceipt(
120
131
  fields.txHash,
@@ -124,20 +135,12 @@ export class TxReceipt {
124
135
  fields.transactionFee,
125
136
  fields.blockHash,
126
137
  fields.blockNumber,
138
+ fields.epochNumber,
139
+ fields.debugLogs,
127
140
  );
128
141
  }
129
142
 
130
143
  public static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult {
131
- if (revertCode.equals(RevertCode.OK)) {
132
- return TxExecutionResult.SUCCESS;
133
- } else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
134
- return TxExecutionResult.APP_LOGIC_REVERTED;
135
- } else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
136
- return TxExecutionResult.TEARDOWN_REVERTED;
137
- } else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
138
- return TxExecutionResult.BOTH_REVERTED;
139
- } else {
140
- throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
141
- }
144
+ return revertCode.isOK() ? TxExecutionResult.SUCCESS : TxExecutionResult.REVERTED;
142
145
  }
143
146
  }
@@ -6,6 +6,10 @@ export const TX_ERROR_GAS_LIMIT_TOO_HIGH = 'Gas limit is higher than the amount
6
6
 
7
7
  // Phases
8
8
  export const TX_ERROR_SETUP_FUNCTION_NOT_ALLOWED = 'Setup function not on allow list';
9
+ export const TX_ERROR_SETUP_FUNCTION_UNKNOWN_CONTRACT = 'Setup function targets unknown contract';
10
+ export const TX_ERROR_SETUP_ONLY_SELF_WRONG_SENDER = 'Setup only_self function called with incorrect msg_sender';
11
+ export const TX_ERROR_SETUP_NULL_MSG_SENDER = 'Setup function called with null msg sender';
12
+ export const TX_ERROR_SETUP_WRONG_CALLDATA_LENGTH = 'Setup function called with wrong calldata length';
9
13
 
10
14
  // Nullifiers
11
15
  export const TX_ERROR_DUPLICATE_NULLIFIER_IN_TX = 'Duplicate nullifier in tx';
@@ -37,5 +41,13 @@ export const TX_ERROR_SIZE_ABOVE_LIMIT = 'Transaction size above size limit';
37
41
  // Block header
38
42
  export const TX_ERROR_BLOCK_HEADER = 'Block header not found';
39
43
 
44
+ // Contract instance
45
+ export const TX_ERROR_INCORRECT_CONTRACT_ADDRESS = 'Incorrect contract instance deployment address';
46
+ export const TX_ERROR_MALFORMED_CONTRACT_INSTANCE_LOG = 'Failed to parse contract instance deployment log';
47
+
48
+ // Contract class
49
+ export const TX_ERROR_INCORRECT_CONTRACT_CLASS_ID = 'Incorrect contract class id';
50
+ export const TX_ERROR_MALFORMED_CONTRACT_CLASS_LOG = 'Failed to parse contract class registration log';
51
+
40
52
  // General
41
53
  export const TX_ERROR_DURING_VALIDATION = 'Unexpected error during validation';
@@ -15,10 +15,7 @@ export function hasPublicCalls(tx: AnyTx): boolean {
15
15
  return tx.data.numberOfPublicCallRequests() > 0;
16
16
  }
17
17
 
18
- export type TxValidationResult =
19
- | { result: 'valid' }
20
- | { result: 'invalid'; reason: string[] }
21
- | { result: 'skipped'; reason: string[] };
18
+ export type TxValidationResult = { result: 'valid' } | { result: 'invalid'; reason: string[] };
22
19
 
23
20
  export interface TxValidator<T = AnyTx> {
24
21
  validateTx(tx: T): Promise<TxValidationResult>;
@@ -28,6 +25,5 @@ export const TxValidationResultSchema = zodFor<TxValidationResult>()(
28
25
  z.discriminatedUnion('result', [
29
26
  z.object({ result: z.literal('valid') }),
30
27
  z.object({ result: z.literal('invalid'), reason: z.array(z.string()) }),
31
- z.object({ result: z.literal('skipped'), reason: z.array(z.string()) }),
32
28
  ]),
33
29
  );