@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
package/src/p2p/index.ts CHANGED
@@ -4,7 +4,6 @@ export * from './checkpoint_attestation.js';
4
4
  export * from './checkpoint_proposal.js';
5
5
  export * from './consensus_payload.js';
6
6
  export * from './gossipable.js';
7
- export * from './interface.js';
8
7
  export * from './signature_utils.js';
9
8
  export * from './signed_txs.js';
10
9
  export * from './topic_type.js';
@@ -1,37 +1,131 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
2
  import { keccak256 } from '@aztec/foundation/crypto/keccak';
3
- import { makeEthSignDigest } from '@aztec/foundation/crypto/secp256k1-signer';
3
+ import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
4
+ import { EthAddress } from '@aztec/foundation/eth-address';
5
+ import type { Signature } from '@aztec/foundation/eth-signature';
6
+ import { type BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
7
 
5
- export enum SignatureDomainSeparator {
6
- blockProposal = 0,
7
- checkpointAttestation = 1,
8
- attestationsAndSigners = 2,
9
- checkpointProposal = 3,
10
- signedTxs = 4,
11
- }
8
+ import { type TypedDataDefinition, hashTypedData } from 'viem';
9
+ import { z } from 'zod';
10
+
11
+ import type { ZodFor } from '../schemas/index.js';
12
+
13
+ export type CoordinationSignatureType =
14
+ | 'BlockProposal'
15
+ | 'CheckpointProposal'
16
+ | 'CheckpointAttestation'
17
+ | 'AttestationsAndSigners'
18
+ | 'SignedTxs';
19
+
20
+ export type CoordinationSignatureContext = {
21
+ chainId: number;
22
+ rollupAddress: EthAddress;
23
+ };
24
+
25
+ export const EMPTY_COORDINATION_SIGNATURE_CONTEXT: CoordinationSignatureContext = {
26
+ chainId: 0,
27
+ rollupAddress: EthAddress.ZERO,
28
+ };
29
+
30
+ export const coordinationSignatureContextSchema: ZodFor<CoordinationSignatureContext> = z.object({
31
+ chainId: z.number(),
32
+ rollupAddress: EthAddress.schema,
33
+ });
12
34
 
13
35
  export interface Signable {
14
- getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer;
36
+ readonly primaryType: CoordinationSignatureType;
37
+ readonly signatureContext: CoordinationSignatureContext;
38
+ getPayloadToSign(): Buffer;
39
+ }
40
+
41
+ export function coordinationSignatureContextEquals(
42
+ a: CoordinationSignatureContext,
43
+ b: CoordinationSignatureContext,
44
+ ): boolean {
45
+ return a.chainId === b.chainId && a.rollupAddress.equals(b.rollupAddress);
46
+ }
47
+
48
+ export function serializeCoordinationSignatureContext(ctx: CoordinationSignatureContext): Buffer {
49
+ return serializeToBuffer([ctx.chainId, ctx.rollupAddress]);
50
+ }
51
+
52
+ export function readCoordinationSignatureContext(reader: BufferReader): CoordinationSignatureContext {
53
+ const chainId = reader.readNumber();
54
+ const rollupAddress = reader.readObject(EthAddress);
55
+ return { chainId, rollupAddress };
15
56
  }
16
57
 
17
58
  /**
18
- * Get the hashed payload for the signature of the `Signable`
19
- * @param s - The `Signable` to sign
20
- * @returns The hashed payload for the signature of the `Signable`
59
+ * Returns true if the signable carries a context matching the node's expected context.
60
+ * Use this at the P2P ingress boundary to reject foreign-chain messages cheaply before
61
+ * performing any signature recovery.
21
62
  */
22
- export function getHashedSignaturePayload(s: Signable, domainSeparator: SignatureDomainSeparator): Buffer32 {
23
- return Buffer32.fromBuffer(keccak256(s.getPayloadToSign(domainSeparator)));
63
+ export function hasValidSignatureContext(signable: Signable, expected: CoordinationSignatureContext): boolean {
64
+ return coordinationSignatureContextEquals(signable.signatureContext, expected);
65
+ }
66
+
67
+ const COORDINATION_SIGNATURE_NAME = 'Aztec Rollup';
68
+ const COORDINATION_SIGNATURE_VERSION = '1';
69
+
70
+ const EIP712_DOMAIN_FIELDS = [
71
+ { name: 'name', type: 'string' },
72
+ { name: 'version', type: 'string' },
73
+ { name: 'chainId', type: 'uint256' },
74
+ { name: 'verifyingContract', type: 'address' },
75
+ ] as const;
76
+
77
+ const COORDINATION_SIGNATURE_TYPES = {
78
+ EIP712Domain: EIP712_DOMAIN_FIELDS,
79
+ BlockProposal: [{ name: 'payloadHash', type: 'bytes32' }],
80
+ CheckpointProposal: [{ name: 'payloadHash', type: 'bytes32' }],
81
+ CheckpointAttestation: [{ name: 'payloadHash', type: 'bytes32' }],
82
+ AttestationsAndSigners: [{ name: 'payloadHash', type: 'bytes32' }],
83
+ SignedTxs: [{ name: 'payloadHash', type: 'bytes32' }],
84
+ } as const;
85
+
86
+ export function getCoordinationSignatureTypedDataForPayloadHash(
87
+ payloadHash: Buffer32,
88
+ type: CoordinationSignatureType,
89
+ context: CoordinationSignatureContext,
90
+ ): TypedDataDefinition {
91
+ return {
92
+ domain: {
93
+ name: COORDINATION_SIGNATURE_NAME,
94
+ version: COORDINATION_SIGNATURE_VERSION,
95
+ chainId: context.chainId,
96
+ verifyingContract: context.rollupAddress.toString() as `0x${string}`,
97
+ },
98
+ types: COORDINATION_SIGNATURE_TYPES,
99
+ primaryType: type,
100
+ message: {
101
+ payloadHash: payloadHash.toString() as `0x${string}`,
102
+ },
103
+ };
104
+ }
105
+
106
+ export function getCoordinationSignatureTypedData(signable: Signable): TypedDataDefinition {
107
+ const payloadHash = getHashedSignaturePayload(signable);
108
+ return getCoordinationSignatureTypedDataForPayloadHash(payloadHash, signable.primaryType, signable.signatureContext);
109
+ }
110
+
111
+ export function getHashedSignaturePayloadTypedData(signable: Signable): Buffer32 {
112
+ return Buffer32.fromString(hashTypedData(getCoordinationSignatureTypedData(signable)));
24
113
  }
25
114
 
26
115
  /**
27
- * Get the hashed payload for the signature of the `Signable` as an Ethereum signed message EIP-712
28
- * @param s - the `Signable` to sign
29
- * @returns The hashed payload for the signature of the `Signable` as an Ethereum signed message
116
+ * Recovers the sender of a gossiped coordination message. Deliberately lenient (allowYParityAsV): a
117
+ * signature whose recovery byte is in yParity form (v ∈ {0, 1}) still resolves to its sender, so the P2P
118
+ * layer can attribute and accept it and then canonicalize on ingress (CheckpointAttestation.
119
+ * withNormalizedSignature, A-1351) before it reaches the L1 bundle. This is intentionally looser than
120
+ * on-chain checkpoint validation (getAttestationInfoFromPayload), which recovers strictly to mirror L1's
121
+ * ECDSA.recover — do not unify the two. These proposal/attestation signatures are P2P-only and never reach
122
+ * L1 verbatim, so leniency here cannot leak a non-canonical byte onto L1.
30
123
  */
31
- export function getHashedSignaturePayloadEthSignedMessage(
32
- s: Signable,
33
- domainSeparator: SignatureDomainSeparator,
34
- ): Buffer32 {
35
- const payload = getHashedSignaturePayload(s, domainSeparator);
36
- return makeEthSignDigest(payload);
124
+ export function recoverCoordinationSigner(signable: Signable, signature: Signature): EthAddress | undefined {
125
+ const digest = getHashedSignaturePayloadTypedData(signable);
126
+ return tryRecoverAddress(digest, signature, { allowYParityAsV: true });
127
+ }
128
+
129
+ export function getHashedSignaturePayload(s: Signable): Buffer32 {
130
+ return Buffer32.fromBuffer(keccak256(s.getPayloadToSign()));
37
131
  }
@@ -1,15 +1,20 @@
1
- import { Buffer32 } from '@aztec/foundation/buffer';
2
- import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
3
1
  import type { EthAddress } from '@aztec/foundation/eth-address';
4
2
  import { Signature } from '@aztec/foundation/eth-signature';
5
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
6
4
 
5
+ import type { TypedDataDefinition } from 'viem';
6
+
7
7
  import { MAX_TXS_PER_BLOCK } from '../deserialization/index.js';
8
8
  import { Tx } from '../tx/tx.js';
9
9
  import {
10
- SignatureDomainSeparator,
11
- getHashedSignaturePayload,
12
- getHashedSignaturePayloadEthSignedMessage,
10
+ type CoordinationSignatureContext,
11
+ type CoordinationSignatureType,
12
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
13
+ type Signable,
14
+ getCoordinationSignatureTypedData,
15
+ readCoordinationSignatureContext,
16
+ recoverCoordinationSigner,
17
+ serializeCoordinationSignatureContext,
13
18
  } from './signature_utils.js';
14
19
 
15
20
  /**
@@ -17,50 +22,56 @@ import {
17
22
  * The signature is over the transaction objects themselves, providing
18
23
  * data availability guarantees beyond just the transaction hashes.
19
24
  */
20
- export class SignedTxs {
21
- private sender: EthAddress | undefined;
25
+ export class SignedTxs implements Signable {
26
+ readonly primaryType: CoordinationSignatureType = 'SignedTxs';
27
+
28
+ private cachedSender: EthAddress | undefined | null = undefined;
22
29
 
23
30
  constructor(
24
31
  /** The transactions */
25
32
  public readonly txs: Tx[],
26
33
  /** The proposer's signature over the transactions */
27
34
  public readonly signature: Signature,
35
+ /** The signing domain (chainId + rollupAddress) the signature is bound to */
36
+ public readonly signatureContext: CoordinationSignatureContext,
28
37
  ) {}
29
38
 
30
- /**
31
- * Get the payload to sign for this signed txs.
32
- */
33
- getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer {
34
- return serializeToBuffer([domainSeparator, this.txs.length, this.txs]);
39
+ getPayloadToSign(): Buffer {
40
+ return serializeToBuffer([this.txs.length, this.txs]);
35
41
  }
36
42
 
37
43
  /**
38
- * Lazily evaluate the sender of the signed txs; result is cached
44
+ * Lazily evaluate the sender of the signed txs; result is cached.
39
45
  * @returns The sender address, or undefined if signature recovery fails
40
46
  */
41
47
  getSender(): EthAddress | undefined {
42
- if (!this.sender) {
43
- const hashed = getHashedSignaturePayloadEthSignedMessage(this, SignatureDomainSeparator.signedTxs);
44
- this.sender = tryRecoverAddress(hashed, this.signature);
48
+ if (this.cachedSender === undefined) {
49
+ this.cachedSender = recoverCoordinationSigner(this, this.signature) ?? null;
45
50
  }
46
- return this.sender;
51
+ return this.cachedSender ?? undefined;
47
52
  }
48
53
 
49
54
  /**
50
- * Create SignedTxs from a signer function
55
+ * Create SignedTxs from a typed-data signer function
51
56
  */
52
57
  static async createFromSigner(
53
58
  txs: Tx[],
54
- payloadSigner: (payload: Buffer32) => Promise<Signature>,
59
+ signatureContext: CoordinationSignatureContext,
60
+ typedDataSigner: (typedData: TypedDataDefinition) => Promise<Signature>,
55
61
  ): Promise<SignedTxs> {
56
- const tempSignedTxs = new SignedTxs(txs, Signature.empty());
57
- const hashed = getHashedSignaturePayload(tempSignedTxs, SignatureDomainSeparator.signedTxs);
58
- const signature = await payloadSigner(hashed);
59
- return new SignedTxs(txs, signature);
62
+ const tempSignedTxs = new SignedTxs(txs, Signature.empty(), signatureContext);
63
+ const typedData = getCoordinationSignatureTypedData(tempSignedTxs);
64
+ const signature = await typedDataSigner(typedData);
65
+ return new SignedTxs(txs, signature, signatureContext);
60
66
  }
61
67
 
62
68
  toBuffer(): Buffer {
63
- return serializeToBuffer([this.txs.length, this.txs, this.signature]);
69
+ return serializeToBuffer([
70
+ this.txs.length,
71
+ this.txs,
72
+ this.signature,
73
+ serializeCoordinationSignatureContext(this.signatureContext),
74
+ ]);
64
75
  }
65
76
 
66
77
  static fromBuffer(buf: Buffer | BufferReader): SignedTxs {
@@ -71,18 +82,25 @@ export class SignedTxs {
71
82
  }
72
83
  const txs = reader.readArray(txCount, Tx);
73
84
  const signature = reader.readObject(Signature);
74
- return new SignedTxs(txs, signature);
85
+ const signatureContext = readCoordinationSignatureContext(reader);
86
+ return new SignedTxs(txs, signature, signatureContext);
75
87
  }
76
88
 
77
89
  getSize(): number {
78
- return 4 /* txs.length */ + this.txs.reduce((acc, tx) => acc + tx.getSize(), 0) + this.signature.getSize();
90
+ return (
91
+ 4 /* txs.length */ +
92
+ this.txs.reduce((acc, tx) => acc + tx.getSize(), 0) +
93
+ this.signature.getSize() +
94
+ 4 /* chainId */ +
95
+ 20 /* rollupAddress */
96
+ );
79
97
  }
80
98
 
81
99
  static empty(): SignedTxs {
82
- return new SignedTxs([], Signature.empty());
100
+ return new SignedTxs([], Signature.empty(), EMPTY_COORDINATION_SIGNATURE_CONTEXT);
83
101
  }
84
102
 
85
103
  static random(): SignedTxs {
86
- return new SignedTxs([Tx.random(), Tx.random()], Signature.random());
104
+ return new SignedTxs([Tx.random(), Tx.random()], Signature.random(), EMPTY_COORDINATION_SIGNATURE_CONTEXT);
87
105
  }
88
106
  }
@@ -10,9 +10,11 @@ export class ParityBasePrivateInputs {
10
10
  public readonly msgs: Tuple<Fr, typeof NUM_MSGS_PER_BASE_PARITY>,
11
11
  /** Root of the VK tree */
12
12
  public readonly vkTreeRoot: Fr,
13
+ /** Prover identity committed to by the circuit, for sybil protection. */
14
+ public readonly proverId: Fr,
13
15
  ) {}
14
16
 
15
- public static fromSlice(array: Fr[], index: number, vkTreeRoot: Fr): ParityBasePrivateInputs {
17
+ public static fromSlice(array: Fr[], index: number, vkTreeRoot: Fr, proverId: Fr): ParityBasePrivateInputs {
16
18
  // Can't use Tuple<Fr, typeof NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP> due to length
17
19
  if (array.length !== NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP) {
18
20
  throw new Error(
@@ -22,12 +24,12 @@ export class ParityBasePrivateInputs {
22
24
  const start = index * NUM_MSGS_PER_BASE_PARITY;
23
25
  const end = start + NUM_MSGS_PER_BASE_PARITY;
24
26
  const msgs = array.slice(start, end);
25
- return new ParityBasePrivateInputs(msgs as Tuple<Fr, typeof NUM_MSGS_PER_BASE_PARITY>, vkTreeRoot);
27
+ return new ParityBasePrivateInputs(msgs as Tuple<Fr, typeof NUM_MSGS_PER_BASE_PARITY>, vkTreeRoot, proverId);
26
28
  }
27
29
 
28
30
  /** Serializes the inputs to a buffer. */
29
31
  toBuffer() {
30
- return serializeToBuffer(this.msgs, this.vkTreeRoot);
32
+ return serializeToBuffer(this.msgs, this.vkTreeRoot, this.proverId);
31
33
  }
32
34
 
33
35
  /** Serializes the inputs to a hex string. */
@@ -41,7 +43,11 @@ export class ParityBasePrivateInputs {
41
43
  */
42
44
  static fromBuffer(buffer: Buffer | BufferReader) {
43
45
  const reader = BufferReader.asReader(buffer);
44
- return new ParityBasePrivateInputs(reader.readTuple(NUM_MSGS_PER_BASE_PARITY, Fr), Fr.fromBuffer(reader));
46
+ return new ParityBasePrivateInputs(
47
+ reader.readArray(NUM_MSGS_PER_BASE_PARITY, Fr),
48
+ Fr.fromBuffer(reader),
49
+ Fr.fromBuffer(reader),
50
+ );
45
51
  }
46
52
 
47
53
  /**
@@ -12,6 +12,8 @@ export class ParityPublicInputs {
12
12
  public convertedRoot: Fr,
13
13
  /** Root of the VK tree */
14
14
  public vkTreeRoot: Fr,
15
+ /** Prover identity committed to by the circuit, for sybil protection. */
16
+ public proverId: Fr,
15
17
  ) {
16
18
  if (shaRoot.toBuffer()[0] != 0) {
17
19
  throw new Error(`shaRoot buffer must be 31 bytes. Got 32 bytes`);
@@ -54,7 +56,7 @@ export class ParityPublicInputs {
54
56
  * @returns The instance fields.
55
57
  */
56
58
  static getFields(fields: FieldsOf<ParityPublicInputs>) {
57
- return [fields.shaRoot, fields.convertedRoot, fields.vkTreeRoot] as const;
59
+ return [fields.shaRoot, fields.convertedRoot, fields.vkTreeRoot, fields.proverId] as const;
58
60
  }
59
61
 
60
62
  /**
@@ -64,7 +66,12 @@ export class ParityPublicInputs {
64
66
  */
65
67
  static fromBuffer(buffer: Buffer | BufferReader) {
66
68
  const reader = BufferReader.asReader(buffer);
67
- return new ParityPublicInputs(reader.readObject(Fr), reader.readObject(Fr), Fr.fromBuffer(reader));
69
+ return new ParityPublicInputs(
70
+ reader.readObject(Fr),
71
+ reader.readObject(Fr),
72
+ Fr.fromBuffer(reader),
73
+ Fr.fromBuffer(reader),
74
+ );
68
75
  }
69
76
 
70
77
  /**
@@ -1,21 +1,45 @@
1
+ import { BarretenbergSync, flattenChonkProofFields } from '@aztec/bb.js';
1
2
  import { CHONK_PROOF_LENGTH } from '@aztec/constants';
2
3
  import { times } from '@aztec/foundation/collection';
3
4
  import { randomBytes } from '@aztec/foundation/crypto/random';
4
5
  import { Fr } from '@aztec/foundation/curves/bn254';
5
6
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
6
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
7
+ import { BufferReader, BufferSink } from '@aztec/foundation/serialize';
8
+
9
+ /**
10
+ * Serialization format detection for ChonkProof is value-based on the leading uint32:
11
+ * - EMPTY: [0: uint32] → total = 4 bytes
12
+ * - UNCOMPRESSED (legacy): [field_count=1632: uint32] [fields...] → total ≈ 52KB (>= 40KB)
13
+ * - COMPRESSED: [byte_count: uint32] [compressed_bytes] → total ≈ 35KB (< 40KB)
14
+ *
15
+ * Detection from the first uint32: 0 means an empty proof (no fields); CHONK_PROOF_LENGTH
16
+ * (1632) means legacy format (field count); any other value is the compressed byte count.
17
+ * A real compressed proof always has a non-zero byte count, so 0 is an unambiguous sentinel
18
+ * for the empty case. The old uncompressed format is never smaller than 40KB; compressed
19
+ * proofs are always smaller than 40KB.
20
+ */
7
21
 
8
22
  // CHONK: "Client Honk" - An UltraHonk variant with incremental folding and delayed non-native arithmetic.
9
23
  export class ChonkProof {
24
+ /**
25
+ * Optional compressed proof bytes from chonk compression (point compression + u256 encoding).
26
+ * When set, toBuffer() will serialize in compressed format (~1.7x smaller).
27
+ * When reading from compressed format, this is populated and fields are decompressed on demand.
28
+ */
29
+ public compressedProof?: Buffer;
30
+
10
31
  constructor(
11
32
  // The proof fields.
12
33
  // For native verification, attach public inputs via `attachPublicInputs(publicInputs)`.
13
34
  // Not using Tuple here due to the length being too high.
14
35
  public fields: Fr[],
36
+ compressedProof?: Buffer,
15
37
  ) {
16
- if (fields.length !== CHONK_PROOF_LENGTH) {
38
+ // An empty proof (no fields) is a valid placeholder; see ChonkProof.empty().
39
+ if (fields.length !== 0 && fields.length !== CHONK_PROOF_LENGTH) {
17
40
  throw new Error(`Invalid ChonkProof length: ${fields.length}`);
18
41
  }
42
+ this.compressedProof = compressedProof;
19
43
  }
20
44
 
21
45
  public attachPublicInputs(publicInputs: Fr[]) {
@@ -27,7 +51,7 @@ export class ChonkProof {
27
51
  }
28
52
 
29
53
  static empty() {
30
- return new ChonkProof(new Array(CHONK_PROOF_LENGTH).fill(Fr.ZERO));
54
+ return new ChonkProof([]);
31
55
  }
32
56
 
33
57
  static random() {
@@ -53,40 +77,127 @@ export class ChonkProof {
53
77
  return this.toBuffer();
54
78
  }
55
79
 
80
+ /**
81
+ * Deserialize a ChonkProof from a buffer.
82
+ * Supports both legacy (field elements) and compressed (chonk compression) formats.
83
+ *
84
+ * Value-based format detection on the leading uint32:
85
+ * - First uint32 == 0: empty proof (no fields), total = 4 bytes
86
+ * - First uint32 == CHONK_PROOF_LENGTH (1632): legacy format, read field elements
87
+ * Total proof data ≈ 52KB (always >= 40KB)
88
+ * - Otherwise: compressed format, first uint32 is byte count of compressed data
89
+ * Total proof data ≈ 35KB (always < 40KB)
90
+ */
56
91
  static fromBuffer(buffer: Buffer | BufferReader): ChonkProof {
57
92
  const reader = BufferReader.asReader(buffer);
58
- const proofLength = reader.readNumber();
59
- if (proofLength !== CHONK_PROOF_LENGTH) {
60
- throw new Error(`Invalid ChonkProof length from buffer: ${proofLength}, expected ${CHONK_PROOF_LENGTH}`);
93
+ const firstUint32 = reader.readNumber();
94
+
95
+ if (firstUint32 === 0) {
96
+ // Empty format: a zero length encodes an empty proof.
97
+ return ChonkProof.empty();
61
98
  }
62
- const proof = reader.readArray(CHONK_PROOF_LENGTH, Fr);
63
- return new ChonkProof(proof);
99
+
100
+ if (firstUint32 === CHONK_PROOF_LENGTH) {
101
+ // Legacy format: firstUint32 is the field count (1632)
102
+ // Widen to `number` to prevent TS from narrowing to literal 1632,
103
+ // which would cause Tuple<Fr, 1632> to exceed the recursion limit.
104
+ const fieldCount: number = firstUint32;
105
+ const proof = reader.readArray(fieldCount, Fr);
106
+ return new ChonkProof(proof);
107
+ }
108
+
109
+ // Compressed format: firstUint32 is the compressed byte count
110
+ const compressedBytes = reader.readBytes(firstUint32);
111
+ return ChonkProof.fromCompressedBytes(Buffer.from(compressedBytes));
112
+ }
113
+
114
+ /**
115
+ * Create a ChonkProof from compressed bytes by decompressing via the BarretenbergSync API.
116
+ * The compressed format uses point compression and u256 encoding (from PR #20645).
117
+ *
118
+ * @param compressed - Compressed proof bytes from chonk compression
119
+ * @returns ChonkProof with both fields and compressed bytes populated
120
+ */
121
+ static fromCompressedBytes(compressed: Buffer): ChonkProof {
122
+ const api = BarretenbergSync.getSingleton();
123
+ const result = api.chonkDecompressProof({ compressedProof: new Uint8Array(compressed) });
124
+
125
+ // Flatten the structured bb.js ChonkProof into flat Fr[] field elements
126
+ const flatFields = flattenChonkProofFields(result.proof);
127
+ const fields = flatFields.map(f => Fr.fromBuffer(Buffer.from(f)));
128
+
129
+ // The decompressed proof includes public inputs in hidingOinkProof.
130
+ // Since ChonkProof stores fields WITHOUT public inputs, strip them.
131
+ // The number of public inputs = total fields - CHONK_PROOF_LENGTH
132
+ if (fields.length > CHONK_PROOF_LENGTH) {
133
+ const numPubInputs = fields.length - CHONK_PROOF_LENGTH;
134
+ const proofFields = fields.slice(numPubInputs);
135
+ return new ChonkProof(proofFields, compressed);
136
+ }
137
+
138
+ return new ChonkProof(fields, compressed);
64
139
  }
65
140
 
66
- public toBuffer() {
67
- return serializeToBuffer(this.fields.length, this.fields);
141
+ /**
142
+ * Serialize the proof to a buffer.
143
+ * If compressed bytes are available, uses the compressed format (~1.7x smaller).
144
+ * Otherwise falls back to legacy field element format.
145
+ */
146
+ public toBuffer(): Buffer;
147
+ public toBuffer(sink: BufferSink): void;
148
+ public toBuffer(sink?: BufferSink): Buffer | void {
149
+ if (!sink) {
150
+ return BufferSink.serialize(this);
151
+ }
152
+ if (this.compressedProof) {
153
+ // Compressed format: [compressed_byte_count: uint32] [compressed_bytes]
154
+ sink.writeNumber(this.compressedProof.length);
155
+ sink.writeBytes(this.compressedProof);
156
+ return;
157
+ }
158
+ // Legacy / empty format: [field_count: uint32] [fields...]. fields.length === 0 emits the empty
159
+ // sentinel (a lone zero uint32) that ChonkProof.fromBuffer detects; fields.length === CHONK_PROOF_LENGTH
160
+ // is the full legacy form. The writeFields fast path skips per-element sinkable dispatch on the 1632
161
+ // leaves and is a no-op when the array is empty.
162
+ sink.writeNumber(this.fields.length);
163
+ sink.writeFields(this.fields);
68
164
  }
69
165
  }
70
166
 
71
167
  export class ChonkProofWithPublicInputs {
168
+ /**
169
+ * Optional compressed proof bytes (covers the full proof WITH public inputs).
170
+ * Set by the prover when using chonk compression. Flows through to ChonkProof
171
+ * via removePublicInputs() so the Tx can serialize in compressed format.
172
+ */
173
+ public compressedProof?: Buffer;
174
+
72
175
  constructor(
73
176
  // The proof fields with public inputs.
74
177
  // For recursive verification, use without public inputs via `removePublicInputs()`.
75
178
  public fieldsWithPublicInputs: Fr[],
76
179
  ) {
77
- if (fieldsWithPublicInputs.length < CHONK_PROOF_LENGTH) {
180
+ // An empty proof (no fields) is a valid placeholder; see ChonkProofWithPublicInputs.empty().
181
+ if (fieldsWithPublicInputs.length !== 0 && fieldsWithPublicInputs.length < CHONK_PROOF_LENGTH) {
78
182
  throw new Error(`Invalid ChonkProofWithPublicInputs length: ${fieldsWithPublicInputs.length}`);
79
183
  }
80
184
  }
81
185
 
82
186
  public getPublicInputs() {
187
+ if (this.fieldsWithPublicInputs.length === 0) {
188
+ return [];
189
+ }
83
190
  const numPublicInputs = this.fieldsWithPublicInputs.length - CHONK_PROOF_LENGTH;
84
191
  return this.fieldsWithPublicInputs.slice(0, numPublicInputs);
85
192
  }
86
193
 
87
194
  public removePublicInputs() {
195
+ if (this.fieldsWithPublicInputs.length === 0) {
196
+ return new ChonkProof([], this.compressedProof);
197
+ }
88
198
  const numPublicInputs = this.fieldsWithPublicInputs.length - CHONK_PROOF_LENGTH;
89
- return new ChonkProof(this.fieldsWithPublicInputs.slice(numPublicInputs));
199
+ // Flow compressed proof bytes through so the ChonkProof can serialize efficiently
200
+ return new ChonkProof(this.fieldsWithPublicInputs.slice(numPublicInputs), this.compressedProof);
90
201
  }
91
202
 
92
203
  public isEmpty() {
@@ -109,17 +220,18 @@ export class ChonkProofWithPublicInputs {
109
220
  static fromBuffer(buffer: Buffer | BufferReader): ChonkProofWithPublicInputs {
110
221
  const reader = BufferReader.asReader(buffer);
111
222
  const proofLength = reader.readNumber();
112
- if (proofLength < CHONK_PROOF_LENGTH) {
113
- throw new Error(
114
- `Invalid ChonkProofWithPublicInputs length from buffer: ${proofLength}, expected at least ${CHONK_PROOF_LENGTH}`,
115
- );
116
- }
117
223
  const proof = reader.readArray(proofLength, Fr);
118
224
  return new ChonkProofWithPublicInputs(proof);
119
225
  }
120
226
 
121
- public toBuffer() {
122
- return serializeToBuffer(this.fieldsWithPublicInputs.length, this.fieldsWithPublicInputs);
227
+ public toBuffer(): Buffer;
228
+ public toBuffer(sink: BufferSink): void;
229
+ public toBuffer(sink?: BufferSink): Buffer | void {
230
+ if (!sink) {
231
+ return BufferSink.serialize(this);
232
+ }
233
+ sink.writeNumber(this.fieldsWithPublicInputs.length);
234
+ sink.writeFields(this.fieldsWithPublicInputs);
123
235
  }
124
236
 
125
237
  // Called when constructing from bb proving results.
@@ -1,6 +1,6 @@
1
- import { AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED } from '@aztec/constants';
1
+ import { AVM_V2_PROOF_LENGTH_IN_FIELDS } from '@aztec/constants';
2
2
 
3
3
  import { AvmCircuitPublicInputs } from '../avm/avm_circuit_public_inputs.js';
4
4
  import type { ProofDataForFixedVk } from '../proofs/proof_data.js';
5
5
 
6
- export type AvmProofData = ProofDataForFixedVk<AvmCircuitPublicInputs, typeof AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED>;
6
+ export type AvmProofData = ProofDataForFixedVk<AvmCircuitPublicInputs, typeof AVM_V2_PROOF_LENGTH_IN_FIELDS>;
@@ -86,7 +86,7 @@ export class PrivateBaseRollupHints {
86
86
  reader.readObject(SpongeBlob),
87
87
  reader.readObject(TreeSnapshotDiffHints),
88
88
  reader.readObject(PublicDataTreeLeafPreimage),
89
- reader.readTuple(ARCHIVE_HEIGHT, Fr),
89
+ reader.readArray(ARCHIVE_HEIGHT, Fr),
90
90
  makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, () => reader.readObject(ContractClassLogFields)),
91
91
  reader.readObject(BlockConstantData),
92
92
  );
@@ -163,7 +163,7 @@ export class PublicBaseRollupHints {
163
163
  return new PublicBaseRollupHints(
164
164
  reader.readObject(SpongeBlob),
165
165
  reader.readObject(AppendOnlyTreeSnapshot),
166
- reader.readTuple(ARCHIVE_HEIGHT, Fr),
166
+ reader.readArray(ARCHIVE_HEIGHT, Fr),
167
167
  makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, () => reader.readObject(ContractClassLogFields)),
168
168
  );
169
169
  }
@@ -1,5 +1,7 @@
1
+ import { DomainSeparator } from '@aztec/constants';
2
+ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
1
3
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { computeUnbalancedPoseidonRoot } from '@aztec/foundation/trees';
4
+ import { computeUnbalancedMerkleTreeRootAsync } from '@aztec/foundation/trees';
3
5
 
4
6
  import type { BlockHeader } from '../tx/block_header.js';
5
7
 
@@ -7,6 +9,13 @@ export async function computeBlockHeadersHash(blockHeaders: BlockHeader[]): Prom
7
9
  const blockHeaderHashes = await Promise.all(blockHeaders.map(header => header.hash()));
8
10
  // Must match the implementation in merge_block_rollups.nr, with the **unbalanced** rollup structure
9
11
  // (see validate_consecutive_block_rollups.nr > assert_rollups_filled_greedily.nr).
10
- const blockHeadersHash = await computeUnbalancedPoseidonRoot(blockHeaderHashes.map(hash => hash.toBuffer()));
12
+ const blockHeadersHasher = async (left: Uint8Array, right: Uint8Array) =>
13
+ (
14
+ await poseidon2HashWithSeparator([Buffer.from(left), Buffer.from(right)], DomainSeparator.BLOCK_HEADERS_HASH)
15
+ ).toBuffer() as Buffer<ArrayBuffer>;
16
+ const blockHeadersHash = await computeUnbalancedMerkleTreeRootAsync(
17
+ blockHeaderHashes.map(hash => hash.toBuffer()),
18
+ blockHeadersHasher,
19
+ );
11
20
  return Fr.fromBuffer(blockHeadersHash);
12
21
  }
@@ -119,6 +119,19 @@ export class BlockRollupPublicInputs {
119
119
  return this.toBuffer();
120
120
  }
121
121
 
122
+ toInspect() {
123
+ return {
124
+ previousArchiveRoot: this.previousArchive.root.toString(),
125
+ newArchiveRoot: this.newArchive.root.toString(),
126
+ blockHeadersHash: this.blockHeadersHash.toString(),
127
+ inHash: this.inHash.toString(),
128
+ outHash: this.outHash.toString(),
129
+ timestamp: this.timestamp.toString(),
130
+ accumulatedFees: this.accumulatedFees.toString(),
131
+ accumulatedManaUsed: this.accumulatedManaUsed.toString(),
132
+ };
133
+ }
134
+
122
135
  static get schema() {
123
136
  return bufferSchemaFor(BlockRollupPublicInputs);
124
137
  }