@aztec/stdlib 0.0.1-commit.96dac018d → 0.0.1-commit.993d240

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 (941) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +7 -25
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_selector.d.ts +3 -6
  26. package/dest/abi/function_selector.d.ts.map +1 -1
  27. package/dest/abi/function_selector.js +2 -4
  28. package/dest/abi/function_signature_decoder.d.ts +43 -0
  29. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  30. package/dest/abi/function_signature_decoder.js +66 -0
  31. package/dest/abi/index.d.ts +2 -1
  32. package/dest/abi/index.d.ts.map +1 -1
  33. package/dest/abi/index.js +1 -0
  34. package/dest/abi/note_selector.d.ts +4 -7
  35. package/dest/abi/note_selector.d.ts.map +1 -1
  36. package/dest/abi/note_selector.js +1 -3
  37. package/dest/abi/selector.d.ts +2 -2
  38. package/dest/abi/selector.d.ts.map +1 -1
  39. package/dest/abi/selector.js +1 -1
  40. package/dest/abi/utils.d.ts +14 -1
  41. package/dest/abi/utils.d.ts.map +1 -1
  42. package/dest/abi/utils.js +16 -1
  43. package/dest/auth_witness/auth_witness.d.ts +2 -2
  44. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  45. package/dest/avm/avm.d.ts +1756 -10463
  46. package/dest/avm/avm.d.ts.map +1 -1
  47. package/dest/avm/avm.js +6 -3
  48. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  49. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  50. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  51. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  52. package/dest/avm/avm_proving_request.d.ts +653 -5446
  53. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  54. package/dest/avm/message_pack.js +12 -3
  55. package/dest/avm/public_data_write.d.ts +6 -12
  56. package/dest/avm/public_data_write.d.ts.map +1 -1
  57. package/dest/avm/revert_code.d.ts +6 -7
  58. package/dest/avm/revert_code.d.ts.map +1 -1
  59. package/dest/avm/revert_code.js +13 -21
  60. package/dest/aztec-address/index.d.ts +8 -8
  61. package/dest/aztec-address/index.d.ts.map +1 -1
  62. package/dest/aztec-address/index.js +9 -6
  63. package/dest/block/attestation_info.d.ts +3 -2
  64. package/dest/block/attestation_info.d.ts.map +1 -1
  65. package/dest/block/attestation_info.js +7 -5
  66. package/dest/block/block_data.d.ts +13 -38
  67. package/dest/block/block_data.d.ts.map +1 -1
  68. package/dest/block/block_data.js +2 -2
  69. package/dest/block/block_hash.d.ts +11 -10
  70. package/dest/block/block_hash.d.ts.map +1 -1
  71. package/dest/block/block_hash.js +10 -9
  72. package/dest/block/block_parameter.d.ts +37 -4
  73. package/dest/block/block_parameter.d.ts.map +1 -1
  74. package/dest/block/block_parameter.js +53 -2
  75. package/dest/block/in_block.d.ts +5 -24
  76. package/dest/block/in_block.d.ts.map +1 -1
  77. package/dest/block/index.d.ts +1 -2
  78. package/dest/block/index.d.ts.map +1 -1
  79. package/dest/block/index.js +0 -1
  80. package/dest/block/l2_block.d.ts +21 -41
  81. package/dest/block/l2_block.d.ts.map +1 -1
  82. package/dest/block/l2_block.js +12 -2
  83. package/dest/block/l2_block_info.d.ts +10 -29
  84. package/dest/block/l2_block_info.d.ts.map +1 -1
  85. package/dest/block/l2_block_info.js +6 -5
  86. package/dest/block/l2_block_source.d.ts +204 -351
  87. package/dest/block/l2_block_source.d.ts.map +1 -1
  88. package/dest/block/l2_block_source.js +67 -1
  89. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  90. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  91. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  92. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  93. package/dest/block/l2_block_stream/l2_block_stream.js +49 -12
  94. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  95. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  97. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  98. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  100. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  101. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  102. package/dest/block/proposal/attestations_and_signers.js +26 -18
  103. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  104. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  105. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  106. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  107. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  108. package/dest/checkpoint/checkpoint.d.ts +31 -96
  109. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  110. package/dest/checkpoint/checkpoint.js +18 -5
  111. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  112. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  113. package/dest/checkpoint/checkpoint_data.js +12 -0
  114. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  115. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  116. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  117. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  118. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  119. package/dest/checkpoint/digest.d.ts +18 -0
  120. package/dest/checkpoint/digest.d.ts.map +1 -0
  121. package/dest/checkpoint/digest.js +12 -0
  122. package/dest/checkpoint/index.d.ts +5 -1
  123. package/dest/checkpoint/index.d.ts.map +1 -1
  124. package/dest/checkpoint/index.js +4 -0
  125. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  126. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  127. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  128. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  129. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  130. package/dest/checkpoint/validate.d.ts +36 -0
  131. package/dest/checkpoint/validate.d.ts.map +1 -0
  132. package/dest/checkpoint/validate.js +120 -0
  133. package/dest/config/chain-config.d.ts +4 -9
  134. package/dest/config/chain-config.d.ts.map +1 -1
  135. package/dest/config/chain-config.js +13 -12
  136. package/dest/config/index.d.ts +2 -1
  137. package/dest/config/index.d.ts.map +1 -1
  138. package/dest/config/index.js +1 -0
  139. package/dest/config/pipelining-config.d.ts +15 -0
  140. package/dest/config/pipelining-config.d.ts.map +1 -0
  141. package/dest/config/pipelining-config.js +18 -0
  142. package/dest/config/sequencer-config.d.ts +7 -3
  143. package/dest/config/sequencer-config.d.ts.map +1 -1
  144. package/dest/config/sequencer-config.js +23 -3
  145. package/dest/contract/complete_address.d.ts +3 -2
  146. package/dest/contract/complete_address.d.ts.map +1 -1
  147. package/dest/contract/complete_address.js +6 -2
  148. package/dest/contract/contract_address.d.ts +6 -6
  149. package/dest/contract/contract_address.d.ts.map +1 -1
  150. package/dest/contract/contract_address.js +6 -5
  151. package/dest/contract/contract_class_id.d.ts +2 -2
  152. package/dest/contract/contract_class_id.js +2 -2
  153. package/dest/contract/contract_deployment_data.d.ts +15 -61
  154. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  155. package/dest/contract/contract_instance.d.ts +4 -2
  156. package/dest/contract/contract_instance.d.ts.map +1 -1
  157. package/dest/contract/contract_instance.js +10 -3
  158. package/dest/contract/index.d.ts +1 -3
  159. package/dest/contract/index.d.ts.map +1 -1
  160. package/dest/contract/index.js +0 -2
  161. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  162. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  163. package/dest/contract/interfaces/contract_class.js +1 -28
  164. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  165. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  166. package/dest/contract/interfaces/contract_instance.js +4 -2
  167. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  168. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  169. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  170. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  171. package/dest/contract/private_function.d.ts +1 -1
  172. package/dest/contract/private_function.d.ts.map +1 -1
  173. package/dest/contract/private_function.js +2 -4
  174. package/dest/database-version/database_version.d.ts +5 -11
  175. package/dest/database-version/database_version.d.ts.map +1 -1
  176. package/dest/database-version/version_manager.d.ts +6 -2
  177. package/dest/database-version/version_manager.d.ts.map +1 -1
  178. package/dest/database-version/version_manager.js +12 -1
  179. package/dest/epoch-helpers/index.d.ts +12 -20
  180. package/dest/epoch-helpers/index.d.ts.map +1 -1
  181. package/dest/epoch-helpers/index.js +16 -2
  182. package/dest/file-store/factory.d.ts +4 -3
  183. package/dest/file-store/factory.d.ts.map +1 -1
  184. package/dest/file-store/factory.js +2 -2
  185. package/dest/file-store/http.d.ts +9 -2
  186. package/dest/file-store/http.d.ts.map +1 -1
  187. package/dest/file-store/http.js +20 -9
  188. package/dest/file-store/index.d.ts +2 -1
  189. package/dest/file-store/index.d.ts.map +1 -1
  190. package/dest/gas/fee_math.d.ts +49 -0
  191. package/dest/gas/fee_math.d.ts.map +1 -0
  192. package/dest/gas/fee_math.js +80 -0
  193. package/dest/gas/gas.d.ts +9 -14
  194. package/dest/gas/gas.d.ts.map +1 -1
  195. package/dest/gas/gas.js +6 -3
  196. package/dest/gas/gas_fees.d.ts +13 -14
  197. package/dest/gas/gas_fees.d.ts.map +1 -1
  198. package/dest/gas/gas_fees.js +20 -4
  199. package/dest/gas/gas_settings.d.ts +66 -86
  200. package/dest/gas/gas_settings.d.ts.map +1 -1
  201. package/dest/gas/gas_settings.js +56 -9
  202. package/dest/gas/index.d.ts +2 -1
  203. package/dest/gas/index.d.ts.map +1 -1
  204. package/dest/gas/index.js +1 -0
  205. package/dest/ha-signing/config.d.ts +28 -57
  206. package/dest/ha-signing/config.d.ts.map +1 -1
  207. package/dest/ha-signing/config.js +24 -28
  208. package/dest/ha-signing/index.d.ts +4 -3
  209. package/dest/ha-signing/index.d.ts.map +1 -1
  210. package/dest/ha-signing/index.js +3 -2
  211. package/dest/ha-signing/local_config.d.ts +32 -0
  212. package/dest/ha-signing/local_config.d.ts.map +1 -0
  213. package/dest/ha-signing/local_config.js +24 -0
  214. package/dest/ha-signing/types.d.ts +37 -32
  215. package/dest/ha-signing/types.d.ts.map +1 -1
  216. package/dest/ha-signing/types.js +13 -6
  217. package/dest/hash/hash.d.ts +34 -1
  218. package/dest/hash/hash.d.ts.map +1 -1
  219. package/dest/hash/hash.js +63 -2
  220. package/dest/interfaces/allowed_element.d.ts +17 -35
  221. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  222. package/dest/interfaces/allowed_element.js +8 -8
  223. package/dest/interfaces/api_limit.d.ts +1 -1
  224. package/dest/interfaces/api_limit.js +1 -1
  225. package/dest/interfaces/archiver.d.ts +22 -32
  226. package/dest/interfaces/archiver.d.ts.map +1 -1
  227. package/dest/interfaces/archiver.js +208 -68
  228. package/dest/interfaces/aztec-node-admin.d.ts +81 -273
  229. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  230. package/dest/interfaces/aztec-node-admin.js +59 -16
  231. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  232. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  233. package/dest/interfaces/aztec-node-debug.js +21 -0
  234. package/dest/interfaces/aztec-node.d.ts +84 -101
  235. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  236. package/dest/interfaces/aztec-node.js +298 -68
  237. package/dest/interfaces/block-builder.d.ts +40 -11
  238. package/dest/interfaces/block-builder.d.ts.map +1 -1
  239. package/dest/interfaces/block-builder.js +13 -6
  240. package/dest/interfaces/block_response.d.ts +90 -0
  241. package/dest/interfaces/block_response.d.ts.map +1 -0
  242. package/dest/interfaces/block_response.js +30 -0
  243. package/dest/interfaces/chain_tips.d.ts +50 -0
  244. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  245. package/dest/interfaces/chain_tips.js +11 -0
  246. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  247. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  248. package/dest/interfaces/checkpoint_parameter.js +18 -0
  249. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  250. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  251. package/dest/interfaces/checkpoint_response.js +26 -0
  252. package/dest/interfaces/client.d.ts +8 -2
  253. package/dest/interfaces/client.d.ts.map +1 -1
  254. package/dest/interfaces/client.js +7 -1
  255. package/dest/interfaces/configs.d.ts +64 -123
  256. package/dest/interfaces/configs.d.ts.map +1 -1
  257. package/dest/interfaces/configs.js +15 -3
  258. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  259. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  260. package/dest/interfaces/l1_publish_info.js +26 -0
  261. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  262. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  263. package/dest/interfaces/l2_logs_source.js +5 -0
  264. package/dest/interfaces/merkle_tree_operations.d.ts +12 -21
  265. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  266. package/dest/interfaces/p2p-bootstrap.js +8 -2
  267. package/dest/interfaces/p2p.d.ts +17 -12
  268. package/dest/interfaces/p2p.d.ts.map +1 -1
  269. package/dest/interfaces/p2p.js +28 -5
  270. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  271. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  272. package/dest/interfaces/prover-agent.d.ts +5 -23
  273. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  274. package/dest/interfaces/prover-agent.js +4 -1
  275. package/dest/interfaces/prover-client.d.ts +9 -25
  276. package/dest/interfaces/prover-client.d.ts.map +1 -1
  277. package/dest/interfaces/prover-client.js +7 -4
  278. package/dest/interfaces/prover-node.js +22 -8
  279. package/dest/interfaces/proving-job-source.js +24 -4
  280. package/dest/interfaces/proving-job.d.ts +742 -5793
  281. package/dest/interfaces/proving-job.d.ts.map +1 -1
  282. package/dest/interfaces/proving-job.js +1 -1
  283. package/dest/interfaces/public_storage_override.d.ts +22 -0
  284. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  285. package/dest/interfaces/public_storage_override.js +7 -0
  286. package/dest/interfaces/server.d.ts +6 -1
  287. package/dest/interfaces/server.d.ts.map +1 -1
  288. package/dest/interfaces/server.js +5 -0
  289. package/dest/interfaces/slasher.d.ts +25 -65
  290. package/dest/interfaces/slasher.d.ts.map +1 -1
  291. package/dest/interfaces/slasher.js +8 -4
  292. package/dest/interfaces/tx_provider.d.ts +6 -1
  293. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  294. package/dest/interfaces/validator.d.ts +70 -208
  295. package/dest/interfaces/validator.d.ts.map +1 -1
  296. package/dest/interfaces/validator.js +13 -5
  297. package/dest/interfaces/world_state.d.ts +6 -5
  298. package/dest/interfaces/world_state.d.ts.map +1 -1
  299. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  300. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  301. package/dest/kernel/hints/key_validation_request.js +20 -18
  302. package/dest/kernel/index.d.ts +5 -1
  303. package/dest/kernel/index.d.ts.map +1 -1
  304. package/dest/kernel/index.js +4 -0
  305. package/dest/kernel/log_hash.d.ts +6 -2
  306. package/dest/kernel/log_hash.d.ts.map +1 -1
  307. package/dest/kernel/log_hash.js +21 -9
  308. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  309. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  310. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  311. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  312. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  313. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  314. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  315. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  316. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  317. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  318. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  319. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  320. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  321. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  322. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  323. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  324. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  325. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  326. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +10 -6
  327. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  328. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +26 -7
  329. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  330. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  331. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  332. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  333. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  334. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  335. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  336. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  338. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  339. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  340. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  341. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  342. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  343. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  344. package/dest/kernel/public_call_request.d.ts +15 -30
  345. package/dest/kernel/public_call_request.d.ts.map +1 -1
  346. package/dest/kernel/public_call_request.js +16 -7
  347. package/dest/keys/derivation.d.ts +6 -2
  348. package/dest/keys/derivation.d.ts.map +1 -1
  349. package/dest/keys/derivation.js +16 -6
  350. package/dest/keys/public_key.d.ts +22 -3
  351. package/dest/keys/public_key.d.ts.map +1 -1
  352. package/dest/keys/public_key.js +20 -1
  353. package/dest/keys/public_keys.d.ts +55 -82
  354. package/dest/keys/public_keys.d.ts.map +1 -1
  355. package/dest/keys/public_keys.js +102 -74
  356. package/dest/kv-store/config.d.ts +14 -0
  357. package/dest/kv-store/config.d.ts.map +1 -0
  358. package/dest/kv-store/config.js +21 -0
  359. package/dest/kv-store/index.d.ts +2 -0
  360. package/dest/kv-store/index.d.ts.map +1 -0
  361. package/dest/kv-store/index.js +1 -0
  362. package/dest/l1-contracts/index.d.ts +2 -2
  363. package/dest/l1-contracts/index.d.ts.map +1 -1
  364. package/dest/l1-contracts/index.js +1 -1
  365. package/dest/logs/app_tagging_secret.d.ts +46 -0
  366. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  367. package/dest/logs/app_tagging_secret.js +109 -0
  368. package/dest/logs/app_tagging_secret_kind.d.ts +6 -0
  369. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  370. package/dest/logs/app_tagging_secret_kind.js +4 -0
  371. package/dest/logs/contract_class_log.d.ts +16 -34
  372. package/dest/logs/contract_class_log.d.ts.map +1 -1
  373. package/dest/logs/contract_class_log.js +11 -9
  374. package/dest/logs/index.d.ts +8 -7
  375. package/dest/logs/index.d.ts.map +1 -1
  376. package/dest/logs/index.js +7 -6
  377. package/dest/logs/log_cursor.d.ts +51 -0
  378. package/dest/logs/log_cursor.d.ts.map +1 -0
  379. package/dest/logs/log_cursor.js +82 -0
  380. package/dest/logs/log_result.d.ts +54 -0
  381. package/dest/logs/log_result.d.ts.map +1 -0
  382. package/dest/logs/log_result.js +56 -0
  383. package/dest/logs/logs_query.d.ts +82 -0
  384. package/dest/logs/logs_query.d.ts.map +1 -0
  385. package/dest/logs/logs_query.js +50 -0
  386. package/dest/logs/message_context.d.ts +4 -7
  387. package/dest/logs/message_context.d.ts.map +1 -1
  388. package/dest/logs/message_context.js +23 -9
  389. package/dest/logs/pending_tagged_log.d.ts +2 -3
  390. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  391. package/dest/logs/pending_tagged_log.js +2 -2
  392. package/dest/logs/pre_tag.d.ts +14 -22
  393. package/dest/logs/pre_tag.d.ts.map +1 -1
  394. package/dest/logs/pre_tag.js +2 -2
  395. package/dest/logs/private_log.d.ts +7 -12
  396. package/dest/logs/private_log.d.ts.map +1 -1
  397. package/dest/logs/private_log.js +6 -3
  398. package/dest/logs/public_log.d.ts +4 -3
  399. package/dest/logs/public_log.d.ts.map +1 -1
  400. package/dest/logs/public_log.js +2 -1
  401. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  402. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  403. package/dest/logs/query_all_logs_by_tags.js +64 -0
  404. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  405. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  406. package/dest/logs/shared_secret_derivation.js +15 -9
  407. package/dest/logs/siloed_tag.d.ts +12 -9
  408. package/dest/logs/siloed_tag.d.ts.map +1 -1
  409. package/dest/logs/siloed_tag.js +17 -2
  410. package/dest/logs/tag.d.ts +5 -6
  411. package/dest/logs/tag.d.ts.map +1 -1
  412. package/dest/logs/tag.js +5 -1
  413. package/dest/logs/tagging_index_range.d.ts +22 -0
  414. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  415. package/dest/logs/tagging_index_range.js +8 -0
  416. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  417. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  418. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  419. package/dest/messaging/index.d.ts +2 -1
  420. package/dest/messaging/index.d.ts.map +1 -1
  421. package/dest/messaging/index.js +1 -0
  422. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  423. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  424. package/dest/messaging/l1_to_l2_message.js +11 -13
  425. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  426. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  427. package/dest/messaging/l2_to_l1_membership.d.ts +62 -6
  428. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  429. package/dest/messaging/l2_to_l1_membership.js +115 -27
  430. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  431. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  432. package/dest/messaging/l2_to_l1_message.js +21 -12
  433. package/dest/noir/index.d.ts +5 -3
  434. package/dest/noir/index.d.ts.map +1 -1
  435. package/dest/note/note.d.ts +2 -2
  436. package/dest/note/note.d.ts.map +1 -1
  437. package/dest/note/note_dao.d.ts +1 -1
  438. package/dest/note/note_dao.d.ts.map +1 -1
  439. package/dest/note/note_dao.js +1 -4
  440. package/dest/p2p/block_proposal.d.ts +31 -14
  441. package/dest/p2p/block_proposal.d.ts.map +1 -1
  442. package/dest/p2p/block_proposal.js +57 -39
  443. package/dest/p2p/checkpoint_attestation.d.ts +15 -9
  444. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  445. package/dest/p2p/checkpoint_attestation.js +23 -24
  446. package/dest/p2p/checkpoint_proposal.d.ts +35 -21
  447. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  448. package/dest/p2p/checkpoint_proposal.js +59 -61
  449. package/dest/p2p/client_type.d.ts +2 -5
  450. package/dest/p2p/client_type.d.ts.map +1 -1
  451. package/dest/p2p/client_type.js +0 -7
  452. package/dest/p2p/consensus_payload.d.ts +26 -20
  453. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  454. package/dest/p2p/consensus_payload.js +38 -19
  455. package/dest/p2p/gossipable.d.ts +4 -4
  456. package/dest/p2p/gossipable.d.ts.map +1 -1
  457. package/dest/p2p/index.d.ts +1 -2
  458. package/dest/p2p/index.d.ts.map +1 -1
  459. package/dest/p2p/index.js +0 -1
  460. package/dest/p2p/peer_error.d.ts +3 -1
  461. package/dest/p2p/peer_error.d.ts.map +1 -1
  462. package/dest/p2p/peer_error.js +5 -0
  463. package/dest/p2p/signature_utils.d.ts +28 -19
  464. package/dest/p2p/signature_utils.d.ts.map +1 -1
  465. package/dest/p2p/signature_utils.js +118 -21
  466. package/dest/p2p/signed_txs.d.ts +15 -13
  467. package/dest/p2p/signed_txs.d.ts.map +1 -1
  468. package/dest/p2p/signed_txs.js +26 -24
  469. package/dest/p2p/topic_type.d.ts +3 -4
  470. package/dest/p2p/topic_type.d.ts.map +1 -1
  471. package/dest/p2p/topic_type.js +7 -24
  472. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  473. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  474. package/dest/parity/parity_base_private_inputs.js +7 -5
  475. package/dest/parity/parity_public_inputs.d.ts +8 -4
  476. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  477. package/dest/parity/parity_public_inputs.js +6 -3
  478. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  479. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  480. package/dest/proofs/chonk_proof.d.ts +57 -7
  481. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  482. package/dest/proofs/chonk_proof.js +112 -15
  483. package/dest/proofs/recursive_proof.d.ts +2 -2
  484. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  485. package/dest/rollup/block_headers_hash.d.ts +1 -1
  486. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  487. package/dest/rollup/block_headers_hash.js +8 -2
  488. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  489. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  490. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  491. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  492. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  493. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  494. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  495. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  496. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  497. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  498. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  499. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  500. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  501. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  502. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  503. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  504. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  505. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  506. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  507. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  508. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  509. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  510. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  511. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  512. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  513. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  514. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  515. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  516. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  517. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  518. package/dest/schemas/schemas.d.ts +32 -78
  519. package/dest/schemas/schemas.d.ts.map +1 -1
  520. package/dest/schemas/schemas.js +2 -2
  521. package/dest/slashing/helpers.d.ts +2 -2
  522. package/dest/slashing/helpers.d.ts.map +1 -1
  523. package/dest/slashing/helpers.js +10 -7
  524. package/dest/slashing/index.d.ts +2 -3
  525. package/dest/slashing/index.d.ts.map +1 -1
  526. package/dest/slashing/index.js +1 -2
  527. package/dest/slashing/serialization.d.ts +2 -6
  528. package/dest/slashing/serialization.d.ts.map +1 -1
  529. package/dest/slashing/serialization.js +0 -60
  530. package/dest/slashing/types.d.ts +18 -112
  531. package/dest/slashing/types.d.ts.map +1 -1
  532. package/dest/slashing/types.js +16 -24
  533. package/dest/slashing/{tally.d.ts → votes.d.ts} +7 -2
  534. package/dest/slashing/votes.d.ts.map +1 -0
  535. package/dest/slashing/{tally.js → votes.js} +30 -2
  536. package/dest/snapshots/types.d.ts +15 -78
  537. package/dest/snapshots/types.d.ts.map +1 -1
  538. package/dest/stats/stats.d.ts +2 -2
  539. package/dest/stats/stats.d.ts.map +1 -1
  540. package/dest/tests/factories.d.ts +25 -30
  541. package/dest/tests/factories.d.ts.map +1 -1
  542. package/dest/tests/factories.js +84 -76
  543. package/dest/tests/mocks.d.ts +11 -6
  544. package/dest/tests/mocks.d.ts.map +1 -1
  545. package/dest/tests/mocks.js +55 -62
  546. package/dest/timetable/index.d.ts +51 -1
  547. package/dest/timetable/index.d.ts.map +1 -1
  548. package/dest/timetable/index.js +218 -14
  549. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  550. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  551. package/dest/trees/append_only_tree_snapshot.js +6 -3
  552. package/dest/trees/nullifier_leaf.d.ts +19 -42
  553. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  554. package/dest/trees/nullifier_leaf.js +3 -0
  555. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  556. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  557. package/dest/trees/nullifier_membership_witness.js +2 -14
  558. package/dest/trees/public_data_leaf.d.ts +21 -53
  559. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  560. package/dest/trees/public_data_witness.d.ts +16 -58
  561. package/dest/trees/public_data_witness.d.ts.map +1 -1
  562. package/dest/tx/block_header.d.ts +7 -4
  563. package/dest/tx/block_header.d.ts.map +1 -1
  564. package/dest/tx/block_header.js +11 -4
  565. package/dest/tx/call_context.d.ts +4 -14
  566. package/dest/tx/call_context.d.ts.map +1 -1
  567. package/dest/tx/capsule.d.ts +7 -3
  568. package/dest/tx/capsule.d.ts.map +1 -1
  569. package/dest/tx/capsule.js +9 -3
  570. package/dest/tx/fee_provider.d.ts +10 -0
  571. package/dest/tx/fee_provider.d.ts.map +1 -0
  572. package/dest/tx/fee_provider.js +1 -0
  573. package/dest/tx/function_data.d.ts +4 -10
  574. package/dest/tx/function_data.d.ts.map +1 -1
  575. package/dest/tx/global_variable_builder.d.ts +3 -4
  576. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  577. package/dest/tx/global_variables.d.ts +16 -49
  578. package/dest/tx/global_variables.d.ts.map +1 -1
  579. package/dest/tx/global_variables.js +8 -12
  580. package/dest/tx/hashed_values.d.ts +4 -3
  581. package/dest/tx/hashed_values.d.ts.map +1 -1
  582. package/dest/tx/hashed_values.js +6 -3
  583. package/dest/tx/in_tx.d.ts +5 -17
  584. package/dest/tx/in_tx.d.ts.map +1 -1
  585. package/dest/tx/index.d.ts +2 -1
  586. package/dest/tx/index.d.ts.map +1 -1
  587. package/dest/tx/index.js +1 -0
  588. package/dest/tx/indexed_tx_effect.d.ts +4 -18
  589. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  590. package/dest/tx/indexed_tx_effect.js +1 -2
  591. package/dest/tx/partial_state_reference.d.ts +22 -65
  592. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  593. package/dest/tx/partial_state_reference.js +6 -3
  594. package/dest/tx/private_execution_result.d.ts +11 -21
  595. package/dest/tx/private_execution_result.d.ts.map +1 -1
  596. package/dest/tx/private_execution_result.js +6 -6
  597. package/dest/tx/profiling.d.ts +67 -353
  598. package/dest/tx/profiling.d.ts.map +1 -1
  599. package/dest/tx/profiling.js +17 -7
  600. package/dest/tx/protocol_contracts.d.ts +5 -9
  601. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  602. package/dest/tx/proven_tx.d.ts +30 -74
  603. package/dest/tx/proven_tx.d.ts.map +1 -1
  604. package/dest/tx/proven_tx.js +6 -0
  605. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  606. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  607. package/dest/tx/public_call_request_with_calldata.js +6 -3
  608. package/dest/tx/simulated_tx.d.ts +68 -1144
  609. package/dest/tx/simulated_tx.d.ts.map +1 -1
  610. package/dest/tx/simulated_tx.js +17 -12
  611. package/dest/tx/state_reference.d.ts +30 -117
  612. package/dest/tx/state_reference.d.ts.map +1 -1
  613. package/dest/tx/state_reference.js +6 -4
  614. package/dest/tx/tree_snapshots.d.ts +27 -84
  615. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  616. package/dest/tx/tree_snapshots.js +6 -4
  617. package/dest/tx/tx.d.ts +12 -17
  618. package/dest/tx/tx.d.ts.map +1 -1
  619. package/dest/tx/tx.js +40 -29
  620. package/dest/tx/tx_constant_data.d.ts +4 -3
  621. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  622. package/dest/tx/tx_constant_data.js +6 -3
  623. package/dest/tx/tx_context.d.ts +32 -131
  624. package/dest/tx/tx_context.d.ts.map +1 -1
  625. package/dest/tx/tx_context.js +6 -6
  626. package/dest/tx/tx_hash.d.ts +6 -4
  627. package/dest/tx/tx_hash.d.ts.map +1 -1
  628. package/dest/tx/tx_hash.js +13 -5
  629. package/dest/tx/tx_receipt.d.ts +8 -5
  630. package/dest/tx/tx_receipt.d.ts.map +1 -1
  631. package/dest/tx/tx_receipt.js +8 -18
  632. package/dest/tx/validator/error_texts.d.ts +9 -1
  633. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  634. package/dest/tx/validator/error_texts.js +10 -0
  635. package/dest/tx/validator/tx_validator.d.ts +5 -27
  636. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  637. package/dest/tx/validator/tx_validator.js +0 -4
  638. package/dest/types/shared.d.ts +4 -12
  639. package/dest/types/shared.d.ts.map +1 -1
  640. package/dest/types/shared.js +6 -12
  641. package/dest/update-checker/dev_version.d.ts +3 -0
  642. package/dest/update-checker/dev_version.d.ts.map +1 -0
  643. package/dest/update-checker/dev_version.js +1 -0
  644. package/dest/update-checker/index.d.ts +4 -2
  645. package/dest/update-checker/index.d.ts.map +1 -1
  646. package/dest/update-checker/index.js +3 -1
  647. package/dest/update-checker/package_version.d.ts +6 -0
  648. package/dest/update-checker/package_version.d.ts.map +1 -0
  649. package/dest/update-checker/package_version.js +13 -0
  650. package/dest/update-checker/version_checker.d.ts +25 -0
  651. package/dest/update-checker/version_checker.d.ts.map +1 -0
  652. package/dest/update-checker/version_checker.js +50 -0
  653. package/dest/validators/errors.d.ts +6 -1
  654. package/dest/validators/errors.d.ts.map +1 -1
  655. package/dest/validators/errors.js +7 -0
  656. package/dest/validators/schemas.d.ts +147 -614
  657. package/dest/validators/schemas.d.ts.map +1 -1
  658. package/dest/validators/schemas.js +6 -4
  659. package/dest/validators/types.d.ts +20 -3
  660. package/dest/validators/types.d.ts.map +1 -1
  661. package/dest/versioning/versioning.d.ts +4 -2
  662. package/dest/versioning/versioning.d.ts.map +1 -1
  663. package/dest/versioning/versioning.js +5 -2
  664. package/dest/vks/verification_key.d.ts +4 -139
  665. package/dest/vks/verification_key.d.ts.map +1 -1
  666. package/dest/vks/verification_key.js +5 -126
  667. package/dest/world-state/genesis_data.d.ts +13 -0
  668. package/dest/world-state/genesis_data.d.ts.map +1 -0
  669. package/dest/world-state/genesis_data.js +7 -0
  670. package/dest/world-state/index.d.ts +2 -1
  671. package/dest/world-state/index.d.ts.map +1 -1
  672. package/dest/world-state/index.js +1 -0
  673. package/dest/world-state/world_state_revision.d.ts +15 -26
  674. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  675. package/dest/world-state/world_state_revision.js +7 -1
  676. package/package.json +14 -12
  677. package/src/abi/abi.ts +78 -21
  678. package/src/abi/authorization_selector.ts +2 -8
  679. package/src/abi/buffer.ts +25 -4
  680. package/src/abi/contract_artifact.ts +11 -6
  681. package/src/abi/decoder.ts +36 -82
  682. package/src/abi/encoder.ts +85 -6
  683. package/src/abi/event_metadata_definition.ts +2 -0
  684. package/src/abi/event_selector.ts +2 -8
  685. package/src/abi/function_selector.ts +4 -13
  686. package/src/abi/function_signature_decoder.ts +77 -0
  687. package/src/abi/index.ts +1 -0
  688. package/src/abi/note_selector.ts +3 -12
  689. package/src/abi/selector.ts +1 -1
  690. package/src/abi/utils.ts +31 -4
  691. package/src/avm/avm.ts +5 -0
  692. package/src/avm/message_pack.ts +12 -3
  693. package/src/avm/revert_code.ts +20 -25
  694. package/src/aztec-address/index.ts +15 -12
  695. package/src/block/attestation_info.ts +11 -11
  696. package/src/block/block_data.ts +3 -4
  697. package/src/block/block_hash.ts +21 -14
  698. package/src/block/block_parameter.ts +72 -4
  699. package/src/block/index.ts +0 -1
  700. package/src/block/l2_block.ts +13 -1
  701. package/src/block/l2_block_info.ts +8 -6
  702. package/src/block/l2_block_source.ts +198 -139
  703. package/src/block/l2_block_stream/interfaces.ts +6 -2
  704. package/src/block/l2_block_stream/l2_block_stream.ts +49 -17
  705. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  706. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  707. package/src/block/proposal/attestations_and_signers.ts +32 -17
  708. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  709. package/src/checkpoint/checkpoint.ts +23 -4
  710. package/src/checkpoint/checkpoint_data.ts +44 -4
  711. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  712. package/src/checkpoint/digest.ts +28 -0
  713. package/src/checkpoint/index.ts +4 -0
  714. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  715. package/src/checkpoint/validate.ts +230 -0
  716. package/src/config/chain-config.ts +13 -16
  717. package/src/config/index.ts +1 -0
  718. package/src/config/pipelining-config.ts +31 -0
  719. package/src/config/sequencer-config.ts +41 -5
  720. package/src/contract/complete_address.ts +7 -3
  721. package/src/contract/contract_address.ts +7 -7
  722. package/src/contract/contract_class_id.ts +2 -2
  723. package/src/contract/contract_instance.ts +11 -2
  724. package/src/contract/index.ts +0 -2
  725. package/src/contract/interfaces/contract_class.ts +2 -82
  726. package/src/contract/interfaces/contract_instance.ts +6 -2
  727. package/src/contract/private_function.ts +3 -1
  728. package/src/database-version/version_manager.ts +17 -0
  729. package/src/epoch-helpers/index.ts +27 -0
  730. package/src/file-store/factory.ts +13 -4
  731. package/src/file-store/http.ts +29 -10
  732. package/src/file-store/index.ts +1 -0
  733. package/src/gas/README.md +154 -0
  734. package/src/gas/fee_math.ts +120 -0
  735. package/src/gas/gas.ts +8 -3
  736. package/src/gas/gas_fees.ts +29 -10
  737. package/src/gas/gas_settings.ts +73 -15
  738. package/src/gas/index.ts +1 -0
  739. package/src/ha-signing/config.ts +56 -53
  740. package/src/ha-signing/index.ts +12 -1
  741. package/src/ha-signing/local_config.ts +46 -0
  742. package/src/ha-signing/types.ts +48 -34
  743. package/src/hash/hash.ts +63 -2
  744. package/src/interfaces/allowed_element.ts +29 -9
  745. package/src/interfaces/api_limit.ts +1 -1
  746. package/src/interfaces/archiver.ts +82 -91
  747. package/src/interfaces/aztec-node-admin.ts +35 -20
  748. package/src/interfaces/aztec-node-debug.ts +40 -0
  749. package/src/interfaces/aztec-node.ts +260 -240
  750. package/src/interfaces/block-builder.ts +62 -14
  751. package/src/interfaces/block_response.ts +92 -0
  752. package/src/interfaces/chain_tips.ts +24 -0
  753. package/src/interfaces/checkpoint_parameter.ts +20 -0
  754. package/src/interfaces/checkpoint_response.ts +84 -0
  755. package/src/interfaces/client.ts +7 -1
  756. package/src/interfaces/configs.ts +64 -8
  757. package/src/interfaces/l1_publish_info.ts +40 -0
  758. package/src/interfaces/l2_logs_source.ts +13 -39
  759. package/src/interfaces/merkle_tree_operations.ts +11 -20
  760. package/src/interfaces/p2p-bootstrap.ts +2 -2
  761. package/src/interfaces/p2p.ts +37 -28
  762. package/src/interfaces/private_kernel_prover.ts +88 -0
  763. package/src/interfaces/prover-agent.ts +1 -1
  764. package/src/interfaces/prover-client.ts +10 -5
  765. package/src/interfaces/prover-node.ts +7 -7
  766. package/src/interfaces/proving-job-source.ts +4 -4
  767. package/src/interfaces/proving-job.ts +3 -3
  768. package/src/interfaces/public_storage_override.ts +26 -0
  769. package/src/interfaces/server.ts +5 -0
  770. package/src/interfaces/slasher.ts +17 -10
  771. package/src/interfaces/tx_provider.ts +6 -0
  772. package/src/interfaces/validator.ts +79 -38
  773. package/src/interfaces/world_state.ts +5 -4
  774. package/src/kernel/hints/key_validation_request.ts +18 -16
  775. package/src/kernel/index.ts +4 -0
  776. package/src/kernel/log_hash.ts +29 -9
  777. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  778. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  779. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  780. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  781. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +38 -14
  782. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  783. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  784. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  785. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  786. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  787. package/src/kernel/public_call_request.ts +22 -7
  788. package/src/keys/derivation.ts +21 -9
  789. package/src/keys/public_key.ts +26 -2
  790. package/src/keys/public_keys.ts +124 -110
  791. package/src/kv-store/config.ts +29 -0
  792. package/src/kv-store/index.ts +1 -0
  793. package/src/l1-contracts/index.ts +1 -1
  794. package/src/logs/app_tagging_secret.ts +137 -0
  795. package/src/logs/app_tagging_secret_kind.ts +6 -0
  796. package/src/logs/contract_class_log.ts +15 -5
  797. package/src/logs/index.ts +7 -6
  798. package/src/logs/log_cursor.ts +110 -0
  799. package/src/logs/log_result.ts +104 -0
  800. package/src/logs/logs_query.ts +138 -0
  801. package/src/logs/message_context.ts +17 -7
  802. package/src/logs/pending_tagged_log.ts +1 -3
  803. package/src/logs/pre_tag.ts +3 -6
  804. package/src/logs/private_log.ts +9 -3
  805. package/src/logs/public_log.ts +4 -2
  806. package/src/logs/query_all_logs_by_tags.ts +98 -0
  807. package/src/logs/shared_secret_derivation.ts +21 -10
  808. package/src/logs/siloed_tag.ts +27 -12
  809. package/src/logs/tag.ts +9 -9
  810. package/src/logs/tagging_index_range.ts +18 -0
  811. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  812. package/src/messaging/index.ts +1 -0
  813. package/src/messaging/l1_to_l2_message.ts +12 -9
  814. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  815. package/src/messaging/l2_to_l1_membership.ts +171 -34
  816. package/src/messaging/l2_to_l1_message.ts +29 -9
  817. package/src/noir/index.ts +4 -2
  818. package/src/note/note_dao.ts +1 -4
  819. package/src/p2p/block_proposal.ts +111 -36
  820. package/src/p2p/checkpoint_attestation.ts +27 -31
  821. package/src/p2p/checkpoint_proposal.ts +126 -85
  822. package/src/p2p/client_type.ts +0 -6
  823. package/src/p2p/consensus_payload.ts +59 -28
  824. package/src/p2p/gossipable.ts +4 -4
  825. package/src/p2p/index.ts +0 -1
  826. package/src/p2p/peer_error.ts +7 -0
  827. package/src/p2p/signature_utils.ts +110 -25
  828. package/src/p2p/signed_txs.ts +46 -28
  829. package/src/p2p/topic_type.ts +8 -15
  830. package/src/parity/parity_base_private_inputs.ts +10 -4
  831. package/src/parity/parity_public_inputs.ts +9 -2
  832. package/src/proofs/chonk_proof.ts +132 -12
  833. package/src/rollup/block_headers_hash.ts +11 -2
  834. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  835. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  836. package/src/schemas/schemas.ts +6 -1
  837. package/src/slashing/helpers.ts +13 -9
  838. package/src/slashing/index.ts +1 -2
  839. package/src/slashing/serialization.ts +1 -81
  840. package/src/slashing/types.ts +24 -49
  841. package/src/slashing/{tally.ts → votes.ts} +34 -1
  842. package/src/stats/stats.ts +4 -0
  843. package/src/tests/factories.ts +106 -105
  844. package/src/tests/mocks.ts +83 -76
  845. package/src/timetable/index.ts +308 -13
  846. package/src/trees/append_only_tree_snapshot.ts +8 -3
  847. package/src/trees/nullifier_leaf.ts +4 -0
  848. package/src/trees/nullifier_membership_witness.ts +2 -12
  849. package/src/tx/block_header.ts +16 -5
  850. package/src/tx/capsule.ts +10 -2
  851. package/src/tx/fee_provider.ts +10 -0
  852. package/src/tx/global_variable_builder.ts +2 -3
  853. package/src/tx/global_variables.ts +10 -18
  854. package/src/tx/hashed_values.ts +8 -3
  855. package/src/tx/index.ts +1 -0
  856. package/src/tx/indexed_tx_effect.ts +1 -2
  857. package/src/tx/partial_state_reference.ts +8 -3
  858. package/src/tx/private_execution_result.ts +5 -5
  859. package/src/tx/profiling.ts +15 -6
  860. package/src/tx/proven_tx.ts +6 -0
  861. package/src/tx/public_call_request_with_calldata.ts +8 -3
  862. package/src/tx/simulated_tx.ts +30 -22
  863. package/src/tx/state_reference.ts +9 -4
  864. package/src/tx/tree_snapshots.ts +9 -4
  865. package/src/tx/tx.ts +53 -35
  866. package/src/tx/tx_constant_data.ts +8 -3
  867. package/src/tx/tx_context.ts +8 -3
  868. package/src/tx/tx_hash.ts +20 -5
  869. package/src/tx/tx_receipt.ts +9 -16
  870. package/src/tx/validator/error_texts.ts +12 -0
  871. package/src/tx/validator/tx_validator.ts +1 -5
  872. package/src/types/shared.ts +8 -13
  873. package/src/update-checker/dev_version.ts +2 -0
  874. package/src/update-checker/index.ts +3 -1
  875. package/src/update-checker/package_version.ts +17 -0
  876. package/src/update-checker/version_checker.ts +65 -0
  877. package/src/validators/errors.ts +9 -0
  878. package/src/validators/schemas.ts +6 -4
  879. package/src/validators/types.ts +21 -2
  880. package/src/versioning/versioning.ts +5 -2
  881. package/src/vks/verification_key.ts +5 -184
  882. package/src/world-state/genesis_data.ts +27 -0
  883. package/src/world-state/index.ts +1 -0
  884. package/src/world-state/world_state_revision.ts +9 -1
  885. package/dest/abi/mocked_keys.d.ts +0 -2
  886. package/dest/abi/mocked_keys.d.ts.map +0 -1
  887. package/dest/abi/mocked_keys.js +0 -1
  888. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  889. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  890. package/dest/block/checkpointed_l2_block.js +0 -46
  891. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  892. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  893. package/dest/contract/private_function_membership_proof.js +0 -124
  894. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  895. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  896. package/dest/contract/utility_function_membership_proof.js +0 -87
  897. package/dest/interfaces/get_logs_response.d.ts +0 -97
  898. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  899. package/dest/interfaces/get_logs_response.js +0 -12
  900. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  901. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  902. package/dest/l1-contracts/slash_factory.js +0 -158
  903. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  904. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  905. package/dest/logs/directional_app_tagging_secret.js +0 -64
  906. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  907. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  908. package/dest/logs/extended_contract_class_log.js +0 -67
  909. package/dest/logs/extended_public_log.d.ts +0 -106
  910. package/dest/logs/extended_public_log.d.ts.map +0 -1
  911. package/dest/logs/extended_public_log.js +0 -73
  912. package/dest/logs/log_filter.d.ts +0 -22
  913. package/dest/logs/log_filter.d.ts.map +0 -1
  914. package/dest/logs/log_filter.js +0 -11
  915. package/dest/logs/log_id.d.ts +0 -85
  916. package/dest/logs/log_id.d.ts.map +0 -1
  917. package/dest/logs/log_id.js +0 -94
  918. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  919. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  920. package/dest/logs/tx_scoped_l2_log.js +0 -70
  921. package/dest/slashing/empire.d.ts +0 -31
  922. package/dest/slashing/empire.d.ts.map +0 -1
  923. package/dest/slashing/empire.js +0 -87
  924. package/dest/slashing/tally.d.ts.map +0 -1
  925. package/dest/update-checker/update-checker.d.ts +0 -49
  926. package/dest/update-checker/update-checker.d.ts.map +0 -1
  927. package/dest/update-checker/update-checker.js +0 -130
  928. package/src/abi/mocked_keys.ts +0 -2
  929. package/src/block/checkpointed_l2_block.ts +0 -70
  930. package/src/contract/private_function_membership_proof.ts +0 -167
  931. package/src/contract/utility_function_membership_proof.ts +0 -118
  932. package/src/interfaces/get_logs_response.ts +0 -35
  933. package/src/l1-contracts/slash_factory.ts +0 -180
  934. package/src/logs/directional_app_tagging_secret.ts +0 -79
  935. package/src/logs/extended_contract_class_log.ts +0 -87
  936. package/src/logs/extended_public_log.ts +0 -94
  937. package/src/logs/log_filter.ts +0 -31
  938. package/src/logs/log_id.ts +0 -125
  939. package/src/logs/tx_scoped_l2_log.ts +0 -98
  940. package/src/slashing/empire.ts +0 -104
  941. package/src/update-checker/update-checker.ts +0 -166
