@aztec/stdlib 0.0.1-commit.d431d1c → 0.0.1-commit.d58ff9d0

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