@aztec/stdlib 0.0.1-commit.c31f2472 → 0.0.1-commit.c52d6e7

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 (1253) hide show
  1. package/dest/abi/abi.d.ts +169 -1083
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +52 -20
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +49 -26
  12. package/dest/abi/decoder.d.ts +15 -47
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +33 -89
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +35 -14
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +45 -9
  26. package/dest/abi/function_selector.d.ts +3 -6
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +2 -4
  29. package/dest/abi/function_signature_decoder.d.ts +43 -0
  30. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  31. package/dest/abi/function_signature_decoder.js +66 -0
  32. package/dest/abi/index.d.ts +2 -1
  33. package/dest/abi/index.d.ts.map +1 -1
  34. package/dest/abi/index.js +1 -0
  35. package/dest/abi/note_selector.d.ts +4 -7
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +1 -3
  38. package/dest/abi/selector.d.ts +2 -2
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +1 -1
  41. package/dest/abi/utils.d.ts +14 -1
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +16 -1
  44. package/dest/auth_witness/auth_witness.d.ts +2 -2
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +3 -3
  47. package/dest/avm/avm.d.ts +2228 -10934
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +10 -5
  50. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  53. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  54. package/dest/avm/avm_proving_request.d.ts +653 -5446
  55. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  56. package/dest/avm/index.d.ts +1 -6
  57. package/dest/avm/index.d.ts.map +1 -1
  58. package/dest/avm/index.js +0 -5
  59. package/dest/avm/message_pack.js +12 -3
  60. package/dest/avm/public_data_write.d.ts +6 -12
  61. package/dest/avm/public_data_write.d.ts.map +1 -1
  62. package/dest/avm/revert_code.d.ts +6 -7
  63. package/dest/avm/revert_code.d.ts.map +1 -1
  64. package/dest/avm/revert_code.js +13 -21
  65. package/dest/aztec-address/index.d.ts +42 -12
  66. package/dest/aztec-address/index.d.ts.map +1 -1
  67. package/dest/aztec-address/index.js +40 -13
  68. package/dest/block/attestation_info.d.ts +3 -2
  69. package/dest/block/attestation_info.d.ts.map +1 -1
  70. package/dest/block/attestation_info.js +10 -5
  71. package/dest/block/block_data.d.ts +27 -0
  72. package/dest/block/block_data.d.ts.map +1 -0
  73. package/dest/block/block_data.js +12 -0
  74. package/dest/block/block_hash.d.ts +17 -19
  75. package/dest/block/block_hash.d.ts.map +1 -1
  76. package/dest/block/block_hash.js +22 -34
  77. package/dest/block/block_parameter.d.ts +37 -4
  78. package/dest/block/block_parameter.d.ts.map +1 -1
  79. package/dest/block/block_parameter.js +53 -2
  80. package/dest/block/in_block.d.ts +7 -26
  81. package/dest/block/in_block.d.ts.map +1 -1
  82. package/dest/block/in_block.js +2 -2
  83. package/dest/block/index.d.ts +2 -2
  84. package/dest/block/index.d.ts.map +1 -1
  85. package/dest/block/index.js +1 -1
  86. package/dest/block/l2_block.d.ts +23 -42
  87. package/dest/block/l2_block.d.ts.map +1 -1
  88. package/dest/block/l2_block.js +14 -5
  89. package/dest/block/l2_block_info.d.ts +10 -29
  90. package/dest/block/l2_block_info.d.ts.map +1 -1
  91. package/dest/block/l2_block_info.js +6 -5
  92. package/dest/block/l2_block_source.d.ts +238 -336
  93. package/dest/block/l2_block_source.d.ts.map +1 -1
  94. package/dest/block/l2_block_source.js +85 -1
  95. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  96. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  97. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  98. package/dest/block/l2_block_stream/index.d.ts +2 -1
  99. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  100. package/dest/block/l2_block_stream/index.js +1 -0
  101. package/dest/block/l2_block_stream/interfaces.d.ts +85 -10
  102. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  103. package/dest/block/l2_block_stream/interfaces.js +25 -1
  104. package/dest/block/l2_block_stream/l2_block_stream.d.ts +24 -15
  105. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  106. package/dest/block/l2_block_stream/l2_block_stream.js +185 -124
  107. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  108. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  109. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  110. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  111. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  112. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  113. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  114. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  115. package/dest/block/proposal/attestations_and_signers.js +73 -25
  116. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  117. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  118. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  119. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  120. package/dest/block/test/l2_tips_store_test_suite.js +301 -36
  121. package/dest/block/validate_block_result.d.ts +16 -1
  122. package/dest/block/validate_block_result.d.ts.map +1 -1
  123. package/dest/block/validate_block_result.js +18 -3
  124. package/dest/checkpoint/checkpoint.d.ts +48 -99
  125. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  126. package/dest/checkpoint/checkpoint.js +42 -18
  127. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  128. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  129. package/dest/checkpoint/checkpoint_data.js +38 -0
  130. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  131. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  132. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  133. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  134. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  135. package/dest/checkpoint/digest.d.ts +18 -0
  136. package/dest/checkpoint/digest.d.ts.map +1 -0
  137. package/dest/checkpoint/digest.js +12 -0
  138. package/dest/checkpoint/index.d.ts +7 -1
  139. package/dest/checkpoint/index.d.ts.map +1 -1
  140. package/dest/checkpoint/index.js +6 -0
  141. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  142. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  143. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  144. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  145. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  146. package/dest/checkpoint/published_checkpoint.js +1 -2
  147. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  148. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  149. package/dest/checkpoint/simulation_overrides.js +98 -0
  150. package/dest/checkpoint/validate.d.ts +44 -0
  151. package/dest/checkpoint/validate.d.ts.map +1 -0
  152. package/dest/checkpoint/validate.js +123 -0
  153. package/dest/config/chain-config.d.ts +4 -9
  154. package/dest/config/chain-config.d.ts.map +1 -1
  155. package/dest/config/chain-config.js +13 -12
  156. package/dest/config/index.d.ts +3 -1
  157. package/dest/config/index.d.ts.map +1 -1
  158. package/dest/config/index.js +2 -0
  159. package/dest/config/network-consensus-config.d.ts +72 -0
  160. package/dest/config/network-consensus-config.d.ts.map +1 -0
  161. package/dest/config/network-consensus-config.js +223 -0
  162. package/dest/config/node-rpc-config.d.ts +1 -1
  163. package/dest/config/node-rpc-config.d.ts.map +1 -1
  164. package/dest/config/node-rpc-config.js +1 -1
  165. package/dest/config/sequencer-config.d.ts +16 -0
  166. package/dest/config/sequencer-config.d.ts.map +1 -0
  167. package/dest/config/sequencer-config.js +57 -0
  168. package/dest/contract/artifact_hash.d.ts +2 -2
  169. package/dest/contract/artifact_hash.d.ts.map +1 -1
  170. package/dest/contract/artifact_hash.js +10 -2
  171. package/dest/contract/complete_address.d.ts +3 -2
  172. package/dest/contract/complete_address.d.ts.map +1 -1
  173. package/dest/contract/complete_address.js +6 -2
  174. package/dest/contract/contract_address.d.ts +10 -9
  175. package/dest/contract/contract_address.d.ts.map +1 -1
  176. package/dest/contract/contract_address.js +9 -8
  177. package/dest/contract/contract_class.d.ts +2 -3
  178. package/dest/contract/contract_class.d.ts.map +1 -1
  179. package/dest/contract/contract_class.js +3 -2
  180. package/dest/contract/contract_class_id.d.ts +3 -3
  181. package/dest/contract/contract_class_id.d.ts.map +1 -1
  182. package/dest/contract/contract_class_id.js +7 -6
  183. package/dest/contract/contract_deployment_data.d.ts +15 -61
  184. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  185. package/dest/contract/contract_instance.d.ts +19 -3
  186. package/dest/contract/contract_instance.d.ts.map +1 -1
  187. package/dest/contract/contract_instance.js +55 -3
  188. package/dest/contract/index.d.ts +1 -4
  189. package/dest/contract/index.d.ts.map +1 -1
  190. package/dest/contract/index.js +0 -3
  191. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  192. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  193. package/dest/contract/interfaces/contract_class.js +1 -28
  194. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  195. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  196. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  197. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  198. package/dest/contract/interfaces/contract_instance.js +11 -4
  199. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  200. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  201. package/dest/contract/interfaces/node-info.d.ts +13 -1
  202. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  203. package/dest/contract/interfaces/node-info.js +8 -1
  204. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  205. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  206. package/dest/contract/partial_address.d.ts +9 -3
  207. package/dest/contract/partial_address.d.ts.map +1 -1
  208. package/dest/contract/partial_address.js +8 -2
  209. package/dest/contract/private_function.d.ts +1 -1
  210. package/dest/contract/private_function.d.ts.map +1 -1
  211. package/dest/contract/private_function.js +4 -6
  212. package/dest/database-version/database_version.d.ts +52 -0
  213. package/dest/database-version/database_version.d.ts.map +1 -0
  214. package/dest/database-version/database_version.js +69 -0
  215. package/dest/database-version/version_manager.d.ts +22 -52
  216. package/dest/database-version/version_manager.d.ts.map +1 -1
  217. package/dest/database-version/version_manager.js +88 -72
  218. package/dest/deserialization/index.d.ts +35 -3
  219. package/dest/deserialization/index.d.ts.map +1 -1
  220. package/dest/deserialization/index.js +32 -1
  221. package/dest/epoch-helpers/index.d.ts +14 -18
  222. package/dest/epoch-helpers/index.d.ts.map +1 -1
  223. package/dest/epoch-helpers/index.js +18 -2
  224. package/dest/file-store/factory.d.ts +4 -3
  225. package/dest/file-store/factory.d.ts.map +1 -1
  226. package/dest/file-store/factory.js +9 -2
  227. package/dest/file-store/http.d.ts +9 -2
  228. package/dest/file-store/http.d.ts.map +1 -1
  229. package/dest/file-store/http.js +20 -9
  230. package/dest/file-store/index.d.ts +3 -1
  231. package/dest/file-store/index.d.ts.map +1 -1
  232. package/dest/file-store/index.js +1 -0
  233. package/dest/file-store/local.d.ts +3 -3
  234. package/dest/file-store/local.d.ts.map +1 -1
  235. package/dest/file-store/local.js +13 -4
  236. package/dest/file-store/memory.d.ts +24 -0
  237. package/dest/file-store/memory.d.ts.map +1 -0
  238. package/dest/file-store/memory.js +80 -0
  239. package/dest/file-store/s3.d.ts +1 -1
  240. package/dest/file-store/s3.d.ts.map +1 -1
  241. package/dest/file-store/s3.js +11 -3
  242. package/dest/gas/fee_math.d.ts +49 -0
  243. package/dest/gas/fee_math.d.ts.map +1 -0
  244. package/dest/gas/fee_math.js +80 -0
  245. package/dest/gas/gas.d.ts +9 -14
  246. package/dest/gas/gas.d.ts.map +1 -1
  247. package/dest/gas/gas.js +6 -3
  248. package/dest/gas/gas_fees.d.ts +13 -14
  249. package/dest/gas/gas_fees.d.ts.map +1 -1
  250. package/dest/gas/gas_fees.js +20 -4
  251. package/dest/gas/gas_settings.d.ts +60 -86
  252. package/dest/gas/gas_settings.d.ts.map +1 -1
  253. package/dest/gas/gas_settings.js +49 -9
  254. package/dest/gas/index.d.ts +3 -1
  255. package/dest/gas/index.d.ts.map +1 -1
  256. package/dest/gas/index.js +2 -0
  257. package/dest/gas/tx_gas_limits.d.ts +72 -0
  258. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  259. package/dest/gas/tx_gas_limits.js +85 -0
  260. package/dest/ha-signing/config.d.ts +86 -0
  261. package/dest/ha-signing/config.d.ts.map +1 -0
  262. package/dest/ha-signing/config.js +94 -0
  263. package/dest/ha-signing/index.d.ts +4 -0
  264. package/dest/ha-signing/index.d.ts.map +1 -0
  265. package/dest/ha-signing/index.js +3 -0
  266. package/dest/ha-signing/local_config.d.ts +40 -0
  267. package/dest/ha-signing/local_config.d.ts.map +1 -0
  268. package/dest/ha-signing/local_config.js +30 -0
  269. package/dest/ha-signing/types.d.ts +90 -0
  270. package/dest/ha-signing/types.d.ts.map +1 -0
  271. package/dest/ha-signing/types.js +39 -0
  272. package/dest/hash/hash.d.ts +35 -2
  273. package/dest/hash/hash.d.ts.map +1 -1
  274. package/dest/hash/hash.js +77 -17
  275. package/dest/hash/map_slot.js +2 -2
  276. package/dest/interfaces/allowed_element.d.ts +17 -35
  277. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  278. package/dest/interfaces/allowed_element.js +8 -8
  279. package/dest/interfaces/api_limit.d.ts +7 -2
  280. package/dest/interfaces/api_limit.d.ts.map +1 -1
  281. package/dest/interfaces/api_limit.js +4 -1
  282. package/dest/interfaces/archiver.d.ts +27 -32
  283. package/dest/interfaces/archiver.d.ts.map +1 -1
  284. package/dest/interfaces/archiver.js +217 -64
  285. package/dest/interfaces/aztec-node-admin.d.ts +116 -257
  286. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  287. package/dest/interfaces/aztec-node-admin.js +69 -18
  288. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  289. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  290. package/dest/interfaces/aztec-node-debug.js +49 -0
  291. package/dest/interfaces/aztec-node.d.ts +192 -163
  292. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  293. package/dest/interfaces/aztec-node.js +352 -77
  294. package/dest/interfaces/block-builder.d.ts +53 -12
  295. package/dest/interfaces/block-builder.d.ts.map +1 -1
  296. package/dest/interfaces/block-builder.js +16 -2
  297. package/dest/interfaces/block_response.d.ts +90 -0
  298. package/dest/interfaces/block_response.d.ts.map +1 -0
  299. package/dest/interfaces/block_response.js +30 -0
  300. package/dest/interfaces/chain_tips.d.ts +11 -0
  301. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  302. package/dest/interfaces/chain_tips.js +6 -0
  303. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  304. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  305. package/dest/interfaces/checkpoint_parameter.js +18 -0
  306. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  307. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  308. package/dest/interfaces/checkpoint_response.js +26 -0
  309. package/dest/interfaces/client.d.ts +9 -2
  310. package/dest/interfaces/client.d.ts.map +1 -1
  311. package/dest/interfaces/client.js +7 -1
  312. package/dest/interfaces/configs.d.ts +104 -121
  313. package/dest/interfaces/configs.d.ts.map +1 -1
  314. package/dest/interfaces/configs.js +24 -4
  315. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  316. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  317. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  318. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  319. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  320. package/dest/interfaces/l1_publish_info.js +26 -0
  321. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  322. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  323. package/dest/interfaces/l2_logs_source.js +5 -0
  324. package/dest/interfaces/merkle_tree_operations.d.ts +20 -24
  325. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  326. package/dest/interfaces/p2p-bootstrap.js +8 -2
  327. package/dest/interfaces/p2p.d.ts +49 -15
  328. package/dest/interfaces/p2p.d.ts.map +1 -1
  329. package/dest/interfaces/p2p.js +41 -6
  330. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  331. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  332. package/dest/interfaces/prover-agent.d.ts +5 -23
  333. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  334. package/dest/interfaces/prover-agent.js +4 -1
  335. package/dest/interfaces/prover-broker.d.ts +16 -1
  336. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  337. package/dest/interfaces/prover-broker.js +4 -1
  338. package/dest/interfaces/prover-client.d.ts +13 -25
  339. package/dest/interfaces/prover-client.d.ts.map +1 -1
  340. package/dest/interfaces/prover-client.js +12 -4
  341. package/dest/interfaces/prover-node.d.ts +12 -8
  342. package/dest/interfaces/prover-node.d.ts.map +1 -1
  343. package/dest/interfaces/prover-node.js +37 -16
  344. package/dest/interfaces/proving-job-source.js +24 -4
  345. package/dest/interfaces/proving-job.d.ts +757 -5795
  346. package/dest/interfaces/proving-job.d.ts.map +1 -1
  347. package/dest/interfaces/proving-job.js +14 -5
  348. package/dest/interfaces/public_storage_override.d.ts +22 -0
  349. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  350. package/dest/interfaces/public_storage_override.js +7 -0
  351. package/dest/interfaces/server.d.ts +6 -3
  352. package/dest/interfaces/server.d.ts.map +1 -1
  353. package/dest/interfaces/server.js +5 -2
  354. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  355. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  356. package/dest/interfaces/slasher.d.ts +27 -59
  357. package/dest/interfaces/slasher.d.ts.map +1 -1
  358. package/dest/interfaces/slasher.js +10 -4
  359. package/dest/interfaces/tx_provider.d.ts +10 -1
  360. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  361. package/dest/interfaces/validator.d.ts +89 -170
  362. package/dest/interfaces/validator.d.ts.map +1 -1
  363. package/dest/interfaces/validator.js +19 -6
  364. package/dest/interfaces/world_state.d.ts +19 -5
  365. package/dest/interfaces/world_state.d.ts.map +1 -1
  366. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  367. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  368. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  369. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  370. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  371. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  372. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  373. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  374. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  375. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  376. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  377. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  378. package/dest/kernel/hints/index.d.ts +3 -4
  379. package/dest/kernel/hints/index.d.ts.map +1 -1
  380. package/dest/kernel/hints/index.js +2 -3
  381. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  382. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  383. package/dest/kernel/hints/key_validation_request.js +20 -18
  384. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  385. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  386. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  387. package/dest/kernel/hints/read_request.js +1 -1
  388. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  389. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  390. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  391. package/dest/kernel/index.d.ts +10 -2
  392. package/dest/kernel/index.d.ts.map +1 -1
  393. package/dest/kernel/index.js +9 -1
  394. package/dest/kernel/log_hash.d.ts +6 -2
  395. package/dest/kernel/log_hash.d.ts.map +1 -1
  396. package/dest/kernel/log_hash.js +23 -11
  397. package/dest/kernel/note_hash.js +1 -1
  398. package/dest/kernel/nullifier.js +1 -1
  399. package/dest/kernel/private_circuit_public_inputs.d.ts +21 -11
  400. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  401. package/dest/kernel/private_circuit_public_inputs.js +26 -19
  402. package/dest/kernel/private_context_inputs.d.ts +4 -3
  403. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  404. package/dest/kernel/private_context_inputs.js +7 -3
  405. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +10 -12
  406. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  407. package/dest/kernel/private_kernel_circuit_public_inputs.js +13 -10
  408. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  409. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  410. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  411. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  412. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  413. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  414. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  415. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  416. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  417. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  418. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  419. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  420. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  421. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  422. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  423. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  424. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  425. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  426. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  427. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  428. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  429. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  430. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  431. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  432. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  433. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  434. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  435. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  436. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  437. package/dest/kernel/private_kernel_prover_output.js +4 -1
  438. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  439. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  440. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  441. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  442. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  443. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  444. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  445. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  446. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  447. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  448. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  449. package/dest/kernel/private_log_data.d.ts +1 -1
  450. package/dest/kernel/private_log_data.d.ts.map +1 -1
  451. package/dest/kernel/private_log_data.js +1 -1
  452. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  453. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  454. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  455. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  456. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  457. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  458. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  459. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  460. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  461. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  462. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  463. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  464. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  465. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  466. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  467. package/dest/kernel/private_validation_requests.d.ts +3 -3
  468. package/dest/kernel/private_validation_requests.js +9 -9
  469. package/dest/kernel/public_call_request.d.ts +15 -30
  470. package/dest/kernel/public_call_request.d.ts.map +1 -1
  471. package/dest/kernel/public_call_request.js +16 -7
  472. package/dest/kernel/utils/index.d.ts +1 -2
  473. package/dest/kernel/utils/index.d.ts.map +1 -1
  474. package/dest/kernel/utils/index.js +0 -1
  475. package/dest/keys/derivation.d.ts +45 -6
  476. package/dest/keys/derivation.d.ts.map +1 -1
  477. package/dest/keys/derivation.js +60 -27
  478. package/dest/keys/key_types.d.ts +3 -3
  479. package/dest/keys/key_types.d.ts.map +1 -1
  480. package/dest/keys/public_key.d.ts +22 -3
  481. package/dest/keys/public_key.d.ts.map +1 -1
  482. package/dest/keys/public_key.js +20 -1
  483. package/dest/keys/public_keys.d.ts +55 -82
  484. package/dest/keys/public_keys.d.ts.map +1 -1
  485. package/dest/keys/public_keys.js +102 -74
  486. package/dest/keys/utils.d.ts +1 -1
  487. package/dest/keys/utils.d.ts.map +1 -1
  488. package/dest/keys/utils.js +8 -4
  489. package/dest/kv-store/config.d.ts +14 -0
  490. package/dest/kv-store/config.d.ts.map +1 -0
  491. package/dest/kv-store/config.js +21 -0
  492. package/dest/kv-store/index.d.ts +2 -0
  493. package/dest/kv-store/index.d.ts.map +1 -0
  494. package/dest/kv-store/index.js +1 -0
  495. package/dest/l1-contracts/index.d.ts +2 -2
  496. package/dest/l1-contracts/index.d.ts.map +1 -1
  497. package/dest/l1-contracts/index.js +1 -1
  498. package/dest/logs/app_tagging_secret.d.ts +69 -0
  499. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  500. package/dest/logs/app_tagging_secret.js +116 -0
  501. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  502. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  503. package/dest/logs/app_tagging_secret_kind.js +17 -0
  504. package/dest/logs/contract_class_log.d.ts +16 -35
  505. package/dest/logs/contract_class_log.d.ts.map +1 -1
  506. package/dest/logs/contract_class_log.js +11 -13
  507. package/dest/logs/debug_log_store.d.ts +30 -0
  508. package/dest/logs/debug_log_store.d.ts.map +1 -0
  509. package/dest/logs/debug_log_store.js +30 -0
  510. package/dest/logs/index.d.ts +9 -7
  511. package/dest/logs/index.d.ts.map +1 -1
  512. package/dest/logs/index.js +8 -6
  513. package/dest/logs/log_cursor.d.ts +51 -0
  514. package/dest/logs/log_cursor.d.ts.map +1 -0
  515. package/dest/logs/log_cursor.js +82 -0
  516. package/dest/logs/log_result.d.ts +54 -0
  517. package/dest/logs/log_result.d.ts.map +1 -0
  518. package/dest/logs/log_result.js +56 -0
  519. package/dest/logs/logs_query.d.ts +82 -0
  520. package/dest/logs/logs_query.d.ts.map +1 -0
  521. package/dest/logs/logs_query.js +50 -0
  522. package/dest/logs/message_context.d.ts +4 -16
  523. package/dest/logs/message_context.d.ts.map +1 -1
  524. package/dest/logs/message_context.js +1 -48
  525. package/dest/logs/pending_tagged_log.d.ts +6 -9
  526. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  527. package/dest/logs/pending_tagged_log.js +1 -31
  528. package/dest/logs/pre_tag.d.ts +14 -22
  529. package/dest/logs/pre_tag.d.ts.map +1 -1
  530. package/dest/logs/pre_tag.js +2 -2
  531. package/dest/logs/private_log.d.ts +8 -13
  532. package/dest/logs/private_log.d.ts.map +1 -1
  533. package/dest/logs/private_log.js +6 -3
  534. package/dest/logs/public_log.d.ts +4 -3
  535. package/dest/logs/public_log.d.ts.map +1 -1
  536. package/dest/logs/public_log.js +2 -1
  537. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  538. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  539. package/dest/logs/query_all_logs_by_tags.js +64 -0
  540. package/dest/logs/shared_secret_derivation.d.ts +33 -9
  541. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  542. package/dest/logs/shared_secret_derivation.js +49 -10
  543. package/dest/logs/siloed_tag.d.ts +12 -9
  544. package/dest/logs/siloed_tag.d.ts.map +1 -1
  545. package/dest/logs/siloed_tag.js +18 -7
  546. package/dest/logs/tag.d.ts +5 -6
  547. package/dest/logs/tag.d.ts.map +1 -1
  548. package/dest/logs/tag.js +5 -1
  549. package/dest/logs/tagging_index_range.d.ts +22 -0
  550. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  551. package/dest/logs/tagging_index_range.js +8 -0
  552. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  553. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  554. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  555. package/dest/messaging/index.d.ts +2 -1
  556. package/dest/messaging/index.d.ts.map +1 -1
  557. package/dest/messaging/index.js +1 -0
  558. package/dest/messaging/l1_to_l2_message.d.ts +25 -3
  559. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  560. package/dest/messaging/l1_to_l2_message.js +38 -15
  561. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  562. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  563. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  564. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  565. package/dest/messaging/l2_to_l1_membership.js +133 -30
  566. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  567. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  568. package/dest/messaging/l2_to_l1_message.js +21 -12
  569. package/dest/noir/index.d.ts +7 -5
  570. package/dest/noir/index.d.ts.map +1 -1
  571. package/dest/note/index.d.ts +1 -2
  572. package/dest/note/index.d.ts.map +1 -1
  573. package/dest/note/index.js +0 -1
  574. package/dest/note/note.d.ts +2 -2
  575. package/dest/note/note.d.ts.map +1 -1
  576. package/dest/note/note_dao.d.ts +1 -1
  577. package/dest/note/note_dao.d.ts.map +1 -1
  578. package/dest/note/note_dao.js +1 -4
  579. package/dest/p2p/attestation_utils.d.ts +11 -1
  580. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  581. package/dest/p2p/attestation_utils.js +53 -1
  582. package/dest/p2p/block_proposal.d.ts +32 -15
  583. package/dest/p2p/block_proposal.d.ts.map +1 -1
  584. package/dest/p2p/block_proposal.js +58 -42
  585. package/dest/p2p/checkpoint_attestation.d.ts +25 -9
  586. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  587. package/dest/p2p/checkpoint_attestation.js +33 -24
  588. package/dest/p2p/checkpoint_proposal.d.ts +51 -24
  589. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  590. package/dest/p2p/checkpoint_proposal.js +77 -65
  591. package/dest/p2p/client_type.d.ts +2 -5
  592. package/dest/p2p/client_type.d.ts.map +1 -1
  593. package/dest/p2p/client_type.js +0 -7
  594. package/dest/p2p/consensus_payload.d.ts +33 -17
  595. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  596. package/dest/p2p/consensus_payload.js +47 -21
  597. package/dest/p2p/constants.d.ts +3 -1
  598. package/dest/p2p/constants.d.ts.map +1 -1
  599. package/dest/p2p/constants.js +1 -0
  600. package/dest/p2p/gossipable.d.ts +4 -4
  601. package/dest/p2p/gossipable.d.ts.map +1 -1
  602. package/dest/p2p/index.d.ts +1 -3
  603. package/dest/p2p/index.d.ts.map +1 -1
  604. package/dest/p2p/index.js +0 -2
  605. package/dest/p2p/peer_error.d.ts +3 -1
  606. package/dest/p2p/peer_error.d.ts.map +1 -1
  607. package/dest/p2p/peer_error.js +5 -0
  608. package/dest/p2p/signature_utils.d.ts +35 -17
  609. package/dest/p2p/signature_utils.d.ts.map +1 -1
  610. package/dest/p2p/signature_utils.js +125 -20
  611. package/dest/p2p/signed_txs.d.ts +15 -13
  612. package/dest/p2p/signed_txs.d.ts.map +1 -1
  613. package/dest/p2p/signed_txs.js +26 -24
  614. package/dest/p2p/topic_type.d.ts +3 -4
  615. package/dest/p2p/topic_type.d.ts.map +1 -1
  616. package/dest/p2p/topic_type.js +7 -24
  617. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  618. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  619. package/dest/parity/parity_base_private_inputs.js +7 -5
  620. package/dest/parity/parity_public_inputs.d.ts +8 -4
  621. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  622. package/dest/parity/parity_public_inputs.js +6 -3
  623. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  624. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  625. package/dest/proofs/chonk_proof.d.ts +57 -7
  626. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  627. package/dest/proofs/chonk_proof.js +112 -15
  628. package/dest/proofs/recursive_proof.d.ts +2 -2
  629. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  630. package/dest/rollup/avm_proof_data.d.ts +3 -3
  631. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  632. package/dest/rollup/block_headers_hash.d.ts +1 -1
  633. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  634. package/dest/rollup/block_headers_hash.js +8 -2
  635. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  636. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  637. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  638. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  639. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  640. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  641. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  642. package/dest/rollup/checkpoint_header.d.ts +10 -5
  643. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  644. package/dest/rollup/checkpoint_header.js +22 -12
  645. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  646. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  647. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  648. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  649. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  650. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  651. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  652. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  653. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  654. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  655. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  656. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  657. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  658. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  659. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  660. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  661. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  662. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  663. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  664. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  665. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  666. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  667. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  668. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  669. package/dest/schemas/schemas.d.ts +32 -78
  670. package/dest/schemas/schemas.d.ts.map +1 -1
  671. package/dest/schemas/schemas.js +2 -2
  672. package/dest/slashing/helpers.d.ts +2 -2
  673. package/dest/slashing/helpers.d.ts.map +1 -1
  674. package/dest/slashing/helpers.js +16 -7
  675. package/dest/slashing/index.d.ts +2 -3
  676. package/dest/slashing/index.d.ts.map +1 -1
  677. package/dest/slashing/index.js +1 -2
  678. package/dest/slashing/serialization.d.ts +2 -6
  679. package/dest/slashing/serialization.d.ts.map +1 -1
  680. package/dest/slashing/serialization.js +0 -60
  681. package/dest/slashing/types.d.ts +21 -111
  682. package/dest/slashing/types.d.ts.map +1 -1
  683. package/dest/slashing/types.js +28 -24
  684. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  685. package/dest/slashing/votes.d.ts.map +1 -0
  686. package/dest/slashing/{tally.js → votes.js} +35 -3
  687. package/dest/snapshots/types.d.ts +15 -78
  688. package/dest/snapshots/types.d.ts.map +1 -1
  689. package/dest/stats/stats.d.ts +2 -4
  690. package/dest/stats/stats.d.ts.map +1 -1
  691. package/dest/tests/factories.d.ts +25 -56
  692. package/dest/tests/factories.d.ts.map +1 -1
  693. package/dest/tests/factories.js +93 -120
  694. package/dest/tests/mocks.d.ts +15 -7
  695. package/dest/tests/mocks.d.ts.map +1 -1
  696. package/dest/tests/mocks.js +69 -70
  697. package/dest/timetable/budgets.d.ts +57 -0
  698. package/dest/timetable/budgets.d.ts.map +1 -0
  699. package/dest/timetable/budgets.js +56 -0
  700. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  701. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  702. package/dest/timetable/build_proposer_timetable.js +17 -0
  703. package/dest/timetable/consensus_timetable.d.ts +70 -0
  704. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  705. package/dest/timetable/consensus_timetable.js +89 -0
  706. package/dest/timetable/index.d.ts +5 -0
  707. package/dest/timetable/index.d.ts.map +1 -0
  708. package/dest/timetable/index.js +4 -0
  709. package/dest/timetable/proposer_timetable.d.ts +106 -0
  710. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  711. package/dest/timetable/proposer_timetable.js +132 -0
  712. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  713. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  714. package/dest/trees/append_only_tree_snapshot.js +6 -3
  715. package/dest/trees/nullifier_leaf.d.ts +19 -42
  716. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  717. package/dest/trees/nullifier_leaf.js +3 -0
  718. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  719. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  720. package/dest/trees/nullifier_membership_witness.js +0 -21
  721. package/dest/trees/public_data_leaf.d.ts +22 -53
  722. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  723. package/dest/trees/public_data_leaf.js +7 -6
  724. package/dest/trees/public_data_witness.d.ts +19 -71
  725. package/dest/trees/public_data_witness.d.ts.map +1 -1
  726. package/dest/trees/public_data_witness.js +0 -27
  727. package/dest/tx/block_header.d.ts +7 -4
  728. package/dest/tx/block_header.d.ts.map +1 -1
  729. package/dest/tx/block_header.js +13 -6
  730. package/dest/tx/call_context.d.ts +4 -14
  731. package/dest/tx/call_context.d.ts.map +1 -1
  732. package/dest/tx/capsule.d.ts +7 -3
  733. package/dest/tx/capsule.d.ts.map +1 -1
  734. package/dest/tx/capsule.js +9 -3
  735. package/dest/tx/execution_payload.d.ts +1 -1
  736. package/dest/tx/execution_payload.d.ts.map +1 -1
  737. package/dest/tx/execution_payload.js +1 -1
  738. package/dest/tx/fee_provider.d.ts +10 -0
  739. package/dest/tx/fee_provider.d.ts.map +1 -0
  740. package/dest/tx/fee_provider.js +1 -0
  741. package/dest/tx/function_data.d.ts +4 -10
  742. package/dest/tx/function_data.d.ts.map +1 -1
  743. package/dest/tx/global_variable_builder.d.ts +4 -15
  744. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  745. package/dest/tx/global_variables.d.ts +19 -52
  746. package/dest/tx/global_variables.d.ts.map +1 -1
  747. package/dest/tx/global_variables.js +10 -14
  748. package/dest/tx/hashed_values.d.ts +10 -3
  749. package/dest/tx/hashed_values.d.ts.map +1 -1
  750. package/dest/tx/hashed_values.js +15 -4
  751. package/dest/tx/in_tx.d.ts +6 -18
  752. package/dest/tx/in_tx.d.ts.map +1 -1
  753. package/dest/tx/index.d.ts +2 -2
  754. package/dest/tx/index.d.ts.map +1 -1
  755. package/dest/tx/index.js +1 -1
  756. package/dest/tx/indexed_tx_effect.d.ts +9 -20
  757. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  758. package/dest/tx/indexed_tx_effect.js +9 -5
  759. package/dest/tx/offchain_effect.js +1 -1
  760. package/dest/tx/partial_state_reference.d.ts +22 -65
  761. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  762. package/dest/tx/partial_state_reference.js +6 -3
  763. package/dest/tx/private_execution_result.d.ts +11 -21
  764. package/dest/tx/private_execution_result.d.ts.map +1 -1
  765. package/dest/tx/private_execution_result.js +6 -6
  766. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  767. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  768. package/dest/tx/private_tx_constant_data.js +13 -4
  769. package/dest/tx/profiling.d.ts +70 -356
  770. package/dest/tx/profiling.d.ts.map +1 -1
  771. package/dest/tx/profiling.js +21 -9
  772. package/dest/tx/protocol_contracts.d.ts +5 -9
  773. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  774. package/dest/tx/protocol_contracts.js +2 -2
  775. package/dest/tx/proven_tx.d.ts +30 -74
  776. package/dest/tx/proven_tx.d.ts.map +1 -1
  777. package/dest/tx/proven_tx.js +6 -0
  778. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  779. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  780. package/dest/tx/public_call_request_with_calldata.js +6 -3
  781. package/dest/tx/public_simulation_output.d.ts +4 -2
  782. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  783. package/dest/tx/public_simulation_output.js +7 -3
  784. package/dest/tx/simulated_tx.d.ts +77 -1149
  785. package/dest/tx/simulated_tx.d.ts.map +1 -1
  786. package/dest/tx/simulated_tx.js +23 -13
  787. package/dest/tx/state_reference.d.ts +30 -117
  788. package/dest/tx/state_reference.d.ts.map +1 -1
  789. package/dest/tx/state_reference.js +6 -4
  790. package/dest/tx/tree_snapshots.d.ts +27 -84
  791. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  792. package/dest/tx/tree_snapshots.js +6 -4
  793. package/dest/tx/tx.d.ts +34 -17
  794. package/dest/tx/tx.d.ts.map +1 -1
  795. package/dest/tx/tx.js +70 -30
  796. package/dest/tx/tx_constant_data.d.ts +4 -3
  797. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  798. package/dest/tx/tx_constant_data.js +6 -3
  799. package/dest/tx/tx_context.d.ts +32 -131
  800. package/dest/tx/tx_context.d.ts.map +1 -1
  801. package/dest/tx/tx_context.js +6 -6
  802. package/dest/tx/tx_hash.d.ts +6 -4
  803. package/dest/tx/tx_hash.d.ts.map +1 -1
  804. package/dest/tx/tx_hash.js +13 -5
  805. package/dest/tx/tx_receipt.d.ts +151 -51
  806. package/dest/tx/tx_receipt.d.ts.map +1 -1
  807. package/dest/tx/tx_receipt.js +145 -51
  808. package/dest/tx/tx_request.js +2 -2
  809. package/dest/tx/validator/error_texts.d.ts +11 -3
  810. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  811. package/dest/tx/validator/error_texts.js +12 -2
  812. package/dest/tx/validator/tx_validator.d.ts +6 -28
  813. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  814. package/dest/tx/validator/tx_validator.js +0 -4
  815. package/dest/types/shared.d.ts +4 -12
  816. package/dest/types/shared.d.ts.map +1 -1
  817. package/dest/types/shared.js +6 -12
  818. package/dest/update-checker/dev_version.d.ts +3 -0
  819. package/dest/update-checker/dev_version.d.ts.map +1 -0
  820. package/dest/update-checker/dev_version.js +1 -0
  821. package/dest/update-checker/index.d.ts +4 -2
  822. package/dest/update-checker/index.d.ts.map +1 -1
  823. package/dest/update-checker/index.js +3 -1
  824. package/dest/update-checker/package_version.d.ts +6 -0
  825. package/dest/update-checker/package_version.d.ts.map +1 -0
  826. package/dest/update-checker/package_version.js +13 -0
  827. package/dest/update-checker/version_checker.d.ts +25 -0
  828. package/dest/update-checker/version_checker.d.ts.map +1 -0
  829. package/dest/update-checker/version_checker.js +50 -0
  830. package/dest/validators/errors.d.ts +21 -1
  831. package/dest/validators/errors.d.ts.map +1 -1
  832. package/dest/validators/errors.js +19 -0
  833. package/dest/validators/schemas.d.ts +147 -614
  834. package/dest/validators/schemas.d.ts.map +1 -1
  835. package/dest/validators/schemas.js +9 -6
  836. package/dest/validators/types.d.ts +21 -4
  837. package/dest/validators/types.d.ts.map +1 -1
  838. package/dest/versioning/versioning.d.ts +4 -2
  839. package/dest/versioning/versioning.d.ts.map +1 -1
  840. package/dest/versioning/versioning.js +5 -2
  841. package/dest/vks/verification_key.d.ts +4 -139
  842. package/dest/vks/verification_key.d.ts.map +1 -1
  843. package/dest/vks/verification_key.js +5 -126
  844. package/dest/world-state/genesis_data.d.ts +21 -0
  845. package/dest/world-state/genesis_data.d.ts.map +1 -0
  846. package/dest/world-state/genesis_data.js +8 -0
  847. package/dest/world-state/index.d.ts +2 -1
  848. package/dest/world-state/index.d.ts.map +1 -1
  849. package/dest/world-state/index.js +1 -0
  850. package/dest/world-state/world_state_revision.d.ts +11 -39
  851. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  852. package/dest/world-state/world_state_revision.js +7 -21
  853. package/package.json +29 -15
  854. package/src/abi/abi.ts +110 -25
  855. package/src/abi/authorization_selector.ts +2 -8
  856. package/src/abi/buffer.ts +38 -5
  857. package/src/abi/contract_artifact.ts +51 -22
  858. package/src/abi/decoder.ts +53 -103
  859. package/src/abi/encoder.ts +85 -6
  860. package/src/abi/event_metadata_definition.ts +2 -0
  861. package/src/abi/event_selector.ts +2 -8
  862. package/src/abi/function_call.ts +41 -7
  863. package/src/abi/function_selector.ts +4 -13
  864. package/src/abi/function_signature_decoder.ts +77 -0
  865. package/src/abi/index.ts +1 -0
  866. package/src/abi/note_selector.ts +3 -12
  867. package/src/abi/selector.ts +1 -1
  868. package/src/abi/utils.ts +31 -4
  869. package/src/auth_witness/auth_witness.ts +3 -3
  870. package/src/avm/avm.ts +10 -2
  871. package/src/avm/index.ts +0 -5
  872. package/src/avm/message_pack.ts +12 -3
  873. package/src/avm/revert_code.ts +20 -25
  874. package/src/aztec-address/index.ts +50 -17
  875. package/src/block/attestation_info.ts +16 -11
  876. package/src/block/block_data.ts +25 -0
  877. package/src/block/block_hash.ts +31 -49
  878. package/src/block/block_parameter.ts +72 -4
  879. package/src/block/in_block.ts +2 -2
  880. package/src/block/index.ts +1 -1
  881. package/src/block/l2_block.ts +16 -4
  882. package/src/block/l2_block_info.ts +8 -6
  883. package/src/block/l2_block_source.ts +279 -121
  884. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  885. package/src/block/l2_block_stream/index.ts +1 -0
  886. package/src/block/l2_block_stream/interfaces.ts +101 -9
  887. package/src/block/l2_block_stream/l2_block_stream.ts +268 -158
  888. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  889. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  890. package/src/block/proposal/attestations_and_signers.ts +85 -24
  891. package/src/block/test/l2_tips_store_test_suite.ts +276 -22
  892. package/src/block/validate_block_result.ts +48 -2
  893. package/src/checkpoint/checkpoint.ts +55 -18
  894. package/src/checkpoint/checkpoint_data.ts +91 -0
  895. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  896. package/src/checkpoint/digest.ts +28 -0
  897. package/src/checkpoint/index.ts +6 -0
  898. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  899. package/src/checkpoint/published_checkpoint.ts +3 -1
  900. package/src/checkpoint/simulation_overrides.ts +171 -0
  901. package/src/checkpoint/validate.ts +240 -0
  902. package/src/config/chain-config.ts +13 -16
  903. package/src/config/index.ts +2 -0
  904. package/src/config/network-consensus-config.ts +291 -0
  905. package/src/config/node-rpc-config.ts +2 -1
  906. package/src/config/sequencer-config.ts +96 -0
  907. package/src/contract/artifact_hash.ts +15 -3
  908. package/src/contract/complete_address.ts +7 -3
  909. package/src/contract/contract_address.ts +14 -13
  910. package/src/contract/contract_class.ts +6 -5
  911. package/src/contract/contract_class_id.ts +7 -6
  912. package/src/contract/contract_instance.ts +73 -3
  913. package/src/contract/index.ts +0 -3
  914. package/src/contract/interfaces/contract_class.ts +2 -82
  915. package/src/contract/interfaces/contract_data_source.ts +2 -4
  916. package/src/contract/interfaces/contract_instance.ts +32 -10
  917. package/src/contract/interfaces/node-info.ts +14 -0
  918. package/src/contract/partial_address.ts +8 -2
  919. package/src/contract/private_function.ts +5 -3
  920. package/src/database-version/database_version.ts +87 -0
  921. package/src/database-version/version_manager.ts +114 -83
  922. package/src/deserialization/index.ts +35 -2
  923. package/src/epoch-helpers/index.ts +30 -0
  924. package/src/file-store/factory.ts +20 -4
  925. package/src/file-store/http.ts +29 -10
  926. package/src/file-store/index.ts +2 -0
  927. package/src/file-store/local.ts +15 -5
  928. package/src/file-store/memory.ts +94 -0
  929. package/src/file-store/s3.ts +12 -3
  930. package/src/gas/README.md +318 -0
  931. package/src/gas/fee_math.ts +120 -0
  932. package/src/gas/gas.ts +8 -3
  933. package/src/gas/gas_fees.ts +29 -10
  934. package/src/gas/gas_settings.ts +63 -15
  935. package/src/gas/index.ts +2 -0
  936. package/src/gas/tx_gas_limits.ts +123 -0
  937. package/src/ha-signing/config.ts +170 -0
  938. package/src/ha-signing/index.ts +29 -0
  939. package/src/ha-signing/local_config.ts +65 -0
  940. package/src/ha-signing/types.ts +126 -0
  941. package/src/hash/hash.ts +75 -18
  942. package/src/hash/map_slot.ts +2 -2
  943. package/src/interfaces/allowed_element.ts +29 -9
  944. package/src/interfaces/api_limit.ts +6 -1
  945. package/src/interfaces/archiver.ts +97 -87
  946. package/src/interfaces/aztec-node-admin.ts +58 -19
  947. package/src/interfaces/aztec-node-debug.ts +92 -0
  948. package/src/interfaces/aztec-node.ts +437 -342
  949. package/src/interfaces/block-builder.ts +76 -12
  950. package/src/interfaces/block_response.ts +92 -0
  951. package/src/interfaces/chain_tips.ts +16 -0
  952. package/src/interfaces/checkpoint_parameter.ts +20 -0
  953. package/src/interfaces/checkpoint_response.ts +84 -0
  954. package/src/interfaces/client.ts +8 -1
  955. package/src/interfaces/configs.ts +108 -14
  956. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  957. package/src/interfaces/l1_publish_info.ts +40 -0
  958. package/src/interfaces/l2_logs_source.ts +13 -39
  959. package/src/interfaces/merkle_tree_operations.ts +20 -23
  960. package/src/interfaces/p2p-bootstrap.ts +2 -2
  961. package/src/interfaces/p2p.ts +60 -31
  962. package/src/interfaces/private_kernel_prover.ts +192 -13
  963. package/src/interfaces/prover-agent.ts +1 -1
  964. package/src/interfaces/prover-broker.ts +22 -0
  965. package/src/interfaces/prover-client.ts +18 -8
  966. package/src/interfaces/prover-node.ts +36 -21
  967. package/src/interfaces/proving-job-source.ts +4 -4
  968. package/src/interfaces/proving-job.ts +18 -6
  969. package/src/interfaces/public_storage_override.ts +26 -0
  970. package/src/interfaces/server.ts +5 -2
  971. package/src/interfaces/server_circuit_prover.ts +2 -2
  972. package/src/interfaces/slasher.ts +21 -10
  973. package/src/interfaces/tx_provider.ts +10 -0
  974. package/src/interfaces/validator.ts +98 -36
  975. package/src/interfaces/world_state.ts +19 -4
  976. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  977. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  978. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  979. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  980. package/src/kernel/hints/index.ts +2 -3
  981. package/src/kernel/hints/key_validation_request.ts +18 -16
  982. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  983. package/src/kernel/hints/read_request.ts +1 -1
  984. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  985. package/src/kernel/index.ts +9 -1
  986. package/src/kernel/log_hash.ts +36 -13
  987. package/src/kernel/note_hash.ts +1 -1
  988. package/src/kernel/nullifier.ts +1 -1
  989. package/src/kernel/private_circuit_public_inputs.ts +26 -15
  990. package/src/kernel/private_context_inputs.ts +10 -3
  991. package/src/kernel/private_kernel_circuit_public_inputs.ts +11 -9
  992. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  993. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  994. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  995. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  996. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  997. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  998. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  999. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  1000. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  1001. package/src/kernel/private_kernel_prover_output.ts +4 -0
  1002. package/src/kernel/private_kernel_reset_dimensions.ts +16 -6
  1003. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  1004. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  1005. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  1006. package/src/kernel/private_log_data.ts +4 -1
  1007. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  1008. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  1009. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  1010. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  1011. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  1012. package/src/kernel/private_validation_requests.ts +8 -8
  1013. package/src/kernel/public_call_request.ts +22 -7
  1014. package/src/kernel/utils/index.ts +0 -1
  1015. package/src/keys/derivation.ts +84 -27
  1016. package/src/keys/key_types.ts +6 -2
  1017. package/src/keys/public_key.ts +26 -2
  1018. package/src/keys/public_keys.ts +125 -111
  1019. package/src/keys/utils.ts +8 -4
  1020. package/src/kv-store/config.ts +29 -0
  1021. package/src/kv-store/index.ts +1 -0
  1022. package/src/l1-contracts/index.ts +1 -1
  1023. package/src/logs/app_tagging_secret.ts +160 -0
  1024. package/src/logs/app_tagging_secret_kind.ts +21 -0
  1025. package/src/logs/contract_class_log.ts +15 -14
  1026. package/src/logs/debug_log_store.ts +54 -0
  1027. package/src/logs/index.ts +8 -6
  1028. package/src/logs/log_cursor.ts +110 -0
  1029. package/src/logs/log_result.ts +104 -0
  1030. package/src/logs/logs_query.ts +138 -0
  1031. package/src/logs/message_context.ts +6 -50
  1032. package/src/logs/pending_tagged_log.ts +6 -35
  1033. package/src/logs/pre_tag.ts +3 -6
  1034. package/src/logs/private_log.ts +9 -3
  1035. package/src/logs/public_log.ts +4 -2
  1036. package/src/logs/query_all_logs_by_tags.ts +98 -0
  1037. package/src/logs/shared_secret_derivation.ts +55 -11
  1038. package/src/logs/siloed_tag.ts +28 -14
  1039. package/src/logs/tag.ts +9 -9
  1040. package/src/logs/tagging_index_range.ts +18 -0
  1041. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  1042. package/src/messaging/index.ts +1 -0
  1043. package/src/messaging/l1_to_l2_message.ts +56 -15
  1044. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  1045. package/src/messaging/l2_to_l1_membership.ts +192 -38
  1046. package/src/messaging/l2_to_l1_message.ts +29 -9
  1047. package/src/noir/index.ts +6 -3
  1048. package/src/note/index.ts +0 -1
  1049. package/src/note/note_dao.ts +1 -4
  1050. package/src/p2p/attestation_utils.ts +64 -1
  1051. package/src/p2p/block_proposal.ts +112 -39
  1052. package/src/p2p/checkpoint_attestation.ts +44 -31
  1053. package/src/p2p/checkpoint_proposal.ts +159 -86
  1054. package/src/p2p/client_type.ts +0 -6
  1055. package/src/p2p/consensus_payload.ts +68 -24
  1056. package/src/p2p/constants.ts +3 -0
  1057. package/src/p2p/gossipable.ts +4 -4
  1058. package/src/p2p/index.ts +0 -2
  1059. package/src/p2p/peer_error.ts +7 -0
  1060. package/src/p2p/signature_utils.ts +117 -23
  1061. package/src/p2p/signed_txs.ts +46 -28
  1062. package/src/p2p/topic_type.ts +8 -15
  1063. package/src/parity/parity_base_private_inputs.ts +10 -4
  1064. package/src/parity/parity_public_inputs.ts +9 -2
  1065. package/src/proofs/chonk_proof.ts +132 -12
  1066. package/src/rollup/avm_proof_data.ts +2 -2
  1067. package/src/rollup/block_headers_hash.ts +11 -2
  1068. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  1069. package/src/rollup/checkpoint_header.ts +18 -4
  1070. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  1071. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  1072. package/src/schemas/schemas.ts +6 -1
  1073. package/src/slashing/helpers.ts +21 -9
  1074. package/src/slashing/index.ts +1 -2
  1075. package/src/slashing/serialization.ts +1 -81
  1076. package/src/slashing/types.ts +38 -49
  1077. package/src/slashing/{tally.ts → votes.ts} +41 -2
  1078. package/src/stats/stats.ts +10 -4
  1079. package/src/tests/factories.ts +128 -165
  1080. package/src/tests/mocks.ts +111 -84
  1081. package/src/timetable/README.md +609 -0
  1082. package/src/timetable/budgets.ts +87 -0
  1083. package/src/timetable/build_proposer_timetable.ts +42 -0
  1084. package/src/timetable/consensus_timetable.ts +126 -0
  1085. package/src/timetable/index.ts +4 -0
  1086. package/src/timetable/proposer_timetable.ts +190 -0
  1087. package/src/timetable/timetable-example.svg +108 -0
  1088. package/src/trees/append_only_tree_snapshot.ts +8 -3
  1089. package/src/trees/nullifier_leaf.ts +4 -0
  1090. package/src/trees/nullifier_membership_witness.ts +0 -21
  1091. package/src/trees/public_data_leaf.ts +11 -5
  1092. package/src/trees/public_data_witness.ts +0 -31
  1093. package/src/tx/block_header.ts +19 -8
  1094. package/src/tx/capsule.ts +10 -2
  1095. package/src/tx/execution_payload.ts +2 -1
  1096. package/src/tx/fee_provider.ts +10 -0
  1097. package/src/tx/global_variable_builder.ts +3 -20
  1098. package/src/tx/global_variables.ts +15 -23
  1099. package/src/tx/hashed_values.ts +19 -9
  1100. package/src/tx/index.ts +1 -1
  1101. package/src/tx/indexed_tx_effect.ts +18 -5
  1102. package/src/tx/offchain_effect.ts +1 -1
  1103. package/src/tx/partial_state_reference.ts +8 -3
  1104. package/src/tx/private_execution_result.ts +5 -5
  1105. package/src/tx/private_tx_constant_data.ts +25 -2
  1106. package/src/tx/profiling.ts +20 -9
  1107. package/src/tx/protocol_contracts.ts +2 -2
  1108. package/src/tx/proven_tx.ts +6 -0
  1109. package/src/tx/public_call_request_with_calldata.ts +8 -3
  1110. package/src/tx/public_simulation_output.ts +4 -0
  1111. package/src/tx/simulated_tx.ts +39 -20
  1112. package/src/tx/state_reference.ts +9 -4
  1113. package/src/tx/tree_snapshots.ts +9 -4
  1114. package/src/tx/tx.ts +98 -37
  1115. package/src/tx/tx_constant_data.ts +8 -3
  1116. package/src/tx/tx_context.ts +8 -3
  1117. package/src/tx/tx_hash.ts +20 -5
  1118. package/src/tx/tx_receipt.ts +269 -74
  1119. package/src/tx/tx_request.ts +2 -2
  1120. package/src/tx/validator/error_texts.ts +15 -2
  1121. package/src/tx/validator/tx_validator.ts +2 -6
  1122. package/src/types/shared.ts +8 -13
  1123. package/src/update-checker/dev_version.ts +2 -0
  1124. package/src/update-checker/index.ts +3 -1
  1125. package/src/update-checker/package_version.ts +17 -0
  1126. package/src/update-checker/version_checker.ts +65 -0
  1127. package/src/validators/errors.ts +26 -0
  1128. package/src/validators/schemas.ts +13 -4
  1129. package/src/validators/types.ts +25 -5
  1130. package/src/versioning/versioning.ts +5 -2
  1131. package/src/vks/verification_key.ts +5 -184
  1132. package/src/world-state/genesis_data.ts +37 -0
  1133. package/src/world-state/index.ts +1 -0
  1134. package/src/world-state/world_state_revision.ts +9 -34
  1135. package/dest/abi/mocked_keys.d.ts +0 -2
  1136. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1137. package/dest/abi/mocked_keys.js +0 -1
  1138. package/dest/avm/contract_storage_read.d.ts +0 -58
  1139. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1140. package/dest/avm/contract_storage_read.js +0 -65
  1141. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1142. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1143. package/dest/avm/contract_storage_update_request.js +0 -80
  1144. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1145. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1146. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1147. package/dest/avm/public_data_update_request.d.ts +0 -62
  1148. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1149. package/dest/avm/public_data_update_request.js +0 -67
  1150. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1151. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1152. package/dest/avm/public_inner_call_request.js +0 -74
  1153. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1154. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1155. package/dest/block/checkpointed_l2_block.js +0 -46
  1156. package/dest/contract/deployment_info.d.ts +0 -24
  1157. package/dest/contract/deployment_info.d.ts.map +0 -1
  1158. package/dest/contract/deployment_info.js +0 -3
  1159. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1160. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1161. package/dest/contract/private_function_membership_proof.js +0 -124
  1162. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1163. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1164. package/dest/contract/utility_function_membership_proof.js +0 -87
  1165. package/dest/database-version/index.d.ts +0 -2
  1166. package/dest/database-version/index.d.ts.map +0 -1
  1167. package/dest/database-version/index.js +0 -1
  1168. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1169. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1170. package/dest/interfaces/epoch-prover.js +0 -1
  1171. package/dest/interfaces/get_logs_response.d.ts +0 -90
  1172. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1173. package/dest/interfaces/get_logs_response.js +0 -12
  1174. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1175. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1176. package/dest/interfaces/prover-coordination.js +0 -1
  1177. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1178. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1179. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1180. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1181. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1182. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1183. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1184. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1185. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1186. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1187. package/dest/kernel/utils/optional_number.js +0 -42
  1188. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1189. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1190. package/dest/l1-contracts/slash_factory.js +0 -157
  1191. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1192. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1193. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1194. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1195. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1196. package/dest/logs/extended_contract_class_log.js +0 -67
  1197. package/dest/logs/extended_public_log.d.ts +0 -100
  1198. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1199. package/dest/logs/extended_public_log.js +0 -73
  1200. package/dest/logs/log_filter.d.ts +0 -22
  1201. package/dest/logs/log_filter.d.ts.map +0 -1
  1202. package/dest/logs/log_filter.js +0 -11
  1203. package/dest/logs/log_id.d.ts +0 -82
  1204. package/dest/logs/log_id.d.ts.map +0 -1
  1205. package/dest/logs/log_id.js +0 -91
  1206. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1207. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1208. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1209. package/dest/note/notes_filter.d.ts +0 -27
  1210. package/dest/note/notes_filter.d.ts.map +0 -1
  1211. package/dest/note/notes_filter.js +0 -11
  1212. package/dest/p2p/interface.d.ts +0 -5
  1213. package/dest/p2p/interface.d.ts.map +0 -1
  1214. package/dest/p2p/interface.js +0 -1
  1215. package/dest/slashing/empire.d.ts +0 -31
  1216. package/dest/slashing/empire.d.ts.map +0 -1
  1217. package/dest/slashing/empire.js +0 -85
  1218. package/dest/slashing/tally.d.ts.map +0 -1
  1219. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1220. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1221. package/dest/tx/validator/empty_validator.js +0 -7
  1222. package/dest/update-checker/update-checker.d.ts +0 -49
  1223. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1224. package/dest/update-checker/update-checker.js +0 -130
  1225. package/src/abi/mocked_keys.ts +0 -2
  1226. package/src/avm/contract_storage_read.ts +0 -77
  1227. package/src/avm/contract_storage_update_request.ts +0 -93
  1228. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1229. package/src/avm/public_data_update_request.ts +0 -106
  1230. package/src/avm/public_inner_call_request.ts +0 -85
  1231. package/src/block/checkpointed_l2_block.ts +0 -70
  1232. package/src/contract/deployment_info.ts +0 -25
  1233. package/src/contract/private_function_membership_proof.ts +0 -167
  1234. package/src/contract/utility_function_membership_proof.ts +0 -118
  1235. package/src/database-version/index.ts +0 -1
  1236. package/src/interfaces/epoch-prover.ts +0 -72
  1237. package/src/interfaces/get_logs_response.ts +0 -35
  1238. package/src/interfaces/prover-coordination.ts +0 -17
  1239. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1240. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1241. package/src/kernel/utils/optional_number.ts +0 -50
  1242. package/src/l1-contracts/slash_factory.ts +0 -179
  1243. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1244. package/src/logs/extended_contract_class_log.ts +0 -87
  1245. package/src/logs/extended_public_log.ts +0 -94
  1246. package/src/logs/log_filter.ts +0 -31
  1247. package/src/logs/log_id.ts +0 -121
  1248. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1249. package/src/note/notes_filter.ts +0 -38
  1250. package/src/p2p/interface.ts +0 -4
  1251. package/src/slashing/empire.ts +0 -102
  1252. package/src/tx/validator/empty_validator.ts +0 -7
  1253. package/src/update-checker/update-checker.ts +0 -166
