@aztec/stdlib 0.0.1-commit.04852196a → 0.0.1-commit.04d373f

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 (898) 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 +203 -355
  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 +12 -20
  174. package/dest/epoch-helpers/index.d.ts.map +1 -1
  175. package/dest/epoch-helpers/index.js +16 -2
  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 +67 -299
  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 +80 -102
  228. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  229. package/dest/interfaces/aztec-node.js +297 -68
  230. package/dest/interfaces/block-builder.d.ts +34 -11
  231. package/dest/interfaces/block-builder.d.ts.map +1 -1
  232. package/dest/interfaces/block-builder.js +6 -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 +44 -128
  249. package/dest/interfaces/configs.d.ts.map +1 -1
  250. package/dest/interfaces/configs.js +10 -1
  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 -34
  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 +12 -21
  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 +9 -25
  269. package/dest/interfaces/prover-client.d.ts.map +1 -1
  270. package/dest/interfaces/prover-client.js +7 -4
  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 +6 -5
  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 +8 -7
  365. package/dest/logs/index.d.ts.map +1 -1
  366. package/dest/logs/index.js +7 -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 +4 -7
  377. package/dest/logs/message_context.d.ts.map +1 -1
  378. package/dest/logs/message_context.js +23 -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 +22 -0
  401. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  402. package/dest/logs/tagging_index_range.js +8 -0
  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/l1_to_l2_message_source.d.ts +4 -2
  413. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  414. package/dest/messaging/l2_to_l1_membership.d.ts +62 -6
  415. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  416. package/dest/messaging/l2_to_l1_membership.js +115 -27
  417. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  418. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  419. package/dest/messaging/l2_to_l1_message.js +21 -12
  420. package/dest/noir/index.d.ts +5 -3
  421. package/dest/noir/index.d.ts.map +1 -1
  422. package/dest/note/note.d.ts +2 -2
  423. package/dest/note/note.d.ts.map +1 -1
  424. package/dest/note/note_dao.d.ts +1 -1
  425. package/dest/note/note_dao.d.ts.map +1 -1
  426. package/dest/note/note_dao.js +1 -4
  427. package/dest/p2p/block_proposal.d.ts +31 -14
  428. package/dest/p2p/block_proposal.d.ts.map +1 -1
  429. package/dest/p2p/block_proposal.js +57 -39
  430. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  431. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  432. package/dest/p2p/checkpoint_attestation.js +23 -24
  433. package/dest/p2p/checkpoint_proposal.d.ts +35 -16
  434. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  435. package/dest/p2p/checkpoint_proposal.js +59 -49
  436. package/dest/p2p/consensus_payload.d.ts +26 -20
  437. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  438. package/dest/p2p/consensus_payload.js +38 -19
  439. package/dest/p2p/gossipable.d.ts +4 -4
  440. package/dest/p2p/gossipable.d.ts.map +1 -1
  441. package/dest/p2p/signature_utils.d.ts +28 -19
  442. package/dest/p2p/signature_utils.d.ts.map +1 -1
  443. package/dest/p2p/signature_utils.js +118 -21
  444. package/dest/p2p/signed_txs.d.ts +15 -13
  445. package/dest/p2p/signed_txs.d.ts.map +1 -1
  446. package/dest/p2p/signed_txs.js +26 -24
  447. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  448. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  449. package/dest/parity/parity_base_private_inputs.js +7 -5
  450. package/dest/parity/parity_public_inputs.d.ts +8 -4
  451. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  452. package/dest/parity/parity_public_inputs.js +6 -3
  453. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  454. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  455. package/dest/proofs/chonk_proof.d.ts +57 -7
  456. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  457. package/dest/proofs/chonk_proof.js +112 -15
  458. package/dest/proofs/recursive_proof.d.ts +2 -2
  459. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  460. package/dest/rollup/block_headers_hash.d.ts +1 -1
  461. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  462. package/dest/rollup/block_headers_hash.js +8 -2
  463. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  464. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  465. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  466. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  467. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  468. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  469. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  470. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  471. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  472. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  473. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  474. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  475. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  476. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  477. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  478. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  479. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  480. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  481. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  482. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  483. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  484. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  485. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  486. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  487. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  488. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  489. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  490. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  491. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  492. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  493. package/dest/schemas/schemas.d.ts +32 -78
  494. package/dest/schemas/schemas.d.ts.map +1 -1
  495. package/dest/schemas/schemas.js +2 -2
  496. package/dest/slashing/helpers.d.ts +2 -2
  497. package/dest/slashing/helpers.d.ts.map +1 -1
  498. package/dest/slashing/helpers.js +10 -7
  499. package/dest/slashing/index.d.ts +2 -3
  500. package/dest/slashing/index.d.ts.map +1 -1
  501. package/dest/slashing/index.js +1 -2
  502. package/dest/slashing/serialization.d.ts +2 -6
  503. package/dest/slashing/serialization.d.ts.map +1 -1
  504. package/dest/slashing/serialization.js +0 -60
  505. package/dest/slashing/types.d.ts +18 -112
  506. package/dest/slashing/types.d.ts.map +1 -1
  507. package/dest/slashing/types.js +16 -24
  508. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  509. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  510. package/dest/slashing/{tally.js → votes.js} +1 -1
  511. package/dest/snapshots/types.d.ts +15 -78
  512. package/dest/snapshots/types.d.ts.map +1 -1
  513. package/dest/stats/stats.d.ts +2 -2
  514. package/dest/stats/stats.d.ts.map +1 -1
  515. package/dest/tests/factories.d.ts +25 -32
  516. package/dest/tests/factories.d.ts.map +1 -1
  517. package/dest/tests/factories.js +82 -82
  518. package/dest/tests/mocks.d.ts +8 -5
  519. package/dest/tests/mocks.d.ts.map +1 -1
  520. package/dest/tests/mocks.js +42 -54
  521. package/dest/timetable/index.d.ts +51 -1
  522. package/dest/timetable/index.d.ts.map +1 -1
  523. package/dest/timetable/index.js +218 -14
  524. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  525. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  526. package/dest/trees/append_only_tree_snapshot.js +6 -3
  527. package/dest/trees/nullifier_leaf.d.ts +19 -42
  528. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  529. package/dest/trees/nullifier_leaf.js +3 -0
  530. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  531. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  532. package/dest/trees/nullifier_membership_witness.js +2 -14
  533. package/dest/trees/public_data_leaf.d.ts +21 -53
  534. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  535. package/dest/trees/public_data_witness.d.ts +16 -58
  536. package/dest/trees/public_data_witness.d.ts.map +1 -1
  537. package/dest/tx/block_header.d.ts +5 -4
  538. package/dest/tx/block_header.d.ts.map +1 -1
  539. package/dest/tx/block_header.js +7 -4
  540. package/dest/tx/call_context.d.ts +4 -14
  541. package/dest/tx/call_context.d.ts.map +1 -1
  542. package/dest/tx/capsule.d.ts +7 -3
  543. package/dest/tx/capsule.d.ts.map +1 -1
  544. package/dest/tx/capsule.js +9 -3
  545. package/dest/tx/fee_provider.d.ts +10 -0
  546. package/dest/tx/fee_provider.d.ts.map +1 -0
  547. package/dest/tx/fee_provider.js +1 -0
  548. package/dest/tx/function_data.d.ts +4 -10
  549. package/dest/tx/function_data.d.ts.map +1 -1
  550. package/dest/tx/global_variable_builder.d.ts +3 -4
  551. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  552. package/dest/tx/global_variables.d.ts +16 -49
  553. package/dest/tx/global_variables.d.ts.map +1 -1
  554. package/dest/tx/global_variables.js +8 -12
  555. package/dest/tx/hashed_values.d.ts +4 -3
  556. package/dest/tx/hashed_values.d.ts.map +1 -1
  557. package/dest/tx/hashed_values.js +6 -3
  558. package/dest/tx/in_tx.d.ts +5 -17
  559. package/dest/tx/in_tx.d.ts.map +1 -1
  560. package/dest/tx/index.d.ts +2 -1
  561. package/dest/tx/index.d.ts.map +1 -1
  562. package/dest/tx/index.js +1 -0
  563. package/dest/tx/indexed_tx_effect.d.ts +4 -18
  564. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  565. package/dest/tx/indexed_tx_effect.js +1 -2
  566. package/dest/tx/partial_state_reference.d.ts +22 -65
  567. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  568. package/dest/tx/partial_state_reference.js +6 -3
  569. package/dest/tx/private_execution_result.d.ts +11 -21
  570. package/dest/tx/private_execution_result.d.ts.map +1 -1
  571. package/dest/tx/private_execution_result.js +6 -6
  572. package/dest/tx/profiling.d.ts +67 -353
  573. package/dest/tx/profiling.d.ts.map +1 -1
  574. package/dest/tx/profiling.js +17 -7
  575. package/dest/tx/protocol_contracts.d.ts +5 -9
  576. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  577. package/dest/tx/proven_tx.d.ts +30 -74
  578. package/dest/tx/proven_tx.d.ts.map +1 -1
  579. package/dest/tx/proven_tx.js +6 -0
  580. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  581. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  582. package/dest/tx/public_call_request_with_calldata.js +6 -3
  583. package/dest/tx/simulated_tx.d.ts +64 -1143
  584. package/dest/tx/simulated_tx.d.ts.map +1 -1
  585. package/dest/tx/simulated_tx.js +13 -11
  586. package/dest/tx/state_reference.d.ts +30 -117
  587. package/dest/tx/state_reference.d.ts.map +1 -1
  588. package/dest/tx/state_reference.js +6 -4
  589. package/dest/tx/tree_snapshots.d.ts +27 -84
  590. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  591. package/dest/tx/tree_snapshots.js +6 -4
  592. package/dest/tx/tx.d.ts +7 -13
  593. package/dest/tx/tx.d.ts.map +1 -1
  594. package/dest/tx/tx.js +22 -23
  595. package/dest/tx/tx_constant_data.d.ts +4 -3
  596. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  597. package/dest/tx/tx_constant_data.js +6 -3
  598. package/dest/tx/tx_context.d.ts +32 -131
  599. package/dest/tx/tx_context.d.ts.map +1 -1
  600. package/dest/tx/tx_context.js +6 -6
  601. package/dest/tx/tx_hash.d.ts +6 -4
  602. package/dest/tx/tx_hash.d.ts.map +1 -1
  603. package/dest/tx/tx_hash.js +13 -5
  604. package/dest/tx/tx_receipt.d.ts +8 -5
  605. package/dest/tx/tx_receipt.d.ts.map +1 -1
  606. package/dest/tx/tx_receipt.js +8 -18
  607. package/dest/tx/validator/error_texts.d.ts +5 -1
  608. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  609. package/dest/tx/validator/error_texts.js +6 -0
  610. package/dest/tx/validator/tx_validator.d.ts +5 -27
  611. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  612. package/dest/tx/validator/tx_validator.js +0 -4
  613. package/dest/types/shared.d.ts +4 -12
  614. package/dest/types/shared.d.ts.map +1 -1
  615. package/dest/types/shared.js +6 -12
  616. package/dest/update-checker/dev_version.d.ts +3 -0
  617. package/dest/update-checker/dev_version.d.ts.map +1 -0
  618. package/dest/update-checker/dev_version.js +1 -0
  619. package/dest/update-checker/index.d.ts +2 -1
  620. package/dest/update-checker/index.d.ts.map +1 -1
  621. package/dest/update-checker/index.js +1 -0
  622. package/dest/update-checker/package_version.d.ts +6 -3
  623. package/dest/update-checker/package_version.d.ts.map +1 -1
  624. package/dest/update-checker/package_version.js +9 -7
  625. package/dest/validators/errors.d.ts +6 -1
  626. package/dest/validators/errors.d.ts.map +1 -1
  627. package/dest/validators/errors.js +7 -0
  628. package/dest/validators/schemas.d.ts +147 -614
  629. package/dest/validators/schemas.d.ts.map +1 -1
  630. package/dest/validators/schemas.js +6 -4
  631. package/dest/validators/types.d.ts +20 -3
  632. package/dest/validators/types.d.ts.map +1 -1
  633. package/dest/versioning/versioning.d.ts +4 -2
  634. package/dest/versioning/versioning.d.ts.map +1 -1
  635. package/dest/versioning/versioning.js +5 -2
  636. package/dest/vks/verification_key.d.ts +4 -139
  637. package/dest/vks/verification_key.d.ts.map +1 -1
  638. package/dest/vks/verification_key.js +5 -126
  639. package/dest/world-state/genesis_data.d.ts +13 -0
  640. package/dest/world-state/genesis_data.d.ts.map +1 -0
  641. package/dest/world-state/genesis_data.js +7 -0
  642. package/dest/world-state/index.d.ts +2 -1
  643. package/dest/world-state/index.d.ts.map +1 -1
  644. package/dest/world-state/index.js +1 -0
  645. package/dest/world-state/world_state_revision.d.ts +15 -26
  646. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  647. package/dest/world-state/world_state_revision.js +7 -1
  648. package/package.json +12 -11
  649. package/src/abi/abi.ts +78 -21
  650. package/src/abi/authorization_selector.ts +2 -8
  651. package/src/abi/buffer.ts +25 -4
  652. package/src/abi/contract_artifact.ts +11 -6
  653. package/src/abi/decoder.ts +23 -78
  654. package/src/abi/encoder.ts +42 -6
  655. package/src/abi/event_selector.ts +2 -8
  656. package/src/abi/function_selector.ts +4 -13
  657. package/src/abi/function_signature_decoder.ts +77 -0
  658. package/src/abi/index.ts +1 -0
  659. package/src/abi/note_selector.ts +3 -12
  660. package/src/abi/selector.ts +1 -1
  661. package/src/abi/utils.ts +6 -4
  662. package/src/avm/avm.ts +5 -0
  663. package/src/avm/message_pack.ts +12 -3
  664. package/src/avm/revert_code.ts +19 -39
  665. package/src/aztec-address/index.ts +15 -12
  666. package/src/block/attestation_info.ts +11 -11
  667. package/src/block/block_data.ts +3 -4
  668. package/src/block/block_hash.ts +21 -14
  669. package/src/block/block_parameter.ts +72 -4
  670. package/src/block/index.ts +0 -1
  671. package/src/block/l2_block_info.ts +8 -6
  672. package/src/block/l2_block_source.ts +198 -145
  673. package/src/block/l2_block_stream/interfaces.ts +6 -2
  674. package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
  675. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  676. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  677. package/src/block/proposal/attestations_and_signers.ts +32 -17
  678. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  679. package/src/checkpoint/checkpoint.ts +11 -1
  680. package/src/checkpoint/checkpoint_data.ts +44 -4
  681. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  682. package/src/checkpoint/digest.ts +28 -0
  683. package/src/checkpoint/index.ts +3 -0
  684. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  685. package/src/checkpoint/validate.ts +2 -2
  686. package/src/config/chain-config.ts +13 -16
  687. package/src/config/index.ts +1 -0
  688. package/src/config/pipelining-config.ts +31 -0
  689. package/src/config/sequencer-config.ts +34 -6
  690. package/src/contract/complete_address.ts +7 -3
  691. package/src/contract/contract_address.ts +7 -7
  692. package/src/contract/contract_class_id.ts +2 -2
  693. package/src/contract/contract_instance.ts +11 -2
  694. package/src/contract/index.ts +0 -2
  695. package/src/contract/interfaces/contract_class.ts +2 -82
  696. package/src/contract/interfaces/contract_instance.ts +6 -2
  697. package/src/contract/private_function.ts +3 -1
  698. package/src/database-version/version_manager.ts +17 -0
  699. package/src/epoch-helpers/index.ts +27 -0
  700. package/src/file-store/factory.ts +13 -4
  701. package/src/file-store/http.ts +29 -10
  702. package/src/file-store/index.ts +1 -0
  703. package/src/gas/README.md +154 -0
  704. package/src/gas/fee_math.ts +120 -0
  705. package/src/gas/gas.ts +8 -3
  706. package/src/gas/gas_fees.ts +26 -13
  707. package/src/gas/gas_settings.ts +73 -15
  708. package/src/gas/index.ts +1 -0
  709. package/src/ha-signing/config.ts +14 -18
  710. package/src/ha-signing/index.ts +3 -1
  711. package/src/ha-signing/local_config.ts +2 -2
  712. package/src/ha-signing/types.ts +48 -34
  713. package/src/hash/hash.ts +63 -2
  714. package/src/interfaces/api_limit.ts +1 -1
  715. package/src/interfaces/archiver.ts +82 -92
  716. package/src/interfaces/aztec-node-admin.ts +35 -20
  717. package/src/interfaces/aztec-node-debug.ts +40 -0
  718. package/src/interfaces/aztec-node.ts +254 -244
  719. package/src/interfaces/block-builder.ts +41 -13
  720. package/src/interfaces/block_response.ts +92 -0
  721. package/src/interfaces/chain_tips.ts +24 -0
  722. package/src/interfaces/checkpoint_parameter.ts +20 -0
  723. package/src/interfaces/checkpoint_response.ts +84 -0
  724. package/src/interfaces/client.ts +7 -1
  725. package/src/interfaces/configs.ts +43 -1
  726. package/src/interfaces/l1_publish_info.ts +40 -0
  727. package/src/interfaces/l2_logs_source.ts +13 -39
  728. package/src/interfaces/merkle_tree_operations.ts +11 -20
  729. package/src/interfaces/p2p-bootstrap.ts +2 -2
  730. package/src/interfaces/p2p.ts +35 -15
  731. package/src/interfaces/private_kernel_prover.ts +88 -0
  732. package/src/interfaces/prover-agent.ts +1 -1
  733. package/src/interfaces/prover-client.ts +10 -5
  734. package/src/interfaces/prover-node.ts +7 -7
  735. package/src/interfaces/proving-job-source.ts +4 -4
  736. package/src/interfaces/proving-job.ts +3 -3
  737. package/src/interfaces/public_storage_override.ts +26 -0
  738. package/src/interfaces/server.ts +5 -0
  739. package/src/interfaces/slasher.ts +17 -10
  740. package/src/interfaces/tx_provider.ts +6 -0
  741. package/src/interfaces/validator.ts +34 -15
  742. package/src/interfaces/world_state.ts +5 -4
  743. package/src/kernel/hints/key_validation_request.ts +18 -16
  744. package/src/kernel/index.ts +4 -0
  745. package/src/kernel/log_hash.ts +29 -9
  746. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  747. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  748. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  749. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  750. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  751. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  752. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  753. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  754. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  755. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  756. package/src/kernel/public_call_request.ts +22 -7
  757. package/src/keys/derivation.ts +21 -9
  758. package/src/keys/public_key.ts +26 -2
  759. package/src/keys/public_keys.ts +124 -110
  760. package/src/kv-store/config.ts +3 -10
  761. package/src/l1-contracts/index.ts +1 -1
  762. package/src/logs/app_tagging_secret.ts +137 -0
  763. package/src/logs/app_tagging_secret_kind.ts +6 -0
  764. package/src/logs/contract_class_log.ts +15 -5
  765. package/src/logs/index.ts +7 -6
  766. package/src/logs/log_cursor.ts +110 -0
  767. package/src/logs/log_result.ts +104 -0
  768. package/src/logs/logs_query.ts +138 -0
  769. package/src/logs/message_context.ts +17 -7
  770. package/src/logs/pending_tagged_log.ts +1 -3
  771. package/src/logs/pre_tag.ts +3 -6
  772. package/src/logs/private_log.ts +9 -3
  773. package/src/logs/query_all_logs_by_tags.ts +98 -0
  774. package/src/logs/shared_secret_derivation.ts +21 -10
  775. package/src/logs/siloed_tag.ts +20 -11
  776. package/src/logs/tag.ts +8 -8
  777. package/src/logs/tagging_index_range.ts +18 -0
  778. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  779. package/src/messaging/index.ts +1 -0
  780. package/src/messaging/l1_to_l2_message.ts +12 -9
  781. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  782. package/src/messaging/l2_to_l1_membership.ts +171 -34
  783. package/src/messaging/l2_to_l1_message.ts +29 -9
  784. package/src/noir/index.ts +4 -2
  785. package/src/note/note_dao.ts +1 -4
  786. package/src/p2p/block_proposal.ts +111 -36
  787. package/src/p2p/checkpoint_attestation.ts +27 -31
  788. package/src/p2p/checkpoint_proposal.ts +126 -68
  789. package/src/p2p/consensus_payload.ts +59 -28
  790. package/src/p2p/gossipable.ts +4 -4
  791. package/src/p2p/signature_utils.ts +110 -25
  792. package/src/p2p/signed_txs.ts +46 -28
  793. package/src/parity/parity_base_private_inputs.ts +10 -4
  794. package/src/parity/parity_public_inputs.ts +9 -2
  795. package/src/proofs/chonk_proof.ts +132 -12
  796. package/src/rollup/block_headers_hash.ts +11 -2
  797. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  798. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  799. package/src/schemas/schemas.ts +6 -1
  800. package/src/slashing/helpers.ts +13 -9
  801. package/src/slashing/index.ts +1 -2
  802. package/src/slashing/serialization.ts +1 -81
  803. package/src/slashing/types.ts +24 -49
  804. package/src/slashing/{tally.ts → votes.ts} +1 -1
  805. package/src/stats/stats.ts +4 -0
  806. package/src/tests/factories.ts +103 -111
  807. package/src/tests/mocks.ts +66 -70
  808. package/src/timetable/index.ts +308 -13
  809. package/src/trees/append_only_tree_snapshot.ts +8 -3
  810. package/src/trees/nullifier_leaf.ts +4 -0
  811. package/src/trees/nullifier_membership_witness.ts +2 -12
  812. package/src/tx/block_header.ts +10 -5
  813. package/src/tx/capsule.ts +10 -2
  814. package/src/tx/fee_provider.ts +10 -0
  815. package/src/tx/global_variable_builder.ts +2 -3
  816. package/src/tx/global_variables.ts +10 -18
  817. package/src/tx/hashed_values.ts +8 -3
  818. package/src/tx/index.ts +1 -0
  819. package/src/tx/indexed_tx_effect.ts +1 -2
  820. package/src/tx/partial_state_reference.ts +8 -3
  821. package/src/tx/private_execution_result.ts +5 -5
  822. package/src/tx/profiling.ts +15 -6
  823. package/src/tx/proven_tx.ts +6 -0
  824. package/src/tx/public_call_request_with_calldata.ts +8 -3
  825. package/src/tx/simulated_tx.ts +22 -21
  826. package/src/tx/state_reference.ts +9 -4
  827. package/src/tx/tree_snapshots.ts +9 -4
  828. package/src/tx/tx.ts +33 -24
  829. package/src/tx/tx_constant_data.ts +8 -3
  830. package/src/tx/tx_context.ts +8 -3
  831. package/src/tx/tx_hash.ts +20 -5
  832. package/src/tx/tx_receipt.ts +9 -16
  833. package/src/tx/validator/error_texts.ts +8 -0
  834. package/src/tx/validator/tx_validator.ts +1 -5
  835. package/src/types/shared.ts +8 -13
  836. package/src/update-checker/dev_version.ts +2 -0
  837. package/src/update-checker/index.ts +1 -0
  838. package/src/update-checker/package_version.ts +11 -11
  839. package/src/validators/errors.ts +9 -0
  840. package/src/validators/schemas.ts +6 -4
  841. package/src/validators/types.ts +21 -2
  842. package/src/versioning/versioning.ts +5 -2
  843. package/src/vks/verification_key.ts +5 -184
  844. package/src/world-state/genesis_data.ts +27 -0
  845. package/src/world-state/index.ts +1 -0
  846. package/src/world-state/world_state_revision.ts +9 -1
  847. package/dest/abi/mocked_keys.d.ts +0 -2
  848. package/dest/abi/mocked_keys.d.ts.map +0 -1
  849. package/dest/abi/mocked_keys.js +0 -1
  850. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  851. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  852. package/dest/block/checkpointed_l2_block.js +0 -46
  853. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  854. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  855. package/dest/contract/private_function_membership_proof.js +0 -124
  856. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  857. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  858. package/dest/contract/utility_function_membership_proof.js +0 -87
  859. package/dest/interfaces/get_logs_response.d.ts +0 -97
  860. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  861. package/dest/interfaces/get_logs_response.js +0 -12
  862. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  863. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  864. package/dest/l1-contracts/slash_factory.js +0 -158
  865. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  866. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  867. package/dest/logs/extended_contract_class_log.js +0 -67
  868. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  869. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  870. package/dest/logs/extended_directional_app_tagging_secret.js +0 -72
  871. package/dest/logs/extended_public_log.d.ts +0 -106
  872. package/dest/logs/extended_public_log.d.ts.map +0 -1
  873. package/dest/logs/extended_public_log.js +0 -73
  874. package/dest/logs/log_filter.d.ts +0 -22
  875. package/dest/logs/log_filter.d.ts.map +0 -1
  876. package/dest/logs/log_filter.js +0 -11
  877. package/dest/logs/log_id.d.ts +0 -85
  878. package/dest/logs/log_id.d.ts.map +0 -1
  879. package/dest/logs/log_id.js +0 -94
  880. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  881. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  882. package/dest/logs/tx_scoped_l2_log.js +0 -70
  883. package/dest/slashing/empire.d.ts +0 -31
  884. package/dest/slashing/empire.d.ts.map +0 -1
  885. package/dest/slashing/empire.js +0 -87
  886. package/src/abi/mocked_keys.ts +0 -2
  887. package/src/block/checkpointed_l2_block.ts +0 -70
  888. package/src/contract/private_function_membership_proof.ts +0 -167
  889. package/src/contract/utility_function_membership_proof.ts +0 -118
  890. package/src/interfaces/get_logs_response.ts +0 -35
  891. package/src/l1-contracts/slash_factory.ts +0 -180
  892. package/src/logs/extended_contract_class_log.ts +0 -87
  893. package/src/logs/extended_directional_app_tagging_secret.ts +0 -87
  894. package/src/logs/extended_public_log.ts +0 -94
  895. package/src/logs/log_filter.ts +0 -31
  896. package/src/logs/log_id.ts +0 -125
  897. package/src/logs/tx_scoped_l2_log.ts +0 -98
  898. 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,16 +45,41 @@ 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>;
