@aztec/stdlib 0.0.1-commit.2448fdb → 0.0.1-commit.2606882

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 (864) hide show
  1. package/dest/abi/abi.d.ts +139 -1050
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +34 -60
  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/contract_artifact.d.ts +1 -1
  7. package/dest/abi/contract_artifact.d.ts.map +1 -1
  8. package/dest/abi/contract_artifact.js +14 -7
  9. package/dest/abi/encoder.d.ts +1 -1
  10. package/dest/abi/encoder.d.ts.map +1 -1
  11. package/dest/abi/encoder.js +32 -6
  12. package/dest/abi/event_selector.d.ts +4 -7
  13. package/dest/abi/event_selector.d.ts.map +1 -1
  14. package/dest/abi/function_call.d.ts +7 -25
  15. package/dest/abi/function_call.d.ts.map +1 -1
  16. package/dest/abi/function_selector.d.ts +3 -6
  17. package/dest/abi/function_selector.d.ts.map +1 -1
  18. package/dest/abi/function_selector.js +1 -3
  19. package/dest/abi/note_selector.d.ts +4 -7
  20. package/dest/abi/note_selector.d.ts.map +1 -1
  21. package/dest/abi/note_selector.js +1 -3
  22. package/dest/abi/utils.d.ts +1 -1
  23. package/dest/abi/utils.d.ts.map +1 -1
  24. package/dest/abi/utils.js +1 -1
  25. package/dest/auth_witness/auth_witness.d.ts +2 -2
  26. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  27. package/dest/avm/avm.d.ts +1756 -10463
  28. package/dest/avm/avm.d.ts.map +1 -1
  29. package/dest/avm/avm.js +6 -3
  30. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  31. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  32. package/dest/avm/avm_accumulated_data.js +2 -2
  33. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  34. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  35. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  36. package/dest/avm/avm_proving_request.d.ts +653 -5446
  37. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  38. package/dest/avm/message_pack.js +12 -3
  39. package/dest/avm/public_data_write.d.ts +6 -12
  40. package/dest/avm/public_data_write.d.ts.map +1 -1
  41. package/dest/avm/revert_code.d.ts +1 -7
  42. package/dest/avm/revert_code.d.ts.map +1 -1
  43. package/dest/avm/revert_code.js +0 -3
  44. package/dest/aztec-address/index.d.ts +8 -8
  45. package/dest/aztec-address/index.d.ts.map +1 -1
  46. package/dest/aztec-address/index.js +9 -6
  47. package/dest/block/attestation_info.d.ts +3 -2
  48. package/dest/block/attestation_info.d.ts.map +1 -1
  49. package/dest/block/attestation_info.js +7 -5
  50. package/dest/block/block_data.d.ts +13 -38
  51. package/dest/block/block_data.d.ts.map +1 -1
  52. package/dest/block/block_data.js +2 -2
  53. package/dest/block/block_hash.d.ts +11 -10
  54. package/dest/block/block_hash.d.ts.map +1 -1
  55. package/dest/block/block_hash.js +10 -9
  56. package/dest/block/block_parameter.d.ts +37 -4
  57. package/dest/block/block_parameter.d.ts.map +1 -1
  58. package/dest/block/block_parameter.js +53 -2
  59. package/dest/block/in_block.d.ts +5 -24
  60. package/dest/block/in_block.d.ts.map +1 -1
  61. package/dest/block/index.d.ts +1 -2
  62. package/dest/block/index.d.ts.map +1 -1
  63. package/dest/block/index.js +0 -1
  64. package/dest/block/l2_block.d.ts +13 -41
  65. package/dest/block/l2_block.d.ts.map +1 -1
  66. package/dest/block/l2_block_info.d.ts +10 -29
  67. package/dest/block/l2_block_info.d.ts.map +1 -1
  68. package/dest/block/l2_block_info.js +6 -5
  69. package/dest/block/l2_block_source.d.ts +206 -355
  70. package/dest/block/l2_block_source.d.ts.map +1 -1
  71. package/dest/block/l2_block_source.js +67 -1
  72. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  73. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  74. package/dest/block/l2_block_stream/l2_block_stream.js +44 -17
  75. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  76. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  77. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  78. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  79. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  80. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  81. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  82. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  83. package/dest/block/proposal/attestations_and_signers.js +26 -18
  84. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  85. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  86. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  87. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  88. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  89. package/dest/checkpoint/checkpoint.d.ts +30 -96
  90. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  91. package/dest/checkpoint/checkpoint.js +9 -1
  92. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  93. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  94. package/dest/checkpoint/checkpoint_data.js +12 -0
  95. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  96. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  97. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  98. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  99. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  100. package/dest/checkpoint/digest.d.ts +18 -0
  101. package/dest/checkpoint/digest.d.ts.map +1 -0
  102. package/dest/checkpoint/digest.js +12 -0
  103. package/dest/checkpoint/index.d.ts +4 -1
  104. package/dest/checkpoint/index.d.ts.map +1 -1
  105. package/dest/checkpoint/index.js +3 -0
  106. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  107. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  108. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  109. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  110. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  111. package/dest/config/chain-config.d.ts +4 -9
  112. package/dest/config/chain-config.d.ts.map +1 -1
  113. package/dest/config/chain-config.js +13 -12
  114. package/dest/config/sequencer-config.d.ts +7 -3
  115. package/dest/config/sequencer-config.d.ts.map +1 -1
  116. package/dest/config/sequencer-config.js +19 -4
  117. package/dest/contract/complete_address.d.ts +3 -2
  118. package/dest/contract/complete_address.d.ts.map +1 -1
  119. package/dest/contract/complete_address.js +6 -2
  120. package/dest/contract/contract_address.d.ts +6 -6
  121. package/dest/contract/contract_address.d.ts.map +1 -1
  122. package/dest/contract/contract_address.js +6 -5
  123. package/dest/contract/contract_class_id.d.ts +2 -2
  124. package/dest/contract/contract_class_id.js +2 -2
  125. package/dest/contract/contract_deployment_data.d.ts +15 -61
  126. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  127. package/dest/contract/contract_instance.d.ts +4 -2
  128. package/dest/contract/contract_instance.d.ts.map +1 -1
  129. package/dest/contract/contract_instance.js +10 -3
  130. package/dest/contract/index.d.ts +1 -3
  131. package/dest/contract/index.d.ts.map +1 -1
  132. package/dest/contract/index.js +0 -2
  133. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  134. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  135. package/dest/contract/interfaces/contract_class.js +1 -28
  136. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  137. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  138. package/dest/contract/interfaces/contract_instance.js +4 -2
  139. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  140. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  141. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  142. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  143. package/dest/contract/private_function.d.ts +1 -1
  144. package/dest/contract/private_function.d.ts.map +1 -1
  145. package/dest/contract/private_function.js +2 -4
  146. package/dest/database-version/database_version.d.ts +5 -11
  147. package/dest/database-version/database_version.d.ts.map +1 -1
  148. package/dest/database-version/version_manager.d.ts +6 -2
  149. package/dest/database-version/version_manager.d.ts.map +1 -1
  150. package/dest/database-version/version_manager.js +12 -1
  151. package/dest/epoch-helpers/index.d.ts +6 -22
  152. package/dest/epoch-helpers/index.d.ts.map +1 -1
  153. package/dest/epoch-helpers/index.js +3 -0
  154. package/dest/file-store/factory.d.ts +4 -3
  155. package/dest/file-store/factory.d.ts.map +1 -1
  156. package/dest/file-store/factory.js +2 -2
  157. package/dest/file-store/http.d.ts +9 -2
  158. package/dest/file-store/http.d.ts.map +1 -1
  159. package/dest/file-store/http.js +20 -9
  160. package/dest/file-store/index.d.ts +2 -1
  161. package/dest/file-store/index.d.ts.map +1 -1
  162. package/dest/gas/fee_math.d.ts +49 -0
  163. package/dest/gas/fee_math.d.ts.map +1 -0
  164. package/dest/gas/fee_math.js +80 -0
  165. package/dest/gas/gas.d.ts +9 -14
  166. package/dest/gas/gas.d.ts.map +1 -1
  167. package/dest/gas/gas.js +6 -3
  168. package/dest/gas/gas_fees.d.ts +13 -14
  169. package/dest/gas/gas_fees.d.ts.map +1 -1
  170. package/dest/gas/gas_fees.js +17 -4
  171. package/dest/gas/gas_settings.d.ts +27 -84
  172. package/dest/gas/gas_settings.d.ts.map +1 -1
  173. package/dest/gas/gas_settings.js +6 -3
  174. package/dest/gas/index.d.ts +2 -1
  175. package/dest/gas/index.d.ts.map +1 -1
  176. package/dest/gas/index.js +1 -0
  177. package/dest/ha-signing/config.d.ts +72 -0
  178. package/dest/ha-signing/config.d.ts.map +1 -0
  179. package/dest/ha-signing/config.js +88 -0
  180. package/dest/ha-signing/index.d.ts +4 -0
  181. package/dest/ha-signing/index.d.ts.map +1 -0
  182. package/dest/ha-signing/index.js +3 -0
  183. package/dest/ha-signing/local_config.d.ts +32 -0
  184. package/dest/ha-signing/local_config.d.ts.map +1 -0
  185. package/dest/ha-signing/local_config.js +24 -0
  186. package/dest/ha-signing/types.d.ts +90 -0
  187. package/dest/ha-signing/types.d.ts.map +1 -0
  188. package/dest/ha-signing/types.js +39 -0
  189. package/dest/hash/hash.d.ts +16 -1
  190. package/dest/hash/hash.d.ts.map +1 -1
  191. package/dest/hash/hash.js +34 -2
  192. package/dest/interfaces/allowed_element.d.ts +4 -28
  193. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  194. package/dest/interfaces/api_limit.d.ts +1 -1
  195. package/dest/interfaces/api_limit.js +1 -1
  196. package/dest/interfaces/archiver.d.ts +22 -32
  197. package/dest/interfaces/archiver.d.ts.map +1 -1
  198. package/dest/interfaces/archiver.js +214 -70
  199. package/dest/interfaces/aztec-node-admin.d.ts +65 -294
  200. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  201. package/dest/interfaces/aztec-node-admin.js +59 -16
  202. package/dest/interfaces/aztec-node-debug.js +4 -1
  203. package/dest/interfaces/aztec-node.d.ts +109 -106
  204. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  205. package/dest/interfaces/aztec-node.js +309 -69
  206. package/dest/interfaces/block-builder.d.ts +3 -1
  207. package/dest/interfaces/block-builder.d.ts.map +1 -1
  208. package/dest/interfaces/block_response.d.ts +90 -0
  209. package/dest/interfaces/block_response.d.ts.map +1 -0
  210. package/dest/interfaces/block_response.js +30 -0
  211. package/dest/interfaces/chain_tips.d.ts +50 -0
  212. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  213. package/dest/interfaces/chain_tips.js +11 -0
  214. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  215. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  216. package/dest/interfaces/checkpoint_parameter.js +18 -0
  217. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  218. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  219. package/dest/interfaces/checkpoint_response.js +26 -0
  220. package/dest/interfaces/client.d.ts +7 -2
  221. package/dest/interfaces/client.d.ts.map +1 -1
  222. package/dest/interfaces/client.js +6 -1
  223. package/dest/interfaces/configs.d.ts +41 -130
  224. package/dest/interfaces/configs.d.ts.map +1 -1
  225. package/dest/interfaces/configs.js +9 -1
  226. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  227. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  228. package/dest/interfaces/l1_publish_info.js +26 -0
  229. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  230. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  231. package/dest/interfaces/l2_logs_source.js +5 -0
  232. package/dest/interfaces/merkle_tree_operations.d.ts +4 -3
  233. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  234. package/dest/interfaces/p2p-bootstrap.js +8 -2
  235. package/dest/interfaces/p2p.d.ts +15 -5
  236. package/dest/interfaces/p2p.d.ts.map +1 -1
  237. package/dest/interfaces/p2p.js +28 -5
  238. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  239. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  240. package/dest/interfaces/prover-agent.d.ts +5 -23
  241. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  242. package/dest/interfaces/prover-agent.js +4 -1
  243. package/dest/interfaces/prover-client.d.ts +6 -27
  244. package/dest/interfaces/prover-client.d.ts.map +1 -1
  245. package/dest/interfaces/prover-client.js +0 -3
  246. package/dest/interfaces/prover-node.js +22 -8
  247. package/dest/interfaces/proving-job-source.js +24 -4
  248. package/dest/interfaces/proving-job.d.ts +742 -5793
  249. package/dest/interfaces/proving-job.d.ts.map +1 -1
  250. package/dest/interfaces/proving-job.js +1 -1
  251. package/dest/interfaces/public_storage_override.d.ts +22 -0
  252. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  253. package/dest/interfaces/public_storage_override.js +7 -0
  254. package/dest/interfaces/server.d.ts +6 -1
  255. package/dest/interfaces/server.d.ts.map +1 -1
  256. package/dest/interfaces/server.js +5 -0
  257. package/dest/interfaces/slasher.d.ts +25 -65
  258. package/dest/interfaces/slasher.d.ts.map +1 -1
  259. package/dest/interfaces/slasher.js +8 -4
  260. package/dest/interfaces/tx_provider.d.ts +6 -1
  261. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  262. package/dest/interfaces/validator.d.ts +48 -228
  263. package/dest/interfaces/validator.d.ts.map +1 -1
  264. package/dest/interfaces/validator.js +7 -3
  265. package/dest/interfaces/world_state.d.ts +2 -2
  266. package/dest/interfaces/world_state.d.ts.map +1 -1
  267. package/dest/kernel/claimed_length_array.js +1 -1
  268. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  269. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  270. package/dest/kernel/hints/key_validation_request.js +20 -18
  271. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  272. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  273. package/dest/kernel/index.d.ts +5 -1
  274. package/dest/kernel/index.d.ts.map +1 -1
  275. package/dest/kernel/index.js +4 -0
  276. package/dest/kernel/log_hash.d.ts +6 -2
  277. package/dest/kernel/log_hash.d.ts.map +1 -1
  278. package/dest/kernel/log_hash.js +21 -9
  279. package/dest/kernel/padded_side_effects.js +1 -1
  280. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  281. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  282. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  283. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  284. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  285. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  286. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  287. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  288. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  289. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  290. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  291. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  292. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  293. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  294. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  295. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  296. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  297. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  298. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  299. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  300. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  301. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  302. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  303. package/dest/kernel/private_to_avm_accumulated_data.js +13 -7
  304. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  305. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  306. package/dest/kernel/private_to_public_accumulated_data.js +8 -5
  307. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  308. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  309. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  310. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  311. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  312. package/dest/kernel/private_to_rollup_accumulated_data.js +7 -4
  313. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  314. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  315. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  316. package/dest/kernel/public_call_request.d.ts +15 -30
  317. package/dest/kernel/public_call_request.d.ts.map +1 -1
  318. package/dest/kernel/public_call_request.js +16 -7
  319. package/dest/keys/derivation.d.ts +6 -2
  320. package/dest/keys/derivation.d.ts.map +1 -1
  321. package/dest/keys/derivation.js +16 -6
  322. package/dest/keys/public_key.d.ts +22 -3
  323. package/dest/keys/public_key.d.ts.map +1 -1
  324. package/dest/keys/public_key.js +20 -1
  325. package/dest/keys/public_keys.d.ts +55 -82
  326. package/dest/keys/public_keys.d.ts.map +1 -1
  327. package/dest/keys/public_keys.js +102 -74
  328. package/dest/kv-store/config.d.ts +14 -0
  329. package/dest/kv-store/config.d.ts.map +1 -0
  330. package/dest/kv-store/config.js +21 -0
  331. package/dest/kv-store/index.d.ts +2 -0
  332. package/dest/kv-store/index.d.ts.map +1 -0
  333. package/dest/kv-store/index.js +1 -0
  334. package/dest/l1-contracts/index.d.ts +2 -2
  335. package/dest/l1-contracts/index.d.ts.map +1 -1
  336. package/dest/l1-contracts/index.js +1 -1
  337. package/dest/logs/app_tagging_secret.d.ts +46 -0
  338. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  339. package/dest/logs/{extended_directional_app_tagging_secret.js → app_tagging_secret.js} +51 -21
  340. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  341. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  342. package/dest/logs/app_tagging_secret_kind.js +17 -0
  343. package/dest/logs/contract_class_log.d.ts +16 -34
  344. package/dest/logs/contract_class_log.d.ts.map +1 -1
  345. package/dest/logs/contract_class_log.js +11 -9
  346. package/dest/logs/index.d.ts +7 -7
  347. package/dest/logs/index.d.ts.map +1 -1
  348. package/dest/logs/index.js +6 -6
  349. package/dest/logs/log_cursor.d.ts +51 -0
  350. package/dest/logs/log_cursor.d.ts.map +1 -0
  351. package/dest/logs/log_cursor.js +82 -0
  352. package/dest/logs/log_result.d.ts +54 -0
  353. package/dest/logs/log_result.d.ts.map +1 -0
  354. package/dest/logs/log_result.js +56 -0
  355. package/dest/logs/logs_query.d.ts +82 -0
  356. package/dest/logs/logs_query.d.ts.map +1 -0
  357. package/dest/logs/logs_query.js +50 -0
  358. package/dest/logs/message_context.d.ts +3 -2
  359. package/dest/logs/message_context.d.ts.map +1 -1
  360. package/dest/logs/message_context.js +4 -0
  361. package/dest/logs/pre_tag.d.ts +11 -24
  362. package/dest/logs/pre_tag.d.ts.map +1 -1
  363. package/dest/logs/pre_tag.js +2 -2
  364. package/dest/logs/private_log.d.ts +7 -12
  365. package/dest/logs/private_log.d.ts.map +1 -1
  366. package/dest/logs/private_log.js +7 -4
  367. package/dest/logs/public_log.d.ts +1 -1
  368. package/dest/logs/public_log.d.ts.map +1 -1
  369. package/dest/logs/public_log.js +1 -7
  370. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  371. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  372. package/dest/logs/query_all_logs_by_tags.js +64 -0
  373. package/dest/logs/siloed_tag.d.ts +5 -7
  374. package/dest/logs/siloed_tag.d.ts.map +1 -1
  375. package/dest/logs/siloed_tag.js +7 -1
  376. package/dest/logs/tag.d.ts +5 -6
  377. package/dest/logs/tag.d.ts.map +1 -1
  378. package/dest/logs/tag.js +4 -0
  379. package/dest/logs/tagging_index_range.d.ts +13 -31
  380. package/dest/logs/tagging_index_range.d.ts.map +1 -1
  381. package/dest/logs/tagging_index_range.js +2 -2
  382. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  383. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  384. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  385. package/dest/messaging/index.d.ts +2 -1
  386. package/dest/messaging/index.d.ts.map +1 -1
  387. package/dest/messaging/index.js +1 -0
  388. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  389. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  390. package/dest/messaging/l2_to_l1_membership.d.ts +43 -6
  391. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  392. package/dest/messaging/l2_to_l1_membership.js +72 -12
  393. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  394. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  395. package/dest/messaging/l2_to_l1_message.js +21 -12
  396. package/dest/noir/index.d.ts +3 -1
  397. package/dest/noir/index.d.ts.map +1 -1
  398. package/dest/note/note.d.ts +2 -2
  399. package/dest/note/note.d.ts.map +1 -1
  400. package/dest/p2p/block_proposal.d.ts +32 -15
  401. package/dest/p2p/block_proposal.d.ts.map +1 -1
  402. package/dest/p2p/block_proposal.js +58 -40
  403. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  404. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  405. package/dest/p2p/checkpoint_attestation.js +23 -24
  406. package/dest/p2p/checkpoint_proposal.d.ts +36 -17
  407. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  408. package/dest/p2p/checkpoint_proposal.js +60 -52
  409. package/dest/p2p/consensus_payload.d.ts +26 -20
  410. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  411. package/dest/p2p/consensus_payload.js +38 -19
  412. package/dest/p2p/gossipable.d.ts +4 -4
  413. package/dest/p2p/gossipable.d.ts.map +1 -1
  414. package/dest/p2p/signature_utils.d.ts +28 -19
  415. package/dest/p2p/signature_utils.d.ts.map +1 -1
  416. package/dest/p2p/signature_utils.js +118 -21
  417. package/dest/p2p/signed_txs.d.ts +15 -13
  418. package/dest/p2p/signed_txs.d.ts.map +1 -1
  419. package/dest/p2p/signed_txs.js +26 -24
  420. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  421. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  422. package/dest/parity/parity_base_private_inputs.js +7 -5
  423. package/dest/parity/parity_public_inputs.d.ts +8 -4
  424. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  425. package/dest/parity/parity_public_inputs.js +6 -3
  426. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  427. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  428. package/dest/proofs/chonk_proof.d.ts +57 -7
  429. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  430. package/dest/proofs/chonk_proof.js +111 -20
  431. package/dest/proofs/recursive_proof.d.ts +2 -2
  432. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  433. package/dest/rollup/base_rollup_hints.js +2 -2
  434. package/dest/rollup/block_headers_hash.d.ts +1 -1
  435. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  436. package/dest/rollup/block_headers_hash.js +8 -2
  437. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  438. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  439. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  440. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  441. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  442. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  443. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  444. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  445. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  446. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  447. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  448. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  449. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -1
  450. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  451. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  452. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  453. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  454. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  455. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  456. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  457. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  458. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  459. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  460. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  461. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  462. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  463. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  464. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  465. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  466. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  467. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  468. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  469. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  470. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  471. package/dest/schemas/schemas.d.ts +32 -78
  472. package/dest/schemas/schemas.d.ts.map +1 -1
  473. package/dest/schemas/schemas.js +2 -2
  474. package/dest/slashing/helpers.d.ts +2 -2
  475. package/dest/slashing/helpers.d.ts.map +1 -1
  476. package/dest/slashing/helpers.js +10 -7
  477. package/dest/slashing/index.d.ts +2 -3
  478. package/dest/slashing/index.d.ts.map +1 -1
  479. package/dest/slashing/index.js +1 -2
  480. package/dest/slashing/serialization.d.ts +2 -6
  481. package/dest/slashing/serialization.d.ts.map +1 -1
  482. package/dest/slashing/serialization.js +0 -60
  483. package/dest/slashing/types.d.ts +18 -112
  484. package/dest/slashing/types.d.ts.map +1 -1
  485. package/dest/slashing/types.js +16 -24
  486. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  487. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  488. package/dest/slashing/{tally.js → votes.js} +1 -1
  489. package/dest/snapshots/types.d.ts +15 -78
  490. package/dest/snapshots/types.d.ts.map +1 -1
  491. package/dest/stats/stats.d.ts +2 -2
  492. package/dest/stats/stats.d.ts.map +1 -1
  493. package/dest/tests/factories.d.ts +25 -32
  494. package/dest/tests/factories.d.ts.map +1 -1
  495. package/dest/tests/factories.js +81 -81
  496. package/dest/tests/mocks.d.ts +8 -5
  497. package/dest/tests/mocks.d.ts.map +1 -1
  498. package/dest/tests/mocks.js +40 -52
  499. package/dest/timetable/index.d.ts +48 -1
  500. package/dest/timetable/index.d.ts.map +1 -1
  501. package/dest/timetable/index.js +184 -14
  502. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  503. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  504. package/dest/trees/append_only_tree_snapshot.js +6 -3
  505. package/dest/trees/nullifier_leaf.d.ts +19 -42
  506. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  507. package/dest/trees/nullifier_leaf.js +3 -0
  508. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  509. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  510. package/dest/trees/nullifier_membership_witness.js +2 -14
  511. package/dest/trees/public_data_leaf.d.ts +21 -53
  512. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  513. package/dest/trees/public_data_witness.d.ts +16 -58
  514. package/dest/trees/public_data_witness.d.ts.map +1 -1
  515. package/dest/tx/block_header.d.ts +5 -4
  516. package/dest/tx/block_header.d.ts.map +1 -1
  517. package/dest/tx/block_header.js +7 -4
  518. package/dest/tx/call_context.d.ts +4 -14
  519. package/dest/tx/call_context.d.ts.map +1 -1
  520. package/dest/tx/capsule.d.ts +2 -2
  521. package/dest/tx/capsule.d.ts.map +1 -1
  522. package/dest/tx/fee_provider.d.ts +10 -0
  523. package/dest/tx/fee_provider.d.ts.map +1 -0
  524. package/dest/tx/fee_provider.js +1 -0
  525. package/dest/tx/function_data.d.ts +4 -10
  526. package/dest/tx/function_data.d.ts.map +1 -1
  527. package/dest/tx/global_variable_builder.d.ts +3 -4
  528. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  529. package/dest/tx/global_variables.d.ts +16 -49
  530. package/dest/tx/global_variables.d.ts.map +1 -1
  531. package/dest/tx/global_variables.js +8 -12
  532. package/dest/tx/hashed_values.d.ts +4 -3
  533. package/dest/tx/hashed_values.d.ts.map +1 -1
  534. package/dest/tx/hashed_values.js +6 -3
  535. package/dest/tx/in_tx.d.ts +5 -17
  536. package/dest/tx/in_tx.d.ts.map +1 -1
  537. package/dest/tx/index.d.ts +2 -1
  538. package/dest/tx/index.d.ts.map +1 -1
  539. package/dest/tx/index.js +1 -0
  540. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  541. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  542. package/dest/tx/indexed_tx_effect.js +9 -6
  543. package/dest/tx/partial_state_reference.d.ts +22 -65
  544. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  545. package/dest/tx/partial_state_reference.js +6 -3
  546. package/dest/tx/private_execution_result.d.ts +6 -16
  547. package/dest/tx/private_execution_result.d.ts.map +1 -1
  548. package/dest/tx/profiling.d.ts +54 -352
  549. package/dest/tx/profiling.d.ts.map +1 -1
  550. package/dest/tx/profiling.js +4 -4
  551. package/dest/tx/protocol_contracts.d.ts +5 -9
  552. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  553. package/dest/tx/protocol_contracts.js +2 -2
  554. package/dest/tx/proven_tx.d.ts +30 -74
  555. package/dest/tx/proven_tx.d.ts.map +1 -1
  556. package/dest/tx/proven_tx.js +6 -0
  557. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  558. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  559. package/dest/tx/public_call_request_with_calldata.js +6 -3
  560. package/dest/tx/simulated_tx.d.ts +62 -1124
  561. package/dest/tx/simulated_tx.d.ts.map +1 -1
  562. package/dest/tx/simulated_tx.js +12 -10
  563. package/dest/tx/state_reference.d.ts +30 -117
  564. package/dest/tx/state_reference.d.ts.map +1 -1
  565. package/dest/tx/state_reference.js +6 -4
  566. package/dest/tx/tree_snapshots.d.ts +27 -84
  567. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  568. package/dest/tx/tree_snapshots.js +6 -4
  569. package/dest/tx/tx.d.ts +14 -13
  570. package/dest/tx/tx.d.ts.map +1 -1
  571. package/dest/tx/tx.js +30 -23
  572. package/dest/tx/tx_constant_data.d.ts +4 -3
  573. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  574. package/dest/tx/tx_constant_data.js +6 -3
  575. package/dest/tx/tx_context.d.ts +32 -131
  576. package/dest/tx/tx_context.d.ts.map +1 -1
  577. package/dest/tx/tx_context.js +6 -6
  578. package/dest/tx/tx_hash.d.ts +6 -4
  579. package/dest/tx/tx_hash.d.ts.map +1 -1
  580. package/dest/tx/tx_hash.js +13 -5
  581. package/dest/tx/tx_receipt.d.ts +144 -67
  582. package/dest/tx/tx_receipt.d.ts.map +1 -1
  583. package/dest/tx/tx_receipt.js +141 -51
  584. package/dest/tx/validator/tx_validator.d.ts +5 -27
  585. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  586. package/dest/tx/validator/tx_validator.js +0 -4
  587. package/dest/types/shared.d.ts +4 -12
  588. package/dest/types/shared.d.ts.map +1 -1
  589. package/dest/types/shared.js +6 -12
  590. package/dest/update-checker/dev_version.d.ts +3 -0
  591. package/dest/update-checker/dev_version.d.ts.map +1 -0
  592. package/dest/update-checker/dev_version.js +1 -0
  593. package/dest/update-checker/index.d.ts +2 -1
  594. package/dest/update-checker/index.d.ts.map +1 -1
  595. package/dest/update-checker/index.js +1 -0
  596. package/dest/update-checker/package_version.d.ts +6 -3
  597. package/dest/update-checker/package_version.d.ts.map +1 -1
  598. package/dest/update-checker/package_version.js +8 -19
  599. package/dest/validators/schemas.d.ts +147 -614
  600. package/dest/validators/schemas.d.ts.map +1 -1
  601. package/dest/validators/schemas.js +6 -4
  602. package/dest/validators/types.d.ts +20 -3
  603. package/dest/validators/types.d.ts.map +1 -1
  604. package/dest/versioning/versioning.js +1 -1
  605. package/dest/vks/verification_key.d.ts +4 -139
  606. package/dest/vks/verification_key.d.ts.map +1 -1
  607. package/dest/vks/verification_key.js +5 -126
  608. package/dest/vks/vk_data.js +1 -1
  609. package/dest/world-state/genesis_data.d.ts +13 -0
  610. package/dest/world-state/genesis_data.d.ts.map +1 -0
  611. package/dest/world-state/genesis_data.js +7 -0
  612. package/dest/world-state/index.d.ts +2 -1
  613. package/dest/world-state/index.d.ts.map +1 -1
  614. package/dest/world-state/index.js +1 -0
  615. package/dest/world-state/world_state_revision.d.ts +15 -26
  616. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  617. package/dest/world-state/world_state_revision.js +7 -1
  618. package/package.json +15 -13
  619. package/src/abi/abi.ts +67 -86
  620. package/src/abi/authorization_selector.ts +2 -8
  621. package/src/abi/contract_artifact.ts +11 -6
  622. package/src/abi/encoder.ts +42 -6
  623. package/src/abi/event_selector.ts +2 -8
  624. package/src/abi/function_selector.ts +3 -12
  625. package/src/abi/note_selector.ts +3 -12
  626. package/src/abi/utils.ts +6 -4
  627. package/src/avm/avm.ts +5 -0
  628. package/src/avm/avm_accumulated_data.ts +6 -6
  629. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  630. package/src/avm/message_pack.ts +12 -3
  631. package/src/avm/revert_code.ts +0 -6
  632. package/src/aztec-address/index.ts +15 -12
  633. package/src/block/attestation_info.ts +11 -11
  634. package/src/block/block_data.ts +3 -4
  635. package/src/block/block_hash.ts +21 -14
  636. package/src/block/block_parameter.ts +72 -4
  637. package/src/block/index.ts +0 -1
  638. package/src/block/l2_block_info.ts +8 -6
  639. package/src/block/l2_block_source.ts +205 -145
  640. package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
  641. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  642. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  643. package/src/block/proposal/attestations_and_signers.ts +32 -17
  644. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  645. package/src/checkpoint/checkpoint.ts +11 -1
  646. package/src/checkpoint/checkpoint_data.ts +44 -4
  647. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  648. package/src/checkpoint/digest.ts +28 -0
  649. package/src/checkpoint/index.ts +3 -0
  650. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  651. package/src/config/chain-config.ts +13 -16
  652. package/src/config/sequencer-config.ts +37 -6
  653. package/src/contract/complete_address.ts +7 -3
  654. package/src/contract/contract_address.ts +7 -7
  655. package/src/contract/contract_class_id.ts +2 -2
  656. package/src/contract/contract_instance.ts +11 -2
  657. package/src/contract/index.ts +0 -2
  658. package/src/contract/interfaces/contract_class.ts +2 -82
  659. package/src/contract/interfaces/contract_instance.ts +6 -2
  660. package/src/contract/private_function.ts +3 -1
  661. package/src/database-version/version_manager.ts +17 -0
  662. package/src/epoch-helpers/index.ts +5 -0
  663. package/src/file-store/factory.ts +13 -4
  664. package/src/file-store/http.ts +29 -10
  665. package/src/file-store/index.ts +1 -0
  666. package/src/gas/README.md +31 -0
  667. package/src/gas/fee_math.ts +120 -0
  668. package/src/gas/gas.ts +8 -3
  669. package/src/gas/gas_fees.ts +26 -13
  670. package/src/gas/gas_settings.ts +8 -3
  671. package/src/gas/index.ts +1 -0
  672. package/src/ha-signing/config.ts +152 -0
  673. package/src/ha-signing/index.ts +29 -0
  674. package/src/ha-signing/local_config.ts +46 -0
  675. package/src/ha-signing/types.ts +126 -0
  676. package/src/hash/hash.ts +29 -2
  677. package/src/interfaces/api_limit.ts +1 -1
  678. package/src/interfaces/archiver.ts +89 -93
  679. package/src/interfaces/aztec-node-admin.ts +35 -20
  680. package/src/interfaces/aztec-node-debug.ts +1 -1
  681. package/src/interfaces/aztec-node.ts +306 -257
  682. package/src/interfaces/block-builder.ts +2 -0
  683. package/src/interfaces/block_response.ts +92 -0
  684. package/src/interfaces/chain_tips.ts +24 -0
  685. package/src/interfaces/checkpoint_parameter.ts +20 -0
  686. package/src/interfaces/checkpoint_response.ts +84 -0
  687. package/src/interfaces/client.ts +6 -1
  688. package/src/interfaces/configs.ts +40 -1
  689. package/src/interfaces/l1_publish_info.ts +40 -0
  690. package/src/interfaces/l2_logs_source.ts +13 -39
  691. package/src/interfaces/merkle_tree_operations.ts +3 -2
  692. package/src/interfaces/p2p-bootstrap.ts +2 -2
  693. package/src/interfaces/p2p.ts +35 -15
  694. package/src/interfaces/private_kernel_prover.ts +88 -0
  695. package/src/interfaces/prover-agent.ts +1 -1
  696. package/src/interfaces/prover-client.ts +2 -5
  697. package/src/interfaces/prover-node.ts +7 -7
  698. package/src/interfaces/proving-job-source.ts +4 -4
  699. package/src/interfaces/proving-job.ts +3 -3
  700. package/src/interfaces/public_storage_override.ts +26 -0
  701. package/src/interfaces/server.ts +5 -0
  702. package/src/interfaces/slasher.ts +17 -10
  703. package/src/interfaces/tx_provider.ts +6 -0
  704. package/src/interfaces/validator.ts +70 -45
  705. package/src/interfaces/world_state.ts +1 -1
  706. package/src/kernel/claimed_length_array.ts +2 -2
  707. package/src/kernel/hints/key_validation_request.ts +18 -16
  708. package/src/kernel/hints/private_kernel_reset_hints.ts +2 -5
  709. package/src/kernel/hints/read_request_hints.ts +3 -3
  710. package/src/kernel/index.ts +4 -0
  711. package/src/kernel/log_hash.ts +29 -9
  712. package/src/kernel/padded_side_effects.ts +3 -3
  713. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  714. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  715. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  716. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  717. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  718. package/src/kernel/private_to_avm_accumulated_data.ts +20 -9
  719. package/src/kernel/private_to_public_accumulated_data.ts +19 -13
  720. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  721. package/src/kernel/private_to_rollup_accumulated_data.ts +13 -8
  722. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  723. package/src/kernel/public_call_request.ts +22 -7
  724. package/src/keys/derivation.ts +21 -9
  725. package/src/keys/public_key.ts +26 -2
  726. package/src/keys/public_keys.ts +124 -110
  727. package/src/kv-store/config.ts +29 -0
  728. package/src/kv-store/index.ts +1 -0
  729. package/src/l1-contracts/index.ts +1 -1
  730. package/src/logs/{extended_directional_app_tagging_secret.ts → app_tagging_secret.ts} +62 -23
  731. package/src/logs/app_tagging_secret_kind.ts +21 -0
  732. package/src/logs/contract_class_log.ts +15 -5
  733. package/src/logs/index.ts +6 -6
  734. package/src/logs/log_cursor.ts +110 -0
  735. package/src/logs/log_result.ts +104 -0
  736. package/src/logs/logs_query.ts +138 -0
  737. package/src/logs/message_context.ts +5 -1
  738. package/src/logs/pre_tag.ts +3 -6
  739. package/src/logs/private_log.ts +10 -4
  740. package/src/logs/public_log.ts +1 -11
  741. package/src/logs/query_all_logs_by_tags.ts +98 -0
  742. package/src/logs/siloed_tag.ts +14 -10
  743. package/src/logs/tag.ts +8 -8
  744. package/src/logs/tagging_index_range.ts +4 -10
  745. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  746. package/src/messaging/index.ts +1 -0
  747. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  748. package/src/messaging/l2_to_l1_membership.ts +108 -19
  749. package/src/messaging/l2_to_l1_message.ts +29 -9
  750. package/src/noir/index.ts +2 -0
  751. package/src/p2p/block_proposal.ts +112 -37
  752. package/src/p2p/checkpoint_attestation.ts +27 -31
  753. package/src/p2p/checkpoint_proposal.ts +129 -74
  754. package/src/p2p/consensus_payload.ts +59 -28
  755. package/src/p2p/gossipable.ts +4 -4
  756. package/src/p2p/signature_utils.ts +110 -25
  757. package/src/p2p/signed_txs.ts +46 -28
  758. package/src/parity/parity_base_private_inputs.ts +10 -4
  759. package/src/parity/parity_public_inputs.ts +9 -2
  760. package/src/proofs/chonk_proof.ts +131 -19
  761. package/src/rollup/base_rollup_hints.ts +2 -2
  762. package/src/rollup/block_headers_hash.ts +11 -2
  763. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  764. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  765. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -2
  766. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  767. package/src/rollup/root_rollup_public_inputs.ts +2 -2
  768. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  769. package/src/schemas/schemas.ts +6 -1
  770. package/src/slashing/helpers.ts +13 -9
  771. package/src/slashing/index.ts +1 -2
  772. package/src/slashing/serialization.ts +1 -81
  773. package/src/slashing/types.ts +24 -49
  774. package/src/slashing/{tally.ts → votes.ts} +1 -1
  775. package/src/stats/stats.ts +4 -0
  776. package/src/tests/factories.ts +102 -110
  777. package/src/tests/mocks.ts +64 -68
  778. package/src/timetable/index.ts +251 -13
  779. package/src/trees/append_only_tree_snapshot.ts +8 -3
  780. package/src/trees/nullifier_leaf.ts +4 -0
  781. package/src/trees/nullifier_membership_witness.ts +2 -12
  782. package/src/tx/block_header.ts +10 -5
  783. package/src/tx/fee_provider.ts +10 -0
  784. package/src/tx/global_variable_builder.ts +2 -3
  785. package/src/tx/global_variables.ts +10 -18
  786. package/src/tx/hashed_values.ts +8 -3
  787. package/src/tx/index.ts +1 -0
  788. package/src/tx/indexed_tx_effect.ts +18 -6
  789. package/src/tx/partial_state_reference.ts +8 -3
  790. package/src/tx/profiling.ts +4 -4
  791. package/src/tx/protocol_contracts.ts +2 -2
  792. package/src/tx/proven_tx.ts +6 -0
  793. package/src/tx/public_call_request_with_calldata.ts +8 -3
  794. package/src/tx/simulated_tx.ts +18 -21
  795. package/src/tx/state_reference.ts +9 -4
  796. package/src/tx/tree_snapshots.ts +9 -4
  797. package/src/tx/tx.ts +43 -24
  798. package/src/tx/tx_constant_data.ts +8 -3
  799. package/src/tx/tx_context.ts +8 -3
  800. package/src/tx/tx_hash.ts +20 -5
  801. package/src/tx/tx_receipt.ts +263 -80
  802. package/src/tx/validator/tx_validator.ts +1 -5
  803. package/src/types/shared.ts +8 -13
  804. package/src/update-checker/dev_version.ts +2 -0
  805. package/src/update-checker/index.ts +1 -0
  806. package/src/update-checker/package_version.ts +10 -23
  807. package/src/validators/schemas.ts +6 -4
  808. package/src/validators/types.ts +21 -2
  809. package/src/versioning/versioning.ts +1 -1
  810. package/src/vks/verification_key.ts +5 -184
  811. package/src/vks/vk_data.ts +1 -1
  812. package/src/world-state/genesis_data.ts +27 -0
  813. package/src/world-state/index.ts +1 -0
  814. package/src/world-state/world_state_revision.ts +9 -1
  815. package/dest/abi/mocked_keys.d.ts +0 -2
  816. package/dest/abi/mocked_keys.d.ts.map +0 -1
  817. package/dest/abi/mocked_keys.js +0 -1
  818. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  819. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  820. package/dest/block/checkpointed_l2_block.js +0 -46
  821. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  822. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  823. package/dest/contract/private_function_membership_proof.js +0 -124
  824. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  825. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  826. package/dest/contract/utility_function_membership_proof.js +0 -87
  827. package/dest/interfaces/get_logs_response.d.ts +0 -97
  828. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  829. package/dest/interfaces/get_logs_response.js +0 -12
  830. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  831. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  832. package/dest/l1-contracts/slash_factory.js +0 -158
  833. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  834. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  835. package/dest/logs/extended_contract_class_log.js +0 -67
  836. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  837. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  838. package/dest/logs/extended_public_log.d.ts +0 -106
  839. package/dest/logs/extended_public_log.d.ts.map +0 -1
  840. package/dest/logs/extended_public_log.js +0 -73
  841. package/dest/logs/log_filter.d.ts +0 -25
  842. package/dest/logs/log_filter.d.ts.map +0 -1
  843. package/dest/logs/log_filter.js +0 -12
  844. package/dest/logs/log_id.d.ts +0 -85
  845. package/dest/logs/log_id.d.ts.map +0 -1
  846. package/dest/logs/log_id.js +0 -94
  847. package/dest/logs/tx_scoped_l2_log.d.ts +0 -51
  848. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  849. package/dest/logs/tx_scoped_l2_log.js +0 -77
  850. package/dest/slashing/empire.d.ts +0 -31
  851. package/dest/slashing/empire.d.ts.map +0 -1
  852. package/dest/slashing/empire.js +0 -87
  853. package/src/abi/mocked_keys.ts +0 -2
  854. package/src/block/checkpointed_l2_block.ts +0 -70
  855. package/src/contract/private_function_membership_proof.ts +0 -167
  856. package/src/contract/utility_function_membership_proof.ts +0 -118
  857. package/src/interfaces/get_logs_response.ts +0 -35
  858. package/src/l1-contracts/slash_factory.ts +0 -180
  859. package/src/logs/extended_contract_class_log.ts +0 -87
  860. package/src/logs/extended_public_log.ts +0 -94
  861. package/src/logs/log_filter.ts +0 -36
  862. package/src/logs/log_id.ts +0 -125
  863. package/src/logs/tx_scoped_l2_log.ts +0 -114
  864. package/src/slashing/empire.ts +0 -104
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "0.0.1-commit.2448fdb",
3
+ "version": "0.0.1-commit.2606882",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -55,6 +55,7 @@
55
55
  "./database-version/version": "./dest/database-version/database_version.js",