@@ -1,35 +1,42 @@
1
- import { BlockNumber, IndexWithinCheckpoint, SlotNumber } from '@aztec/foundation/branded-types';
2
- import { Buffer32 } from '@aztec/foundation/buffer';
3
- import { keccak256 } from '@aztec/foundation/crypto/keccak';
4
- import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
1
+ import {
2
+ type CheckpointNumber,
3
+ CheckpointProposalHash,
4
+ IndexWithinCheckpoint,
5
+ SlotNumber,
6
+ } from '@aztec/foundation/branded-types';
7
+ import { type BaseBuffer32, Buffer32 } from '@aztec/foundation/buffer';
5
8
  import { Fr } from '@aztec/foundation/curves/bn254';
6
9
  import type { EthAddress } from '@aztec/foundation/eth-address';
7
10
  import { Signature } from '@aztec/foundation/eth-signature';
8
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
9
- import { DutyType, type SigningContext } from '@aztec/validator-ha-signer/types';
11
+ import { BufferReader, serializeSignedBigInt, serializeToBuffer } from '@aztec/foundation/serialize';
12
+
13
+ import type { TypedDataDefinition } from 'viem';
10
14
 
11
15
  import type { L2BlockInfo } from '../block/l2_block_info.js';
12
16
  import { MAX_TXS_PER_BLOCK } from '../deserialization/index.js';