53
79
  nullifierCache?: { addNullifiers: (nullifiers: Buffer[]) => void };
54
80
  }
55
81
 
56
- export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'> &
82
+ export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'rollupManaLimit'> &
57
83
  Pick<ChainConfig, 'l1ChainId' | 'rollupVersion'> &
58
84
  Pick<
59
85
  SequencerConfig,
@@ -64,10 +90,7 @@ export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime'
64
90
  | 'maxTxsPerCheckpoint'
65
91
  | 'maxL2BlockGas'
66
92
  | 'maxDABlockGas'
67
- > & {
68
- /** Total L2 gas (mana) allowed per checkpoint. Fetched from L1 getManaLimit(). */
69
- rollupManaLimit: number;
70
- };
93
+ >;
71
94
 
72
95
  export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[] = [
73
96
  'l1GenesisTime',
@@ -84,11 +107,15 @@ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[
84
107
  'rollupManaLimit',
85
108
  ] as const;
86
109
 
87
- /** Thrown when no valid transactions are available to include in a block after processing, and this is not the first block in a checkpoint. */
88
- export class NoValidTxsError extends Error {
89
- constructor(public readonly failedTxs: FailedTx[]) {
90
- super('No valid transactions to include in block');
91
- this.name = 'NoValidTxsError';
110
+ /** Thrown when the number of successfully processed transactions is below the required minimum. */
111
+ export class InsufficientValidTxsError extends Error {
112
+ constructor(
113
+ public readonly processedCount: number,
114
+ public readonly minRequired: number,
115
+ public readonly failedTxs: FailedTx[],
116
+ ) {
117
+ super(`Insufficient valid txs: got ${processedCount} but need ${minRequired}`);
118
+ this.name = 'InsufficientValidTxsError';
92
119
  }
93
120
  }
94
121
 
@@ -103,11 +130,12 @@ export type BuildBlockInCheckpointResult = {
103
130
 
104
131
  /** Interface for building blocks within a checkpoint context. */
105
132
  export interface ICheckpointBlockBuilder {
133
+ /** Builds a single block within this checkpoint. Throws InsufficientValidTxsError if fewer than minValidTxs succeed. */
106
134
  buildBlock(
107
135
  pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
108
136
  blockNumber: BlockNumber,
109
137
  timestamp: bigint,
110
- opts: PublicProcessorLimits,
138
+ opts: BlockBuilderOptions,
111
139
  ): Promise<BuildBlockInCheckpointResult>;
112
140
  }
113
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. */
@@ -27,6 +30,8 @@ export interface SequencerConfig {
27
30
  maxDABlockGas?: number;
28
31
  /** Per-block gas budget multiplier for both L2 and DA gas. Budget = (checkpointLimit / maxBlocks) * multiplier. */
29
32
  perBlockAllocationMultiplier?: number;
33
+ /** Redistribute remaining checkpoint budget evenly across remaining blocks instead of allowing a single block to consume the entire remaining budget. */
34
+ redistributeCheckpointBudget?: boolean;
30
35
  /** Recipient of block reward. */
31
36
  coinbase?: EthAddress;
32
37
  /** Address to receive fees. */
@@ -57,8 +62,21 @@ export interface SequencerConfig {
57
62
  skipCollectingAttestations?: boolean;
58
63
  /** Do not invalidate the previous block if invalid when we are the proposer (for testing only) */
59
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;
60
70
  /** Broadcast invalid block proposals with corrupted state (for testing only) */
61
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;
62
80
  /** Inject a fake attestation (for testing only) */
63
81
  injectFakeAttestation?: boolean;
64
82
  /** Inject a malleable attestation with a high-s value (for testing only) */
@@ -81,6 +99,18 @@ export interface SequencerConfig {
81
99
  minBlocksForCheckpoint?: number;
82
100
  /** Skip publishing checkpoint proposals probability (for testing checkpoint prunes only) */
83
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[];
84
114
  }
85
115
 
86
116
  export const SequencerConfigSchema = zodFor<SequencerConfig>()(
@@ -88,12 +118,14 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
88
118
  sequencerPollingIntervalMS: z.number().optional(),
89
119
  maxTxsPerBlock: z.number().optional(),
90
120
  maxTxsPerCheckpoint: z.number().optional(),
121
+ maxBlocksPerCheckpoint: z.number().positive().optional(),
91
122
  minValidTxsPerBlock: z.number().optional(),
92
123
  minTxsPerBlock: z.number().optional(),
93
124
  maxL2BlockGas: z.number().optional(),
94
125
  publishTxsWithProposals: z.boolean().optional(),
95
126
  maxDABlockGas: z.number().optional(),
96
127
  perBlockAllocationMultiplier: z.number().optional(),
128
+ redistributeCheckpointBudget: z.boolean().optional(),
97
129
  coinbase: schemas.EthAddress.optional(),
98
130
  feeRecipient: schemas.AztecAddress.optional(),
99
131
  acvmWorkingDirectory: z.string().optional(),
@@ -107,9 +139,12 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
107
139
  attestationPropagationTime: z.number().optional(),
108
140
  skipCollectingAttestations: z.boolean().optional(),
109
141
  skipInvalidateBlockAsProposer: z.boolean().optional(),
142
+ skipWaitForValidParentCheckpointOnL1: z.boolean().optional(),
110
143
  secondsBeforeInvalidatingBlockAsCommitteeMember: z.number(),
111
144
  secondsBeforeInvalidatingBlockAsNonCommitteeMember: z.number(),
112
145
  broadcastInvalidBlockProposal: z.boolean().optional(),
146
+ invalidBlockProposalIndexWithinCheckpoint: z.number().int().nonnegative().optional(),
147
+ broadcastInvalidCheckpointProposalOnly: z.boolean().optional(),
113
148
  injectFakeAttestation: z.boolean().optional(),
114
149
  injectHighSValueAttestation: z.boolean().optional(),
115
150
  injectUnrecoverableSignatureAttestation: z.boolean().optional(),
@@ -121,6 +156,9 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
121
156
  skipPushProposedBlocksToArchiver: z.boolean().optional(),
122
157
  minBlocksForCheckpoint: z.number().positive().optional(),
123
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(),
124
162
  }),
125
163
  );
126
164
 
@@ -136,13 +174,17 @@ type SequencerConfigOptionalKeys =
136
174
  | 'fakeThrowAfterProcessingTxCount'
137
175
  | 'l1PublishingTime'
138
176
  | 'txPublicSetupAllowListExtend'
177
+ | 'invalidBlockProposalIndexWithinCheckpoint'
139
178
  | 'minValidTxsPerBlock'
140
179
  | 'minBlocksForCheckpoint'
141
180
  | 'maxTxsPerBlock'
142
181
  | 'maxTxsPerCheckpoint'
143
182
  | 'maxL2BlockGas'
144
183
  | 'maxDABlockGas'
145
- | 'perBlockAllocationMultiplier';
184
+ | 'redistributeCheckpointBudget'
185
+ | 'skipBroadcastProposals'
186
+ | 'skipBroadcastCheckpointProposal'
187
+ | 'pauseProposingForSlots';
146
188
 
147
189
  export type ResolvedSequencerConfig = Prettify<
148
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,54 +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
- * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
20
- * 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.
21
18
  */
22
- getPrivateLogsByTags(tags: SiloedTag[], page?: number): Promise<TxScopedL2Log[][]>;
19
+ getPrivateLogsByTags(query: PrivateLogsQuery): Promise<LogResult[][]>;
23
20
 
24
21
  /**
25
- * Gets public logs that match any of the `tags` from the specified contract. For each tag, an array of matching
26
- * logs is returned. An empty array implies no logs match that tag.
27
- * @param contractAddress - The contract address to search logs for.
28
- * @param tags - The tags to search for.
29
- * @param page - The page number (0-indexed) for pagination.
30
- * @returns An array of log arrays, one per tag. Returns at most 10 logs per tag per page. If 10 logs are returned
31
- * 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.
32
24
  */
33
- getPublicLogsByTagsFromContract(
34
- contractAddress: AztecAddress,
35
- tags: Tag[],
36
- page?: number,
37
- ): Promise<TxScopedL2Log[][]>;
38
-
39
- /**
40
- * Gets public logs based on the provided filter.
41
- * @param filter - The filter to apply to the logs.
42
- * @returns The requested logs.
43
- */
44
- getPublicLogs(filter: LogFilter): Promise<GetPublicLogsResponse>;
45
-
46
- /**
47
- * Gets contract class logs based on the provided filter.
48
- * @param filter - The filter to apply to the logs.
49
- * @returns The requested logs.
50
- */
51
- getContractClassLogs(filter: LogFilter): Promise<GetContractClassLogsResponse>;
25
+ getPublicLogsByTags(query: PublicLogsQuery): Promise<LogResult[][]>;
52
26
 
53
27
  /**
54
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];
@@ -225,30 +226,20 @@ export interface MerkleTreeReadOperations {
225
226
  }
226
227
 
227
228
  export interface MerkleTreeCheckpointOperations {
228
- /**
229
- * Checkpoints the current fork state
230
- */
231
- createCheckpoint(): Promise<void>;
229
+ /** Checkpoints the current fork state. Returns the depth of the new checkpoint. */
230
+ createCheckpoint(): Promise<number>;
232
231
 
233
- /**
234
- * Commits the current checkpoint
235
- */
232
+ /** Commits the current checkpoint. */
236
233
  commitCheckpoint(): Promise<void>;
237
234
 
238
- /**
239
- * Reverts the current checkpoint
240
- */
235
+ /** Reverts the current checkpoint. */
241
236
  revertCheckpoint(): Promise<void>;
242
237
 
243
- /**
244
- * Commits all checkpoints
245
- */
246
- commitAllCheckpoints(): Promise<void>;
238
+ /** Commits all checkpoints above the given depth, leaving checkpoint depth at the given value. */
239
+ commitAllCheckpointsTo(depth: number): Promise<void>;
247
240
 
248
- /**
249
- * Reverts all checkpoints
250
- */
251
- revertAllCheckpoints(): Promise<void>;
241
+ /** Reverts all checkpoints above the given depth, leaving checkpoint depth at the given value. */
242
+ revertAllCheckpointsTo(depth: number): Promise<void>;
252
243
  }
253
244
 
254
245
  export interface MerkleTreeWriteOperations
@@ -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
  };