56
56
  "./database-version/manager": "./dest/database-version/version_manager.js",
57
57
  "./validators": "./dest/validators/index.js",
58
+ "./ha-signing": "./dest/ha-signing/index.js",
58
59
  "./file-store": "./dest/file-store/index.js",
59
60
  "./snapshots": "./dest/snapshots/index.js",
60
61
  "./update-checker": "./dest/update-checker/index.js",
@@ -62,7 +63,8 @@
62
63
  "./slashing": "./dest/slashing/index.js",
63
64
  "./l1-contracts": "./dest/l1-contracts/index.js",
64
65
  "./world-state": "./dest/world-state/index.js",
65
- "./timetable": "./dest/timetable/index.js"
66
+ "./timetable": "./dest/timetable/index.js",
67
+ "./kv-store": "./dest/kv-store/index.js"
66
68
  },
67
69
  "typedocOptions": {
68
70
  "entryPoints": [
@@ -90,16 +92,15 @@
90
92
  },
91
93
  "dependencies": {
92
94
  "@aws-sdk/client-s3": "^3.892.0",
93
- "@aztec/bb.js": "0.0.1-commit.2448fdb",
94
- "@aztec/blob-lib": "0.0.1-commit.2448fdb",
95
- "@aztec/constants": "0.0.1-commit.2448fdb",
96
- "@aztec/ethereum": "0.0.1-commit.2448fdb",
97
- "@aztec/foundation": "0.0.1-commit.2448fdb",
98
- "@aztec/l1-artifacts": "0.0.1-commit.2448fdb",
99
- "@aztec/noir-noirc_abi": "0.0.1-commit.2448fdb",
100
- "@aztec/validator-ha-signer": "0.0.1-commit.2448fdb",
95
+ "@aztec/bb.js": "0.0.1-commit.2606882",
96
+ "@aztec/blob-lib": "0.0.1-commit.2606882",
97
+ "@aztec/constants": "0.0.1-commit.2606882",
98
+ "@aztec/ethereum": "0.0.1-commit.2606882",
99
+ "@aztec/foundation": "0.0.1-commit.2606882",
100
+ "@aztec/l1-artifacts": "0.0.1-commit.2606882",
101
+ "@aztec/noir-noirc_abi": "0.0.1-commit.2606882",
101
102
  "@google-cloud/storage": "^7.15.0",
102
- "axios": "^1.13.5",
103
+ "axios": "^1.15.1",
103
104
  "json-stringify-deterministic": "1.0.12",
104
105
  "lodash.chunk": "^4.2.0",
105
106
  "lodash.isequal": "^4.5.0",
@@ -109,7 +110,7 @@
109
110
  "pako": "^2.1.0",
110
111
  "tslib": "^2.4.0",
111
112
  "viem": "npm:@aztec/viem@2.38.2",
112
- "zod": "^3.23.8"
113
+ "zod": "^4"
113
114
  },
114
115
  "devDependencies": {
115
116
  "@jest/expect": "^30.0.0",
@@ -128,7 +129,8 @@
128
129
  "jest-mock-extended": "^4.0.0",
129
130
  "prettier": "^3.5.3",
130
131
  "ts-node": "^10.9.1",
131
- "typescript": "^5.3.3"
132
+ "typescript": "^5.3.3",
133
+ "vitest": "^4.0.0"
132
134
  },
133
135
  "files": [
134
136
  "dest",
package/src/abi/abi.ts CHANGED
@@ -6,6 +6,7 @@ import { schemas, zodFor } from '@aztec/foundation/schemas';
6
6
  import { inflate } from 'pako';
7
7
  import { z } from 'zod';
8
8
 
9
+ import { DEV_VERSION } from '../update-checker/dev_version.js';
9
10
  import { FunctionSelector } from './function_selector.js';
10
11
 
11
12
  /** A basic value. */
@@ -221,23 +222,17 @@ export const FunctionDebugMetadataSchema = z.object({
221
222
  }),
222
223
  ),
223
224
  }),