17
+ import { DutyType, type SigningContext } from '../ha-signing/index.js';
13
18
  import { CheckpointHeader } from '../rollup/checkpoint_header.js';
14
19
  import { BlockHeader } from '../tx/block_header.js';
15
20
  import { TxHash } from '../tx/index.js';
16
21
  import type { Tx } from '../tx/tx.js';
17
22
  import { BlockProposal } from './block_proposal.js';
23
+ import { ConsensusPayload } from './consensus_payload.js';
18
24
  import { Gossipable } from './gossipable.js';
19
25
  import {
20
- SignatureDomainSeparator,
21
- getHashedSignaturePayload,
22
- getHashedSignaturePayloadEthSignedMessage,
26
+ type CoordinationSignatureContext,
27
+ type CoordinationSignatureType,
28
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
29
+ type Signable,
30
+ coordinationSignatureContextEquals,
31
+ getCoordinationSignatureTypedData,
32
+ readCoordinationSignatureContext,
33
+ recoverCoordinationSigner,
34
+ serializeCoordinationSignatureContext,
23
35
  } from './signature_utils.js';
24
36
  import { SignedTxs } from './signed_txs.js';
25
37
  import { TopicType } from './topic_type.js';
26
38
 
27
- // REFACTOR(palla): Use a branded type instead of a subclass of Buffer32
28
- export class CheckpointProposalHash extends Buffer32 {
29
- constructor(hash: Buffer) {
30
- super(hash);
31
- }
32
- }
39
+ export type { CheckpointProposalHash } from '@aztec/foundation/branded-types';
33
40
 
34
41
  export type CheckpointProposalOptions = {
35
42
  /**
@@ -69,10 +76,12 @@ export type CheckpointLastBlock = Omit<CheckpointLastBlockData, 'txs'> & {
69
76
  * It includes the aggregated checkpoint header that validators will attest to, plus optionally
70
77
  * the last block's info for nodes to re-execute. This marks the completion of a slot's worth of blocks.
71
78
  */
72
- export class CheckpointProposal extends Gossipable {
79
+ export class CheckpointProposal extends Gossipable implements Signable {
73
80
  static override p2pTopic = TopicType.checkpoint_proposal;
74
81
 
75
- private sender: EthAddress | undefined;
82
+ readonly primaryType: CoordinationSignatureType = 'CheckpointProposal';
83
+
84
+ private cachedSender: EthAddress | undefined | null = undefined;
76
85
 
77
86
  constructor(
78
87
  /** The aggregated checkpoint header for consensus */
@@ -81,38 +90,46 @@ export class CheckpointProposal extends Gossipable {
81
90
  /** Archive root after this checkpoint is applied */
82
91
  public readonly archive: Fr,
83
92
 
84
- /** The proposer's signature over the checkpoint payload (checkpointHeader + archive) */
93
+ /** The fee asset price modifier in basis points (from oracle) */
94
+ public readonly feeAssetPriceModifier: bigint,
95
+
96
+ /** The proposer's signature over the checkpoint payload (checkpointHeader + archive + feeAssetPriceModifier) */
85
97
  public readonly signature: Signature,
86
98
 
99
+ /** The signing domain (chainId + rollupAddress) the signature is bound to */
100
+ public readonly signatureContext: CoordinationSignatureContext,
101
+
87
102
  /** Optional last block info, including its own signature for BlockProposal extraction */
88
- public readonly lastBlock?: CheckpointLastBlock,
103
+ public readonly lastBlock?: CheckpointLastBlock | BlockProposal,
89
104
  ) {
90
105
  super();
91
- }
92
106
 
93
- override generateP2PMessageIdentifier(): Promise<Buffer32> {
94
- return Promise.resolve(new CheckpointProposalHash(keccak256(this.signature.toBuffer())));
95
- }
96
-
97
- get slotNumber(): SlotNumber {
98
- return this.checkpointHeader.slotNumber;
99
- }
100
-
101
- get blockNumber(): BlockNumber {
102
- if (!this.lastBlock) {
103
- throw new Error('Cannot get blockNumber without lastBlock');
107
+ // Check that last block properties match those of the checkpoint.
108
+ if (lastBlock && 'inHash' in lastBlock && !lastBlock.inHash.equals(checkpointHeader.inHash)) {
109
+ throw new Error(
110
+ `CheckpointProposal lastBlock inHash ${lastBlock.inHash} does not match checkpoint inHash ${checkpointHeader.inHash}`,
111
+ );
112
+ }
113
+ if (lastBlock && 'archiveRoot' in lastBlock && !lastBlock.archiveRoot.equals(archive)) {
114
+ throw new Error(
115
+ `CheckpointProposal lastBlock archive ${lastBlock.archiveRoot} does not match checkpoint archive ${archive}`,
116
+ );
117
+ }
118
+ if (
119
+ lastBlock &&
120
+ 'signatureContext' in lastBlock &&
121
+ !coordinationSignatureContextEquals(lastBlock.signatureContext, signatureContext)
122
+ ) {
123
+ throw new Error(`CheckpointProposal lastBlock signatureContext does not match checkpoint signatureContext`);
104
124
  }
105
- return this.lastBlock.blockHeader.getBlockNumber();
106
125
  }
107
126
 
108
- /** Convenience getter for txHashes from lastBlock */
109
- get txHashes(): TxHash[] {
110
- return this.lastBlock?.txHashes ?? [];
127
+ override generateP2PMessageIdentifier(): Promise<BaseBuffer32> {
128
+ return Promise.resolve(new Buffer32(this.toConsensusPayload().getPayloadHash()));
111
129
  }
112
130
 
113
- /** Convenience getter for txs from lastBlock */
114
- get txs(): Tx[] | undefined {
115
- return this.lastBlock?.signedTxs?.txs;
131
+ get slotNumber(): SlotNumber {
132
+ return this.checkpointHeader.slotNumber;
116
133
  }
117
134
 
118
135
  /**
@@ -131,6 +148,7 @@ export class CheckpointProposal extends Gossipable {
131
148
  this.archive,
132
149
  this.lastBlock.txHashes,
133
150
  this.lastBlock.signature,
151
+ this.signatureContext,
134
152
  this.lastBlock.signedTxs,
135
153
  );
136
154
  }
@@ -148,52 +166,76 @@ export class CheckpointProposal extends Gossipable {
148
166
  };
149
167
  }
150
168
 
169
+ toCheckpointInfo() {
170
+ return {
171
+ slotNumber: this.slotNumber,
172
+ archive: this.archive,
173
+ lastBlockNumber: this.lastBlock?.blockHeader.getBlockNumber(),
174
+ lastBlockIndex: this.lastBlock?.indexWithinCheckpoint,
175
+ blockHeadersHash: this.checkpointHeader.blockHeadersHash,
176
+ };
177
+ }
178
+
151
179
  /**
152
180
  * Get the payload to sign for this checkpoint proposal.
153
- * The signature is over the checkpoint header + archive root (for consensus).
181
+ * The signature is over the checkpoint header + archive root + feeAssetPriceModifier (for consensus).
182
+ */
183
+ getPayloadToSign(): Buffer {
184
+ return serializeToBuffer([this.checkpointHeader, this.archive, serializeSignedBigInt(this.feeAssetPriceModifier)]);
185
+ }
186
+
187
+ /**
188
+ * Returns a content-addressed keccak256 hash of the consensus payload
189
+ * (header + archive + feeAssetPriceModifier + signatureContext).
190
+ *
191
+ * Used by the attestation pool to dedup distinct signed payloads at the same slot
192
+ * regardless of archive/header collisions on `feeAssetPriceModifier` variants.
193
+ * The hash deliberately excludes the signature so non-deterministic ECDSA
194
+ * re-signs of the same payload do not look like equivocation.
154
195
  */
155
- getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer {
156
- return serializeToBuffer([domainSeparator, this.checkpointHeader, this.archive]);
196
+ getPayloadHash(): CheckpointProposalHash {
197
+ return CheckpointProposalHash.fromBuffer(this.toConsensusPayload().getPayloadHash());
198
+ }
199
+
200
+ /** Returns the ConsensusPayload that an attester would sign for this proposal. */
201
+ toConsensusPayload(): ConsensusPayload {
202
+ return new ConsensusPayload(this.checkpointHeader, this.archive, this.feeAssetPriceModifier, this.signatureContext);
157
203
  }
158
204
 
159
205
  static async createProposalFromSigner(
160
206
  checkpointHeader: CheckpointHeader,
161
207
  archiveRoot: Fr,
162
- lastBlockInfo: CheckpointLastBlockData | undefined,
163
- payloadSigner: (payload: Buffer32, context: SigningContext) => Promise<Signature>,
208
+ checkpointNumber: CheckpointNumber,
209
+ feeAssetPriceModifier: bigint,
210
+ lastBlockProposal: BlockProposal | undefined,
211
+ signatureContext: CoordinationSignatureContext,
212
+ payloadSigner: (typedData: TypedDataDefinition, context: SigningContext) => Promise<Signature>,
164
213
  ): Promise<CheckpointProposal> {
165
214
  // Sign the checkpoint payload with CHECKPOINT_PROPOSAL duty type
166
- const tempProposal = new CheckpointProposal(checkpointHeader, archiveRoot, Signature.empty(), undefined);
167
- const checkpointHash = getHashedSignaturePayload(tempProposal, SignatureDomainSeparator.checkpointProposal);
168
-
215
+ const tempProposal = new CheckpointProposal(
216
+ checkpointHeader,
217
+ archiveRoot,
218
+ feeAssetPriceModifier,
219
+ Signature.empty(),
220
+ signatureContext,
221
+ );
169
222
  const checkpointContext: SigningContext = {
170
223
  slot: checkpointHeader.slotNumber,
171
- blockNumber: lastBlockInfo?.blockHeader?.globalVariables.blockNumber ?? BlockNumber(0),
224
+ checkpointNumber,
172
225
  dutyType: DutyType.CHECKPOINT_PROPOSAL,
173
226
  };
174
- const checkpointSignature = await payloadSigner(checkpointHash, checkpointContext);
175
227
 
176
- if (!lastBlockInfo) {
177
- return new CheckpointProposal(checkpointHeader, archiveRoot, checkpointSignature);
178
- }
228
+ const typedData = getCoordinationSignatureTypedData(tempProposal);
229
+ const checkpointSignature = await payloadSigner(typedData, checkpointContext);
179
230
 
180
- const lastBlockProposal = await BlockProposal.createProposalFromSigner(
181
- lastBlockInfo.blockHeader,
182
- lastBlockInfo.indexWithinCheckpoint,
183
- checkpointHeader.inHash,
231
+ return new CheckpointProposal(
232
+ checkpointHeader,
184
233
  archiveRoot,
185
- lastBlockInfo.txHashes,
186
- lastBlockInfo.txs,
187
- payloadSigner,
234
+ feeAssetPriceModifier,
235
+ checkpointSignature,
236
+ signatureContext,
237
+ lastBlockProposal,
188
238
  );
189
-
190
- return new CheckpointProposal(checkpointHeader, archiveRoot, checkpointSignature, {
191
- blockHeader: lastBlockInfo.blockHeader,
192
- indexWithinCheckpoint: lastBlockInfo.indexWithinCheckpoint,
193
- txHashes: lastBlockInfo.txHashes,
194
- signature: lastBlockProposal.signature,
195
- signedTxs: lastBlockProposal.signedTxs,
196
- });
197
239
  }
198
240
 
199
241
  /**
@@ -202,32 +244,36 @@ export class CheckpointProposal extends Gossipable {
202
244
  * @returns The sender address, or undefined if signature recovery fails or senders don't match
203
245
  */
204
246
  getSender(): EthAddress | undefined {
205
- if (!this.sender) {
206
- const hashed = getHashedSignaturePayloadEthSignedMessage(this, SignatureDomainSeparator.checkpointProposal);
207
- const checkpointSender = tryRecoverAddress(hashed, this.signature);
247
+ if (this.cachedSender === undefined) {
248
+ const checkpointSender = recoverCoordinationSigner(this, this.signature);
208
249
 
209
- // If there's a lastBlock, verify the block proposal sender matches
210
250
  if (checkpointSender && this.lastBlock) {
211
251
  const blockProposal = this.getBlockProposal();
212
252
  const blockSender = blockProposal?.getSender();
213
253
  if (!blockSender || !blockSender.equals(checkpointSender)) {
214
- return undefined; // Sender mismatch - fail
254
+ this.cachedSender = null;
255
+ return undefined;
215
256
  }
216
257
  }
217
258
 
218
- // Cache the sender for later use
219
- this.sender = checkpointSender;
259
+ this.cachedSender = checkpointSender ?? null;
220
260
  }
221
261
 
222
- return this.sender;
262
+ return this.cachedSender ?? undefined;
223
263
  }
224
264
 
225
265
  getPayload() {
226
- return this.getPayloadToSign(SignatureDomainSeparator.checkpointProposal);
266
+ return this.getPayloadToSign();
227
267
  }
228
268
 
229
269
  toBuffer(): Buffer {
230
- const buffer: any[] = [this.checkpointHeader, this.archive, this.signature];
270
+ const buffer: any[] = [
271
+ this.checkpointHeader,
272
+ this.archive,
273
+ serializeSignedBigInt(this.feeAssetPriceModifier),
274
+ this.signature,
275
+ serializeCoordinationSignatureContext(this.signatureContext),
276
+ ];
231
277
 
232
278
  if (this.lastBlock) {
233
279
  buffer.push(1); // hasLastBlock = true
@@ -254,7 +300,9 @@ export class CheckpointProposal extends Gossipable {
254
300
 
255
301
  const checkpointHeader = reader.readObject(CheckpointHeader);
256
302
  const archive = reader.readObject(Fr);
303
+ const feeAssetPriceModifier = reader.readInt256();
257
304
  const signature = reader.readObject(Signature);
305
+ const signatureContext = readCoordinationSignatureContext(reader);
258
306
 
259
307
  const hasLastBlock = reader.readNumber();
260
308
 
@@ -276,7 +324,7 @@ export class CheckpointProposal extends Gossipable {
276
324
  }
277
325
  }
278
326
 
279
- return new CheckpointProposal(checkpointHeader, archive, signature, {
327
+ return new CheckpointProposal(checkpointHeader, archive, feeAssetPriceModifier, signature, signatureContext, {
280
328
  blockHeader,
281
329
  indexWithinCheckpoint,
282
330
  txHashes,
@@ -285,7 +333,7 @@ export class CheckpointProposal extends Gossipable {
285
333
  });
286
334
  }
287
335
 
288
- return new CheckpointProposal(checkpointHeader, archive, signature);
336
+ return new CheckpointProposal(checkpointHeader, archive, feeAssetPriceModifier, signature, signatureContext);
289
337
  }
290
338
 
291
339
  getSize(): number {
@@ -293,6 +341,9 @@ export class CheckpointProposal extends Gossipable {
293
341
  this.checkpointHeader.toBuffer().length +
294
342
  this.archive.size +
295
343
  this.signature.getSize() +
344
+ 8 /* feeAssetPriceModifier */ +
345
+ 4 /* chainId */ +
346
+ 20 /* rollupAddress */ +
296
347
  4; /* hasLastBlock flag */
297
348
 
298
349
  if (this.lastBlock) {
@@ -310,16 +361,29 @@ export class CheckpointProposal extends Gossipable {
310
361
  }
311
362
 
312
363
  static empty(): CheckpointProposal {
313
- return new CheckpointProposal(CheckpointHeader.empty(), Fr.ZERO, Signature.empty());
364
+ return new CheckpointProposal(
365
+ CheckpointHeader.empty(),
366
+ Fr.ZERO,
367
+ 0n,
368
+ Signature.empty(),
369
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
370
+ );
314
371
  }
315
372
 
316
373
  static random(): CheckpointProposal {
317
- return new CheckpointProposal(CheckpointHeader.random(), Fr.random(), Signature.random(), {
318
- blockHeader: BlockHeader.random(),
319
- indexWithinCheckpoint: IndexWithinCheckpoint(Math.floor(Math.random() * 5)),
320
- txHashes: [TxHash.random(), TxHash.random()],
321
- signature: Signature.random(),
322
- });
374
+ return new CheckpointProposal(
375
+ CheckpointHeader.random(),
376
+ Fr.random(),
377
+ 0n,
378
+ Signature.random(),
379
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
380
+ {
381
+ blockHeader: BlockHeader.random(),
382
+ indexWithinCheckpoint: IndexWithinCheckpoint(Math.floor(Math.random() * 5)),
383
+ txHashes: [TxHash.random(), TxHash.random()],
384
+ signature: Signature.random(),
385
+ },
386
+ );
323
387
  }
324
388
 
325
389
  toInspect() {
@@ -327,6 +391,9 @@ export class CheckpointProposal extends Gossipable {
327
391
  checkpointHeader: this.checkpointHeader.toInspect(),
328
392
  archive: this.archive.toString(),
329
393
  signature: this.signature.toString(),
394
+ feeAssetPriceModifier: this.feeAssetPriceModifier.toString(),
395
+ chainId: this.signatureContext.chainId,
396
+ rollupAddress: this.signatureContext.rollupAddress.toString(),
330
397
  lastBlock: this.lastBlock
331
398
  ? {
332
399
  blockHeader: this.lastBlock.blockHeader.toInspect(),
@@ -343,7 +410,13 @@ export class CheckpointProposal extends Gossipable {
343
410
  * Used when the lastBlock has been extracted and stored separately.
344
411
  */
345
412
  toCore(): CheckpointProposalCore {
346
- return new CheckpointProposal(this.checkpointHeader, this.archive, this.signature);
413
+ return new CheckpointProposal(
414
+ this.checkpointHeader,
415
+ this.archive,
416
+ this.feeAssetPriceModifier,
417
+ this.signature,
418
+ this.signatureContext,
419
+ );
347
420
  }
348
421
  }
349
422
 
@@ -1,6 +0,0 @@
1
- export enum P2PClientType {
2
- // Full p2p clients will subscribe to all gossip topics
3
- Full,
4
- // Prove p2p clients will only subscribe to transaction and proving topics
5
- Prover,
6
- }
@@ -1,6 +1,7 @@
1
+ import { keccak256 } from '@aztec/foundation/crypto/keccak';
1
2
  import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { schemas } from '@aztec/foundation/schemas';
3
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
+ import { BufferReader, serializeSignedBigInt, serializeToBuffer } from '@aztec/foundation/serialize';
4
5
  import { hexToBuffer } from '@aztec/foundation/string';
5
6
  import type { FieldsOf } from '@aztec/foundation/types';
6
7
 
@@ -10,10 +11,21 @@ import { z } from 'zod';
10
11
  import type { Checkpoint } from '../checkpoint/checkpoint.js';
11
12
  import { CheckpointHeader } from '../rollup/checkpoint_header.js';
12
13
  import type { CheckpointProposal, CheckpointProposalCore } from './checkpoint_proposal.js';
13
- import type { Signable, SignatureDomainSeparator } from './signature_utils.js';
14
+ import {
15
+ type CoordinationSignatureContext,
16
+ type CoordinationSignatureType,
17
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
18
+ type Signable,
19
+ coordinationSignatureContextEquals,
20
+ coordinationSignatureContextSchema,
21
+ readCoordinationSignatureContext,
22
+ serializeCoordinationSignatureContext,
23
+ } from './signature_utils.js';
14
24
 
15
25
  /** Checkpoint consensus payload as signed by validators and verified on L1. */
16
26
  export class ConsensusPayload implements Signable {
27
+ readonly primaryType: CoordinationSignatureType = 'CheckpointAttestation';
28
+
17
29
  private size: number | undefined;
18
30
 
19
31
  constructor(
@@ -21,6 +33,10 @@ export class ConsensusPayload implements Signable {
21
33
  public readonly header: CheckpointHeader,
22
34
  /** The archive root after the block is added */
23
35
  public readonly archive: Fr,
36
+ /** The fee asset price modifier in basis points (from oracle) */
37
+ public readonly feeAssetPriceModifier: bigint,
38
+ /** The signing domain (chainId + rollupAddress) the signature is bound to */
39
+ public readonly signatureContext: CoordinationSignatureContext,
24
40
  ) {}
25
41
 
26
42
  static get schema() {
@@ -28,63 +44,88 @@ export class ConsensusPayload implements Signable {
28
44
  .object({
29
45
  header: CheckpointHeader.schema,
30
46
  archive: schemas.Fr,
47
+ feeAssetPriceModifier: schemas.BigInt,
48
+ signatureContext: coordinationSignatureContextSchema,
31
49
  })
32
- .transform(obj => new ConsensusPayload(obj.header, obj.archive));
50
+ .transform(obj => new ConsensusPayload(obj.header, obj.archive, obj.feeAssetPriceModifier, obj.signatureContext));
33
51
  }
34
52
 
35
- static getFields(fields: FieldsOf<ConsensusPayload>) {
36
- return [fields.header, fields.archive] as const;
53
+ static getFields(fields: Omit<FieldsOf<ConsensusPayload>, 'primaryType'>) {
54
+ return [fields.header, fields.archive, fields.feeAssetPriceModifier, fields.signatureContext] as const;
37
55
  }
38
56
 
39
- getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer {
57
+ getPayloadToSign(): Buffer {
58
+ // Matches the L1 ProposePayload struct in ProposeLib.sol.
40
59
  const abi = parseAbiParameters(
41
- 'uint8, ' + //domainSeperator
42
- '(' +
60
+ '(' +
43
61
  'bytes32, ' + // archive
44
62
  '(int256), ' + // oracleInput
45
63
  'bytes32' + // headerHash
46
64
  ')',
47
65
  );
48
66
  const archiveRoot = this.archive.toString();
49
-
50
67
  const headerHash = this.header.hash().toString();
51
- const encodedData = encodeAbiParameters(abi, [
52
- domainSeparator,
53
- [archiveRoot, [0n] /* @todo See #9963 */, headerHash],
54
- ] as const);
68
+ const encodedData = encodeAbiParameters(abi, [[archiveRoot, [this.feeAssetPriceModifier], headerHash]] as const);
55
69
 
56
70
  return hexToBuffer(encodedData);
57
71
  }
58
72
 
73
+ /**
74
+ * Returns a keccak256 hash of the signed payload (header + archive + feeAssetPriceModifier).
75
+ * Used by the attestation pool to dedup distinct signed payloads.
76
+ */
77
+ getPayloadHash(): Buffer {
78
+ return keccak256(this.getPayloadToSign());
79
+ }
80
+
59
81
  toBuffer(): Buffer {
60
- return serializeToBuffer([this.header, this.archive]);
82
+ return serializeToBuffer([
83
+ this.header,
84
+ this.archive,
85
+ serializeSignedBigInt(this.feeAssetPriceModifier),
86
+ serializeCoordinationSignatureContext(this.signatureContext),
87
+ ]);
61
88
  }
62
89
 
63
90
  public equals(other: ConsensusPayload | CheckpointProposal | CheckpointProposalCore): boolean {
64
91
  const otherHeader = 'checkpointHeader' in other ? other.checkpointHeader : other.header;
65
- return this.header.equals(otherHeader) && this.archive.equals(other.archive);
92
+ const otherModifier = 'feeAssetPriceModifier' in other ? other.feeAssetPriceModifier : 0n;
93
+ return (
94
+ this.header.equals(otherHeader) &&
95
+ this.archive.equals(other.archive) &&
96
+ this.feeAssetPriceModifier === otherModifier &&
97
+ coordinationSignatureContextEquals(this.signatureContext, other.signatureContext)
98
+ );
66
99
  }
67
100
 
68
101
  static fromBuffer(buf: Buffer | BufferReader): ConsensusPayload {
69
102
  const reader = BufferReader.asReader(buf);
70
- const payload = new ConsensusPayload(reader.readObject(CheckpointHeader), reader.readObject(Fr));
71
- return payload;
103
+ const header = reader.readObject(CheckpointHeader);
104
+ const archive = reader.readObject(Fr);
105
+ const feeAssetPriceModifier = reader.readInt256();
106
+ const signatureContext = readCoordinationSignatureContext(reader);
107
+ return new ConsensusPayload(header, archive, feeAssetPriceModifier, signatureContext);
72
108
  }
73
109
 
74
- static fromFields(fields: FieldsOf<ConsensusPayload>): ConsensusPayload {
75
- return new ConsensusPayload(fields.header, fields.archive);
110
+ static fromFields(fields: Omit<FieldsOf<ConsensusPayload>, 'primaryType'>): ConsensusPayload {
111
+ return new ConsensusPayload(fields.header, fields.archive, fields.feeAssetPriceModifier, fields.signatureContext);
76
112
  }
77
113
 
78
- static fromCheckpoint(checkpoint: Checkpoint): ConsensusPayload {
79
- return new ConsensusPayload(checkpoint.header, checkpoint.archive.root);
114
+ static fromCheckpoint(checkpoint: Checkpoint, signatureContext: CoordinationSignatureContext): ConsensusPayload {
115
+ return new ConsensusPayload(
116
+ checkpoint.header,
117
+ checkpoint.archive.root,
118
+ checkpoint.feeAssetPriceModifier,
119
+ signatureContext,
120
+ );
80
121
  }
81
122
 
82
123
  static empty(): ConsensusPayload {
83
- return new ConsensusPayload(CheckpointHeader.empty(), Fr.ZERO);
124
+ return new ConsensusPayload(CheckpointHeader.empty(), Fr.ZERO, 0n, EMPTY_COORDINATION_SIGNATURE_CONTEXT);
84
125
  }
85
126
 
86
127
  static random(): ConsensusPayload {
87
- return new ConsensusPayload(CheckpointHeader.random(), Fr.random());
128
+ return new ConsensusPayload(CheckpointHeader.random(), Fr.random(), 0n, EMPTY_COORDINATION_SIGNATURE_CONTEXT);
88
129
  }
89
130
 
90
131
  /**
@@ -104,10 +145,13 @@ export class ConsensusPayload implements Signable {
104
145
  return {
105
146
  header: this.header.toInspect(),
106
147
  archive: this.archive.toString(),
148
+ feeAssetPriceModifier: this.feeAssetPriceModifier.toString(),
149
+ chainId: this.signatureContext.chainId,
150
+ rollupAddress: this.signatureContext.rollupAddress.toString(),
107
151
  };
108
152
  }
109
153
 
110
154
  toString() {
111
- return `header: ${this.header.toString()}, archive: ${this.archive.toString()}}`;
155
+ return `header: ${this.header.toString()}, archive: ${this.archive.toString()}, feeAssetPriceModifier: ${this.feeAssetPriceModifier}, chainId: ${this.signatureContext.chainId}, rollupAddress: ${this.signatureContext.rollupAddress.toString()}`;
112
156
  }
113
157
  }
@@ -1,3 +1,6 @@
1
1
  export const MAX_TX_SIZE_KB: number = 512;
2
2
 
3
3
  export const MAX_MESSAGE_SIZE_KB: number = 10 * 1024;
4
+
5
+ /** Maximum size for L2Block response (contains TxEffects, not full Txs with proofs) */
6
+ export const MAX_L2_BLOCK_SIZE_KB: number = 3 * 1024; // 3 MB
@@ -1,4 +1,4 @@
1
- import { Buffer32 } from '@aztec/foundation/buffer';
1
+ import { BaseBuffer32 } from '@aztec/foundation/buffer';
2
2
  import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
3
3
 
4
4
  import type { TopicType } from './topic_type.js';
@@ -46,7 +46,7 @@ export class P2PMessage {
46
46
  * Any class which extends gossipable will be able to be Gossiped over the p2p network
47
47
  */
48
48
  export abstract class Gossipable {
49
- private cachedId: Buffer32 | undefined;
49
+ private cachedId: BaseBuffer32 | undefined;
50
50
  /** The p2p topic identifier, this determines how the message is handled */
51
51
  static p2pTopic: TopicType;
52
52
 
@@ -54,7 +54,7 @@ export abstract class Gossipable {
54
54
  * A digest of the message information **used for logging only**.
55
55
  * The identifier used for deduplication is `getMsgIdFn` as defined in `encoding.ts` which is a hash over topic and data.
56
56
  */
57
- async p2pMessageLoggingIdentifier(): Promise<Buffer32> {
57
+ async p2pMessageLoggingIdentifier(): Promise<BaseBuffer32> {
58
58
  if (this.cachedId) {
59
59
  return this.cachedId;
60
60
  }
@@ -62,7 +62,7 @@ export abstract class Gossipable {
62
62
  return this.cachedId;
63
63
  }
64
64
 
65
- abstract generateP2PMessageIdentifier(): Promise<Buffer32>;
65
+ abstract generateP2PMessageIdentifier(): Promise<BaseBuffer32>;
66
66
 
67
67
  abstract toBuffer(): Buffer;
68
68
 
package/src/p2p/index.ts CHANGED
@@ -4,11 +4,9 @@ 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';
11
- export * from './client_type.js';
12
10
  export * from './message_validator.js';
13
11
  export * from './peer_error.js';
14
12
  export * from './constants.js';
@@ -15,3 +15,10 @@ export enum PeerErrorSeverity {
15
15
  */
16
16
  HighToleranceError = 'HighToleranceError',
17
17
  }
18
+
19
+ /** Severities ordered from mildest to harshest. */
20
+ export const PeerErrorSeverityByHarshness = [
21
+ PeerErrorSeverity.HighToleranceError,
22
+ PeerErrorSeverity.MidToleranceError,
23
+ PeerErrorSeverity.LowToleranceError,
24
+ ] as const;