@aztec/stdlib 5.0.0-private.20260318 → 6.0.0-nightly.20260602

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 (887) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +5 -44
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +12 -67
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +32 -6
  18. package/dest/abi/event_selector.d.ts +4 -7
  19. package/dest/abi/event_selector.d.ts.map +1 -1
  20. package/dest/abi/function_call.d.ts +7 -25
  21. package/dest/abi/function_call.d.ts.map +1 -1
  22. package/dest/abi/function_selector.d.ts +3 -6
  23. package/dest/abi/function_selector.d.ts.map +1 -1
  24. package/dest/abi/function_selector.js +2 -4
  25. package/dest/abi/function_signature_decoder.d.ts +43 -0
  26. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  27. package/dest/abi/function_signature_decoder.js +66 -0
  28. package/dest/abi/index.d.ts +2 -1
  29. package/dest/abi/index.d.ts.map +1 -1
  30. package/dest/abi/index.js +1 -0
  31. package/dest/abi/note_selector.d.ts +4 -7
  32. package/dest/abi/note_selector.d.ts.map +1 -1
  33. package/dest/abi/note_selector.js +1 -3
  34. package/dest/abi/selector.d.ts +2 -2
  35. package/dest/abi/selector.d.ts.map +1 -1
  36. package/dest/abi/selector.js +1 -1
  37. package/dest/abi/utils.d.ts +1 -1
  38. package/dest/abi/utils.d.ts.map +1 -1
  39. package/dest/abi/utils.js +1 -1
  40. package/dest/auth_witness/auth_witness.d.ts +2 -2
  41. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  42. package/dest/avm/avm.d.ts +1756 -10463
  43. package/dest/avm/avm.d.ts.map +1 -1
  44. package/dest/avm/avm.js +6 -3
  45. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  46. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  47. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  48. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  49. package/dest/avm/avm_proving_request.d.ts +653 -5446
  50. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  51. package/dest/avm/message_pack.js +12 -3
  52. package/dest/avm/public_data_write.d.ts +6 -12
  53. package/dest/avm/public_data_write.d.ts.map +1 -1
  54. package/dest/avm/revert_code.d.ts +5 -21
  55. package/dest/avm/revert_code.d.ts.map +1 -1
  56. package/dest/avm/revert_code.js +12 -30
  57. package/dest/aztec-address/index.d.ts +8 -8
  58. package/dest/aztec-address/index.d.ts.map +1 -1
  59. package/dest/aztec-address/index.js +9 -6
  60. package/dest/block/attestation_info.d.ts +3 -2
  61. package/dest/block/attestation_info.d.ts.map +1 -1
  62. package/dest/block/attestation_info.js +7 -5
  63. package/dest/block/block_data.d.ts +13 -38
  64. package/dest/block/block_data.d.ts.map +1 -1
  65. package/dest/block/block_data.js +2 -2
  66. package/dest/block/block_hash.d.ts +11 -10
  67. package/dest/block/block_hash.d.ts.map +1 -1
  68. package/dest/block/block_hash.js +10 -9
  69. package/dest/block/block_parameter.d.ts +37 -4
  70. package/dest/block/block_parameter.d.ts.map +1 -1
  71. package/dest/block/block_parameter.js +53 -2
  72. package/dest/block/in_block.d.ts +5 -24
  73. package/dest/block/in_block.d.ts.map +1 -1
  74. package/dest/block/index.d.ts +1 -2
  75. package/dest/block/index.d.ts.map +1 -1
  76. package/dest/block/index.js +0 -1
  77. package/dest/block/l2_block.d.ts +13 -41
  78. package/dest/block/l2_block.d.ts.map +1 -1
  79. package/dest/block/l2_block_info.d.ts +10 -29
  80. package/dest/block/l2_block_info.d.ts.map +1 -1
  81. package/dest/block/l2_block_info.js +6 -5
  82. package/dest/block/l2_block_source.d.ts +199 -352
  83. package/dest/block/l2_block_source.d.ts.map +1 -1
  84. package/dest/block/l2_block_source.js +67 -1
  85. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  86. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  87. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  88. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  89. package/dest/block/l2_block_stream/l2_block_stream.js +44 -17
  90. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  91. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  92. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  93. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  94. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  95. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  96. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  97. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  98. package/dest/block/proposal/attestations_and_signers.js +26 -18
  99. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  100. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  101. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  102. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  103. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  104. package/dest/checkpoint/checkpoint.d.ts +30 -96
  105. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  106. package/dest/checkpoint/checkpoint.js +9 -1
  107. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  108. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  109. package/dest/checkpoint/checkpoint_data.js +12 -0
  110. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  111. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  112. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  113. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  114. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  115. package/dest/checkpoint/digest.d.ts +18 -0
  116. package/dest/checkpoint/digest.d.ts.map +1 -0
  117. package/dest/checkpoint/digest.js +12 -0
  118. package/dest/checkpoint/index.d.ts +4 -1
  119. package/dest/checkpoint/index.d.ts.map +1 -1
  120. package/dest/checkpoint/index.js +3 -0
  121. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  122. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  123. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  124. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  125. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  126. package/dest/checkpoint/validate.js +2 -2
  127. package/dest/config/chain-config.d.ts +4 -9
  128. package/dest/config/chain-config.d.ts.map +1 -1
  129. package/dest/config/chain-config.js +13 -12
  130. package/dest/config/index.d.ts +2 -1
  131. package/dest/config/index.d.ts.map +1 -1
  132. package/dest/config/index.js +1 -0
  133. package/dest/config/pipelining-config.d.ts +15 -0
  134. package/dest/config/pipelining-config.d.ts.map +1 -0
  135. package/dest/config/pipelining-config.js +18 -0
  136. package/dest/config/sequencer-config.d.ts +5 -3
  137. package/dest/config/sequencer-config.d.ts.map +1 -1
  138. package/dest/config/sequencer-config.js +18 -4
  139. package/dest/contract/complete_address.d.ts +3 -2
  140. package/dest/contract/complete_address.d.ts.map +1 -1
  141. package/dest/contract/complete_address.js +6 -2
  142. package/dest/contract/contract_address.d.ts +6 -6
  143. package/dest/contract/contract_address.d.ts.map +1 -1
  144. package/dest/contract/contract_address.js +6 -5
  145. package/dest/contract/contract_class_id.d.ts +2 -2
  146. package/dest/contract/contract_class_id.js +2 -2
  147. package/dest/contract/contract_deployment_data.d.ts +15 -61
  148. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  149. package/dest/contract/contract_instance.d.ts +4 -2
  150. package/dest/contract/contract_instance.d.ts.map +1 -1
  151. package/dest/contract/contract_instance.js +10 -3
  152. package/dest/contract/index.d.ts +1 -3
  153. package/dest/contract/index.d.ts.map +1 -1
  154. package/dest/contract/index.js +0 -2
  155. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  156. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  157. package/dest/contract/interfaces/contract_class.js +1 -28
  158. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  159. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  160. package/dest/contract/interfaces/contract_instance.js +4 -2
  161. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  162. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  163. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  164. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  165. package/dest/contract/private_function.d.ts +1 -1
  166. package/dest/contract/private_function.d.ts.map +1 -1
  167. package/dest/contract/private_function.js +2 -4
  168. package/dest/database-version/database_version.d.ts +5 -11
  169. package/dest/database-version/database_version.d.ts.map +1 -1
  170. package/dest/database-version/version_manager.d.ts +6 -2
  171. package/dest/database-version/version_manager.d.ts.map +1 -1
  172. package/dest/database-version/version_manager.js +12 -1
  173. package/dest/epoch-helpers/index.d.ts +10 -22
  174. package/dest/epoch-helpers/index.d.ts.map +1 -1
  175. package/dest/epoch-helpers/index.js +12 -0
  176. package/dest/file-store/factory.d.ts +4 -3
  177. package/dest/file-store/factory.d.ts.map +1 -1
  178. package/dest/file-store/factory.js +2 -2
  179. package/dest/file-store/http.d.ts +9 -2
  180. package/dest/file-store/http.d.ts.map +1 -1
  181. package/dest/file-store/http.js +20 -9
  182. package/dest/file-store/index.d.ts +2 -1
  183. package/dest/file-store/index.d.ts.map +1 -1
  184. package/dest/gas/fee_math.d.ts +49 -0
  185. package/dest/gas/fee_math.d.ts.map +1 -0
  186. package/dest/gas/fee_math.js +80 -0
  187. package/dest/gas/gas.d.ts +9 -14
  188. package/dest/gas/gas.d.ts.map +1 -1
  189. package/dest/gas/gas.js +6 -3
  190. package/dest/gas/gas_fees.d.ts +13 -14
  191. package/dest/gas/gas_fees.d.ts.map +1 -1
  192. package/dest/gas/gas_fees.js +17 -4
  193. package/dest/gas/gas_settings.d.ts +66 -86
  194. package/dest/gas/gas_settings.d.ts.map +1 -1
  195. package/dest/gas/gas_settings.js +56 -9
  196. package/dest/gas/index.d.ts +2 -1
  197. package/dest/gas/index.d.ts.map +1 -1
  198. package/dest/gas/index.js +1 -0
  199. package/dest/ha-signing/config.d.ts +11 -75
  200. package/dest/ha-signing/config.d.ts.map +1 -1
  201. package/dest/ha-signing/config.js +9 -18
  202. package/dest/ha-signing/index.d.ts +2 -2
  203. package/dest/ha-signing/index.d.ts.map +1 -1
  204. package/dest/ha-signing/index.js +1 -1
  205. package/dest/ha-signing/local_config.d.ts +3 -34
  206. package/dest/ha-signing/local_config.d.ts.map +1 -1
  207. package/dest/ha-signing/local_config.js +2 -2
  208. package/dest/ha-signing/types.d.ts +37 -32
  209. package/dest/ha-signing/types.d.ts.map +1 -1
  210. package/dest/ha-signing/types.js +13 -6
  211. package/dest/hash/hash.d.ts +34 -1
  212. package/dest/hash/hash.d.ts.map +1 -1
  213. package/dest/hash/hash.js +63 -2
  214. package/dest/interfaces/allowed_element.d.ts +4 -28
  215. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  216. package/dest/interfaces/api_limit.d.ts +1 -1
  217. package/dest/interfaces/api_limit.js +1 -1
  218. package/dest/interfaces/archiver.d.ts +22 -32
  219. package/dest/interfaces/archiver.d.ts.map +1 -1
  220. package/dest/interfaces/archiver.js +208 -69
  221. package/dest/interfaces/aztec-node-admin.d.ts +65 -306
  222. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  223. package/dest/interfaces/aztec-node-admin.js +59 -16
  224. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  225. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  226. package/dest/interfaces/aztec-node-debug.js +21 -0
  227. package/dest/interfaces/aztec-node.d.ts +79 -102
  228. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  229. package/dest/interfaces/aztec-node.js +296 -69
  230. package/dest/interfaces/block-builder.d.ts +28 -7
  231. package/dest/interfaces/block-builder.d.ts.map +1 -1
  232. package/dest/interfaces/block-builder.js +1 -4
  233. package/dest/interfaces/block_response.d.ts +90 -0
  234. package/dest/interfaces/block_response.d.ts.map +1 -0
  235. package/dest/interfaces/block_response.js +30 -0
  236. package/dest/interfaces/chain_tips.d.ts +50 -0
  237. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  238. package/dest/interfaces/chain_tips.js +11 -0
  239. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  240. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  241. package/dest/interfaces/checkpoint_parameter.js +18 -0
  242. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  243. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  244. package/dest/interfaces/checkpoint_response.js +26 -0
  245. package/dest/interfaces/client.d.ts +8 -2
  246. package/dest/interfaces/client.d.ts.map +1 -1
  247. package/dest/interfaces/client.js +7 -1
  248. package/dest/interfaces/configs.d.ts +41 -135
  249. package/dest/interfaces/configs.d.ts.map +1 -1
  250. package/dest/interfaces/configs.js +9 -2
  251. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  252. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  253. package/dest/interfaces/l1_publish_info.js +26 -0
  254. package/dest/interfaces/l2_logs_source.d.ts +14 -36
  255. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  256. package/dest/interfaces/l2_logs_source.js +5 -0
  257. package/dest/interfaces/merkle_tree_operations.d.ts +4 -3
  258. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  259. package/dest/interfaces/p2p-bootstrap.js +8 -2
  260. package/dest/interfaces/p2p.d.ts +15 -5
  261. package/dest/interfaces/p2p.d.ts.map +1 -1
  262. package/dest/interfaces/p2p.js +28 -5
  263. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  264. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  265. package/dest/interfaces/prover-agent.d.ts +5 -23
  266. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  267. package/dest/interfaces/prover-agent.js +4 -1
  268. package/dest/interfaces/prover-client.d.ts +6 -27
  269. package/dest/interfaces/prover-client.d.ts.map +1 -1
  270. package/dest/interfaces/prover-client.js +0 -3
  271. package/dest/interfaces/prover-node.js +22 -8
  272. package/dest/interfaces/proving-job-source.js +24 -4
  273. package/dest/interfaces/proving-job.d.ts +742 -5793
  274. package/dest/interfaces/proving-job.d.ts.map +1 -1
  275. package/dest/interfaces/proving-job.js +1 -1
  276. package/dest/interfaces/public_storage_override.d.ts +22 -0
  277. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  278. package/dest/interfaces/public_storage_override.js +7 -0
  279. package/dest/interfaces/server.d.ts +6 -1
  280. package/dest/interfaces/server.d.ts.map +1 -1
  281. package/dest/interfaces/server.js +5 -0
  282. package/dest/interfaces/slasher.d.ts +25 -65
  283. package/dest/interfaces/slasher.d.ts.map +1 -1
  284. package/dest/interfaces/slasher.js +8 -4
  285. package/dest/interfaces/tx_provider.d.ts +6 -1
  286. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  287. package/dest/interfaces/validator.d.ts +48 -248
  288. package/dest/interfaces/validator.d.ts.map +1 -1
  289. package/dest/interfaces/validator.js +5 -1
  290. package/dest/interfaces/world_state.d.ts +2 -2
  291. package/dest/interfaces/world_state.d.ts.map +1 -1
  292. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  293. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  294. package/dest/kernel/hints/key_validation_request.js +20 -18
  295. package/dest/kernel/index.d.ts +5 -1
  296. package/dest/kernel/index.d.ts.map +1 -1
  297. package/dest/kernel/index.js +4 -0
  298. package/dest/kernel/log_hash.d.ts +6 -2
  299. package/dest/kernel/log_hash.d.ts.map +1 -1
  300. package/dest/kernel/log_hash.js +21 -9
  301. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  302. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  303. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  304. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  305. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  306. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  307. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  308. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  309. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  310. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  311. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  312. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  313. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  314. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  315. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  316. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  317. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  318. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  319. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  320. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  321. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  322. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  323. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  324. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  325. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  326. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  327. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  328. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  329. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  330. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  331. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  332. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  333. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  334. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  335. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  336. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  337. package/dest/kernel/public_call_request.d.ts +15 -30
  338. package/dest/kernel/public_call_request.d.ts.map +1 -1
  339. package/dest/kernel/public_call_request.js +16 -7
  340. package/dest/keys/derivation.d.ts +6 -2
  341. package/dest/keys/derivation.d.ts.map +1 -1
  342. package/dest/keys/derivation.js +16 -6
  343. package/dest/keys/public_key.d.ts +22 -3
  344. package/dest/keys/public_key.d.ts.map +1 -1
  345. package/dest/keys/public_key.js +20 -1
  346. package/dest/keys/public_keys.d.ts +55 -82
  347. package/dest/keys/public_keys.d.ts.map +1 -1
  348. package/dest/keys/public_keys.js +102 -74
  349. package/dest/kv-store/config.d.ts +3 -6
  350. package/dest/kv-store/config.d.ts.map +1 -1
  351. package/dest/kv-store/config.js +2 -7
  352. package/dest/l1-contracts/index.d.ts +2 -2
  353. package/dest/l1-contracts/index.d.ts.map +1 -1
  354. package/dest/l1-contracts/index.js +1 -1
  355. package/dest/logs/app_tagging_secret.d.ts +46 -0
  356. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  357. package/dest/logs/app_tagging_secret.js +109 -0
  358. package/dest/logs/app_tagging_secret_kind.d.ts +6 -0
  359. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  360. package/dest/logs/app_tagging_secret_kind.js +4 -0
  361. package/dest/logs/contract_class_log.d.ts +16 -34
  362. package/dest/logs/contract_class_log.d.ts.map +1 -1
  363. package/dest/logs/contract_class_log.js +11 -9
  364. package/dest/logs/index.d.ts +7 -7
  365. package/dest/logs/index.d.ts.map +1 -1
  366. package/dest/logs/index.js +6 -6
  367. package/dest/logs/log_cursor.d.ts +51 -0
  368. package/dest/logs/log_cursor.d.ts.map +1 -0
  369. package/dest/logs/log_cursor.js +82 -0
  370. package/dest/logs/log_result.d.ts +54 -0
  371. package/dest/logs/log_result.d.ts.map +1 -0
  372. package/dest/logs/log_result.js +56 -0
  373. package/dest/logs/logs_query.d.ts +82 -0
  374. package/dest/logs/logs_query.d.ts.map +1 -0
  375. package/dest/logs/logs_query.js +50 -0
  376. package/dest/logs/message_context.d.ts +6 -8
  377. package/dest/logs/message_context.d.ts.map +1 -1
  378. package/dest/logs/message_context.js +27 -9
  379. package/dest/logs/pending_tagged_log.d.ts +2 -3
  380. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  381. package/dest/logs/pending_tagged_log.js +2 -2
  382. package/dest/logs/pre_tag.d.ts +11 -24
  383. package/dest/logs/pre_tag.d.ts.map +1 -1
  384. package/dest/logs/pre_tag.js +2 -2
  385. package/dest/logs/private_log.d.ts +7 -12
  386. package/dest/logs/private_log.d.ts.map +1 -1
  387. package/dest/logs/private_log.js +6 -3
  388. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  389. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  390. package/dest/logs/query_all_logs_by_tags.js +64 -0
  391. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  392. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  393. package/dest/logs/shared_secret_derivation.js +15 -9
  394. package/dest/logs/siloed_tag.d.ts +8 -7
  395. package/dest/logs/siloed_tag.d.ts.map +1 -1
  396. package/dest/logs/siloed_tag.js +13 -3
  397. package/dest/logs/tag.d.ts +5 -6
  398. package/dest/logs/tag.d.ts.map +1 -1
  399. package/dest/logs/tag.js +4 -0
  400. package/dest/logs/tagging_index_range.d.ts +13 -31
  401. package/dest/logs/tagging_index_range.d.ts.map +1 -1
  402. package/dest/logs/tagging_index_range.js +2 -2
  403. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  404. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  405. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  406. package/dest/messaging/index.d.ts +2 -1
  407. package/dest/messaging/index.d.ts.map +1 -1
  408. package/dest/messaging/index.js +1 -0
  409. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  410. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  411. package/dest/messaging/l1_to_l2_message.js +11 -13
  412. package/dest/messaging/l2_to_l1_membership.d.ts +35 -5
  413. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  414. package/dest/messaging/l2_to_l1_membership.js +52 -7
  415. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  416. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  417. package/dest/messaging/l2_to_l1_message.js +21 -12
  418. package/dest/noir/index.d.ts +5 -3
  419. package/dest/noir/index.d.ts.map +1 -1
  420. package/dest/note/note.d.ts +2 -2
  421. package/dest/note/note.d.ts.map +1 -1
  422. package/dest/note/note_dao.d.ts +1 -1
  423. package/dest/note/note_dao.d.ts.map +1 -1
  424. package/dest/note/note_dao.js +1 -4
  425. package/dest/p2p/block_proposal.d.ts +31 -14
  426. package/dest/p2p/block_proposal.d.ts.map +1 -1
  427. package/dest/p2p/block_proposal.js +57 -39
  428. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  429. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  430. package/dest/p2p/checkpoint_attestation.js +23 -24
  431. package/dest/p2p/checkpoint_proposal.d.ts +35 -16
  432. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  433. package/dest/p2p/checkpoint_proposal.js +59 -49
  434. package/dest/p2p/consensus_payload.d.ts +26 -20
  435. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  436. package/dest/p2p/consensus_payload.js +38 -19
  437. package/dest/p2p/gossipable.d.ts +4 -4
  438. package/dest/p2p/gossipable.d.ts.map +1 -1
  439. package/dest/p2p/signature_utils.d.ts +28 -19
  440. package/dest/p2p/signature_utils.d.ts.map +1 -1
  441. package/dest/p2p/signature_utils.js +118 -21
  442. package/dest/p2p/signed_txs.d.ts +15 -13
  443. package/dest/p2p/signed_txs.d.ts.map +1 -1
  444. package/dest/p2p/signed_txs.js +26 -24
  445. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  446. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  447. package/dest/parity/parity_base_private_inputs.js +7 -5
  448. package/dest/parity/parity_public_inputs.d.ts +8 -4
  449. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  450. package/dest/parity/parity_public_inputs.js +6 -3
  451. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  452. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  453. package/dest/proofs/chonk_proof.d.ts +57 -7
  454. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  455. package/dest/proofs/chonk_proof.js +112 -15
  456. package/dest/proofs/recursive_proof.d.ts +2 -2
  457. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  458. package/dest/rollup/block_headers_hash.d.ts +1 -1
  459. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  460. package/dest/rollup/block_headers_hash.js +8 -2
  461. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  462. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  463. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  464. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  465. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  466. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  467. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  468. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  469. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  470. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  471. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  472. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  473. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  474. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  475. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  476. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  477. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  478. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  479. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  480. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  481. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  482. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  483. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  484. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  485. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  486. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  487. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  488. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  489. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  490. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  491. package/dest/schemas/schemas.d.ts +32 -78
  492. package/dest/schemas/schemas.d.ts.map +1 -1
  493. package/dest/schemas/schemas.js +2 -2
  494. package/dest/slashing/helpers.d.ts +2 -2
  495. package/dest/slashing/helpers.d.ts.map +1 -1
  496. package/dest/slashing/helpers.js +10 -7
  497. package/dest/slashing/index.d.ts +2 -3
  498. package/dest/slashing/index.d.ts.map +1 -1
  499. package/dest/slashing/index.js +1 -2
  500. package/dest/slashing/serialization.d.ts +2 -6
  501. package/dest/slashing/serialization.d.ts.map +1 -1
  502. package/dest/slashing/serialization.js +0 -60
  503. package/dest/slashing/types.d.ts +18 -112
  504. package/dest/slashing/types.d.ts.map +1 -1
  505. package/dest/slashing/types.js +16 -24
  506. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  507. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  508. package/dest/slashing/{tally.js → votes.js} +1 -1
  509. package/dest/snapshots/types.d.ts +15 -78
  510. package/dest/snapshots/types.d.ts.map +1 -1
  511. package/dest/stats/stats.d.ts +2 -2
  512. package/dest/stats/stats.d.ts.map +1 -1
  513. package/dest/tests/factories.d.ts +25 -32
  514. package/dest/tests/factories.d.ts.map +1 -1
  515. package/dest/tests/factories.js +82 -82
  516. package/dest/tests/mocks.d.ts +8 -5
  517. package/dest/tests/mocks.d.ts.map +1 -1
  518. package/dest/tests/mocks.js +42 -54
  519. package/dest/timetable/index.d.ts +51 -1
  520. package/dest/timetable/index.d.ts.map +1 -1
  521. package/dest/timetable/index.js +218 -14
  522. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  523. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  524. package/dest/trees/append_only_tree_snapshot.js +6 -3
  525. package/dest/trees/nullifier_leaf.d.ts +19 -42
  526. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  527. package/dest/trees/nullifier_leaf.js +3 -0
  528. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  529. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  530. package/dest/trees/nullifier_membership_witness.js +2 -14
  531. package/dest/trees/public_data_leaf.d.ts +21 -53
  532. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  533. package/dest/trees/public_data_witness.d.ts +16 -58
  534. package/dest/trees/public_data_witness.d.ts.map +1 -1
  535. package/dest/tx/block_header.d.ts +5 -4
  536. package/dest/tx/block_header.d.ts.map +1 -1
  537. package/dest/tx/block_header.js +7 -4
  538. package/dest/tx/call_context.d.ts +4 -14
  539. package/dest/tx/call_context.d.ts.map +1 -1
  540. package/dest/tx/capsule.d.ts +7 -3
  541. package/dest/tx/capsule.d.ts.map +1 -1
  542. package/dest/tx/capsule.js +9 -3
  543. package/dest/tx/fee_provider.d.ts +10 -0
  544. package/dest/tx/fee_provider.d.ts.map +1 -0
  545. package/dest/tx/fee_provider.js +1 -0
  546. package/dest/tx/function_data.d.ts +4 -10
  547. package/dest/tx/function_data.d.ts.map +1 -1
  548. package/dest/tx/global_variable_builder.d.ts +3 -4
  549. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  550. package/dest/tx/global_variables.d.ts +16 -49
  551. package/dest/tx/global_variables.d.ts.map +1 -1
  552. package/dest/tx/global_variables.js +8 -12
  553. package/dest/tx/hashed_values.d.ts +4 -3
  554. package/dest/tx/hashed_values.d.ts.map +1 -1
  555. package/dest/tx/hashed_values.js +6 -3
  556. package/dest/tx/in_tx.d.ts +5 -17
  557. package/dest/tx/in_tx.d.ts.map +1 -1
  558. package/dest/tx/index.d.ts +2 -1
  559. package/dest/tx/index.d.ts.map +1 -1
  560. package/dest/tx/index.js +1 -0
  561. package/dest/tx/indexed_tx_effect.d.ts +4 -18
  562. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  563. package/dest/tx/indexed_tx_effect.js +1 -2
  564. package/dest/tx/partial_state_reference.d.ts +22 -65
  565. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  566. package/dest/tx/partial_state_reference.js +6 -3
  567. package/dest/tx/private_execution_result.d.ts +6 -16
  568. package/dest/tx/private_execution_result.d.ts.map +1 -1
  569. package/dest/tx/profiling.d.ts +54 -352
  570. package/dest/tx/profiling.d.ts.map +1 -1
  571. package/dest/tx/profiling.js +4 -4
  572. package/dest/tx/protocol_contracts.d.ts +5 -9
  573. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  574. package/dest/tx/proven_tx.d.ts +30 -74
  575. package/dest/tx/proven_tx.d.ts.map +1 -1
  576. package/dest/tx/proven_tx.js +6 -0
  577. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  578. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  579. package/dest/tx/public_call_request_with_calldata.js +6 -3
  580. package/dest/tx/simulated_tx.d.ts +64 -1143
  581. package/dest/tx/simulated_tx.d.ts.map +1 -1
  582. package/dest/tx/simulated_tx.js +13 -11
  583. package/dest/tx/state_reference.d.ts +30 -117
  584. package/dest/tx/state_reference.d.ts.map +1 -1
  585. package/dest/tx/state_reference.js +6 -4
  586. package/dest/tx/tree_snapshots.d.ts +27 -84
  587. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  588. package/dest/tx/tree_snapshots.js +6 -4
  589. package/dest/tx/tx.d.ts +7 -13
  590. package/dest/tx/tx.d.ts.map +1 -1
  591. package/dest/tx/tx.js +22 -23
  592. package/dest/tx/tx_constant_data.d.ts +4 -3
  593. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  594. package/dest/tx/tx_constant_data.js +6 -3
  595. package/dest/tx/tx_context.d.ts +32 -131
  596. package/dest/tx/tx_context.d.ts.map +1 -1
  597. package/dest/tx/tx_context.js +6 -6
  598. package/dest/tx/tx_hash.d.ts +6 -4
  599. package/dest/tx/tx_hash.d.ts.map +1 -1
  600. package/dest/tx/tx_hash.js +13 -5
  601. package/dest/tx/tx_receipt.d.ts +2 -4
  602. package/dest/tx/tx_receipt.d.ts.map +1 -1
  603. package/dest/tx/tx_receipt.js +2 -15
  604. package/dest/tx/validator/error_texts.d.ts +5 -1
  605. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  606. package/dest/tx/validator/error_texts.js +6 -0
  607. package/dest/tx/validator/tx_validator.d.ts +5 -27
  608. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  609. package/dest/tx/validator/tx_validator.js +0 -4
  610. package/dest/types/shared.d.ts +4 -12
  611. package/dest/types/shared.d.ts.map +1 -1
  612. package/dest/types/shared.js +6 -12
  613. package/dest/update-checker/dev_version.d.ts +3 -0
  614. package/dest/update-checker/dev_version.d.ts.map +1 -0
  615. package/dest/update-checker/dev_version.js +1 -0
  616. package/dest/update-checker/index.d.ts +2 -1
  617. package/dest/update-checker/index.d.ts.map +1 -1
  618. package/dest/update-checker/index.js +1 -0
  619. package/dest/update-checker/package_version.d.ts +6 -3
  620. package/dest/update-checker/package_version.d.ts.map +1 -1
  621. package/dest/update-checker/package_version.js +8 -19
  622. package/dest/validators/schemas.d.ts +147 -614
  623. package/dest/validators/schemas.d.ts.map +1 -1
  624. package/dest/validators/schemas.js +6 -4
  625. package/dest/validators/types.d.ts +20 -3
  626. package/dest/validators/types.d.ts.map +1 -1
  627. package/dest/versioning/versioning.js +1 -1
  628. package/dest/vks/verification_key.d.ts +4 -139
  629. package/dest/vks/verification_key.d.ts.map +1 -1
  630. package/dest/vks/verification_key.js +5 -126
  631. package/dest/world-state/genesis_data.d.ts +13 -0
  632. package/dest/world-state/genesis_data.d.ts.map +1 -0
  633. package/dest/world-state/genesis_data.js +7 -0
  634. package/dest/world-state/index.d.ts +2 -1
  635. package/dest/world-state/index.d.ts.map +1 -1
  636. package/dest/world-state/index.js +1 -0
  637. package/dest/world-state/world_state_revision.d.ts +15 -26
  638. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  639. package/dest/world-state/world_state_revision.js +7 -1
  640. package/package.json +12 -11
  641. package/src/abi/abi.ts +78 -21
  642. package/src/abi/authorization_selector.ts +2 -8
  643. package/src/abi/buffer.ts +25 -4
  644. package/src/abi/contract_artifact.ts +11 -6
  645. package/src/abi/decoder.ts +23 -78
  646. package/src/abi/encoder.ts +42 -6
  647. package/src/abi/event_selector.ts +2 -8
  648. package/src/abi/function_selector.ts +4 -13
  649. package/src/abi/function_signature_decoder.ts +77 -0
  650. package/src/abi/index.ts +1 -0
  651. package/src/abi/note_selector.ts +3 -12
  652. package/src/abi/selector.ts +1 -1
  653. package/src/abi/utils.ts +6 -4
  654. package/src/avm/avm.ts +5 -0
  655. package/src/avm/message_pack.ts +12 -3
  656. package/src/avm/revert_code.ts +19 -39
  657. package/src/aztec-address/index.ts +15 -12
  658. package/src/block/attestation_info.ts +11 -11
  659. package/src/block/block_data.ts +3 -4
  660. package/src/block/block_hash.ts +21 -14
  661. package/src/block/block_parameter.ts +72 -4
  662. package/src/block/index.ts +0 -1
  663. package/src/block/l2_block_info.ts +8 -6
  664. package/src/block/l2_block_source.ts +194 -142
  665. package/src/block/l2_block_stream/interfaces.ts +6 -2
  666. package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
  667. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  668. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  669. package/src/block/proposal/attestations_and_signers.ts +32 -17
  670. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  671. package/src/checkpoint/checkpoint.ts +11 -1
  672. package/src/checkpoint/checkpoint_data.ts +44 -4
  673. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  674. package/src/checkpoint/digest.ts +28 -0
  675. package/src/checkpoint/index.ts +3 -0
  676. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  677. package/src/checkpoint/validate.ts +2 -2
  678. package/src/config/chain-config.ts +13 -16
  679. package/src/config/index.ts +1 -0
  680. package/src/config/pipelining-config.ts +31 -0
  681. package/src/config/sequencer-config.ts +34 -6
  682. package/src/contract/complete_address.ts +7 -3
  683. package/src/contract/contract_address.ts +7 -7
  684. package/src/contract/contract_class_id.ts +2 -2
  685. package/src/contract/contract_instance.ts +11 -2
  686. package/src/contract/index.ts +0 -2
  687. package/src/contract/interfaces/contract_class.ts +2 -82
  688. package/src/contract/interfaces/contract_instance.ts +6 -2
  689. package/src/contract/private_function.ts +3 -1
  690. package/src/database-version/version_manager.ts +17 -0
  691. package/src/epoch-helpers/index.ts +24 -0
  692. package/src/file-store/factory.ts +13 -4
  693. package/src/file-store/http.ts +29 -10
  694. package/src/file-store/index.ts +1 -0
  695. package/src/gas/README.md +31 -0
  696. package/src/gas/fee_math.ts +120 -0
  697. package/src/gas/gas.ts +8 -3
  698. package/src/gas/gas_fees.ts +26 -13
  699. package/src/gas/gas_settings.ts +73 -15
  700. package/src/gas/index.ts +1 -0
  701. package/src/ha-signing/config.ts +14 -18
  702. package/src/ha-signing/index.ts +3 -1
  703. package/src/ha-signing/local_config.ts +2 -2
  704. package/src/ha-signing/types.ts +48 -34
  705. package/src/hash/hash.ts +63 -2
  706. package/src/interfaces/api_limit.ts +1 -1
  707. package/src/interfaces/archiver.ts +82 -92
  708. package/src/interfaces/aztec-node-admin.ts +35 -20
  709. package/src/interfaces/aztec-node-debug.ts +40 -0
  710. package/src/interfaces/aztec-node.ts +253 -252
  711. package/src/interfaces/block-builder.ts +29 -9
  712. package/src/interfaces/block_response.ts +92 -0
  713. package/src/interfaces/chain_tips.ts +24 -0
  714. package/src/interfaces/checkpoint_parameter.ts +20 -0
  715. package/src/interfaces/checkpoint_response.ts +84 -0
  716. package/src/interfaces/client.ts +7 -1
  717. package/src/interfaces/configs.ts +39 -5
  718. package/src/interfaces/l1_publish_info.ts +40 -0
  719. package/src/interfaces/l2_logs_source.ts +13 -42
  720. package/src/interfaces/merkle_tree_operations.ts +3 -2
  721. package/src/interfaces/p2p-bootstrap.ts +2 -2
  722. package/src/interfaces/p2p.ts +35 -15
  723. package/src/interfaces/private_kernel_prover.ts +88 -0
  724. package/src/interfaces/prover-agent.ts +1 -1
  725. package/src/interfaces/prover-client.ts +2 -5
  726. package/src/interfaces/prover-node.ts +7 -7
  727. package/src/interfaces/proving-job-source.ts +4 -4
  728. package/src/interfaces/proving-job.ts +3 -3
  729. package/src/interfaces/public_storage_override.ts +26 -0
  730. package/src/interfaces/server.ts +5 -0
  731. package/src/interfaces/slasher.ts +17 -10
  732. package/src/interfaces/tx_provider.ts +6 -0
  733. package/src/interfaces/validator.ts +34 -15
  734. package/src/interfaces/world_state.ts +1 -1
  735. package/src/kernel/hints/key_validation_request.ts +18 -16
  736. package/src/kernel/index.ts +4 -0
  737. package/src/kernel/log_hash.ts +29 -9
  738. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  739. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  740. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  741. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  742. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  743. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  744. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  745. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  746. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  747. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  748. package/src/kernel/public_call_request.ts +22 -7
  749. package/src/keys/derivation.ts +21 -9
  750. package/src/keys/public_key.ts +26 -2
  751. package/src/keys/public_keys.ts +124 -110
  752. package/src/kv-store/config.ts +3 -10
  753. package/src/l1-contracts/index.ts +1 -1
  754. package/src/logs/app_tagging_secret.ts +137 -0
  755. package/src/logs/app_tagging_secret_kind.ts +6 -0
  756. package/src/logs/contract_class_log.ts +15 -5
  757. package/src/logs/index.ts +6 -6
  758. package/src/logs/log_cursor.ts +110 -0
  759. package/src/logs/log_result.ts +104 -0
  760. package/src/logs/logs_query.ts +138 -0
  761. package/src/logs/message_context.ts +22 -8
  762. package/src/logs/pending_tagged_log.ts +1 -3
  763. package/src/logs/pre_tag.ts +3 -6
  764. package/src/logs/private_log.ts +9 -3
  765. package/src/logs/query_all_logs_by_tags.ts +98 -0
  766. package/src/logs/shared_secret_derivation.ts +21 -10
  767. package/src/logs/siloed_tag.ts +20 -11
  768. package/src/logs/tag.ts +8 -8
  769. package/src/logs/tagging_index_range.ts +4 -10
  770. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  771. package/src/messaging/index.ts +1 -0
  772. package/src/messaging/l1_to_l2_message.ts +12 -9
  773. package/src/messaging/l2_to_l1_membership.ts +85 -13
  774. package/src/messaging/l2_to_l1_message.ts +29 -9
  775. package/src/noir/index.ts +4 -2
  776. package/src/note/note_dao.ts +1 -4
  777. package/src/p2p/block_proposal.ts +111 -36
  778. package/src/p2p/checkpoint_attestation.ts +27 -31
  779. package/src/p2p/checkpoint_proposal.ts +126 -68
  780. package/src/p2p/consensus_payload.ts +59 -28
  781. package/src/p2p/gossipable.ts +4 -4
  782. package/src/p2p/signature_utils.ts +110 -25
  783. package/src/p2p/signed_txs.ts +46 -28
  784. package/src/parity/parity_base_private_inputs.ts +10 -4
  785. package/src/parity/parity_public_inputs.ts +9 -2
  786. package/src/proofs/chonk_proof.ts +132 -12
  787. package/src/rollup/block_headers_hash.ts +11 -2
  788. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  789. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  790. package/src/schemas/schemas.ts +6 -1
  791. package/src/slashing/helpers.ts +13 -9
  792. package/src/slashing/index.ts +1 -2
  793. package/src/slashing/serialization.ts +1 -81
  794. package/src/slashing/types.ts +24 -49
  795. package/src/slashing/{tally.ts → votes.ts} +1 -1
  796. package/src/stats/stats.ts +4 -0
  797. package/src/tests/factories.ts +103 -111
  798. package/src/tests/mocks.ts +66 -70
  799. package/src/timetable/index.ts +308 -13
  800. package/src/trees/append_only_tree_snapshot.ts +8 -3
  801. package/src/trees/nullifier_leaf.ts +4 -0
  802. package/src/trees/nullifier_membership_witness.ts +2 -12
  803. package/src/tx/block_header.ts +10 -5
  804. package/src/tx/capsule.ts +10 -2
  805. package/src/tx/fee_provider.ts +10 -0
  806. package/src/tx/global_variable_builder.ts +2 -3
  807. package/src/tx/global_variables.ts +10 -18
  808. package/src/tx/hashed_values.ts +8 -3
  809. package/src/tx/index.ts +1 -0
  810. package/src/tx/indexed_tx_effect.ts +1 -2
  811. package/src/tx/partial_state_reference.ts +8 -3
  812. package/src/tx/profiling.ts +4 -4
  813. package/src/tx/proven_tx.ts +6 -0
  814. package/src/tx/public_call_request_with_calldata.ts +8 -3
  815. package/src/tx/simulated_tx.ts +22 -21
  816. package/src/tx/state_reference.ts +9 -4
  817. package/src/tx/tree_snapshots.ts +9 -4
  818. package/src/tx/tx.ts +33 -24
  819. package/src/tx/tx_constant_data.ts +8 -3
  820. package/src/tx/tx_context.ts +8 -3
  821. package/src/tx/tx_hash.ts +20 -5
  822. package/src/tx/tx_receipt.ts +2 -14
  823. package/src/tx/validator/error_texts.ts +8 -0
  824. package/src/tx/validator/tx_validator.ts +1 -5
  825. package/src/types/shared.ts +8 -13
  826. package/src/update-checker/dev_version.ts +2 -0
  827. package/src/update-checker/index.ts +1 -0
  828. package/src/update-checker/package_version.ts +10 -23
  829. package/src/validators/schemas.ts +6 -4
  830. package/src/validators/types.ts +21 -2
  831. package/src/versioning/versioning.ts +1 -1
  832. package/src/vks/verification_key.ts +5 -184
  833. package/src/world-state/genesis_data.ts +27 -0
  834. package/src/world-state/index.ts +1 -0
  835. package/src/world-state/world_state_revision.ts +9 -1
  836. package/dest/abi/mocked_keys.d.ts +0 -2
  837. package/dest/abi/mocked_keys.d.ts.map +0 -1
  838. package/dest/abi/mocked_keys.js +0 -1
  839. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  840. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  841. package/dest/block/checkpointed_l2_block.js +0 -46
  842. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  843. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  844. package/dest/contract/private_function_membership_proof.js +0 -124
  845. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  846. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  847. package/dest/contract/utility_function_membership_proof.js +0 -87
  848. package/dest/interfaces/get_logs_response.d.ts +0 -97
  849. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  850. package/dest/interfaces/get_logs_response.js +0 -12
  851. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  852. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  853. package/dest/l1-contracts/slash_factory.js +0 -158
  854. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  855. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  856. package/dest/logs/extended_contract_class_log.js +0 -67
  857. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  858. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  859. package/dest/logs/extended_directional_app_tagging_secret.js +0 -72
  860. package/dest/logs/extended_public_log.d.ts +0 -106
  861. package/dest/logs/extended_public_log.d.ts.map +0 -1
  862. package/dest/logs/extended_public_log.js +0 -73
  863. package/dest/logs/log_filter.d.ts +0 -25
  864. package/dest/logs/log_filter.d.ts.map +0 -1
  865. package/dest/logs/log_filter.js +0 -12
  866. package/dest/logs/log_id.d.ts +0 -85
  867. package/dest/logs/log_id.d.ts.map +0 -1
  868. package/dest/logs/log_id.js +0 -94
  869. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  870. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  871. package/dest/logs/tx_scoped_l2_log.js +0 -70
  872. package/dest/slashing/empire.d.ts +0 -31
  873. package/dest/slashing/empire.d.ts.map +0 -1
  874. package/dest/slashing/empire.js +0 -87
  875. package/src/abi/mocked_keys.ts +0 -2
  876. package/src/block/checkpointed_l2_block.ts +0 -70
  877. package/src/contract/private_function_membership_proof.ts +0 -167
  878. package/src/contract/utility_function_membership_proof.ts +0 -118
  879. package/src/interfaces/get_logs_response.ts +0 -35
  880. package/src/l1-contracts/slash_factory.ts +0 -180
  881. package/src/logs/extended_contract_class_log.ts +0 -87
  882. package/src/logs/extended_directional_app_tagging_secret.ts +0 -87
  883. package/src/logs/extended_public_log.ts +0 -94
  884. package/src/logs/log_filter.ts +0 -36
  885. package/src/logs/log_id.ts +0 -125
  886. package/src/logs/tx_scoped_l2_log.ts +0 -98
  887. package/src/slashing/empire.ts +0 -104