224
- acir_locations: z.record(z.number()),
225
- brillig_locations: z.record(z.record(z.number())),
225
+ acir_locations: z.record(z.string(), z.number()),
226
+ brillig_locations: z.record(z.string(), z.record(z.string(), z.number())),
226
227
  }),
227
- // `function_locations` is required in the static `DebugFileMap` type (noir-types compat), but legacy v4-next
228
- // artifacts were compiled before this field existed — see {@link fillMissingFunctionLocations} for the full
229
- // rationale. The preprocessor injects `[]` for missing entries so parsing succeeds; the cast restores the
230
- // output type since `z.preprocess` widens the schema's input type to `unknown`.
231
- files: z.preprocess(
232
- fillMissingFunctionLocations,
233
- z.record(
234
- z.object({
235
- source: z.string(),
236
- path: z.string(),
237
- function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
238
- }),
239
- ),
240
- ) as z.ZodType<DebugFileMap>,
228
+ files: z.record(
229
+ z.string(),
230
+ z.object({
231
+ source: z.string(),
232
+ path: z.string(),
233
+ function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
234
+ }),
235
+ ),
241
236
  }) satisfies z.ZodType<FunctionDebugMetadata>;
242
237
 
243
238
  /** The artifact entry of a function. */
@@ -339,56 +334,23 @@ export type DebugFileMap = Record<
339
334
  }
