@aztec/stdlib 0.0.1-commit.fffb133c → 0.0.1-dev

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 (618) hide show
  1. package/dest/abi/abi.d.ts +64 -85
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +59 -6
  4. package/dest/abi/buffer.d.ts +14 -4
  5. package/dest/abi/buffer.d.ts.map +1 -1
  6. package/dest/abi/buffer.js +25 -4
  7. package/dest/abi/contract_artifact.d.ts +1 -1
  8. package/dest/abi/contract_artifact.d.ts.map +1 -1
  9. package/dest/abi/contract_artifact.js +14 -7
  10. package/dest/abi/decoder.d.ts +6 -45
  11. package/dest/abi/decoder.d.ts.map +1 -1
  12. package/dest/abi/decoder.js +17 -70
  13. package/dest/abi/encoder.d.ts +1 -1
  14. package/dest/abi/encoder.d.ts.map +1 -1
  15. package/dest/abi/encoder.js +64 -7
  16. package/dest/abi/event_metadata_definition.d.ts +3 -1
  17. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  18. package/dest/abi/event_metadata_definition.js +1 -1
  19. package/dest/abi/function_call.d.ts +39 -9
  20. package/dest/abi/function_call.d.ts.map +1 -1
  21. package/dest/abi/function_call.js +20 -3
  22. package/dest/abi/function_selector.js +1 -1
  23. package/dest/abi/function_signature_decoder.d.ts +43 -0
  24. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  25. package/dest/abi/function_signature_decoder.js +66 -0
  26. package/dest/abi/index.d.ts +2 -1
  27. package/dest/abi/index.d.ts.map +1 -1
  28. package/dest/abi/index.js +1 -0
  29. package/dest/abi/selector.d.ts +2 -2
  30. package/dest/abi/selector.d.ts.map +1 -1
  31. package/dest/abi/selector.js +1 -1
  32. package/dest/abi/utils.d.ts +14 -1
  33. package/dest/abi/utils.d.ts.map +1 -1
  34. package/dest/abi/utils.js +15 -0
  35. package/dest/auth_witness/auth_witness.js +3 -3
  36. package/dest/avm/avm.d.ts +300 -300
  37. package/dest/avm/avm_accumulated_data.js +2 -2
  38. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  39. package/dest/avm/avm_proving_request.d.ts +166 -166
  40. package/dest/avm/revert_code.d.ts +9 -4
  41. package/dest/avm/revert_code.d.ts.map +1 -1
  42. package/dest/avm/revert_code.js +16 -21
  43. package/dest/aztec-address/index.d.ts +3 -1
  44. package/dest/aztec-address/index.d.ts.map +1 -1
  45. package/dest/aztec-address/index.js +2 -0
  46. package/dest/block/block_data.d.ts +52 -0
  47. package/dest/block/block_data.d.ts.map +1 -0
  48. package/dest/block/block_data.js +12 -0
  49. package/dest/block/block_hash.d.ts +16 -19
  50. package/dest/block/block_hash.d.ts.map +1 -1
  51. package/dest/block/block_hash.js +21 -34
  52. package/dest/block/block_parameter.d.ts +4 -4
  53. package/dest/block/block_parameter.d.ts.map +1 -1
  54. package/dest/block/block_parameter.js +2 -2
  55. package/dest/block/in_block.d.ts +9 -9
  56. package/dest/block/in_block.d.ts.map +1 -1
  57. package/dest/block/in_block.js +5 -5
  58. package/dest/block/index.d.ts +2 -1
  59. package/dest/block/index.d.ts.map +1 -1
  60. package/dest/block/index.js +1 -0
  61. package/dest/block/l2_block.d.ts +11 -2
  62. package/dest/block/l2_block.d.ts.map +1 -1
  63. package/dest/block/l2_block.js +14 -5
  64. package/dest/block/l2_block_source.d.ts +39 -11
  65. package/dest/block/l2_block_source.d.ts.map +1 -1
  66. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  67. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  68. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  69. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  70. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  71. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +1 -1
  72. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  73. package/dest/block/l2_block_stream/l2_tips_store_base.js +16 -3
  74. package/dest/block/test/l2_tips_store_test_suite.js +1 -1
  75. package/dest/checkpoint/checkpoint.d.ts +22 -7
  76. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  77. package/dest/checkpoint/checkpoint.js +32 -16
  78. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  79. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  80. package/dest/checkpoint/checkpoint_data.js +26 -0
  81. package/dest/checkpoint/index.d.ts +3 -1
  82. package/dest/checkpoint/index.d.ts.map +1 -1
  83. package/dest/checkpoint/index.js +2 -0
  84. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  85. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  86. package/dest/checkpoint/published_checkpoint.js +1 -2
  87. package/dest/checkpoint/validate.d.ts +36 -0
  88. package/dest/checkpoint/validate.d.ts.map +1 -0
  89. package/dest/checkpoint/validate.js +120 -0
  90. package/dest/config/index.d.ts +2 -1
  91. package/dest/config/index.d.ts.map +1 -1
  92. package/dest/config/index.js +1 -0
  93. package/dest/config/sequencer-config.d.ts +10 -0
  94. package/dest/config/sequencer-config.d.ts.map +1 -0
  95. package/dest/config/sequencer-config.js +23 -0
  96. package/dest/contract/contract_address.js +4 -4
  97. package/dest/contract/contract_class.d.ts +2 -3
  98. package/dest/contract/contract_class.d.ts.map +1 -1
  99. package/dest/contract/contract_class_id.d.ts +2 -2
  100. package/dest/contract/contract_class_id.d.ts.map +1 -1
  101. package/dest/contract/contract_class_id.js +6 -5
  102. package/dest/contract/interfaces/node-info.d.ts +3 -1
  103. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  104. package/dest/contract/interfaces/node-info.js +2 -1
  105. package/dest/contract/private_function.js +2 -2
  106. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  107. package/dest/contract/private_function_membership_proof.js +1 -1
  108. package/dest/database-version/database_version.d.ts +58 -0
  109. package/dest/database-version/database_version.d.ts.map +1 -0
  110. package/dest/database-version/database_version.js +69 -0
  111. package/dest/database-version/version_manager.d.ts +2 -50
  112. package/dest/database-version/version_manager.d.ts.map +1 -1
  113. package/dest/database-version/version_manager.js +1 -66
  114. package/dest/epoch-helpers/index.d.ts +15 -1
  115. package/dest/epoch-helpers/index.d.ts.map +1 -1
  116. package/dest/epoch-helpers/index.js +19 -2
  117. package/dest/file-store/local.d.ts +3 -3
  118. package/dest/file-store/local.d.ts.map +1 -1
  119. package/dest/file-store/local.js +13 -4
  120. package/dest/file-store/s3.d.ts +1 -1
  121. package/dest/file-store/s3.d.ts.map +1 -1
  122. package/dest/file-store/s3.js +11 -3
  123. package/dest/gas/gas_fees.d.ts +1 -1
  124. package/dest/gas/gas_fees.d.ts.map +1 -1
  125. package/dest/gas/gas_fees.js +4 -1
  126. package/dest/gas/gas_settings.d.ts +40 -3
  127. package/dest/gas/gas_settings.d.ts.map +1 -1
  128. package/dest/gas/gas_settings.js +50 -6
  129. package/dest/hash/hash.d.ts +29 -1
  130. package/dest/hash/hash.d.ts.map +1 -1
  131. package/dest/hash/hash.js +60 -11
  132. package/dest/hash/map_slot.d.ts +1 -1
  133. package/dest/hash/map_slot.d.ts.map +1 -1
  134. package/dest/hash/map_slot.js +4 -3
  135. package/dest/interfaces/allowed_element.d.ts +26 -20
  136. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  137. package/dest/interfaces/allowed_element.js +8 -8
  138. package/dest/interfaces/archiver.d.ts +1 -1
  139. package/dest/interfaces/archiver.d.ts.map +1 -1
  140. package/dest/interfaces/archiver.js +12 -5
  141. package/dest/interfaces/aztec-node-admin.d.ts +109 -29
  142. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  143. package/dest/interfaces/aztec-node-admin.js +12 -4
  144. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  145. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  146. package/dest/interfaces/aztec-node-debug.js +18 -0
  147. package/dest/interfaces/aztec-node.d.ts +45 -60
  148. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  149. package/dest/interfaces/aztec-node.js +11 -12
  150. package/dest/interfaces/block-builder.d.ts +44 -11
  151. package/dest/interfaces/block-builder.d.ts.map +1 -1
  152. package/dest/interfaces/block-builder.js +16 -2
  153. package/dest/interfaces/client.d.ts +2 -1
  154. package/dest/interfaces/client.d.ts.map +1 -1
  155. package/dest/interfaces/client.js +1 -0
  156. package/dest/interfaces/configs.d.ts +77 -32
  157. package/dest/interfaces/configs.d.ts.map +1 -1
  158. package/dest/interfaces/configs.js +10 -3
  159. package/dest/interfaces/get_logs_response.d.ts +15 -8
  160. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  161. package/dest/interfaces/merkle_tree_operations.d.ts +10 -20
  162. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  163. package/dest/interfaces/p2p.d.ts +4 -9
  164. package/dest/interfaces/p2p.d.ts.map +1 -1
  165. package/dest/interfaces/prover-broker.d.ts +16 -1
  166. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  167. package/dest/interfaces/prover-broker.js +4 -1
  168. package/dest/interfaces/prover-client.d.ts +11 -1
  169. package/dest/interfaces/prover-client.d.ts.map +1 -1
  170. package/dest/interfaces/prover-client.js +12 -1
  171. package/dest/interfaces/proving-job.d.ts +202 -202
  172. package/dest/interfaces/slasher.d.ts +9 -1
  173. package/dest/interfaces/slasher.d.ts.map +1 -1
  174. package/dest/interfaces/slasher.js +2 -0
  175. package/dest/interfaces/validator.d.ts +116 -31
  176. package/dest/interfaces/validator.d.ts.map +1 -1
  177. package/dest/interfaces/validator.js +9 -2
  178. package/dest/interfaces/world_state.d.ts +5 -4
  179. package/dest/interfaces/world_state.d.ts.map +1 -1
  180. package/dest/kernel/claimed_length_array.js +1 -1
  181. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  182. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  183. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  184. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  185. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  186. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  187. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  188. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  189. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  190. package/dest/kernel/hints/index.d.ts +2 -2
  191. package/dest/kernel/hints/index.js +2 -2
  192. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  193. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  194. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  195. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  196. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  197. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  198. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  199. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  200. package/dest/kernel/padded_side_effects.js +1 -1
  201. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  202. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  203. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  204. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  205. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  206. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  207. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  208. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  209. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  210. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +4 -3
  211. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  212. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +11 -7
  213. package/dest/kernel/private_to_avm_accumulated_data.js +2 -2
  214. package/dest/kernel/private_to_public_accumulated_data.js +2 -2
  215. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  216. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  217. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  218. package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
  219. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  220. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  221. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  222. package/dest/kernel/private_validation_requests.d.ts +3 -3
  223. package/dest/kernel/private_validation_requests.js +9 -9
  224. package/dest/keys/derivation.d.ts +3 -3
  225. package/dest/keys/derivation.js +15 -15
  226. package/dest/keys/key_types.d.ts +3 -3
  227. package/dest/keys/key_types.d.ts.map +1 -1
  228. package/dest/keys/public_keys.js +2 -2
  229. package/dest/keys/utils.d.ts +1 -1
  230. package/dest/keys/utils.d.ts.map +1 -1
  231. package/dest/keys/utils.js +8 -4
  232. package/dest/l1-contracts/slash_factory.d.ts +1 -1
  233. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  234. package/dest/l1-contracts/slash_factory.js +1 -0
  235. package/dest/logs/debug_log_store.d.ts +30 -0
  236. package/dest/logs/debug_log_store.d.ts.map +1 -0
  237. package/dest/logs/debug_log_store.js +30 -0
  238. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  239. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  240. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +35 -20
  241. package/dest/logs/extended_public_log.d.ts +13 -7
  242. package/dest/logs/extended_public_log.d.ts.map +1 -1
  243. package/dest/logs/index.d.ts +4 -2
  244. package/dest/logs/index.d.ts.map +1 -1
  245. package/dest/logs/index.js +3 -1
  246. package/dest/logs/log_filter.d.ts +4 -1
  247. package/dest/logs/log_filter.d.ts.map +1 -1
  248. package/dest/logs/log_filter.js +2 -1
  249. package/dest/logs/log_id.d.ts +17 -14
  250. package/dest/logs/log_id.d.ts.map +1 -1
  251. package/dest/logs/log_id.js +20 -17
  252. package/dest/logs/message_context.d.ts +4 -7
  253. package/dest/logs/message_context.d.ts.map +1 -1
  254. package/dest/logs/message_context.js +23 -9
  255. package/dest/logs/pending_tagged_log.d.ts +2 -3
  256. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  257. package/dest/logs/pending_tagged_log.js +2 -2
  258. package/dest/logs/pre_tag.d.ts +16 -11
  259. package/dest/logs/pre_tag.d.ts.map +1 -1
  260. package/dest/logs/pre_tag.js +2 -2
  261. package/dest/logs/private_log.d.ts +2 -2
  262. package/dest/logs/private_log.d.ts.map +1 -1
  263. package/dest/logs/private_log.js +1 -1
  264. package/dest/logs/public_log.d.ts +4 -3
  265. package/dest/logs/public_log.d.ts.map +1 -1
  266. package/dest/logs/public_log.js +9 -2
  267. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  268. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  269. package/dest/logs/shared_secret_derivation.js +15 -9
  270. package/dest/logs/siloed_tag.d.ts +8 -3
  271. package/dest/logs/siloed_tag.d.ts.map +1 -1
  272. package/dest/logs/siloed_tag.js +12 -6
  273. package/dest/logs/tag.d.ts +3 -2
  274. package/dest/logs/tag.d.ts.map +1 -1
  275. package/dest/logs/tag.js +5 -1
  276. package/dest/logs/tagging_index_range.d.ts +40 -0
  277. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  278. package/dest/logs/tagging_index_range.js +8 -0
  279. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  280. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  281. package/dest/logs/tx_scoped_l2_log.js +7 -0
  282. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  283. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  284. package/dest/messaging/l1_to_l2_message.js +11 -13
  285. package/dest/messaging/l2_to_l1_membership.d.ts +34 -8
  286. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  287. package/dest/messaging/l2_to_l1_membership.js +72 -29
  288. package/dest/noir/index.d.ts +5 -3
  289. package/dest/noir/index.d.ts.map +1 -1
  290. package/dest/note/index.d.ts +1 -2
  291. package/dest/note/index.d.ts.map +1 -1
  292. package/dest/note/index.js +0 -1
  293. package/dest/note/note_dao.d.ts +1 -1
  294. package/dest/note/note_dao.d.ts.map +1 -1
  295. package/dest/note/note_dao.js +1 -4
  296. package/dest/p2p/attestation_utils.d.ts +11 -1
  297. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  298. package/dest/p2p/attestation_utils.js +45 -0
  299. package/dest/p2p/block_proposal.d.ts +10 -3
  300. package/dest/p2p/block_proposal.d.ts.map +1 -1
  301. package/dest/p2p/block_proposal.js +1 -3
  302. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  303. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  304. package/dest/p2p/checkpoint_attestation.js +1 -1
  305. package/dest/p2p/checkpoint_proposal.d.ts +26 -12
  306. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  307. package/dest/p2p/checkpoint_proposal.js +29 -37
  308. package/dest/p2p/client_type.d.ts +2 -5
  309. package/dest/p2p/client_type.d.ts.map +1 -1
  310. package/dest/p2p/client_type.js +0 -7
  311. package/dest/p2p/consensus_payload.d.ts +12 -3
  312. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  313. package/dest/p2p/consensus_payload.js +22 -15
  314. package/dest/p2p/constants.d.ts +3 -1
  315. package/dest/p2p/constants.d.ts.map +1 -1
  316. package/dest/p2p/constants.js +1 -0
  317. package/dest/p2p/index.d.ts +1 -2
  318. package/dest/p2p/index.d.ts.map +1 -1
  319. package/dest/p2p/index.js +0 -1
  320. package/dest/p2p/peer_error.d.ts +3 -1
  321. package/dest/p2p/peer_error.d.ts.map +1 -1
  322. package/dest/p2p/peer_error.js +5 -0
  323. package/dest/p2p/topic_type.d.ts +3 -4
  324. package/dest/p2p/topic_type.d.ts.map +1 -1
  325. package/dest/p2p/topic_type.js +7 -24
  326. package/dest/parity/parity_base_private_inputs.js +1 -1
  327. package/dest/proofs/chonk_proof.d.ts +1 -1
  328. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  329. package/dest/proofs/chonk_proof.js +7 -1
  330. package/dest/rollup/base_rollup_hints.js +2 -2
  331. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  332. package/dest/rollup/checkpoint_header.d.ts +2 -2
  333. package/dest/rollup/checkpoint_header.js +2 -2
  334. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
  335. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  336. package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
  337. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
  338. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  339. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  340. package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
  341. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  342. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  343. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  344. package/dest/slashing/empire.d.ts +1 -1
  345. package/dest/slashing/empire.d.ts.map +1 -1
  346. package/dest/slashing/empire.js +2 -0
  347. package/dest/slashing/helpers.d.ts +2 -2
  348. package/dest/slashing/helpers.d.ts.map +1 -1
  349. package/dest/slashing/helpers.js +6 -0
  350. package/dest/slashing/tally.d.ts +8 -2
  351. package/dest/slashing/tally.d.ts.map +1 -1
  352. package/dest/slashing/tally.js +35 -3
  353. package/dest/slashing/types.d.ts +7 -3
  354. package/dest/slashing/types.d.ts.map +1 -1
  355. package/dest/slashing/types.js +13 -1
  356. package/dest/stats/stats.d.ts +1 -3
  357. package/dest/stats/stats.d.ts.map +1 -1
  358. package/dest/tests/factories.d.ts +3 -1
  359. package/dest/tests/factories.d.ts.map +1 -1
  360. package/dest/tests/factories.js +22 -14
  361. package/dest/tests/mocks.d.ts +12 -3
  362. package/dest/tests/mocks.d.ts.map +1 -1
  363. package/dest/tests/mocks.js +48 -40
  364. package/dest/timetable/index.d.ts +37 -0
  365. package/dest/timetable/index.d.ts.map +1 -0
  366. package/dest/timetable/index.js +39 -0
  367. package/dest/trees/public_data_leaf.d.ts +2 -1
  368. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  369. package/dest/trees/public_data_leaf.js +7 -6
  370. package/dest/tx/block_header.d.ts +5 -3
  371. package/dest/tx/block_header.d.ts.map +1 -1
  372. package/dest/tx/block_header.js +8 -4
  373. package/dest/tx/capsule.d.ts +6 -2
  374. package/dest/tx/capsule.d.ts.map +1 -1
  375. package/dest/tx/capsule.js +9 -3
  376. package/dest/tx/global_variables.d.ts +4 -4
  377. package/dest/tx/global_variables.d.ts.map +1 -1
  378. package/dest/tx/in_tx.d.ts +3 -3
  379. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  380. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  381. package/dest/tx/indexed_tx_effect.js +3 -2
  382. package/dest/tx/private_execution_result.d.ts +6 -6
  383. package/dest/tx/private_execution_result.d.ts.map +1 -1
  384. package/dest/tx/private_execution_result.js +6 -6
  385. package/dest/tx/profiling.d.ts +17 -5
  386. package/dest/tx/profiling.d.ts.map +1 -1
  387. package/dest/tx/profiling.js +15 -5
  388. package/dest/tx/protocol_contracts.d.ts +1 -1
  389. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  390. package/dest/tx/protocol_contracts.js +4 -4
  391. package/dest/tx/proven_tx.d.ts +3 -1
  392. package/dest/tx/proven_tx.d.ts.map +1 -1
  393. package/dest/tx/proven_tx.js +6 -0
  394. package/dest/tx/public_simulation_output.d.ts +4 -2
  395. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  396. package/dest/tx/public_simulation_output.js +7 -3
  397. package/dest/tx/simulated_tx.d.ts +71 -77
  398. package/dest/tx/simulated_tx.d.ts.map +1 -1
  399. package/dest/tx/simulated_tx.js +7 -4
  400. package/dest/tx/tx.d.ts +6 -5
  401. package/dest/tx/tx.d.ts.map +1 -1
  402. package/dest/tx/tx.js +18 -6
  403. package/dest/tx/tx_receipt.d.ts +33 -10
  404. package/dest/tx/tx_receipt.d.ts.map +1 -1
  405. package/dest/tx/tx_receipt.js +25 -21
  406. package/dest/tx/tx_request.js +2 -2
  407. package/dest/tx/validator/empty_validator.d.ts +2 -2
  408. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  409. package/dest/tx/validator/error_texts.d.ts +10 -2
  410. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  411. package/dest/tx/validator/error_texts.js +11 -1
  412. package/dest/tx/validator/tx_validator.d.ts +2 -2
  413. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  414. package/dest/update-checker/dev_version.d.ts +3 -0
  415. package/dest/update-checker/dev_version.d.ts.map +1 -0
  416. package/dest/update-checker/dev_version.js +1 -0
  417. package/dest/update-checker/index.d.ts +4 -2
  418. package/dest/update-checker/index.d.ts.map +1 -1
  419. package/dest/update-checker/index.js +3 -1
  420. package/dest/update-checker/package_version.d.ts +6 -0
  421. package/dest/update-checker/package_version.d.ts.map +1 -0
  422. package/dest/update-checker/package_version.js +13 -0
  423. package/dest/update-checker/version_checker.d.ts +25 -0
  424. package/dest/update-checker/version_checker.d.ts.map +1 -0
  425. package/dest/update-checker/version_checker.js +50 -0
  426. package/dest/validators/errors.d.ts +6 -1
  427. package/dest/validators/errors.d.ts.map +1 -1
  428. package/dest/validators/errors.js +7 -0
  429. package/dest/validators/schemas.d.ts +30 -30
  430. package/dest/validators/schemas.d.ts.map +1 -1
  431. package/dest/validators/schemas.js +4 -3
  432. package/dest/validators/types.d.ts +3 -3
  433. package/dest/validators/types.d.ts.map +1 -1
  434. package/dest/versioning/versioning.d.ts +4 -2
  435. package/dest/versioning/versioning.d.ts.map +1 -1
  436. package/dest/versioning/versioning.js +4 -1
  437. package/dest/vks/vk_data.js +1 -1
  438. package/package.json +27 -14
  439. package/src/abi/abi.ts +87 -2
  440. package/src/abi/buffer.ts +25 -4
  441. package/src/abi/contract_artifact.ts +11 -6
  442. package/src/abi/decoder.ts +36 -82
  443. package/src/abi/encoder.ts +85 -6
  444. package/src/abi/event_metadata_definition.ts +2 -0
  445. package/src/abi/function_call.ts +25 -3
  446. package/src/abi/function_selector.ts +1 -1
  447. package/src/abi/function_signature_decoder.ts +77 -0
  448. package/src/abi/index.ts +1 -0
  449. package/src/abi/selector.ts +1 -1
  450. package/src/abi/utils.ts +25 -0
  451. package/src/auth_witness/auth_witness.ts +3 -3
  452. package/src/avm/avm_accumulated_data.ts +6 -6
  453. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  454. package/src/avm/revert_code.ts +26 -25
  455. package/src/aztec-address/index.ts +4 -0
  456. package/src/block/block_data.ts +26 -0
  457. package/src/block/block_hash.ts +25 -50
  458. package/src/block/block_parameter.ts +3 -3
  459. package/src/block/in_block.ts +6 -6
  460. package/src/block/index.ts +1 -0
  461. package/src/block/l2_block.ts +16 -4
  462. package/src/block/l2_block_source.ts +42 -10
  463. package/src/block/l2_block_stream/interfaces.ts +6 -2
  464. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  465. package/src/block/l2_block_stream/l2_tips_store_base.ts +17 -3
  466. package/src/block/test/l2_tips_store_test_suite.ts +1 -1
  467. package/src/checkpoint/checkpoint.ts +43 -16
  468. package/src/checkpoint/checkpoint_data.ts +51 -0
  469. package/src/checkpoint/index.ts +2 -0
  470. package/src/checkpoint/published_checkpoint.ts +3 -1
  471. package/src/checkpoint/validate.ts +230 -0
  472. package/src/config/index.ts +1 -0
  473. package/src/config/sequencer-config.ts +34 -0
  474. package/src/contract/contract_address.ts +4 -4
  475. package/src/contract/contract_class.ts +3 -3
  476. package/src/contract/contract_class_id.ts +6 -5
  477. package/src/contract/interfaces/node-info.ts +3 -0
  478. package/src/contract/private_function.ts +2 -2
  479. package/src/contract/private_function_membership_proof.ts +1 -1
  480. package/src/database-version/database_version.ts +87 -0
  481. package/src/database-version/version_manager.ts +1 -77
  482. package/src/epoch-helpers/index.ts +34 -0
  483. package/src/file-store/local.ts +15 -5
  484. package/src/file-store/s3.ts +12 -3
  485. package/src/gas/README.md +123 -0
  486. package/src/gas/gas_fees.ts +7 -1
  487. package/src/gas/gas_settings.ts +65 -12
  488. package/src/hash/hash.ts +61 -11
  489. package/src/hash/map_slot.ts +3 -2
  490. package/src/interfaces/allowed_element.ts +29 -9
  491. package/src/interfaces/archiver.ts +12 -5
  492. package/src/interfaces/aztec-node-admin.ts +26 -2
  493. package/src/interfaces/aztec-node-debug.ts +40 -0
  494. package/src/interfaces/aztec-node.ts +67 -99
  495. package/src/interfaces/block-builder.ts +68 -11
  496. package/src/interfaces/client.ts +1 -0
  497. package/src/interfaces/configs.ts +36 -8
  498. package/src/interfaces/merkle_tree_operations.ts +9 -19
  499. package/src/interfaces/p2p.ts +3 -14
  500. package/src/interfaces/prover-broker.ts +22 -0
  501. package/src/interfaces/prover-client.ts +15 -0
  502. package/src/interfaces/slasher.ts +4 -0
  503. package/src/interfaces/validator.ts +31 -9
  504. package/src/interfaces/world_state.ts +4 -3
  505. package/src/kernel/claimed_length_array.ts +2 -2
  506. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  507. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  508. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  509. package/src/kernel/hints/index.ts +2 -2
  510. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  511. package/src/kernel/hints/private_kernel_reset_hints.ts +5 -2
  512. package/src/kernel/hints/read_request_hints.ts +3 -3
  513. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  514. package/src/kernel/padded_side_effects.ts +3 -3
  515. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  516. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  517. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  518. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +14 -5
  519. package/src/kernel/private_to_avm_accumulated_data.ts +4 -4
  520. package/src/kernel/private_to_public_accumulated_data.ts +10 -10
  521. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  522. package/src/kernel/private_to_rollup_accumulated_data.ts +5 -5
  523. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  524. package/src/kernel/private_validation_requests.ts +8 -8
  525. package/src/keys/derivation.ts +15 -15
  526. package/src/keys/key_types.ts +6 -2
  527. package/src/keys/public_keys.ts +2 -2
  528. package/src/keys/utils.ts +8 -4
  529. package/src/l1-contracts/slash_factory.ts +1 -0
  530. package/src/logs/debug_log_store.ts +54 -0
  531. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +41 -22
  532. package/src/logs/index.ts +3 -1
  533. package/src/logs/log_filter.ts +5 -0
  534. package/src/logs/log_id.ts +22 -18
  535. package/src/logs/message_context.ts +17 -7
  536. package/src/logs/pending_tagged_log.ts +1 -3
  537. package/src/logs/pre_tag.ts +5 -5
  538. package/src/logs/private_log.ts +1 -1
  539. package/src/logs/public_log.ts +15 -3
  540. package/src/logs/shared_secret_derivation.ts +21 -10
  541. package/src/logs/siloed_tag.ts +15 -4
  542. package/src/logs/tag.ts +6 -2
  543. package/src/logs/tagging_index_range.ts +24 -0
  544. package/src/logs/tx_scoped_l2_log.ts +16 -0
  545. package/src/messaging/l1_to_l2_message.ts +12 -9
  546. package/src/messaging/l2_to_l1_membership.ts +101 -36
  547. package/src/noir/index.ts +4 -2
  548. package/src/note/index.ts +0 -1
  549. package/src/note/note_dao.ts +1 -4
  550. package/src/p2p/attestation_utils.ts +56 -0
  551. package/src/p2p/block_proposal.ts +9 -4
  552. package/src/p2p/checkpoint_attestation.ts +6 -1
  553. package/src/p2p/checkpoint_proposal.ts +60 -51
  554. package/src/p2p/client_type.ts +0 -6
  555. package/src/p2p/consensus_payload.ts +25 -12
  556. package/src/p2p/constants.ts +3 -0
  557. package/src/p2p/index.ts +0 -1
  558. package/src/p2p/peer_error.ts +7 -0
  559. package/src/p2p/topic_type.ts +8 -15
  560. package/src/parity/parity_base_private_inputs.ts +1 -1
  561. package/src/proofs/chonk_proof.ts +9 -1
  562. package/src/rollup/base_rollup_hints.ts +2 -2
  563. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  564. package/src/rollup/checkpoint_header.ts +2 -2
  565. package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
  566. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  567. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  568. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  569. package/src/slashing/empire.ts +3 -1
  570. package/src/slashing/helpers.ts +8 -0
  571. package/src/slashing/tally.ts +41 -2
  572. package/src/slashing/types.ts +14 -0
  573. package/src/stats/stats.ts +0 -2
  574. package/src/tests/factories.ts +27 -18
  575. package/src/tests/mocks.ts +65 -33
  576. package/src/timetable/index.ts +66 -0
  577. package/src/trees/public_data_leaf.ts +11 -5
  578. package/src/tx/block_header.ts +13 -7
  579. package/src/tx/capsule.ts +10 -2
  580. package/src/tx/global_variables.ts +3 -3
  581. package/src/tx/indexed_tx_effect.ts +3 -2
  582. package/src/tx/private_execution_result.ts +5 -5
  583. package/src/tx/profiling.ts +14 -5
  584. package/src/tx/protocol_contracts.ts +4 -4
  585. package/src/tx/proven_tx.ts +6 -0
  586. package/src/tx/public_simulation_output.ts +4 -0
  587. package/src/tx/simulated_tx.ts +14 -3
  588. package/src/tx/tx.ts +20 -11
  589. package/src/tx/tx_receipt.ts +32 -20
  590. package/src/tx/tx_request.ts +2 -2
  591. package/src/tx/validator/empty_validator.ts +1 -1
  592. package/src/tx/validator/error_texts.ts +13 -1
  593. package/src/tx/validator/tx_validator.ts +1 -1
  594. package/src/update-checker/dev_version.ts +2 -0
  595. package/src/update-checker/index.ts +3 -1
  596. package/src/update-checker/package_version.ts +17 -0
  597. package/src/update-checker/version_checker.ts +65 -0
  598. package/src/validators/errors.ts +9 -0
  599. package/src/validators/schemas.ts +8 -1
  600. package/src/validators/types.ts +5 -4
  601. package/src/versioning/versioning.ts +4 -1
  602. package/src/vks/vk_data.ts +1 -1
  603. package/dest/database-version/index.d.ts +0 -2
  604. package/dest/database-version/index.d.ts.map +0 -1
  605. package/dest/database-version/index.js +0 -1
  606. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  607. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  608. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  609. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  610. package/dest/note/notes_filter.d.ts +0 -27
  611. package/dest/note/notes_filter.d.ts.map +0 -1
  612. package/dest/note/notes_filter.js +0 -11
  613. package/dest/update-checker/update-checker.d.ts +0 -49
  614. package/dest/update-checker/update-checker.d.ts.map +0 -1
  615. package/dest/update-checker/update-checker.js +0 -130
  616. package/src/database-version/index.ts +0 -1
  617. package/src/note/notes_filter.ts +0 -38
  618. package/src/update-checker/update-checker.ts +0 -166