@@ -1,4 +1,4 @@
1
- import type { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
1
+ import type { CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import type { SecretValue } from '@aztec/foundation/config';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
@@ -9,7 +9,6 @@ import type {
9
9
  BlockProposal,
10
10
  BlockProposalOptions,
11
11
  CheckpointAttestation,
12
- CheckpointLastBlockData,
13
12
  CheckpointProposal,
14
13
  CheckpointProposalOptions,
15
14
  } from '@aztec/stdlib/p2p';
@@ -20,52 +19,78 @@ import type { PeerId } from '@libp2p/interface';
20
19
  import { z } from 'zod';
21
20
 
22
21
  import type { CommitteeAttestationsAndSigners } from '../block/index.js';
23
- import { type ValidatorHASignerConfig, ValidatorHASignerConfigSchema } from '../ha-signing/index.js';
22
+ import type { ChainConfig } from '../config/chain-config.js';
23
+ import {
24
+ type LocalSignerConfig,
25
+ LocalSignerConfigSchema,
26
+ type ValidatorHASignerConfig,
27
+ ValidatorHASignerConfigSchema,
28
+ } from '../ha-signing/index.js';
24
29
  import { AllowedElementSchema } from './allowed_element.js';
25
30
 
26
31
  /**
27
32
  * Validator client configuration
28
33
  */
29
- export type ValidatorClientConfig = ValidatorHASignerConfig & {
30
- /** The private keys of the validators participating in attestation duties */
31
- validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
34
+ export type ValidatorClientConfig = ValidatorHASignerConfig &
35
+ LocalSignerConfig & {
36
+ /** The L1 chain id used for EIP-712 proposal-path signing. */
37
+ l1ChainId: ChainConfig['l1ChainId'];
32
38
 
33
- /** The addresses of the validators to use with remote signers */
34
- validatorAddresses?: EthAddress[];
39
+ /** The private keys of the validators participating in attestation duties */
40
+ validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
35
41
 
36
- /** Do not run the validator */
37
- disableValidator: boolean;
42
+ /** The addresses of the validators to use with remote signers */
43
+ validatorAddresses?: EthAddress[];
38
44
 
39
- /** Temporarily disable these specific validator addresses */
40
- disabledValidators: EthAddress[];
45
+ /** Do not run the validator */
46
+ disableValidator: boolean;
41
47
 
42
- /** Interval between polling for new attestations from peers */
43
- attestationPollingIntervalMs: number;
48
+ /** Temporarily disable these specific validator addresses */
49
+ disabledValidators: EthAddress[];
44
50
 
45
- /** Whether to re-execute transactions in a block proposal before attesting */
46
- validatorReexecute: boolean;
51
+ /** Interval between polling for new attestations from peers */
52
+ attestationPollingIntervalMs: number;
47
53
 
48
- /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the currnet committee */
49
- alwaysReexecuteBlockProposals?: boolean;
54
+ /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the current committee */
55
+ alwaysReexecuteBlockProposals?: boolean;
50
56
 
51
- /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
52
- fishermanMode?: boolean;
57
+ /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
58
+ fishermanMode?: boolean;
53
59
 
54
- /** Skip checkpoint proposal validation and always attest (default: false) */
55
- skipCheckpointProposalValidation?: boolean;
60
+ /** Skip checkpoint proposal validation and always attest (default: false) */
61
+ skipCheckpointProposalValidation?: boolean;
56
62
 
57
- /** Skip pushing re-executed blocks to archiver (default: false) */
58
- skipPushProposedBlocksToArchiver?: boolean;
63
+ /** Skip pushing re-executed blocks to archiver (default: false) */
64
+ skipPushProposedBlocksToArchiver?: boolean;
59
65
 
60
- /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
61
- attestToEquivocatedProposals?: boolean;
62
- };
66
+ /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
67
+ attestToEquivocatedProposals?: boolean;
68
+
69
+ /** Accept proposal validation regardless of slot timing (for testing only) */
70
+ skipProposalSlotValidation?: boolean;
71
+
72
+ /** Maximum L2 gas per block for validation. Proposals exceeding this limit are rejected. */
73
+ validateMaxL2BlockGas?: number;
74
+
75
+ /** Maximum DA gas per block for validation. Proposals exceeding this limit are rejected. */
76
+ validateMaxDABlockGas?: number;
77
+
78
+ /** Maximum transactions per block for validation. Proposals exceeding this limit are rejected. */
79
+ validateMaxTxsPerBlock?: number;
80
+
81
+ /** Maximum transactions per checkpoint for validation. Proposals exceeding this limit are rejected. */
82
+ validateMaxTxsPerCheckpoint?: number;
83
+ };
63
84
 
64
85
  export type ValidatorClientFullConfig = ValidatorClientConfig &
65
- Pick<SequencerConfig, 'txPublicSetupAllowList' | 'broadcastInvalidBlockProposal'> &
86
+ Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal' | 'maxBlocksPerCheckpoint'> &
66
87
  Pick<
67
88
  SlasherConfig,
68
- 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'
89
+ | 'slashBroadcastedInvalidBlockPenalty'
90
+ | 'slashBroadcastedInvalidCheckpointProposalPenalty'
91
+ | 'slashDuplicateProposalPenalty'
92
+ | 'slashDuplicateAttestationPenalty'
93
+ | 'slashAttestInvalidCheckpointProposalPenalty'
69
94
  > & {
70
95
  /**
71
96
  * Whether transactions are disabled for this node
@@ -75,33 +100,39 @@ export type ValidatorClientFullConfig = ValidatorClientConfig &
75
100
  };
76
101
 
77
102
  export const ValidatorClientConfigSchema = zodFor<Omit<ValidatorClientConfig, 'validatorPrivateKeys'>>()(
78
- ValidatorHASignerConfigSchema.extend({
103
+ ValidatorHASignerConfigSchema.merge(LocalSignerConfigSchema).extend({
104
+ l1ChainId: z.number().int().nonnegative(),
79
105
  validatorAddresses: z.array(schemas.EthAddress).optional(),
80
106
  disableValidator: z.boolean(),
81
107
  disabledValidators: z.array(schemas.EthAddress),
82
108
  attestationPollingIntervalMs: z.number().min(0),
83
- validatorReexecute: z.boolean(),
84
109
  alwaysReexecuteBlockProposals: z.boolean().optional(),
85
110
  fishermanMode: z.boolean().optional(),
86
111
  skipCheckpointProposalValidation: z.boolean().optional(),
87
112
  skipPushProposedBlocksToArchiver: z.boolean().optional(),
88
113
  attestToEquivocatedProposals: z.boolean().optional(),
114
+ skipProposalSlotValidation: z.boolean().optional(),
115
+ validateMaxL2BlockGas: z.number().optional(),
116
+ validateMaxDABlockGas: z.number().optional(),
117
+ validateMaxTxsPerBlock: z.number().optional(),
118
+ validateMaxTxsPerCheckpoint: z.number().optional(),
89
119
  }),
90
120
  );
91
121
 
92
122
  export const ValidatorClientFullConfigSchema = zodFor<Omit<ValidatorClientFullConfig, 'validatorPrivateKeys'>>()(
93
123
  ValidatorClientConfigSchema.extend({
94
- txPublicSetupAllowList: z.array(AllowedElementSchema).optional(),
124
+ txPublicSetupAllowListExtend: z.array(AllowedElementSchema).optional(),
95
125
  broadcastInvalidBlockProposal: z.boolean().optional(),
126
+ maxBlocksPerCheckpoint: z.number().positive().optional(),
96
127
  slashBroadcastedInvalidBlockPenalty: schemas.BigInt,
128
+ slashBroadcastedInvalidCheckpointProposalPenalty: schemas.BigInt,
97
129
  slashDuplicateProposalPenalty: schemas.BigInt,
98
130
  slashDuplicateAttestationPenalty: schemas.BigInt,
131
+ slashAttestInvalidCheckpointProposalPenalty: schemas.BigInt,
99
132
  disableTransactions: z.boolean().optional(),
100
133
  }),
101
134
  );
102
135
 
103
- export type CreateCheckpointProposalLastBlockData = Omit<CheckpointLastBlockData, 'txHashes'> & { txs: Tx[] };
104
-
105
136
  export interface Validator {
106
137
  start(): Promise<void>;
107
138
  updateConfig(config: Partial<ValidatorClientFullConfig>): void;
@@ -109,6 +140,7 @@ export interface Validator {
109
140
  // Block validation responsibilities
110
141
  createBlockProposal(
111
142
  blockHeader: BlockHeader,
143
+ checkpointNumber: CheckpointNumber,
112
144
  indexWithinCheckpoint: number,
113
145
  inHash: Fr,
114
146
  archive: Fr,
@@ -121,8 +153,9 @@ export interface Validator {
121
153
  createCheckpointProposal(
122
154
  checkpointHeader: CheckpointHeader,
123
155
  archive: Fr,
156
+ checkpointNumber: CheckpointNumber,
124
157
  feeAssetPriceModifier: bigint,
125
- lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined,
158
+ lastBlockProposal: BlockProposal | undefined,
126
159
  proposerAddress: EthAddress | undefined,
127
160
  options: CheckpointProposalOptions,
128
161
  ): Promise<CheckpointProposal>;
@@ -146,15 +179,23 @@ export interface Validator {
146
179
  broadcastBlockProposal(proposal: BlockProposal): Promise<void>;
147
180
 
148
181
  /** Collect own attestations for a checkpoint proposal (used when skipping p2p attestation collection) */
149
- collectOwnAttestations(proposal: CheckpointProposal): Promise<CheckpointAttestation[]>;
182
+ collectOwnAttestations(
183
+ proposal: CheckpointProposal,
184
+ checkpointNumber: CheckpointNumber,
185
+ ): Promise<CheckpointAttestation[]>;
150
186
 
151
187
  /** Collect attestations from the p2p network for a checkpoint proposal */
152
- collectAttestations(proposal: CheckpointProposal, required: number, deadline: Date): Promise<CheckpointAttestation[]>;
188
+ collectAttestations(
189
+ proposal: CheckpointProposal,
190
+ required: number,
191
+ deadline: Date,
192
+ checkpointNumber: CheckpointNumber,
193
+ ): Promise<CheckpointAttestation[]>;
153
194
 
154
195
  signAttestationsAndSigners(
155
196
  attestationsAndSigners: CommitteeAttestationsAndSigners,
156
197
  proposer: EthAddress,
157
198
  slot: SlotNumber,
158
- blockNumber: BlockNumber | CheckpointNumber,
199
+ checkpointNumber: CheckpointNumber,
159
200
  ): Promise<Signature>;
160
201
  }
@@ -3,6 +3,7 @@ import type { PromiseWithResolvers } from '@aztec/foundation/promise';
3
3
 
4
4
  import { z } from 'zod';
5
5
 
6
+ import type { BlockHash } from '../block/block_hash.js';
6
7
  import type { SnapshotDataKeys } from '../snapshots/types.js';
7
8
  import type { MerkleTreeReadOperations, MerkleTreeWriteOperations } from './merkle_tree_operations.js';
8
9
 
@@ -80,18 +81,18 @@ export interface WorldStateSynchronizer extends ReadonlyWorldStateAccess, ForkMe
80
81
  resumeSync(): void;
81
82
 
82
83
  /**
83
- * Forces an immediate sync to an optionally provided minimum block number
84
+ * Forces an immediate sync to an optionally provided minimum block number.
84
85
  * @param targetBlockNumber - The target block number that we must sync to. Will download unproven blocks if needed to reach it.
85
- * @param skipThrowIfTargetNotReached - Whether to skip throwing if the target block number is not reached.
86
+ * @param blockHash - If provided, verifies the block at targetBlockNumber matches this hash. On mismatch, triggers a resync (reorg detection).
86
87
  * @returns A promise that resolves with the block number the world state was synced to
87
88
  */
88
- syncImmediate(minBlockNumber?: BlockNumber, skipThrowIfTargetNotReached?: boolean): Promise<BlockNumber>;
89
+ syncImmediate(minBlockNumber?: BlockNumber, blockHash?: BlockHash): Promise<BlockNumber>;
89
90
 
90
91
  /** Deletes the db */
91
92
  clear(): Promise<void>;
92
93
  }
93
94
 
94
- export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, z.ZodTypeDef, any> = z.object({
95
+ export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, any> = z.object({
95
96
  finalizedBlockNumber: BlockNumberSchema,
96
97
  latestBlockNumber: BlockNumberSchema,
97
98
  latestBlockHash: z.string(),
@@ -1,29 +1,31 @@
1
1
  import { KEY_VALIDATION_REQUEST_LENGTH } from '@aztec/constants';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
3
+ import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
4
4
  import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
 
6
6
  /**
7
7
  * Request for validating keys used in the app.
8
+ *
9
+ * The master public key is exposed only as `pkMHash` (its `hashPublicKey` digest).
10
+ * The kernel reset circuit derives the corresponding point from the master secret key hint and
11
+ * asserts that its hash matches `pkMHash`.
8
12
  */
9
13
  export class KeyValidationRequest {
10
- /** App-siloed secret key corresponding to the same underlying secret as master public key above. */
14
+ /** App-siloed secret key corresponding to the same underlying secret as `pkMHash`. */
11
15
  public readonly skApp: Fr;
12
16
 
13
17
  constructor(
14
- /** Master public key corresponding to the same underlying secret as app secret key below. */
15
- public readonly pkM: Point,
18
+ /** Hash of the master public key corresponding to the same underlying secret as `skApp`. */
19
+ public readonly pkMHash: Fr,
16
20
  skApp: Fr | GrumpkinScalar,
17
21
  ) {
18
- // I am doing this conversion here because in some places skApp is represented as GrumpkinScalar (Fq).
19
- // I can do this conversion even though Fq.MODULUS is larger than Fr.MODULUS because when we pass in
20
- // the skApp as GrumpkinScalar it was converted to that form from Fr. So, it is safe to convert it back
21
- // to Fr. If this would change in the future the code below will throw an error so it should be easy to debug.
22
+ // skApp may arrive as a GrumpkinScalar (Fq) in some code paths; safe to truncate to Fr because
23
+ // the value originally came from an Fr poseidon hash and was widened to GrumpkinScalar.
22
24
  this.skApp = skApp instanceof Fr ? skApp : new Fr(skApp.toBigInt());
23
25
  }
24
26
 
25
27
  toBuffer() {
26
- return serializeToBuffer(this.pkM, this.skApp);
28
+ return serializeToBuffer(this.pkMHash, this.skApp);
27
29
  }
28
30
 
29
31
  get skAppAsGrumpkinScalar() {
@@ -32,11 +34,11 @@ export class KeyValidationRequest {
32
34
 
33
35
  static fromBuffer(buffer: Buffer | BufferReader) {
34
36
  const reader = BufferReader.asReader(buffer);
35
- return new KeyValidationRequest(Point.fromBuffer(reader), Fr.fromBuffer(reader));
37
+ return new KeyValidationRequest(Fr.fromBuffer(reader), Fr.fromBuffer(reader));
36
38
  }
37
39
 
38
40
  toFields(): Fr[] {
39
- const fields = [this.pkM.toFields(), this.skApp].flat();
41
+ const fields = [this.pkMHash, this.skApp];
40
42
  if (fields.length !== KEY_VALIDATION_REQUEST_LENGTH) {
41
43
  throw new Error(
42
44
  `Invalid number of fields for KeyValidationRequest. Expected ${KEY_VALIDATION_REQUEST_LENGTH}, got ${fields.length}`,
@@ -47,18 +49,18 @@ export class KeyValidationRequest {
47
49
 
48
50
  static fromFields(fields: Fr[] | FieldReader): KeyValidationRequest {
49
51
  const reader = FieldReader.asReader(fields);
50
- return new KeyValidationRequest(Point.fromFields(reader), reader.readField());
52
+ return new KeyValidationRequest(reader.readField(), reader.readField());
51
53
  }
52
54
 
53
55
  isEmpty() {
54
- return this.pkM.isZero() && this.skApp.isZero();
56
+ return this.pkMHash.isZero() && this.skApp.isZero();
55
57
  }
56
58
 
57
59
  static empty() {
58
- return new KeyValidationRequest(Point.ZERO, Fr.ZERO);
60
+ return new KeyValidationRequest(Fr.ZERO, Fr.ZERO);
59
61
  }
60
62
 
61
- static async random() {
62
- return new KeyValidationRequest(await Point.random(), Fr.random());
63
+ static random() {
64
+ return new KeyValidationRequest(Fr.random(), Fr.random());
63
65
  }
64
66
  }
@@ -7,7 +7,11 @@ export * from './private_call_data.js';
7
7
  export * from './private_kernel_circuit_public_inputs.js';
8
8
  export * from './private_kernel_data.js';
9
9
  export * from './private_kernel_init_circuit_private_inputs.js';
10
+ export * from './private_kernel_init_2_circuit_private_inputs.js';
11
+ export * from './private_kernel_init_3_circuit_private_inputs.js';
10
12
  export * from './private_kernel_inner_circuit_private_inputs.js';
13
+ export * from './private_kernel_inner_2_circuit_private_inputs.js';
14
+ export * from './private_kernel_inner_3_circuit_private_inputs.js';
11
15
  export * from './private_kernel_reset_circuit_private_inputs.js';
12
16
  export * from './private_kernel_reset_dimensions.js';
13
17
  export * from './private_kernel_tail_circuit_private_inputs.js';
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { BufferReader, BufferSink, FieldReader, serializeToSink } from '@aztec/foundation/serialize';
3
3
  import type { FieldsOf } from '@aztec/foundation/types';
4
4
 
5
5
  import { inspect } from 'util';
@@ -33,8 +33,13 @@ export class LogHash {
33
33
  return new LogHash(Fr.zero(), 0);
34
34
  }
35
35
 
36
- toBuffer(): Buffer {
37
- return serializeToBuffer(this.value, this.length);
36
+ toBuffer(): Buffer;
37
+ toBuffer(sink: BufferSink): void;
38
+ toBuffer(sink?: BufferSink): Buffer | void {
39
+ if (!sink) {
40
+ return BufferSink.serialize(this);
41
+ }
42
+ serializeToSink(sink, this.value, this.length);
38
43
  }
39
44
 
40
45
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -78,8 +83,13 @@ export class CountedLogHash {
78
83
  return new CountedLogHash(LogHash.empty(), 0);
79
84
  }
80
85
 
81
- toBuffer(): Buffer {
82
- return serializeToBuffer(this.logHash, this.counter);
86
+ toBuffer(): Buffer;
87
+ toBuffer(sink: BufferSink): void;
88
+ toBuffer(sink?: BufferSink): Buffer | void {
89
+ if (!sink) {
90
+ return BufferSink.serialize(this);
91
+ }
92
+ serializeToSink(sink, this.logHash, this.counter);
83
93
  }
84
94
 
85
95
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -115,8 +125,13 @@ export class ScopedLogHash {
115
125
  return new ScopedLogHash(LogHash.empty(), AztecAddress.ZERO);
116
126
  }
117
127
 
118
- toBuffer(): Buffer {
119
- return serializeToBuffer(this.logHash, this.contractAddress);
128
+ toBuffer(): Buffer;
129
+ toBuffer(sink: BufferSink): void;
130
+ toBuffer(sink?: BufferSink): Buffer | void {
131
+ if (!sink) {
132
+ return BufferSink.serialize(this);
133
+ }
134
+ serializeToSink(sink, this.logHash, this.contractAddress);
120
135
  }
121
136
 
122
137
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -144,8 +159,13 @@ export class ScopedCountedLogHash {
144
159
  return new ScopedCountedLogHash(reader.readObject(CountedLogHash), AztecAddress.fromField(reader.readField()));
145
160
  }
146
161
 
147
- toBuffer(): Buffer {
148
- return serializeToBuffer(this.inner, this.contractAddress);
162
+ toBuffer(): Buffer;
163
+ toBuffer(sink: BufferSink): void;
164
+ toBuffer(sink?: BufferSink): Buffer | void {
165
+ if (!sink) {
166
+ return BufferSink.serialize(this);
167
+ }
168
+ serializeToSink(sink, this.inner, this.contractAddress);
149
169
  }
150
170
 
151
171
  static fromBuffer(buffer: Buffer | BufferReader) {
@@ -0,0 +1,49 @@
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
+
4
+ import { ProtocolContracts } from '../tx/protocol_contracts.js';
5
+ import { TxRequest } from '../tx/tx_request.js';
6
+ import { PrivateCallData } from './private_call_data.js';
7
+
8
+ /**
9
+ * Input to the batched private kernel init circuit, which processes the first two app calls of a
10
+ * transaction in a single iteration.
11
+ */
12
+ export class PrivateKernelInit2CircuitPrivateInputs {
13
+ constructor(
14
+ public txRequest: TxRequest,
15
+ public vkTreeRoot: Fr,
16
+ public protocolContracts: ProtocolContracts,
17
+ public privateCall0: PrivateCallData,
18
+ public privateCall1: PrivateCallData,
19
+ public isPrivateOnly: boolean,
20
+ public firstNullifierHint: Fr,
21
+ public revertibleCounterHint: number,
22
+ ) {}
23
+
24
+ toBuffer() {
25
+ return serializeToBuffer(
26
+ this.txRequest,
27
+ this.vkTreeRoot,
28
+ this.protocolContracts,
29
+ this.privateCall0,
30
+ this.privateCall1,
31
+ this.firstNullifierHint,
32
+ this.revertibleCounterHint,
33
+ );
34
+ }
35
+
36
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelInit2CircuitPrivateInputs {
37
+ const reader = BufferReader.asReader(buffer);
38
+ return new PrivateKernelInit2CircuitPrivateInputs(
39
+ reader.readObject(TxRequest),
40
+ Fr.fromBuffer(reader),
41
+ reader.readObject(ProtocolContracts),
42
+ reader.readObject(PrivateCallData),
43
+ reader.readObject(PrivateCallData),
44
+ reader.readBoolean(),
45
+ Fr.fromBuffer(reader),
46
+ reader.readNumber(),
47
+ );
48
+ }
49
+ }
@@ -0,0 +1,52 @@
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
+
4
+ import { ProtocolContracts } from '../tx/protocol_contracts.js';
5
+ import { TxRequest } from '../tx/tx_request.js';
6
+ import { PrivateCallData } from './private_call_data.js';
7
+
8
+ /**
9
+ * Input to the batched private kernel init circuit, which processes the first three app calls of a
10
+ * transaction in a single iteration.
11
+ */
12
+ export class PrivateKernelInit3CircuitPrivateInputs {
13
+ constructor(
14
+ public txRequest: TxRequest,
15
+ public vkTreeRoot: Fr,
16
+ public protocolContracts: ProtocolContracts,
17
+ public privateCall0: PrivateCallData,
18
+ public privateCall1: PrivateCallData,
19
+ public privateCall2: PrivateCallData,
20
+ public isPrivateOnly: boolean,
21
+ public firstNullifierHint: Fr,
22
+ public revertibleCounterHint: number,
23
+ ) {}
24
+
25
+ toBuffer() {
26
+ return serializeToBuffer(
27
+ this.txRequest,
28
+ this.vkTreeRoot,
29
+ this.protocolContracts,
30
+ this.privateCall0,
31
+ this.privateCall1,
32
+ this.privateCall2,
33
+ this.firstNullifierHint,
34
+ this.revertibleCounterHint,
35
+ );
36
+ }
37
+
38
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelInit3CircuitPrivateInputs {
39
+ const reader = BufferReader.asReader(buffer);
40
+ return new PrivateKernelInit3CircuitPrivateInputs(
41
+ reader.readObject(TxRequest),
42
+ Fr.fromBuffer(reader),
43
+ reader.readObject(ProtocolContracts),
44
+ reader.readObject(PrivateCallData),
45
+ reader.readObject(PrivateCallData),
46
+ reader.readObject(PrivateCallData),
47
+ reader.readBoolean(),
48
+ Fr.fromBuffer(reader),
49
+ reader.readNumber(),
50
+ );
51
+ }
52
+ }
@@ -0,0 +1,29 @@
1
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+
3
+ import { PrivateCallData } from './private_call_data.js';
4
+ import { PrivateKernelData } from './private_kernel_data.js';
5
+
6
+ /**
7
+ * Input to the batched private kernel inner circuit, which processes two app calls in a single
8
+ * iteration following a previous kernel.
9
+ */
10
+ export class PrivateKernelInner2CircuitPrivateInputs {
11
+ constructor(
12
+ public previousKernel: PrivateKernelData,
13
+ public privateCall0: PrivateCallData,
14
+ public privateCall1: PrivateCallData,
15
+ ) {}
16
+
17
+ toBuffer() {
18
+ return serializeToBuffer(this.previousKernel, this.privateCall0, this.privateCall1);
19
+ }
20
+
21
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelInner2CircuitPrivateInputs {
22
+ const reader = BufferReader.asReader(buffer);
23
+ return new PrivateKernelInner2CircuitPrivateInputs(
24
+ reader.readObject(PrivateKernelData),
25
+ reader.readObject(PrivateCallData),
26
+ reader.readObject(PrivateCallData),
27
+ );
28
+ }
29
+ }
@@ -0,0 +1,31 @@
1
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
2
+
3
+ import { PrivateCallData } from './private_call_data.js';
4
+ import { PrivateKernelData } from './private_kernel_data.js';
5
+
6
+ /**
7
+ * Input to the batched private kernel inner circuit, which processes three app calls in a single
8
+ * iteration following a previous kernel.
9
+ */
10
+ export class PrivateKernelInner3CircuitPrivateInputs {
11
+ constructor(
12
+ public previousKernel: PrivateKernelData,
13
+ public privateCall0: PrivateCallData,
14
+ public privateCall1: PrivateCallData,
15
+ public privateCall2: PrivateCallData,
16
+ ) {}
17
+
18
+ toBuffer() {
19
+ return serializeToBuffer(this.previousKernel, this.privateCall0, this.privateCall1, this.privateCall2);
20
+ }
21
+
22
+ static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelInner3CircuitPrivateInputs {
23
+ const reader = BufferReader.asReader(buffer);
24
+ return new PrivateKernelInner3CircuitPrivateInputs(
25
+ reader.readObject(PrivateKernelData),
26
+ reader.readObject(PrivateCallData),
27
+ reader.readObject(PrivateCallData),
28
+ reader.readObject(PrivateCallData),
29
+ );
30
+ }
31
+ }
@@ -1,6 +1,6 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
3
- import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
3
+ import { BufferReader, BufferSink, serializeToSink } from '@aztec/foundation/serialize';
4
4
 
5
5
  import { AztecAddress } from '../aztec-address/index.js';
6
6
  import { Gas } from '../gas/gas.js';
@@ -60,8 +60,14 @@ export class PartialPrivateTailPublicInputsForPublic {
60
60
  );
61
61
  }
62
62
 
63
- toBuffer() {
64
- return serializeToBuffer(
63
+ toBuffer(): Buffer;
64
+ toBuffer(sink: BufferSink): void;
65
+ toBuffer(sink?: BufferSink): Buffer | void {
66
+ if (!sink) {
67
+ return BufferSink.serialize(this);
68
+ }
69
+ serializeToSink(
70
+ sink,
65
71
  this.nonRevertibleAccumulatedData,
66
72
  this.revertibleAccumulatedData,
67
73
  this.publicTeardownCallRequest,
@@ -89,8 +95,13 @@ export class PartialPrivateTailPublicInputsForRollup {
89
95
  return this.end.getSize();
90
96
  }
91
97
 
92
- toBuffer() {
93
- return serializeToBuffer(this.end);
98
+ toBuffer(): Buffer;
99
+ toBuffer(sink: BufferSink): void;
100
+ toBuffer(sink?: BufferSink): Buffer | void {
101
+ if (!sink) {
102
+ return BufferSink.serialize(this);
103
+ }
104
+ serializeToSink(sink, this.end);
94
105
  }
95
106
 
96
107
  static empty() {
@@ -234,6 +245,15 @@ export class PrivateKernelTailCircuitPublicInputs {
234
245
  return noteHashes.filter(n => !n.isZero());
235
246
  }
236
247
 
248
+ getNonEmptyL2ToL1Msgs() {
249
+ const l2ToL1Msgs = this.forPublic
250
+ ? this.forPublic.nonRevertibleAccumulatedData.l2ToL1Msgs.concat(
251
+ this.forPublic.revertibleAccumulatedData.l2ToL1Msgs,
252
+ )
253
+ : this.forRollup!.end.l2ToL1Msgs;
254
+ return l2ToL1Msgs.filter(m => !m.isEmpty());
255
+ }
256
+
237
257
  getNonEmptyNullifiers() {
238
258
  const nullifiers = this.forPublic
239
259
  ? this.forPublic.nonRevertibleAccumulatedData.nullifiers.concat(
@@ -291,16 +311,20 @@ export class PrivateKernelTailCircuitPublicInputs {
291
311
  );
292
312
  }
293
313
 
294
- toBuffer() {
314
+ toBuffer(): Buffer;
315
+ toBuffer(sink: BufferSink): void;
316
+ toBuffer(sink?: BufferSink): Buffer | void {
317
+ if (!sink) {
318
+ return BufferSink.serialize(this);
319
+ }
295
320
  const isForPublic = !!this.forPublic;
296
- return serializeToBuffer(
297
- isForPublic,
298
- this.constants,
299
- this.gasUsed,
300
- this.feePayer,
301
- bigintToUInt64BE(this.expirationTimestamp),
302
- isForPublic ? this.forPublic!.toBuffer() : this.forRollup!.toBuffer(),
303
- );
321
+ serializeToSink(sink, isForPublic, this.constants, this.gasUsed, this.feePayer);
322
+ sink.writeUInt64(this.expirationTimestamp);
323
+ if (isForPublic) {
324
+ this.forPublic!.toBuffer(sink);
325
+ } else {
326
+ this.forRollup!.toBuffer(sink);
327
+ }
304
328
  }
305
329
 
306
330
  static empty() {