340
335
  >;
341
336
 
342
- /**
343
- * Preprocessor for {@link FunctionDebugMetadataSchema} / {@link ContractArtifactSchema} that injects an empty
344
- * `function_locations` array on any file map entry missing it. Invoked via `z.preprocess(...)` before the strict
345
- * object schema runs, so legacy inputs do not fail validation.
346
- *
347
- * Why this exists on v4-next (and not on `next` / v5):
348
- *
349
- * - The Noir submodule on `next` was bumped past nightly-2026-03-19, which added `function_locations` to the
350
- * debug file map in the Noir `@aztec/noir-types` package and to every freshly-compiled artifact's `file_map`
351
- * entries. The matching stdlib change (making `DebugFileMap.function_locations` required) was done in one
352
- * go on `next`, so there `function_locations` is always present both at compile time and at runtime.
353
- *
354
- * - On v4-next we had to cherry-pick the Noir bump (chore: Update Noir to nightly-2026-04-10 (#22393)) without
355
- * re-running the full noir-projects compilation pipeline, so the on-disk contract and protocol-circuit
356
- * artifacts (e.g. `yarn-project/protocol-contracts/artifacts/AuthRegistry.json`) still carry the pre-update
357
- * `file_map` shape with only `source` + `path`. Separately, `ivc-integration` compares our `DebugFileMap`
358
- * against the Noir-types `DebugFileMap`, which *does* require `function_locations`, so we cannot simply make
359
- * our own field optional — that would break the structural compatibility check.
360
- *
361
- * - To satisfy both constraints at once we keep `function_locations` required in the static TypeScript type
362
- * (so `ivc-integration` keeps compiling) but relax the runtime input shape via this preprocessor (so legacy
363
- * artifacts keep parsing). Once all v4-next artifacts get regenerated with the new Noir compiler, this
364
- * helper — and both `z.preprocess(...)` wrappers — can be removed.
365
- */
366
- function fillMissingFunctionLocations(val: unknown): unknown {
367
- if (val && typeof val === 'object') {
368
- for (const entry of Object.values(val as Record<string, unknown>)) {
369
- if (
370
- entry &&
371
- typeof entry === 'object' &&
372
- (entry as { function_locations?: unknown }).function_locations === undefined
373
- ) {
374
- (entry as { function_locations: FunctionLocation[] }).function_locations = [];
375
- }
376
- }
377
- }
378
- return val;
379
- }
380
-
381
337
  /** Type representing a field layout in the storage of a contract. */
