@aztec/stdlib 0.0.1-commit.fcb71a6 → 0.0.1-commit.ff7989d6c

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 (732) hide show
  1. package/dest/abi/contract_artifact.d.ts +2 -2
  2. package/dest/abi/contract_artifact.d.ts.map +1 -1
  3. package/dest/abi/contract_artifact.js +1 -1
  4. package/dest/abi/function_call.d.ts +47 -9
  5. package/dest/abi/function_call.d.ts.map +1 -1
  6. package/dest/abi/function_call.js +20 -3
  7. package/dest/abi/selector.js +3 -1
  8. package/dest/abi/utils.d.ts +7 -1
  9. package/dest/abi/utils.d.ts.map +1 -1
  10. package/dest/abi/utils.js +7 -0
  11. package/dest/auth_witness/auth_witness.d.ts +2 -1
  12. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  13. package/dest/auth_witness/auth_witness.js +3 -3
  14. package/dest/avm/avm.d.ts +62 -62
  15. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  16. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  17. package/dest/avm/avm_accumulated_data.js +5 -2
  18. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  19. package/dest/avm/avm_circuit_public_inputs.js +3 -1
  20. package/dest/avm/avm_proving_request.d.ts +299 -299
  21. package/dest/avm/contract_storage_read.d.ts +13 -1
  22. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  23. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  24. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  25. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  26. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  27. package/dest/avm/public_data_read.d.ts +10 -1
  28. package/dest/avm/public_data_read.d.ts.map +1 -1
  29. package/dest/avm/public_data_update_request.d.ts +10 -1
  30. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  31. package/dest/avm/public_data_update_request.js +3 -1
  32. package/dest/avm/public_data_write.d.ts +7 -1
  33. package/dest/avm/public_data_write.d.ts.map +1 -1
  34. package/dest/avm/public_inner_call_request.d.ts +4 -1
  35. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  36. package/dest/avm/public_inner_call_request.js +3 -1
  37. package/dest/avm/revert_code.d.ts +4 -4
  38. package/dest/avm/revert_code.d.ts.map +1 -1
  39. package/dest/avm/revert_code.js +3 -1
  40. package/dest/aztec-address/index.js +4 -2
  41. package/dest/block/attestation_info.d.ts +5 -5
  42. package/dest/block/attestation_info.d.ts.map +1 -1
  43. package/dest/block/attestation_info.js +4 -4
  44. package/dest/block/block_data.d.ts +52 -0
  45. package/dest/block/block_data.d.ts.map +1 -0
  46. package/dest/block/block_data.js +12 -0
  47. package/dest/block/block_hash.d.ts +18 -14
  48. package/dest/block/block_hash.d.ts.map +1 -1
  49. package/dest/block/block_hash.js +22 -20
  50. package/dest/block/block_parameter.d.ts +4 -3
  51. package/dest/block/block_parameter.d.ts.map +1 -1
  52. package/dest/block/block_parameter.js +2 -0
  53. package/dest/block/body.d.ts +1 -1
  54. package/dest/block/body.d.ts.map +1 -1
  55. package/dest/block/body.js +5 -2
  56. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  57. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  58. package/dest/block/checkpointed_l2_block.js +7 -45
  59. package/dest/block/in_block.d.ts +9 -9
  60. package/dest/block/in_block.d.ts.map +1 -1
  61. package/dest/block/in_block.js +5 -5
  62. package/dest/block/index.d.ts +2 -3
  63. package/dest/block/index.d.ts.map +1 -1
  64. package/dest/block/index.js +1 -2
  65. package/dest/block/l2_block.d.ts +57 -57
  66. package/dest/block/l2_block.d.ts.map +1 -1
  67. package/dest/block/l2_block.js +64 -108
  68. package/dest/block/l2_block_source.d.ts +317 -68
  69. package/dest/block/l2_block_source.d.ts.map +1 -1
  70. package/dest/block/l2_block_source.js +25 -6
  71. package/dest/block/l2_block_stream/index.d.ts +2 -1
  72. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  73. package/dest/block/l2_block_stream/index.js +1 -0
  74. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  75. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  76. package/dest/block/l2_block_stream/l2_block_stream.d.ts +8 -3
  77. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  78. package/dest/block/l2_block_stream/l2_block_stream.js +106 -31
  79. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  80. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  81. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  82. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  83. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  84. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  85. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  86. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  87. package/dest/block/test/l2_tips_store_test_suite.js +478 -38
  88. package/dest/block/validate_block_result.d.ts +24 -24
  89. package/dest/block/validate_block_result.d.ts.map +1 -1
  90. package/dest/block/validate_block_result.js +18 -17
  91. package/dest/checkpoint/checkpoint.d.ts +43 -19
  92. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  93. package/dest/checkpoint/checkpoint.js +38 -14
  94. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  95. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  96. package/dest/checkpoint/checkpoint_data.js +26 -0
  97. package/dest/checkpoint/checkpoint_info.d.ts +32 -3
  98. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  99. package/dest/checkpoint/checkpoint_info.js +34 -1
  100. package/dest/checkpoint/index.d.ts +3 -1
  101. package/dest/checkpoint/index.d.ts.map +1 -1
  102. package/dest/checkpoint/index.js +2 -0
  103. package/dest/checkpoint/published_checkpoint.d.ts +33 -16
  104. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  105. package/dest/checkpoint/published_checkpoint.js +5 -5
  106. package/dest/config/index.d.ts +2 -1
  107. package/dest/config/index.d.ts.map +1 -1
  108. package/dest/config/index.js +1 -0
  109. package/dest/config/node-rpc-config.js +1 -1
  110. package/dest/config/sequencer-config.d.ts +10 -0
  111. package/dest/config/sequencer-config.d.ts.map +1 -0
  112. package/dest/config/sequencer-config.js +18 -0
  113. package/dest/contract/complete_address.d.ts +4 -1
  114. package/dest/contract/complete_address.d.ts.map +1 -1
  115. package/dest/contract/contract_address.js +4 -4
  116. package/dest/contract/contract_class.d.ts +2 -3
  117. package/dest/contract/contract_class.d.ts.map +1 -1
  118. package/dest/contract/contract_class_id.d.ts +2 -2
  119. package/dest/contract/contract_class_id.d.ts.map +1 -1
  120. package/dest/contract/contract_class_id.js +6 -5
  121. package/dest/contract/contract_deployment_data.d.ts +5 -5
  122. package/dest/contract/index.d.ts +1 -3
  123. package/dest/contract/index.d.ts.map +1 -1
  124. package/dest/contract/index.js +0 -2
  125. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  126. package/dest/contract/interfaces/node-info.d.ts +3 -1
  127. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  128. package/dest/contract/interfaces/node-info.js +2 -1
  129. package/dest/contract/private_function.d.ts +1 -1
  130. package/dest/contract/private_function.d.ts.map +1 -1
  131. package/dest/contract/private_function.js +3 -4
  132. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  133. package/dest/contract/private_function_membership_proof.js +1 -1
  134. package/dest/database-version/database_version.d.ts +58 -0
  135. package/dest/database-version/database_version.d.ts.map +1 -0
  136. package/dest/database-version/database_version.js +69 -0
  137. package/dest/database-version/version_manager.d.ts +3 -49
  138. package/dest/database-version/version_manager.d.ts.map +1 -1
  139. package/dest/database-version/version_manager.js +1 -64
  140. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  141. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  142. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  143. package/dest/deserialization/index.d.ts +11 -0
  144. package/dest/deserialization/index.d.ts.map +1 -0
  145. package/dest/deserialization/index.js +10 -0
  146. package/dest/epoch-helpers/index.d.ts +7 -1
  147. package/dest/epoch-helpers/index.d.ts.map +1 -1
  148. package/dest/epoch-helpers/index.js +9 -3
  149. package/dest/errors/proving_error.d.ts +2 -2
  150. package/dest/errors/proving_error.d.ts.map +1 -1
  151. package/dest/file-store/local.d.ts +3 -3
  152. package/dest/file-store/local.d.ts.map +1 -1
  153. package/dest/file-store/local.js +13 -4
  154. package/dest/file-store/s3.d.ts +1 -1
  155. package/dest/file-store/s3.d.ts.map +1 -1
  156. package/dest/file-store/s3.js +11 -3
  157. package/dest/gas/gas.js +3 -1
  158. package/dest/gas/gas_fees.js +3 -1
  159. package/dest/ha-signing/config.d.ts +101 -0
  160. package/dest/ha-signing/config.d.ts.map +1 -0
  161. package/dest/ha-signing/config.js +92 -0
  162. package/dest/ha-signing/index.d.ts +3 -0
  163. package/dest/ha-signing/index.d.ts.map +1 -0
  164. package/dest/ha-signing/index.js +2 -0
  165. package/dest/ha-signing/types.d.ts +85 -0
  166. package/dest/ha-signing/types.d.ts.map +1 -0
  167. package/dest/ha-signing/types.js +32 -0
  168. package/dest/hash/hash.d.ts +2 -1
  169. package/dest/hash/hash.d.ts.map +1 -1
  170. package/dest/hash/hash.js +16 -10
  171. package/dest/hash/map_slot.d.ts +1 -1
  172. package/dest/hash/map_slot.d.ts.map +1 -1
  173. package/dest/hash/map_slot.js +4 -3
  174. package/dest/interfaces/api_limit.d.ts +3 -1
  175. package/dest/interfaces/api_limit.d.ts.map +1 -1
  176. package/dest/interfaces/api_limit.js +2 -0
  177. package/dest/interfaces/archiver.d.ts +6 -6
  178. package/dest/interfaces/archiver.d.ts.map +1 -1
  179. package/dest/interfaces/archiver.js +27 -17
  180. package/dest/interfaces/aztec-node-admin.d.ts +111 -32
  181. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  182. package/dest/interfaces/aztec-node-admin.js +14 -6
  183. package/dest/interfaces/aztec-node.d.ts +75 -77
  184. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  185. package/dest/interfaces/aztec-node.js +15 -16
  186. package/dest/interfaces/block-builder.d.ts +22 -14
  187. package/dest/interfaces/block-builder.d.ts.map +1 -1
  188. package/dest/interfaces/block-builder.js +7 -0
  189. package/dest/interfaces/configs.d.ts +28 -8
  190. package/dest/interfaces/configs.d.ts.map +1 -1
  191. package/dest/interfaces/configs.js +5 -1
  192. package/dest/interfaces/get_logs_response.d.ts +16 -9
  193. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  194. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  195. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  196. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  197. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  198. package/dest/interfaces/p2p.d.ts +7 -9
  199. package/dest/interfaces/p2p.d.ts.map +1 -1
  200. package/dest/interfaces/p2p.js +3 -4
  201. package/dest/interfaces/prover-broker.d.ts +16 -1
  202. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  203. package/dest/interfaces/prover-broker.js +4 -1
  204. package/dest/interfaces/prover-client.d.ts +15 -1
  205. package/dest/interfaces/prover-client.d.ts.map +1 -1
  206. package/dest/interfaces/prover-client.js +12 -1
  207. package/dest/interfaces/proving-job.d.ts +52 -52
  208. package/dest/interfaces/proving-job.d.ts.map +1 -1
  209. package/dest/interfaces/proving-job.js +1 -7
  210. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  211. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  212. package/dest/interfaces/slasher.d.ts +9 -1
  213. package/dest/interfaces/slasher.d.ts.map +1 -1
  214. package/dest/interfaces/slasher.js +2 -0
  215. package/dest/interfaces/tx_provider.d.ts +3 -3
  216. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  217. package/dest/interfaces/validator.d.ts +155 -19
  218. package/dest/interfaces/validator.d.ts.map +1 -1
  219. package/dest/interfaces/validator.js +8 -3
  220. package/dest/kernel/claimed_length_array.js +3 -1
  221. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  222. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  223. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  224. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  225. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  226. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  227. package/dest/kernel/hints/index.d.ts +2 -2
  228. package/dest/kernel/hints/index.js +2 -2
  229. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  230. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  231. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  232. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  233. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  234. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  235. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  236. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  237. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  238. package/dest/kernel/hints/read_request.d.ts +7 -1
  239. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  240. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  241. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  242. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  243. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  244. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  245. package/dest/kernel/hints/transient_data_squashing_hint.js +3 -1
  246. package/dest/kernel/log_hash.js +3 -1
  247. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  248. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  249. package/dest/kernel/private_call_data.d.ts +25 -1
  250. package/dest/kernel/private_call_data.d.ts.map +1 -1
  251. package/dest/kernel/private_call_request.d.ts +16 -1
  252. package/dest/kernel/private_call_request.d.ts.map +1 -1
  253. package/dest/kernel/private_circuit_public_inputs.d.ts +81 -8
  254. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  255. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  256. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +33 -3
  257. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  258. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  259. package/dest/kernel/private_kernel_data.d.ts +7 -1
  260. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  261. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  262. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  263. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  264. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  265. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  266. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  267. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +12 -3
  268. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  269. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  270. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +25 -3
  271. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  272. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
  273. package/dest/kernel/private_log_data.js +5 -2
  274. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  275. package/dest/kernel/private_to_avm_accumulated_data.js +5 -2
  276. package/dest/kernel/private_to_public_accumulated_data.js +3 -1
  277. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  278. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  279. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  280. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  281. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  282. package/dest/kernel/private_to_rollup_accumulated_data.js +3 -1
  283. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +18 -3
  284. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  285. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  286. package/dest/kernel/private_validation_requests.d.ts +13 -4
  287. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  288. package/dest/kernel/private_validation_requests.js +12 -10
  289. package/dest/kernel/public_call_request.d.ts +22 -1
  290. package/dest/kernel/public_call_request.d.ts.map +1 -1
  291. package/dest/kernel/public_call_request.js +5 -2
  292. package/dest/kernel/utils/optional_number.d.ts +7 -1
  293. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  294. package/dest/keys/derivation.d.ts +3 -3
  295. package/dest/keys/derivation.js +15 -15
  296. package/dest/keys/key_types.d.ts +3 -3
  297. package/dest/keys/key_types.d.ts.map +1 -1
  298. package/dest/keys/public_keys.d.ts +5 -1
  299. package/dest/keys/public_keys.d.ts.map +1 -1
  300. package/dest/keys/public_keys.js +2 -2
  301. package/dest/keys/utils.d.ts +1 -1
  302. package/dest/keys/utils.d.ts.map +1 -1
  303. package/dest/keys/utils.js +8 -4
  304. package/dest/l1-contracts/slash_factory.d.ts +1 -1
  305. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  306. package/dest/l1-contracts/slash_factory.js +1 -0
  307. package/dest/logs/contract_class_log.js +3 -1
  308. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  309. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  310. package/dest/logs/extended_public_log.d.ts +17 -9
  311. package/dest/logs/extended_public_log.d.ts.map +1 -1
  312. package/dest/logs/log_id.d.ts +21 -14
  313. package/dest/logs/log_id.d.ts.map +1 -1
  314. package/dest/logs/log_id.js +20 -17
  315. package/dest/logs/private_log.d.ts +2 -2
  316. package/dest/logs/private_log.d.ts.map +1 -1
  317. package/dest/logs/private_log.js +3 -1
  318. package/dest/logs/public_log.js +3 -1
  319. package/dest/logs/siloed_tag.d.ts +1 -1
  320. package/dest/logs/siloed_tag.d.ts.map +1 -1
  321. package/dest/logs/siloed_tag.js +2 -5
  322. package/dest/messaging/in_hash.d.ts +4 -2
  323. package/dest/messaging/in_hash.d.ts.map +1 -1
  324. package/dest/messaging/in_hash.js +3 -1
  325. package/dest/messaging/inbox_leaf.d.ts +3 -1
  326. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  327. package/dest/messaging/l1_actor.d.ts +7 -1
  328. package/dest/messaging/l1_actor.d.ts.map +1 -1
  329. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  330. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  331. package/dest/messaging/l2_actor.d.ts +7 -1
  332. package/dest/messaging/l2_actor.d.ts.map +1 -1
  333. package/dest/messaging/l2_to_l1_membership.d.ts +88 -6
  334. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  335. package/dest/messaging/l2_to_l1_membership.js +160 -42
  336. package/dest/messaging/out_hash.d.ts +41 -3
  337. package/dest/messaging/out_hash.d.ts.map +1 -1
  338. package/dest/messaging/out_hash.js +54 -19
  339. package/dest/note/index.d.ts +1 -2
  340. package/dest/note/index.d.ts.map +1 -1
  341. package/dest/note/index.js +0 -1
  342. package/dest/note/note_dao.d.ts +36 -5
  343. package/dest/note/note_dao.d.ts.map +1 -1
  344. package/dest/note/note_dao.js +15 -12
  345. package/dest/p2p/attestation_utils.d.ts +3 -3
  346. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  347. package/dest/p2p/attestation_utils.js +1 -1
  348. package/dest/p2p/block_proposal.d.ts +102 -23
  349. package/dest/p2p/block_proposal.d.ts.map +1 -1
  350. package/dest/p2p/block_proposal.js +138 -39
  351. package/dest/p2p/checkpoint_attestation.d.ts +82 -0
  352. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  353. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  354. package/dest/p2p/checkpoint_proposal.d.ts +179 -0
  355. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  356. package/dest/p2p/checkpoint_proposal.js +243 -0
  357. package/dest/p2p/consensus_payload.d.ts +20 -11
  358. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  359. package/dest/p2p/consensus_payload.js +24 -19
  360. package/dest/p2p/constants.d.ts +5 -0
  361. package/dest/p2p/constants.d.ts.map +1 -0
  362. package/dest/p2p/constants.js +3 -0
  363. package/dest/p2p/gossipable.d.ts +4 -3
  364. package/dest/p2p/gossipable.d.ts.map +1 -1
  365. package/dest/p2p/gossipable.js +16 -5
  366. package/dest/p2p/index.d.ts +5 -2
  367. package/dest/p2p/index.d.ts.map +1 -1
  368. package/dest/p2p/index.js +4 -1
  369. package/dest/p2p/message_validator.d.ts +18 -3
  370. package/dest/p2p/message_validator.d.ts.map +1 -1
  371. package/dest/p2p/message_validator.js +2 -1
  372. package/dest/p2p/signature_utils.d.ts +5 -3
  373. package/dest/p2p/signature_utils.d.ts.map +1 -1
  374. package/dest/p2p/signature_utils.js +3 -1
  375. package/dest/p2p/signed_txs.d.ts +42 -0
  376. package/dest/p2p/signed_txs.d.ts.map +1 -0
  377. package/dest/p2p/signed_txs.js +75 -0
  378. package/dest/p2p/topic_type.d.ts +3 -2
  379. package/dest/p2p/topic_type.d.ts.map +1 -1
  380. package/dest/p2p/topic_type.js +10 -3
  381. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  382. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  383. package/dest/parity/parity_public_inputs.d.ts +4 -1
  384. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  385. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  386. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  387. package/dest/proofs/chonk_proof.d.ts +1 -1
  388. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  389. package/dest/proofs/chonk_proof.js +9 -4
  390. package/dest/proofs/proof.d.ts +4 -1
  391. package/dest/proofs/proof.d.ts.map +1 -1
  392. package/dest/proofs/recursive_proof.d.ts +10 -1
  393. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  394. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  395. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  396. package/dest/rollup/block_constant_data.d.ts +12 -1
  397. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  398. package/dest/rollup/block_headers_hash.js +1 -1
  399. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  400. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  401. package/dest/rollup/block_rollup_public_inputs.d.ts +47 -11
  402. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  403. package/dest/rollup/block_rollup_public_inputs.js +8 -12
  404. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  405. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  406. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  407. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  408. package/dest/rollup/checkpoint_constant_data.js +3 -1
  409. package/dest/rollup/checkpoint_header.d.ts +43 -13
  410. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  411. package/dest/rollup/checkpoint_header.js +50 -20
  412. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  413. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  414. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +46 -6
  415. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  416. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -3
  417. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  418. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  419. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  420. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  421. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  422. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  423. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  424. package/dest/rollup/root_rollup_public_inputs.d.ts +21 -6
  425. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  426. package/dest/rollup/root_rollup_public_inputs.js +10 -4
  427. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  428. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  429. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  430. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  431. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  432. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  433. package/dest/schemas/schemas.d.ts +1 -1
  434. package/dest/slashing/empire.d.ts +1 -1
  435. package/dest/slashing/empire.d.ts.map +1 -1
  436. package/dest/slashing/empire.js +2 -0
  437. package/dest/slashing/helpers.d.ts +2 -2
  438. package/dest/slashing/helpers.d.ts.map +1 -1
  439. package/dest/slashing/helpers.js +6 -0
  440. package/dest/slashing/tally.d.ts +2 -1
  441. package/dest/slashing/tally.d.ts.map +1 -1
  442. package/dest/slashing/tally.js +6 -2
  443. package/dest/slashing/types.d.ts +7 -3
  444. package/dest/slashing/types.d.ts.map +1 -1
  445. package/dest/slashing/types.js +13 -1
  446. package/dest/stats/stats.d.ts +1 -3
  447. package/dest/stats/stats.d.ts.map +1 -1
  448. package/dest/tests/factories.d.ts +16 -10
  449. package/dest/tests/factories.d.ts.map +1 -1
  450. package/dest/tests/factories.js +71 -36
  451. package/dest/tests/jest.js +1 -1
  452. package/dest/tests/mocks.d.ts +77 -19
  453. package/dest/tests/mocks.d.ts.map +1 -1
  454. package/dest/tests/mocks.js +133 -62
  455. package/dest/timetable/index.d.ts +37 -0
  456. package/dest/timetable/index.d.ts.map +1 -0
  457. package/dest/timetable/index.js +39 -0
  458. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  459. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  460. package/dest/trees/append_only_tree_snapshot.js +3 -1
  461. package/dest/trees/nullifier_leaf.d.ts +13 -1
  462. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  463. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  464. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  465. package/dest/trees/public_data_leaf.d.ts +17 -1
  466. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  467. package/dest/trees/public_data_leaf.js +7 -6
  468. package/dest/trees/public_data_witness.d.ts +11 -1
  469. package/dest/trees/public_data_witness.d.ts.map +1 -1
  470. package/dest/tx/block_header.d.ts +14 -2
  471. package/dest/tx/block_header.d.ts.map +1 -1
  472. package/dest/tx/block_header.js +9 -3
  473. package/dest/tx/call_context.d.ts +13 -1
  474. package/dest/tx/call_context.d.ts.map +1 -1
  475. package/dest/tx/call_context.js +3 -1
  476. package/dest/tx/capsule.d.ts +4 -1
  477. package/dest/tx/capsule.d.ts.map +1 -1
  478. package/dest/tx/execution_payload.d.ts +9 -1
  479. package/dest/tx/execution_payload.d.ts.map +1 -1
  480. package/dest/tx/function_data.d.ts +4 -2
  481. package/dest/tx/function_data.d.ts.map +1 -1
  482. package/dest/tx/global_variable_builder.d.ts +2 -2
  483. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  484. package/dest/tx/global_variables.d.ts +12 -4
  485. package/dest/tx/global_variables.d.ts.map +1 -1
  486. package/dest/tx/global_variables.js +3 -1
  487. package/dest/tx/hashed_values.d.ts +7 -1
  488. package/dest/tx/hashed_values.d.ts.map +1 -1
  489. package/dest/tx/in_tx.d.ts +4 -4
  490. package/dest/tx/index.d.ts +1 -2
  491. package/dest/tx/index.d.ts.map +1 -1
  492. package/dest/tx/index.js +0 -1
  493. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  494. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  495. package/dest/tx/indexed_tx_effect.js +3 -2
  496. package/dest/tx/partial_state_reference.d.ts +4 -1
  497. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  498. package/dest/tx/private_execution_result.d.ts +23 -6
  499. package/dest/tx/private_execution_result.d.ts.map +1 -1
  500. package/dest/tx/private_execution_result.js +4 -21
  501. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  502. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  503. package/dest/tx/profiling.d.ts +152 -29
  504. package/dest/tx/profiling.d.ts.map +1 -1
  505. package/dest/tx/profiling.js +47 -10
  506. package/dest/tx/protocol_contracts.d.ts +2 -2
  507. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  508. package/dest/tx/protocol_contracts.js +2 -2
  509. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  510. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  511. package/dest/tx/public_call_request_with_calldata.js +3 -1
  512. package/dest/tx/public_simulation_output.d.ts +4 -2
  513. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  514. package/dest/tx/public_simulation_output.js +7 -3
  515. package/dest/tx/state_reference.d.ts +3 -1
  516. package/dest/tx/state_reference.d.ts.map +1 -1
  517. package/dest/tx/state_reference.js +3 -1
  518. package/dest/tx/tree_snapshots.js +3 -1
  519. package/dest/tx/tx.d.ts +24 -1
  520. package/dest/tx/tx.d.ts.map +1 -1
  521. package/dest/tx/tx.js +9 -4
  522. package/dest/tx/tx_context.d.ts +2 -1
  523. package/dest/tx/tx_context.d.ts.map +1 -1
  524. package/dest/tx/tx_effect.d.ts +32 -6
  525. package/dest/tx/tx_effect.d.ts.map +1 -1
  526. package/dest/tx/tx_effect.js +3 -8
  527. package/dest/tx/tx_execution_request.d.ts +30 -1
  528. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  529. package/dest/tx/tx_execution_request.js +6 -2
  530. package/dest/tx/tx_hash.d.ts +2 -1
  531. package/dest/tx/tx_hash.d.ts.map +1 -1
  532. package/dest/tx/tx_receipt.d.ts +47 -13
  533. package/dest/tx/tx_receipt.d.ts.map +1 -1
  534. package/dest/tx/tx_receipt.js +46 -15
  535. package/dest/tx/tx_request.d.ts +6 -1
  536. package/dest/tx/tx_request.d.ts.map +1 -1
  537. package/dest/tx/tx_request.js +2 -2
  538. package/dest/tx/validator/empty_validator.d.ts +2 -2
  539. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  540. package/dest/tx/validator/error_texts.d.ts +3 -2
  541. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  542. package/dest/tx/validator/error_texts.js +3 -1
  543. package/dest/tx/validator/tx_validator.d.ts +2 -2
  544. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  545. package/dest/types/shared.d.ts +4 -1
  546. package/dest/types/shared.d.ts.map +1 -1
  547. package/dest/validators/schemas.d.ts +38 -38
  548. package/dest/validators/schemas.d.ts.map +1 -1
  549. package/dest/validators/schemas.js +4 -3
  550. package/dest/validators/types.d.ts +3 -3
  551. package/dest/validators/types.d.ts.map +1 -1
  552. package/dest/vks/verification_key.d.ts +22 -1
  553. package/dest/vks/verification_key.d.ts.map +1 -1
  554. package/dest/vks/vk_data.d.ts +7 -1
  555. package/dest/vks/vk_data.d.ts.map +1 -1
  556. package/dest/zkpassport/index.d.ts +3 -4
  557. package/dest/zkpassport/index.d.ts.map +1 -1
  558. package/dest/zkpassport/index.js +9 -9
  559. package/package.json +27 -13
  560. package/src/abi/contract_artifact.ts +10 -10
  561. package/src/abi/function_call.ts +25 -3
  562. package/src/abi/utils.ts +17 -0
  563. package/src/auth_witness/auth_witness.ts +3 -3
  564. package/src/block/attestation_info.ts +9 -6
  565. package/src/block/block_data.ts +26 -0
  566. package/src/block/block_hash.ts +26 -25
  567. package/src/block/block_parameter.ts +4 -2
  568. package/src/block/body.ts +2 -1
  569. package/src/block/checkpointed_l2_block.ts +8 -58
  570. package/src/block/in_block.ts +6 -6
  571. package/src/block/index.ts +1 -2
  572. package/src/block/l2_block.ts +102 -149
  573. package/src/block/l2_block_source.ts +145 -44
  574. package/src/block/l2_block_stream/index.ts +1 -0
  575. package/src/block/l2_block_stream/interfaces.ts +15 -4
  576. package/src/block/l2_block_stream/l2_block_stream.ts +130 -39
  577. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  578. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  579. package/src/block/test/l2_tips_store_test_suite.ts +480 -36
  580. package/src/block/validate_block_result.ts +40 -35
  581. package/src/checkpoint/checkpoint.ts +62 -21
  582. package/src/checkpoint/checkpoint_data.ts +51 -0
  583. package/src/checkpoint/checkpoint_info.ts +45 -2
  584. package/src/checkpoint/index.ts +2 -0
  585. package/src/checkpoint/published_checkpoint.ts +7 -4
  586. package/src/config/index.ts +1 -0
  587. package/src/config/node-rpc-config.ts +1 -1
  588. package/src/config/sequencer-config.ts +29 -0
  589. package/src/contract/contract_address.ts +4 -4
  590. package/src/contract/contract_class.ts +3 -3
  591. package/src/contract/contract_class_id.ts +6 -5
  592. package/src/contract/index.ts +0 -2
  593. package/src/contract/interfaces/node-info.ts +3 -0
  594. package/src/contract/private_function.ts +3 -4
  595. package/src/contract/private_function_membership_proof.ts +1 -1
  596. package/src/database-version/database_version.ts +87 -0
  597. package/src/database-version/version_manager.ts +1 -77
  598. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  599. package/src/deserialization/index.ts +21 -0
  600. package/src/epoch-helpers/index.ts +13 -1
  601. package/src/file-store/local.ts +15 -5
  602. package/src/file-store/s3.ts +12 -3
  603. package/src/ha-signing/config.ts +149 -0
  604. package/src/ha-signing/index.ts +18 -0
  605. package/src/ha-signing/types.ts +112 -0
  606. package/src/hash/hash.ts +14 -10
  607. package/src/hash/map_slot.ts +3 -2
  608. package/src/interfaces/api_limit.ts +2 -0
  609. package/src/interfaces/archiver.ts +31 -24
  610. package/src/interfaces/aztec-node-admin.ts +31 -4
  611. package/src/interfaces/aztec-node.ts +110 -129
  612. package/src/interfaces/block-builder.ts +41 -23
  613. package/src/interfaces/configs.ts +15 -1
  614. package/src/interfaces/l2_logs_source.ts +17 -4
  615. package/src/interfaces/merkle_tree_operations.ts +1 -1
  616. package/src/interfaces/p2p.ts +8 -12
  617. package/src/interfaces/prover-broker.ts +22 -0
  618. package/src/interfaces/prover-client.ts +22 -0
  619. package/src/interfaces/proving-job.ts +2 -11
  620. package/src/interfaces/server_circuit_prover.ts +3 -2
  621. package/src/interfaces/slasher.ts +4 -0
  622. package/src/interfaces/tx_provider.ts +2 -2
  623. package/src/interfaces/validator.ts +73 -15
  624. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  625. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  626. package/src/kernel/hints/index.ts +2 -2
  627. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  628. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  629. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  630. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  631. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  632. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
  633. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  634. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  635. package/src/kernel/private_validation_requests.ts +8 -8
  636. package/src/keys/derivation.ts +15 -15
  637. package/src/keys/key_types.ts +6 -2
  638. package/src/keys/public_keys.ts +2 -2
  639. package/src/keys/utils.ts +8 -4
  640. package/src/l1-contracts/slash_factory.ts +1 -0
  641. package/src/logs/log_id.ts +22 -18
  642. package/src/logs/siloed_tag.ts +2 -2
  643. package/src/messaging/in_hash.ts +3 -1
  644. package/src/messaging/l2_to_l1_membership.ts +178 -52
  645. package/src/messaging/out_hash.ts +62 -21
  646. package/src/note/index.ts +0 -1
  647. package/src/note/note_dao.ts +18 -13
  648. package/src/p2p/attestation_utils.ts +3 -3
  649. package/src/p2p/block_proposal.ts +211 -46
  650. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +36 -25
  651. package/src/p2p/checkpoint_proposal.ts +387 -0
  652. package/src/p2p/consensus_payload.ts +29 -18
  653. package/src/p2p/constants.ts +6 -0
  654. package/src/p2p/gossipable.ts +14 -4
  655. package/src/p2p/index.ts +4 -1
  656. package/src/p2p/message_validator.ts +14 -2
  657. package/src/p2p/signature_utils.ts +3 -1
  658. package/src/p2p/signed_txs.ts +88 -0
  659. package/src/p2p/topic_type.ts +4 -3
  660. package/src/proofs/chonk_proof.ts +9 -5
  661. package/src/rollup/block_headers_hash.ts +1 -1
  662. package/src/rollup/block_rollup_public_inputs.ts +5 -11
  663. package/src/rollup/checkpoint_header.ts +64 -21
  664. package/src/rollup/checkpoint_rollup_public_inputs.ts +17 -5
  665. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  666. package/src/rollup/root_rollup_public_inputs.ts +16 -7
  667. package/src/slashing/empire.ts +3 -1
  668. package/src/slashing/helpers.ts +8 -0
  669. package/src/slashing/tally.ts +8 -2
  670. package/src/slashing/types.ts +14 -0
  671. package/src/stats/stats.ts +0 -2
  672. package/src/tests/factories.ts +70 -54
  673. package/src/tests/jest.ts +1 -1
  674. package/src/tests/mocks.ts +228 -95
  675. package/src/timetable/index.ts +66 -0
  676. package/src/trees/public_data_leaf.ts +11 -5
  677. package/src/tx/block_header.ts +12 -4
  678. package/src/tx/global_variable_builder.ts +1 -1
  679. package/src/tx/global_variables.ts +3 -3
  680. package/src/tx/index.ts +0 -1
  681. package/src/tx/indexed_tx_effect.ts +3 -2
  682. package/src/tx/private_execution_result.ts +1 -16
  683. package/src/tx/profiling.ts +51 -9
  684. package/src/tx/protocol_contracts.ts +2 -2
  685. package/src/tx/public_simulation_output.ts +4 -0
  686. package/src/tx/tx.ts +10 -9
  687. package/src/tx/tx_effect.ts +0 -9
  688. package/src/tx/tx_execution_request.ts +2 -0
  689. package/src/tx/tx_receipt.ts +75 -18
  690. package/src/tx/tx_request.ts +2 -2
  691. package/src/tx/validator/empty_validator.ts +1 -1
  692. package/src/tx/validator/error_texts.ts +4 -1
  693. package/src/tx/validator/tx_validator.ts +1 -1
  694. package/src/validators/schemas.ts +8 -1
  695. package/src/validators/types.ts +5 -4
  696. package/src/zkpassport/index.ts +11 -12
  697. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  698. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  699. package/dest/block/l2_block_code_to_purge.js +0 -61
  700. package/dest/block/l2_block_header.d.ts +0 -98
  701. package/dest/block/l2_block_header.d.ts.map +0 -1
  702. package/dest/block/l2_block_header.js +0 -153
  703. package/dest/block/l2_block_new.d.ts +0 -135
  704. package/dest/block/l2_block_new.d.ts.map +0 -1
  705. package/dest/block/l2_block_new.js +0 -152
  706. package/dest/contract/contract_class_metadata.d.ts +0 -8
  707. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  708. package/dest/contract/contract_class_metadata.js +0 -1
  709. package/dest/contract/contract_metadata.d.ts +0 -7
  710. package/dest/contract/contract_metadata.d.ts.map +0 -1
  711. package/dest/contract/contract_metadata.js +0 -1
  712. package/dest/database-version/index.d.ts +0 -2
  713. package/dest/database-version/index.d.ts.map +0 -1
  714. package/dest/database-version/index.js +0 -1
  715. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -25
  716. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  717. package/dest/note/notes_filter.d.ts +0 -27
  718. package/dest/note/notes_filter.d.ts.map +0 -1
  719. package/dest/note/notes_filter.js +0 -11
  720. package/dest/p2p/block_attestation.d.ts +0 -80
  721. package/dest/p2p/block_attestation.d.ts.map +0 -1
  722. package/dest/tx/content_commitment.d.ts +0 -49
  723. package/dest/tx/content_commitment.d.ts.map +0 -1
  724. package/dest/tx/content_commitment.js +0 -90
  725. package/src/block/l2_block_code_to_purge.ts +0 -88
  726. package/src/block/l2_block_header.ts +0 -246
  727. package/src/block/l2_block_new.ts +0 -207
  728. package/src/contract/contract_class_metadata.ts +0 -8
  729. package/src/contract/contract_metadata.ts +0 -7
  730. package/src/database-version/index.ts +0 -1
  731. package/src/note/notes_filter.ts +0 -38
  732. package/src/tx/content_commitment.ts +0 -113
@@ -5,57 +5,62 @@ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
 
6
6
  import { z } from 'zod';
7
7
 
8
- import { BlockInfoSchema, type L2BlockInfo, deserializeBlockInfo, serializeBlockInfo } from './l2_block_info.js';
8
+ import {
9
+ type CheckpointInfo,
10
+ CheckpointInfoSchema,
11
+ deserializeCheckpointInfo,
12
+ serializeCheckpointInfo,
13
+ } from '../checkpoint/checkpoint_info.js';
14
+ import { MAX_COMMITTEE_SIZE } from '../deserialization/index.js';
9
15
  import { CommitteeAttestation } from './proposal/committee_attestation.js';
10
16
 
11
- /** Subtype for invalid block validation results */
12
- export type ValidateBlockNegativeResult =
17
+ /** Subtype for invalid checkpoint validation results */
18
+ export type ValidateCheckpointNegativeResult =
13
19
  | {
14
20
  valid: false;
15
- /** Identifiers from the invalid block */
16
- block: L2BlockInfo;
17
- /** Committee members at the epoch this block was proposed */
21
+ /** Identifiers from the invalid checkpoint */
22
+ checkpoint: CheckpointInfo;
23
+ /** Committee members at the epoch this checkpoint was proposed */
18
24
  committee: EthAddress[];
19
- /** Epoch in which this block was proposed */
25
+ /** Epoch in which this checkpoint was proposed */
20
26
  epoch: EpochNumber;
21
27
  /** Proposer selection seed for the epoch */
22
28
  seed: bigint;
23
- /** List of committee members who signed this block proposal */
29
+ /** List of committee members who signed this checkpoint proposal */
24
30
  attestors: EthAddress[];
25
- /** Committee attestations for this block as they were posted to L1 */
31
+ /** Committee attestations for this checkpoint as they were posted to L1 */
26
32
  attestations: CommitteeAttestation[];
27
- /** Reason for the block being invalid: not enough attestations were posted */
33
+ /** Reason for the checkpoint being invalid: not enough attestations were posted */
28
34
  reason: 'insufficient-attestations';
29
35
  }
30
36
  | {
31
37
  valid: false;
32
- /** Identifiers from the invalid block */
33
- block: L2BlockInfo;
34
- /** Committee members at the epoch this block was proposed */
38
+ /** Identifiers from the invalid checkpoint */
39
+ checkpoint: CheckpointInfo;
40
+ /** Committee members at the epoch this checkpoint was proposed */
35
41
  committee: EthAddress[];
36
- /** Epoch in which this block was proposed */
42
+ /** Epoch in which this checkpoint was proposed */
37
43
  epoch: EpochNumber;
38
44
  /** Proposer selection seed for the epoch */
39
45
  seed: bigint;
40
- /** List of committee members who signed this block proposal */
46
+ /** List of committee members who signed this checkpoint proposal */
41
47
  attestors: EthAddress[];
42
- /** Committee attestations for this block as they were posted to L1 */
48
+ /** Committee attestations for this checkpoint as they were posted to L1 */
43
49
  attestations: CommitteeAttestation[];
44
- /** Reason for the block being invalid: an invalid attestation was posted */
50
+ /** Reason for the checkpoint being invalid: an invalid attestation was posted */
45
51
  reason: 'invalid-attestation';
46
52
  /** Index in the attestations array of the invalid attestation posted */
47
53
  invalidIndex: number;
48
54
  };
49
55
 
50
- // TODO: Rename to ValidateAttestationsResult
51
- /** Result type for validating a block attestations */
52
- export type ValidateBlockResult = { valid: true } | ValidateBlockNegativeResult;
56
+ /** Result type for validating checkpoint attestations */
57
+ export type ValidateCheckpointResult = { valid: true } | ValidateCheckpointNegativeResult;
53
58
 
54
- export const ValidateBlockResultSchema: ZodFor<ValidateBlockResult> = z.union([
59
+ export const ValidateCheckpointResultSchema: ZodFor<ValidateCheckpointResult> = z.union([
55
60
  z.object({ valid: z.literal(true) }),
56
61
  z.object({
57
62
  valid: z.literal(false),
58
- block: BlockInfoSchema,
63
+ checkpoint: CheckpointInfoSchema,
59
64
  committee: z.array(schemas.EthAddress),
60
65
  epoch: EpochNumberSchema,
61
66
  seed: schemas.BigInt,
@@ -65,7 +70,7 @@ export const ValidateBlockResultSchema: ZodFor<ValidateBlockResult> = z.union([
65
70
  }),
66
71
  z.object({
67
72
  valid: z.literal(false),
68
- block: BlockInfoSchema,
73
+ checkpoint: CheckpointInfoSchema,
69
74
  committee: z.array(schemas.EthAddress),
70
75
  epoch: EpochNumberSchema,
71
76
  seed: schemas.BigInt,
@@ -76,17 +81,17 @@ export const ValidateBlockResultSchema: ZodFor<ValidateBlockResult> = z.union([
76
81
  }),
77
82
  ]);
78
83
 
79
- export function serializeValidateBlockResult(result: ValidateBlockResult): Buffer {
84
+ export function serializeValidateCheckpointResult(result: ValidateCheckpointResult): Buffer {
80
85
  if (result.valid) {
81
86
  return serializeToBuffer(true);
82
87
  }
83
88
 
84
- const l2Block = serializeBlockInfo(result.block);
89
+ const checkpointBuffer = serializeCheckpointInfo(result.checkpoint);
85
90
  return serializeToBuffer(
86
91
  result.valid,
87
92
  result.reason,
88
- l2Block.length,
89
- l2Block,
93
+ checkpointBuffer.length,
94
+ checkpointBuffer,
90
95
  result.committee.length,
91
96
  result.committee,
92
97
  result.epoch,
@@ -99,24 +104,24 @@ export function serializeValidateBlockResult(result: ValidateBlockResult): Buffe
99
104
  );
100
105
  }
101
106
 
102
- export function deserializeValidateBlockResult(bufferOrReader: Buffer | BufferReader): ValidateBlockResult {
107
+ export function deserializeValidateCheckpointResult(bufferOrReader: Buffer | BufferReader): ValidateCheckpointResult {
103
108
  const reader = BufferReader.asReader(bufferOrReader);
104
109
  const valid = reader.readBoolean();
105
110
  if (valid) {
106
111
  return { valid };
107
112
  }
108
- const reason = reader.readString() as 'insufficient-attestations' | 'invalid-attestation';
109
- const block = deserializeBlockInfo(reader.readBuffer());
110
- const committee = reader.readVector(EthAddress);
113
+ const reason = reader.readString(64) as 'insufficient-attestations' | 'invalid-attestation';
114
+ const checkpoint = deserializeCheckpointInfo(reader.readBuffer());
115
+ const committee = reader.readVector(EthAddress, MAX_COMMITTEE_SIZE);
111
116
  const epoch = EpochNumber(reader.readNumber());
112
117
  const seed = reader.readBigInt();
113
- const attestors = reader.readVector(EthAddress);
114
- const attestations = reader.readVector(CommitteeAttestation);
118
+ const attestors = reader.readVector(EthAddress, MAX_COMMITTEE_SIZE);
119
+ const attestations = reader.readVector(CommitteeAttestation, MAX_COMMITTEE_SIZE);
115
120
  const invalidIndex = reader.readNumber();
116
121
  if (reason === 'insufficient-attestations') {
117
- return { valid, reason, block, committee, epoch, seed, attestors, attestations: attestations };
122
+ return { valid, reason, checkpoint, committee, epoch, seed, attestors, attestations };
118
123
  } else if (reason === 'invalid-attestation') {
119
- return { valid, reason, block, committee, epoch, seed, attestors, invalidIndex, attestations: attestations };
124
+ return { valid, reason, checkpoint, committee, epoch, seed, attestors, invalidIndex, attestations };
120
125
  } else {
121
126
  const _: never = reason;
122
127
  throw new Error(`Unknown reason: ${reason}`);
@@ -1,17 +1,28 @@
1
1
  import { encodeCheckpointBlobDataFromBlocks } from '@aztec/blob-lib/encoding';
2
- import { BlockNumber, CheckpointNumber, CheckpointNumberSchema } from '@aztec/foundation/branded-types';
2
+ import {
3
+ BlockNumber,
4
+ CheckpointNumber,
5
+ CheckpointNumberSchema,
6
+ IndexWithinCheckpoint,
7
+ SlotNumber,
8
+ } from '@aztec/foundation/branded-types';
3
9
  import { sum } from '@aztec/foundation/collection';
4
10
  import { Fr } from '@aztec/foundation/curves/bn254';
5
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
11
+ import { BufferReader, serializeSignedBigInt, serializeToBuffer } from '@aztec/foundation/serialize';
6
12
  import type { FieldsOf } from '@aztec/foundation/types';
7
13
 
8
14
  import { z } from 'zod';
9
15
 
10
- import { L2BlockNew } from '../block/l2_block_new.js';
16
+ import { L2Block } from '../block/l2_block.js';
17
+ import { MAX_BLOCKS_PER_CHECKPOINT } from '../deserialization/index.js';
18
+ import { computeCheckpointOutHash } from '../messaging/out_hash.js';
11
19
  import { CheckpointHeader } from '../rollup/checkpoint_header.js';
20
+ import { schemas } from '../schemas/schemas.js';
12
21
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
13
22
  import type { CheckpointInfo } from './checkpoint_info.js';
14
23
 
24
+ type FieldsOfCheckpoint = Omit<FieldsOf<Checkpoint>, 'slot'>;
25
+
15
26
  export class Checkpoint {
16
27
  constructor(
17
28
  /** Snapshot of archive tree after the checkpoint is added. */
@@ -19,42 +30,59 @@ export class Checkpoint {
19
30
  /** Header of the checkpoint. */
20
31
  public header: CheckpointHeader,
21
32
  /** L2 blocks in the checkpoint. */
22
- public blocks: L2BlockNew[],
33
+ public blocks: L2Block[],
23
34
  /** Number of the checkpoint. */
24
35
  public number: CheckpointNumber,
36
+ /** Fee asset price modifier in basis points (from oracle). Defaults to 0 (no change). */
37
+ public feeAssetPriceModifier: bigint = 0n,
25
38
  ) {}
26
39
 
40
+ get slot(): SlotNumber {
41
+ return this.header.slotNumber;
42
+ }
43
+
27
44
  static get schema() {
28
45
  return z
29
46
  .object({
30
47
  archive: AppendOnlyTreeSnapshot.schema,
31
48
  header: CheckpointHeader.schema,
32
- blocks: z.array(L2BlockNew.schema),
49
+ blocks: z.array(L2Block.schema),
33
50
  number: CheckpointNumberSchema,
51
+ feeAssetPriceModifier: schemas.BigInt,
34
52
  })
35
- .transform(({ archive, header, blocks, number }) => new Checkpoint(archive, header, blocks, number));
53
+ .transform(
54
+ ({ archive, header, blocks, number, feeAssetPriceModifier }) =>
55
+ new Checkpoint(archive, header, blocks, number, feeAssetPriceModifier),
56
+ );
36
57
  }
37
58
 
38
- static from(fields: FieldsOf<Checkpoint>) {
59
+ static from(fields: FieldsOfCheckpoint) {
39
60
  return new Checkpoint(...Checkpoint.getFields(fields));
40
61
  }
41
62
 
42
- static getFields(fields: FieldsOf<Checkpoint>) {
43
- return [fields.archive, fields.header, fields.blocks, fields.number] as const;
63
+ static getFields(fields: FieldsOfCheckpoint) {
64
+ return [fields.archive, fields.header, fields.blocks, fields.number, fields.feeAssetPriceModifier] as const;
44
65
  }
45
66
 
46
67
  static fromBuffer(buf: Buffer | BufferReader) {
47
68
  const reader = BufferReader.asReader(buf);
48
- return new Checkpoint(
49
- reader.readObject(AppendOnlyTreeSnapshot),
50
- reader.readObject(CheckpointHeader),
51
- reader.readVector(L2BlockNew),
52
- CheckpointNumber(reader.readNumber()),
53
- );
69
+ const archive = reader.readObject(AppendOnlyTreeSnapshot);
70
+ const header = reader.readObject(CheckpointHeader);
71
+ const blocks = reader.readVector(L2Block, MAX_BLOCKS_PER_CHECKPOINT);
72
+ const number = CheckpointNumber(reader.readNumber());
73
+ const feeAssetPriceModifier = reader.readInt256();
74
+ return new Checkpoint(archive, header, blocks, number, feeAssetPriceModifier);
54
75
  }
55
76
 
56
77
  public toBuffer() {
57
- return serializeToBuffer(this.archive, this.header, this.blocks.length, this.blocks, this.number);
78
+ return serializeToBuffer(
79
+ this.archive,
80
+ this.header,
81
+ this.blocks.length,
82
+ this.blocks,
83
+ this.number,
84
+ serializeSignedBigInt(this.feeAssetPriceModifier),
85
+ );
58
86
  }
59
87
 
60
88
  public toBlobFields(): Fr[] {
@@ -66,6 +94,16 @@ export class Checkpoint {
66
94
  return this.header.hash();
67
95
  }
68
96
 
97
+ /**
98
+ * Returns the out hash computed from all l2-to-l1 messages in this checkpoint.
99
+ * Note: This value is different from the out hash in the header, which is the **accumulated** out hash over all
100
+ * checkpoints up to and including this one in the epoch.
101
+ */
102
+ public getCheckpointOutHash(): Fr {
103
+ const msgs = this.blocks.map(block => block.body.txEffects.map(txEffect => txEffect.l2ToL1Msgs));
104
+ return computeCheckpointOutHash(msgs);
105
+ }
106
+
69
107
  public getState() {
70
108
  return this.blocks.at(-1)!.header.state;
71
109
  }
@@ -73,6 +111,7 @@ export class Checkpoint {
73
111
  public toCheckpointInfo(): CheckpointInfo {
74
112
  return {
75
113
  archive: this.archive.root,
114
+ lastArchive: this.header.lastArchiveRoot,
76
115
  slotNumber: this.header.slotNumber,
77
116
  checkpointNumber: this.number,
78
117
  timestamp: this.header.timestamp,
@@ -106,23 +145,25 @@ export class Checkpoint {
106
145
  numBlocks = 1,
107
146
  startBlockNumber = 1,
108
147
  previousArchive,
148
+ feeAssetPriceModifier = 0n,
109
149
  ...options
110
150
  }: {
111
151
  numBlocks?: number;
112
152
  startBlockNumber?: number;
113
153
  previousArchive?: AppendOnlyTreeSnapshot;
154
+ feeAssetPriceModifier?: bigint;
114
155
  } & Partial<Parameters<typeof CheckpointHeader.random>[0]> &
115
- Partial<Parameters<typeof L2BlockNew.random>[1]> = {},
156
+ Partial<Parameters<typeof L2Block.random>[1]> = {},
116
157
  ) {
117
158
  const header = CheckpointHeader.random(options);
118
159
 
119
160
  // Create blocks sequentially to chain archive roots properly.
120
161
  // Each block's header.lastArchive must equal the previous block's archive.
121
- const blocks: L2BlockNew[] = [];
162
+ const blocks: L2Block[] = [];
122
163
  let lastArchive = previousArchive;
123
164
  for (let i = 0; i < numBlocks; i++) {
124
- const block = await L2BlockNew.random(BlockNumber(startBlockNumber + i), {
125
- indexWithinCheckpoint: i,
165
+ const block = await L2Block.random(BlockNumber(startBlockNumber + i), {
166
+ indexWithinCheckpoint: IndexWithinCheckpoint(i),
126
167
  ...options,
127
168
  ...(lastArchive ? { lastArchive } : {}),
128
169
  });
@@ -130,6 +171,6 @@ export class Checkpoint {
130
171
  blocks.push(block);
131
172
  }
132
173
 
133
- return new Checkpoint(AppendOnlyTreeSnapshot.random(), header, blocks, checkpointNumber);
174
+ return new Checkpoint(AppendOnlyTreeSnapshot.random(), header, blocks, checkpointNumber, feeAssetPriceModifier);
134
175
  }
135
176
  }
@@ -0,0 +1,51 @@
1
+ import {
2
+ BlockNumber,
3
+ BlockNumberSchema,
4
+ CheckpointNumber,
5
+ CheckpointNumberSchema,
6
+ } from '@aztec/foundation/branded-types';
7
+ import { Fr } from '@aztec/foundation/curves/bn254';
8
+ import { schemas } from '@aztec/foundation/schemas';
9
+
10
+ import { z } from 'zod';
11
+
12
+ import { CommitteeAttestation } from '../block/proposal/committee_attestation.js';
13
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
14
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
15
+ import { L1PublishedData } from './published_checkpoint.js';
16
+
17
+ /** Lightweight checkpoint metadata without full block data. */
18
+ export type CheckpointData = {
19
+ checkpointNumber: CheckpointNumber;
20
+ header: CheckpointHeader;
21
+ archive: AppendOnlyTreeSnapshot;
22
+ checkpointOutHash: Fr;
23
+ startBlock: BlockNumber;
24
+ blockCount: number;
25
+ attestations: CommitteeAttestation[];
26
+ l1: L1PublishedData;
27
+ };
28
+
29
+ export const CheckpointDataSchema = z
30
+ .object({
31
+ checkpointNumber: CheckpointNumberSchema,
32
+ header: CheckpointHeader.schema,
33
+ archive: AppendOnlyTreeSnapshot.schema,
34
+ checkpointOutHash: schemas.Fr,
35
+ startBlock: BlockNumberSchema,
36
+ blockCount: schemas.Integer,
37
+ attestations: z.array(CommitteeAttestation.schema),
38
+ l1: L1PublishedData.schema,
39
+ })
40
+ .transform(
41
+ (obj): CheckpointData => ({
42
+ checkpointNumber: obj.checkpointNumber,
43
+ header: obj.header,
44
+ archive: obj.archive,
45
+ checkpointOutHash: obj.checkpointOutHash,
46
+ startBlock: obj.startBlock,
47
+ blockCount: obj.blockCount,
48
+ attestations: obj.attestations,
49
+ l1: obj.l1,
50
+ }),
51
+ );
@@ -1,9 +1,52 @@
1
- import type { CheckpointNumber } from '@aztec/foundation/branded-types';
2
- import type { Fr, SlotNumber } from '@aztec/foundation/schemas';
1
+ import {
2
+ CheckpointNumber,
3
+ CheckpointNumberSchema,
4
+ SlotNumber,
5
+ SlotNumberSchema,
6
+ } from '@aztec/foundation/branded-types';
7
+ import { Fr } from '@aztec/foundation/curves/bn254';
8
+ import { schemas } from '@aztec/foundation/schemas';
9
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
10
+
11
+ import { z } from 'zod';
3
12
 
4
13
  export type CheckpointInfo = {
5
14
  archive: Fr;
15
+ lastArchive: Fr;
6
16
  slotNumber: SlotNumber;
7
17
  checkpointNumber: CheckpointNumber;
8
18
  timestamp: bigint;
9
19
  };
20
+
21
+ export function randomCheckpointInfo(checkpointNumber?: CheckpointNumber | number): CheckpointInfo {
22
+ return {
23
+ archive: Fr.random(),
24
+ lastArchive: Fr.random(),
25
+ slotNumber: SlotNumber(Math.floor(Math.random() * 100000) + 1),
26
+ checkpointNumber: CheckpointNumber(checkpointNumber ?? Math.floor(Math.random() * 100000) + 1),
27
+ timestamp: BigInt(Math.floor(Date.now() / 1000)),
28
+ };
29
+ }
30
+
31
+ export const CheckpointInfoSchema = z.object({
32
+ archive: schemas.Fr,
33
+ lastArchive: schemas.Fr,
34
+ slotNumber: SlotNumberSchema,
35
+ checkpointNumber: CheckpointNumberSchema,
36
+ timestamp: schemas.BigInt,
37
+ });
38
+
39
+ export function serializeCheckpointInfo(info: CheckpointInfo): Buffer {
40
+ return serializeToBuffer(info.archive, info.lastArchive, info.slotNumber, info.checkpointNumber, info.timestamp);
41
+ }
42
+
43
+ export function deserializeCheckpointInfo(buffer: Buffer | BufferReader): CheckpointInfo {
44
+ const reader = BufferReader.asReader(buffer);
45
+ return {
46
+ archive: reader.readObject(Fr),
47
+ lastArchive: reader.readObject(Fr),
48
+ slotNumber: SlotNumber(reader.readNumber()),
49
+ checkpointNumber: CheckpointNumber(reader.readNumber()),
50
+ timestamp: reader.readBigInt(),
51
+ };
52
+ }
@@ -1,2 +1,4 @@
1
1
  export * from './checkpoint.js';
2
+ export * from './checkpoint_data.js';
3
+ export * from './checkpoint_info.js';
2
4
  export * from './published_checkpoint.js';
@@ -8,6 +8,7 @@ import type { FieldsOf } from '@aztec/foundation/types';
8
8
  import { z } from 'zod';
9
9
 
10
10
  import { CommitteeAttestation } from '../block/proposal/committee_attestation.js';
11
+ import { MAX_BLOCK_HASH_STRING_LENGTH, MAX_COMMITTEE_SIZE } from '../deserialization/index.js';
11
12
  import { Checkpoint } from './checkpoint.js';
12
13
 
13
14
  export class L1PublishedData {
@@ -42,7 +43,7 @@ export class L1PublishedData {
42
43
  static fromBuffer(bufferOrReader: Buffer | BufferReader): L1PublishedData {
43
44
  const reader = BufferReader.asReader(bufferOrReader);
44
45
  const l1BlockNumber = reader.readBigInt();
45
- const l1BlockHash = reader.readString();
46
+ const l1BlockHash = reader.readString(MAX_BLOCK_HASH_STRING_LENGTH);
46
47
  const l1Timestamp = reader.readBigInt();
47
48
  return new L1PublishedData(l1BlockNumber, l1Timestamp, l1BlockHash);
48
49
  }
@@ -54,9 +55,11 @@ export class L1PublishedData {
54
55
 
55
56
  export class PublishedCheckpoint {
56
57
  constructor(
58
+ /** The checkpoint itself. */
57
59
  public checkpoint: Checkpoint,
60
+ /** Info on when this checkpoint was published on L1. */
58
61
  public l1: L1PublishedData,
59
- // The attestations for the last block in the checkpoint.
62
+ /** The attestations for the last block in the checkpoint. */
60
63
  public attestations: CommitteeAttestation[],
61
64
  ) {}
62
65
 
@@ -82,9 +85,9 @@ export class PublishedCheckpoint {
82
85
  const reader = BufferReader.asReader(bufferOrReader);
83
86
  const checkpoint = reader.readObject(Checkpoint);
84
87
  const l1BlockNumber = reader.readBigInt();
85
- const l1BlockHash = reader.readString();
88
+ const l1BlockHash = reader.readString(MAX_BLOCK_HASH_STRING_LENGTH);
86
89
  const l1Timestamp = reader.readBigInt();
87
- const attestations = reader.readVector(CommitteeAttestation);
90
+ const attestations = reader.readVector(CommitteeAttestation, MAX_COMMITTEE_SIZE);
88
91
  return new PublishedCheckpoint(
89
92
  checkpoint,
90
93
  new L1PublishedData(l1BlockNumber, l1Timestamp, l1BlockHash),
@@ -1,2 +1,3 @@
1
1
  export * from './chain-config.js';
2
2
  export * from './node-rpc-config.js';
3
+ export * from './sequencer-config.js';
@@ -21,7 +21,7 @@ export const nodeRpcConfigMappings: ConfigMappingsType<NodeRPCConfig> = {
21
21
  rpcMaxBodySize: {
22
22
  env: 'RPC_MAX_BODY_SIZE',
23
23
  description: 'Maximum allowed batch size for JSON RPC batch requests.',
24
- defaultValue: '50mb',
24
+ defaultValue: '1mb',
25
25
  },
26
26
  };
27
27
 
@@ -0,0 +1,29 @@
1
+ import type { ConfigMappingsType } from '@aztec/foundation/config';
2
+
3
+ import type { SequencerConfig } from '../interfaces/configs.js';
4
+
5
+ /**
6
+ * Partial sequencer config mappings for fields that need to be shared across packages.
7
+ * The full sequencer config mappings remain in sequencer-client, but shared fields
8
+ * (like blockDurationMs needed by both p2p and sequencer-client) are defined here
9
+ * to avoid duplication.
10
+ */
11
+ export const sharedSequencerConfigMappings: ConfigMappingsType<
12
+ Pick<SequencerConfig, 'blockDurationMs' | 'expectedBlockProposalsPerSlot'>
13
+ > = {
14
+ blockDurationMs: {
15
+ env: 'SEQ_BLOCK_DURATION_MS',
16
+ description:
17
+ 'Duration per block in milliseconds when building multiple blocks per slot. ' +
18
+ 'If undefined (default), builds a single block per slot using the full slot duration.',
19
+ parseEnv: (val: string) => (val ? parseInt(val, 10) : undefined),
20
+ },
21
+ expectedBlockProposalsPerSlot: {
22
+ env: 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT',
23
+ description:
24
+ 'Expected number of block proposals per slot for P2P peer scoring. ' +
25
+ '0 (default) disables block proposal scoring. Set to a positive value to enable.',
26
+ parseEnv: (val: string) => (val ? parseInt(val, 10) : 0),
27
+ defaultValue: 0,
28
+ },
29
+ };
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
 
@@ -44,7 +44,7 @@ export async function computePartialAddress(
44
44
 
45
45
  return poseidon2HashWithSeparator(
46
46
  [instance.originalContractClassId, saltedInitializationHash],
47
- GeneratorIndex.PARTIAL_ADDRESS,
47
+ DomainSeparator.PARTIAL_ADDRESS,
48
48
  );
49
49
  }
50
50
 
@@ -57,7 +57,7 @@ export function computeSaltedInitializationHash(
57
57
  ): Promise<Fr> {
58
58
  return poseidon2HashWithSeparator(
59
59
  [instance.salt, instance.initializationHash, instance.deployer],
60
- GeneratorIndex.PARTIAL_ADDRESS,
60
+ DomainSeparator.PARTIAL_ADDRESS,
61
61
  );
62
62
  }
63
63
 
@@ -87,5 +87,5 @@ export async function computeInitializationHashFromEncodedArgs(
87
87
  encodedArgs: Fr[],
88
88
  ): Promise<Fr> {
89
89
  const argsHash = await computeVarArgsHash(encodedArgs);
90
- return poseidon2HashWithSeparator([initFn, argsHash], GeneratorIndex.CONSTRUCTOR);
90
+ return poseidon2HashWithSeparator([initFn, argsHash], DomainSeparator.INITIALIZER);
91
91
  }
@@ -8,7 +8,7 @@ import { type ContractClassIdPreimage, computeContractClassIdWithPreimage } from
8
8
  import type { ContractClass, ContractClassWithId } from './interfaces/index.js';
9
9
 
10
10
  /** Contract artifact including its artifact hash */
11
- type ContractArtifactWithHash = ContractArtifact & { artifactHash: Fr };
11
+ export type ContractArtifactWithHash = ContractArtifact & { artifactHash: Fr };
12
12
 
13
13
  const cmpFunctionArtifacts = <T extends { selector: FunctionSelector }>(a: T, b: T) =>
14
14
  a.selector.toField().cmp(b.selector.toField());
@@ -35,8 +35,8 @@ export async function getContractClassFromArtifact(
35
35
 
36
36
  privateArtifactFunctions.sort(cmpFunctionArtifacts);
37
37
 
38
- const contractClass: ContractClass = {
39
- version: 1,
38
+ const contractClass = {
39
+ version: 1 as const,
40
40
  artifactHash,
41
41
  packedBytecode,
42
42
  privateFunctions: privateArtifactFunctions,
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex, MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS } from '@aztec/constants';
1
+ import { DomainSeparator, MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS } from '@aztec/constants';
2
2
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
 
@@ -13,7 +13,7 @@ import { computePrivateFunctionsRoot } from './private_function.js';
13
13
  *
14
14
  * ```
15
15
  * version = 1
16
- * private_function_leaves = private_functions.map(fn => pedersen([fn.function_selector as Field, fn.vk_hash], GENERATOR__FUNCTION_LEAF))
16
+ * private_function_leaves = private_functions.map(fn => pedersen([fn.function_selector as Field, fn.vk_hash], GENERATOR__PRIVATE_FUNCTION_LEAF))
17
17
  * private_functions_root = merkleize(private_function_leaves)
18
18
  * bytecode_commitment = calculate_commitment(packed_bytecode)
19
19
  * contract_class_id = pedersen([version, artifact_hash, private_functions_root, bytecode_commitment], GENERATOR__CLASS_IDENTIFIER)
@@ -40,7 +40,7 @@ export async function computeContractClassIdWithPreimage(
40
40
  : await computePublicBytecodeCommitment(contractClass.packedBytecode);
41
41
  const id = await poseidon2HashWithSeparator(
42
42
  [artifactHash, privateFunctionsRoot, publicBytecodeCommitment],
43
- GeneratorIndex.CONTRACT_CLASS_ID,
43
+ DomainSeparator.CONTRACT_CLASS_ID,
44
44
  );
45
45
  return { id, artifactHash, privateFunctionsRoot, publicBytecodeCommitment };
46
46
  }
@@ -60,7 +60,7 @@ export type ContractClassIdPreimage = {
60
60
  };
61
61
 
62
62
  export async function computePublicBytecodeCommitment(packedBytecode: Buffer) {
63
- // Encode the buffer into field elements (chunked into 32 bytes each)
63
+ // Encode the buffer into field elements (chunked into 31 bytes each)
64
64
  // The first element is the length of the bytecode (in bytes)
65
65
  const [bytecodeLengthAsField, ...bytecodeAsFields] = bufferAsFields(
66
66
  packedBytecode,
@@ -72,5 +72,6 @@ export async function computePublicBytecodeCommitment(packedBytecode: Buffer) {
72
72
 
73
73
  // NOTE: hash the bytecode here only up to the actual length of the bytecode.
74
74
  // We do not hash the entire max bytecode length!
75
- return await poseidon2HashWithSeparator(bytecodeAsFields.slice(0, bytecodeLength), GeneratorIndex.PUBLIC_BYTECODE);
75
+ const sep = BigInt(DomainSeparator.PUBLIC_BYTECODE) + (bytecodeLengthAsField.toBigInt() << 32n);
76
+ return await poseidon2HashWithSeparator(bytecodeAsFields.slice(0, bytecodeLength), new Fr(sep).toNumber());
76
77
  }
@@ -1,11 +1,9 @@
1
1
  export * from './artifact_hash.js';
2
2
  export * from './contract_address.js';
3
3
  export * from './contract_class.js';
4
- export * from './contract_class_metadata.js';
5
4
  export * from './contract_class_id.js';
6
5
  export * from './contract_deployment_data.js';
7
6
  export * from './contract_instance.js';
8
- export * from './contract_metadata.js';
9
7
  export * from './contract_instance_update.js';
10
8
  export * from './private_function.js';
11
9
  export * from './private_function_membership_proof.js';
@@ -19,6 +19,8 @@ export interface NodeInfo {
19
19
  l1ContractAddresses: L1ContractAddresses;
20
20
  /** Protocol contract addresses */
21
21
  protocolContractAddresses: ProtocolContractAddresses;
22
+ /** Whether the node requires real proofs for transaction submission. */
23
+ realProofs: boolean;
22
24
  }
23
25
 
24
26
  export const NodeInfoSchema: ZodFor<NodeInfo> = z
@@ -29,5 +31,6 @@ export const NodeInfoSchema: ZodFor<NodeInfo> = z
29
31
  enr: z.string().optional(),
30
32
  l1ContractAddresses: L1ContractAddressesSchema,
31
33
  protocolContractAddresses: ProtocolContractAddressesSchema,
34
+ realProofs: z.boolean(),
32
35
  })
33
36
  .transform(obj => ({ enr: undefined, ...obj }));
@@ -1,5 +1,4 @@
1
- import { FUNCTION_TREE_HEIGHT, GeneratorIndex } from '@aztec/constants';
2
- import { pedersenHash } from '@aztec/foundation/crypto/pedersen';
1
+ import { DomainSeparator, FUNCTION_TREE_HEIGHT } from '@aztec/constants';
3
2
  import { poseidon2Hash, poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
4
3
  import { Fr } from '@aztec/foundation/curves/bn254';
5
4
  import { type MerkleTree, MerkleTreeCalculator } from '@aztec/foundation/trees';
@@ -32,13 +31,13 @@ function computePrivateFunctionLeaves(fns: PrivateFunction[]): Promise<Buffer[]>
32
31
 
33
32
  /** Returns the leaf for a given private function. */
34
33
  export async function computePrivateFunctionLeaf(fn: PrivateFunction): Promise<Buffer> {
35
- return (await poseidon2HashWithSeparator([fn.selector, fn.vkHash], GeneratorIndex.FUNCTION_LEAF)).toBuffer();
34
+ return (await poseidon2HashWithSeparator([fn.selector, fn.vkHash], DomainSeparator.PRIVATE_FUNCTION_LEAF)).toBuffer();
36
35
  }
37
36
 
38
37
  async function getPrivateFunctionTreeCalculator(): Promise<MerkleTreeCalculator> {
39
38
  if (!privateFunctionTreeCalculator) {
40
39
  const functionTreeZeroLeaf = (
41
- await pedersenHash(new Array(PRIVATE_FUNCTION_SIZE).fill(0))
40
+ await poseidon2Hash(new Array(PRIVATE_FUNCTION_SIZE).fill(0))
42
41
  ).toBuffer() as Buffer<ArrayBuffer>;
43
42
  privateFunctionTreeCalculator = await MerkleTreeCalculator.create(
44
43
  FUNCTION_TREE_HEIGHT,