@aztec/stdlib 0.0.1-commit.a89ec08 → 0.0.1-commit.aa0c64f

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 (1119) hide show
  1. package/dest/abi/abi.d.ts +146 -1050
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +34 -60
  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 +6 -2
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +13 -1
  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 +40 -15
  12. package/dest/abi/encoder.d.ts +1 -1
  13. package/dest/abi/encoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.js +32 -6
  15. package/dest/abi/event_selector.d.ts +4 -7
  16. package/dest/abi/event_selector.d.ts.map +1 -1
  17. package/dest/abi/function_call.d.ts +7 -25
  18. package/dest/abi/function_call.d.ts.map +1 -1
  19. package/dest/abi/function_selector.d.ts +3 -6
  20. package/dest/abi/function_selector.d.ts.map +1 -1
  21. package/dest/abi/function_selector.js +1 -3
  22. package/dest/abi/note_selector.d.ts +4 -7
  23. package/dest/abi/note_selector.d.ts.map +1 -1
  24. package/dest/abi/note_selector.js +1 -3
  25. package/dest/abi/utils.d.ts +1 -1
  26. package/dest/abi/utils.d.ts.map +1 -1
  27. package/dest/abi/utils.js +1 -1
  28. package/dest/auth_witness/auth_witness.d.ts +2 -2
  29. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  30. package/dest/avm/avm.d.ts +1756 -10463
  31. package/dest/avm/avm.d.ts.map +1 -1
  32. package/dest/avm/avm.js +7 -4
  33. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  34. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  35. package/dest/avm/avm_accumulated_data.js +2 -2
  36. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  37. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  38. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  39. package/dest/avm/avm_proving_request.d.ts +674 -5467
  40. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  41. package/dest/avm/index.d.ts +1 -6
  42. package/dest/avm/index.d.ts.map +1 -1
  43. package/dest/avm/index.js +0 -5
  44. package/dest/avm/message_pack.js +12 -3
  45. package/dest/avm/public_data_write.d.ts +6 -12
  46. package/dest/avm/public_data_write.d.ts.map +1 -1
  47. package/dest/avm/revert_code.d.ts +1 -7
  48. package/dest/avm/revert_code.d.ts.map +1 -1
  49. package/dest/avm/revert_code.js +0 -3
  50. package/dest/aztec-address/index.d.ts +42 -12
  51. package/dest/aztec-address/index.d.ts.map +1 -1
  52. package/dest/aztec-address/index.js +40 -13
  53. package/dest/block/attestation_info.d.ts +3 -2
  54. package/dest/block/attestation_info.d.ts.map +1 -1
  55. package/dest/block/attestation_info.js +10 -5
  56. package/dest/block/block_data.d.ts +13 -38
  57. package/dest/block/block_data.d.ts.map +1 -1
  58. package/dest/block/block_data.js +2 -2
  59. package/dest/block/block_hash.d.ts +11 -10
  60. package/dest/block/block_hash.d.ts.map +1 -1
  61. package/dest/block/block_hash.js +10 -9
  62. package/dest/block/block_parameter.d.ts +37 -4
  63. package/dest/block/block_parameter.d.ts.map +1 -1
  64. package/dest/block/block_parameter.js +53 -2
  65. package/dest/block/in_block.d.ts +5 -24
  66. package/dest/block/in_block.d.ts.map +1 -1
  67. package/dest/block/index.d.ts +1 -2
  68. package/dest/block/index.d.ts.map +1 -1
  69. package/dest/block/index.js +0 -1
  70. package/dest/block/l2_block.d.ts +13 -41
  71. package/dest/block/l2_block.d.ts.map +1 -1
  72. package/dest/block/l2_block_info.d.ts +10 -29
  73. package/dest/block/l2_block_info.d.ts.map +1 -1
  74. package/dest/block/l2_block_info.js +6 -5
  75. package/dest/block/l2_block_source.d.ts +228 -354
  76. package/dest/block/l2_block_source.d.ts.map +1 -1
  77. package/dest/block/l2_block_source.js +81 -1
  78. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  79. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  80. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  81. package/dest/block/l2_block_stream/index.d.ts +2 -1
  82. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  83. package/dest/block/l2_block_stream/index.js +1 -0
  84. package/dest/block/l2_block_stream/interfaces.d.ts +81 -11
  85. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  86. package/dest/block/l2_block_stream/interfaces.js +25 -1
  87. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  88. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  89. package/dest/block/l2_block_stream/l2_block_stream.js +159 -135
  90. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  91. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  92. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  93. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  94. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  95. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  96. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  97. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  98. package/dest/block/proposal/attestations_and_signers.js +73 -25
  99. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  100. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  101. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  102. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  103. package/dest/block/test/l2_tips_store_test_suite.js +296 -36
  104. package/dest/block/validate_block_result.d.ts +16 -1
  105. package/dest/block/validate_block_result.d.ts.map +1 -1
  106. package/dest/block/validate_block_result.js +18 -3
  107. package/dest/checkpoint/checkpoint.d.ts +30 -96
  108. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  109. package/dest/checkpoint/checkpoint.js +11 -3
  110. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  111. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  112. package/dest/checkpoint/checkpoint_data.js +12 -0
  113. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  114. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  115. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  116. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  117. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  118. package/dest/checkpoint/digest.d.ts +18 -0
  119. package/dest/checkpoint/digest.d.ts.map +1 -0
  120. package/dest/checkpoint/digest.js +12 -0
  121. package/dest/checkpoint/index.d.ts +5 -1
  122. package/dest/checkpoint/index.d.ts.map +1 -1
  123. package/dest/checkpoint/index.js +4 -0
  124. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  125. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  126. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  127. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  128. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  129. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  130. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  131. package/dest/checkpoint/simulation_overrides.js +98 -0
  132. package/dest/checkpoint/validate.d.ts +11 -3
  133. package/dest/checkpoint/validate.d.ts.map +1 -1
  134. package/dest/checkpoint/validate.js +9 -6
  135. package/dest/config/chain-config.d.ts +4 -9
  136. package/dest/config/chain-config.d.ts.map +1 -1
  137. package/dest/config/chain-config.js +13 -12
  138. package/dest/config/index.d.ts +2 -1
  139. package/dest/config/index.d.ts.map +1 -1
  140. package/dest/config/index.js +1 -0
  141. package/dest/config/network-consensus-config.d.ts +72 -0
  142. package/dest/config/network-consensus-config.d.ts.map +1 -0
  143. package/dest/config/network-consensus-config.js +223 -0
  144. package/dest/config/sequencer-config.d.ts +9 -3
  145. package/dest/config/sequencer-config.d.ts.map +1 -1
  146. package/dest/config/sequencer-config.js +39 -5
  147. package/dest/contract/complete_address.d.ts +3 -2
  148. package/dest/contract/complete_address.d.ts.map +1 -1
  149. package/dest/contract/complete_address.js +6 -2
  150. package/dest/contract/contract_address.d.ts +10 -9
  151. package/dest/contract/contract_address.d.ts.map +1 -1
  152. package/dest/contract/contract_address.js +6 -5
  153. package/dest/contract/contract_class.d.ts +1 -1
  154. package/dest/contract/contract_class.d.ts.map +1 -1
  155. package/dest/contract/contract_class.js +3 -2
  156. package/dest/contract/contract_class_id.d.ts +2 -2
  157. package/dest/contract/contract_class_id.js +2 -2
  158. package/dest/contract/contract_deployment_data.d.ts +15 -61
  159. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  160. package/dest/contract/contract_instance.d.ts +19 -3
  161. package/dest/contract/contract_instance.d.ts.map +1 -1
  162. package/dest/contract/contract_instance.js +55 -3
  163. package/dest/contract/index.d.ts +1 -4
  164. package/dest/contract/index.d.ts.map +1 -1
  165. package/dest/contract/index.js +0 -3
  166. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  167. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  168. package/dest/contract/interfaces/contract_class.js +1 -28
  169. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  170. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  171. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  172. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  173. package/dest/contract/interfaces/contract_instance.js +11 -4
  174. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  175. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  176. package/dest/contract/interfaces/node-info.d.ts +11 -1
  177. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  178. package/dest/contract/interfaces/node-info.js +7 -1
  179. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  180. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  181. package/dest/contract/partial_address.d.ts +9 -3
  182. package/dest/contract/partial_address.d.ts.map +1 -1
  183. package/dest/contract/partial_address.js +8 -2
  184. package/dest/contract/private_function.d.ts +1 -1
  185. package/dest/contract/private_function.d.ts.map +1 -1
  186. package/dest/contract/private_function.js +2 -4
  187. package/dest/database-version/database_version.d.ts +5 -11
  188. package/dest/database-version/database_version.d.ts.map +1 -1
  189. package/dest/database-version/version_manager.d.ts +22 -4
  190. package/dest/database-version/version_manager.d.ts.map +1 -1
  191. package/dest/database-version/version_manager.js +87 -6
  192. package/dest/deserialization/index.d.ts +35 -3
  193. package/dest/deserialization/index.d.ts.map +1 -1
  194. package/dest/deserialization/index.js +32 -1
  195. package/dest/epoch-helpers/index.d.ts +6 -22
  196. package/dest/epoch-helpers/index.d.ts.map +1 -1
  197. package/dest/epoch-helpers/index.js +3 -0
  198. package/dest/file-store/factory.d.ts +4 -3
  199. package/dest/file-store/factory.d.ts.map +1 -1
  200. package/dest/file-store/factory.js +9 -2
  201. package/dest/file-store/http.d.ts +9 -2
  202. package/dest/file-store/http.d.ts.map +1 -1
  203. package/dest/file-store/http.js +20 -9
  204. package/dest/file-store/index.d.ts +3 -1
  205. package/dest/file-store/index.d.ts.map +1 -1
  206. package/dest/file-store/index.js +1 -0
  207. package/dest/file-store/memory.d.ts +24 -0
  208. package/dest/file-store/memory.d.ts.map +1 -0
  209. package/dest/file-store/memory.js +80 -0
  210. package/dest/gas/fee_math.d.ts +49 -0
  211. package/dest/gas/fee_math.d.ts.map +1 -0
  212. package/dest/gas/fee_math.js +80 -0
  213. package/dest/gas/gas.d.ts +9 -14
  214. package/dest/gas/gas.d.ts.map +1 -1
  215. package/dest/gas/gas.js +6 -3
  216. package/dest/gas/gas_fees.d.ts +13 -14
  217. package/dest/gas/gas_fees.d.ts.map +1 -1
  218. package/dest/gas/gas_fees.js +17 -4
  219. package/dest/gas/gas_settings.d.ts +33 -96
  220. package/dest/gas/gas_settings.d.ts.map +1 -1
  221. package/dest/gas/gas_settings.js +15 -19
  222. package/dest/gas/index.d.ts +3 -1
  223. package/dest/gas/index.d.ts.map +1 -1
  224. package/dest/gas/index.js +2 -0
  225. package/dest/gas/tx_gas_limits.d.ts +72 -0
  226. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  227. package/dest/gas/tx_gas_limits.js +85 -0
  228. package/dest/ha-signing/config.d.ts +86 -0
  229. package/dest/ha-signing/config.d.ts.map +1 -0
  230. package/dest/ha-signing/config.js +94 -0
  231. package/dest/ha-signing/index.d.ts +4 -0
  232. package/dest/ha-signing/index.d.ts.map +1 -0
  233. package/dest/ha-signing/index.js +3 -0
  234. package/dest/ha-signing/local_config.d.ts +40 -0
  235. package/dest/ha-signing/local_config.d.ts.map +1 -0
  236. package/dest/ha-signing/local_config.js +30 -0
  237. package/dest/ha-signing/types.d.ts +90 -0
  238. package/dest/ha-signing/types.d.ts.map +1 -0
  239. package/dest/ha-signing/types.js +39 -0
  240. package/dest/hash/hash.d.ts +16 -2
  241. package/dest/hash/hash.d.ts.map +1 -1
  242. package/dest/hash/hash.js +34 -9
  243. package/dest/interfaces/allowed_element.d.ts +4 -28
  244. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  245. package/dest/interfaces/api_limit.d.ts +1 -1
  246. package/dest/interfaces/api_limit.js +1 -1
  247. package/dest/interfaces/archiver.d.ts +27 -32
  248. package/dest/interfaces/archiver.d.ts.map +1 -1
  249. package/dest/interfaces/archiver.js +216 -70
  250. package/dest/interfaces/aztec-node-admin.d.ts +74 -296
  251. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  252. package/dest/interfaces/aztec-node-admin.js +60 -17
  253. package/dest/interfaces/aztec-node-debug.d.ts +40 -2
  254. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -1
  255. package/dest/interfaces/aztec-node-debug.js +33 -2
  256. package/dest/interfaces/aztec-node.d.ts +160 -116
  257. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  258. package/dest/interfaces/aztec-node.js +350 -74
  259. package/dest/interfaces/block-builder.d.ts +11 -2
  260. package/dest/interfaces/block-builder.d.ts.map +1 -1
  261. package/dest/interfaces/block_response.d.ts +90 -0
  262. package/dest/interfaces/block_response.d.ts.map +1 -0
  263. package/dest/interfaces/block_response.js +30 -0
  264. package/dest/interfaces/chain_tips.d.ts +11 -0
  265. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  266. package/dest/interfaces/chain_tips.js +6 -0
  267. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  268. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  269. package/dest/interfaces/checkpoint_parameter.js +18 -0
  270. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  271. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  272. package/dest/interfaces/checkpoint_response.js +26 -0
  273. package/dest/interfaces/client.d.ts +8 -2
  274. package/dest/interfaces/client.d.ts.map +1 -1
  275. package/dest/interfaces/client.js +6 -1
  276. package/dest/interfaces/configs.d.ts +66 -134
  277. package/dest/interfaces/configs.d.ts.map +1 -1
  278. package/dest/interfaces/configs.js +14 -2
  279. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  280. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  281. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  282. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  283. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  284. package/dest/interfaces/l1_publish_info.js +26 -0
  285. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  286. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  287. package/dest/interfaces/l2_logs_source.js +5 -0
  288. package/dest/interfaces/merkle_tree_operations.d.ts +11 -5
  289. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  290. package/dest/interfaces/p2p-bootstrap.js +8 -2
  291. package/dest/interfaces/p2p.d.ts +46 -7
  292. package/dest/interfaces/p2p.d.ts.map +1 -1
  293. package/dest/interfaces/p2p.js +41 -6
  294. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  295. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  296. package/dest/interfaces/prover-agent.d.ts +5 -23
  297. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  298. package/dest/interfaces/prover-agent.js +4 -1
  299. package/dest/interfaces/prover-client.d.ts +7 -29
  300. package/dest/interfaces/prover-client.d.ts.map +1 -1
  301. package/dest/interfaces/prover-client.js +0 -3
  302. package/dest/interfaces/prover-node.d.ts +12 -8
  303. package/dest/interfaces/prover-node.d.ts.map +1 -1
  304. package/dest/interfaces/prover-node.js +37 -16
  305. package/dest/interfaces/proving-job-source.js +24 -4
  306. package/dest/interfaces/proving-job.d.ts +757 -5795
  307. package/dest/interfaces/proving-job.d.ts.map +1 -1
  308. package/dest/interfaces/proving-job.js +14 -5
  309. package/dest/interfaces/public_storage_override.d.ts +22 -0
  310. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  311. package/dest/interfaces/public_storage_override.js +7 -0
  312. package/dest/interfaces/server.d.ts +6 -3
  313. package/dest/interfaces/server.d.ts.map +1 -1
  314. package/dest/interfaces/server.js +5 -2
  315. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  316. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  317. package/dest/interfaces/slasher.d.ts +25 -65
  318. package/dest/interfaces/slasher.d.ts.map +1 -1
  319. package/dest/interfaces/slasher.js +8 -4
  320. package/dest/interfaces/tx_provider.d.ts +6 -1
  321. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  322. package/dest/interfaces/validator.d.ts +61 -230
  323. package/dest/interfaces/validator.d.ts.map +1 -1
  324. package/dest/interfaces/validator.js +10 -4
  325. package/dest/interfaces/world_state.d.ts +15 -2
  326. package/dest/interfaces/world_state.d.ts.map +1 -1
  327. package/dest/kernel/claimed_length_array.js +1 -1
  328. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  329. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  330. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  331. package/dest/kernel/hints/index.d.ts +1 -2
  332. package/dest/kernel/hints/index.d.ts.map +1 -1
  333. package/dest/kernel/hints/index.js +0 -1
  334. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  335. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  336. package/dest/kernel/hints/key_validation_request.js +20 -18
  337. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  338. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  339. package/dest/kernel/hints/read_request.js +1 -1
  340. package/dest/kernel/index.d.ts +10 -2
  341. package/dest/kernel/index.d.ts.map +1 -1
  342. package/dest/kernel/index.js +9 -1
  343. package/dest/kernel/log_hash.d.ts +6 -2
  344. package/dest/kernel/log_hash.d.ts.map +1 -1
  345. package/dest/kernel/log_hash.js +23 -11
  346. package/dest/kernel/note_hash.js +1 -1
  347. package/dest/kernel/nullifier.js +1 -1
  348. package/dest/kernel/padded_side_effects.js +1 -1
  349. package/dest/kernel/private_circuit_public_inputs.d.ts +14 -4
  350. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  351. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  352. package/dest/kernel/private_context_inputs.d.ts +4 -3
  353. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_context_inputs.js +7 -3
  355. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +8 -10
  356. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  357. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -7
  358. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  359. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  360. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  361. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  362. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  363. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  364. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  365. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  366. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  367. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  368. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  369. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  370. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  371. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  372. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  373. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  374. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  375. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  376. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  377. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  378. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  379. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  380. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  381. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  382. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  383. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  384. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  385. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  386. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  387. package/dest/kernel/private_kernel_prover_output.js +4 -1
  388. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  389. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  390. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  391. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  392. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  393. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  394. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  395. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  396. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  397. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  398. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  399. package/dest/kernel/private_log_data.d.ts +1 -1
  400. package/dest/kernel/private_log_data.d.ts.map +1 -1
  401. package/dest/kernel/private_log_data.js +1 -1
  402. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  403. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  404. package/dest/kernel/private_to_avm_accumulated_data.js +13 -7
  405. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  406. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  407. package/dest/kernel/private_to_public_accumulated_data.js +8 -5
  408. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  409. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  410. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  411. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  412. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  413. package/dest/kernel/private_to_rollup_accumulated_data.js +7 -4
  414. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  415. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  416. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  417. package/dest/kernel/public_call_request.d.ts +15 -30
  418. package/dest/kernel/public_call_request.d.ts.map +1 -1
  419. package/dest/kernel/public_call_request.js +16 -7
  420. package/dest/kernel/utils/index.d.ts +1 -2
  421. package/dest/kernel/utils/index.d.ts.map +1 -1
  422. package/dest/kernel/utils/index.js +0 -1
  423. package/dest/keys/derivation.d.ts +45 -6
  424. package/dest/keys/derivation.d.ts.map +1 -1
  425. package/dest/keys/derivation.js +55 -22
  426. package/dest/keys/public_key.d.ts +22 -3
  427. package/dest/keys/public_key.d.ts.map +1 -1
  428. package/dest/keys/public_key.js +20 -1
  429. package/dest/keys/public_keys.d.ts +55 -82
  430. package/dest/keys/public_keys.d.ts.map +1 -1
  431. package/dest/keys/public_keys.js +102 -74
  432. package/dest/kv-store/config.d.ts +14 -0
  433. package/dest/kv-store/config.d.ts.map +1 -0
  434. package/dest/kv-store/config.js +21 -0
  435. package/dest/kv-store/index.d.ts +2 -0
  436. package/dest/kv-store/index.d.ts.map +1 -0
  437. package/dest/kv-store/index.js +1 -0
  438. package/dest/l1-contracts/index.d.ts +2 -2
  439. package/dest/l1-contracts/index.d.ts.map +1 -1
  440. package/dest/l1-contracts/index.js +1 -1
  441. package/dest/logs/app_tagging_secret.d.ts +69 -0
  442. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  443. package/dest/logs/app_tagging_secret.js +116 -0
  444. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  445. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  446. package/dest/logs/app_tagging_secret_kind.js +17 -0
  447. package/dest/logs/contract_class_log.d.ts +16 -35
  448. package/dest/logs/contract_class_log.d.ts.map +1 -1
  449. package/dest/logs/contract_class_log.js +11 -13
  450. package/dest/logs/index.d.ts +7 -7
  451. package/dest/logs/index.d.ts.map +1 -1
  452. package/dest/logs/index.js +6 -6
  453. package/dest/logs/log_cursor.d.ts +51 -0
  454. package/dest/logs/log_cursor.d.ts.map +1 -0
  455. package/dest/logs/log_cursor.js +82 -0
  456. package/dest/logs/log_result.d.ts +54 -0
  457. package/dest/logs/log_result.d.ts.map +1 -0
  458. package/dest/logs/log_result.js +56 -0
  459. package/dest/logs/logs_query.d.ts +82 -0
  460. package/dest/logs/logs_query.d.ts.map +1 -0
  461. package/dest/logs/logs_query.js +50 -0
  462. package/dest/logs/message_context.d.ts +4 -13
  463. package/dest/logs/message_context.d.ts.map +1 -1
  464. package/dest/logs/message_context.js +1 -62
  465. package/dest/logs/pending_tagged_log.d.ts +6 -8
  466. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  467. package/dest/logs/pending_tagged_log.js +1 -31
  468. package/dest/logs/pre_tag.d.ts +11 -24
  469. package/dest/logs/pre_tag.d.ts.map +1 -1
  470. package/dest/logs/pre_tag.js +2 -2
  471. package/dest/logs/private_log.d.ts +7 -12
  472. package/dest/logs/private_log.d.ts.map +1 -1
  473. package/dest/logs/private_log.js +7 -4
  474. package/dest/logs/public_log.d.ts +1 -1
  475. package/dest/logs/public_log.d.ts.map +1 -1
  476. package/dest/logs/public_log.js +1 -7
  477. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  478. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  479. package/dest/logs/query_all_logs_by_tags.js +64 -0
  480. package/dest/logs/shared_secret_derivation.d.ts +29 -6
  481. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  482. package/dest/logs/shared_secret_derivation.js +44 -11
  483. package/dest/logs/siloed_tag.d.ts +5 -7
  484. package/dest/logs/siloed_tag.d.ts.map +1 -1
  485. package/dest/logs/siloed_tag.js +7 -1
  486. package/dest/logs/tag.d.ts +5 -6
  487. package/dest/logs/tag.d.ts.map +1 -1
  488. package/dest/logs/tag.js +4 -0
  489. package/dest/logs/tagging_index_range.d.ts +13 -31
  490. package/dest/logs/tagging_index_range.d.ts.map +1 -1
  491. package/dest/logs/tagging_index_range.js +2 -2
  492. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  493. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  494. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  495. package/dest/messaging/index.d.ts +2 -1
  496. package/dest/messaging/index.d.ts.map +1 -1
  497. package/dest/messaging/index.js +1 -0
  498. package/dest/messaging/l1_to_l2_message.d.ts +23 -2
  499. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  500. package/dest/messaging/l1_to_l2_message.js +36 -11
  501. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  502. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  503. package/dest/messaging/l2_to_l1_membership.d.ts +43 -6
  504. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  505. package/dest/messaging/l2_to_l1_membership.js +72 -12
  506. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  507. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  508. package/dest/messaging/l2_to_l1_message.js +21 -12
  509. package/dest/noir/index.d.ts +5 -3
  510. package/dest/noir/index.d.ts.map +1 -1
  511. package/dest/note/note.d.ts +2 -2
  512. package/dest/note/note.d.ts.map +1 -1
  513. package/dest/p2p/attestation_utils.d.ts +1 -1
  514. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  515. package/dest/p2p/attestation_utils.js +8 -1
  516. package/dest/p2p/block_proposal.d.ts +32 -15
  517. package/dest/p2p/block_proposal.d.ts.map +1 -1
  518. package/dest/p2p/block_proposal.js +58 -40
  519. package/dest/p2p/checkpoint_attestation.d.ts +24 -9
  520. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  521. package/dest/p2p/checkpoint_attestation.js +33 -24
  522. package/dest/p2p/checkpoint_proposal.d.ts +37 -17
  523. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  524. package/dest/p2p/checkpoint_proposal.js +60 -52
  525. package/dest/p2p/consensus_payload.d.ts +27 -20
  526. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  527. package/dest/p2p/consensus_payload.js +38 -19
  528. package/dest/p2p/gossipable.d.ts +4 -4
  529. package/dest/p2p/gossipable.d.ts.map +1 -1
  530. package/dest/p2p/index.d.ts +1 -2
  531. package/dest/p2p/index.d.ts.map +1 -1
  532. package/dest/p2p/index.js +0 -1
  533. package/dest/p2p/signature_utils.d.ts +35 -17
  534. package/dest/p2p/signature_utils.d.ts.map +1 -1
  535. package/dest/p2p/signature_utils.js +125 -20
  536. package/dest/p2p/signed_txs.d.ts +15 -13
  537. package/dest/p2p/signed_txs.d.ts.map +1 -1
  538. package/dest/p2p/signed_txs.js +26 -24
  539. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  540. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  541. package/dest/parity/parity_base_private_inputs.js +7 -5
  542. package/dest/parity/parity_public_inputs.d.ts +8 -4
  543. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  544. package/dest/parity/parity_public_inputs.js +6 -3
  545. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  546. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  547. package/dest/proofs/chonk_proof.d.ts +57 -7
  548. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  549. package/dest/proofs/chonk_proof.js +111 -20
  550. package/dest/proofs/recursive_proof.d.ts +2 -2
  551. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  552. package/dest/rollup/avm_proof_data.d.ts +3 -3
  553. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  554. package/dest/rollup/base_rollup_hints.js +2 -2
  555. package/dest/rollup/block_headers_hash.d.ts +1 -1
  556. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  557. package/dest/rollup/block_headers_hash.js +8 -2
  558. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  559. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  560. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  561. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  562. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  563. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  564. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  565. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  566. package/dest/rollup/checkpoint_header.d.ts +8 -3
  567. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  568. package/dest/rollup/checkpoint_header.js +20 -10
  569. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  570. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  571. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +10 -3
  572. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  573. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -1
  574. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  575. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  576. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  577. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  578. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  579. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  580. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  581. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  582. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  583. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  584. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  585. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  586. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  587. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  588. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  589. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  590. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  591. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  592. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  593. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  594. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  595. package/dest/schemas/schemas.d.ts +32 -78
  596. package/dest/schemas/schemas.d.ts.map +1 -1
  597. package/dest/schemas/schemas.js +2 -2
  598. package/dest/slashing/helpers.d.ts +2 -2
  599. package/dest/slashing/helpers.d.ts.map +1 -1
  600. package/dest/slashing/helpers.js +10 -7
  601. package/dest/slashing/index.d.ts +2 -3
  602. package/dest/slashing/index.d.ts.map +1 -1
  603. package/dest/slashing/index.js +1 -2
  604. package/dest/slashing/serialization.d.ts +2 -6
  605. package/dest/slashing/serialization.d.ts.map +1 -1
  606. package/dest/slashing/serialization.js +0 -60
  607. package/dest/slashing/types.d.ts +18 -112
  608. package/dest/slashing/types.d.ts.map +1 -1
  609. package/dest/slashing/types.js +16 -24
  610. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  611. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  612. package/dest/slashing/{tally.js → votes.js} +1 -1
  613. package/dest/snapshots/types.d.ts +15 -78
  614. package/dest/snapshots/types.d.ts.map +1 -1
  615. package/dest/stats/stats.d.ts +2 -2
  616. package/dest/stats/stats.d.ts.map +1 -1
  617. package/dest/tests/factories.d.ts +25 -58
  618. package/dest/tests/factories.d.ts.map +1 -1
  619. package/dest/tests/factories.js +80 -115
  620. package/dest/tests/mocks.d.ts +8 -5
  621. package/dest/tests/mocks.d.ts.map +1 -1
  622. package/dest/tests/mocks.js +43 -54
  623. package/dest/timetable/budgets.d.ts +57 -0
  624. package/dest/timetable/budgets.d.ts.map +1 -0
  625. package/dest/timetable/budgets.js +56 -0
  626. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  627. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  628. package/dest/timetable/build_proposer_timetable.js +17 -0
  629. package/dest/timetable/consensus_timetable.d.ts +70 -0
  630. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  631. package/dest/timetable/consensus_timetable.js +89 -0
  632. package/dest/timetable/index.d.ts +5 -37
  633. package/dest/timetable/index.d.ts.map +1 -1
  634. package/dest/timetable/index.js +4 -39
  635. package/dest/timetable/proposer_timetable.d.ts +106 -0
  636. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  637. package/dest/timetable/proposer_timetable.js +132 -0
  638. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  639. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  640. package/dest/trees/append_only_tree_snapshot.js +6 -3
  641. package/dest/trees/nullifier_leaf.d.ts +19 -42
  642. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  643. package/dest/trees/nullifier_leaf.js +3 -0
  644. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  645. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  646. package/dest/trees/nullifier_membership_witness.js +0 -21
  647. package/dest/trees/public_data_leaf.d.ts +21 -53
  648. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  649. package/dest/trees/public_data_witness.d.ts +19 -71
  650. package/dest/trees/public_data_witness.d.ts.map +1 -1
  651. package/dest/trees/public_data_witness.js +0 -27
  652. package/dest/tx/block_header.d.ts +5 -4
  653. package/dest/tx/block_header.d.ts.map +1 -1
  654. package/dest/tx/block_header.js +7 -4
  655. package/dest/tx/call_context.d.ts +4 -14
  656. package/dest/tx/call_context.d.ts.map +1 -1
  657. package/dest/tx/capsule.d.ts +2 -2
  658. package/dest/tx/capsule.d.ts.map +1 -1
  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 +6 -16
  687. package/dest/tx/private_execution_result.d.ts.map +1 -1
  688. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  689. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  690. package/dest/tx/private_tx_constant_data.js +13 -4
  691. package/dest/tx/profiling.d.ts +54 -352
  692. package/dest/tx/profiling.d.ts.map +1 -1
  693. package/dest/tx/profiling.js +6 -4
  694. package/dest/tx/protocol_contracts.d.ts +5 -9
  695. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  696. package/dest/tx/protocol_contracts.js +2 -2
  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 +71 -1129
  704. package/dest/tx/simulated_tx.d.ts.map +1 -1
  705. package/dest/tx/simulated_tx.js +12 -10
  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 +144 -67
  725. package/dest/tx/tx_receipt.d.ts.map +1 -1
  726. package/dest/tx/tx_receipt.js +141 -51
  727. package/dest/tx/validator/error_texts.d.ts +2 -2
  728. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  729. package/dest/tx/validator/error_texts.js +1 -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 +8 -19
  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.js +1 -1
  751. package/dest/vks/verification_key.d.ts +4 -139
  752. package/dest/vks/verification_key.d.ts.map +1 -1
  753. package/dest/vks/verification_key.js +5 -126
  754. package/dest/vks/vk_data.js +1 -1
  755. package/dest/world-state/genesis_data.d.ts +21 -0
  756. package/dest/world-state/genesis_data.d.ts.map +1 -0
  757. package/dest/world-state/genesis_data.js +8 -0
  758. package/dest/world-state/index.d.ts +2 -1
  759. package/dest/world-state/index.d.ts.map +1 -1
  760. package/dest/world-state/index.js +1 -0
  761. package/dest/world-state/world_state_revision.d.ts +11 -39
  762. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  763. package/dest/world-state/world_state_revision.js +7 -21
  764. package/package.json +15 -13
  765. package/src/abi/abi.ts +75 -86
  766. package/src/abi/authorization_selector.ts +2 -8
  767. package/src/abi/buffer.ts +13 -1
  768. package/src/abi/contract_artifact.ts +44 -15
  769. package/src/abi/encoder.ts +42 -6
  770. package/src/abi/event_selector.ts +2 -8
  771. package/src/abi/function_selector.ts +3 -12
  772. package/src/abi/note_selector.ts +3 -12
  773. package/src/abi/utils.ts +6 -4
  774. package/src/avm/avm.ts +6 -1
  775. package/src/avm/avm_accumulated_data.ts +6 -6
  776. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  777. package/src/avm/index.ts +0 -5
  778. package/src/avm/message_pack.ts +12 -3
  779. package/src/avm/revert_code.ts +0 -6
  780. package/src/aztec-address/index.ts +50 -17
  781. package/src/block/attestation_info.ts +16 -11
  782. package/src/block/block_data.ts +3 -4
  783. package/src/block/block_hash.ts +21 -14
  784. package/src/block/block_parameter.ts +72 -4
  785. package/src/block/index.ts +0 -1
  786. package/src/block/l2_block_info.ts +8 -6
  787. package/src/block/l2_block_source.ts +258 -144
  788. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  789. package/src/block/l2_block_stream/index.ts +1 -0
  790. package/src/block/l2_block_stream/interfaces.ts +96 -10
  791. package/src/block/l2_block_stream/l2_block_stream.ts +229 -177
  792. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  793. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  794. package/src/block/proposal/attestations_and_signers.ts +85 -24
  795. package/src/block/test/l2_tips_store_test_suite.ts +271 -22
  796. package/src/block/validate_block_result.ts +48 -2
  797. package/src/checkpoint/checkpoint.ts +13 -3
  798. package/src/checkpoint/checkpoint_data.ts +44 -4
  799. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  800. package/src/checkpoint/digest.ts +28 -0
  801. package/src/checkpoint/index.ts +4 -0
  802. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  803. package/src/checkpoint/simulation_overrides.ts +171 -0
  804. package/src/checkpoint/validate.ts +16 -6
  805. package/src/config/chain-config.ts +13 -16
  806. package/src/config/index.ts +1 -0
  807. package/src/config/network-consensus-config.ts +291 -0
  808. package/src/config/sequencer-config.ts +71 -9
  809. package/src/contract/complete_address.ts +7 -3
  810. package/src/contract/contract_address.ts +11 -10
  811. package/src/contract/contract_class.ts +3 -2
  812. package/src/contract/contract_class_id.ts +2 -2
  813. package/src/contract/contract_instance.ts +73 -3
  814. package/src/contract/index.ts +0 -3
  815. package/src/contract/interfaces/contract_class.ts +2 -82
  816. package/src/contract/interfaces/contract_data_source.ts +2 -4
  817. package/src/contract/interfaces/contract_instance.ts +32 -10
  818. package/src/contract/interfaces/node-info.ts +11 -0
  819. package/src/contract/partial_address.ts +8 -2
  820. package/src/contract/private_function.ts +3 -1
  821. package/src/database-version/version_manager.ts +113 -6
  822. package/src/deserialization/index.ts +35 -2
  823. package/src/epoch-helpers/index.ts +5 -0
  824. package/src/file-store/factory.ts +20 -4
  825. package/src/file-store/http.ts +29 -10
  826. package/src/file-store/index.ts +2 -0
  827. package/src/file-store/memory.ts +94 -0
  828. package/src/gas/README.md +230 -35
  829. package/src/gas/fee_math.ts +120 -0
  830. package/src/gas/gas.ts +8 -3
  831. package/src/gas/gas_fees.ts +26 -13
  832. package/src/gas/gas_settings.ts +19 -24
  833. package/src/gas/index.ts +2 -0
  834. package/src/gas/tx_gas_limits.ts +123 -0
  835. package/src/ha-signing/config.ts +170 -0
  836. package/src/ha-signing/index.ts +29 -0
  837. package/src/ha-signing/local_config.ts +65 -0
  838. package/src/ha-signing/types.ts +126 -0
  839. package/src/hash/hash.ts +29 -10
  840. package/src/interfaces/api_limit.ts +1 -1
  841. package/src/interfaces/archiver.ts +96 -93
  842. package/src/interfaces/aztec-node-admin.ts +36 -21
  843. package/src/interfaces/aztec-node-debug.ts +55 -3
  844. package/src/interfaces/aztec-node.ts +398 -271
  845. package/src/interfaces/block-builder.ts +10 -1
  846. package/src/interfaces/block_response.ts +92 -0
  847. package/src/interfaces/chain_tips.ts +16 -0
  848. package/src/interfaces/checkpoint_parameter.ts +20 -0
  849. package/src/interfaces/checkpoint_response.ts +84 -0
  850. package/src/interfaces/client.ts +7 -1
  851. package/src/interfaces/configs.ts +67 -7
  852. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  853. package/src/interfaces/l1_publish_info.ts +40 -0
  854. package/src/interfaces/l2_logs_source.ts +13 -39
  855. package/src/interfaces/merkle_tree_operations.ts +11 -4
  856. package/src/interfaces/p2p-bootstrap.ts +2 -2
  857. package/src/interfaces/p2p.ts +59 -19
  858. package/src/interfaces/private_kernel_prover.ts +192 -13
  859. package/src/interfaces/prover-agent.ts +1 -1
  860. package/src/interfaces/prover-client.ts +3 -8
  861. package/src/interfaces/prover-node.ts +36 -21
  862. package/src/interfaces/proving-job-source.ts +4 -4
  863. package/src/interfaces/proving-job.ts +18 -6
  864. package/src/interfaces/public_storage_override.ts +26 -0
  865. package/src/interfaces/server.ts +5 -2
  866. package/src/interfaces/server_circuit_prover.ts +2 -2
  867. package/src/interfaces/slasher.ts +17 -10
  868. package/src/interfaces/tx_provider.ts +6 -0
  869. package/src/interfaces/validator.ts +81 -45
  870. package/src/interfaces/world_state.ts +15 -1
  871. package/src/kernel/claimed_length_array.ts +2 -2
  872. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  873. package/src/kernel/hints/index.ts +0 -1
  874. package/src/kernel/hints/key_validation_request.ts +18 -16
  875. package/src/kernel/hints/private_kernel_reset_hints.ts +2 -5
  876. package/src/kernel/hints/read_request.ts +1 -1
  877. package/src/kernel/hints/read_request_hints.ts +3 -3
  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/padded_side_effects.ts +3 -3
  883. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  884. package/src/kernel/private_context_inputs.ts +10 -3
  885. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -7
  886. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  887. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  888. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  889. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  890. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  891. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  892. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  893. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  894. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  895. package/src/kernel/private_kernel_prover_output.ts +4 -0
  896. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  897. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  898. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  899. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  900. package/src/kernel/private_log_data.ts +4 -1
  901. package/src/kernel/private_to_avm_accumulated_data.ts +20 -9
  902. package/src/kernel/private_to_public_accumulated_data.ts +19 -13
  903. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  904. package/src/kernel/private_to_rollup_accumulated_data.ts +13 -8
  905. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  906. package/src/kernel/public_call_request.ts +22 -7
  907. package/src/kernel/utils/index.ts +0 -1
  908. package/src/keys/derivation.ts +79 -22
  909. package/src/keys/public_key.ts +26 -2
  910. package/src/keys/public_keys.ts +124 -110
  911. package/src/kv-store/config.ts +29 -0
  912. package/src/kv-store/index.ts +1 -0
  913. package/src/l1-contracts/index.ts +1 -1
  914. package/src/logs/app_tagging_secret.ts +160 -0
  915. package/src/logs/app_tagging_secret_kind.ts +21 -0
  916. package/src/logs/contract_class_log.ts +15 -14
  917. package/src/logs/index.ts +6 -6
  918. package/src/logs/log_cursor.ts +110 -0
  919. package/src/logs/log_result.ts +104 -0
  920. package/src/logs/logs_query.ts +138 -0
  921. package/src/logs/message_context.ts +6 -60
  922. package/src/logs/pending_tagged_log.ts +6 -33
  923. package/src/logs/pre_tag.ts +3 -6
  924. package/src/logs/private_log.ts +10 -4
  925. package/src/logs/public_log.ts +1 -11
  926. package/src/logs/query_all_logs_by_tags.ts +98 -0
  927. package/src/logs/shared_secret_derivation.ts +47 -14
  928. package/src/logs/siloed_tag.ts +14 -10
  929. package/src/logs/tag.ts +8 -8
  930. package/src/logs/tagging_index_range.ts +4 -10
  931. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  932. package/src/messaging/index.ts +1 -0
  933. package/src/messaging/l1_to_l2_message.ts +51 -13
  934. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  935. package/src/messaging/l2_to_l1_membership.ts +108 -19
  936. package/src/messaging/l2_to_l1_message.ts +29 -9
  937. package/src/noir/index.ts +4 -1
  938. package/src/p2p/attestation_utils.ts +8 -1
  939. package/src/p2p/block_proposal.ts +112 -37
  940. package/src/p2p/checkpoint_attestation.ts +38 -30
  941. package/src/p2p/checkpoint_proposal.ts +129 -74
  942. package/src/p2p/consensus_payload.ts +59 -28
  943. package/src/p2p/gossipable.ts +4 -4
  944. package/src/p2p/index.ts +0 -1
  945. package/src/p2p/signature_utils.ts +117 -23
  946. package/src/p2p/signed_txs.ts +46 -28
  947. package/src/parity/parity_base_private_inputs.ts +10 -4
  948. package/src/parity/parity_public_inputs.ts +9 -2
  949. package/src/proofs/chonk_proof.ts +131 -19
  950. package/src/rollup/avm_proof_data.ts +2 -2
  951. package/src/rollup/base_rollup_hints.ts +2 -2
  952. package/src/rollup/block_headers_hash.ts +11 -2
  953. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  954. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  955. package/src/rollup/checkpoint_header.ts +16 -2
  956. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -2
  957. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  958. package/src/rollup/root_rollup_public_inputs.ts +2 -2
  959. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  960. package/src/schemas/schemas.ts +6 -1
  961. package/src/slashing/helpers.ts +13 -9
  962. package/src/slashing/index.ts +1 -2
  963. package/src/slashing/serialization.ts +1 -81
  964. package/src/slashing/types.ts +24 -49
  965. package/src/slashing/{tally.ts → votes.ts} +1 -1
  966. package/src/stats/stats.ts +10 -2
  967. package/src/tests/factories.ts +111 -157
  968. package/src/tests/mocks.ts +71 -70
  969. package/src/timetable/README.md +609 -0
  970. package/src/timetable/budgets.ts +87 -0
  971. package/src/timetable/build_proposer_timetable.ts +42 -0
  972. package/src/timetable/consensus_timetable.ts +126 -0
  973. package/src/timetable/index.ts +4 -66
  974. package/src/timetable/proposer_timetable.ts +190 -0
  975. package/src/timetable/timetable-example.svg +108 -0
  976. package/src/trees/append_only_tree_snapshot.ts +8 -3
  977. package/src/trees/nullifier_leaf.ts +4 -0
  978. package/src/trees/nullifier_membership_witness.ts +0 -21
  979. package/src/trees/public_data_witness.ts +0 -31
  980. package/src/tx/block_header.ts +10 -5
  981. package/src/tx/execution_payload.ts +2 -1
  982. package/src/tx/fee_provider.ts +10 -0
  983. package/src/tx/global_variable_builder.ts +3 -20
  984. package/src/tx/global_variables.ts +12 -20
  985. package/src/tx/hashed_values.ts +8 -3
  986. package/src/tx/index.ts +1 -1
  987. package/src/tx/indexed_tx_effect.ts +18 -6
  988. package/src/tx/partial_state_reference.ts +8 -3
  989. package/src/tx/private_tx_constant_data.ts +25 -2
  990. package/src/tx/profiling.ts +6 -4
  991. package/src/tx/protocol_contracts.ts +2 -2
  992. package/src/tx/proven_tx.ts +6 -0
  993. package/src/tx/public_call_request_with_calldata.ts +8 -3
  994. package/src/tx/simulated_tx.ts +18 -21
  995. package/src/tx/state_reference.ts +9 -4
  996. package/src/tx/tree_snapshots.ts +9 -4
  997. package/src/tx/tx.ts +60 -24
  998. package/src/tx/tx_constant_data.ts +8 -3
  999. package/src/tx/tx_context.ts +8 -3
  1000. package/src/tx/tx_hash.ts +20 -5
  1001. package/src/tx/tx_receipt.ts +263 -80
  1002. package/src/tx/validator/error_texts.ts +2 -1
  1003. package/src/tx/validator/tx_validator.ts +1 -5
  1004. package/src/types/shared.ts +8 -13
  1005. package/src/update-checker/dev_version.ts +2 -0
  1006. package/src/update-checker/index.ts +1 -0
  1007. package/src/update-checker/package_version.ts +10 -23
  1008. package/src/validators/schemas.ts +6 -4
  1009. package/src/validators/types.ts +21 -2
  1010. package/src/versioning/versioning.ts +1 -1
  1011. package/src/vks/verification_key.ts +5 -184
  1012. package/src/vks/vk_data.ts +1 -1
  1013. package/src/world-state/genesis_data.ts +37 -0
  1014. package/src/world-state/index.ts +1 -0
  1015. package/src/world-state/world_state_revision.ts +9 -34
  1016. package/dest/abi/mocked_keys.d.ts +0 -2
  1017. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1018. package/dest/abi/mocked_keys.js +0 -1
  1019. package/dest/avm/contract_storage_read.d.ts +0 -58
  1020. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1021. package/dest/avm/contract_storage_read.js +0 -65
  1022. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1023. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1024. package/dest/avm/contract_storage_update_request.js +0 -80
  1025. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1026. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1027. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1028. package/dest/avm/public_data_update_request.d.ts +0 -62
  1029. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1030. package/dest/avm/public_data_update_request.js +0 -67
  1031. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1032. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1033. package/dest/avm/public_inner_call_request.js +0 -74
  1034. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1035. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1036. package/dest/block/checkpointed_l2_block.js +0 -46
  1037. package/dest/contract/deployment_info.d.ts +0 -24
  1038. package/dest/contract/deployment_info.d.ts.map +0 -1
  1039. package/dest/contract/deployment_info.js +0 -3
  1040. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1041. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1042. package/dest/contract/private_function_membership_proof.js +0 -124
  1043. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1044. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1045. package/dest/contract/utility_function_membership_proof.js +0 -87
  1046. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1047. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1048. package/dest/interfaces/epoch-prover.js +0 -1
  1049. package/dest/interfaces/get_logs_response.d.ts +0 -97
  1050. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1051. package/dest/interfaces/get_logs_response.js +0 -12
  1052. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1053. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1054. package/dest/interfaces/prover-coordination.js +0 -1
  1055. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1056. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1057. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1058. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1059. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1060. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1061. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1062. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1063. package/dest/kernel/utils/optional_number.js +0 -42
  1064. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1065. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1066. package/dest/l1-contracts/slash_factory.js +0 -158
  1067. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1068. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1069. package/dest/logs/extended_contract_class_log.js +0 -67
  1070. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  1071. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  1072. package/dest/logs/extended_directional_app_tagging_secret.js +0 -79
  1073. package/dest/logs/extended_public_log.d.ts +0 -106
  1074. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1075. package/dest/logs/extended_public_log.js +0 -73
  1076. package/dest/logs/log_filter.d.ts +0 -25
  1077. package/dest/logs/log_filter.d.ts.map +0 -1
  1078. package/dest/logs/log_filter.js +0 -12
  1079. package/dest/logs/log_id.d.ts +0 -85
  1080. package/dest/logs/log_id.d.ts.map +0 -1
  1081. package/dest/logs/log_id.js +0 -94
  1082. package/dest/logs/tx_scoped_l2_log.d.ts +0 -51
  1083. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1084. package/dest/logs/tx_scoped_l2_log.js +0 -77
  1085. package/dest/p2p/interface.d.ts +0 -5
  1086. package/dest/p2p/interface.d.ts.map +0 -1
  1087. package/dest/p2p/interface.js +0 -1
  1088. package/dest/slashing/empire.d.ts +0 -31
  1089. package/dest/slashing/empire.d.ts.map +0 -1
  1090. package/dest/slashing/empire.js +0 -87
  1091. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1092. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1093. package/dest/tx/validator/empty_validator.js +0 -7
  1094. package/src/abi/mocked_keys.ts +0 -2
  1095. package/src/avm/contract_storage_read.ts +0 -77
  1096. package/src/avm/contract_storage_update_request.ts +0 -93
  1097. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1098. package/src/avm/public_data_update_request.ts +0 -106
  1099. package/src/avm/public_inner_call_request.ts +0 -85
  1100. package/src/block/checkpointed_l2_block.ts +0 -70
  1101. package/src/contract/deployment_info.ts +0 -25
  1102. package/src/contract/private_function_membership_proof.ts +0 -167
  1103. package/src/contract/utility_function_membership_proof.ts +0 -118
  1104. package/src/interfaces/epoch-prover.ts +0 -72
  1105. package/src/interfaces/get_logs_response.ts +0 -35
  1106. package/src/interfaces/prover-coordination.ts +0 -17
  1107. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1108. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1109. package/src/kernel/utils/optional_number.ts +0 -50
  1110. package/src/l1-contracts/slash_factory.ts +0 -180
  1111. package/src/logs/extended_contract_class_log.ts +0 -87
  1112. package/src/logs/extended_directional_app_tagging_secret.ts +0 -98
  1113. package/src/logs/extended_public_log.ts +0 -94
  1114. package/src/logs/log_filter.ts +0 -36
  1115. package/src/logs/log_id.ts +0 -125
  1116. package/src/logs/tx_scoped_l2_log.ts +0 -114
  1117. package/src/p2p/interface.ts +0 -4
  1118. package/src/slashing/empire.ts +0 -104
  1119. package/src/tx/validator/empty_validator.ts +0 -7
