@aztec/stdlib 0.0.1-commit.343b43af6 → 0.0.1-commit.350e0a4d

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 (1112) 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 +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  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 +7 -4
  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 +674 -5467
  50. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  51. package/dest/avm/index.d.ts +1 -6
  52. package/dest/avm/index.d.ts.map +1 -1
  53. package/dest/avm/index.js +0 -5
  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 +5 -21
  58. package/dest/avm/revert_code.d.ts.map +1 -1
  59. package/dest/avm/revert_code.js +12 -30
  60. package/dest/aztec-address/index.d.ts +42 -12
  61. package/dest/aztec-address/index.d.ts.map +1 -1
  62. package/dest/aztec-address/index.js +40 -13
  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 +10 -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 +13 -41
  81. package/dest/block/l2_block.d.ts.map +1 -1
  82. package/dest/block/l2_block_info.d.ts +10 -29
  83. package/dest/block/l2_block_info.d.ts.map +1 -1
  84. package/dest/block/l2_block_info.js +6 -5
  85. package/dest/block/l2_block_source.d.ts +232 -356
  86. package/dest/block/l2_block_source.d.ts.map +1 -1
  87. package/dest/block/l2_block_source.js +81 -1
  88. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  89. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  90. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  91. package/dest/block/l2_block_stream/index.d.ts +2 -1
  92. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  93. package/dest/block/l2_block_stream/index.js +1 -0
  94. package/dest/block/l2_block_stream/interfaces.d.ts +83 -10
  95. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/interfaces.js +25 -1
  97. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  98. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_block_stream.js +159 -135
  100. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  101. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  102. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  103. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  104. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  105. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  106. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  107. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  108. package/dest/block/proposal/attestations_and_signers.js +73 -25
  109. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  110. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  111. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  112. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  113. package/dest/block/test/l2_tips_store_test_suite.js +296 -36
  114. package/dest/block/validate_block_result.d.ts +16 -1
  115. package/dest/block/validate_block_result.d.ts.map +1 -1
  116. package/dest/block/validate_block_result.js +18 -3
  117. package/dest/checkpoint/checkpoint.d.ts +30 -96
  118. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  119. package/dest/checkpoint/checkpoint.js +11 -3
  120. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  121. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  122. package/dest/checkpoint/checkpoint_data.js +12 -0
  123. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  124. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  125. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  126. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  127. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  128. package/dest/checkpoint/digest.d.ts +18 -0
  129. package/dest/checkpoint/digest.d.ts.map +1 -0
  130. package/dest/checkpoint/digest.js +12 -0
  131. package/dest/checkpoint/index.d.ts +5 -1
  132. package/dest/checkpoint/index.d.ts.map +1 -1
  133. package/dest/checkpoint/index.js +4 -0
  134. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  135. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  136. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  137. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  138. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  139. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  140. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  141. package/dest/checkpoint/simulation_overrides.js +98 -0
  142. package/dest/checkpoint/validate.d.ts +11 -3
  143. package/dest/checkpoint/validate.d.ts.map +1 -1
  144. package/dest/checkpoint/validate.js +11 -8
  145. package/dest/config/chain-config.d.ts +4 -9
  146. package/dest/config/chain-config.d.ts.map +1 -1
  147. package/dest/config/chain-config.js +13 -12
  148. package/dest/config/index.d.ts +2 -1
  149. package/dest/config/index.d.ts.map +1 -1
  150. package/dest/config/index.js +1 -0
  151. package/dest/config/network-consensus-config.d.ts +72 -0
  152. package/dest/config/network-consensus-config.d.ts.map +1 -0
  153. package/dest/config/network-consensus-config.js +223 -0
  154. package/dest/config/sequencer-config.d.ts +7 -3
  155. package/dest/config/sequencer-config.d.ts.map +1 -1
  156. package/dest/config/sequencer-config.js +38 -5
  157. package/dest/contract/complete_address.d.ts +3 -2
  158. package/dest/contract/complete_address.d.ts.map +1 -1
  159. package/dest/contract/complete_address.js +6 -2
  160. package/dest/contract/contract_address.d.ts +10 -9
  161. package/dest/contract/contract_address.d.ts.map +1 -1
  162. package/dest/contract/contract_address.js +6 -5
  163. package/dest/contract/contract_class.d.ts +1 -1
  164. package/dest/contract/contract_class.d.ts.map +1 -1
  165. package/dest/contract/contract_class.js +3 -2
  166. package/dest/contract/contract_class_id.d.ts +2 -2
  167. package/dest/contract/contract_class_id.js +2 -2
  168. package/dest/contract/contract_deployment_data.d.ts +15 -61
  169. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  170. package/dest/contract/contract_instance.d.ts +19 -3
  171. package/dest/contract/contract_instance.d.ts.map +1 -1
  172. package/dest/contract/contract_instance.js +55 -3
  173. package/dest/contract/index.d.ts +1 -4
  174. package/dest/contract/index.d.ts.map +1 -1
  175. package/dest/contract/index.js +0 -3
  176. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  177. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  178. package/dest/contract/interfaces/contract_class.js +1 -28
  179. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  180. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  181. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  182. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  183. package/dest/contract/interfaces/contract_instance.js +11 -4
  184. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  185. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  186. package/dest/contract/interfaces/node-info.d.ts +11 -1
  187. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  188. package/dest/contract/interfaces/node-info.js +7 -1
  189. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  190. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  191. package/dest/contract/partial_address.d.ts +9 -3
  192. package/dest/contract/partial_address.d.ts.map +1 -1
  193. package/dest/contract/partial_address.js +8 -2
  194. package/dest/contract/private_function.d.ts +1 -1
  195. package/dest/contract/private_function.d.ts.map +1 -1
  196. package/dest/contract/private_function.js +2 -4
  197. package/dest/database-version/database_version.d.ts +5 -11
  198. package/dest/database-version/database_version.d.ts.map +1 -1
  199. package/dest/database-version/version_manager.d.ts +22 -4
  200. package/dest/database-version/version_manager.d.ts.map +1 -1
  201. package/dest/database-version/version_manager.js +87 -6
  202. package/dest/deserialization/index.d.ts +35 -3
  203. package/dest/deserialization/index.d.ts.map +1 -1
  204. package/dest/deserialization/index.js +32 -1
  205. package/dest/epoch-helpers/index.d.ts +10 -22
  206. package/dest/epoch-helpers/index.d.ts.map +1 -1
  207. package/dest/epoch-helpers/index.js +12 -0
  208. package/dest/file-store/factory.d.ts +4 -3
  209. package/dest/file-store/factory.d.ts.map +1 -1
  210. package/dest/file-store/factory.js +9 -2
  211. package/dest/file-store/http.d.ts +9 -2
  212. package/dest/file-store/http.d.ts.map +1 -1
  213. package/dest/file-store/http.js +20 -9
  214. package/dest/file-store/index.d.ts +3 -1
  215. package/dest/file-store/index.d.ts.map +1 -1
  216. package/dest/file-store/index.js +1 -0
  217. package/dest/file-store/memory.d.ts +24 -0
  218. package/dest/file-store/memory.d.ts.map +1 -0
  219. package/dest/file-store/memory.js +80 -0
  220. package/dest/gas/fee_math.d.ts +49 -0
  221. package/dest/gas/fee_math.d.ts.map +1 -0
  222. package/dest/gas/fee_math.js +80 -0
  223. package/dest/gas/gas.d.ts +9 -14
  224. package/dest/gas/gas.d.ts.map +1 -1
  225. package/dest/gas/gas.js +6 -3
  226. package/dest/gas/gas_fees.d.ts +13 -14
  227. package/dest/gas/gas_fees.d.ts.map +1 -1
  228. package/dest/gas/gas_fees.js +17 -4
  229. package/dest/gas/gas_settings.d.ts +60 -86
  230. package/dest/gas/gas_settings.d.ts.map +1 -1
  231. package/dest/gas/gas_settings.js +49 -9
  232. package/dest/gas/index.d.ts +3 -1
  233. package/dest/gas/index.d.ts.map +1 -1
  234. package/dest/gas/index.js +2 -0
  235. package/dest/gas/tx_gas_limits.d.ts +72 -0
  236. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  237. package/dest/gas/tx_gas_limits.js +85 -0
  238. package/dest/ha-signing/config.d.ts +29 -79
  239. package/dest/ha-signing/config.d.ts.map +1 -1
  240. package/dest/ha-signing/config.js +18 -21
  241. package/dest/ha-signing/index.d.ts +2 -2
  242. package/dest/ha-signing/index.d.ts.map +1 -1
  243. package/dest/ha-signing/index.js +1 -1
  244. package/dest/ha-signing/local_config.d.ts +12 -35
  245. package/dest/ha-signing/local_config.d.ts.map +1 -1
  246. package/dest/ha-signing/local_config.js +9 -3
  247. package/dest/ha-signing/types.d.ts +37 -32
  248. package/dest/ha-signing/types.d.ts.map +1 -1
  249. package/dest/ha-signing/types.js +13 -6
  250. package/dest/hash/hash.d.ts +34 -1
  251. package/dest/hash/hash.d.ts.map +1 -1
  252. package/dest/hash/hash.js +63 -2
  253. package/dest/interfaces/allowed_element.d.ts +4 -28
  254. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  255. package/dest/interfaces/api_limit.d.ts +1 -1
  256. package/dest/interfaces/api_limit.js +1 -1
  257. package/dest/interfaces/archiver.d.ts +20 -32
  258. package/dest/interfaces/archiver.d.ts.map +1 -1
  259. package/dest/interfaces/archiver.js +215 -70
  260. package/dest/interfaces/aztec-node-admin.d.ts +75 -303
  261. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  262. package/dest/interfaces/aztec-node-admin.js +60 -17
  263. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  264. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  265. package/dest/interfaces/aztec-node-debug.js +49 -0
  266. package/dest/interfaces/aztec-node.d.ts +161 -116
  267. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  268. package/dest/interfaces/aztec-node.js +351 -73
  269. package/dest/interfaces/block-builder.d.ts +35 -7
  270. package/dest/interfaces/block-builder.d.ts.map +1 -1
  271. package/dest/interfaces/block-builder.js +6 -4
  272. package/dest/interfaces/block_response.d.ts +90 -0
  273. package/dest/interfaces/block_response.d.ts.map +1 -0
  274. package/dest/interfaces/block_response.js +30 -0
  275. package/dest/interfaces/chain_tips.d.ts +11 -0
  276. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  277. package/dest/interfaces/chain_tips.js +6 -0
  278. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  279. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  280. package/dest/interfaces/checkpoint_parameter.js +18 -0
  281. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  282. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  283. package/dest/interfaces/checkpoint_response.js +26 -0
  284. package/dest/interfaces/client.d.ts +9 -2
  285. package/dest/interfaces/client.d.ts.map +1 -1
  286. package/dest/interfaces/client.js +7 -1
  287. package/dest/interfaces/configs.d.ts +69 -132
  288. package/dest/interfaces/configs.d.ts.map +1 -1
  289. package/dest/interfaces/configs.js +15 -2
  290. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  291. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  292. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  293. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  294. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  295. package/dest/interfaces/l1_publish_info.js +26 -0
  296. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  297. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  298. package/dest/interfaces/l2_logs_source.js +5 -0
  299. package/dest/interfaces/merkle_tree_operations.d.ts +20 -23
  300. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  301. package/dest/interfaces/p2p-bootstrap.js +8 -2
  302. package/dest/interfaces/p2p.d.ts +46 -7
  303. package/dest/interfaces/p2p.d.ts.map +1 -1
  304. package/dest/interfaces/p2p.js +41 -6
  305. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  306. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  307. package/dest/interfaces/prover-agent.d.ts +5 -23
  308. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  309. package/dest/interfaces/prover-agent.js +4 -1
  310. package/dest/interfaces/prover-client.d.ts +7 -29
  311. package/dest/interfaces/prover-client.d.ts.map +1 -1
  312. package/dest/interfaces/prover-client.js +1 -4
  313. package/dest/interfaces/prover-node.d.ts +12 -8
  314. package/dest/interfaces/prover-node.d.ts.map +1 -1
  315. package/dest/interfaces/prover-node.js +37 -16
  316. package/dest/interfaces/proving-job-source.js +24 -4
  317. package/dest/interfaces/proving-job.d.ts +744 -5795
  318. package/dest/interfaces/proving-job.d.ts.map +1 -1
  319. package/dest/interfaces/proving-job.js +3 -3
  320. package/dest/interfaces/public_storage_override.d.ts +22 -0
  321. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  322. package/dest/interfaces/public_storage_override.js +7 -0
  323. package/dest/interfaces/server.d.ts +6 -3
  324. package/dest/interfaces/server.d.ts.map +1 -1
  325. package/dest/interfaces/server.js +5 -2
  326. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  327. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  328. package/dest/interfaces/slasher.d.ts +25 -65
  329. package/dest/interfaces/slasher.d.ts.map +1 -1
  330. package/dest/interfaces/slasher.js +8 -4
  331. package/dest/interfaces/tx_provider.d.ts +6 -1
  332. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  333. package/dest/interfaces/validator.d.ts +59 -248
  334. package/dest/interfaces/validator.d.ts.map +1 -1
  335. package/dest/interfaces/validator.js +8 -2
  336. package/dest/interfaces/world_state.d.ts +19 -5
  337. package/dest/interfaces/world_state.d.ts.map +1 -1
  338. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  339. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  340. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  341. package/dest/kernel/hints/index.d.ts +1 -2
  342. package/dest/kernel/hints/index.d.ts.map +1 -1
  343. package/dest/kernel/hints/index.js +0 -1
  344. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  345. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  346. package/dest/kernel/hints/key_validation_request.js +20 -18
  347. package/dest/kernel/hints/read_request.js +1 -1
  348. package/dest/kernel/index.d.ts +10 -2
  349. package/dest/kernel/index.d.ts.map +1 -1
  350. package/dest/kernel/index.js +9 -1
  351. package/dest/kernel/log_hash.d.ts +6 -2
  352. package/dest/kernel/log_hash.d.ts.map +1 -1
  353. package/dest/kernel/log_hash.js +23 -11
  354. package/dest/kernel/note_hash.js +1 -1
  355. package/dest/kernel/nullifier.js +1 -1
  356. package/dest/kernel/private_circuit_public_inputs.d.ts +14 -4
  357. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  358. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  359. package/dest/kernel/private_context_inputs.d.ts +4 -3
  360. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  361. package/dest/kernel/private_context_inputs.js +7 -3
  362. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +8 -10
  363. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  364. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -7
  365. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  366. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  367. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  368. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  369. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  370. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  371. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  372. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  373. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  374. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  375. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  376. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  377. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  378. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  379. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  380. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  381. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  382. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  383. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  384. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  385. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  386. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  387. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  388. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  389. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  390. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  391. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  392. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  393. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  394. package/dest/kernel/private_kernel_prover_output.js +4 -1
  395. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  396. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  397. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  398. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  399. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  400. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  401. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  402. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  403. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  404. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  405. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  406. package/dest/kernel/private_log_data.d.ts +1 -1
  407. package/dest/kernel/private_log_data.d.ts.map +1 -1
  408. package/dest/kernel/private_log_data.js +1 -1
  409. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  410. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  411. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  412. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  413. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  414. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  415. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  416. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  417. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  418. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  419. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  420. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  421. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  422. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  423. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  424. package/dest/kernel/public_call_request.d.ts +15 -30
  425. package/dest/kernel/public_call_request.d.ts.map +1 -1
  426. package/dest/kernel/public_call_request.js +16 -7
  427. package/dest/kernel/utils/index.d.ts +1 -2
  428. package/dest/kernel/utils/index.d.ts.map +1 -1
  429. package/dest/kernel/utils/index.js +0 -1
  430. package/dest/keys/derivation.d.ts +45 -5
  431. package/dest/keys/derivation.d.ts.map +1 -1
  432. package/dest/keys/derivation.js +59 -19
  433. package/dest/keys/public_key.d.ts +22 -3
  434. package/dest/keys/public_key.d.ts.map +1 -1
  435. package/dest/keys/public_key.js +20 -1
  436. package/dest/keys/public_keys.d.ts +55 -82
  437. package/dest/keys/public_keys.d.ts.map +1 -1
  438. package/dest/keys/public_keys.js +102 -74
  439. package/dest/kv-store/config.d.ts +3 -6
  440. package/dest/kv-store/config.d.ts.map +1 -1
  441. package/dest/kv-store/config.js +2 -7
  442. package/dest/l1-contracts/index.d.ts +2 -2
  443. package/dest/l1-contracts/index.d.ts.map +1 -1
  444. package/dest/l1-contracts/index.js +1 -1
  445. package/dest/logs/app_tagging_secret.d.ts +69 -0
  446. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  447. package/dest/logs/app_tagging_secret.js +125 -0
  448. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  449. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  450. package/dest/logs/app_tagging_secret_kind.js +17 -0
  451. package/dest/logs/contract_class_log.d.ts +16 -35
  452. package/dest/logs/contract_class_log.d.ts.map +1 -1
  453. package/dest/logs/contract_class_log.js +11 -13
  454. package/dest/logs/index.d.ts +8 -7
  455. package/dest/logs/index.d.ts.map +1 -1
  456. package/dest/logs/index.js +7 -6
  457. package/dest/logs/log_cursor.d.ts +51 -0
  458. package/dest/logs/log_cursor.d.ts.map +1 -0
  459. package/dest/logs/log_cursor.js +82 -0
  460. package/dest/logs/log_result.d.ts +54 -0
  461. package/dest/logs/log_result.d.ts.map +1 -0
  462. package/dest/logs/log_result.js +56 -0
  463. package/dest/logs/logs_query.d.ts +82 -0
  464. package/dest/logs/logs_query.d.ts.map +1 -0
  465. package/dest/logs/logs_query.js +50 -0
  466. package/dest/logs/message_context.d.ts +4 -16
  467. package/dest/logs/message_context.d.ts.map +1 -1
  468. package/dest/logs/message_context.js +1 -48
  469. package/dest/logs/pending_tagged_log.d.ts +6 -9
  470. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  471. package/dest/logs/pending_tagged_log.js +1 -31
  472. package/dest/logs/pre_tag.d.ts +11 -24
  473. package/dest/logs/pre_tag.d.ts.map +1 -1
  474. package/dest/logs/pre_tag.js +2 -2
  475. package/dest/logs/private_log.d.ts +7 -12
  476. package/dest/logs/private_log.d.ts.map +1 -1
  477. package/dest/logs/private_log.js +6 -3
  478. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  479. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  480. package/dest/logs/query_all_logs_by_tags.js +64 -0
  481. package/dest/logs/shared_secret_derivation.d.ts +22 -8
  482. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  483. package/dest/logs/shared_secret_derivation.js +31 -10
  484. package/dest/logs/siloed_tag.d.ts +8 -7
  485. package/dest/logs/siloed_tag.d.ts.map +1 -1
  486. package/dest/logs/siloed_tag.js +13 -3
  487. package/dest/logs/tag.d.ts +5 -6
  488. package/dest/logs/tag.d.ts.map +1 -1
  489. package/dest/logs/tag.js +4 -0
  490. package/dest/logs/tagging_index_range.d.ts +22 -0
  491. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  492. package/dest/logs/tagging_index_range.js +8 -0
  493. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  494. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  495. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  496. package/dest/messaging/index.d.ts +2 -1
  497. package/dest/messaging/index.d.ts.map +1 -1
  498. package/dest/messaging/index.js +1 -0
  499. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  500. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  501. package/dest/messaging/l1_to_l2_message.js +11 -13
  502. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  503. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  504. package/dest/messaging/l2_to_l1_membership.d.ts +70 -7
  505. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  506. package/dest/messaging/l2_to_l1_membership.js +130 -27
  507. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  508. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  509. package/dest/messaging/l2_to_l1_message.js +21 -12
  510. package/dest/noir/index.d.ts +5 -3
  511. package/dest/noir/index.d.ts.map +1 -1
  512. package/dest/note/note.d.ts +2 -2
  513. package/dest/note/note.d.ts.map +1 -1
  514. package/dest/note/note_dao.d.ts +1 -1
  515. package/dest/note/note_dao.d.ts.map +1 -1
  516. package/dest/note/note_dao.js +1 -4
  517. package/dest/p2p/attestation_utils.d.ts +1 -1
  518. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  519. package/dest/p2p/attestation_utils.js +8 -1
  520. package/dest/p2p/block_proposal.d.ts +31 -14
  521. package/dest/p2p/block_proposal.d.ts.map +1 -1
  522. package/dest/p2p/block_proposal.js +57 -39
  523. package/dest/p2p/checkpoint_attestation.d.ts +24 -9
  524. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  525. package/dest/p2p/checkpoint_attestation.js +33 -24
  526. package/dest/p2p/checkpoint_proposal.d.ts +36 -16
  527. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  528. package/dest/p2p/checkpoint_proposal.js +59 -49
  529. package/dest/p2p/consensus_payload.d.ts +27 -20
  530. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  531. package/dest/p2p/consensus_payload.js +38 -19
  532. package/dest/p2p/gossipable.d.ts +4 -4
  533. package/dest/p2p/gossipable.d.ts.map +1 -1
  534. package/dest/p2p/index.d.ts +1 -2
  535. package/dest/p2p/index.d.ts.map +1 -1
  536. package/dest/p2p/index.js +0 -1
  537. package/dest/p2p/signature_utils.d.ts +35 -17
  538. package/dest/p2p/signature_utils.d.ts.map +1 -1
  539. package/dest/p2p/signature_utils.js +125 -20
  540. package/dest/p2p/signed_txs.d.ts +15 -13
  541. package/dest/p2p/signed_txs.d.ts.map +1 -1
  542. package/dest/p2p/signed_txs.js +26 -24
  543. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  544. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  545. package/dest/parity/parity_base_private_inputs.js +7 -5
  546. package/dest/parity/parity_public_inputs.d.ts +8 -4
  547. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  548. package/dest/parity/parity_public_inputs.js +6 -3
  549. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  550. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  551. package/dest/proofs/chonk_proof.d.ts +57 -7
  552. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  553. package/dest/proofs/chonk_proof.js +112 -15
  554. package/dest/proofs/recursive_proof.d.ts +2 -2
  555. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  556. package/dest/rollup/avm_proof_data.d.ts +3 -3
  557. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  558. package/dest/rollup/block_headers_hash.d.ts +1 -1
  559. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  560. package/dest/rollup/block_headers_hash.js +8 -2
  561. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  562. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  563. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  564. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  565. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  566. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  567. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  568. package/dest/rollup/checkpoint_header.d.ts +8 -3
  569. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  570. package/dest/rollup/checkpoint_header.js +20 -10
  571. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  572. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  573. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  574. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  575. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  576. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  577. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  578. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  579. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  580. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  581. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  582. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  583. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  584. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  585. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  586. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  587. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  588. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  589. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  590. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  591. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  592. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  593. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  594. package/dest/schemas/schemas.d.ts +32 -78
  595. package/dest/schemas/schemas.d.ts.map +1 -1
  596. package/dest/schemas/schemas.js +2 -2
  597. package/dest/slashing/helpers.d.ts +2 -2
  598. package/dest/slashing/helpers.d.ts.map +1 -1
  599. package/dest/slashing/helpers.js +10 -7
  600. package/dest/slashing/index.d.ts +2 -3
  601. package/dest/slashing/index.d.ts.map +1 -1
  602. package/dest/slashing/index.js +1 -2
  603. package/dest/slashing/serialization.d.ts +2 -6
  604. package/dest/slashing/serialization.d.ts.map +1 -1
  605. package/dest/slashing/serialization.js +0 -60
  606. package/dest/slashing/types.d.ts +18 -112
  607. package/dest/slashing/types.d.ts.map +1 -1
  608. package/dest/slashing/types.js +16 -24
  609. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  610. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  611. package/dest/slashing/{tally.js → votes.js} +1 -1
  612. package/dest/snapshots/types.d.ts +15 -78
  613. package/dest/snapshots/types.d.ts.map +1 -1
  614. package/dest/stats/stats.d.ts +2 -2
  615. package/dest/stats/stats.d.ts.map +1 -1
  616. package/dest/tests/factories.d.ts +25 -58
  617. package/dest/tests/factories.d.ts.map +1 -1
  618. package/dest/tests/factories.js +81 -116
  619. package/dest/tests/mocks.d.ts +8 -5
  620. package/dest/tests/mocks.d.ts.map +1 -1
  621. package/dest/tests/mocks.js +45 -56
  622. package/dest/timetable/budgets.d.ts +57 -0
  623. package/dest/timetable/budgets.d.ts.map +1 -0
  624. package/dest/timetable/budgets.js +56 -0
  625. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  626. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  627. package/dest/timetable/build_proposer_timetable.js +17 -0
  628. package/dest/timetable/consensus_timetable.d.ts +70 -0
  629. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  630. package/dest/timetable/consensus_timetable.js +89 -0
  631. package/dest/timetable/index.d.ts +5 -37
  632. package/dest/timetable/index.d.ts.map +1 -1
  633. package/dest/timetable/index.js +4 -39
  634. package/dest/timetable/proposer_timetable.d.ts +106 -0
  635. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  636. package/dest/timetable/proposer_timetable.js +132 -0
  637. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  638. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  639. package/dest/trees/append_only_tree_snapshot.js +6 -3
  640. package/dest/trees/nullifier_leaf.d.ts +19 -42
  641. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  642. package/dest/trees/nullifier_leaf.js +3 -0
  643. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  644. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  645. package/dest/trees/nullifier_membership_witness.js +0 -21
  646. package/dest/trees/public_data_leaf.d.ts +21 -53
  647. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  648. package/dest/trees/public_data_witness.d.ts +19 -71
  649. package/dest/trees/public_data_witness.d.ts.map +1 -1
  650. package/dest/trees/public_data_witness.js +0 -27
  651. package/dest/tx/block_header.d.ts +5 -4
  652. package/dest/tx/block_header.d.ts.map +1 -1
  653. package/dest/tx/block_header.js +7 -4
  654. package/dest/tx/call_context.d.ts +4 -14
  655. package/dest/tx/call_context.d.ts.map +1 -1
  656. package/dest/tx/capsule.d.ts +7 -3
  657. package/dest/tx/capsule.d.ts.map +1 -1
  658. package/dest/tx/capsule.js +9 -3
  659. package/dest/tx/execution_payload.d.ts +1 -1
  660. package/dest/tx/execution_payload.d.ts.map +1 -1
  661. package/dest/tx/execution_payload.js +1 -1
  662. package/dest/tx/fee_provider.d.ts +10 -0
  663. package/dest/tx/fee_provider.d.ts.map +1 -0
  664. package/dest/tx/fee_provider.js +1 -0
  665. package/dest/tx/function_data.d.ts +4 -10
  666. package/dest/tx/function_data.d.ts.map +1 -1
  667. package/dest/tx/global_variable_builder.d.ts +4 -15
  668. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  669. package/dest/tx/global_variables.d.ts +16 -49
  670. package/dest/tx/global_variables.d.ts.map +1 -1
  671. package/dest/tx/global_variables.js +10 -14
  672. package/dest/tx/hashed_values.d.ts +4 -3
  673. package/dest/tx/hashed_values.d.ts.map +1 -1
  674. package/dest/tx/hashed_values.js +6 -3
  675. package/dest/tx/in_tx.d.ts +5 -17
  676. package/dest/tx/in_tx.d.ts.map +1 -1
  677. package/dest/tx/index.d.ts +2 -2
  678. package/dest/tx/index.d.ts.map +1 -1
  679. package/dest/tx/index.js +1 -1
  680. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  681. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  682. package/dest/tx/indexed_tx_effect.js +9 -6
  683. package/dest/tx/partial_state_reference.d.ts +22 -65
  684. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  685. package/dest/tx/partial_state_reference.js +6 -3
  686. package/dest/tx/private_execution_result.d.ts +11 -21
  687. package/dest/tx/private_execution_result.d.ts.map +1 -1
  688. package/dest/tx/private_execution_result.js +6 -6
  689. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  690. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  691. package/dest/tx/private_tx_constant_data.js +13 -4
  692. package/dest/tx/profiling.d.ts +67 -353
  693. package/dest/tx/profiling.d.ts.map +1 -1
  694. package/dest/tx/profiling.js +19 -7
  695. package/dest/tx/protocol_contracts.d.ts +5 -9
  696. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  697. package/dest/tx/proven_tx.d.ts +30 -74
  698. package/dest/tx/proven_tx.d.ts.map +1 -1
  699. package/dest/tx/proven_tx.js +6 -0
  700. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  701. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  702. package/dest/tx/public_call_request_with_calldata.js +6 -3
  703. package/dest/tx/simulated_tx.d.ts +73 -1148
  704. package/dest/tx/simulated_tx.d.ts.map +1 -1
  705. package/dest/tx/simulated_tx.js +13 -11
  706. package/dest/tx/state_reference.d.ts +30 -117
  707. package/dest/tx/state_reference.d.ts.map +1 -1
  708. package/dest/tx/state_reference.js +6 -4
  709. package/dest/tx/tree_snapshots.d.ts +27 -84
  710. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  711. package/dest/tx/tree_snapshots.js +6 -4
  712. package/dest/tx/tx.d.ts +22 -13
  713. package/dest/tx/tx.d.ts.map +1 -1
  714. package/dest/tx/tx.js +44 -22
  715. package/dest/tx/tx_constant_data.d.ts +4 -3
  716. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  717. package/dest/tx/tx_constant_data.js +6 -3
  718. package/dest/tx/tx_context.d.ts +32 -131
  719. package/dest/tx/tx_context.d.ts.map +1 -1
  720. package/dest/tx/tx_context.js +6 -6
  721. package/dest/tx/tx_hash.d.ts +6 -4
  722. package/dest/tx/tx_hash.d.ts.map +1 -1
  723. package/dest/tx/tx_hash.js +13 -5
  724. package/dest/tx/tx_receipt.d.ts +145 -59
  725. package/dest/tx/tx_receipt.d.ts.map +1 -1
  726. package/dest/tx/tx_receipt.js +144 -58
  727. package/dest/tx/validator/error_texts.d.ts +6 -2
  728. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  729. package/dest/tx/validator/error_texts.js +7 -1
  730. package/dest/tx/validator/tx_validator.d.ts +5 -27
  731. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  732. package/dest/tx/validator/tx_validator.js +0 -4
  733. package/dest/types/shared.d.ts +4 -12
  734. package/dest/types/shared.d.ts.map +1 -1
  735. package/dest/types/shared.js +6 -12
  736. package/dest/update-checker/dev_version.d.ts +3 -0
  737. package/dest/update-checker/dev_version.d.ts.map +1 -0
  738. package/dest/update-checker/dev_version.js +1 -0
  739. package/dest/update-checker/index.d.ts +2 -1
  740. package/dest/update-checker/index.d.ts.map +1 -1
  741. package/dest/update-checker/index.js +1 -0
  742. package/dest/update-checker/package_version.d.ts +6 -3
  743. package/dest/update-checker/package_version.d.ts.map +1 -1
  744. package/dest/update-checker/package_version.js +9 -7
  745. package/dest/validators/schemas.d.ts +147 -614
  746. package/dest/validators/schemas.d.ts.map +1 -1
  747. package/dest/validators/schemas.js +6 -4
  748. package/dest/validators/types.d.ts +20 -3
  749. package/dest/validators/types.d.ts.map +1 -1
  750. package/dest/versioning/versioning.d.ts +4 -2
  751. package/dest/versioning/versioning.d.ts.map +1 -1
  752. package/dest/versioning/versioning.js +5 -2
  753. package/dest/vks/verification_key.d.ts +4 -139
  754. package/dest/vks/verification_key.d.ts.map +1 -1
  755. package/dest/vks/verification_key.js +5 -126
  756. package/dest/world-state/genesis_data.d.ts +13 -0
  757. package/dest/world-state/genesis_data.d.ts.map +1 -0
  758. package/dest/world-state/genesis_data.js +7 -0
  759. package/dest/world-state/index.d.ts +2 -1
  760. package/dest/world-state/index.d.ts.map +1 -1
  761. package/dest/world-state/index.js +1 -0
  762. package/dest/world-state/world_state_revision.d.ts +11 -39
  763. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  764. package/dest/world-state/world_state_revision.js +7 -21
  765. package/package.json +12 -11
  766. package/src/abi/abi.ts +78 -21
  767. package/src/abi/authorization_selector.ts +2 -8
  768. package/src/abi/buffer.ts +38 -5
  769. package/src/abi/contract_artifact.ts +11 -6
  770. package/src/abi/decoder.ts +23 -78
  771. package/src/abi/encoder.ts +42 -6
  772. package/src/abi/event_selector.ts +2 -8
  773. package/src/abi/function_selector.ts +4 -13
  774. package/src/abi/function_signature_decoder.ts +77 -0
  775. package/src/abi/index.ts +1 -0
  776. package/src/abi/note_selector.ts +3 -12
  777. package/src/abi/selector.ts +1 -1
  778. package/src/abi/utils.ts +6 -4
  779. package/src/avm/avm.ts +6 -1
  780. package/src/avm/index.ts +0 -5
  781. package/src/avm/message_pack.ts +12 -3
  782. package/src/avm/revert_code.ts +19 -39
  783. package/src/aztec-address/index.ts +50 -17
  784. package/src/block/attestation_info.ts +16 -11
  785. package/src/block/block_data.ts +3 -4
  786. package/src/block/block_hash.ts +21 -14
  787. package/src/block/block_parameter.ts +72 -4
  788. package/src/block/index.ts +0 -1
  789. package/src/block/l2_block_info.ts +8 -6
  790. package/src/block/l2_block_source.ts +262 -146
  791. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  792. package/src/block/l2_block_stream/index.ts +1 -0
  793. package/src/block/l2_block_stream/interfaces.ts +99 -9
  794. package/src/block/l2_block_stream/l2_block_stream.ts +229 -177
  795. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  796. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  797. package/src/block/proposal/attestations_and_signers.ts +85 -24
  798. package/src/block/test/l2_tips_store_test_suite.ts +271 -22
  799. package/src/block/validate_block_result.ts +48 -2
  800. package/src/checkpoint/checkpoint.ts +13 -3
  801. package/src/checkpoint/checkpoint_data.ts +44 -4
  802. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  803. package/src/checkpoint/digest.ts +28 -0
  804. package/src/checkpoint/index.ts +4 -0
  805. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  806. package/src/checkpoint/simulation_overrides.ts +171 -0
  807. package/src/checkpoint/validate.ts +18 -8
  808. package/src/config/chain-config.ts +13 -16
  809. package/src/config/index.ts +1 -0
  810. package/src/config/network-consensus-config.ts +291 -0
  811. package/src/config/sequencer-config.ts +68 -9
  812. package/src/contract/complete_address.ts +7 -3
  813. package/src/contract/contract_address.ts +11 -10
  814. package/src/contract/contract_class.ts +3 -2
  815. package/src/contract/contract_class_id.ts +2 -2
  816. package/src/contract/contract_instance.ts +73 -3
  817. package/src/contract/index.ts +0 -3
  818. package/src/contract/interfaces/contract_class.ts +2 -82
  819. package/src/contract/interfaces/contract_data_source.ts +2 -4
  820. package/src/contract/interfaces/contract_instance.ts +32 -10
  821. package/src/contract/interfaces/node-info.ts +11 -0
  822. package/src/contract/partial_address.ts +8 -2
  823. package/src/contract/private_function.ts +3 -1
  824. package/src/database-version/version_manager.ts +113 -6
  825. package/src/deserialization/index.ts +35 -2
  826. package/src/epoch-helpers/index.ts +24 -0
  827. package/src/file-store/factory.ts +20 -4
  828. package/src/file-store/http.ts +29 -10
  829. package/src/file-store/index.ts +2 -0
  830. package/src/file-store/memory.ts +94 -0
  831. package/src/gas/README.md +246 -0
  832. package/src/gas/fee_math.ts +120 -0
  833. package/src/gas/gas.ts +8 -3
  834. package/src/gas/gas_fees.ts +26 -13
  835. package/src/gas/gas_settings.ts +63 -15
  836. package/src/gas/index.ts +2 -0
  837. package/src/gas/tx_gas_limits.ts +123 -0
  838. package/src/ha-signing/config.ts +37 -23
  839. package/src/ha-signing/index.ts +3 -1
  840. package/src/ha-signing/local_config.ts +21 -2
  841. package/src/ha-signing/types.ts +48 -34
  842. package/src/hash/hash.ts +63 -2
  843. package/src/interfaces/api_limit.ts +1 -1
  844. package/src/interfaces/archiver.ts +88 -93
  845. package/src/interfaces/aztec-node-admin.ts +36 -21
  846. package/src/interfaces/aztec-node-debug.ts +92 -0
  847. package/src/interfaces/aztec-node.ts +399 -263
  848. package/src/interfaces/block-builder.ts +41 -8
  849. package/src/interfaces/block_response.ts +92 -0
  850. package/src/interfaces/chain_tips.ts +16 -0
  851. package/src/interfaces/checkpoint_parameter.ts +20 -0
  852. package/src/interfaces/checkpoint_response.ts +84 -0
  853. package/src/interfaces/client.ts +8 -1
  854. package/src/interfaces/configs.ts +70 -7
  855. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  856. package/src/interfaces/l1_publish_info.ts +40 -0
  857. package/src/interfaces/l2_logs_source.ts +13 -39
  858. package/src/interfaces/merkle_tree_operations.ts +20 -22
  859. package/src/interfaces/p2p-bootstrap.ts +2 -2
  860. package/src/interfaces/p2p.ts +59 -19
  861. package/src/interfaces/private_kernel_prover.ts +192 -13
  862. package/src/interfaces/prover-agent.ts +1 -1
  863. package/src/interfaces/prover-client.ts +4 -9
  864. package/src/interfaces/prover-node.ts +36 -21
  865. package/src/interfaces/proving-job-source.ts +4 -4
  866. package/src/interfaces/proving-job.ts +6 -6
  867. package/src/interfaces/public_storage_override.ts +26 -0
  868. package/src/interfaces/server.ts +5 -2
  869. package/src/interfaces/server_circuit_prover.ts +2 -2
  870. package/src/interfaces/slasher.ts +17 -10
  871. package/src/interfaces/tx_provider.ts +6 -0
  872. package/src/interfaces/validator.ts +45 -15
  873. package/src/interfaces/world_state.ts +19 -4
  874. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  875. package/src/kernel/hints/index.ts +0 -1
  876. package/src/kernel/hints/key_validation_request.ts +18 -16
  877. package/src/kernel/hints/read_request.ts +1 -1
  878. package/src/kernel/index.ts +9 -1
  879. package/src/kernel/log_hash.ts +36 -13
  880. package/src/kernel/note_hash.ts +1 -1
  881. package/src/kernel/nullifier.ts +1 -1
  882. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  883. package/src/kernel/private_context_inputs.ts +10 -3
  884. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -7
  885. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  886. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  887. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  888. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  889. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  890. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  891. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  892. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  893. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  894. package/src/kernel/private_kernel_prover_output.ts +4 -0
  895. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  896. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  897. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  898. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  899. package/src/kernel/private_log_data.ts +4 -1
  900. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  901. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  902. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  903. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  904. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  905. package/src/kernel/public_call_request.ts +22 -7
  906. package/src/kernel/utils/index.ts +0 -1
  907. package/src/keys/derivation.ts +81 -19
  908. package/src/keys/public_key.ts +26 -2
  909. package/src/keys/public_keys.ts +124 -110
  910. package/src/kv-store/config.ts +3 -10
  911. package/src/l1-contracts/index.ts +1 -1
  912. package/src/logs/app_tagging_secret.ts +169 -0
  913. package/src/logs/app_tagging_secret_kind.ts +21 -0
  914. package/src/logs/contract_class_log.ts +15 -14
  915. package/src/logs/index.ts +7 -6
  916. package/src/logs/log_cursor.ts +110 -0
  917. package/src/logs/log_result.ts +104 -0
  918. package/src/logs/logs_query.ts +138 -0
  919. package/src/logs/message_context.ts +6 -50
  920. package/src/logs/pending_tagged_log.ts +6 -35
  921. package/src/logs/pre_tag.ts +3 -6
  922. package/src/logs/private_log.ts +9 -3
  923. package/src/logs/query_all_logs_by_tags.ts +98 -0
  924. package/src/logs/shared_secret_derivation.ts +37 -10
  925. package/src/logs/siloed_tag.ts +20 -11
  926. package/src/logs/tag.ts +8 -8
  927. package/src/logs/tagging_index_range.ts +18 -0
  928. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  929. package/src/messaging/index.ts +1 -0
  930. package/src/messaging/l1_to_l2_message.ts +12 -9
  931. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  932. package/src/messaging/l2_to_l1_membership.ts +189 -35
  933. package/src/messaging/l2_to_l1_message.ts +29 -9
  934. package/src/noir/index.ts +4 -2
  935. package/src/note/note_dao.ts +1 -4
  936. package/src/p2p/attestation_utils.ts +8 -1
  937. package/src/p2p/block_proposal.ts +111 -36
  938. package/src/p2p/checkpoint_attestation.ts +38 -30
  939. package/src/p2p/checkpoint_proposal.ts +126 -68
  940. package/src/p2p/consensus_payload.ts +59 -28
  941. package/src/p2p/gossipable.ts +4 -4
  942. package/src/p2p/index.ts +0 -1
  943. package/src/p2p/signature_utils.ts +117 -23
  944. package/src/p2p/signed_txs.ts +46 -28
  945. package/src/parity/parity_base_private_inputs.ts +10 -4
  946. package/src/parity/parity_public_inputs.ts +9 -2
  947. package/src/proofs/chonk_proof.ts +132 -12
  948. package/src/rollup/avm_proof_data.ts +2 -2
  949. package/src/rollup/block_headers_hash.ts +11 -2
  950. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  951. package/src/rollup/checkpoint_header.ts +16 -2
  952. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  953. package/src/schemas/schemas.ts +6 -1
  954. package/src/slashing/helpers.ts +13 -9
  955. package/src/slashing/index.ts +1 -2
  956. package/src/slashing/serialization.ts +1 -81
  957. package/src/slashing/types.ts +24 -49
  958. package/src/slashing/{tally.ts → votes.ts} +1 -1
  959. package/src/stats/stats.ts +10 -2
  960. package/src/tests/factories.ts +111 -157
  961. package/src/tests/mocks.ts +72 -71
  962. package/src/timetable/README.md +609 -0
  963. package/src/timetable/budgets.ts +87 -0
  964. package/src/timetable/build_proposer_timetable.ts +42 -0
  965. package/src/timetable/consensus_timetable.ts +126 -0
  966. package/src/timetable/index.ts +4 -66
  967. package/src/timetable/proposer_timetable.ts +190 -0
  968. package/src/timetable/timetable-example.svg +108 -0
  969. package/src/trees/append_only_tree_snapshot.ts +8 -3
  970. package/src/trees/nullifier_leaf.ts +4 -0
  971. package/src/trees/nullifier_membership_witness.ts +0 -21
  972. package/src/trees/public_data_witness.ts +0 -31
  973. package/src/tx/block_header.ts +10 -5
  974. package/src/tx/capsule.ts +10 -2
  975. package/src/tx/execution_payload.ts +2 -1
  976. package/src/tx/fee_provider.ts +10 -0
  977. package/src/tx/global_variable_builder.ts +3 -20
  978. package/src/tx/global_variables.ts +12 -20
  979. package/src/tx/hashed_values.ts +8 -3
  980. package/src/tx/index.ts +1 -1
  981. package/src/tx/indexed_tx_effect.ts +18 -6
  982. package/src/tx/partial_state_reference.ts +8 -3
  983. package/src/tx/private_execution_result.ts +5 -5
  984. package/src/tx/private_tx_constant_data.ts +25 -2
  985. package/src/tx/profiling.ts +17 -6
  986. package/src/tx/proven_tx.ts +6 -0
  987. package/src/tx/public_call_request_with_calldata.ts +8 -3
  988. package/src/tx/simulated_tx.ts +22 -21
  989. package/src/tx/state_reference.ts +9 -4
  990. package/src/tx/tree_snapshots.ts +9 -4
  991. package/src/tx/tx.ts +60 -24
  992. package/src/tx/tx_constant_data.ts +8 -3
  993. package/src/tx/tx_context.ts +8 -3
  994. package/src/tx/tx_hash.ts +20 -5
  995. package/src/tx/tx_receipt.ts +266 -81
  996. package/src/tx/validator/error_texts.ts +10 -1
  997. package/src/tx/validator/tx_validator.ts +1 -5
  998. package/src/types/shared.ts +8 -13
  999. package/src/update-checker/dev_version.ts +2 -0
  1000. package/src/update-checker/index.ts +1 -0
  1001. package/src/update-checker/package_version.ts +11 -11
  1002. package/src/validators/schemas.ts +6 -4
  1003. package/src/validators/types.ts +21 -2
  1004. package/src/versioning/versioning.ts +5 -2
  1005. package/src/vks/verification_key.ts +5 -184
  1006. package/src/world-state/genesis_data.ts +27 -0
  1007. package/src/world-state/index.ts +1 -0
  1008. package/src/world-state/world_state_revision.ts +9 -34
  1009. package/dest/abi/mocked_keys.d.ts +0 -2
  1010. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1011. package/dest/abi/mocked_keys.js +0 -1
  1012. package/dest/avm/contract_storage_read.d.ts +0 -58
  1013. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1014. package/dest/avm/contract_storage_read.js +0 -65
  1015. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1016. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1017. package/dest/avm/contract_storage_update_request.js +0 -80
  1018. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1019. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1020. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1021. package/dest/avm/public_data_update_request.d.ts +0 -62
  1022. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1023. package/dest/avm/public_data_update_request.js +0 -67
  1024. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1025. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1026. package/dest/avm/public_inner_call_request.js +0 -74
  1027. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1028. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1029. package/dest/block/checkpointed_l2_block.js +0 -46
  1030. package/dest/contract/deployment_info.d.ts +0 -24
  1031. package/dest/contract/deployment_info.d.ts.map +0 -1
  1032. package/dest/contract/deployment_info.js +0 -3
  1033. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1034. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1035. package/dest/contract/private_function_membership_proof.js +0 -124
  1036. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1037. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1038. package/dest/contract/utility_function_membership_proof.js +0 -87
  1039. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1040. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1041. package/dest/interfaces/epoch-prover.js +0 -1
  1042. package/dest/interfaces/get_logs_response.d.ts +0 -97
  1043. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1044. package/dest/interfaces/get_logs_response.js +0 -12
  1045. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1046. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1047. package/dest/interfaces/prover-coordination.js +0 -1
  1048. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1049. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1050. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1051. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1052. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1053. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1054. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1055. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1056. package/dest/kernel/utils/optional_number.js +0 -42
  1057. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1058. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1059. package/dest/l1-contracts/slash_factory.js +0 -158
  1060. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1061. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1062. package/dest/logs/extended_contract_class_log.js +0 -67
  1063. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  1064. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  1065. package/dest/logs/extended_directional_app_tagging_secret.js +0 -72
  1066. package/dest/logs/extended_public_log.d.ts +0 -106
  1067. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1068. package/dest/logs/extended_public_log.js +0 -73
  1069. package/dest/logs/log_filter.d.ts +0 -22
  1070. package/dest/logs/log_filter.d.ts.map +0 -1
  1071. package/dest/logs/log_filter.js +0 -11
  1072. package/dest/logs/log_id.d.ts +0 -85
  1073. package/dest/logs/log_id.d.ts.map +0 -1
  1074. package/dest/logs/log_id.js +0 -94
  1075. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1076. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1077. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1078. package/dest/p2p/interface.d.ts +0 -5
  1079. package/dest/p2p/interface.d.ts.map +0 -1
  1080. package/dest/p2p/interface.js +0 -1
  1081. package/dest/slashing/empire.d.ts +0 -31
  1082. package/dest/slashing/empire.d.ts.map +0 -1
  1083. package/dest/slashing/empire.js +0 -87
  1084. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1085. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1086. package/dest/tx/validator/empty_validator.js +0 -7
  1087. package/src/abi/mocked_keys.ts +0 -2
  1088. package/src/avm/contract_storage_read.ts +0 -77
  1089. package/src/avm/contract_storage_update_request.ts +0 -93
  1090. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1091. package/src/avm/public_data_update_request.ts +0 -106
  1092. package/src/avm/public_inner_call_request.ts +0 -85
  1093. package/src/block/checkpointed_l2_block.ts +0 -70
  1094. package/src/contract/deployment_info.ts +0 -25
  1095. package/src/contract/private_function_membership_proof.ts +0 -167
  1096. package/src/contract/utility_function_membership_proof.ts +0 -118
  1097. package/src/interfaces/epoch-prover.ts +0 -72
  1098. package/src/interfaces/get_logs_response.ts +0 -35
  1099. package/src/interfaces/prover-coordination.ts +0 -17
  1100. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1101. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1102. package/src/kernel/utils/optional_number.ts +0 -50
  1103. package/src/l1-contracts/slash_factory.ts +0 -180
  1104. package/src/logs/extended_contract_class_log.ts +0 -87
  1105. package/src/logs/extended_directional_app_tagging_secret.ts +0 -87
  1106. package/src/logs/extended_public_log.ts +0 -94
  1107. package/src/logs/log_filter.ts +0 -31
  1108. package/src/logs/log_id.ts +0 -125
  1109. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1110. package/src/p2p/interface.ts +0 -4
  1111. package/src/slashing/empire.ts +0 -104
  1112. package/src/tx/validator/empty_validator.ts +0 -7
@@ -1,5 +1,5 @@
1
1
  import {
2
- AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
2
+ AVM_V2_PROOF_LENGTH_IN_FIELDS,
3
3
  NESTED_RECURSIVE_PROOF_LENGTH,
4
4
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
5
5
  RECURSIVE_PROOF_LENGTH,
@@ -204,7 +204,7 @@ export type ProvingJobInputsMap = {
204
204
  export const ProvingJobResult = z.discriminatedUnion('type', [
205
205
  z.object({
206
206
  type: z.literal(ProvingRequestType.PUBLIC_VM),
207
- result: RecursiveProof.schemaFor(AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED),
207
+ result: RecursiveProof.schemaFor(AVM_V2_PROOF_LENGTH_IN_FIELDS),
208
208
  }),
209
209
  z.object({
210
210
  type: z.literal(ProvingRequestType.PUBLIC_CHONK_VERIFIER),
@@ -319,7 +319,7 @@ export const ProvingJobResult = z.discriminatedUnion('type', [
319
319
  ]);
320
320
  export type ProvingJobResult = z.infer<typeof ProvingJobResult>;
321
321
  export type ProvingJobResultsMap = {
322
- [ProvingRequestType.PUBLIC_VM]: RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>;
322
+ [ProvingRequestType.PUBLIC_VM]: RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS>;
323
323
  [ProvingRequestType.PUBLIC_CHONK_VERIFIER]: PublicInputsAndRecursiveProof<
324
324
  PublicChonkVerifierPublicInputs,
325
325
  typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH
@@ -388,8 +388,8 @@ export type ProvingRequestResultFor<T extends ProvingRequestType> = { type: T; r
388
388
 
389
389
  export const ProvingJobId = z.string();
390
390
 
391
- export const ProofUri = z.string().brand('ProvingJobUri');
392
- export type ProofUri = z.infer<typeof ProofUri>;
391
+ export type ProofUri = string & z.$brand<'ProvingJobUri'>;
392
+ export const ProofUri: ZodFor<ProofUri> = z.string().transform(value => value as ProofUri);
393
393
 
394
394
  export type ProvingJobId = z.infer<typeof ProvingJobId>;
395
395
 
@@ -400,7 +400,7 @@ type ProvingJobShape = {
400
400
  inputsUri: ProofUri;
401
401
  };
402
402
 
403
- export const ProvingJob: z.ZodType<ProvingJobShape, z.ZodTypeDef, any> = z.object({
403
+ export const ProvingJob: z.ZodType<ProvingJobShape, any> = z.object({
404
404
  id: ProvingJobId,
405
405
  type: z.nativeEnum(ProvingRequestType),
406
406
  epochNumber: EpochNumberSchema,
@@ -0,0 +1,26 @@
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
2
+
3
+ import { z } from 'zod';
4
+
5
+ import type { AztecAddress } from '../aztec-address/index.js';
6
+ import { schemas } from '../schemas/schemas.js';
7
+
8
+ /**
9
+ * A single public-storage override to inject before simulation. Identifies a slot in
10
+ * (contract, raw slot) space, not by leafSlot — the simulator computes the leafSlot internally
11
+ * via `computePublicDataTreeLeafSlot`.
12
+ */
13
+ export type PublicStorageOverride = {
14
+ /** Contract that owns the storage slot. */
15
+ contract: AztecAddress;
16
+ /** Raw storage slot within the contract (not yet hashed into a tree key). */
17
+ slot: Fr;
18
+ /** Value to place at that slot for the duration of the simulation. */
19
+ value: Fr;
20
+ };
21
+
22
+ export const PublicStorageOverrideSchema = z.object({
23
+ contract: schemas.AztecAddress,
24
+ slot: schemas.Fr,
25
+ value: schemas.Fr,
26
+ });
@@ -2,9 +2,13 @@ export * from './allowed_element.js';
2
2
  export * from './api_limit.js';
3
3
  export * from './archiver.js';
4
4
  export * from './aztec-node.js';
5
+ export * from './block_response.js';
6
+ export * from './chain_tips.js';
7
+ export * from './checkpoint_parameter.js';
8
+ export * from './checkpoint_response.js';
9
+ export * from './l1_publish_info.js';
5
10
  export * from './block-builder.js';
6
11
  export * from './configs.js';
7
- export * from './epoch-prover.js';
8
12
  export * from './l2_logs_source.js';
9
13
  export * from './merkle_tree_operations.js';
10
14
  export * from './p2p-bootstrap.js';
@@ -13,7 +17,6 @@ export * from './processed-tx-handler.js';
13
17
  export * from './prover-agent.js';
14
18
  export * from './prover-broker.js';
15
19
  export * from './prover-client.js';
16
- export * from './prover-coordination.js';
17
20
  export * from './prover-node.js';
18
21
  export * from './proving-job-source.js';
19
22
  export * from './proving-job.js';
@@ -1,5 +1,5 @@
1
1
  import type {
2
- AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
2
+ AVM_V2_PROOF_LENGTH_IN_FIELDS,
3
3
  NESTED_RECURSIVE_PROOF_LENGTH,
4
4
  NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
5
5
  RECURSIVE_PROOF_LENGTH,
@@ -189,7 +189,7 @@ export interface ServerCircuitProver {
189
189
  inputs: AvmCircuitInputs,
190
190
  signal?: AbortSignal,
191
191
  epochNumber?: number,
192
- ): Promise<RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>>;
192
+ ): Promise<RecursiveProof<typeof AVM_V2_PROOF_LENGTH_IN_FIELDS>>;
193
193
  }
194
194
 
195
195
  export type IVCProofVerificationResult = {
@@ -3,25 +3,28 @@ import { schemas, zodFor } from '@aztec/foundation/schemas';
3
3
 
4
4
  import { z } from 'zod';
5
5
 
6
- export type SlasherClientType = 'empire' | 'tally';
7
-
8
6
  export interface SlasherConfig {
9
7
  slashOverridePayload?: EthAddress;
10
- slashMinPenaltyPercentage: number;
11
- slashMaxPenaltyPercentage: number;
12
8
  slashSelfAllowed?: boolean; // Whether to allow slashes to own validators
13
9
  slashValidatorsAlways: EthAddress[]; // Array of validator addresses
14
10
  slashValidatorsNever: EthAddress[]; // Array of validator addresses
15
11
  slashInactivityTargetPercentage: number; // 0-1, 0.9 means 90%. Must be greater than 0
16
12
  slashInactivityConsecutiveEpochThreshold: number; // Number of consecutive epochs a validator must be inactive before slashing
17
- slashPrunePenalty: bigint;
18
13
  slashDataWithholdingPenalty: bigint;
14
+ /**
15
+ * Number of full L2 slots that must elapse after a checkpoint's slot before declaring its
16
+ * txs missing and slashing the checkpoint's attesters for data withholding. With tolerance
17
+ * = N and checkpoint slot S, the check fires at the start of slot `S + N + 1`.
18
+ */
19
+ slashDataWithholdingToleranceSlots: number;
19
20
  slashInactivityPenalty: bigint;
20
21
  slashBroadcastedInvalidBlockPenalty: bigint;
22
+ slashBroadcastedInvalidCheckpointProposalPenalty: bigint;
21
23
  slashDuplicateProposalPenalty: bigint;
22
24
  slashDuplicateAttestationPenalty: bigint;
23
25
  slashProposeInvalidAttestationsPenalty: bigint;
24
- slashAttestDescendantOfInvalidPenalty: bigint;
26
+ slashProposeDescendantOfCheckpointWithInvalidAttestationsPenalty: bigint;
27
+ slashAttestInvalidCheckpointProposalPenalty: bigint;
25
28
  slashUnknownPenalty: bigint;
26
29
  slashOffenseExpirationRounds: number; // Number of rounds after which pending offenses expire
27
30
  slashMaxPayloadSize: number; // Maximum number of offenses to include in a single slash payload
@@ -32,19 +35,23 @@ export interface SlasherConfig {
32
35
  export const SlasherConfigSchema = zodFor<SlasherConfig>()(
33
36
  z.object({
34
37
  slashOverridePayload: schemas.EthAddress.optional(),
35
- slashMinPenaltyPercentage: z.number(),
36
- slashMaxPenaltyPercentage: z.number(),
37
38
  slashValidatorsAlways: z.array(schemas.EthAddress),
38
39
  slashValidatorsNever: z.array(schemas.EthAddress),
39
- slashPrunePenalty: schemas.BigInt,
40
40
  slashDataWithholdingPenalty: schemas.BigInt,
41
+ // Tolerated as undefined to allow validating responses from older node images that
42
+ // predate the per-slot data-withholding watcher (PR #23116).
43
+ slashDataWithholdingToleranceSlots: z.number().default(3),
41
44
  slashInactivityTargetPercentage: z.number(),
42
45
  slashInactivityConsecutiveEpochThreshold: z.number(),
43
46
  slashInactivityPenalty: schemas.BigInt,
44
47
  slashProposeInvalidAttestationsPenalty: schemas.BigInt,
48
+ // Tolerated as undefined to allow validating responses from older node images that
49
+ // predate this slasher penalty being added.
50
+ slashBroadcastedInvalidCheckpointProposalPenalty: schemas.BigInt.default(0n),
45
51
  slashDuplicateProposalPenalty: schemas.BigInt,
46
52
  slashDuplicateAttestationPenalty: schemas.BigInt,
47
- slashAttestDescendantOfInvalidPenalty: schemas.BigInt,
53
+ slashProposeDescendantOfCheckpointWithInvalidAttestationsPenalty: schemas.BigInt,
54
+ slashAttestInvalidCheckpointProposalPenalty: schemas.BigInt,
48
55
  slashUnknownPenalty: schemas.BigInt,
49
56
  slashOffenseExpirationRounds: z.number(),
50
57
  slashMaxPayloadSize: z.number(),
@@ -7,6 +7,12 @@ import type { PeerId } from '@libp2p/interface';
7
7
  export interface ITxProvider {
8
8
  getAvailableTxs(txHashes: TxHash[]): Promise<{ txs: Tx[]; missingTxs: TxHash[] }>;
9
9
 
10
+ /**
11
+ * Checks whether each tx hash is currently held by the local tx pool. Returns a parallel
12
+ * boolean array (one entry per input hash). Does not fetch from the network.
13
+ */
14
+ hasTxs(txHashes: TxHash[]): Promise<boolean[]>;
15
+
10
16
  getTxsForBlockProposal(
11
17
  blockProposal: BlockProposal,
12
18
  blockNumber: number,
@@ -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,6 +19,7 @@ import type { PeerId } from '@libp2p/interface';
20
19
  import { z } from 'zod';
21
20
 
22
21
  import type { CommitteeAttestationsAndSigners } from '../block/index.js';
22
+ import type { ChainConfig } from '../config/chain-config.js';
23
23
  import {
24
24
  type LocalSignerConfig,
25
25
  LocalSignerConfigSchema,
@@ -33,6 +33,9 @@ import { AllowedElementSchema } from './allowed_element.js';
33
33
  */
34
34
  export type ValidatorClientConfig = ValidatorHASignerConfig &
35
35
  LocalSignerConfig & {
36
+ /** The L1 chain id used for EIP-712 proposal-path signing. */
37
+ l1ChainId: ChainConfig['l1ChainId'];
38
+
36
39
  /** The private keys of the validators participating in attestation duties */
37
40
  validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
38
41
 
@@ -48,10 +51,7 @@ export type ValidatorClientConfig = ValidatorHASignerConfig &
48
51
  /** Interval between polling for new attestations from peers */
49
52
  attestationPollingIntervalMs: number;
50
53
 
51
- /** Whether to re-execute transactions in a block proposal before attesting */
52
- validatorReexecute: boolean;
53
-
54
- /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the currnet committee */
54
+ /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the current committee */
55
55
  alwaysReexecuteBlockProposals?: boolean;
56
56
 
57
57
  /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
@@ -66,6 +66,9 @@ export type ValidatorClientConfig = ValidatorHASignerConfig &
66
66
  /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
67
67
  attestToEquivocatedProposals?: boolean;
68
68
 
69
+ /** Accept proposal validation regardless of slot timing (for testing only) */
70
+ skipProposalSlotValidation?: boolean;
71
+
69
72
  /** Maximum L2 gas per block for validation. Proposals exceeding this limit are rejected. */
70
73
  validateMaxL2BlockGas?: number;
71
74
 
@@ -80,30 +83,44 @@ export type ValidatorClientConfig = ValidatorHASignerConfig &
80
83
  };
81
84
 
82
85
  export type ValidatorClientFullConfig = ValidatorClientConfig &
83
- Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal'> &
86
+ Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal' | 'maxBlocksPerCheckpoint'> &
87
+ // `blockDurationMs` is optional on the loose `SequencerConfig` but is always populated via the shared
88
+ // `numberConfigHelper(3000)` mapping, so it is required on the fully-resolved validator config.
89
+ Required<Pick<SequencerConfig, 'blockDurationMs'>> &
84
90
  Pick<
85
91
  SlasherConfig,
86
- 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'
92
+ | 'slashBroadcastedInvalidBlockPenalty'
93
+ | 'slashBroadcastedInvalidCheckpointProposalPenalty'
94
+ | 'slashDuplicateProposalPenalty'
95
+ | 'slashDuplicateAttestationPenalty'
96
+ | 'slashAttestInvalidCheckpointProposalPenalty'
87
97
  > & {
88
98
  /**
89
99
  * Whether transactions are disabled for this node
90
100
  * @remarks This should match the property in P2PConfig. It's not picked from there to avoid circular dependencies.
91
101
  */
92
102
  disableTransactions?: boolean;
103
+
104
+ /**
105
+ * Maximum clock-disparity tolerance (ms) applied to proposal/attestation receive windows.
106
+ * @remarks Mirrors the property in P2PConfig. It's not picked from there to avoid circular dependencies.
107
+ */
108
+ maxGossipClockDisparityMs?: number;
93
109
  };
94
110
 
95
111
  export const ValidatorClientConfigSchema = zodFor<Omit<ValidatorClientConfig, 'validatorPrivateKeys'>>()(
96
112
  ValidatorHASignerConfigSchema.merge(LocalSignerConfigSchema).extend({
113
+ l1ChainId: z.number().int().nonnegative(),
97
114
  validatorAddresses: z.array(schemas.EthAddress).optional(),
98
115
  disableValidator: z.boolean(),
99
116
  disabledValidators: z.array(schemas.EthAddress),
100
117
  attestationPollingIntervalMs: z.number().min(0),
101
- validatorReexecute: z.boolean(),
102
118
  alwaysReexecuteBlockProposals: z.boolean().optional(),
103
119
  fishermanMode: z.boolean().optional(),
104
120
  skipCheckpointProposalValidation: z.boolean().optional(),
105
121
  skipPushProposedBlocksToArchiver: z.boolean().optional(),
106
122
  attestToEquivocatedProposals: z.boolean().optional(),
123
+ skipProposalSlotValidation: z.boolean().optional(),
107
124
  validateMaxL2BlockGas: z.number().optional(),
108
125
  validateMaxDABlockGas: z.number().optional(),
109
126
  validateMaxTxsPerBlock: z.number().optional(),
@@ -115,15 +132,18 @@ export const ValidatorClientFullConfigSchema = zodFor<Omit<ValidatorClientFullCo
115
132
  ValidatorClientConfigSchema.extend({
116
133
  txPublicSetupAllowListExtend: z.array(AllowedElementSchema).optional(),
117
134
  broadcastInvalidBlockProposal: z.boolean().optional(),
135
+ blockDurationMs: z.number().positive(),
136
+ maxBlocksPerCheckpoint: z.number().positive().optional(),
118
137
  slashBroadcastedInvalidBlockPenalty: schemas.BigInt,
138
+ slashBroadcastedInvalidCheckpointProposalPenalty: schemas.BigInt,
119
139
  slashDuplicateProposalPenalty: schemas.BigInt,
120
140
  slashDuplicateAttestationPenalty: schemas.BigInt,
141
+ slashAttestInvalidCheckpointProposalPenalty: schemas.BigInt,
121
142
  disableTransactions: z.boolean().optional(),
143
+ maxGossipClockDisparityMs: z.number().optional(),
122
144
  }),
123
145
  );
124
146
 
125
- export type CreateCheckpointProposalLastBlockData = Omit<CheckpointLastBlockData, 'txHashes'> & { txs: Tx[] };
126
-
127
147
  export interface Validator {
128
148
  start(): Promise<void>;
129
149
  updateConfig(config: Partial<ValidatorClientFullConfig>): void;
@@ -131,6 +151,7 @@ export interface Validator {
131
151
  // Block validation responsibilities
132
152
  createBlockProposal(
133
153
  blockHeader: BlockHeader,
154
+ checkpointNumber: CheckpointNumber,
134
155
  indexWithinCheckpoint: number,
135
156
  inHash: Fr,
136
157
  archive: Fr,
@@ -143,8 +164,9 @@ export interface Validator {
143
164
  createCheckpointProposal(
144
165
  checkpointHeader: CheckpointHeader,
145
166
  archive: Fr,
167
+ checkpointNumber: CheckpointNumber,
146
168
  feeAssetPriceModifier: bigint,
147
- lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined,
169
+ lastBlockProposal: BlockProposal | undefined,
148
170
  proposerAddress: EthAddress | undefined,
149
171
  options: CheckpointProposalOptions,
150
172
  ): Promise<CheckpointProposal>;
@@ -168,15 +190,23 @@ export interface Validator {
168
190
  broadcastBlockProposal(proposal: BlockProposal): Promise<void>;
169
191
 
170
192
  /** Collect own attestations for a checkpoint proposal (used when skipping p2p attestation collection) */
171
- collectOwnAttestations(proposal: CheckpointProposal): Promise<CheckpointAttestation[]>;
193
+ collectOwnAttestations(
194
+ proposal: CheckpointProposal,
195
+ checkpointNumber: CheckpointNumber,
196
+ ): Promise<CheckpointAttestation[]>;
172
197
 
173
198
  /** Collect attestations from the p2p network for a checkpoint proposal */
174
- collectAttestations(proposal: CheckpointProposal, required: number, deadline: Date): Promise<CheckpointAttestation[]>;
199
+ collectAttestations(
200
+ proposal: CheckpointProposal,
201
+ required: number,
202
+ deadline: Date,
203
+ checkpointNumber: CheckpointNumber,
204
+ ): Promise<CheckpointAttestation[]>;
175
205
 
176
206
  signAttestationsAndSigners(
177
207
  attestationsAndSigners: CommitteeAttestationsAndSigners,
178
208
  proposer: EthAddress,
179
209
  slot: SlotNumber,
180
- blockNumber: BlockNumber | CheckpointNumber,
210
+ checkpointNumber: CheckpointNumber,
181
211
  ): Promise<Signature>;
182
212
  }
@@ -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
 
@@ -64,6 +65,20 @@ export interface ReadonlyWorldStateAccess {
64
65
 
65
66
  /** Defines the interface for a world state synchronizer. */
66
67
  export interface WorldStateSynchronizer extends ReadonlyWorldStateAccess, ForkMerkleTreeOperations {
68
+ /**
69
+ * Returns a read handle to the world state at `blockNumber`, but only after verifying that the block at that
70
+ * height is on the fork identified by `blockHash`. This pins the returned view to a specific fork so a reorg
71
+ * that replaced the block at `blockNumber` cannot be served silently, closing the gap between resolving a query
72
+ * and reading its snapshot.
73
+ *
74
+ * Rejects if the block at `blockNumber` does not match `blockHash` (a reorg), or if the block's hash cannot be
75
+ * read from the requested view. Both are transient from a caller's perspective: re-resolving the query against
76
+ * the current chain and retrying may succeed or produce a more precise error. However, if the block's history
77
+ * has been pruned away (it predates the oldest historical block kept by world state), the rejection is terminal:
78
+ * retrying cannot bring the data back.
79
+ */
80
+ getVerifiedSnapshot(blockNumber: BlockNumber, blockHash: BlockHash): Promise<MerkleTreeReadOperations>;
81
+
67
82
  /** Starts the synchronizer. */
68
83
  start(): Promise<void | PromiseWithResolvers<void>>;
69
84
 
@@ -80,18 +95,18 @@ export interface WorldStateSynchronizer extends ReadonlyWorldStateAccess, ForkMe
80
95
  resumeSync(): void;
81
96
 
82
97
  /**
83
- * Forces an immediate sync to an optionally provided minimum block number
98
+ * Forces an immediate sync to an optionally provided minimum block number.
84
99
  * @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.
100
+ * @param blockHash - If provided, verifies the block at targetBlockNumber matches this hash. On mismatch, triggers a resync (reorg detection).
86
101
  * @returns A promise that resolves with the block number the world state was synced to
87
102
  */
88
- syncImmediate(minBlockNumber?: BlockNumber, skipThrowIfTargetNotReached?: boolean): Promise<BlockNumber>;
103
+ syncImmediate(minBlockNumber?: BlockNumber, blockHash?: BlockHash): Promise<BlockNumber>;
89
104
 
90
105
  /** Deletes the db */
91
106
  clear(): Promise<void>;
92
107
  }
93
108
 
94
- export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, z.ZodTypeDef, any> = z.object({
109
+ export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, any> = z.object({
95
110
  finalizedBlockNumber: BlockNumberSchema,
96
111
  latestBlockNumber: BlockNumberSchema,
97
112
  latestBlockHash: z.string(),
@@ -1,8 +1,7 @@
1
- import { isDefined } from '@aztec/foundation/types';
2
-
3
1
  import {
4
2
  PrivateKernelResetDimensions,
5
3
  type PrivateKernelResetDimensionsConfig,
4
+ type ResetCatalogEntry,
6
5
  privateKernelResetDimensionNames,
7
6
  } from '../private_kernel_reset_dimensions.js';
8
7
 
@@ -12,13 +11,6 @@ interface DimensionOption {
12
11
  remainder?: PrivateKernelResetDimensions;
13
12
  }
14
13
 
15
- function computeCost(dimensions: PrivateKernelResetDimensions, config: PrivateKernelResetDimensionsConfig) {
16
- return privateKernelResetDimensionNames.reduce(
17
- (accum, name) => accum + dimensions[name] * config.dimensions[name].cost,
18
- 0,
19
- );
20
- }
21
-
22
14
  function getSize(dimensions: PrivateKernelResetDimensions) {
23
15
  return privateKernelResetDimensionNames.reduce((accum, name) => accum + dimensions[name], 0);
24
16
  }
@@ -38,124 +30,42 @@ function getRemainder(
38
30
  return remainingDimensions ? remainder : undefined;
39
31
  }
40
32
 
41
- function pickFromValues(targetValue: number, values: number[]) {
42
- // Find the min value in `values` that's greater than or equal to `targetValue`.
43
- const minGte = values.reduce(
44
- (prev: number | undefined, curr) => (curr >= targetValue && (prev === undefined || curr < prev) ? curr : prev),
45
- undefined,
46
- );
47
-
48
- // If no such value is found, returns the max value.
49
- return minGte ?? Math.max(...values);
50
- }
51
-
52
- function pickCheapest(options: DimensionOption[]) {
53
- return options.reduce((prev, curr) => (curr.cost < prev.cost ? curr : prev), options[0]);
54
- }
55
-
56
- function pickSmallestRemainder(options: DimensionOption[]) {
57
- const optionsWithSize = options
58
- .filter(o => o.remainder)
59
- .map(option => ({ option, size: getSize(option.remainder!) }));
60
- return optionsWithSize.reduce((prev, curr) => (curr.size < prev.size ? curr : prev), optionsWithSize[0])?.option;
61
- }
62
-
63
- function pickBestOption(options: DimensionOption[]) {
64
- const optionsResetAll = options.filter(opt => !opt.remainder);
65
- const optionsResetPartial = options.filter(opt => opt.remainder);
66
- // The best option is the cheapest one that can reset all dimensions.
67
- // If no such option exists, find one that can reset the most data.
68
- return pickCheapest(optionsResetAll) || pickSmallestRemainder(optionsResetPartial);
69
- }
70
-
71
- function findVariant(
72
- requestedDimensions: PrivateKernelResetDimensions,
73
- config: PrivateKernelResetDimensionsConfig,
74
- isQualified: (dimensions: PrivateKernelResetDimensions) => boolean,
75
- ): DimensionOption | undefined {
76
- const variant = PrivateKernelResetDimensions.empty();
77
- privateKernelResetDimensionNames.forEach(name => {
78
- variant[name] = pickFromValues(requestedDimensions[name], config.dimensions[name].variants);
79
- });
80
- if (!isQualified(variant)) {
81
- return;
33
+ // Returns the cheapest option that fully covers the request, or the option with the smallest
34
+ // remainder if none do. Caller must pass a non-empty list.
35
+ function pickBestOption(options: DimensionOption[]): DimensionOption {
36
+ const fullCoverage = options.filter(opt => !opt.remainder);
37
+ if (fullCoverage.length) {
38
+ return fullCoverage.reduce((prev, curr) => (curr.cost < prev.cost ? curr : prev));
82
39
  }
83
-
84
- return {
85
- dimensions: variant,
86
- cost: computeCost(variant, config),
87
- remainder: getRemainder(requestedDimensions, variant),
88
- };
40
+ return options.reduce((prev, curr) => (getSize(curr.remainder!) < getSize(prev.remainder!) ? curr : prev));
89
41
  }
90
42
 
91
- function findStandalone(
92
- requestedDimensions: PrivateKernelResetDimensions,
93
- config: PrivateKernelResetDimensionsConfig,
94
- isQualified: (dimensions: PrivateKernelResetDimensions) => boolean,
95
- ): DimensionOption | undefined {
96
- const needsReset = privateKernelResetDimensionNames.filter(name => requestedDimensions[name] > 0);
97
- if (needsReset.length !== 1) {
98
- // At the moment, we only use standalone to reset one dimension when it's about to overflow.
99
- return;
100
- }
101
-
102
- const name = needsReset[0];
103
- const value = pickFromValues(requestedDimensions[name], config.dimensions[name].standalone);
104
- if (!value) {
105
- return;
106
- }
107
-
108
- const dimensions = PrivateKernelResetDimensions.from({ [name]: value });
109
- if (!isQualified(dimensions)) {
110
- return;
111
- }
112
-
43
+ function buildOption(entry: ResetCatalogEntry, requestedDimensions: PrivateKernelResetDimensions): DimensionOption {
44
+ const dimensions = PrivateKernelResetDimensions.fromValues(entry.dimensions);
113
45
  return {
114
46
  dimensions,
115
- cost: computeCost(dimensions, config),
47
+ cost: entry.cost,
116
48
  remainder: getRemainder(requestedDimensions, dimensions),
117
49
  };
118
50
  }
119
51
 
120
- function findSpecialCase(
121
- requestedDimensions: PrivateKernelResetDimensions,
122
- config: PrivateKernelResetDimensionsConfig,
123
- isQualified: (dimensions: PrivateKernelResetDimensions) => boolean,
124
- ): DimensionOption | undefined {
125
- const specialCases = config.specialCases.map(PrivateKernelResetDimensions.fromValues);
126
- const options = specialCases.filter(isQualified).map(dimensions => ({
127
- dimensions,
128
- cost: computeCost(dimensions, config),
129
- remainder: getRemainder(requestedDimensions, dimensions),
130
- }));
131
- return pickBestOption(options);
132
- }
52
+ /**
53
+ * Picks which catalog group the selector should search. Mid-tx resets go to `inner` (no
54
+ * siloing); terminal kernels go to `finalTail` or `finalTailToPublic`, depending on whether
55
+ * the tx has public function calls.
56
+ */
57
+ export type ResetDimensionsMode = 'inner' | 'finalTail' | 'finalTailToPublic';
133
58
 
134
59
  export function findPrivateKernelResetDimensions(
135
60
  requestedDimensions: PrivateKernelResetDimensions,
136
61
  config: PrivateKernelResetDimensionsConfig,
137
- isInner = false,
62
+ mode: ResetDimensionsMode,
138
63
  allowRemainder = false,
139
64
  ) {
140
- const requestedValues = requestedDimensions.toValues();
141
- const isEnough = allowRemainder
142
- ? () => true
143
- : (dimensions: PrivateKernelResetDimensions) => dimensions.toValues().every((v, i) => v >= requestedValues[i]);
144
-
145
- const isQualified = !isInner
146
- ? isEnough
147
- : // If isInner is true, it's a reset to prevent overflow. The following must be zero because siloing can't be done at the moment.
148
- (dimensions: PrivateKernelResetDimensions) =>
149
- dimensions.NOTE_HASH_SILOING === 0 &&
150
- dimensions.NULLIFIER_SILOING === 0 &&
151
- dimensions.PRIVATE_LOG_SILOING === 0 &&
152
- isEnough(dimensions);
153
-
154
- const options = [
155
- findVariant(requestedDimensions, config, isQualified),
156
- findStandalone(requestedDimensions, config, isQualified),
157
- findSpecialCase(requestedDimensions, config, isQualified),
158
- ].filter(isDefined);
65
+ const catalog = config[mode];
66
+ const options = catalog
67
+ .map(entry => buildOption(entry, requestedDimensions))
68
+ .filter(option => allowRemainder || !option.remainder);
159
69
 
160
70
  if (!options.length) {
161
71
  throw new Error(`Cannot find an option for dimension: ${requestedDimensions.toValues()}`);
@@ -12,4 +12,3 @@ export * from './key_validation_request.js';
12
12
  export * from './scoped_key_validation_request_and_separator.js';
13
13
  export * from './transient_data_squashing_hint.js';
14
14
  export * from './private_kernel_reset_hints.js';
15
- export * from './tree_leaf_read_request.js';
@@ -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
  }