382
338
  export type FieldLayout = {
383
339
  /** Slot in which the field is stored. */
384
340
  slot: Fr;
385
341
  };
386
342
 
343
+ /** Placeholder version injected into artifacts compiled before aztecVersion was added. TODO(F-557): Remove. */
344
+ export const ARTIFACT_VERSION_BEFORE_INJECTION = 'FROM_RELEASE_BEFORE_VERSION_INJECTION';
345
+
387
346
  /** Defines artifact of a contract. */
388
347
  export interface ContractArtifact {
389
348
  /** The name of the contract. */
390
349
  name: string;
391
350
 
351
+ /** The version of the Aztec stack that compiled this artifact. */
352
+ aztecVersion: string;
353
+
392
354
  /** The functions of the contract. Includes private and utility functions, plus the public dispatch function. */
393
355
  functions: FunctionArtifact[];
394
356
 
@@ -411,10 +373,11 @@ export interface ContractArtifact {
411
373
  export const ContractArtifactSchema = zodFor<ContractArtifact>()(
412
374
  z.object({
413
375
  name: z.string(),
376
+ aztecVersion: z.string().default(ARTIFACT_VERSION_BEFORE_INJECTION), // TODO(F-557): Remove default.
414
377
  functions: z.array(FunctionArtifactSchema),
415
378
  nonDispatchPublicFunctions: z.array(FunctionAbiSchema),
416
379
  outputs: z.object({
417
- structs: z.record(z.array(AbiTypeSchema)).transform(structs => {
380
+ structs: z.record(z.string(), z.array(AbiTypeSchema)).transform(structs => {
418
381
  for (const [key, value] of Object.entries(structs)) {
419
382
  // We are manually ordering events and functions in the abi by path.
420
383
  // The path ordering is arbitrary, and only needed to ensure deterministic order.
@@ -426,23 +389,16 @@ export const ContractArtifactSchema = zodFor<ContractArtifact>()(
426
389
  }
427
390
  return structs;
428
391
  }),
429
- globals: z.record(z.array(AbiValueSchema)),
392
+ globals: z.record(z.string(), z.array(AbiValueSchema)),
430
393
  }),
431
- storageLayout: z.record(z.object({ slot: schemas.Fr })),
432
- // Legacy v4-next contract artifacts (e.g. `protocol-contracts/artifacts/AuthRegistry.json`) were emitted
433
- // before Noir started including `function_locations` in their `file_map` entries — see
434
- // {@link fillMissingFunctionLocations} for the full rationale. The preprocessor injects `[]` for missing
435
- // entries so parsing succeeds without weakening the static `DebugFileMap` type.
436
- fileMap: z.preprocess(
437
- fillMissingFunctionLocations,
438
- z.record(
439
- z.coerce.number(),
440
- z.object({
441
- source: z.string(),
442
- path: z.string(),
443
- function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
444
- }),
445
- ),
394
+ storageLayout: z.record(z.string(), z.object({ slot: schemas.Fr })),
395
+ fileMap: z.record(
396
+ z.coerce.number(),
397
+ z.object({
398
+ source: z.string(),
399
+ path: z.string(),
400
+ function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
401
+ }),
446
402
  ),
447
403
  }),
448
404
  );
@@ -463,20 +419,10 @@ export async function getFunctionArtifact(
463
419
  artifact: ContractArtifact,
464
420
  functionNameOrSelector: string | FunctionSelector,
465
421
  ): Promise<FunctionArtifactWithContractName> {
466
- let functionArtifact;
467
- if (typeof functionNameOrSelector === 'string') {
468
- functionArtifact = artifact.functions.find(f => f.name === functionNameOrSelector);
469
- } else {
470
- const functionsAndSelectors = await Promise.all(
471
- artifact.functions.map(async fn => ({
472
- fn,
473
- selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters),
474
- })),
475
- );
476
- functionArtifact = functionsAndSelectors.find(fnAndSelector =>
477
- functionNameOrSelector.equals(fnAndSelector.selector),
478
- )?.fn;
479
- }
422
+ const functionArtifact =
423
+ typeof functionNameOrSelector === 'string'
424
+ ? artifact.functions.find(f => f.name === functionNameOrSelector)
425
+ : await findFunctionArtifactBySelector(artifact, functionNameOrSelector);
480
426
  if (!functionArtifact) {
481
427
  throw new Error(`Unknown function ${functionNameOrSelector}`);
482
428
  }
@@ -486,6 +432,40 @@ export async function getFunctionArtifact(
486
432
  return { ...functionArtifact, debug: debugMetadata, contractName: artifact.name };
487
433
  }
488
434
 
435
+ /**
436
+ * Finds the function artifact within `artifact.functions` whose selector matches `selector`.
437
+ * Returns `undefined` if no match is found.
438
+ */
439
+ export async function findFunctionArtifactBySelector(
440
+ artifact: ContractArtifact,
441
+ selector: FunctionSelector,
442
+ ): Promise<FunctionArtifact | undefined> {
443
+ const fnsAndSelectors = await Promise.all(
444
+ artifact.functions.map(async fn => ({
445
+ fn,
446
+ selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters),
447
+ })),
448
+ );
449
+ return fnsAndSelectors.find(({ selector: s }) => s.equals(selector))?.fn;
450
+ }
451
+
452
+ /**
453
+ * Finds the function abi (across both `functions` and `nonDispatchPublicFunctions`) whose selector
454
+ * matches `selector`. Returns `undefined` if no match is found.
455
+ */
456
+ export async function findFunctionAbiBySelector(
457
+ artifact: ContractArtifact,
458
+ selector: FunctionSelector,
459
+ ): Promise<FunctionAbi | undefined> {
460
+ const fnsAndSelectors = await Promise.all(
461
+ getAllFunctionAbis(artifact).map(async fn => ({
462
+ fn,
463
+ selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters),
464
+ })),
465
+ );
466
+ return fnsAndSelectors.find(({ selector: s }) => s.equals(selector))?.fn;
467
+ }
468
+
489
469
  /** Gets all function abis */
490
470
  export function getAllFunctionAbis(artifact: ContractArtifact): FunctionAbi[] {
491
471
  return artifact.functions.map(f => f as FunctionAbi).concat(artifact.nonDispatchPublicFunctions || []);
@@ -604,6 +584,7 @@ export function emptyFunctionArtifact(): FunctionArtifact {
604
584
  export function emptyContractArtifact(): ContractArtifact {
605
585
  return {
606
586
  name: '',
587
+ aztecVersion: DEV_VERSION,
607
588
  functions: [emptyFunctionArtifact()],
608
589
  nonDispatchPublicFunctions: [emptyFunctionAbi()],
609
590
  outputs: {
@@ -7,18 +7,12 @@ import { BufferReader } from '@aztec/foundation/serialize';
7
7
 
8
8
  import { Selector } from './selector.js';
9
9
 
10
- /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
11
-
12
- /** Authorization selector branding */
13
- export interface AuthorizationSelector {
14
- /** Brand. */
15
- _branding: 'AuthorizationSelector';
16
- }
17
-
18
10
  /**
19
11
  * An authorization selector is the first 4 bytes of the hash of an authorization struct signature.
20
12
  */
21
13
  export class AuthorizationSelector extends Selector {
14
+ /** Branding for nominal typing. */
15
+ declare private readonly _branding: 'AuthorizationSelector';
22
16
  /**
23
17
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
24
18
  * @param buffer - Buffer or BufferReader to read from.
@@ -12,6 +12,7 @@ import {
12
12
  import {
13
13
  type ABIParameter,
14
14
  type ABIParameterVisibility,
15
+ ARTIFACT_VERSION_BEFORE_INJECTION,
15
16
  type AbiType,
16
17
  type BasicValue,
17
18
  type ContractArtifact,
@@ -51,6 +52,10 @@ export function contractArtifactFromBuffer(buffer: Buffer): ContractArtifact {
51
52
  */
52
53
  export function loadContractArtifact(input: NoirCompiledContract): ContractArtifact {
53
54
  if (isContractArtifact(input)) {
55
+ // TODO(F-557): Remove this fallback once pre-version artifacts are no longer tested.
56
+ if (!(input as unknown as Record<string, unknown>).aztecVersion) {
57
+ return { ...input, aztecVersion: ARTIFACT_VERSION_BEFORE_INJECTION };
58
+ }
54
59
  return input;
55
60
  }
56
61
  return generateContractArtifact(input);
@@ -276,10 +281,9 @@ function getStorageLayout(input: NoirCompiledContract) {
276
281
  }
277
282
 
278
283
  /**
279
- * Given a Nargo output generates an Aztec-compatible contract artifact.
284
+ * Given a post-processed Nargo output defined as `contract` generates an Aztec-compatible contract artifact.
285
+ *
280
286
  * Does not include public bytecode, apart from the public_dispatch function.
281
- * @param compiled - Noir build output.
282
- * @returns Aztec contract build artifact.
283
287
  */
284
288
  function generateContractArtifact(contract: NoirCompiledContract): ContractArtifact {
285
289
  try {
@@ -288,6 +292,7 @@ function generateContractArtifact(contract: NoirCompiledContract): ContractArtif
288
292
  }
289
293
  return ContractArtifactSchema.parse({
290
294
  name: contract.name,
295
+ aztecVersion: contract.aztec_version,
291
296
  functions: contract.functions.filter(f => retainBytecode(f)).map(f => generateFunctionArtifact(f, contract)),
292
297
  nonDispatchPublicFunctions: contract.functions
293
298
  .filter(f => !retainBytecode(f))
@@ -302,15 +307,15 @@ function generateContractArtifact(contract: NoirCompiledContract): ContractArtif
302
307
  }
303
308
 
304
309
  /**
305
- * Given a Nargo output generates an Aztec-compatible contract artifact.
310
+ * Given a post-processed Nargo output defined as `contract` generates an Aztec-compatible contract artifact.
311
+ *
306
312
  * Retains all public bytecode.
307
- * @param compiled - Noir build output.
308
- * @returns Aztec contract build artifact.
309
313
  */
310
314
  function generateContractArtifactForPublic(contract: NoirCompiledContract): ContractArtifact {
311
315
  try {
312
316
  return ContractArtifactSchema.parse({
313
317
  name: contract.name,
318
+ aztecVersion: contract.aztec_version,
314
319
  functions: contract.functions.map(f => generateFunctionArtifact(f, contract)),
315
320
  nonDispatchPublicFunctions: contract.functions
316
321
  .filter(f => !retainBytecode(f))
@@ -106,13 +106,28 @@ class ArgumentEncoder {
106
106
  this.flattened.push(new Fr(arg ? 1n : 0n));
107
107
  break;
108
108
  case 'array':
109
+ if (!Array.isArray(arg)) {
110
+ throw new Error(`Expected array for '${name ?? 'unnamed'}' but received ${typeof arg}`);
111
+ }
112
+ if (arg.length !== abiType.length) {
113
+ throw new Error(
114
+ `Expected array of length ${abiType.length} for '${name ?? 'unnamed'}' but received length ${arg.length}`,
115
+ );
116
+ }
109
117
  for (let i = 0; i < abiType.length; i += 1) {
110
118
  this.encodeArgument(abiType.type, arg[i], `${name}[${i}]`);
111
119
  }
112
120
  break;
113
121
  case 'string':
122
+ if (typeof arg !== 'string') {
123
+ throw new Error(`Expected string for '${name ?? 'unnamed'}' but received ${typeof arg}`);
124
+ }
125
+ if (arg.length > abiType.length) {
126
+ throw new Error(
127
+ `Expected string of max length ${abiType.length} for '${name ?? 'unnamed'}' but received length ${arg.length}`,
128
+ );
129
+ }
114
130
  for (let i = 0; i < abiType.length; i += 1) {
115
- // If the string is shorter than the defined length, pad it with 0s.
116
131
  const toInsert = i < arg.length ? BigInt((arg as string).charCodeAt(i)) : 0n;
117
132
  this.flattened.push(new Fr(toInsert));
118
133
  }
@@ -157,12 +172,28 @@ class ArgumentEncoder {
157
172
  }
158
173
  case 'integer': {
159
174
  const value = BigInt(arg);
160
- if (abiType.sign === 'signed' && value < 0n) {
161
- // Convert negative values to two's complement representation
162
- const twosComplement = value + (1n << BigInt(abiType.width));
163
- this.flattened.push(new Fr(twosComplement));
164
- } else {
175
+ if (abiType.sign === 'unsigned') {
176
+ const maxValue = (1n << BigInt(abiType.width)) - 1n;
177
+ if (value < 0n || value > maxValue) {
178
+ throw new Error(
179
+ `Value ${value} does not fit in u${abiType.width} for '${name ?? 'unnamed'}' (valid range: 0 to ${maxValue})`,
180
+ );
181
+ }
165
182
  this.flattened.push(new Fr(value));
183
+ } else {
184
+ const minValue = -(1n << BigInt(abiType.width - 1));
185
+ const maxValue = (1n << BigInt(abiType.width - 1)) - 1n;
186
+ if (value < minValue || value > maxValue) {
187
+ throw new Error(
188
+ `Value ${value} does not fit in i${abiType.width} for '${name ?? 'unnamed'}' (valid range: ${minValue} to ${maxValue})`,
189
+ );
190
+ }
191
+ if (value < 0n) {
192
+ const twosComplement = value + (1n << BigInt(abiType.width));
193
+ this.flattened.push(new Fr(twosComplement));
194
+ } else {
195
+ this.flattened.push(new Fr(value));
196
+ }
166
197
  }
167
198
  break;
168
199
  }
@@ -176,6 +207,11 @@ class ArgumentEncoder {
176
207
  * @returns The encoded arguments.
177
208
  */
178
209
  public encode() {
210
+ if (this.args.length !== this.abi.parameters.length) {
211
+ throw new Error(
212
+ `Function '${this.abi.name}' expects ${this.abi.parameters.length} argument(s) but received ${this.args.length}`,
213
+ );
214
+ }
179
215
  for (let i = 0; i < this.abi.parameters.length; i += 1) {
180
216
  const parameterAbi = this.abi.parameters[i];
181
217
  this.encodeArgument(parameterAbi.type, this.args[i], parameterAbi.name);
@@ -7,16 +7,10 @@ import { BufferReader } from '@aztec/foundation/serialize';
7
7
 
8
8
  import { Selector } from './selector.js';
9
9
 
10
- /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
11
-
12
- /** Event selector branding */
13
- export interface EventSelector {
14
- /** Brand. */
15
- _branding: 'EventSelector';
16
- }
17
-
18
10
  /** An event selector is the first 4 bytes of the hash of an event signature. */
19
11
  export class EventSelector extends Selector {
12
+ /** Branding for nominal typing. */
13
+ declare private readonly _branding: 'EventSelector';
20
14
  /**
21
15
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
22
16
  * @param buffer - Buffer or BufferReader to read from.
@@ -3,22 +3,16 @@ import { poseidon2HashBytes } from '@aztec/foundation/crypto/poseidon';
3
3
  import { randomBytes } from '@aztec/foundation/crypto/random';
4
4
  import type { Fr } from '@aztec/foundation/curves/bn254';
5
5
  import { type ZodFor, hexSchemaFor } from '@aztec/foundation/schemas';
6
- import { BufferReader, FieldReader, TypeRegistry } from '@aztec/foundation/serialize';
6
+ import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
7
7
 
8
8
  import type { ABIParameter } from './abi.js';
9
9
  import { decodeFunctionSignature } from './function_signature_decoder.js';
10
10
  import { Selector } from './selector.js';
11
11
 
12
- /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
13
-
14
- /** Function selector branding */
15
- export interface FunctionSelector {
16
- /** Brand. */
17
- _branding: 'FunctionSelector';
18
- }
19
-
20
12
  /** A function selector is the first 4 bytes of the hash of a function signature. */
21
13
  export class FunctionSelector extends Selector {
14
+ /** Branding for nominal typing. */
15
+ declare private readonly _branding: 'FunctionSelector';
22
16
  /**
23
17
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
24
18
  * @param buffer - Buffer or BufferReader to read from.
@@ -127,6 +121,3 @@ export class FunctionSelector extends Selector {
127
121
  return hexSchemaFor(FunctionSelector);
128
122
  }
129
123
  }
130
-
131
- // For deserializing JSON.
132
- TypeRegistry.register('FunctionSelector', FunctionSelector);
@@ -2,23 +2,17 @@ import { toBigIntBE } from '@aztec/foundation/bigint-buffer';
2
2
  import { randomInt } from '@aztec/foundation/crypto/random';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { hexSchemaFor } from '@aztec/foundation/schemas';
5
- import { BufferReader, TypeRegistry } from '@aztec/foundation/serialize';
5
+ import { BufferReader } from '@aztec/foundation/serialize';
6
6
 
7
7
  import { Selector } from './selector.js';
8
8
 
9
- /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
10
-
11
- /** Note selector branding */
12
- export interface NoteSelector {
13
- /** Brand. */
14
- _branding: 'NoteSelector';
15
- }
16
-
17
9
  /**
18
10
  * A note selector is a 7 bit long value that identifies a note type within a contract.
19
11
  * TODO(#10952): Encoding of note type id can be reduced to 7 bits.
20
12
  */
21
13
  export class NoteSelector extends Selector {
14
+ /** Branding for nominal typing. */
15
+ declare private readonly _branding: 'NoteSelector';
22
16
  /**
23
17
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
24
18
  * @param buffer - Buffer or BufferReader to read from.
@@ -73,6 +67,3 @@ export class NoteSelector extends Selector {
73
67
  return hexSchemaFor(NoteSelector);
74
68
  }
75
69
  }
76
-
77
- // For deserializing JSON.
78
- TypeRegistry.register('NoteSelector', NoteSelector);
package/src/abi/utils.ts CHANGED
@@ -58,11 +58,13 @@ export function isPublicKeysStruct(abiType: AbiType) {
58
58
  return (
59
59
  abiType.kind === 'struct' &&
60
60
  abiType.path === 'aztec::protocol_types::public_keys::PublicKeys' &&
61
- abiType.fields.length === 4 &&
62
- abiType.fields[0].name === 'npk_m' &&
61
+ abiType.fields.length === 6 &&
62
+ abiType.fields[0].name === 'npk_m_hash' &&
63
63
  abiType.fields[1].name === 'ivpk_m' &&
64
- abiType.fields[2].name === 'ovpk_m' &&
65
- abiType.fields[3].name === 'tpk_m'
64
+ abiType.fields[2].name === 'ovpk_m_hash' &&
65
+ abiType.fields[3].name === 'tpk_m_hash' &&
66
+ abiType.fields[4].name === 'mspk_m_hash' &&
67
+ abiType.fields[5].name === 'fbpk_m_hash'
66
68
  );
67
69
  }
68
70
 
package/src/avm/avm.ts CHANGED
@@ -130,6 +130,7 @@ export class AvmContractInstanceHint {
130
130
  public readonly currentContractClassId: Fr,
131
131
  public readonly originalContractClassId: Fr,
132
132
  public readonly initializationHash: Fr,
133
+ public readonly immutablesHash: Fr,
133
134
  public readonly publicKeys: PublicKeys,
134
135
  ) {}
135
136
 
@@ -143,6 +144,7 @@ export class AvmContractInstanceHint {
143
144
  currentContractClassId: schemas.Fr,
144
145
  originalContractClassId: schemas.Fr,
145
146
  initializationHash: schemas.Fr,
147
+ immutablesHash: schemas.Fr,
146
148
  publicKeys: PublicKeys.schema,
147
149
  })
148
150
  .transform(
@@ -154,6 +156,7 @@ export class AvmContractInstanceHint {
154
156
  currentContractClassId,
155
157
  originalContractClassId,
156
158
  initializationHash,
159
+ immutablesHash,
157
160
  publicKeys,
158
161
  }) =>
159
162
  new AvmContractInstanceHint(
@@ -164,6 +167,7 @@ export class AvmContractInstanceHint {
164
167
  currentContractClassId,
165
168
  originalContractClassId,
166
169
  initializationHash,
170
+ immutablesHash,
167
171
  publicKeys,
168
172
  ),
169
173
  );
@@ -188,6 +192,7 @@ export class AvmContractInstanceHint {
188
192
  Fr.fromPlainObject(obj.currentContractClassId),
189
193
  Fr.fromPlainObject(obj.originalContractClassId),
190
194
  Fr.fromPlainObject(obj.initializationHash),
195
+ Fr.fromPlainObject(obj.immutablesHash),
191
196
  PublicKeys.fromPlainObject(obj.publicKeys),
192
197
  );
193
198
  }
@@ -88,11 +88,11 @@ export class AvmAccumulatedData {
88
88
  static fromBuffer(buffer: Buffer | BufferReader) {
89
89
  const reader = BufferReader.asReader(buffer);
90
90
  return new this(
91
- reader.readTuple(MAX_NOTE_HASHES_PER_TX, Fr),
92
- reader.readTuple(MAX_NULLIFIERS_PER_TX, Fr),
93
- reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
91
+ reader.readArray(MAX_NOTE_HASHES_PER_TX, Fr),
92
+ reader.readArray(MAX_NULLIFIERS_PER_TX, Fr),
93
+ reader.readArray(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
94
94
  reader.readObject(FlatPublicLogs),
95
- reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
95
+ reader.readArray(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
96
96
  );
97
97
  }
98
98
 
@@ -115,9 +115,9 @@ export class AvmAccumulatedData {
115
115
  return new this(
116
116
  reader.readFieldArray(MAX_NOTE_HASHES_PER_TX),
117
117
  reader.readFieldArray(MAX_NULLIFIERS_PER_TX),
118
- reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
118
+ reader.readArray(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
119
119
  reader.readObject(FlatPublicLogs),
120
- reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
120
+ reader.readArray(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
121
121
  );
122
122
  }
123
123
 
@@ -143,8 +143,8 @@ export class AvmCircuitPublicInputs {
143
143
  reader.readObject(AztecAddress),
144
144
  reader.readObject(Fr),
145
145
  reader.readObject(PublicCallRequestArrayLengths),
146
- reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
147
- reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
146
+ reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
147
+ reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
148
148
  reader.readObject(PublicCallRequest),
149
149
  reader.readObject(PrivateToAvmAccumulatedDataArrayLengths),
150
150
  reader.readObject(PrivateToAvmAccumulatedDataArrayLengths),
@@ -206,8 +206,8 @@ export class AvmCircuitPublicInputs {
206
206
  AztecAddress.fromFields(reader),
207
207
  reader.readField(),
208
208
  PublicCallRequestArrayLengths.fromFields(reader),
209
- reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
210
- reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
209
+ reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
210
+ reader.readArray(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
211
211
  PublicCallRequest.fromFields(reader),
212
212
  PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader),
213
213
  PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader),