@aztec/stdlib 0.0.1-commit.9593d84 → 0.0.1-commit.96dac018d

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 (1140) hide show
  1. package/dest/abi/abi.d.ts +603 -5
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +7 -7
  4. package/dest/abi/authorization_selector.d.ts +2 -2
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/authorization_selector.js +2 -1
  7. package/dest/abi/buffer.d.ts +2 -2
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +2 -2
  11. package/dest/abi/contract_artifact.d.ts.map +1 -1
  12. package/dest/abi/contract_artifact.js +1 -1
  13. package/dest/abi/decoder.d.ts +2 -2
  14. package/dest/abi/decoder.d.ts.map +1 -1
  15. package/dest/abi/encoder.d.ts +2 -2
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +1 -1
  18. package/dest/abi/event_selector.d.ts +2 -2
  19. package/dest/abi/event_selector.d.ts.map +1 -1
  20. package/dest/abi/event_selector.js +2 -1
  21. package/dest/abi/function_call.d.ts +48 -10
  22. package/dest/abi/function_call.d.ts.map +1 -1
  23. package/dest/abi/function_call.js +20 -3
  24. package/dest/abi/function_selector.d.ts +3 -2
  25. package/dest/abi/function_selector.d.ts.map +1 -1
  26. package/dest/abi/function_selector.js +9 -1
  27. package/dest/abi/note_selector.d.ts +2 -2
  28. package/dest/abi/note_selector.d.ts.map +1 -1
  29. package/dest/abi/note_selector.js +2 -2
  30. package/dest/abi/selector.d.ts +2 -2
  31. package/dest/abi/selector.d.ts.map +1 -1
  32. package/dest/abi/selector.js +4 -2
  33. package/dest/abi/utils.d.ts +7 -1
  34. package/dest/abi/utils.d.ts.map +1 -1
  35. package/dest/abi/utils.js +7 -0
  36. package/dest/auth_witness/auth_witness.d.ts +3 -2
  37. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  38. package/dest/auth_witness/auth_witness.js +5 -5
  39. package/dest/avm/avm.d.ts +598 -386
  40. package/dest/avm/avm.d.ts.map +1 -1
  41. package/dest/avm/avm.js +238 -22
  42. package/dest/avm/avm_accumulated_data.d.ts +31 -4
  43. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  44. package/dest/avm/avm_accumulated_data.js +6 -3
  45. package/dest/avm/avm_circuit_public_inputs.d.ts +14 -12
  46. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  47. package/dest/avm/avm_circuit_public_inputs.js +4 -2
  48. package/dest/avm/avm_proving_request.d.ts +306 -302
  49. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  50. package/dest/avm/contract_storage_read.d.ts +14 -2
  51. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  52. package/dest/avm/contract_storage_read.js +1 -1
  53. package/dest/avm/contract_storage_update_request.d.ts +14 -2
  54. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  55. package/dest/avm/contract_storage_update_request.js +1 -1
  56. package/dest/avm/message_pack.d.ts +1 -1
  57. package/dest/avm/message_pack.d.ts.map +1 -1
  58. package/dest/avm/message_pack.js +2 -1
  59. package/dest/avm/public_call_stack_item_compressed.d.ts +4 -2
  60. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  61. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  62. package/dest/avm/public_data_read.d.ts +11 -2
  63. package/dest/avm/public_data_read.d.ts.map +1 -1
  64. package/dest/avm/public_data_read.js +1 -1
  65. package/dest/avm/public_data_update_request.d.ts +11 -2
  66. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  67. package/dest/avm/public_data_update_request.js +4 -2
  68. package/dest/avm/public_data_write.d.ts +8 -2
  69. package/dest/avm/public_data_write.d.ts.map +1 -1
  70. package/dest/avm/public_data_write.js +1 -1
  71. package/dest/avm/public_inner_call_request.d.ts +5 -2
  72. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  73. package/dest/avm/public_inner_call_request.js +3 -1
  74. package/dest/avm/revert_code.d.ts +5 -5
  75. package/dest/avm/revert_code.d.ts.map +1 -1
  76. package/dest/avm/revert_code.js +4 -2
  77. package/dest/aztec-address/index.d.ts +3 -2
  78. package/dest/aztec-address/index.d.ts.map +1 -1
  79. package/dest/aztec-address/index.js +5 -2
  80. package/dest/block/attestation_info.d.ts +5 -5
  81. package/dest/block/attestation_info.d.ts.map +1 -1
  82. package/dest/block/attestation_info.js +5 -5
  83. package/dest/block/block_data.d.ts +52 -0
  84. package/dest/block/block_data.d.ts.map +1 -0
  85. package/dest/block/block_data.js +12 -0
  86. package/dest/block/block_hash.d.ts +19 -15
  87. package/dest/block/block_hash.d.ts.map +1 -1
  88. package/dest/block/block_hash.js +23 -21
  89. package/dest/block/block_parameter.d.ts +6 -0
  90. package/dest/block/block_parameter.d.ts.map +1 -0
  91. package/dest/block/block_parameter.js +8 -0
  92. package/dest/block/body.d.ts +1 -1
  93. package/dest/block/body.d.ts.map +1 -1
  94. package/dest/block/body.js +5 -2
  95. package/dest/block/checkpointed_l2_block.d.ts +150 -0
  96. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  97. package/dest/block/checkpointed_l2_block.js +46 -0
  98. package/dest/block/in_block.d.ts +34 -15
  99. package/dest/block/in_block.d.ts.map +1 -1
  100. package/dest/block/in_block.js +21 -12
  101. package/dest/block/index.d.ts +4 -5
  102. package/dest/block/index.d.ts.map +1 -1
  103. package/dest/block/index.js +3 -4
  104. package/dest/block/l2_block.d.ts +59 -59
  105. package/dest/block/l2_block.d.ts.map +1 -1
  106. package/dest/block/l2_block.js +69 -110
  107. package/dest/block/l2_block_info.d.ts +16 -11
  108. package/dest/block/l2_block_info.d.ts.map +1 -1
  109. package/dest/block/l2_block_info.js +8 -7
  110. package/dest/block/l2_block_source.d.ts +390 -151
  111. package/dest/block/l2_block_source.d.ts.map +1 -1
  112. package/dest/block/l2_block_source.js +29 -16
  113. package/dest/block/l2_block_stream/index.d.ts +2 -1
  114. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  115. package/dest/block/l2_block_stream/index.js +1 -0
  116. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  117. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  118. package/dest/block/l2_block_stream/l2_block_stream.d.ts +13 -3
  119. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  120. package/dest/block/l2_block_stream/l2_block_stream.js +116 -32
  121. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -15
  122. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  123. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -59
  124. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  125. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  126. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  127. package/dest/block/proposal/attestations_and_signers.d.ts +2 -2
  128. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  129. package/dest/block/proposal/committee_attestation.d.ts +2 -2
  130. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  131. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  132. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  133. package/dest/block/test/l2_tips_store_test_suite.js +482 -43
  134. package/dest/block/validate_block_result.d.ts +24 -24
  135. package/dest/block/validate_block_result.d.ts.map +1 -1
  136. package/dest/block/validate_block_result.js +18 -17
  137. package/dest/checkpoint/checkpoint.d.ts +74 -18
  138. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  139. package/dest/checkpoint/checkpoint.js +78 -16
  140. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  141. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  142. package/dest/checkpoint/checkpoint_data.js +26 -0
  143. package/dest/checkpoint/checkpoint_info.d.ts +38 -0
  144. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  145. package/dest/checkpoint/checkpoint_info.js +34 -0
  146. package/dest/checkpoint/index.d.ts +3 -1
  147. package/dest/checkpoint/index.d.ts.map +1 -1
  148. package/dest/checkpoint/index.js +2 -0
  149. package/dest/checkpoint/published_checkpoint.d.ts +58 -15
  150. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  151. package/dest/checkpoint/published_checkpoint.js +16 -6
  152. package/dest/config/index.d.ts +2 -1
  153. package/dest/config/index.d.ts.map +1 -1
  154. package/dest/config/index.js +1 -0
  155. package/dest/config/node-rpc-config.js +1 -1
  156. package/dest/config/sequencer-config.d.ts +10 -0
  157. package/dest/config/sequencer-config.d.ts.map +1 -0
  158. package/dest/config/sequencer-config.js +18 -0
  159. package/dest/contract/artifact_hash.d.ts +2 -2
  160. package/dest/contract/artifact_hash.d.ts.map +1 -1
  161. package/dest/contract/artifact_hash.js +2 -2
  162. package/dest/contract/complete_address.d.ts +5 -2
  163. package/dest/contract/complete_address.d.ts.map +1 -1
  164. package/dest/contract/complete_address.js +1 -1
  165. package/dest/contract/contract_address.d.ts +2 -2
  166. package/dest/contract/contract_address.d.ts.map +1 -1
  167. package/dest/contract/contract_address.js +6 -6
  168. package/dest/contract/contract_class.d.ts +3 -4
  169. package/dest/contract/contract_class.d.ts.map +1 -1
  170. package/dest/contract/contract_class.js +1 -1
  171. package/dest/contract/contract_class_id.d.ts +3 -3
  172. package/dest/contract/contract_class_id.d.ts.map +1 -1
  173. package/dest/contract/contract_class_id.js +8 -7
  174. package/dest/contract/contract_deployment_data.d.ts +5 -5
  175. package/dest/contract/contract_instance.d.ts +2 -2
  176. package/dest/contract/contract_instance.d.ts.map +1 -1
  177. package/dest/contract/contract_instance.js +1 -1
  178. package/dest/contract/contract_instance_update.d.ts +2 -2
  179. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  180. package/dest/contract/contract_instance_update.js +1 -1
  181. package/dest/contract/deployment_info.d.ts +2 -2
  182. package/dest/contract/deployment_info.d.ts.map +1 -1
  183. package/dest/contract/index.d.ts +1 -3
  184. package/dest/contract/index.d.ts.map +1 -1
  185. package/dest/contract/index.js +0 -2
  186. package/dest/contract/interfaces/contract_class.d.ts +19 -14
  187. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  188. package/dest/contract/interfaces/contract_class.js +35 -18
  189. package/dest/contract/interfaces/contract_data_source.d.ts +4 -3
  190. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  191. package/dest/contract/interfaces/contract_instance.d.ts +40 -31
  192. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  193. package/dest/contract/interfaces/contract_instance.js +30 -5
  194. package/dest/contract/interfaces/contract_instance_update.d.ts +7 -8
  195. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  196. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  197. package/dest/contract/interfaces/node-info.d.ts +3 -1
  198. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  199. package/dest/contract/interfaces/node-info.js +2 -1
  200. package/dest/contract/partial_address.d.ts +2 -2
  201. package/dest/contract/partial_address.d.ts.map +1 -1
  202. package/dest/contract/private_function.d.ts +2 -2
  203. package/dest/contract/private_function.d.ts.map +1 -1
  204. package/dest/contract/private_function.js +5 -5
  205. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  206. package/dest/contract/private_function_membership_proof.js +3 -3
  207. package/dest/contract/utility_function_membership_proof.js +1 -1
  208. package/dest/database-version/database_version.d.ts +58 -0
  209. package/dest/database-version/database_version.d.ts.map +1 -0
  210. package/dest/database-version/database_version.js +69 -0
  211. package/dest/database-version/version_manager.d.ts +3 -49
  212. package/dest/database-version/version_manager.d.ts.map +1 -1
  213. package/dest/database-version/version_manager.js +1 -64
  214. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +3 -3
  215. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  216. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +9 -12
  217. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  218. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  219. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  220. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  221. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  222. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  223. package/dest/deserialization/index.d.ts +11 -0
  224. package/dest/deserialization/index.d.ts.map +1 -0
  225. package/dest/deserialization/index.js +10 -0
  226. package/dest/epoch-helpers/index.d.ts +7 -1
  227. package/dest/epoch-helpers/index.d.ts.map +1 -1
  228. package/dest/epoch-helpers/index.js +12 -6
  229. package/dest/errors/proving_error.d.ts +2 -2
  230. package/dest/errors/proving_error.d.ts.map +1 -1
  231. package/dest/errors/simulation_error.d.ts +2 -2
  232. package/dest/errors/simulation_error.d.ts.map +1 -1
  233. package/dest/fees/transaction_fee.d.ts +2 -2
  234. package/dest/fees/transaction_fee.d.ts.map +1 -1
  235. package/dest/file-store/local.d.ts +3 -3
  236. package/dest/file-store/local.d.ts.map +1 -1
  237. package/dest/file-store/local.js +13 -4
  238. package/dest/file-store/s3.d.ts +1 -1
  239. package/dest/file-store/s3.d.ts.map +1 -1
  240. package/dest/file-store/s3.js +11 -3
  241. package/dest/gas/gas.d.ts +2 -2
  242. package/dest/gas/gas.d.ts.map +1 -1
  243. package/dest/gas/gas.js +4 -2
  244. package/dest/gas/gas_fees.d.ts +2 -2
  245. package/dest/gas/gas_fees.d.ts.map +1 -1
  246. package/dest/gas/gas_fees.js +3 -1
  247. package/dest/gas/gas_settings.d.ts +2 -2
  248. package/dest/gas/gas_settings.d.ts.map +1 -1
  249. package/dest/gas/gas_settings.js +1 -1
  250. package/dest/ha-signing/config.d.ts +101 -0
  251. package/dest/ha-signing/config.d.ts.map +1 -0
  252. package/dest/ha-signing/config.js +92 -0
  253. package/dest/ha-signing/index.d.ts +3 -0
  254. package/dest/ha-signing/index.d.ts.map +1 -0
  255. package/dest/ha-signing/index.js +2 -0
  256. package/dest/ha-signing/types.d.ts +85 -0
  257. package/dest/ha-signing/types.d.ts.map +1 -0
  258. package/dest/ha-signing/types.js +32 -0
  259. package/dest/hash/hash.d.ts +3 -10
  260. package/dest/hash/hash.d.ts.map +1 -1
  261. package/dest/hash/hash.js +17 -22
  262. package/dest/hash/map_slot.d.ts +2 -2
  263. package/dest/hash/map_slot.d.ts.map +1 -1
  264. package/dest/hash/map_slot.js +4 -3
  265. package/dest/interfaces/allowed_element.d.ts +8 -9
  266. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  267. package/dest/interfaces/allowed_element.js +3 -3
  268. package/dest/interfaces/api_limit.d.ts +3 -1
  269. package/dest/interfaces/api_limit.d.ts.map +1 -1
  270. package/dest/interfaces/api_limit.js +2 -0
  271. package/dest/interfaces/archiver.d.ts +12 -7
  272. package/dest/interfaces/archiver.d.ts.map +1 -1
  273. package/dest/interfaces/archiver.js +40 -21
  274. package/dest/interfaces/aztec-node-admin.d.ts +140 -42
  275. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  276. package/dest/interfaces/aztec-node-admin.js +15 -7
  277. package/dest/interfaces/aztec-node.d.ts +90 -95
  278. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  279. package/dest/interfaces/aztec-node.js +32 -33
  280. package/dest/interfaces/block-builder.d.ts +24 -14
  281. package/dest/interfaces/block-builder.d.ts.map +1 -1
  282. package/dest/interfaces/block-builder.js +16 -1
  283. package/dest/interfaces/configs.d.ts +71 -27
  284. package/dest/interfaces/configs.d.ts.map +1 -1
  285. package/dest/interfaces/configs.js +15 -6
  286. package/dest/interfaces/epoch-prover.d.ts +5 -5
  287. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  288. package/dest/interfaces/get_logs_response.d.ts +30 -6
  289. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  290. package/dest/interfaces/get_logs_response.js +5 -4
  291. package/dest/interfaces/l2_logs_source.d.ts +21 -15
  292. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  293. package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
  294. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  295. package/dest/interfaces/p2p.d.ts +7 -9
  296. package/dest/interfaces/p2p.d.ts.map +1 -1
  297. package/dest/interfaces/p2p.js +3 -4
  298. package/dest/interfaces/prover-broker.d.ts +16 -1
  299. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  300. package/dest/interfaces/prover-broker.js +4 -1
  301. package/dest/interfaces/prover-client.d.ts +19 -3
  302. package/dest/interfaces/prover-client.d.ts.map +1 -1
  303. package/dest/interfaces/prover-client.js +16 -4
  304. package/dest/interfaces/proving-job.d.ts +60 -56
  305. package/dest/interfaces/proving-job.d.ts.map +1 -1
  306. package/dest/interfaces/proving-job.js +1 -7
  307. package/dest/interfaces/public_state_source.d.ts +2 -2
  308. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  309. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  310. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  311. package/dest/interfaces/slasher.d.ts +9 -1
  312. package/dest/interfaces/slasher.d.ts.map +1 -1
  313. package/dest/interfaces/slasher.js +5 -3
  314. package/dest/interfaces/validator.d.ts +162 -27
  315. package/dest/interfaces/validator.d.ts.map +1 -1
  316. package/dest/interfaces/validator.js +12 -7
  317. package/dest/interfaces/world_state.d.ts +23 -31
  318. package/dest/interfaces/world_state.d.ts.map +1 -1
  319. package/dest/interfaces/world_state.js +4 -3
  320. package/dest/kernel/claimed_length_array.d.ts +2 -2
  321. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  322. package/dest/kernel/claimed_length_array.js +3 -1
  323. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +7 -6
  324. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  325. package/dest/kernel/hints/build_note_hash_read_request_hints.js +31 -19
  326. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +5 -5
  327. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  328. package/dest/kernel/hints/build_nullifier_read_request_hints.js +28 -17
  329. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  330. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  331. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  332. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  333. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  334. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
  335. package/dest/kernel/hints/index.d.ts +2 -2
  336. package/dest/kernel/hints/index.js +2 -2
  337. package/dest/kernel/hints/key_validation_hint.d.ts +3 -2
  338. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  339. package/dest/kernel/hints/key_validation_hint.js +1 -1
  340. package/dest/kernel/hints/key_validation_request.d.ts +5 -3
  341. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  342. package/dest/kernel/hints/key_validation_request.js +2 -1
  343. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  344. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  345. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +13 -16
  346. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  347. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  348. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  349. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  350. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  351. package/dest/kernel/hints/read_request.d.ts +8 -2
  352. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  353. package/dest/kernel/hints/read_request.js +1 -1
  354. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  355. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  356. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +9 -9
  357. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  358. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  359. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  360. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  361. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  362. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  363. package/dest/kernel/hints/transient_data_squashing_hint.js +4 -2
  364. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -2
  365. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  366. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  367. package/dest/kernel/log_hash.d.ts +2 -2
  368. package/dest/kernel/log_hash.d.ts.map +1 -1
  369. package/dest/kernel/log_hash.js +4 -2
  370. package/dest/kernel/note_hash.d.ts +2 -2
  371. package/dest/kernel/note_hash.d.ts.map +1 -1
  372. package/dest/kernel/note_hash.js +1 -1
  373. package/dest/kernel/nullifier.d.ts +2 -2
  374. package/dest/kernel/nullifier.d.ts.map +1 -1
  375. package/dest/kernel/nullifier.js +1 -1
  376. package/dest/kernel/padded_side_effects.d.ts +2 -2
  377. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  378. package/dest/kernel/padded_side_effects.js +1 -1
  379. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  380. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  381. package/dest/kernel/private_call_data.d.ts +26 -2
  382. package/dest/kernel/private_call_data.d.ts.map +1 -1
  383. package/dest/kernel/private_call_data.js +1 -1
  384. package/dest/kernel/private_call_request.d.ts +17 -2
  385. package/dest/kernel/private_call_request.d.ts.map +1 -1
  386. package/dest/kernel/private_call_request.js +1 -1
  387. package/dest/kernel/private_circuit_public_inputs.d.ts +127 -54
  388. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  389. package/dest/kernel/private_circuit_public_inputs.js +72 -72
  390. package/dest/kernel/private_context_inputs.d.ts +2 -2
  391. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  392. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +34 -4
  393. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  394. package/dest/kernel/private_kernel_circuit_public_inputs.js +5 -5
  395. package/dest/kernel/private_kernel_data.d.ts +7 -1
  396. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  397. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +23 -2
  398. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  399. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +1 -1
  400. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  401. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  402. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  403. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  404. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +12 -3
  405. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  406. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  407. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +26 -4
  408. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  409. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +8 -8
  410. package/dest/kernel/private_log_data.d.ts +2 -2
  411. package/dest/kernel/private_log_data.d.ts.map +1 -1
  412. package/dest/kernel/private_log_data.js +5 -2
  413. package/dest/kernel/private_to_avm_accumulated_data.d.ts +4 -4
  414. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  415. package/dest/kernel/private_to_avm_accumulated_data.js +6 -3
  416. package/dest/kernel/private_to_public_accumulated_data.d.ts +2 -2
  417. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  418. package/dest/kernel/private_to_public_accumulated_data.js +4 -2
  419. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  420. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  421. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  422. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +4 -4
  423. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  424. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +8 -8
  425. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +18 -2
  426. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  427. package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
  428. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +19 -4
  429. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  430. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +8 -8
  431. package/dest/kernel/private_validation_requests.d.ts +13 -4
  432. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  433. package/dest/kernel/private_validation_requests.js +12 -10
  434. package/dest/kernel/public_call_request.d.ts +23 -2
  435. package/dest/kernel/public_call_request.d.ts.map +1 -1
  436. package/dest/kernel/public_call_request.js +6 -3
  437. package/dest/kernel/utils/optional_number.d.ts +8 -2
  438. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  439. package/dest/keys/derivation.d.ts +7 -6
  440. package/dest/keys/derivation.d.ts.map +1 -1
  441. package/dest/keys/derivation.js +20 -17
  442. package/dest/keys/key_types.d.ts +3 -3
  443. package/dest/keys/key_types.d.ts.map +1 -1
  444. package/dest/keys/public_key.d.ts +2 -2
  445. package/dest/keys/public_key.d.ts.map +1 -1
  446. package/dest/keys/public_keys.d.ts +7 -2
  447. package/dest/keys/public_keys.d.ts.map +1 -1
  448. package/dest/keys/public_keys.js +5 -4
  449. package/dest/keys/utils.d.ts +1 -1
  450. package/dest/keys/utils.d.ts.map +1 -1
  451. package/dest/keys/utils.js +8 -4
  452. package/dest/l1-contracts/slash_factory.d.ts +3 -2
  453. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  454. package/dest/l1-contracts/slash_factory.js +2 -1
  455. package/dest/logs/contract_class_log.d.ts +2 -2
  456. package/dest/logs/contract_class_log.d.ts.map +1 -1
  457. package/dest/logs/contract_class_log.js +5 -3
  458. package/dest/logs/debug_log.d.ts +2 -2
  459. package/dest/logs/debug_log.d.ts.map +1 -1
  460. package/dest/logs/debug_log.js +1 -1
  461. package/dest/logs/debug_log_store.d.ts +30 -0
  462. package/dest/logs/debug_log_store.d.ts.map +1 -0
  463. package/dest/logs/debug_log_store.js +30 -0
  464. package/dest/logs/directional_app_tagging_secret.d.ts +2 -2
  465. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  466. package/dest/logs/directional_app_tagging_secret.js +3 -2
  467. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  468. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  469. package/dest/logs/extended_public_log.d.ts +20 -4
  470. package/dest/logs/extended_public_log.d.ts.map +1 -1
  471. package/dest/logs/index.d.ts +4 -2
  472. package/dest/logs/index.d.ts.map +1 -1
  473. package/dest/logs/index.js +3 -1
  474. package/dest/logs/log_id.d.ts +29 -11
  475. package/dest/logs/log_id.d.ts.map +1 -1
  476. package/dest/logs/log_id.js +27 -16
  477. package/dest/logs/message_context.d.ts +2 -2
  478. package/dest/logs/message_context.d.ts.map +1 -1
  479. package/dest/logs/message_context.js +1 -1
  480. package/dest/logs/pending_tagged_log.d.ts +2 -2
  481. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  482. package/dest/logs/pending_tagged_log.js +1 -1
  483. package/dest/logs/private_log.d.ts +3 -3
  484. package/dest/logs/private_log.d.ts.map +1 -1
  485. package/dest/logs/private_log.js +6 -3
  486. package/dest/logs/public_log.d.ts +3 -2
  487. package/dest/logs/public_log.d.ts.map +1 -1
  488. package/dest/logs/public_log.js +7 -2
  489. package/dest/logs/shared_secret_derivation.d.ts +2 -2
  490. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  491. package/dest/logs/shared_secret_derivation.js +1 -1
  492. package/dest/logs/siloed_tag.d.ts +23 -0
  493. package/dest/logs/siloed_tag.d.ts.map +1 -0
  494. package/dest/logs/siloed_tag.js +27 -0
  495. package/dest/logs/tag.d.ts +21 -0
  496. package/dest/logs/tag.d.ts.map +1 -0
  497. package/dest/logs/tag.js +30 -0
  498. package/dest/logs/tx_scoped_l2_log.d.ts +32 -38
  499. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  500. package/dest/logs/tx_scoped_l2_log.js +40 -45
  501. package/dest/messaging/in_hash.d.ts +5 -3
  502. package/dest/messaging/in_hash.d.ts.map +1 -1
  503. package/dest/messaging/in_hash.js +4 -2
  504. package/dest/messaging/inbox_leaf.d.ts +10 -7
  505. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  506. package/dest/messaging/inbox_leaf.js +10 -9
  507. package/dest/messaging/l1_actor.d.ts +8 -2
  508. package/dest/messaging/l1_actor.d.ts.map +1 -1
  509. package/dest/messaging/l1_actor.js +2 -2
  510. package/dest/messaging/l1_to_l2_message.d.ts +7 -2
  511. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  512. package/dest/messaging/l1_to_l2_message.js +2 -2
  513. package/dest/messaging/l1_to_l2_message_source.d.ts +6 -10
  514. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  515. package/dest/messaging/l2_actor.d.ts +8 -2
  516. package/dest/messaging/l2_actor.d.ts.map +1 -1
  517. package/dest/messaging/l2_actor.js +2 -2
  518. package/dest/messaging/l2_to_l1_membership.d.ts +89 -6
  519. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  520. package/dest/messaging/l2_to_l1_membership.js +161 -43
  521. package/dest/messaging/l2_to_l1_message.d.ts +3 -2
  522. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  523. package/dest/messaging/l2_to_l1_message.js +4 -1
  524. package/dest/messaging/out_hash.d.ts +42 -4
  525. package/dest/messaging/out_hash.d.ts.map +1 -1
  526. package/dest/messaging/out_hash.js +55 -20
  527. package/dest/note/index.d.ts +1 -2
  528. package/dest/note/index.d.ts.map +1 -1
  529. package/dest/note/index.js +0 -1
  530. package/dest/note/note.d.ts +2 -2
  531. package/dest/note/note.d.ts.map +1 -1
  532. package/dest/note/note.js +5 -2
  533. package/dest/note/note_dao.d.ts +48 -9
  534. package/dest/note/note_dao.d.ts.map +1 -1
  535. package/dest/note/note_dao.js +29 -15
  536. package/dest/p2p/attestation_utils.d.ts +13 -3
  537. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  538. package/dest/p2p/attestation_utils.js +46 -1
  539. package/dest/p2p/block_proposal.d.ts +103 -24
  540. package/dest/p2p/block_proposal.d.ts.map +1 -1
  541. package/dest/p2p/block_proposal.js +140 -40
  542. package/dest/p2p/checkpoint_attestation.d.ts +82 -0
  543. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  544. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +24 -20
  545. package/dest/p2p/checkpoint_proposal.d.ts +179 -0
  546. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  547. package/dest/p2p/checkpoint_proposal.js +243 -0
  548. package/dest/p2p/consensus_payload.d.ts +21 -12
  549. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  550. package/dest/p2p/consensus_payload.js +25 -20
  551. package/dest/p2p/constants.d.ts +5 -0
  552. package/dest/p2p/constants.d.ts.map +1 -0
  553. package/dest/p2p/constants.js +3 -0
  554. package/dest/p2p/gossipable.d.ts +4 -3
  555. package/dest/p2p/gossipable.d.ts.map +1 -1
  556. package/dest/p2p/gossipable.js +16 -5
  557. package/dest/p2p/index.d.ts +5 -2
  558. package/dest/p2p/index.d.ts.map +1 -1
  559. package/dest/p2p/index.js +4 -1
  560. package/dest/p2p/message_validator.d.ts +18 -3
  561. package/dest/p2p/message_validator.d.ts.map +1 -1
  562. package/dest/p2p/message_validator.js +2 -1
  563. package/dest/p2p/signature_utils.d.ts +5 -3
  564. package/dest/p2p/signature_utils.d.ts.map +1 -1
  565. package/dest/p2p/signature_utils.js +5 -2
  566. package/dest/p2p/signed_txs.d.ts +42 -0
  567. package/dest/p2p/signed_txs.d.ts.map +1 -0
  568. package/dest/p2p/signed_txs.js +75 -0
  569. package/dest/p2p/topic_type.d.ts +3 -2
  570. package/dest/p2p/topic_type.d.ts.map +1 -1
  571. package/dest/p2p/topic_type.js +10 -3
  572. package/dest/parity/parity_base_private_inputs.d.ts +4 -2
  573. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  574. package/dest/parity/parity_base_private_inputs.js +1 -1
  575. package/dest/parity/parity_public_inputs.d.ts +5 -2
  576. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  577. package/dest/parity/parity_public_inputs.js +1 -1
  578. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  579. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  580. package/dest/proofs/chonk_proof.d.ts +2 -2
  581. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  582. package/dest/proofs/chonk_proof.js +11 -6
  583. package/dest/proofs/proof.d.ts +5 -2
  584. package/dest/proofs/proof.d.ts.map +1 -1
  585. package/dest/proofs/proof.js +1 -1
  586. package/dest/proofs/proof_data.d.ts +13 -1
  587. package/dest/proofs/proof_data.d.ts.map +1 -1
  588. package/dest/proofs/proof_data.js +17 -0
  589. package/dest/proofs/recursive_proof.d.ts +11 -2
  590. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  591. package/dest/proofs/recursive_proof.js +1 -1
  592. package/dest/rollup/avm_proof_data.d.ts +3 -5
  593. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  594. package/dest/rollup/avm_proof_data.js +1 -9
  595. package/dest/rollup/base_rollup_hints.d.ts +35 -2
  596. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  597. package/dest/rollup/base_rollup_hints.js +1 -1
  598. package/dest/rollup/block_constant_data.d.ts +13 -2
  599. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  600. package/dest/rollup/block_constant_data.js +1 -1
  601. package/dest/rollup/block_headers_hash.d.ts +2 -2
  602. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  603. package/dest/rollup/block_headers_hash.js +2 -2
  604. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  605. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  606. package/dest/rollup/block_rollup_public_inputs.d.ts +48 -12
  607. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  608. package/dest/rollup/block_rollup_public_inputs.js +9 -13
  609. package/dest/rollup/block_root_rollup_private_inputs.d.ts +65 -2
  610. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  611. package/dest/rollup/block_root_rollup_private_inputs.js +1 -1
  612. package/dest/rollup/checkpoint_constant_data.d.ts +12 -2
  613. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  614. package/dest/rollup/checkpoint_constant_data.js +5 -2
  615. package/dest/rollup/checkpoint_header.d.ts +47 -13
  616. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  617. package/dest/rollup/checkpoint_header.js +55 -22
  618. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  619. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  620. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +47 -7
  621. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  622. package/dest/rollup/checkpoint_rollup_public_inputs.js +12 -4
  623. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +46 -4
  624. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  625. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +15 -3
  626. package/dest/rollup/epoch_constant_data.d.ts +17 -2
  627. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  628. package/dest/rollup/epoch_constant_data.js +1 -1
  629. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  630. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  631. package/dest/rollup/public_chonk_verifier_private_inputs.js +1 -1
  632. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  633. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  634. package/dest/rollup/public_chonk_verifier_public_inputs.js +1 -1
  635. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  636. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  637. package/dest/rollup/public_tx_base_rollup_private_inputs.js +2 -2
  638. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  639. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  640. package/dest/rollup/root_rollup_public_inputs.d.ts +22 -7
  641. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  642. package/dest/rollup/root_rollup_public_inputs.js +11 -5
  643. package/dest/rollup/tree_snapshot_diff_hints.d.ts +25 -2
  644. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  645. package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
  646. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  647. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  648. package/dest/rollup/tx_rollup_public_inputs.d.ts +30 -2
  649. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  650. package/dest/rollup/tx_rollup_public_inputs.js +1 -1
  651. package/dest/schemas/schemas.d.ts +7 -4
  652. package/dest/schemas/schemas.d.ts.map +1 -1
  653. package/dest/schemas/schemas.js +2 -1
  654. package/dest/slashing/empire.d.ts +1 -1
  655. package/dest/slashing/empire.d.ts.map +1 -1
  656. package/dest/slashing/empire.js +2 -0
  657. package/dest/slashing/helpers.d.ts +2 -2
  658. package/dest/slashing/helpers.d.ts.map +1 -1
  659. package/dest/slashing/helpers.js +6 -0
  660. package/dest/slashing/tally.d.ts +2 -1
  661. package/dest/slashing/tally.d.ts.map +1 -1
  662. package/dest/slashing/tally.js +6 -2
  663. package/dest/slashing/types.d.ts +10 -7
  664. package/dest/slashing/types.d.ts.map +1 -1
  665. package/dest/slashing/types.js +18 -6
  666. package/dest/snapshots/types.d.ts +1 -1
  667. package/dest/snapshots/types.d.ts.map +1 -1
  668. package/dest/snapshots/types.js +5 -5
  669. package/dest/stats/stats.d.ts +10 -8
  670. package/dest/stats/stats.d.ts.map +1 -1
  671. package/dest/tests/factories.d.ts +42 -12
  672. package/dest/tests/factories.d.ts.map +1 -1
  673. package/dest/tests/factories.js +110 -43
  674. package/dest/tests/jest.js +1 -1
  675. package/dest/tests/mocks.d.ts +90 -19
  676. package/dest/tests/mocks.d.ts.map +1 -1
  677. package/dest/tests/mocks.js +195 -65
  678. package/dest/timetable/index.d.ts +37 -0
  679. package/dest/timetable/index.d.ts.map +1 -0
  680. package/dest/timetable/index.js +39 -0
  681. package/dest/trees/append_only_tree_snapshot.d.ts +14 -2
  682. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  683. package/dest/trees/append_only_tree_snapshot.js +4 -2
  684. package/dest/trees/database_public_state_source.d.ts +2 -2
  685. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  686. package/dest/trees/database_public_state_source.js +1 -1
  687. package/dest/trees/nullifier_leaf.d.ts +14 -2
  688. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  689. package/dest/trees/nullifier_leaf.js +1 -1
  690. package/dest/trees/nullifier_membership_witness.d.ts +11 -2
  691. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  692. package/dest/trees/nullifier_membership_witness.js +1 -1
  693. package/dest/trees/public_data_leaf.d.ts +18 -2
  694. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  695. package/dest/trees/public_data_leaf.js +8 -7
  696. package/dest/trees/public_data_witness.d.ts +12 -2
  697. package/dest/trees/public_data_witness.d.ts.map +1 -1
  698. package/dest/trees/public_data_witness.js +1 -1
  699. package/dest/tx/block_header.d.ts +25 -12
  700. package/dest/tx/block_header.d.ts.map +1 -1
  701. package/dest/tx/block_header.js +16 -5
  702. package/dest/tx/call_context.d.ts +14 -2
  703. package/dest/tx/call_context.d.ts.map +1 -1
  704. package/dest/tx/call_context.js +3 -1
  705. package/dest/tx/capsule.d.ts +5 -2
  706. package/dest/tx/capsule.d.ts.map +1 -1
  707. package/dest/tx/capsule.js +1 -1
  708. package/dest/tx/execution_payload.d.ts +9 -1
  709. package/dest/tx/execution_payload.d.ts.map +1 -1
  710. package/dest/tx/function_data.d.ts +5 -3
  711. package/dest/tx/function_data.d.ts.map +1 -1
  712. package/dest/tx/function_data.js +1 -1
  713. package/dest/tx/global_variable_builder.d.ts +5 -3
  714. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  715. package/dest/tx/global_variables.d.ts +27 -12
  716. package/dest/tx/global_variables.d.ts.map +1 -1
  717. package/dest/tx/global_variables.js +11 -9
  718. package/dest/tx/hashed_values.d.ts +8 -2
  719. package/dest/tx/hashed_values.d.ts.map +1 -1
  720. package/dest/tx/hashed_values.js +1 -1
  721. package/dest/tx/in_tx.d.ts +26 -0
  722. package/dest/tx/in_tx.d.ts.map +1 -0
  723. package/dest/tx/in_tx.js +14 -0
  724. package/dest/tx/index.d.ts +2 -2
  725. package/dest/tx/index.d.ts.map +1 -1
  726. package/dest/tx/index.js +1 -1
  727. package/dest/tx/indexed_tx_effect.d.ts +14 -10
  728. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  729. package/dest/tx/indexed_tx_effect.js +8 -6
  730. package/dest/tx/offchain_effect.d.ts +2 -2
  731. package/dest/tx/offchain_effect.d.ts.map +1 -1
  732. package/dest/tx/offchain_effect.js +1 -1
  733. package/dest/tx/partial_state_reference.d.ts +5 -2
  734. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  735. package/dest/tx/private_execution_result.d.ts +27 -10
  736. package/dest/tx/private_execution_result.d.ts.map +1 -1
  737. package/dest/tx/private_execution_result.js +6 -23
  738. package/dest/tx/private_tx_constant_data.d.ts +17 -2
  739. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  740. package/dest/tx/private_tx_constant_data.js +1 -1
  741. package/dest/tx/processed_tx.d.ts +5 -4
  742. package/dest/tx/processed_tx.d.ts.map +1 -1
  743. package/dest/tx/processed_tx.js +8 -7
  744. package/dest/tx/profiling.d.ts +153 -30
  745. package/dest/tx/profiling.d.ts.map +1 -1
  746. package/dest/tx/profiling.js +48 -11
  747. package/dest/tx/protocol_contracts.d.ts +3 -3
  748. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  749. package/dest/tx/protocol_contracts.js +3 -3
  750. package/dest/tx/public_call_request_with_calldata.d.ts +8 -2
  751. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  752. package/dest/tx/public_call_request_with_calldata.js +4 -2
  753. package/dest/tx/public_simulation_output.d.ts +5 -3
  754. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  755. package/dest/tx/public_simulation_output.js +8 -4
  756. package/dest/tx/simulated_tx.d.ts +1031 -7
  757. package/dest/tx/simulated_tx.d.ts.map +1 -1
  758. package/dest/tx/state_reference.d.ts +4 -2
  759. package/dest/tx/state_reference.d.ts.map +1 -1
  760. package/dest/tx/state_reference.js +3 -1
  761. package/dest/tx/tree_snapshots.d.ts +2 -2
  762. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  763. package/dest/tx/tree_snapshots.js +3 -1
  764. package/dest/tx/tx.d.ts +35 -5
  765. package/dest/tx/tx.d.ts.map +1 -1
  766. package/dest/tx/tx.js +20 -7
  767. package/dest/tx/tx_constant_data.d.ts +2 -2
  768. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  769. package/dest/tx/tx_constant_data.js +1 -1
  770. package/dest/tx/tx_context.d.ts +3 -2
  771. package/dest/tx/tx_context.d.ts.map +1 -1
  772. package/dest/tx/tx_context.js +1 -1
  773. package/dest/tx/tx_effect.d.ts +33 -7
  774. package/dest/tx/tx_effect.d.ts.map +1 -1
  775. package/dest/tx/tx_effect.js +8 -11
  776. package/dest/tx/tx_execution_request.d.ts +31 -2
  777. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  778. package/dest/tx/tx_execution_request.js +7 -3
  779. package/dest/tx/tx_hash.d.ts +3 -2
  780. package/dest/tx/tx_hash.d.ts.map +1 -1
  781. package/dest/tx/tx_hash.js +1 -1
  782. package/dest/tx/tx_receipt.d.ts +64 -15
  783. package/dest/tx/tx_receipt.d.ts.map +1 -1
  784. package/dest/tx/tx_receipt.js +57 -17
  785. package/dest/tx/tx_request.d.ts +7 -2
  786. package/dest/tx/tx_request.d.ts.map +1 -1
  787. package/dest/tx/tx_request.js +4 -4
  788. package/dest/tx/validator/empty_validator.d.ts +2 -2
  789. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  790. package/dest/tx/validator/error_texts.d.ts +3 -2
  791. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  792. package/dest/tx/validator/error_texts.js +3 -1
  793. package/dest/tx/validator/tx_validator.d.ts +2 -5
  794. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  795. package/dest/tx/validator/tx_validator.js +4 -4
  796. package/dest/types/shared.d.ts +4 -1
  797. package/dest/types/shared.d.ts.map +1 -1
  798. package/dest/update-checker/update-checker.d.ts +2 -2
  799. package/dest/update-checker/update-checker.d.ts.map +1 -1
  800. package/dest/update-checker/update-checker.js +1 -1
  801. package/dest/validators/errors.d.ts +2 -2
  802. package/dest/validators/errors.d.ts.map +1 -1
  803. package/dest/validators/schemas.d.ts +38 -38
  804. package/dest/validators/schemas.d.ts.map +1 -1
  805. package/dest/validators/schemas.js +17 -16
  806. package/dest/validators/types.d.ts +3 -3
  807. package/dest/validators/types.d.ts.map +1 -1
  808. package/dest/versioning/versioning.d.ts +2 -2
  809. package/dest/versioning/versioning.d.ts.map +1 -1
  810. package/dest/vks/verification_key.d.ts +23 -2
  811. package/dest/vks/verification_key.d.ts.map +1 -1
  812. package/dest/vks/verification_key.js +1 -1
  813. package/dest/vks/vk_data.d.ts +8 -2
  814. package/dest/vks/vk_data.d.ts.map +1 -1
  815. package/dest/vks/vk_data.js +1 -1
  816. package/dest/zkpassport/index.d.ts +4 -5
  817. package/dest/zkpassport/index.d.ts.map +1 -1
  818. package/dest/zkpassport/index.js +11 -11
  819. package/package.json +33 -14
  820. package/src/abi/abi.ts +40 -34
  821. package/src/abi/authorization_selector.ts +3 -2
  822. package/src/abi/buffer.ts +1 -1
  823. package/src/abi/contract_artifact.ts +10 -10
  824. package/src/abi/decoder.ts +1 -1
  825. package/src/abi/encoder.ts +1 -1
  826. package/src/abi/event_selector.ts +3 -2
  827. package/src/abi/function_call.ts +26 -4
  828. package/src/abi/function_selector.ts +11 -2
  829. package/src/abi/note_selector.ts +2 -2
  830. package/src/abi/selector.ts +1 -1
  831. package/src/abi/utils.ts +17 -0
  832. package/src/auth_witness/auth_witness.ts +5 -5
  833. package/src/avm/avm.ts +338 -20
  834. package/src/avm/avm_accumulated_data.ts +1 -1
  835. package/src/avm/avm_circuit_public_inputs.ts +1 -1
  836. package/src/avm/contract_storage_read.ts +1 -1
  837. package/src/avm/contract_storage_update_request.ts +1 -1
  838. package/src/avm/message_pack.ts +2 -1
  839. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  840. package/src/avm/public_data_read.ts +1 -1
  841. package/src/avm/public_data_update_request.ts +1 -1
  842. package/src/avm/public_data_write.ts +1 -1
  843. package/src/avm/public_inner_call_request.ts +1 -1
  844. package/src/avm/revert_code.ts +1 -1
  845. package/src/aztec-address/index.ts +2 -1
  846. package/src/block/attestation_info.ts +10 -7
  847. package/src/block/block_data.ts +26 -0
  848. package/src/block/block_hash.ts +27 -26
  849. package/src/block/block_parameter.ts +10 -0
  850. package/src/block/body.ts +2 -1
  851. package/src/block/checkpointed_l2_block.ts +70 -0
  852. package/src/block/in_block.ts +28 -15
  853. package/src/block/index.ts +3 -4
  854. package/src/block/l2_block.ts +107 -141
  855. package/src/block/l2_block_info.ts +11 -10
  856. package/src/block/l2_block_source.ts +218 -71
  857. package/src/block/l2_block_stream/index.ts +1 -0
  858. package/src/block/l2_block_stream/interfaces.ts +15 -4
  859. package/src/block/l2_block_stream/l2_block_stream.ts +142 -37
  860. package/src/block/l2_block_stream/l2_tips_memory_store.ts +63 -54
  861. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  862. package/src/block/proposal/attestations_and_signers.ts +1 -1
  863. package/src/block/proposal/committee_attestation.ts +1 -1
  864. package/src/block/test/l2_tips_store_test_suite.ts +486 -36
  865. package/src/block/validate_block_result.ts +40 -35
  866. package/src/checkpoint/checkpoint.ts +115 -27
  867. package/src/checkpoint/checkpoint_data.ts +51 -0
  868. package/src/checkpoint/checkpoint_info.ts +52 -0
  869. package/src/checkpoint/index.ts +2 -0
  870. package/src/checkpoint/published_checkpoint.ts +26 -9
  871. package/src/config/index.ts +1 -0
  872. package/src/config/node-rpc-config.ts +1 -1
  873. package/src/config/sequencer-config.ts +29 -0
  874. package/src/contract/artifact_hash.ts +2 -2
  875. package/src/contract/complete_address.ts +1 -1
  876. package/src/contract/contract_address.ts +6 -6
  877. package/src/contract/contract_class.ts +5 -5
  878. package/src/contract/contract_class_id.ts +8 -7
  879. package/src/contract/contract_instance.ts +1 -1
  880. package/src/contract/contract_instance_update.ts +1 -1
  881. package/src/contract/deployment_info.ts +1 -1
  882. package/src/contract/index.ts +0 -2
  883. package/src/contract/interfaces/contract_class.ts +78 -47
  884. package/src/contract/interfaces/contract_data_source.ts +3 -2
  885. package/src/contract/interfaces/contract_instance.ts +48 -16
  886. package/src/contract/interfaces/contract_instance_update.ts +12 -10
  887. package/src/contract/interfaces/node-info.ts +3 -0
  888. package/src/contract/partial_address.ts +1 -1
  889. package/src/contract/private_function.ts +5 -5
  890. package/src/contract/private_function_membership_proof.ts +3 -3
  891. package/src/contract/utility_function_membership_proof.ts +1 -1
  892. package/src/database-version/database_version.ts +87 -0
  893. package/src/database-version/version_manager.ts +1 -77
  894. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +11 -12
  895. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  896. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  897. package/src/deserialization/index.ts +21 -0
  898. package/src/epoch-helpers/index.ts +24 -10
  899. package/src/errors/simulation_error.ts +1 -1
  900. package/src/fees/transaction_fee.ts +1 -1
  901. package/src/file-store/local.ts +15 -5
  902. package/src/file-store/s3.ts +12 -3
  903. package/src/gas/gas.ts +1 -1
  904. package/src/gas/gas_fees.ts +1 -1
  905. package/src/gas/gas_settings.ts +1 -1
  906. package/src/ha-signing/config.ts +149 -0
  907. package/src/ha-signing/index.ts +18 -0
  908. package/src/ha-signing/types.ts +112 -0
  909. package/src/hash/hash.ts +15 -21
  910. package/src/hash/map_slot.ts +4 -3
  911. package/src/interfaces/allowed_element.ts +10 -8
  912. package/src/interfaces/api_limit.ts +2 -0
  913. package/src/interfaces/archiver.ts +54 -29
  914. package/src/interfaces/aztec-node-admin.ts +33 -6
  915. package/src/interfaces/aztec-node.ts +159 -174
  916. package/src/interfaces/block-builder.ts +52 -23
  917. package/src/interfaces/configs.ts +78 -33
  918. package/src/interfaces/epoch-prover.ts +4 -4
  919. package/src/interfaces/get_logs_response.ts +13 -9
  920. package/src/interfaces/l2_logs_source.ts +24 -14
  921. package/src/interfaces/merkle_tree_operations.ts +7 -3
  922. package/src/interfaces/p2p.ts +8 -12
  923. package/src/interfaces/prover-broker.ts +22 -0
  924. package/src/interfaces/prover-client.ts +35 -10
  925. package/src/interfaces/proving-job.ts +2 -11
  926. package/src/interfaces/public_state_source.ts +1 -1
  927. package/src/interfaces/server_circuit_prover.ts +3 -3
  928. package/src/interfaces/slasher.ts +28 -22
  929. package/src/interfaces/validator.ts +94 -32
  930. package/src/interfaces/world_state.ts +26 -18
  931. package/src/kernel/claimed_length_array.ts +1 -1
  932. package/src/kernel/hints/build_note_hash_read_request_hints.ts +34 -30
  933. package/src/kernel/hints/build_nullifier_read_request_hints.ts +33 -33
  934. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  935. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
  936. package/src/kernel/hints/index.ts +2 -2
  937. package/src/kernel/hints/key_validation_hint.ts +1 -1
  938. package/src/kernel/hints/key_validation_request.ts +2 -1
  939. package/src/kernel/hints/key_validation_request_and_separator.ts +49 -0
  940. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  941. package/src/kernel/hints/read_request.ts +1 -1
  942. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +11 -11
  943. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  944. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  945. package/src/kernel/hints/tree_leaf_read_request.ts +1 -1
  946. package/src/kernel/log_hash.ts +1 -1
  947. package/src/kernel/note_hash.ts +1 -1
  948. package/src/kernel/nullifier.ts +1 -1
  949. package/src/kernel/padded_side_effects.ts +1 -1
  950. package/src/kernel/private_call_data.ts +1 -1
  951. package/src/kernel/private_call_request.ts +1 -1
  952. package/src/kernel/private_circuit_public_inputs.ts +100 -100
  953. package/src/kernel/private_context_inputs.ts +1 -1
  954. package/src/kernel/private_kernel_circuit_public_inputs.ts +3 -3
  955. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +1 -1
  956. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  957. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +6 -6
  958. package/src/kernel/private_log_data.ts +1 -1
  959. package/src/kernel/private_to_avm_accumulated_data.ts +1 -1
  960. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  961. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  962. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +7 -7
  963. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  964. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +7 -7
  965. package/src/kernel/private_validation_requests.ts +8 -8
  966. package/src/kernel/public_call_request.ts +1 -1
  967. package/src/kernel/utils/optional_number.ts +1 -1
  968. package/src/keys/derivation.ts +20 -17
  969. package/src/keys/key_types.ts +6 -2
  970. package/src/keys/public_key.ts +1 -1
  971. package/src/keys/public_keys.ts +5 -4
  972. package/src/keys/utils.ts +8 -4
  973. package/src/l1-contracts/slash_factory.ts +4 -1
  974. package/src/logs/contract_class_log.ts +2 -2
  975. package/src/logs/debug_log.ts +1 -1
  976. package/src/logs/debug_log_store.ts +54 -0
  977. package/src/logs/directional_app_tagging_secret.ts +4 -2
  978. package/src/logs/index.ts +3 -1
  979. package/src/logs/log_id.ts +32 -17
  980. package/src/logs/message_context.ts +1 -1
  981. package/src/logs/pending_tagged_log.ts +1 -1
  982. package/src/logs/private_log.ts +3 -2
  983. package/src/logs/public_log.ts +8 -1
  984. package/src/logs/shared_secret_derivation.ts +2 -2
  985. package/src/logs/siloed_tag.ts +44 -0
  986. package/src/logs/tag.ts +42 -0
  987. package/src/logs/tx_scoped_l2_log.ts +48 -45
  988. package/src/messaging/in_hash.ts +4 -2
  989. package/src/messaging/inbox_leaf.ts +11 -10
  990. package/src/messaging/l1_actor.ts +2 -2
  991. package/src/messaging/l1_to_l2_message.ts +3 -2
  992. package/src/messaging/l1_to_l2_message_source.ts +5 -10
  993. package/src/messaging/l2_actor.ts +2 -2
  994. package/src/messaging/l2_to_l1_membership.ts +179 -52
  995. package/src/messaging/l2_to_l1_message.ts +5 -1
  996. package/src/messaging/out_hash.ts +63 -22
  997. package/src/note/index.ts +0 -1
  998. package/src/note/note.ts +5 -2
  999. package/src/note/note_dao.ts +51 -15
  1000. package/src/p2p/attestation_utils.ts +59 -3
  1001. package/src/p2p/block_proposal.ts +214 -48
  1002. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +38 -26
  1003. package/src/p2p/checkpoint_proposal.ts +387 -0
  1004. package/src/p2p/consensus_payload.ts +30 -19
  1005. package/src/p2p/constants.ts +6 -0
  1006. package/src/p2p/gossipable.ts +14 -4
  1007. package/src/p2p/index.ts +4 -1
  1008. package/src/p2p/message_validator.ts +14 -2
  1009. package/src/p2p/signature_utils.ts +5 -2
  1010. package/src/p2p/signed_txs.ts +88 -0
  1011. package/src/p2p/topic_type.ts +4 -3
  1012. package/src/parity/parity_base_private_inputs.ts +1 -1
  1013. package/src/parity/parity_public_inputs.ts +1 -1
  1014. package/src/proofs/chonk_proof.ts +11 -7
  1015. package/src/proofs/proof.ts +1 -1
  1016. package/src/proofs/proof_data.ts +24 -0
  1017. package/src/proofs/recursive_proof.ts +1 -1
  1018. package/src/rollup/avm_proof_data.ts +2 -9
  1019. package/src/rollup/base_rollup_hints.ts +1 -1
  1020. package/src/rollup/block_constant_data.ts +1 -1
  1021. package/src/rollup/block_headers_hash.ts +2 -2
  1022. package/src/rollup/block_rollup_public_inputs.ts +6 -12
  1023. package/src/rollup/block_root_rollup_private_inputs.ts +1 -1
  1024. package/src/rollup/checkpoint_constant_data.ts +2 -1
  1025. package/src/rollup/checkpoint_header.ts +69 -20
  1026. package/src/rollup/checkpoint_rollup_public_inputs.ts +18 -6
  1027. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +16 -2
  1028. package/src/rollup/epoch_constant_data.ts +1 -1
  1029. package/src/rollup/public_chonk_verifier_private_inputs.ts +1 -1
  1030. package/src/rollup/public_chonk_verifier_public_inputs.ts +1 -1
  1031. package/src/rollup/public_tx_base_rollup_private_inputs.ts +2 -2
  1032. package/src/rollup/root_rollup_public_inputs.ts +17 -8
  1033. package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
  1034. package/src/rollup/tx_rollup_public_inputs.ts +1 -1
  1035. package/src/schemas/schemas.ts +6 -1
  1036. package/src/slashing/empire.ts +3 -1
  1037. package/src/slashing/helpers.ts +8 -0
  1038. package/src/slashing/tally.ts +8 -2
  1039. package/src/slashing/types.ts +38 -20
  1040. package/src/snapshots/types.ts +33 -29
  1041. package/src/stats/stats.ts +10 -7
  1042. package/src/tests/factories.ts +143 -61
  1043. package/src/tests/jest.ts +1 -1
  1044. package/src/tests/mocks.ts +302 -89
  1045. package/src/timetable/index.ts +66 -0
  1046. package/src/trees/append_only_tree_snapshot.ts +1 -1
  1047. package/src/trees/database_public_state_source.ts +1 -1
  1048. package/src/trees/nullifier_leaf.ts +1 -1
  1049. package/src/trees/nullifier_membership_witness.ts +1 -1
  1050. package/src/trees/public_data_leaf.ts +12 -6
  1051. package/src/trees/public_data_witness.ts +1 -1
  1052. package/src/tx/block_header.ts +27 -13
  1053. package/src/tx/call_context.ts +1 -1
  1054. package/src/tx/capsule.ts +1 -1
  1055. package/src/tx/function_data.ts +1 -1
  1056. package/src/tx/global_variable_builder.ts +9 -2
  1057. package/src/tx/global_variables.ts +16 -10
  1058. package/src/tx/hashed_values.ts +1 -1
  1059. package/src/tx/in_tx.ts +24 -0
  1060. package/src/tx/index.ts +1 -1
  1061. package/src/tx/indexed_tx_effect.ts +9 -7
  1062. package/src/tx/offchain_effect.ts +1 -1
  1063. package/src/tx/partial_state_reference.ts +1 -1
  1064. package/src/tx/private_execution_result.ts +6 -21
  1065. package/src/tx/private_tx_constant_data.ts +1 -1
  1066. package/src/tx/processed_tx.ts +19 -16
  1067. package/src/tx/profiling.ts +52 -10
  1068. package/src/tx/protocol_contracts.ts +4 -4
  1069. package/src/tx/public_call_request_with_calldata.ts +1 -1
  1070. package/src/tx/public_simulation_output.ts +5 -1
  1071. package/src/tx/state_reference.ts +1 -1
  1072. package/src/tx/tree_snapshots.ts +1 -1
  1073. package/src/tx/tx.ts +22 -13
  1074. package/src/tx/tx_constant_data.ts +1 -1
  1075. package/src/tx/tx_context.ts +1 -1
  1076. package/src/tx/tx_effect.ts +5 -12
  1077. package/src/tx/tx_execution_request.ts +3 -1
  1078. package/src/tx/tx_hash.ts +1 -1
  1079. package/src/tx/tx_receipt.ts +88 -20
  1080. package/src/tx/tx_request.ts +4 -4
  1081. package/src/tx/validator/empty_validator.ts +1 -1
  1082. package/src/tx/validator/error_texts.ts +4 -1
  1083. package/src/tx/validator/tx_validator.ts +9 -7
  1084. package/src/update-checker/update-checker.ts +2 -1
  1085. package/src/validators/errors.ts +1 -1
  1086. package/src/validators/schemas.ts +61 -48
  1087. package/src/validators/types.ts +5 -4
  1088. package/src/versioning/versioning.ts +1 -1
  1089. package/src/vks/verification_key.ts +1 -1
  1090. package/src/vks/vk_data.ts +1 -1
  1091. package/src/zkpassport/index.ts +13 -14
  1092. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  1093. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  1094. package/dest/block/l2_block_code_to_purge.js +0 -61
  1095. package/dest/block/l2_block_header.d.ts +0 -98
  1096. package/dest/block/l2_block_header.d.ts.map +0 -1
  1097. package/dest/block/l2_block_header.js +0 -153
  1098. package/dest/block/l2_block_new.d.ts +0 -108
  1099. package/dest/block/l2_block_new.d.ts.map +0 -1
  1100. package/dest/block/l2_block_new.js +0 -135
  1101. package/dest/block/l2_block_number.d.ts +0 -5
  1102. package/dest/block/l2_block_number.d.ts.map +0 -1
  1103. package/dest/block/l2_block_number.js +0 -6
  1104. package/dest/block/published_l2_block.d.ts +0 -130
  1105. package/dest/block/published_l2_block.d.ts.map +0 -1
  1106. package/dest/block/published_l2_block.js +0 -48
  1107. package/dest/contract/contract_class_metadata.d.ts +0 -8
  1108. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  1109. package/dest/contract/contract_class_metadata.js +0 -1
  1110. package/dest/contract/contract_metadata.d.ts +0 -7
  1111. package/dest/contract/contract_metadata.d.ts.map +0 -1
  1112. package/dest/contract/contract_metadata.js +0 -1
  1113. package/dest/database-version/index.d.ts +0 -2
  1114. package/dest/database-version/index.d.ts.map +0 -1
  1115. package/dest/database-version/index.js +0 -1
  1116. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -25
  1117. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1118. package/dest/logs/log_with_tx_data.d.ts +0 -19
  1119. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1120. package/dest/logs/log_with_tx_data.js +0 -49
  1121. package/dest/note/notes_filter.d.ts +0 -25
  1122. package/dest/note/notes_filter.d.ts.map +0 -1
  1123. package/dest/note/notes_filter.js +0 -10
  1124. package/dest/p2p/block_attestation.d.ts +0 -80
  1125. package/dest/p2p/block_attestation.d.ts.map +0 -1
  1126. package/dest/tx/content_commitment.d.ts +0 -48
  1127. package/dest/tx/content_commitment.d.ts.map +0 -1
  1128. package/dest/tx/content_commitment.js +0 -82
  1129. package/src/block/l2_block_code_to_purge.ts +0 -88
  1130. package/src/block/l2_block_header.ts +0 -246
  1131. package/src/block/l2_block_new.ts +0 -171
  1132. package/src/block/l2_block_number.ts +0 -8
  1133. package/src/block/published_l2_block.ts +0 -65
  1134. package/src/contract/contract_class_metadata.ts +0 -8
  1135. package/src/contract/contract_metadata.ts +0 -7
  1136. package/src/database-version/index.ts +0 -1
  1137. package/src/kernel/hints/key_validation_request_and_generator.ts +0 -52
  1138. package/src/logs/log_with_tx_data.ts +0 -46
  1139. package/src/note/notes_filter.ts +0 -35
  1140. package/src/tx/content_commitment.ts +0 -104
@@ -1,27 +1,31 @@
1
1
  import {
2
- FIXED_DA_GAS,
3
- FIXED_L2_GAS,
4
2
  MAX_ENQUEUED_CALLS_PER_TX,
5
- MAX_INCLUDE_BY_TIMESTAMP_DURATION,
6
3
  MAX_NULLIFIERS_PER_TX,
7
4
  MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
5
+ MAX_TX_LIFETIME,
6
+ PRIVATE_TX_L2_GAS_OVERHEAD,
7
+ PUBLIC_TX_L2_GAS_OVERHEAD,
8
+ TX_DA_GAS_OVERHEAD,
8
9
  } from '@aztec/constants';
9
- import { makeTuple } from '@aztec/foundation/array';
10
+ import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
11
+ import { BlockNumber, CheckpointNumber, IndexWithinCheckpoint, SlotNumber } from '@aztec/foundation/branded-types';
10
12
  import { Buffer32 } from '@aztec/foundation/buffer';
11
13
  import { padArrayEnd, times } from '@aztec/foundation/collection';
12
- import { Secp256k1Signer, randomBytes } from '@aztec/foundation/crypto';
13
- import { Fr } from '@aztec/foundation/fields';
14
+ import { randomBytes } from '@aztec/foundation/crypto/random';
15
+ import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
16
+ import { Fr } from '@aztec/foundation/curves/bn254';
17
+ import { Signature } from '@aztec/foundation/eth-signature';
14
18
 
15
19
  import type { ContractArtifact } from '../abi/abi.js';
20
+ import { PublicTxEffect } from '../avm/avm.js';
21
+ import type { AvmAccumulatedData } from '../avm/avm_accumulated_data.js';
16
22
  import { AvmCircuitPublicInputs } from '../avm/avm_circuit_public_inputs.js';
17
23
  import { PublicDataWrite } from '../avm/public_data_write.js';
18
24
  import { RevertCode } from '../avm/revert_code.js';
19
25
  import { AztecAddress } from '../aztec-address/index.js';
20
- import { CommitteeAttestation, L2BlockHeader } from '../block/index.js';
21
- import { L2Block } from '../block/l2_block.js';
26
+ import { CheckpointedL2Block, CommitteeAttestation, L2Block } from '../block/index.js';
22
27
  import type { CommitteeAttestationsAndSigners } from '../block/proposal/attestations_and_signers.js';
23
- import { PublishedL2Block } from '../block/published_l2_block.js';
24
- import type { Checkpoint } from '../checkpoint/checkpoint.js';
28
+ import { Checkpoint } from '../checkpoint/checkpoint.js';
25
29
  import { L1PublishedData } from '../checkpoint/published_checkpoint.js';
26
30
  import { computeContractAddressFromInstance } from '../contract/contract_address.js';
27
31
  import { getContractClassFromArtifact } from '../contract/contract_class.js';
@@ -42,12 +46,15 @@ import {
42
46
  import { PrivateToAvmAccumulatedData } from '../kernel/private_to_avm_accumulated_data.js';
43
47
  import { PrivateToPublicAccumulatedDataBuilder } from '../kernel/private_to_public_accumulated_data_builder.js';
44
48
  import { PublicCallRequestArrayLengths } from '../kernel/public_call_request.js';
45
- import { BlockAttestation } from '../p2p/block_attestation.js';
49
+ import { computeInHashFromL1ToL2Messages } from '../messaging/in_hash.js';
46
50
  import { BlockProposal } from '../p2p/block_proposal.js';
51
+ import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
52
+ import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
47
53
  import { ConsensusPayload } from '../p2p/consensus_payload.js';
48
54
  import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '../p2p/signature_utils.js';
49
55
  import { ChonkProof } from '../proofs/chonk_proof.js';
50
56
  import { ProvingRequestType } from '../proofs/proving_request_type.js';
57
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
51
58
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
52
59
  import {
53
60
  BlockHeader,
@@ -69,9 +76,9 @@ import {
69
76
  makeAvmCircuitInputs,
70
77
  makeAztecAddress,
71
78
  makeBlockHeader,
79
+ makeCheckpointHeader,
72
80
  makeGas,
73
81
  makeGlobalVariables,
74
- makeL2BlockHeader,
75
82
  makePrivateToPublicAccumulatedData,
76
83
  makePrivateToRollupAccumulatedData,
77
84
  makeProtocolContracts,
@@ -91,12 +98,14 @@ export const mockTx = async (
91
98
  publicCalldataSize = 2,
92
99
  feePayer,
93
100
  chonkProof = ChonkProof.random(),
101
+ maxFeesPerGas = new GasFees(10, 10),
94
102
  maxPriorityFeesPerGas,
95
103
  gasUsed = Gas.empty(),
96
104
  chainId = Fr.ZERO,
97
105
  version = Fr.ZERO,
98
106
  vkTreeRoot = Fr.ZERO,
99
107
  protocolContractsHash = Fr.ZERO,
108
+ anchorBlockHeader = BlockHeader.empty(),
100
109
  }: {
101
110
  numberOfNonRevertiblePublicCallRequests?: number;
102
111
  numberOfRevertiblePublicCallRequests?: number;
@@ -105,12 +114,14 @@ export const mockTx = async (
105
114
  publicCalldataSize?: number;
106
115
  feePayer?: AztecAddress;
107
116
  chonkProof?: ChonkProof;
117
+ maxFeesPerGas?: GasFees;
108
118
  maxPriorityFeesPerGas?: GasFees;
109
119
  gasUsed?: Gas;
110
120
  chainId?: Fr;
111
121
  version?: Fr;
112
122
  vkTreeRoot?: Fr;
113
123
  protocolContractsHash?: Fr;
124
+ anchorBlockHeader?: BlockHeader;
114
125
  } = {},
115
126
  ) => {
116
127
  const totalPublicCallRequests =
@@ -120,10 +131,8 @@ export const mockTx = async (
120
131
  const isForPublic = totalPublicCallRequests > 0;
121
132
  const data = PrivateKernelTailCircuitPublicInputs.empty();
122
133
  const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
123
- data.constants.txContext.gasSettings = GasSettings.default({
124
- maxFeesPerGas: new GasFees(10, 10),
125
- maxPriorityFeesPerGas,
126
- });
134
+ data.constants.anchorBlockHeader = anchorBlockHeader;
135
+ data.constants.txContext.gasSettings = GasSettings.default({ maxFeesPerGas, maxPriorityFeesPerGas });
127
136
  data.feePayer = feePayer ?? (await AztecAddress.random());
128
137
  data.gasUsed = gasUsed;
129
138
  data.constants.txContext.chainId = chainId;
@@ -131,8 +140,8 @@ export const mockTx = async (
131
140
  data.constants.vkTreeRoot = vkTreeRoot;
132
141
  data.constants.protocolContractsHash = protocolContractsHash;
133
142
 
134
- // Set includeByTimestamp to the maximum allowed duration from the current time.
135
- data.includeByTimestamp = BigInt(Math.floor(Date.now() / 1000) + MAX_INCLUDE_BY_TIMESTAMP_DURATION);
143
+ // Set expirationTimestamp to the maximum allowed duration from the current time.
144
+ data.expirationTimestamp = BigInt(Math.floor(Date.now() / 1000) + MAX_TX_LIFETIME);
136
145
 
137
146
  const publicFunctionCalldata: HashedValues[] = [];
138
147
  if (!isForPublic) {
@@ -197,8 +206,12 @@ export async function mockProcessedTx({
197
206
  feePayer,
198
207
  feePaymentPublicDataWrite,
199
208
  // The default gasUsed is the tx overhead.
200
- gasUsed = Gas.from({ daGas: FIXED_DA_GAS, l2Gas: FIXED_L2_GAS }),
201
209
  privateOnly = false,
210
+ gasUsed = Gas.from({
211
+ daGas: TX_DA_GAS_OVERHEAD,
212
+ l2Gas: privateOnly ? PRIVATE_TX_L2_GAS_OVERHEAD : PUBLIC_TX_L2_GAS_OVERHEAD,
213
+ }),
214
+ avmAccumulatedData,
202
215
  ...mockTxOpts
203
216
  }: {
204
217
  seed?: number;
@@ -210,6 +223,7 @@ export async function mockProcessedTx({
210
223
  protocolContracts?: ProtocolContracts;
211
224
  feePaymentPublicDataWrite?: PublicDataWrite;
212
225
  privateOnly?: boolean;
226
+ avmAccumulatedData?: Partial<FieldsOf<AvmAccumulatedData>>;
213
227
  } & Parameters<typeof mockTx>[1] = {}) {
214
228
  seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
215
229
  anchorBlockHeader ??= db?.getInitialHeader() ?? makeBlockHeader(seed);
@@ -289,19 +303,22 @@ export async function mockProcessedTx({
289
303
  avmOutput.previousRevertibleAccumulatedDataArrayLengths =
290
304
  avmOutput.previousRevertibleAccumulatedData.getArrayLengths();
291
305
  // Assign final data emitted from avm.
292
- avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
293
- avmOutput.accumulatedData.nullifiers = padArrayEnd(
294
- nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter(n => !n.isEmpty()),
295
- Fr.ZERO,
296
- MAX_NULLIFIERS_PER_TX,
297
- );
298
- avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
299
- avmOutput.accumulatedData.publicDataWrites = makeTuple(
300
- MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
301
- i => new PublicDataWrite(new Fr(i), new Fr(i + 10)),
302
- seed + 0x2000,
303
- );
304
- avmOutput.accumulatedData.publicDataWrites[0] = feePaymentPublicDataWrite;
306
+ avmOutput.accumulatedData.noteHashes = avmAccumulatedData?.noteHashes ?? revertibleData.noteHashes;
307
+ avmOutput.accumulatedData.nullifiers =
308
+ avmAccumulatedData?.nullifiers ??
309
+ padArrayEnd(
310
+ nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter(n => !n.isEmpty()),
311
+ Fr.ZERO,
312
+ MAX_NULLIFIERS_PER_TX,
313
+ );
314
+ avmOutput.accumulatedData.l2ToL1Msgs = avmAccumulatedData?.l2ToL1Msgs ?? revertibleData.l2ToL1Msgs;
315
+ avmOutput.accumulatedData.publicDataWrites =
316
+ avmAccumulatedData?.publicDataWrites ??
317
+ makeTuple(
318
+ MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
319
+ i => (i === 0 ? feePaymentPublicDataWrite : new PublicDataWrite(new Fr(i), new Fr(i + 10))),
320
+ seed + 0x2000,
321
+ );
305
322
  avmOutput.accumulatedDataArrayLengths = avmOutput.accumulatedData.getArrayLengths();
306
323
  avmOutput.gasSettings = gasSettings;
307
324
  // Note: The fee is computed from the tx's gas used, which only includes the gas used in private. But this shouldn't
@@ -319,12 +336,24 @@ export async function mockProcessedTx({
319
336
  } satisfies GasUsed;
320
337
 
321
338
  await tx.recomputeHash();
339
+
340
+ const publicTxEffect = new PublicTxEffect(
341
+ avmOutput.transactionFee,
342
+ avmOutput.accumulatedData.noteHashes.filter(h => !h.isZero()),
343
+ avmOutput.accumulatedData.nullifiers.filter(h => !h.isZero()),
344
+ avmOutput.accumulatedData.l2ToL1Msgs.filter(h => !h.isEmpty()),
345
+ avmOutput.accumulatedData.publicLogs.toLogs(),
346
+ avmOutput.accumulatedData.publicDataWrites.filter(h => !h.isEmpty()),
347
+ );
348
+
322
349
  return makeProcessedTxFromTxWithPublicCalls(
323
350
  tx,
351
+ globalVariables,
324
352
  {
325
353
  type: ProvingRequestType.PUBLIC_VM,
326
354
  inputs: avmCircuitInputs,
327
355
  },
356
+ publicTxEffect,
328
357
  gasUsed,
329
358
  RevertCode.OK,
330
359
  undefined /* revertReason */,
@@ -338,7 +367,6 @@ const emptyPrivateCallExecutionResult = () =>
338
367
  Buffer.from(''),
339
368
  new Map(),
340
369
  PrivateCircuitPublicInputs.empty(),
341
- new Map(),
342
370
  [],
343
371
  new Map(),
344
372
  [],
@@ -368,6 +396,76 @@ export const mockSimulatedTx = async (seed = 1) => {
368
396
  return new TxSimulationResult(privateExecutionResult, tx.data, output);
369
397
  };
370
398
 
399
+ export function mockL1ToL2Messages(numL1ToL2Messages: number): Fr[] {
400
+ return Array.from({ length: numL1ToL2Messages }, () => Fr.random());
401
+ }
402
+
403
+ export async function mockCheckpointAndMessages(
404
+ checkpointNumber: CheckpointNumber,
405
+ {
406
+ startBlockNumber = BlockNumber(1),
407
+ numBlocks = 1,
408
+ blocks,
409
+ numTxsPerBlock = 1,
410
+ numL1ToL2Messages = 1,
411
+ makeBlockOptions = () => ({}),
412
+ previousArchive,
413
+ maxEffects,
414
+ ...options
415
+ }: {
416
+ startBlockNumber?: BlockNumber;
417
+ numBlocks?: number;
418
+ numTxsPerBlock?: number;
419
+ numL1ToL2Messages?: number;
420
+ makeBlockOptions?: (blockNumber: BlockNumber) => Partial<Parameters<typeof L2Block.random>[1]>;
421
+ previousArchive?: AppendOnlyTreeSnapshot;
422
+ blocks?: L2Block[];
423
+ maxEffects?: number;
424
+ } & Partial<Parameters<typeof Checkpoint.random>[1]> &
425
+ Partial<Parameters<typeof L2Block.random>[1]> = {},
426
+ ) {
427
+ const slotNumber = options.slotNumber ?? SlotNumber(Number(checkpointNumber) * 10);
428
+ const blocksAndMessages = [];
429
+ // Track the previous block's archive to ensure consecutive blocks have consistent archive roots.
430
+ // The current block's header.lastArchive must equal the previous block's archive.
431
+ let lastArchive: AppendOnlyTreeSnapshot | undefined = previousArchive;
432
+ // Pass maxEffects via txOptions so it reaches TxEffect.random
433
+ const txOptions = maxEffects !== undefined ? { maxEffects } : {};
434
+ for (let i = 0; i < (blocks?.length ?? numBlocks); i++) {
435
+ const blockNumber = BlockNumber(startBlockNumber + i);
436
+ const { block, messages } = {
437
+ block:
438
+ blocks?.[i] ??
439
+ (await L2Block.random(blockNumber, {
440
+ checkpointNumber,
441
+ indexWithinCheckpoint: IndexWithinCheckpoint(i),
442
+ txsPerBlock: numTxsPerBlock,
443
+ txOptions,
444
+ slotNumber,
445
+ ...options,
446
+ ...makeBlockOptions(blockNumber),
447
+ ...(lastArchive ? { lastArchive } : {}),
448
+ })),
449
+ messages: mockL1ToL2Messages(numL1ToL2Messages),
450
+ };
451
+ // Update lastArchive for the next block
452
+ lastArchive = block.archive;
453
+ blocksAndMessages.push({ block, messages });
454
+ }
455
+
456
+ const messages = blocksAndMessages[0].messages;
457
+ const inHash = computeInHashFromL1ToL2Messages(messages);
458
+ const checkpoint = await Checkpoint.random(checkpointNumber, { numBlocks: 0, slotNumber, inHash, ...options });
459
+ checkpoint.blocks = blocksAndMessages.map(({ block }) => block);
460
+ // Set the checkpoint's archive to match the last block's archive for proper chaining.
461
+ // When the archiver reconstructs checkpoints from L1, it uses the checkpoint's archive root
462
+ // from the L1 event to set the last block's archive. Without this, the archive chain breaks.
463
+ checkpoint.archive = lastArchive!;
464
+
465
+ // Return lastArchive so callers can chain it across multiple checkpoints
466
+ return { checkpoint, messages, lastArchive };
467
+ }
468
+
371
469
  export const randomContractArtifact = (): ContractArtifact => ({
372
470
  name: randomBytes(4).toString('hex'),
373
471
  functions: [],
@@ -405,28 +503,55 @@ export interface MakeConsensusPayloadOptions {
405
503
  signer?: Secp256k1Signer;
406
504
  attesterSigner?: Secp256k1Signer;
407
505
  proposerSigner?: Secp256k1Signer;
408
- header?: L2BlockHeader;
506
+ header?: CheckpointHeader;
409
507
  archive?: Fr;
410
508
  txHashes?: TxHash[];
411
509
  txs?: Tx[];
510
+ feeAssetPriceModifier?: bigint;
511
+ }
512
+
513
+ export interface MakeBlockProposalOptions {
514
+ signer?: Secp256k1Signer;
515
+ blockHeader?: BlockHeader;
516
+ indexWithinCheckpoint?: IndexWithinCheckpoint;
517
+ inHash?: Fr;
518
+ archiveRoot?: Fr;
519
+ txHashes?: TxHash[];
520
+ txs?: Tx[];
412
521
  }
413
522
 
523
+ export interface MakeCheckpointProposalOptions {
524
+ signer?: Secp256k1Signer;
525
+ checkpointHeader?: CheckpointHeader;
526
+ archiveRoot?: Fr;
527
+ feeAssetPriceModifier?: bigint;
528
+ /** Options for the lastBlock - if undefined, no lastBlock is included */
529
+ lastBlock?: {
530
+ blockHeader?: BlockHeader;
531
+ indexWithinCheckpoint?: IndexWithinCheckpoint;
532
+ txHashes?: TxHash[];
533
+ txs?: Tx[];
534
+ };
535
+ }
536
+
537
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
414
538
  const makeAndSignConsensusPayload = (
415
539
  domainSeparator: SignatureDomainSeparator,
416
540
  options?: MakeConsensusPayloadOptions,
417
541
  ) => {
418
- const header = options?.header ?? makeL2BlockHeader(1);
419
- const { signer = Secp256k1Signer.random(), archive = Fr.random() } = options ?? {};
542
+ const header = options?.header ?? makeCheckpointHeader(1);
543
+ const { signer = Secp256k1Signer.random(), archive = Fr.random(), feeAssetPriceModifier = 0n } = options ?? {};
420
544
 
421
545
  const payload = ConsensusPayload.fromFields({
422
- header: header.toCheckpointHeader(),
546
+ header,
423
547
  archive,
548
+ feeAssetPriceModifier,
424
549
  });
425
550
 
426
551
  const hash = getHashedSignaturePayloadEthSignedMessage(payload, domainSeparator);
427
552
  const signature = signer.sign(hash);
428
553
 
429
- return { blockNumber: header.globalVariables.blockNumber, payload, signature };
554
+ return { blockNumber: header.slotNumber, payload, signature };
430
555
  };
431
556
 
432
557
  export const makeAndSignCommitteeAttestationsAndSigners = (
@@ -440,80 +565,158 @@ export const makeAndSignCommitteeAttestationsAndSigners = (
440
565
  return signer.sign(hash);
441
566
  };
442
567
 
443
- export const makeBlockProposal = (options?: MakeConsensusPayloadOptions): BlockProposal => {
444
- const { payload, signature } = makeAndSignConsensusPayload(SignatureDomainSeparator.blockProposal, options);
568
+ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<BlockProposal> => {
569
+ const blockHeader = options?.blockHeader ?? makeBlockHeader(1);
570
+ const indexWithinCheckpoint = options?.indexWithinCheckpoint ?? IndexWithinCheckpoint(0);
571
+ const inHash = options?.inHash ?? Fr.random();
572
+ const archiveRoot = options?.archiveRoot ?? Fr.random();
445
573
  const txHashes = options?.txHashes ?? [0, 1, 2, 3, 4, 5].map(() => TxHash.random());
446
- return new BlockProposal(payload, signature, txHashes, options?.txs ?? []);
574
+ const txs = options?.txs;
575
+ const signer = options?.signer ?? Secp256k1Signer.random();
576
+
577
+ return BlockProposal.createProposalFromSigner(
578
+ blockHeader,
579
+ indexWithinCheckpoint,
580
+ inHash,
581
+ archiveRoot,
582
+ txHashes,
583
+ txs,
584
+ (_payload, _context) => Promise.resolve(signer.signMessage(_payload)),
585
+ );
447
586
  };
448
587
 
449
- // TODO(https://github.com/AztecProtocol/aztec-packages/issues/8028)
450
- export const makeBlockAttestation = (options: MakeConsensusPayloadOptions = {}): BlockAttestation => {
451
- const header = options.header ?? makeL2BlockHeader(1);
452
- const { signer, attesterSigner = signer, proposerSigner = signer, archive = Fr.random() } = options;
588
+ export const makeCheckpointProposal = (options?: MakeCheckpointProposalOptions): Promise<CheckpointProposal> => {
589
+ const blockHeader = options?.lastBlock?.blockHeader ?? makeBlockHeader(1);
590
+ const checkpointHeader = options?.checkpointHeader ?? makeCheckpointHeader(1);
591
+ const archiveRoot = options?.archiveRoot ?? Fr.random();
592
+ const feeAssetPriceModifier = options?.feeAssetPriceModifier ?? 0n;
593
+ const signer = options?.signer ?? Secp256k1Signer.random();
594
+
595
+ // Build lastBlock info if provided
596
+ const lastBlockInfo = options?.lastBlock
597
+ ? {
598
+ blockHeader,
599
+ indexWithinCheckpoint: options.lastBlock.indexWithinCheckpoint ?? IndexWithinCheckpoint(4), // Last block in a 5-block checkpoint
600
+ txHashes: options.lastBlock.txHashes ?? [0, 1, 2, 3, 4, 5].map(() => TxHash.random()),
601
+ txs: options.lastBlock.txs,
602
+ }
603
+ : undefined;
604
+
605
+ return CheckpointProposal.createProposalFromSigner(
606
+ checkpointHeader,
607
+ archiveRoot,
608
+ feeAssetPriceModifier,
609
+ lastBlockInfo,
610
+ payload => Promise.resolve(signer.signMessage(payload)),
611
+ );
612
+ };
453
613
 
454
- const payload = ConsensusPayload.fromFields({
455
- header: header.toCheckpointHeader(),
456
- archive,
457
- });
614
+ /**
615
+ * Options for creating a checkpoint attestation
616
+ */
617
+ export type MakeCheckpointAttestationOptions = {
618
+ header?: CheckpointHeader;
619
+ archive?: Fr;
620
+ feeAssetPriceModifier?: bigint;
621
+ attesterSigner?: Secp256k1Signer;
622
+ proposerSigner?: Secp256k1Signer;
623
+ signer?: Secp256k1Signer;
624
+ };
625
+
626
+ /**
627
+ * Create a checkpoint attestation for testing
628
+ */
629
+ export const makeCheckpointAttestation = (options: MakeCheckpointAttestationOptions = {}): CheckpointAttestation => {
630
+ const header = options.header ?? makeCheckpointHeader(1);
631
+ const archive = options.archive ?? Fr.random();
632
+ const feeAssetPriceModifier = options.feeAssetPriceModifier ?? 0n;
633
+ const { signer, attesterSigner = signer, proposerSigner = signer } = options;
634
+
635
+ const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier);
458
636
 
459
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
637
+ // Sign as attester
638
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(
639
+ payload,
640
+ SignatureDomainSeparator.checkpointAttestation,
641
+ );
642
+ const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
643
+ const attestationSignature = attestationSigner.sign(attestationHash);
644
+
645
+ // Sign as proposer - use CheckpointProposal's payload format (serializeToBuffer)
646
+ // This is different from ConsensusPayload's format (ABI encoding)
647
+ const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
648
+ const tempProposal = new CheckpointProposal(header, archive, feeAssetPriceModifier, Signature.empty());
649
+ const proposalHash = getHashedSignaturePayloadEthSignedMessage(
650
+ tempProposal,
651
+ SignatureDomainSeparator.checkpointProposal,
652
+ );
653
+ const proposerSignature = proposalSignerToUse.sign(proposalHash);
654
+
655
+ return new CheckpointAttestation(payload, attestationSignature, proposerSignature);
460
656
  };
461
657
 
462
- export const makeAttestationFromCheckpoint = (
463
- checkpoint: Checkpoint,
658
+ /**
659
+ * Create a checkpoint attestation from a checkpoint proposal
660
+ */
661
+ export const makeCheckpointAttestationFromProposal = (
662
+ proposal: CheckpointProposal,
464
663
  attesterSigner?: Secp256k1Signer,
465
- proposerSigner?: Secp256k1Signer,
466
- ): BlockAttestation => {
467
- const header = checkpoint.header;
468
- const archive = checkpoint.archive.root;
664
+ ): CheckpointAttestation => {
665
+ const payload = new ConsensusPayload(proposal.checkpointHeader, proposal.archive, proposal.feeAssetPriceModifier);
469
666
 
470
- const payload = ConsensusPayload.fromFields({
471
- header,
472
- archive,
473
- });
667
+ // Sign as attester
668
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(
669
+ payload,
670
+ SignatureDomainSeparator.checkpointAttestation,
671
+ );
672
+ const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
673
+ const attestationSignature = attestationSigner.sign(attestationHash);
474
674
 
475
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
675
+ // Use the proposal's signature as the proposer signature
676
+ return new CheckpointAttestation(payload, attestationSignature, proposal.signature);
476
677
  };
477
678
 
478
- export const makeBlockAttestationFromBlock = (
479
- block: L2Block,
679
+ /**
680
+ * Create a checkpoint attestation from a checkpoint
681
+ */
682
+ export const makeCheckpointAttestationFromCheckpoint = (
683
+ checkpoint: Checkpoint,
480
684
  attesterSigner?: Secp256k1Signer,
481
685
  proposerSigner?: Secp256k1Signer,
482
- ): BlockAttestation => {
483
- const header = block.header;
484
- const archive = block.archive.root;
485
-
486
- const payload = ConsensusPayload.fromFields({
487
- header: header.toCheckpointHeader(),
488
- archive,
489
- });
686
+ ): CheckpointAttestation => {
687
+ const header = checkpoint.header;
688
+ const archive = checkpoint.archive.root;
689
+ const feeAssetPriceModifier = checkpoint.feeAssetPriceModifier;
490
690
 
491
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
691
+ return makeCheckpointAttestation({ header, archive, feeAssetPriceModifier, attesterSigner, proposerSigner });
492
692
  };
493
693
 
494
- export const makeBlockAttestationFromPayload = (
495
- payload: ConsensusPayload,
694
+ /**
695
+ * Create a checkpoint attestation from an L2Block
696
+ * Note: This is a compatibility function for tests. L2Block doesn't have a checkpoint header directly.
697
+ */
698
+ export const makeCheckpointAttestationFromBlock = (
699
+ block: L2Block,
496
700
  attesterSigner?: Secp256k1Signer,
497
701
  proposerSigner?: Secp256k1Signer,
498
- ): BlockAttestation => {
499
- // Sign as attester
500
- const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
501
- const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
502
- const attestationSignature = attestationSigner.sign(attestationHash);
503
-
504
- // Sign as proposer
505
- const proposalHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockProposal);
506
- const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
507
- const proposerSignature = proposalSignerToUse.sign(proposalHash);
702
+ ): CheckpointAttestation => {
703
+ // For L2Block, we create a minimal checkpoint header for testing purposes
704
+ const header = CheckpointHeader.empty({
705
+ lastArchiveRoot: block.header.lastArchive.root,
706
+ slotNumber: block.slot,
707
+ timestamp: block.timestamp,
708
+ blockHeadersHash: Fr.ZERO, // Would need to compute from block header hash
709
+ });
710
+ const archive = block.archive.root;
508
711
 
509
- return new BlockAttestation(payload, attestationSignature, proposerSignature);
712
+ return makeCheckpointAttestation({ header, archive, attesterSigner, proposerSigner });
510
713
  };
511
714
 
512
715
  export async function randomPublishedL2Block(
513
716
  l2BlockNumber: number,
514
717
  opts: { signers?: Secp256k1Signer[] } = {},
515
- ): Promise<PublishedL2Block> {
516
- const block = await L2Block.random(l2BlockNumber);
718
+ ): Promise<CheckpointedL2Block> {
719
+ const block = await L2Block.random(BlockNumber(l2BlockNumber));
517
720
  const l1 = L1PublishedData.fromFields({
518
721
  blockNumber: BigInt(block.number),
519
722
  timestamp: block.header.globalVariables.timestamp,
@@ -521,9 +724,19 @@ export async function randomPublishedL2Block(
521
724
  });
522
725
 
523
726
  const signers = opts.signers ?? times(3, () => Secp256k1Signer.random());
524
- const atts = await Promise.all(signers.map(signer => makeBlockAttestationFromBlock(block, signer)));
727
+ const checkpoint = await Checkpoint.random(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), {
728
+ numBlocks: 0,
729
+ });
730
+ checkpoint.blocks = [block];
731
+ const atts = signers.map(signer =>
732
+ makeCheckpointAttestation({
733
+ signer,
734
+ archive: block.archive.root,
735
+ header: checkpoint.header,
736
+ }),
737
+ );
525
738
  const attestations = atts.map(
526
739
  (attestation, i) => new CommitteeAttestation(signers[i].address, attestation.signature),
527
740
  );
528
- return new PublishedL2Block(block, l1, attestations);
741
+ return new CheckpointedL2Block(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), block, l1, attestations);
529
742
  }
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Timetable constants used for sequencer timing calculations.
3
+ * These define the time budgets for various phases of block production.
4
+ *
5
+ * The sequencer slot is divided into phases:
6
+ * 1. Checkpoint initialization (sync + proposer check)
7
+ * 2. Block building (execution)
8
+ * 3. Checkpoint assembly
9
+ * 4. P2P propagation for proposal and attestations (round-trip)
10
+ * 5. L1 publishing
11
+ */
12
+
13
+ /** Time budget for checkpoint initialization (sync + proposer check) in seconds */
14
+ export const CHECKPOINT_INITIALIZATION_TIME = 1;
15
+
16
+ /** Time budget for assembling a checkpoint after building the last block in seconds */
17
+ export const CHECKPOINT_ASSEMBLE_TIME = 1;
18
+
19
+ /** Default one-way P2P propagation time for proposals and attestations in seconds */
20
+ export const DEFAULT_P2P_PROPAGATION_TIME = 2;
21
+
22
+ /** Default L1 publishing time (matches Ethereum slot duration on mainnet) in seconds */
23
+ export const DEFAULT_L1_PUBLISHING_TIME = 12;
24
+
25
+ /** Minimum execution time for building a block in seconds */
26
+ export const MIN_EXECUTION_TIME = 2;
27
+
28
+ /**
29
+ * Calculates the maximum number of blocks that can be built in a slot.
30
+ * Used by both the sequencer timetable and p2p gossipsub scoring.
31
+ *
32
+ * @param aztecSlotDurationSec - Aztec slot duration in seconds
33
+ * @param blockDurationSec - Duration per block in seconds (undefined = single block mode)
34
+ * @param opts - Optional overrides for timing constants
35
+ * @returns Maximum number of blocks per slot
36
+ */
37
+ export function calculateMaxBlocksPerSlot(
38
+ aztecSlotDurationSec: number,
39
+ blockDurationSec: number | undefined,
40
+ opts: {
41
+ checkpointInitializationTime?: number;
42
+ checkpointAssembleTime?: number;
43
+ p2pPropagationTime?: number;
44
+ l1PublishingTime?: number;
45
+ } = {},
46
+ ): number {
47
+ if (!blockDurationSec) {
48
+ return 1; // Single block per slot
49
+ }
50
+
51
+ const initOffset = opts.checkpointInitializationTime ?? CHECKPOINT_INITIALIZATION_TIME;
52
+ const assembleTime = opts.checkpointAssembleTime ?? CHECKPOINT_ASSEMBLE_TIME;
53
+ const p2pTime = opts.p2pPropagationTime ?? DEFAULT_P2P_PROPAGATION_TIME;
54
+ const l1Time = opts.l1PublishingTime ?? DEFAULT_L1_PUBLISHING_TIME;
55
+
56
+ // Calculate checkpoint finalization time (assembly + round-trip propagation + L1 publishing)
57
+ const checkpointFinalizationTime = assembleTime + p2pTime * 2 + l1Time;
58
+
59
+ // Time reserved at end for last sub-slot (validator re-execution) + finalization
60
+ const timeReservedAtEnd = blockDurationSec + checkpointFinalizationTime;
61
+
62
+ // Time available for building blocks
63
+ const timeAvailableForBlocks = aztecSlotDurationSec - initOffset - timeReservedAtEnd;
64
+
65
+ return Math.max(1, Math.floor(timeAvailableForBlocks / blockDurationSec));
66
+ }
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { schemas } from '@aztec/foundation/schemas';
3
3
  import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
@@ -1,4 +1,4 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
 
3
3
  import type { AztecAddress } from '../aztec-address/index.js';
4
4
  import { computePublicDataTreeLeafSlot } from '../hash/hash.js';
@@ -1,5 +1,5 @@
1
1
  import { toBigIntBE, toBufferBE } from '@aztec/foundation/bigint-buffer';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
4
  import { BufferReader } from '@aztec/foundation/serialize';
5
5
  import type { IndexedTreeLeaf, IndexedTreeLeafPreimage } from '@aztec/foundation/trees';
@@ -1,5 +1,5 @@
1
1
  import { NULLIFIER_TREE_HEIGHT } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/fields';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { MembershipWitness, SiblingPath } from '@aztec/foundation/trees';
4
4
 
5
5
  import { z } from 'zod';