@@ -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,95 +9,118 @@ 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';
16
15
  import type { CheckpointHeader } from '@aztec/stdlib/rollup';
17
16
  import type { BlockHeader, Tx } from '@aztec/stdlib/tx';
18
- import { type ValidatorHASignerConfig, ValidatorHASignerConfigSchema } from '@aztec/validator-ha-signer/config';
19
17
 
20
18
  import type { PeerId } from '@libp2p/interface';
21
19
  import { z } from 'zod';
22
20
 
23
21
  import type { CommitteeAttestationsAndSigners } from '../block/index.js';
22
+ import type { ChainConfig } from '../config/chain-config.js';
23
+ import {
24
+ type LocalSignerConfig,
25
+ LocalSignerConfigSchema,
26
+ type ValidatorHASignerConfig,
27
+ ValidatorHASignerConfigSchema,
28
+ } from '../ha-signing/index.js';
24
29
  import { AllowedElementSchema } from './allowed_element.js';
25
30
 
26
31
  /**
27
32
  * Validator client configuration
28
33
  */
29
- export type ValidatorClientConfig = ValidatorHASignerConfig & {
30
- /** The private keys of the validators participating in attestation duties */
31
- validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
34
+ export type ValidatorClientConfig = ValidatorHASignerConfig &
35
+ LocalSignerConfig & {
36
+ /** The L1 chain id used for EIP-712 proposal-path signing. */
37
+ l1ChainId: ChainConfig['l1ChainId'];
32
38
 
33
- /** The addresses of the validators to use with remote signers */
34
- validatorAddresses?: EthAddress[];
39
+ /** The private keys of the validators participating in attestation duties */
40
+ validatorPrivateKeys?: SecretValue<`0x${string}`[]>;
35
41
 
36
- /** Do not run the validator */
37
- disableValidator: boolean;
42
+ /** The addresses of the validators to use with remote signers */
43
+ validatorAddresses?: EthAddress[];
38
44
 
39
- /** Temporarily disable these specific validator addresses */
40
- disabledValidators: EthAddress[];
45
+ /** Do not run the validator */
46
+ disableValidator: boolean;
41
47
 
42
- /** Interval between polling for new attestations from peers */
43
- attestationPollingIntervalMs: number;
48
+ /** Temporarily disable these specific validator addresses */
49
+ disabledValidators: EthAddress[];
44
50
 
45
- /** Whether to re-execute transactions in a block proposal before attesting */
46
- validatorReexecute: boolean;
51
+ /** Interval between polling for new attestations from peers */
52
+ attestationPollingIntervalMs: number;
47
53
 
48
- /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the currnet committee */
49
- alwaysReexecuteBlockProposals?: boolean;
54
+ /** Whether to always reexecute block proposals, even for non-validator nodes or when out of the current committee */
55
+ alwaysReexecuteBlockProposals?: boolean;
50
56
 
51
- /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
52
- fishermanMode?: boolean;
57
+ /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
58
+ fishermanMode?: boolean;
53
59
 
54
- /** Skip checkpoint proposal validation and always attest (default: false) */
55
- skipCheckpointProposalValidation?: boolean;
60
+ /** Skip checkpoint proposal validation and always attest (default: false) */
61
+ skipCheckpointProposalValidation?: boolean;
56
62
 
57
- /** Skip pushing re-executed blocks to archiver (default: false) */
58
- skipPushProposedBlocksToArchiver?: boolean;
63
+ /** Skip pushing re-executed blocks to archiver (default: false) */
64
+ skipPushProposedBlocksToArchiver?: boolean;
59
65
 
60
- /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
61
- attestToEquivocatedProposals?: boolean;
66
+ /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
67
+ attestToEquivocatedProposals?: boolean;
62
68
 
63
- /** Maximum L2 gas per block for validation. Proposals exceeding this limit are rejected. */
64
- validateMaxL2BlockGas?: number;
69
+ /** Accept proposal validation regardless of slot timing (for testing only) */
70
+ skipProposalSlotValidation?: boolean;
65
71
 
66
- /** Maximum DA gas per block for validation. Proposals exceeding this limit are rejected. */
67
- validateMaxDABlockGas?: number;
72
+ /** Maximum L2 gas per block for validation. Proposals exceeding this limit are rejected. */
73
+ validateMaxL2BlockGas?: number;
68
74
 
69
- /** Maximum transactions per block for validation. Proposals exceeding this limit are rejected. */
70
- validateMaxTxsPerBlock?: number;
75
+ /** Maximum DA gas per block for validation. Proposals exceeding this limit are rejected. */
76
+ validateMaxDABlockGas?: number;
71
77
 
72
- /** Maximum transactions per checkpoint for validation. Proposals exceeding this limit are rejected. */
73
- validateMaxTxsPerCheckpoint?: number;
74
- };
78
+ /** Maximum transactions per block for validation. Proposals exceeding this limit are rejected. */
79
+ validateMaxTxsPerBlock?: number;
80
+
81
+ /** Maximum transactions per checkpoint for validation. Proposals exceeding this limit are rejected. */
82
+ validateMaxTxsPerCheckpoint?: number;
83
+ };
75
84
 