@@ -35,7 +35,8 @@ export interface IBlockFactory extends ProcessedTxHandler {
35
35
  setBlockCompleted(expectedBlockHeader?: BlockHeader): Promise<L2Block>;
36
36
  }
37
37
 
38
- export interface PublicProcessorLimits {
38
+ /** Limits passed to the public processor for tx processing within a block. */
39
+ export type PublicProcessorLimits = {
39
40
  /** Maximum number of txs to process. */
40
41
  maxTransactions?: number;
41
42
  /** L2 and DA gas limits. */
@@ -44,9 +45,34 @@ export interface PublicProcessorLimits {
44
45
  maxBlobFields?: number;
45
46
  /** Deadline for processing the txs. Processor will stop as soon as it hits this time. */
46
47
  deadline?: Date;
48
+ /** Signal for interrupting processing before the deadline. */
49
+ signal?: AbortSignal;
47
50
  /** Whether this processor is building a proposal (as opposed to re-executing one). Skipping txs due to gas or blob limits is only done during proposal building. */
48
51
  isBuildingProposal?: boolean;
49
- }
52
+ };
53
+
54
+ /** Base fields shared by both proposer and validator block builder options. */
55
+ type BlockBuilderOptionsBase = PublicProcessorLimits & {
56
+ /** Minimum number of successfully processed txs required. Block is rejected if fewer succeed. */
57
+ minValidTxs: number;
58
+ };
59
+
60
+ /** Proposer mode: redistribution params are required. */
61
+ type ProposerBlockBuilderOptions = BlockBuilderOptionsBase & {
62
+ isBuildingProposal: true;
63
+ /** Maximum number of blocks per checkpoint, derived from the timetable. */
64
+ maxBlocksPerCheckpoint: number;
65
+ /** Per-block gas budget multiplier. Budget = (remaining / remainingBlocks) * multiplier. */
66
+ perBlockAllocationMultiplier: number;
67
+ };
68
+
69
+ /** Validator mode: no redistribution params needed. */
70
+ type ValidatorBlockBuilderOptions = BlockBuilderOptionsBase & {
71
+ isBuildingProposal: false;
72
+ };
73
+
74
+ /** Options for building a block within a checkpoint. When proposing, redistribution params are required. */
75
+ export type BlockBuilderOptions = ProposerBlockBuilderOptions | ValidatorBlockBuilderOptions;
50
76
 
51
77
  export interface PublicProcessorValidator {
52
78
  preprocessValidator?: TxValidator<Tx>;
@@ -64,9 +90,6 @@ export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime'
64
90
  | 'maxTxsPerCheckpoint'
65
91
  | 'maxL2BlockGas'
66
92
  | 'maxDABlockGas'
67
- | 'redistributeCheckpointBudget'
68
- | 'perBlockAllocationMultiplier'
69
- | 'maxBlocksPerCheckpoint'
70
93
  >;
71
94
 
72
95
  export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[] = [
@@ -82,9 +105,6 @@ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[
82
105
  'maxL2BlockGas',
83
106
  'maxDABlockGas',
84
107
  'rollupManaLimit',
85
- 'redistributeCheckpointBudget',
86
- 'perBlockAllocationMultiplier',
87
- 'maxBlocksPerCheckpoint',
88
108
  ] as const;
89
109
 
90
110
  /** Thrown when the number of successfully processed transactions is below the required minimum. */
@@ -115,7 +135,7 @@ export interface ICheckpointBlockBuilder {
115
135
  pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
116
136
  blockNumber: BlockNumber,
117
137
  timestamp: bigint,
118
- opts: PublicProcessorLimits & { minValidTxs?: number },
138
+ opts: BlockBuilderOptions,
119
139
  ): Promise<BuildBlockInCheckpointResult>;
120
140
  }
121
141
 
@@ -0,0 +1,92 @@
1
+ import {
2
+ BlockNumberSchema,
3
+ CheckpointNumberSchema,
4
+ IndexWithinCheckpointSchema,
5
+ } from '@aztec/foundation/branded-types';
6
+ import type { BlockNumber, CheckpointNumber, IndexWithinCheckpoint } from '@aztec/foundation/branded-types';
7
+ import type { IfFlag, Prettify } from '@aztec/foundation/types';
8
+
9
+ import { z } from 'zod';
10
+
11
+ import { BlockHash } from '../block/block_hash.js';
12
+ import { Body } from '../block/body.js';
13
+ import { CommitteeAttestation } from '../block/proposal/committee_attestation.js';
14
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
15
+ import { BlockHeader } from '../tx/block_header.js';
16
+ import { type L1PublishInfo, L1PublishInfoSchema } from './l1_publish_info.js';
17
+
18
+ /** Options for narrowing the response of `getBlock`. */
19
+ export type BlockIncludeOptions = {
20
+ /** Include the block body (tx effects). Off by default. */
21
+ includeTransactions?: boolean;
22
+ /** Include L1 publish info (populated with `published: false` if not yet on L1). Off by default. */
23
+ includeL1PublishInfo?: boolean;
24
+ /** Include committee attestations. Empty array until the block's checkpoint is published. Off by default. */
25
+ includeAttestations?: boolean;
26
+ };
27
+
28
+ export const BlockIncludeOptionsSchema: z.ZodType<BlockIncludeOptions> = z.object({
29
+ includeTransactions: z.boolean().optional(),
30
+ includeL1PublishInfo: z.boolean().optional(),
31
+ includeAttestations: z.boolean().optional(),
32
+ });
33
+
34
+ /** Options for narrowing the response of `getBlocks` (range). Extends single-block options with range-only flags. */
35
+ export type BlocksIncludeOptions = BlockIncludeOptions & {
36
+ /** Only return blocks that belong to a confirmed L1 checkpoint. Off by default. */
37
+ onlyCheckpointed?: boolean;
38
+ };
39
+
40
+ export const BlocksIncludeOptionsSchema: z.ZodType<BlocksIncludeOptions> = z.object({
41
+ includeTransactions: z.boolean().optional(),
42
+ includeL1PublishInfo: z.boolean().optional(),
43
+ includeAttestations: z.boolean().optional(),
44
+ onlyCheckpointed: z.boolean().optional(),
45
+ });
46
+
47
+ /** Required metadata always present on a {@link BlockResponse}. */
48
+ export type BlockResponseBase = {
49
+ /** Block header. */
50
+ header: BlockHeader;
51
+ /** Archive tree snapshot after this block. */
52
+ archive: AppendOnlyTreeSnapshot;
53
+ /** Hash of the block header. */
54
+ hash: BlockHash;
55
+ /** Checkpoint number this block belongs to. */
56
+ checkpointNumber: CheckpointNumber;
57
+ /** Position of the block within its checkpoint. */
58
+ indexWithinCheckpoint: IndexWithinCheckpoint;
59
+ /** L2 block number. */
60
+ number: BlockNumber;
61
+ };
62
+
63
+ /**
64
+ * RPC-surface representation of an L2 block.
65
+ *
66
+ * Generic over the include-options so that flagged fields become required when the caller passes a
67
+ * literal `true`. The default type argument ({@link BlockIncludeOptions}) yields the widest shape
68
+ * (all include-fields optional) — this is what the JSON-RPC wire layer validates against.
69
+ *
70
+ * @example
71
+ * const b: BlockResponse<{ includeTransactions: true }> = await node.getBlock(1, { includeTransactions: true });
72
+ * b.body; // required, not optional
73
+ */
74
+ export type BlockResponse<Opts extends BlockIncludeOptions = BlockIncludeOptions> = Prettify<
75
+ BlockResponseBase &
76
+ IfFlag<BlockIncludeOptions, Opts, 'includeTransactions', { body: Body }> &
77
+ IfFlag<BlockIncludeOptions, Opts, 'includeL1PublishInfo', { l1: L1PublishInfo }> &
78
+ IfFlag<BlockIncludeOptions, Opts, 'includeAttestations', { attestations: CommitteeAttestation[] }>
79
+ >;
80
+
81
+ /** Zod schema for the widest {@link BlockResponse} shape (all include-gated fields optional). */
82
+ export const BlockResponseSchema = z.object({
83
+ header: BlockHeader.schema,
84
+ archive: AppendOnlyTreeSnapshot.schema,
85
+ hash: BlockHash.schema,
86
+ checkpointNumber: CheckpointNumberSchema,
87
+ indexWithinCheckpoint: IndexWithinCheckpointSchema,
88
+ number: BlockNumberSchema,
89
+ body: Body.schema.optional(),
90
+ l1: L1PublishInfoSchema.optional(),
91
+ attestations: z.array(CommitteeAttestation.schema).optional(),
92
+ });
@@ -0,0 +1,24 @@
1
+ import { z } from 'zod';
2
+
3
+ import { type L2BlockTag, type L2Tips, L2TipsSchema } from '../block/l2_block_source.js';
4
+
5
+ /**
6
+ * Public chain-tip selectors usable in RPC requests.
7
+ * Omits internal-only tags (e.g. `proposedCheckpoint`) from {@link L2BlockTag}.
8
+ */
9
+ export type ChainTip = Exclude<L2BlockTag, 'proposedCheckpoint'>;
10
+
11
+ export const ChainTipSchema = z.union([
12
+ z.literal('proposed'),
13
+ z.literal('checkpointed'),
14
+ z.literal('proven'),
15
+ z.literal('finalized'),
16
+ ]) satisfies z.ZodType<ChainTip>;
17
+
18
+ /**
19
+ * Tips of the L2 chain.
20
+ * Omits the sequencer-internal `proposedCheckpoint` from the public RPC surface.
21
+ */
22
+ export type ChainTips = Omit<L2Tips, 'proposedCheckpoint'>;
23
+
24
+ export const ChainTipsSchema = L2TipsSchema.omit({ proposedCheckpoint: true });
@@ -0,0 +1,20 @@
1
+ import { CheckpointNumberSchema, SlotNumberSchema } from '@aztec/foundation/branded-types';
2
+
3
+ import { z } from 'zod';
4
+
5
+ import { ChainTipSchema } from './chain_tips.js';
6
+
7
+ /**
8
+ * Selector for a checkpoint in RPC calls.
9
+ *
10
+ * Accepts a numeric checkpoint number (or `{ number }`), a slot number (`{ slot }`),
11
+ * or a chain-tip name (e.g. `'proposed'`, `'proven'`).
12
+ */
13
+ export const CheckpointParameterSchema = z.union([
14
+ z.object({ number: CheckpointNumberSchema }).strict(),
15
+ z.object({ slot: SlotNumberSchema }).strict(),
16
+ ChainTipSchema,
17
+ CheckpointNumberSchema,
18
+ ]);
19
+
20
+ export type CheckpointParameter = z.infer<typeof CheckpointParameterSchema>;
@@ -0,0 +1,84 @@
1
+ import { BlockNumberSchema, CheckpointNumberSchema } from '@aztec/foundation/branded-types';
2
+ import type { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
4
+ import { schemas } from '@aztec/foundation/schemas';
5
+ import type { IfFlag, Prettify } from '@aztec/foundation/types';
6
+
7
+ import { z } from 'zod';
8
+
9
+ import { CommitteeAttestation } from '../block/proposal/committee_attestation.js';
10
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
11
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
12
+ import { type BlockResponse, BlockResponseSchema } from './block_response.js';
13
+ import { type L1PublishInfo, L1PublishInfoSchema } from './l1_publish_info.js';
14
+
15
+ /** Options for narrowing the response of `getCheckpoint` / `getCheckpoints`. */
16
+ export type CheckpointIncludeOptions = {
17
+ /** Include the nested blocks. Off by default. */
18
+ includeBlocks?: boolean;
19
+ /** When `includeBlocks` is true, include each block's body (tx effects). Off by default. No-op if `includeBlocks` is false. */
20
+ includeTransactions?: boolean;
21
+ /** Include L1 publish info. Off by default. */
22
+ includeL1PublishInfo?: boolean;
23
+ /** Include committee attestations. Off by default. */
24
+ includeAttestations?: boolean;
25
+ };
26
+
27
+ export const CheckpointIncludeOptionsSchema: z.ZodType<CheckpointIncludeOptions> = z.object({
28
+ includeBlocks: z.boolean().optional(),
29
+ includeTransactions: z.boolean().optional(),
30
+ includeL1PublishInfo: z.boolean().optional(),
31
+ includeAttestations: z.boolean().optional(),
32
+ });
33
+
34
+ /** Required metadata always present on a {@link CheckpointResponse}. */
35
+ export type CheckpointResponseBase = {
36
+ /** Checkpoint number. */
37
+ number: CheckpointNumber;
38
+ /** Checkpoint header. */
39
+ header: CheckpointHeader;
40
+ /** Archive tree snapshot after this checkpoint. */
41
+ archive: AppendOnlyTreeSnapshot;
42
+ /** Hash of the checkpoint out messages. */
43
+ checkpointOutHash: Fr;
44
+ /** First block number in this checkpoint. */
45
+ startBlock: BlockNumber;
46
+ /** Number of blocks in this checkpoint. */
47
+ blockCount: number;
48
+ /** Fee asset price modifier in basis points applied during this checkpoint. */
49
+ feeAssetPriceModifier: bigint;
50
+ };
51
+
52
+ // Only forward `includeTransactions` to nested blocks — the other include-flags on the checkpoint
53
+ // options do not apply to the nested block responses (those carry no independent L1 / attestations).
54
+ type NestedBlockOpts<Opts> = Opts extends { includeTransactions: true } ? { includeTransactions: true } : {};
55
+
56
+ /**
57
+ * RPC-surface representation of an L2 checkpoint.
58
+ *
59
+ * Generic over the include-options so that flagged fields become required when the caller passes a
60
+ * literal `true`. Only `includeTransactions` is forwarded to nested blocks, so
61
+ * `includeL1PublishInfo` / `includeAttestations` on a checkpoint request do not imply the same on
62
+ * its nested blocks. The default type argument ({@link CheckpointIncludeOptions}) yields the
63
+ * widest shape — what the JSON-RPC wire layer validates against.
64
+ */
65
+ export type CheckpointResponse<Opts extends CheckpointIncludeOptions = CheckpointIncludeOptions> = Prettify<
66
+ CheckpointResponseBase &
67
+ IfFlag<CheckpointIncludeOptions, Opts, 'includeBlocks', { blocks: BlockResponse<NestedBlockOpts<Opts>>[] }> &
68
+ IfFlag<CheckpointIncludeOptions, Opts, 'includeL1PublishInfo', { l1: L1PublishInfo }> &
69
+ IfFlag<CheckpointIncludeOptions, Opts, 'includeAttestations', { attestations: CommitteeAttestation[] }>
70
+ >;
71
+
72
+ /** Zod schema for the widest {@link CheckpointResponse} shape (all include-gated fields optional). */
73
+ export const CheckpointResponseSchema = z.object({
74
+ number: CheckpointNumberSchema,
75
+ header: CheckpointHeader.schema,
76
+ archive: AppendOnlyTreeSnapshot.schema,
77
+ checkpointOutHash: schemas.Fr,
78
+ startBlock: BlockNumberSchema,
79
+ blockCount: z.number(),
80
+ feeAssetPriceModifier: schemas.BigInt,
81
+ blocks: z.array(BlockResponseSchema).optional(),
82
+ l1: L1PublishInfoSchema.optional(),
83
+ attestations: z.array(CommitteeAttestation.schema).optional(),
84
+ });
@@ -1,5 +1,11 @@
1
1
  export * from './aztec-node.js';
2
2
  export * from './aztec-node-admin.js';
3
+ export * from './aztec-node-debug.js';
4
+ export * from './block_response.js';
5
+ export * from './chain_tips.js';
6
+ export * from './checkpoint_parameter.js';
7
+ export * from './checkpoint_response.js';
8
+ export * from './l1_publish_info.js';
3
9
  export * from './private_kernel_prover.js';
4
- export * from './get_logs_response.js';
5
10
  export * from './api_limit.js';
11
+ export * from './public_storage_override.js';
@@ -1,3 +1,4 @@
1
+ import { type SlotNumber, SlotNumberSchema } from '@aztec/foundation/branded-types';
1
2
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
3
  import type { Prettify } from '@aztec/foundation/types';
3
4
 
@@ -15,6 +16,8 @@ export interface SequencerConfig {
15
16
  maxTxsPerBlock?: number;
16
17
  /** The maximum number of txs across all blocks in a checkpoint. */
17
18
  maxTxsPerCheckpoint?: number;
19
+ /** Maximum number of blocks the sequencer packs into a single checkpoint, and the highest indexWithinCheckpoint accepted on a block proposal. */
20
+ maxBlocksPerCheckpoint?: number;
18
21
  /** The minimum number of txs to include in a block. */
19
22
  minTxsPerBlock?: number;
20
23
  /** The minimum number of valid txs (after execution) to include in a block. If not set, falls back to minTxsPerBlock. */
@@ -29,8 +32,6 @@ export interface SequencerConfig {
29
32
  perBlockAllocationMultiplier?: number;
30
33
  /** Redistribute remaining checkpoint budget evenly across remaining blocks instead of allowing a single block to consume the entire remaining budget. */
31
34
  redistributeCheckpointBudget?: boolean;
32
- /** Computed max number of blocks per checkpoint from timetable. */
33
- maxBlocksPerCheckpoint?: number;
34
35
  /** Recipient of block reward. */
35
36
  coinbase?: EthAddress;
36
37
  /** Address to receive fees. */
@@ -61,8 +62,21 @@ export interface SequencerConfig {
61
62
  skipCollectingAttestations?: boolean;
62
63
  /** Do not invalidate the previous block if invalid when we are the proposer (for testing only) */
63
64
  skipInvalidateBlockAsProposer?: boolean;
65
+ /**
66
+ * Bypass the parent checkpoint validity check before submitting a pipelined checkpoint, allowing
67
+ * the proposer to publish even when the parent landed on L1 with invalid attestations (for testing only).
68
+ */
69
+ skipWaitForValidParentCheckpointOnL1?: boolean;
64
70
  /** Broadcast invalid block proposals with corrupted state (for testing only) */
65
71
  broadcastInvalidBlockProposal?: boolean;
72
+ /** Broadcast an invalid block proposal only at this indexWithinCheckpoint (for testing only) */
73
+ invalidBlockProposalIndexWithinCheckpoint?: number;
74
+ /**
75
+ * Broadcast invalid checkpoint proposals (with corrupted archive) while keeping the underlying
76
+ * block proposals valid (for testing only). When unset, the checkpoint follows
77
+ * `broadcastInvalidBlockProposal`.
78
+ */
79
+ broadcastInvalidCheckpointProposalOnly?: boolean;
66
80
  /** Inject a fake attestation (for testing only) */
67
81
  injectFakeAttestation?: boolean;
68
82
  /** Inject a malleable attestation with a high-s value (for testing only) */
@@ -85,6 +99,18 @@ export interface SequencerConfig {
85
99
  minBlocksForCheckpoint?: number;
86
100
  /** Skip publishing checkpoint proposals probability (for testing checkpoint prunes only) */
87
101
  skipPublishingCheckpointsPercent?: number;
102
+ /** Skip broadcasting checkpoint and block proposals via gossipsub when proposer (for testing only) */
103
+ skipBroadcastProposals?: boolean;
104
+ /**
105
+ * Skip broadcasting only the CheckpointProposal via gossipsub when proposer; the held last block is still broadcast
106
+ * standalone so peers receive it as a proposed-but-uncheckpointed tip. Used to exercise the orphan-proposed-block
107
+ * prune path (for testing only). Narrower variant of `skipBroadcastProposals`: when only this flag is set the held
108
+ * last block is still broadcast standalone, but when `skipBroadcastProposals` is also set neither the block nor the
109
+ * checkpoint proposal is broadcast.
110
+ */
111
+ skipBroadcastCheckpointProposal?: boolean;
112
+ /** List of slots for which the sequencer will not produce a proposal (for testing only). Attestation paths are unaffected. */
113
+ pauseProposingForSlots?: SlotNumber[];
88
114
  }
89
115
 
90
116
  export const SequencerConfigSchema = zodFor<SequencerConfig>()(
@@ -92,6 +118,7 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
92
118
  sequencerPollingIntervalMS: z.number().optional(),
93
119
  maxTxsPerBlock: z.number().optional(),
94
120
  maxTxsPerCheckpoint: z.number().optional(),
121
+ maxBlocksPerCheckpoint: z.number().positive().optional(),
95
122
  minValidTxsPerBlock: z.number().optional(),
96
123
  minTxsPerBlock: z.number().optional(),
97
124
  maxL2BlockGas: z.number().optional(),
@@ -99,7 +126,6 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
99
126
  maxDABlockGas: z.number().optional(),
100
127
  perBlockAllocationMultiplier: z.number().optional(),
101
128
  redistributeCheckpointBudget: z.boolean().optional(),
102
- maxBlocksPerCheckpoint: z.number().optional(),
103
129
  coinbase: schemas.EthAddress.optional(),
104
130
  feeRecipient: schemas.AztecAddress.optional(),
105
131
  acvmWorkingDirectory: z.string().optional(),
@@ -113,9 +139,12 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
113
139
  attestationPropagationTime: z.number().optional(),
114
140
  skipCollectingAttestations: z.boolean().optional(),
115
141
  skipInvalidateBlockAsProposer: z.boolean().optional(),
142
+ skipWaitForValidParentCheckpointOnL1: z.boolean().optional(),
116
143
  secondsBeforeInvalidatingBlockAsCommitteeMember: z.number(),
117
144
  secondsBeforeInvalidatingBlockAsNonCommitteeMember: z.number(),
118
145
  broadcastInvalidBlockProposal: z.boolean().optional(),
146
+ invalidBlockProposalIndexWithinCheckpoint: z.number().int().nonnegative().optional(),
147
+ broadcastInvalidCheckpointProposalOnly: z.boolean().optional(),
119
148
  injectFakeAttestation: z.boolean().optional(),
120
149
  injectHighSValueAttestation: z.boolean().optional(),
121
150
  injectUnrecoverableSignatureAttestation: z.boolean().optional(),
@@ -127,6 +156,9 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
127
156
  skipPushProposedBlocksToArchiver: z.boolean().optional(),
128
157
  minBlocksForCheckpoint: z.number().positive().optional(),
129
158
  skipPublishingCheckpointsPercent: z.number().gte(0).lte(100).optional(),
159
+ skipBroadcastProposals: z.boolean().optional(),
160
+ skipBroadcastCheckpointProposal: z.boolean().optional(),
161
+ pauseProposingForSlots: z.array(SlotNumberSchema).optional(),
130
162
  }),
131
163
  );
132
164
 
@@ -142,15 +174,17 @@ type SequencerConfigOptionalKeys =
142
174
  | 'fakeThrowAfterProcessingTxCount'
143
175
  | 'l1PublishingTime'
144
176
  | 'txPublicSetupAllowListExtend'
177
+ | 'invalidBlockProposalIndexWithinCheckpoint'
145
178
  | 'minValidTxsPerBlock'
146
179
  | 'minBlocksForCheckpoint'
147
180
  | 'maxTxsPerBlock'
148
181
  | 'maxTxsPerCheckpoint'
149
182
  | 'maxL2BlockGas'
150
183
  | 'maxDABlockGas'
151
- | 'perBlockAllocationMultiplier'
152
184
  | 'redistributeCheckpointBudget'
153
- | 'maxBlocksPerCheckpoint';
185
+ | 'skipBroadcastProposals'
186
+ | 'skipBroadcastCheckpointProposal'
187
+ | 'pauseProposingForSlots';
154
188
 
155
189
  export type ResolvedSequencerConfig = Prettify<
156
190
  Required<Omit<SequencerConfig, SequencerConfigOptionalKeys>> & Pick<SequencerConfig, SequencerConfigOptionalKeys>
@@ -0,0 +1,40 @@
1
+ import { schemas } from '@aztec/foundation/schemas';
2
+
3
+ import { z } from 'zod';
4
+
5
+ import { L1PublishedData } from '../checkpoint/published_checkpoint.js';
6
+
7
+ /**
8
+ * L1 publication info for a block or checkpoint.
9
+ *
10
+ * A discriminated union over `published`: when `false`, the block/checkpoint has not yet been
11
+ * published to L1. When `true`, the L1 block info (number, timestamp, hash) is present.
12
+ *
13
+ * Distinct from {@link L1PublishedData}, which is always the "published" case.
14
+ */
15
+ export type L1PublishInfo =
16
+ | { published: false }
17
+ | { published: true; blockNumber: bigint; timestamp: bigint; blockHash: string };
18
+
19
+ export const L1PublishInfoSchema = z.union([
20
+ z.object({ published: z.literal(false) }),
21
+ z.object({
22
+ published: z.literal(true),
23
+ blockNumber: schemas.BigInt,
24
+ timestamp: schemas.BigInt,
25
+ blockHash: z.string(),
26
+ }),
27
+ ]);
28
+
29
+ /** Projects the internal {@link L1PublishedData} (or its absence) to the public {@link L1PublishInfo} shape. */
30
+ export function l1PublishInfoFromL1PublishedData(data: L1PublishedData | undefined): L1PublishInfo {
31
+ if (!data) {
32
+ return { published: false };
33
+ }
34
+ return {
35
+ published: true,
36
+ blockNumber: data.blockNumber,
37
+ timestamp: data.timestamp,
38
+ blockHash: data.blockHash,
39
+ };
40
+ }
@@ -1,57 +1,28 @@
1
1
  import type { BlockNumber } from '@aztec/foundation/branded-types';
2
2
 
3
- import type { AztecAddress } from '../aztec-address/index.js';
4
- import type { LogFilter } from '../logs/log_filter.js';
5
- import type { SiloedTag } from '../logs/siloed_tag.js';
6
- import type { Tag } from '../logs/tag.js';
7
- import type { TxScopedL2Log } from '../logs/tx_scoped_l2_log.js';
8
- import type { GetContractClassLogsResponse, GetPublicLogsResponse } from './get_logs_response.js';
3
+ import type { LogResult } from '../logs/log_result.js';
4
+ import type { PrivateLogsQuery, PublicLogsQuery } from '../logs/logs_query.js';
9
5
 
10
6
  /**
11
7
  * Interface of classes allowing for the retrieval of logs.
8
+ *
9
+ * The return type is always the widest {@link LogResult} shape (noteHashes/nullifiers optional). To
10
+ * narrow at the call site after passing `includeEffects: true`, use the typed wrapper functions in
11
+ * `pxe/src/tagging/get_all_logs_by_tags.ts` (or cast — the wire payload is the widest shape, so a
12
+ * stricter generic on this interface would not survive the JSON-RPC boundary anyway).
12
13
  */
13
14
  export interface L2LogsSource {
14
15
  /**
15
- * Gets private logs that match any of the `tags`. For each tag, an array of matching logs is returned. An empty
16
- * array implies no logs match that tag.
17
- * @param tags - The tags to search for.
18
- * @param page - The page number (0-indexed) for pagination.
19
- * @param upToBlockNumber - If set, only return logs from blocks up to and including this block number.
20
- * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
21
- * for a tag, the caller should fetch the next page to check for more logs.
16
+ * Gets private logs matching the given tags. Returns one inner array per element of `query.tags`, in
17
+ * input order. An empty inner array means no logs matched that tag.
22
18
  */
23
- getPrivateLogsByTags(tags: SiloedTag[], page?: number, upToBlockNumber?: BlockNumber): Promise<TxScopedL2Log[][]>;
19
+ getPrivateLogsByTags(query: PrivateLogsQuery): Promise<LogResult[][]>;
24
20
 
25
21
  /**
26
- * Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
27
- * logs is returned. An empty array implies no logs match that tag.
28
- * @param contractAddress - The contract address to search logs for.
29
- * @param tags - The tags to search for.
30
- * @param page - The page number (0-indexed) for pagination.
31
- * @param upToBlockNumber - If set, only return logs from blocks up to and including this block number.
32
- * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
33
- * for a tag, the caller should fetch the next page to check for more logs.
22
+ * Gets public logs matching the given tags for the given contract. Returns one inner array per element
23
+ * of `query.tags`, in input order. An empty inner array means no logs matched that tag.
34
24
  */
35
- getPublicLogsByTagsFromContract(
36
- contractAddress: AztecAddress,
37
- tags: Tag[],
38
- page?: number,
39
- upToBlockNumber?: BlockNumber,
40
- ): Promise<TxScopedL2Log[][]>;
41
-
42
- /**
43
- * Gets public logs based on the provided filter.
44
- * @param filter - The filter to apply to the logs.
45
- * @returns The requested logs.
46
- */
47
- getPublicLogs(filter: LogFilter): Promise<GetPublicLogsResponse>;
48
-
49
- /**
50
- * Gets contract class logs based on the provided filter.
51
- * @param filter - The filter to apply to the logs.
52
- * @returns The requested logs.
53
- */
54
- getContractClassLogs(filter: LogFilter): Promise<GetContractClassLogsResponse>;
25
+ getPublicLogsByTags(query: PublicLogsQuery): Promise<LogResult[][]>;
55
26
 
56
27
  /**
57
28
  * Gets the number of the latest L2 block processed by the implementation.
@@ -3,6 +3,7 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { createLogger } from '@aztec/foundation/log';
4
4
  import { type IndexedTreeLeafPreimage, SiblingPath } from '@aztec/foundation/trees';
5
5
 
6
+ import type { BlockHash } from '../block/block_hash.js';
6
7
  import type { MerkleTreeId, TreeHeights } from '../trees/merkle_tree_id.js';
7
8
  import type { NullifierLeaf } from '../trees/nullifier_leaf.js';
8
9
  import type { PublicDataTreeLeaf } from '../trees/public_data_leaf.js';
@@ -99,7 +100,7 @@ type LeafTypes = {
99
100
  [MerkleTreeId.NOTE_HASH_TREE]: Fr;
100
101
  [MerkleTreeId.PUBLIC_DATA_TREE]: Buffer;
101
102
  [MerkleTreeId.L1_TO_L2_MESSAGE_TREE]: Fr;
102
- [MerkleTreeId.ARCHIVE]: Fr;
103
+ [MerkleTreeId.ARCHIVE]: BlockHash;
103
104
  };
104
105
 
105
106
  type LeafValueTypes = {
@@ -107,7 +108,7 @@ type LeafValueTypes = {
107
108
  [MerkleTreeId.NOTE_HASH_TREE]: Fr;
108
109
  [MerkleTreeId.PUBLIC_DATA_TREE]: PublicDataTreeLeaf;
109
110
  [MerkleTreeId.L1_TO_L2_MESSAGE_TREE]: Fr;
110
- [MerkleTreeId.ARCHIVE]: Fr;
111
+ [MerkleTreeId.ARCHIVE]: BlockHash;
111
112
  };
112
113
 
113
114
  export type MerkleTreeLeafType<ID extends MerkleTreeId> = LeafTypes[ID];
@@ -16,6 +16,6 @@ export interface P2PBootstrapApi {
16
16
  }
17
17
 
18
18
  export const P2PBootstrapApiSchema: ApiSchemaFor<P2PBootstrapApi> = {
19
- getEncodedEnr: z.function().returns(z.string()),
20
- getRoutingTable: z.function().returns(z.array(z.string())),
19
+ getEncodedEnr: z.function({ input: z.tuple([]), output: z.string() }),
20
+ getRoutingTable: z.function({ input: z.tuple([]), output: z.array(z.string()) }),
21
21
  };
@@ -1,8 +1,10 @@
1
- import type { SlotNumber } from '@aztec/foundation/branded-types';
1
+ import type { CheckpointProposalHash, SlotNumber } from '@aztec/foundation/branded-types';
2
2
 
3
3
  import { z } from 'zod';
4
4
 
5
+ import type { BlockProposal } from '../p2p/block_proposal.js';
5
6
  import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
7
+ import type { CheckpointProposalCore } from '../p2p/checkpoint_proposal.js';
6
8
  import { type ApiSchemaFor, optional, schemas } from '../schemas/index.js';
7
9
  import { Tx } from '../tx/tx.js';
8
10
  import { TxHash } from '../tx/tx_hash.js';
@@ -49,31 +51,49 @@ export interface P2PApi {
49
51
  getPeers(includePending?: boolean): Promise<PeerInfo[]>;
50
52
 
51
53
  /**
52
- * Queries the Attestation pool for checkpoint attestations for the given slot
54
+ * Queries the Attestation pool for checkpoint attestations for the given slot.
53
55
  *
54
56
  * @param slot - the slot to query
55
- * @param proposalId - the proposal id to query, or undefined to query all proposals for the slot
57
+ * @param proposalPayloadHash - hex-encoded keccak256 of the target proposal's signed
58
+ * payload (`CheckpointProposal.getPayloadHash()`). When provided, only
59
+ * attestations whose own signed payload hashes to the same value are returned.
60
+ * When omitted, all attestations for the slot are returned.
56
61
  * @returns CheckpointAttestations
57
62
  */
58
- getCheckpointAttestationsForSlot(slot: SlotNumber, proposalId?: string): Promise<CheckpointAttestation[]>;
63
+ getCheckpointAttestationsForSlot(
64
+ slot: SlotNumber,
65
+ proposalPayloadHash?: CheckpointProposalHash,
66
+ ): Promise<CheckpointAttestation[]>;
59
67
  }
60
68
 
61
69
  export interface P2PClient extends P2PApi {
62
70
  /** Manually adds checkpoint attestations to the p2p client attestation pool. */
63
71
  addOwnCheckpointAttestations(attestations: CheckpointAttestation[]): Promise<void>;
72
+
73
+ /** Returns retained signed proposals for a slot. */
74
+ getProposalsForSlot(slot: SlotNumber): Promise<{
75
+ blockProposals: BlockProposal[];
76
+ checkpointProposals: CheckpointProposalCore[];
77
+ }>;
64
78
  }
65
79
 
66
80
  export const P2PApiSchema: ApiSchemaFor<P2PApi> = {
67
- getCheckpointAttestationsForSlot: z
68
- .function()
69
- .args(schemas.SlotNumber, optional(z.string()))
70
- .returns(z.array(CheckpointAttestation.schema)),
71
- getPendingTxs: z
72
- .function()
73
- .args(optional(z.number().gte(1).lte(MAX_RPC_TXS_LEN).default(MAX_RPC_TXS_LEN)), optional(TxHash.schema))
74
- .returns(z.array(Tx.schema)),
81
+ getCheckpointAttestationsForSlot: z.function({
82
+ input: z.tuple([
83
+ schemas.SlotNumber,
84
+ optional(z.string().regex(/^0x[0-9a-fA-F]+$/) as unknown as z.ZodType<CheckpointProposalHash>),
85
+ ]),
86
+ output: z.array(CheckpointAttestation.schema),
87
+ }),
88
+ getPendingTxs: z.function({
89
+ input: z.tuple([
90
+ optional(z.number().gte(1).lte(MAX_RPC_TXS_LEN).default(MAX_RPC_TXS_LEN)),
91
+ optional(TxHash.schema),
92
+ ]),
93
+ output: z.array(Tx.schema),
94
+ }),
75
95
 
76
- getPendingTxCount: z.function().returns(schemas.Integer),
77
- getEncodedEnr: z.function().returns(z.string().optional()),
78
- getPeers: z.function().args(optional(z.boolean())).returns(z.array(PeerInfoSchema)),
96
+ getPendingTxCount: z.function({ input: z.tuple([]), output: schemas.Integer }),
97
+ getEncodedEnr: z.function({ input: z.tuple([]), output: z.string().optional() }),
98
+ getPeers: z.function({ input: z.tuple([optional(z.boolean())]), output: z.array(PeerInfoSchema) }),
79
99
  };