@@ -36,8 +36,11 @@ _computedKey = inspect.custom;
36
36
  return this.clone();
37
37
  } else if (typeof scalar === 'bigint') {
38
38
  return new GasFees(this.feePerDaGas * scalar, this.feePerL2Gas * scalar);
39
+ } else if (Number.isInteger(scalar)) {
40
+ const s = BigInt(scalar);
41
+ return new GasFees(this.feePerDaGas * s, this.feePerL2Gas * s);
39
42
  } else {
40
- return new GasFees(Number(this.feePerDaGas) * scalar, Number(this.feePerL2Gas) * scalar);
43
+ return new GasFees(BigInt(Math.ceil(Number(this.feePerDaGas) * scalar)), BigInt(Math.ceil(Number(this.feePerL2Gas) * scalar)));
41
44
  }
42
45
  }
43
46
  static from(fields) {
@@ -4,6 +4,16 @@ import type { FieldsOf } from '@aztec/foundation/types';
4
4
  import { z } from 'zod';
5
5
  import { Gas } from './gas.js';
6
6
  import { GasFees } from './gas_fees.js';
7
+ /** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */
8
+ export declare const APPROXIMATE_MAX_DA_GAS_PER_BLOCK: number;
9
+ /** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */
10
+ export declare const FALLBACK_TEARDOWN_L2_GAS_LIMIT: number;
11
+ /** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */
12
+ export declare const FALLBACK_TEARDOWN_DA_GAS_LIMIT: number;
13
+ export declare const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = 6540000;
14
+ export declare const GAS_ESTIMATION_L2_GAS_LIMIT: number;
15
+ export declare const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = 786432;
16
+ export declare const GAS_ESTIMATION_DA_GAS_LIMIT: number;
7
17
  /** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */
8
18
  export declare class GasSettings {
9
19
  readonly gasLimits: Gas;
@@ -124,8 +134,35 @@ export declare class GasSettings {
124
134
  getFeeLimit(): Fr;
125
135
  /** Zero-value gas settings. */
126
136
  static empty(): GasSettings;
127
- /** Default gas settings to use when user has not provided them. Requires explicit max fees per gas. */
128
- static default(overrides: {
137
+ /**
138
+ * Fills in gas limits high enough for transactions to be included in most cases.
139
+ * gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
140
+ * from gasLimits during private execution (see gas_meter.nr), the effective gas available
141
+ * for app logic will be gasLimits - teardownGasLimits - privateOverhead.
142
+ * The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
143
+ * since using the maximum per checkpoint would cause nodes to reject transactions.
144
+ * These values won't work if:
145
+ * - Teardown consumes more than the arbitrarily assigned fallback limits
146
+ * - The rest of the transaction consumes more than the remaining gas after teardown
147
+ * - The DA gas limit is too low for the transaction, while still within the checkpoint limit
148
+ */
149
+ static fallback(overrides: {
150
+ gasLimits?: Gas;
151
+ teardownGasLimits?: Gas;
152
+ maxFeesPerGas: GasFees;
153
+ maxPriorityFeesPerGas?: GasFees;
154
+ }): GasSettings;
155
+ /**
156
+ * Gas settings for simulation/estimation only.
157
+ * Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
158
+ * the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
159
+ * To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
160
+ * teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
161
+ * processable amount remains available for each phase independently. To be used in conjunction
162
+ * with skipTxValidation: true during public simulation, or the node would reject the transaction
163
+ * outright due to gas limits being above protocol max.
164
+ */
165
+ static forEstimation(overrides: {
129
166
  gasLimits?: Gas;
130
167
  teardownGasLimits?: Gas;
131
168
  maxFeesPerGas: GasFees;
@@ -139,4 +176,4 @@ export declare class GasSettings {
139
176
  toFields(): Fr[];
140
177
  static getFields(fields: FieldsOf<GasSettings>): readonly [Gas, Gas, GasFees, GasFees];
141
178
  }
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX3NldHRpbmdzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FzL2dhc19zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsR0FBRyxFQUFpQixNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hDLG1HQUFtRztBQUNuRyxxQkFBYSxXQUFXO2FBRUosU0FBUyxFQUFFLEdBQUc7YUFDZCxpQkFBaUIsRUFBRSxHQUFHO2FBQ3RCLGFBQWEsRUFBRSxPQUFPO2FBQ3RCLHFCQUFxQixFQUFFLE9BQU87SUFKaEQsWUFDa0IsU0FBUyxFQUFFLEdBQUcsRUFDZCxpQkFBaUIsRUFBRSxHQUFHLEVBQ3RCLGFBQWEsRUFBRSxPQUFPLEVBQ3RCLHFCQUFxQixFQUFFLE9BQU8sRUFDNUM7SUFHSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FTaEI7SUFFRCxPQUFPLElBQUksTUFBTSxDQUVoQjtJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2hCLFNBQVMsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLGFBQWEsRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMscUJBQXFCLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQzFDLGVBT0E7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsV0FBVyxDQVU1QztJQUVELEtBQUssZ0JBT0o7SUFFRCxtRkFBbUY7SUFDbkYsV0FBVyxPQUtWO0lBRUQsK0JBQStCO0lBQy9CLE1BQU0sQ0FBQyxLQUFLLGdCQUVYO0lBRUQsdUdBQXVHO0lBQ3ZHLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNoQixpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUN4QixhQUFhLEVBQUUsT0FBTyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0tBQ2pDLGVBVUE7SUFFRCxPQUFPLFlBT047SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsV0FPeEI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FRNUQ7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFdBQVcsQ0FRekQ7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHlDQUU3QztDQUNGIn0=
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX3NldHRpbmdzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FzL2dhc19zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsR0FBRyxFQUFpQixNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhDLHFIQUFtSDtBQUNuSCxlQUFPLE1BQU0sZ0NBQWdDLFFBQXdELENBQUM7QUFDdEcscUZBQW1GO0FBQ25GLGVBQU8sTUFBTSw4QkFBOEIsUUFBeUMsQ0FBQztBQUNyRixxRkFBbUY7QUFDbkYsZUFBTyxNQUFNLDhCQUE4QixRQUFtRCxDQUFDO0FBSy9GLGVBQU8sTUFBTSxvQ0FBb0MsVUFBeUIsQ0FBQztBQUMzRSxlQUFPLE1BQU0sMkJBQTJCLFFBQWdFLENBQUM7QUFDekcsZUFBTyxNQUFNLG9DQUFvQyxTQUF3QyxDQUFDO0FBQzFGLGVBQU8sTUFBTSwyQkFBMkIsUUFBK0UsQ0FBQztBQUd4SCxtR0FBbUc7QUFDbkcscUJBQWEsV0FBVzthQUVKLFNBQVMsRUFBRSxHQUFHO2FBQ2QsaUJBQWlCLEVBQUUsR0FBRzthQUN0QixhQUFhLEVBQUUsT0FBTzthQUN0QixxQkFBcUIsRUFBRSxPQUFPO0lBSmhELFlBQ2tCLFNBQVMsRUFBRSxHQUFHLEVBQ2QsaUJBQWlCLEVBQUUsR0FBRyxFQUN0QixhQUFhLEVBQUUsT0FBTyxFQUN0QixxQkFBcUIsRUFBRSxPQUFPLEVBQzVDO0lBR0osTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BU2hCO0lBRUQsT0FBTyxJQUFJLE1BQU0sQ0FFaEI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNoQixTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxhQUFhLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLHFCQUFxQixFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUMxQyxlQU9BO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFdBQVcsQ0FVNUM7SUFFRCxLQUFLLGdCQU9KO0lBRUQsbUZBQW1GO0lBQ25GLFdBQVcsT0FLVjtJQUVELCtCQUErQjtJQUMvQixNQUFNLENBQUMsS0FBSyxnQkFFWDtJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7UUFDekIsU0FBUyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ2hCLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ3hCLGFBQWEsRUFBRSxPQUFPLENBQUM7UUFDdkIscUJBQXFCLENBQUMsRUFBRSxPQUFPLENBQUM7S0FDakMsZUFhQTtJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO1FBQzlCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNoQixpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUN4QixhQUFhLEVBQUUsT0FBTyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0tBQ2pDLGVBYUE7SUFFRCxPQUFPLFlBT047SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsV0FPeEI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FRNUQ7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFdBQVcsQ0FRekQ7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHlDQUU3QztDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,mGAAmG;AACnG,qBAAa,WAAW;aAEJ,SAAS,EAAE,GAAG;aACd,iBAAiB,EAAE,GAAG;aACtB,aAAa,EAAE,OAAO;aACtB,qBAAqB,EAAE,OAAO;IAJhD,YACkB,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,GAAG,EACtB,aAAa,EAAE,OAAO,EACtB,qBAAqB,EAAE,OAAO,EAC5C;IAGJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QAChB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC1C,eAOA;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAU5C;IAED,KAAK,gBAOJ;IAED,mFAAmF;IACnF,WAAW,OAKV;IAED,+BAA+B;IAC/B,MAAM,CAAC,KAAK,gBAEX;IAED,uGAAuG;IACvG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE;QACxB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAUA;IAED,OAAO,YAON;IAED,MAAM,CAAC,KAAK,EAAE,WAAW,WAOxB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAQ5D;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,WAAW,CAQzD;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,yCAE7C;CACF"}
1
+ {"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,qHAAmH;AACnH,eAAO,MAAM,gCAAgC,QAAwD,CAAC;AACtG,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAyC,CAAC;AACrF,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAmD,CAAC;AAK/F,eAAO,MAAM,oCAAoC,UAAyB,CAAC;AAC3E,eAAO,MAAM,2BAA2B,QAAgE,CAAC;AACzG,eAAO,MAAM,oCAAoC,SAAwC,CAAC;AAC1F,eAAO,MAAM,2BAA2B,QAA+E,CAAC;AAGxH,mGAAmG;AACnG,qBAAa,WAAW;aAEJ,SAAS,EAAE,GAAG;aACd,iBAAiB,EAAE,GAAG;aACtB,aAAa,EAAE,OAAO;aACtB,qBAAqB,EAAE,OAAO;IAJhD,YACkB,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,GAAG,EACtB,aAAa,EAAE,OAAO,EACtB,qBAAqB,EAAE,OAAO,EAC5C;IAGJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QAChB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC1C,eAOA;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAU5C;IAED,KAAK,gBAOJ;IAED,mFAAmF;IACnF,WAAW,OAKV;IAED,+BAA+B;IAC/B,MAAM,CAAC,KAAK,gBAEX;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;QACzB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE;QAC9B,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED,OAAO,YAON;IAED,MAAM,CAAC,KAAK,EAAE,WAAW,WAOxB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAQ5D;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,WAAW,CAQzD;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,yCAE7C;CACF"}
@@ -1,9 +1,19 @@
1
- import { DEFAULT_DA_GAS_LIMIT, DEFAULT_L2_GAS_LIMIT, DEFAULT_TEARDOWN_DA_GAS_LIMIT, DEFAULT_TEARDOWN_L2_GAS_LIMIT, GAS_SETTINGS_LENGTH } from '@aztec/constants';
1
+ import { GAS_SETTINGS_LENGTH, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
4
4
  import { z } from 'zod';
5
5
  import { Gas, GasDimensions } from './gas.js';
6
6
  import { GasFees } from './gas_fees.js';
7
+ /** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */ export const APPROXIMATE_MAX_DA_GAS_PER_BLOCK = Math.floor(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT / 4);
8
+ /** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_L2_GAS_LIMIT = Math.floor(MAX_PROCESSABLE_L2_GAS / 8);
9
+ /** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_DA_GAS_LIMIT = Math.floor(APPROXIMATE_MAX_DA_GAS_PER_BLOCK / 2);
10
+ // For gas estimation, we use intentionally high limits above what the network can process,
11
+ // so the simulation runs without hitting gas caps. Since teardown gas is counted towards total,
12
+ // the total estimation limit is teardown + max processable.
13
+ export const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = MAX_PROCESSABLE_L2_GAS;
14
+ export const GAS_ESTIMATION_L2_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT + MAX_PROCESSABLE_L2_GAS;
15
+ export const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
16
+ export const GAS_ESTIMATION_DA_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT + MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
7
17
  // docs:start:gas_settings_vars
8
18
  /** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */ export class GasSettings {
9
19
  gasLimits;
@@ -52,15 +62,49 @@ import { GasFees } from './gas_fees.js';
52
62
  /** Zero-value gas settings. */ static empty() {
53
63
  return new GasSettings(Gas.empty(), Gas.empty(), GasFees.empty(), GasFees.empty());
54
64
  }
55
- /** Default gas settings to use when user has not provided them. Requires explicit max fees per gas. */ static default(overrides) {
65
+ /**
66
+ * Fills in gas limits high enough for transactions to be included in most cases.
67
+ * gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
68
+ * from gasLimits during private execution (see gas_meter.nr), the effective gas available
69
+ * for app logic will be gasLimits - teardownGasLimits - privateOverhead.
70
+ * The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
71
+ * since using the maximum per checkpoint would cause nodes to reject transactions.
72
+ * These values won't work if:
73
+ * - Teardown consumes more than the arbitrarily assigned fallback limits
74
+ * - The rest of the transaction consumes more than the remaining gas after teardown
75
+ * - The DA gas limit is too low for the transaction, while still within the checkpoint limit
76
+ */ static fallback(overrides) {
77
+ return GasSettings.from({
78
+ gasLimits: overrides.gasLimits ?? {
79
+ l2Gas: MAX_PROCESSABLE_L2_GAS,
80
+ daGas: APPROXIMATE_MAX_DA_GAS_PER_BLOCK
81
+ },
82
+ teardownGasLimits: overrides.teardownGasLimits ?? {
83
+ l2Gas: FALLBACK_TEARDOWN_L2_GAS_LIMIT,
84
+ daGas: FALLBACK_TEARDOWN_DA_GAS_LIMIT
85
+ },
86
+ maxFeesPerGas: overrides.maxFeesPerGas,
87
+ maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
88
+ });
89
+ }
90
+ /**
91
+ * Gas settings for simulation/estimation only.
92
+ * Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
93
+ * the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
94
+ * To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
95
+ * teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
96
+ * processable amount remains available for each phase independently. To be used in conjunction
97
+ * with skipTxValidation: true during public simulation, or the node would reject the transaction
98
+ * outright due to gas limits being above protocol max.
99
+ */ static forEstimation(overrides) {
56
100
  return GasSettings.from({
57
101
  gasLimits: overrides.gasLimits ?? {
58
- l2Gas: DEFAULT_L2_GAS_LIMIT,
59
- daGas: DEFAULT_DA_GAS_LIMIT
102
+ l2Gas: GAS_ESTIMATION_L2_GAS_LIMIT,
103
+ daGas: GAS_ESTIMATION_DA_GAS_LIMIT
60
104
  },
61
105
  teardownGasLimits: overrides.teardownGasLimits ?? {
62
- l2Gas: DEFAULT_TEARDOWN_L2_GAS_LIMIT,
63
- daGas: DEFAULT_TEARDOWN_DA_GAS_LIMIT
106
+ l2Gas: GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT,
107
+ daGas: GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT
64
108
  },
65
109
  maxFeesPerGas: overrides.maxFeesPerGas,
66
110
  maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
@@ -1,3 +1,4 @@
1
+ import { DomainSeparator } from '@aztec/constants';
1
2
  import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import type { EthAddress } from '@aztec/foundation/eth-address';
3
4
  import { AztecAddress } from '../aztec-address/index.js';
@@ -37,6 +38,21 @@ export declare function computeUniqueNoteHash(noteNonce: Fr, siloedNoteHash: Fr)
37
38
  * @returns A siloed nullifier.
38
39
  */
39
40
  export declare function siloNullifier(contract: AztecAddress, innerNullifier: Fr): Promise<Fr>;
41
+ /**
42
+ * Computes the siloed private initialization nullifier for a contract, given its address and initialization hash.
43
+ * @param contract - The contract address.
44
+ * @param initializationHash - The contract's initialization hash.
45
+ * @returns The siloed private initialization nullifier.
46
+ */
47
+ export declare function computeSiloedPrivateInitializationNullifier(contract: AztecAddress, initializationHash: Fr): Promise<Fr>;
48
+ /**
49
+ * Computes the siloed public initialization nullifier for a contract. Not all contracts emit this nullifier: it is only
50
+ * emitted when the contract has public functions that perform initialization checks (i.e. external public functions that
51
+ * are not `#[noinitcheck]` or `#[only_self]`).
52
+ * @param contract - The contract address.
53
+ * @returns The siloed public initialization nullifier.
54
+ */
55
+ export declare function computeSiloedPublicInitializationNullifier(contract: AztecAddress): Promise<Fr>;
40
56
  /**
41
57
  * Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
42
58
  * @param txRequestHash - The hash of the initial tx request.
@@ -45,6 +61,18 @@ export declare function siloNullifier(contract: AztecAddress, innerNullifier: Fr
45
61
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
46
62
  */
47
63
  export declare function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr>;
64
+ /** Domain-separates a raw log tag with the given domain separator. */
65
+ export declare function computeLogTag(rawTag: number | bigint | boolean | Fr | Buffer, domSep: DomainSeparator): Promise<Fr>;
66
+ /**
67
+ * Computes the commitment of a private event from its preimage.
68
+ * @param randomness - Random value emitted alongside the event to prevent preimage brute-forcing.
69
+ * @param eventSelector - Event selector as an Fr.
70
+ * @param content - Serialized event content.
71
+ *
72
+ * @dev Must match the implementation in aztec-nr/aztec/src/event/event_interface.nr > compute_private_serialized_event_commitment
73
+ */
74
+ export declare function computePrivateEventCommitment(randomness: Fr, eventSelector: Fr, content: Fr[]): Promise<Fr>;
75
+ export declare function computeSiloedPrivateLogFirstField(contract: AztecAddress, field: Fr): Promise<Fr>;
48
76
  /**
49
77
  * Computes a public data tree value ready for insertion.
50
78
  * @param value - Raw public data tree value to hash into a tree-insertion-ready value.
@@ -92,4 +120,4 @@ export declare function computeL2ToL1MessageHash({ l2Sender, l1Recipient, conten
92
120
  rollupVersion: Fr;
93
121
  chainId: Fr;
94
122
  }): Fr;
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpEOzs7O0dBSUc7QUFDSCx3QkFBc0IsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRzNEO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0Isb0JBQW9CLENBQUMsYUFBYSxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFMUY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTlFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IscUJBQXFCLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBRSxjQUFjLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFcEY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXJGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLHdCQUF3QixDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV2RTtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUV4RDtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGtCQUFrQixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBTTFEO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQixtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUvRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RDtBQUVELHdCQUFzQiw2QkFBNkIsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsZUFNdEc7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsRUFDdkMsUUFBUSxFQUNSLFdBQVcsRUFDWCxPQUFPLEVBQ1AsYUFBYSxFQUNiLE9BQU8sRUFDUixFQUFFO0lBQ0QsUUFBUSxFQUFFLFlBQVksQ0FBQztJQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDO0lBQ3hCLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDWixhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLE9BQU8sRUFBRSxFQUFFLENBQUM7Q0FDYixNQUVBIn0=
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHbkQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RDs7OztHQUlHO0FBQ0gsd0JBQXNCLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUczRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLG9CQUFvQixDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTFGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUU5RTtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXBGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLGFBQWEsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUVyRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQXNCLDJDQUEyQyxDQUMvRCxRQUFRLEVBQUUsWUFBWSxFQUN0QixrQkFBa0IsRUFBRSxFQUFFLEdBQ3JCLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FNYjtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFzQiwwQ0FBMEMsQ0FBQyxRQUFRLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FHcEc7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsYUFBYSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXZFO0FBRUQsc0VBQXNFO0FBQ3RFLHdCQUFnQixhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxNQUFNLEdBQUcsT0FBTyxHQUFHLEVBQUUsR0FBRyxNQUFNLEVBQUUsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRW5IO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFM0c7QUFFRCx3QkFBZ0IsaUNBQWlDLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFaEc7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQiwwQkFBMEIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FFeEQ7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsNkJBQTZCLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFekc7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQU0xRDtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsbUJBQW1CLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFL0Q7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFekQ7QUFFRCx3QkFBc0IsNkJBQTZCLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLGVBTXRHO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLHdCQUF3QixDQUFDLEVBQ3ZDLFFBQVEsRUFDUixXQUFXLEVBQ1gsT0FBTyxFQUNQLGFBQWEsRUFDYixPQUFPLEVBQ1IsRUFBRTtJQUNELFFBQVEsRUFBRSxZQUFZLENBQUM7SUFDdkIsV0FBVyxFQUFFLFVBQVUsQ0FBQztJQUN4QixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osYUFBYSxFQUFFLEVBQUUsQ0FBQztJQUNsQixPQUFPLEVBQUUsRUFBRSxDQUFDO0NBQ2IsTUFFQSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEvE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzD;AAED,wBAAsB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,eAMtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,aAAa,EAAE,EAAE,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC;CACb,MAEA"}
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErF;AAED;;;;;GAKG;AACH,wBAAsB,2CAA2C,CAC/D,QAAQ,EAAE,YAAY,EACtB,kBAAkB,EAAE,EAAE,GACrB,OAAO,CAAC,EAAE,CAAC,CAMb;AAED;;;;;;GAMG;AACH,wBAAsB,0CAA0C,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAGpG;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEvE;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,EAAE,CAAC,CAEnH;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE3G;AAED,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzD;AAED,wBAAsB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,eAMtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,aAAa,EAAE,EAAE,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC;CACb,MAEA"}
package/dest/hash/hash.js CHANGED
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex, NULL_MSG_SENDER_CONTRACT_ADDRESS } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  import { poseidon2Hash, poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { sha256ToField } from '@aztec/foundation/crypto/sha256';
4
4
  import { Fr } from '@aztec/foundation/curves/bn254';
@@ -20,7 +20,7 @@ import { AztecAddress } from '../aztec-address/index.js';
20
20
  return poseidon2HashWithSeparator([
21
21
  nullifierZero,
22
22
  noteHashIndex
23
- ], GeneratorIndex.NOTE_HASH_NONCE);
23
+ ], DomainSeparator.NOTE_HASH_NONCE);
24
24
  }
25
25
  /**
26
26
  * Computes a siloed note hash, given the contract address and the note hash itself.
@@ -32,7 +32,7 @@ import { AztecAddress } from '../aztec-address/index.js';
32
32
  return poseidon2HashWithSeparator([
33
33
  contract,
34
34
  noteHash
35
- ], GeneratorIndex.SILOED_NOTE_HASH);
35
+ ], DomainSeparator.SILOED_NOTE_HASH);
36
36
  }
37
37
  /**
38
38
  * Computes a unique note hash.
@@ -43,7 +43,7 @@ import { AztecAddress } from '../aztec-address/index.js';
43
43
  return poseidon2HashWithSeparator([
44
44
  noteNonce,
45
45
  siloedNoteHash
46
- ], GeneratorIndex.UNIQUE_NOTE_HASH);
46
+ ], DomainSeparator.UNIQUE_NOTE_HASH);
47
47
  }
48
48
  /**
49
49
  * Computes a siloed nullifier, given the contract address and the inner nullifier.
@@ -55,7 +55,31 @@ import { AztecAddress } from '../aztec-address/index.js';
55
55
  return poseidon2HashWithSeparator([
56
56
  contract,
57
57
  innerNullifier
58
- ], GeneratorIndex.OUTER_NULLIFIER);
58
+ ], DomainSeparator.SILOED_NULLIFIER);
59
+ }
60
+ /**
61
+ * Computes the siloed private initialization nullifier for a contract, given its address and initialization hash.
62
+ * @param contract - The contract address.
63
+ * @param initializationHash - The contract's initialization hash.
64
+ * @returns The siloed private initialization nullifier.
65
+ */ export async function computeSiloedPrivateInitializationNullifier(contract, initializationHash) {
66
+ const innerNullifier = await poseidon2HashWithSeparator([
67
+ contract,
68
+ initializationHash
69
+ ], DomainSeparator.PRIVATE_INITIALIZATION_NULLIFIER);
70
+ return siloNullifier(contract, innerNullifier);
71
+ }
72
+ /**
73
+ * Computes the siloed public initialization nullifier for a contract. Not all contracts emit this nullifier: it is only
74
+ * emitted when the contract has public functions that perform initialization checks (i.e. external public functions that
75
+ * are not `#[noinitcheck]` or `#[only_self]`).
76
+ * @param contract - The contract address.
77
+ * @returns The siloed public initialization nullifier.
78
+ */ export async function computeSiloedPublicInitializationNullifier(contract) {
79
+ const innerNullifier = await poseidon2HashWithSeparator([
80
+ contract
81
+ ], DomainSeparator.PUBLIC_INITIALIZATION_NULLIFIER);
82
+ return siloNullifier(contract, innerNullifier);
59
83
  }
60
84
  /**
61
85
  * Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
@@ -64,7 +88,32 @@ import { AztecAddress } from '../aztec-address/index.js';
64
88
  *
65
89
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
66
90
  */ export function computeProtocolNullifier(txRequestHash) {
67
- return siloNullifier(AztecAddress.fromBigInt(NULL_MSG_SENDER_CONTRACT_ADDRESS), txRequestHash);
91
+ return siloNullifier(AztecAddress.NULL_MSG_SENDER, txRequestHash);
92
+ }
93
+ /** Domain-separates a raw log tag with the given domain separator. */ export function computeLogTag(rawTag, domSep) {
94
+ return poseidon2HashWithSeparator([
95
+ new Fr(rawTag)
96
+ ], domSep);
97
+ }
98
+ /**
99
+ * Computes the commitment of a private event from its preimage.
100
+ * @param randomness - Random value emitted alongside the event to prevent preimage brute-forcing.
101
+ * @param eventSelector - Event selector as an Fr.
102
+ * @param content - Serialized event content.
103
+ *
104
+ * @dev Must match the implementation in aztec-nr/aztec/src/event/event_interface.nr > compute_private_serialized_event_commitment
105
+ */ export function computePrivateEventCommitment(randomness, eventSelector, content) {
106
+ return poseidon2HashWithSeparator([
107
+ randomness,
108
+ eventSelector,
109
+ ...content
110
+ ], DomainSeparator.EVENT_COMMITMENT);
111
+ }
112
+ export function computeSiloedPrivateLogFirstField(contract, field) {
113
+ return poseidon2HashWithSeparator([
114
+ contract,
115
+ field
116
+ ], DomainSeparator.PRIVATE_LOG_FIRST_FIELD);
68
117
  }
69
118
  /**
70
119
  * Computes a public data tree value ready for insertion.
@@ -84,7 +133,7 @@ import { AztecAddress } from '../aztec-address/index.js';
84
133
  return poseidon2HashWithSeparator([
85
134
  contractAddress,
86
135
  storageSlot
87
- ], GeneratorIndex.PUBLIC_LEAF_INDEX);
136
+ ], DomainSeparator.PUBLIC_LEAF_SLOT);
88
137
  }
89
138
  /**
90
139
  * Computes the hash of a list of arguments.
@@ -95,14 +144,14 @@ import { AztecAddress } from '../aztec-address/index.js';
95
144
  if (args.length === 0) {
96
145
  return Promise.resolve(Fr.ZERO);
97
146
  }
98
- return poseidon2HashWithSeparator(args, GeneratorIndex.FUNCTION_ARGS);
147
+ return poseidon2HashWithSeparator(args, DomainSeparator.FUNCTION_ARGS);
99
148
  }
100
149
  /**
101
150
  * Computes the hash of a public function's calldata.
102
151
  * @param calldata - Calldata to hash.
103
152
  * @returns Hash of the calldata.
104
153
  */ export function computeCalldataHash(calldata) {
105
- return poseidon2HashWithSeparator(calldata, GeneratorIndex.PUBLIC_CALLDATA);
154
+ return poseidon2HashWithSeparator(calldata, DomainSeparator.PUBLIC_CALLDATA);
106
155
  }
107
156
  /**
108
157
  * Computes a hash of a secret.
@@ -112,13 +161,13 @@ import { AztecAddress } from '../aztec-address/index.js';
112
161
  */ export function computeSecretHash(secret) {
113
162
  return poseidon2HashWithSeparator([
114
163
  secret
115
- ], GeneratorIndex.SECRET_HASH);
164
+ ], DomainSeparator.SECRET_HASH);
116
165
  }
117
166
  export async function computeL1ToL2MessageNullifier(contract, messageHash, secret) {
118
167
  const innerMessageNullifier = await poseidon2HashWithSeparator([
119
168
  messageHash,
120
169
  secret
121
- ], GeneratorIndex.MESSAGE_NULLIFIER);
170
+ ], DomainSeparator.MESSAGE_NULLIFIER);
122
171
  return siloNullifier(contract, innerMessageNullifier);
123
172
  }
124
173
  /**
@@ -9,4 +9,4 @@ export declare function deriveStorageSlotInMap(mapSlot: Fr | bigint, key: {
9
9
  /** Convert key to a field. */
10
10
  toField: () => Fr;
11
11
  }): Promise<Fr>;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwX3Nsb3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oYXNoL21hcF9zbG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXpEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLHNCQUFzQixDQUNwQyxPQUFPLEVBQUUsRUFBRSxHQUFHLE1BQU0sRUFDcEIsR0FBRyxFQUFFO0lBQ0gsOEJBQThCO0lBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztDQUNuQixHQUNBLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFYiJ9
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwX3Nsb3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oYXNoL21hcF9zbG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXpEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLHNCQUFzQixDQUNwQyxPQUFPLEVBQUUsRUFBRSxHQUFHLE1BQU0sRUFDcEIsR0FBRyxFQUFFO0lBQ0gsOEJBQThCO0lBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztDQUNuQixHQUNBLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFYiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"map_slot.d.ts","sourceRoot":"","sources":["../../src/hash/map_slot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,EAAE,GAAG,MAAM,EACpB,GAAG,EAAE;IACH,8BAA8B;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,GACA,OAAO,CAAC,EAAE,CAAC,CAEb"}
1
+ {"version":3,"file":"map_slot.d.ts","sourceRoot":"","sources":["../../src/hash/map_slot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,EAAE,GAAG,MAAM,EACpB,GAAG,EAAE;IACH,8BAA8B;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,GACA,OAAO,CAAC,EAAE,CAAC,CAEb"}
@@ -1,12 +1,13 @@
1
- import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
1
+ import { DomainSeparator } from '@aztec/constants';
2
+ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
2
3
  /**
3
4
  * Computes the resulting storage slot for an entry in a map.
4
5
  * @param mapSlot - The slot of the map within state.
5
6
  * @param key - The key of the map.
6
7
  * @returns The slot in the contract storage where the value is stored.
7
8
  */ export function deriveStorageSlotInMap(mapSlot, key) {
8
- return poseidon2Hash([
9
+ return poseidon2HashWithSeparator([
9
10
  mapSlot,
10
11
  key.toField()
11
- ]);
12
+ ], DomainSeparator.PUBLIC_STORAGE_MAP_SLOT);
12
13
  }
@@ -2,51 +2,57 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { z } from 'zod';
3
3
  import type { FunctionSelector } from '../abi/function_selector.js';
4
4
  import type { AztecAddress } from '../aztec-address/index.js';
5
- type AllowedInstance = {
6
- address: AztecAddress;
7
- };
8
5
  type AllowedInstanceFunction = {
9
6
  address: AztecAddress;
10
7
  selector: FunctionSelector;
11
- };
12
- type AllowedClass = {
13
- classId: Fr;
8
+ onlySelf?: boolean;
9
+ rejectNullMsgSender?: boolean;
10
+ calldataLength?: number;
14
11
  };
15
12
  type AllowedClassFunction = {
16
13
  classId: Fr;
17
14
  selector: FunctionSelector;
15
+ onlySelf?: boolean;
16
+ rejectNullMsgSender?: boolean;
17
+ calldataLength?: number;
18
18
  };
19
- export type AllowedElement = AllowedInstance | AllowedInstanceFunction | AllowedClass | AllowedClassFunction;
19
+ export type AllowedElement = AllowedInstanceFunction | AllowedClassFunction;
20
20
  export declare const AllowedElementSchema: z.ZodUnion<[z.ZodObject<{
21
21
  address: import("../schemas/index.js").ZodFor<AztecAddress>;
22
22
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
23
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
24
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
25
+ calldataLength: z.ZodOptional<z.ZodNumber>;
23
26
  }, "strip", z.ZodTypeAny, {
24
27
  address: AztecAddress;
25
28
  selector: FunctionSelector;
29
+ onlySelf?: boolean | undefined;
30
+ rejectNullMsgSender?: boolean | undefined;
31
+ calldataLength?: number | undefined;
26
32
  }, {
27
33
  address?: any;
28
34
  selector?: any;
29
- }>, z.ZodObject<{
30
- address: import("../schemas/index.js").ZodFor<AztecAddress>;
31
- }, "strip", z.ZodTypeAny, {
32
- address: AztecAddress;
33
- }, {
34
- address?: any;
35
+ onlySelf?: boolean | undefined;
36
+ rejectNullMsgSender?: boolean | undefined;
37
+ calldataLength?: number | undefined;
35
38
  }>, z.ZodObject<{
36
39
  classId: import("../schemas/index.js").ZodFor<Fr>;
37
40
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
41
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
42
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
43
+ calldataLength: z.ZodOptional<z.ZodNumber>;
38
44
  }, "strip", z.ZodTypeAny, {
39
45
  classId: Fr;
40
46
  selector: FunctionSelector;
47
+ onlySelf?: boolean | undefined;
48
+ rejectNullMsgSender?: boolean | undefined;
49
+ calldataLength?: number | undefined;
41
50
  }, {
42
51
  classId?: any;
43
52
  selector?: any;
44
- }>, z.ZodObject<{
45
- classId: import("../schemas/index.js").ZodFor<Fr>;
46
- }, "strip", z.ZodTypeAny, {
47
- classId: Fr;
48
- }, {
49
- classId?: any;
53
+ onlySelf?: boolean | undefined;
54
+ rejectNullMsgSender?: boolean | undefined;
55
+ calldataLength?: number | undefined;
50
56
  }>]>;
51
57
  export {};
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssZUFBZSxHQUFHO0lBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQTtDQUFFLENBQUM7QUFDakQsS0FBSyx1QkFBdUIsR0FBRztJQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBQ3JGLEtBQUssWUFBWSxHQUFHO0lBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQTtDQUFFLENBQUM7QUFDcEMsS0FBSyxvQkFBb0IsR0FBRztJQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBRXhFLE1BQU0sTUFBTSxjQUFjLEdBQUcsZUFBZSxHQUFHLHVCQUF1QixHQUFHLFlBQVksR0FBRyxvQkFBb0IsQ0FBQztBQUU3RyxlQUFPLE1BQU0sb0JBQW9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFPaEMsQ0FBQyJ9
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssdUJBQXVCLEdBQUc7SUFDN0IsT0FBTyxFQUFFLFlBQVksQ0FBQztJQUN0QixRQUFRLEVBQUUsZ0JBQWdCLENBQUM7SUFDM0IsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQ25CLG1CQUFtQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzlCLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUN6QixDQUFDO0FBQ0YsS0FBSyxvQkFBb0IsR0FBRztJQUMxQixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osUUFBUSxFQUFFLGdCQUFnQixDQUFDO0lBQzNCLFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNuQixtQkFBbUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUM5QixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDekIsQ0FBQztBQUVGLE1BQU0sTUFBTSxjQUFjLEdBQUcsdUJBQXVCLEdBQUcsb0JBQW9CLENBQUM7QUFFNUUsZUFBTyxNQUFNLG9CQUFvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUJoQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,eAAe,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AACjD,KAAK,uBAAuB,GAAG;IAAE,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACrF,KAAK,YAAY,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAC;AACpC,KAAK,oBAAoB,GAAG;IAAE,OAAO,EAAE,EAAE,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,uBAAuB,GAAG,YAAY,GAAG,oBAAoB,CAAC;AAE7G,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOhC,CAAC"}
1
+ {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,EAAE,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,uBAAuB,GAAG,oBAAoB,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBhC,CAAC"}
@@ -3,16 +3,16 @@ import { schemas, zodFor } from '../schemas/index.js';
3
3
  export const AllowedElementSchema = zodFor()(z.union([
4
4
  z.object({
5
5
  address: schemas.AztecAddress,
6
- selector: schemas.FunctionSelector
7
- }),
8
- z.object({
9
- address: schemas.AztecAddress
6
+ selector: schemas.FunctionSelector,
7
+ onlySelf: z.boolean().optional(),
8
+ rejectNullMsgSender: z.boolean().optional(),
9
+ calldataLength: z.number().optional()
10
10
  }),
11
11
  z.object({
12
12
  classId: schemas.Fr,
13
- selector: schemas.FunctionSelector
14
- }),
15
- z.object({
16
- classId: schemas.Fr
13
+ selector: schemas.FunctionSelector,
14
+ onlySelf: z.boolean().optional(),
15
+ rejectNullMsgSender: z.boolean().optional(),
16
+ calldataLength: z.number().optional()
17
17
  })
18
18
  ]));
@@ -58,4 +58,4 @@ export declare const ArchiverSpecificConfigSchema: z.ZodObject<{
58
58
  }>;
59
59
  export type ArchiverApi = Omit<L2BlockSource & L2LogsSource & ContractDataSource & L1ToL2MessageSource, 'start' | 'stop'>;
60
60
  export declare const ArchiverApiSchema: ApiSchemaFor<ArchiverApi>;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUl4QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFJL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBcUV2RCxDQUFDIn0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQU14QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFLL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBeUV2RCxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAI/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAqEvD,CAAC"}
1
+ {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAK/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAyEvD,CAAC"}
@@ -1,10 +1,13 @@
1
1
  import { BlockNumberSchema, CheckpointNumberSchema, EpochNumberSchema } from '@aztec/foundation/branded-types';
2
2
  import { z } from 'zod';
3
+ import { BlockDataSchema } from '../block/block_data.js';
4
+ import { BlockHash } from '../block/block_hash.js';
3
5
  import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
4
6
  import { L2Block } from '../block/l2_block.js';
5
7
  import { L2TipsSchema } from '../block/l2_block_source.js';
6
8
  import { ValidateCheckpointResultSchema } from '../block/validate_block_result.js';
7
9
  import { Checkpoint } from '../checkpoint/checkpoint.js';
10
+ import { CheckpointDataSchema } from '../checkpoint/checkpoint_data.js';
8
11
  import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
9
12
  import { ContractClassPublicSchema, ContractInstanceWithAddressSchema } from '../contract/index.js';
10
13
  import { L1RollupConstantsSchema } from '../epoch-helpers/index.js';
@@ -34,6 +37,7 @@ export const ArchiverApiSchema = {
34
37
  getBlockNumber: z.function().args().returns(BlockNumberSchema),
35
38
  getProvenBlockNumber: z.function().args().returns(BlockNumberSchema),
36
39
  getCheckpointedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
40
+ getCheckpointNumber: z.function().args().returns(CheckpointNumberSchema),
37
41
  getFinalizedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
38
42
  getBlock: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
39
43
  getBlockHeader: z.function().args(z.union([
@@ -44,18 +48,21 @@ export const ArchiverApiSchema = {
44
48
  getCheckpointedBlocks: z.function().args(BlockNumberSchema, schemas.Integer).returns(z.array(CheckpointedL2Block.schema)),
45
49
  getBlocks: z.function().args(BlockNumberSchema, schemas.Integer).returns(z.array(L2Block.schema)),
46
50
  getCheckpoints: z.function().args(CheckpointNumberSchema, schemas.Integer).returns(z.array(PublishedCheckpoint.schema)),
47
- getCheckpointedBlockByHash: z.function().args(schemas.Fr).returns(CheckpointedL2Block.schema.optional()),
51
+ getCheckpointedBlockByHash: z.function().args(BlockHash.schema).returns(CheckpointedL2Block.schema.optional()),
48
52
  getCheckpointedBlockByArchive: z.function().args(schemas.Fr).returns(CheckpointedL2Block.schema.optional()),
49
- getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
53
+ getBlockHeaderByHash: z.function().args(BlockHash.schema).returns(BlockHeader.schema.optional()),
50
54
  getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
55
+ getBlockData: z.function().args(BlockNumberSchema).returns(BlockDataSchema.optional()),
56
+ getBlockDataByArchive: z.function().args(schemas.Fr).returns(BlockDataSchema.optional()),
51
57
  getL2Block: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
52
- getL2BlockByHash: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
58
+ getL2BlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
53
59
  getL2BlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
54
60
  getTxEffect: z.function().args(TxHash.schema).returns(indexedTxSchema().optional()),
55
61
  getSettledTxReceipt: z.function().args(TxHash.schema).returns(TxReceipt.schema.optional()),
56
- getL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
57
- getL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
62
+ getSyncedL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
63
+ getSyncedL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
58
64
  getCheckpointsForEpoch: z.function().args(EpochNumberSchema).returns(z.array(Checkpoint.schema)),
65
+ getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
59
66
  getCheckpointedBlocksForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointedL2Block.schema)),
60
67
  getBlocksForSlot: z.function().args(schemas.SlotNumber).returns(z.array(L2Block.schema)),
61
68
  getCheckpointedBlockHeadersForEpoch: z.function().args(EpochNumberSchema).returns(z.array(BlockHeader.schema)),