76
85
  export type ValidatorClientFullConfig = ValidatorClientConfig &
77
- 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'>> &
78
90
  Pick<
79
91
  SlasherConfig,
80
- 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'
92
+ | 'slashBroadcastedInvalidBlockPenalty'
93
+ | 'slashBroadcastedInvalidCheckpointProposalPenalty'
94
+ | 'slashDuplicateProposalPenalty'
95
+ | 'slashDuplicateAttestationPenalty'
96
+ | 'slashAttestInvalidCheckpointProposalPenalty'
81
97
  > & {
82
98
  /**
83
99
  * Whether transactions are disabled for this node
84
100
  * @remarks This should match the property in P2PConfig. It's not picked from there to avoid circular dependencies.
85
101
  */
86
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;
87
109
  };
88
110
 
89
111
  export const ValidatorClientConfigSchema = zodFor<Omit<ValidatorClientConfig, 'validatorPrivateKeys'>>()(
90
- ValidatorHASignerConfigSchema.extend({
112
+ ValidatorHASignerConfigSchema.merge(LocalSignerConfigSchema).extend({
113
+ l1ChainId: z.number().int().nonnegative(),
91
114
  validatorAddresses: z.array(schemas.EthAddress).optional(),
92
115
  disableValidator: z.boolean(),
93
116
  disabledValidators: z.array(schemas.EthAddress),
94
117
  attestationPollingIntervalMs: z.number().min(0),
95
- validatorReexecute: z.boolean(),
96
118
  alwaysReexecuteBlockProposals: z.boolean().optional(),
97
119
  fishermanMode: z.boolean().optional(),
98
120
  skipCheckpointProposalValidation: z.boolean().optional(),
99
121
  skipPushProposedBlocksToArchiver: z.boolean().optional(),
100
122
  attestToEquivocatedProposals: z.boolean().optional(),
123
+ skipProposalSlotValidation: z.boolean().optional(),
101
124
  validateMaxL2BlockGas: z.number().optional(),
102
125
  validateMaxDABlockGas: z.number().optional(),
103
126
  validateMaxTxsPerBlock: z.number().optional(),
@@ -109,15 +132,18 @@ export const ValidatorClientFullConfigSchema = zodFor<Omit<ValidatorClientFullCo
109
132
  ValidatorClientConfigSchema.extend({
110
133
  txPublicSetupAllowListExtend: z.array(AllowedElementSchema).optional(),
111
134
  broadcastInvalidBlockProposal: z.boolean().optional(),
135
+ blockDurationMs: z.number().positive(),
136
+ maxBlocksPerCheckpoint: z.number().positive().optional(),
112
137
  slashBroadcastedInvalidBlockPenalty: schemas.BigInt,
138
+ slashBroadcastedInvalidCheckpointProposalPenalty: schemas.BigInt,
113
139
  slashDuplicateProposalPenalty: schemas.BigInt,
114
140
  slashDuplicateAttestationPenalty: schemas.BigInt,
141
+ slashAttestInvalidCheckpointProposalPenalty: schemas.BigInt,
115
142
  disableTransactions: z.boolean().optional(),
143
+ maxGossipClockDisparityMs: z.number().optional(),
116
144
  }),
117
145
  );
118
146
 
119
- export type CreateCheckpointProposalLastBlockData = Omit<CheckpointLastBlockData, 'txHashes'> & { txs: Tx[] };
120
-
121
147
  export interface Validator {
122
148
  start(): Promise<void>;
123
149
  updateConfig(config: Partial<ValidatorClientFullConfig>): void;
@@ -125,6 +151,7 @@ export interface Validator {
125
151
  // Block validation responsibilities
126
152
  createBlockProposal(
127
153
  blockHeader: BlockHeader,
154
+ checkpointNumber: CheckpointNumber,
128
155
  indexWithinCheckpoint: number,
129
156
  inHash: Fr,
130
157
  archive: Fr,
@@ -137,8 +164,9 @@ export interface Validator {
137
164
  createCheckpointProposal(
138
165
  checkpointHeader: CheckpointHeader,
139
166
  archive: Fr,
167
+ checkpointNumber: CheckpointNumber,
140
168
  feeAssetPriceModifier: bigint,
141
- lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined,
169
+ lastBlockProposal: BlockProposal | undefined,
142
170
  proposerAddress: EthAddress | undefined,
143
171
  options: CheckpointProposalOptions,
144
172
  ): Promise<CheckpointProposal>;
@@ -162,15 +190,23 @@ export interface Validator {
162
190
  broadcastBlockProposal(proposal: BlockProposal): Promise<void>;
163
191
 
164
192
  /** Collect own attestations for a checkpoint proposal (used when skipping p2p attestation collection) */
165
- collectOwnAttestations(proposal: CheckpointProposal): Promise<CheckpointAttestation[]>;
193
+ collectOwnAttestations(
194
+ proposal: CheckpointProposal,
195
+ checkpointNumber: CheckpointNumber,
196
+ ): Promise<CheckpointAttestation[]>;
166
197
 
167
198
  /** Collect attestations from the p2p network for a checkpoint proposal */
168
- 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[]>;
169
205
 
170
206
  signAttestationsAndSigners(
171
207
  attestationsAndSigners: CommitteeAttestationsAndSigners,
172
208
  proposer: EthAddress,
173
209
  slot: SlotNumber,
174
- blockNumber: BlockNumber | CheckpointNumber,
210
+ checkpointNumber: CheckpointNumber,
175
211
  ): Promise<Signature>;
176
212
  }
@@ -65,6 +65,20 @@ export interface ReadonlyWorldStateAccess {
65
65
 
66
66
  /** Defines the interface for a world state synchronizer. */
67
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
+
68
82
  /** Starts the synchronizer. */
69
83
  start(): Promise<void | PromiseWithResolvers<void>>;
70
84
 
@@ -92,7 +106,7 @@ export interface WorldStateSynchronizer extends ReadonlyWorldStateAccess, ForkMe
92
106
  clear(): Promise<void>;
93
107
  }
94
108
 
95
- export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, z.ZodTypeDef, any> = z.object({
109
+ export const WorldStateSyncStatusSchema: z.ZodType<WorldStateSyncStatus, any> = z.object({
96
110
  finalizedBlockNumber: BlockNumberSchema,
97
111
  latestBlockNumber: BlockNumberSchema,
98
112
  latestBlockHash: z.string(),
@@ -25,7 +25,7 @@ export class ClaimedLengthArray<T extends Serializable, N extends number> {
25
25
  arrayLength: N,
26
26
  ): ClaimedLengthArray<T, N> {
27
27
  const reader = BufferReader.asReader(buffer);
28
- const array = reader.readArray(arrayLength, deserializer) as Tuple<T, N>;
28
+ const array = reader.readArray(arrayLength, deserializer);
29
29
  const claimedLength = reader.readNumber();
30
30
  return new ClaimedLengthArray(array, claimedLength);
31
31
  }
@@ -42,7 +42,7 @@ export class ClaimedLengthArray<T extends Serializable, N extends number> {
42
42
  arrayLength: N,
43
43
  ): ClaimedLengthArray<T, N> {
44
44
  const reader = FieldReader.asReader(fields);
45
- const array = reader.readTuple(arrayLength, deserializer);
45
+ const array = reader.readArray(arrayLength, deserializer);
46
46
  const claimedLength = reader.readU32();
47
47
  return new ClaimedLengthArray(array, claimedLength);
48
48
  }
@@ -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
  }
@@ -105,11 +105,8 @@ export class PrivateKernelResetHints<
105
105
  fromBuffer: buf =>
106
106
  nullifierReadRequestHintsFromBuffer(buf, numNullifierReadRequestPending, numNullifierReadRequestSettled),
107
107
  }),
108
- reader.readArray(numKeyValidationHints, KeyValidationHint) as Tuple<KeyValidationHint, KEY_VALIDATION_HINTS_LEN>,
109
- reader.readArray(numTransientDataSquashingHints, TransientDataSquashingHint) as Tuple<
110
- TransientDataSquashingHint,
111
- TRANSIENT_DATA_HINTS_LEN
112
- >,
108
+ reader.readArray(numKeyValidationHints, KeyValidationHint),
109
+ reader.readArray(numTransientDataSquashingHints, TransientDataSquashingHint),
113
110
  );
114
111
  }
115
112
  }
@@ -112,7 +112,7 @@ export class ScopedReadRequest {
112
112
 
113
113
  static fromFields(fields: Fr[] | FieldReader) {
114
114
  const reader = FieldReader.asReader(fields);
115
- return new ScopedReadRequest(reader.readObject(ReadRequest), AztecAddress.fromField(reader.readField()));
115
+ return new ScopedReadRequest(reader.readObject(ReadRequest), AztecAddress.fromFieldUnsafe(reader.readField()));
116
116
  }
117
117
 
118
118
  /**
@@ -158,11 +158,11 @@ export class ReadRequestResetHints<
158
158
  > {
159
159
  const reader = BufferReader.asReader(buffer);
160
160
  return new ReadRequestResetHints(
161
- reader.readArray(readRequestLen, ReadRequestAction) as Tuple<ReadRequestAction, READ_REQUEST_LEN>,
162
- reader.readArray(numPendingReads, PendingReadHint) as Tuple<PendingReadHint, PENDING_READ_HINTS_LEN>,
161
+ reader.readArray(readRequestLen, ReadRequestAction),
162
+ reader.readArray(numPendingReads, PendingReadHint),
163
163
  reader.readArray(numSettledReads, {
164
164
  fromBuffer: r => SettledReadHint.fromBuffer(r, treeHeight, leafPreimageFromBuffer),
165
- }) as Tuple<SettledReadHint<TREE_HEIGHT, LEAF_PREIMAGE>, SETTLED_READ_HINTS_LEN>,
165
+ }),
166
166
  );
167
167
  }
168
168