@aztec/stdlib 0.0.1-commit.b2a5d0dd1 → 0.0.1-commit.b3d3157a

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 (700) hide show
  1. package/dest/abi/abi.d.ts +121 -1197
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +31 -16
  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/contract_artifact.d.ts +1 -1
  7. package/dest/abi/contract_artifact.d.ts.map +1 -1
  8. package/dest/abi/contract_artifact.js +14 -7
  9. package/dest/abi/event_selector.d.ts +2 -2
  10. package/dest/abi/event_selector.d.ts.map +1 -1
  11. package/dest/abi/function_call.d.ts +7 -25
  12. package/dest/abi/function_call.d.ts.map +1 -1
  13. package/dest/abi/note_selector.d.ts +2 -2
  14. package/dest/abi/note_selector.d.ts.map +1 -1
  15. package/dest/abi/utils.d.ts +1 -1
  16. package/dest/abi/utils.d.ts.map +1 -1
  17. package/dest/abi/utils.js +1 -1
  18. package/dest/auth_witness/auth_witness.d.ts +2 -2
  19. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  20. package/dest/avm/avm.d.ts +1756 -10463
  21. package/dest/avm/avm.d.ts.map +1 -1
  22. package/dest/avm/avm.js +6 -3
  23. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  24. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  25. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  26. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  27. package/dest/avm/avm_proving_request.d.ts +653 -5446
  28. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  29. package/dest/avm/message_pack.js +12 -3
  30. package/dest/avm/public_data_write.d.ts +6 -12
  31. package/dest/avm/public_data_write.d.ts.map +1 -1
  32. package/dest/avm/revert_code.d.ts +1 -7
  33. package/dest/avm/revert_code.d.ts.map +1 -1
  34. package/dest/avm/revert_code.js +0 -3
  35. package/dest/aztec-address/index.d.ts +6 -3
  36. package/dest/aztec-address/index.d.ts.map +1 -1
  37. package/dest/aztec-address/index.js +7 -2
  38. package/dest/block/attestation_info.d.ts +3 -2
  39. package/dest/block/attestation_info.d.ts.map +1 -1
  40. package/dest/block/attestation_info.js +7 -5
  41. package/dest/block/block_data.d.ts +9 -34
  42. package/dest/block/block_data.d.ts.map +1 -1
  43. package/dest/block/block_parameter.d.ts +37 -4
  44. package/dest/block/block_parameter.d.ts.map +1 -1
  45. package/dest/block/block_parameter.js +53 -2
  46. package/dest/block/in_block.d.ts +5 -24
  47. package/dest/block/in_block.d.ts.map +1 -1
  48. package/dest/block/index.d.ts +1 -2
  49. package/dest/block/index.d.ts.map +1 -1
  50. package/dest/block/index.js +0 -1
  51. package/dest/block/l2_block.d.ts +13 -41
  52. package/dest/block/l2_block.d.ts.map +1 -1
  53. package/dest/block/l2_block_info.d.ts +7 -27
  54. package/dest/block/l2_block_info.d.ts.map +1 -1
  55. package/dest/block/l2_block_source.d.ts +199 -425
  56. package/dest/block/l2_block_source.d.ts.map +1 -1
  57. package/dest/block/l2_block_source.js +66 -1
  58. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  59. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  60. package/dest/block/l2_block_stream/l2_block_stream.js +44 -17
  61. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  62. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  63. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  64. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  65. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  66. package/dest/block/l2_block_stream/l2_tips_store_base.js +26 -7
  67. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  68. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  69. package/dest/block/proposal/attestations_and_signers.js +26 -18
  70. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  71. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  72. package/dest/block/test/l2_tips_store_test_suite.js +1 -1
  73. package/dest/checkpoint/checkpoint.d.ts +24 -96
  74. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  75. package/dest/checkpoint/checkpoint_data.d.ts +40 -129
  76. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  77. package/dest/checkpoint/checkpoint_data.js +2 -0
  78. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  79. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  80. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  81. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  82. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  83. package/dest/checkpoint/digest.d.ts +18 -0
  84. package/dest/checkpoint/digest.d.ts.map +1 -0
  85. package/dest/checkpoint/digest.js +12 -0
  86. package/dest/checkpoint/index.d.ts +4 -1
  87. package/dest/checkpoint/index.d.ts.map +1 -1
  88. package/dest/checkpoint/index.js +3 -0
  89. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  90. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  91. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  92. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  93. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  94. package/dest/config/chain-config.d.ts +4 -9
  95. package/dest/config/chain-config.d.ts.map +1 -1
  96. package/dest/config/chain-config.js +6 -11
  97. package/dest/config/index.d.ts +1 -2
  98. package/dest/config/index.d.ts.map +1 -1
  99. package/dest/config/index.js +0 -1
  100. package/dest/config/sequencer-config.d.ts +5 -3
  101. package/dest/config/sequencer-config.d.ts.map +1 -1
  102. package/dest/config/sequencer-config.js +13 -6
  103. package/dest/contract/complete_address.d.ts +3 -2
  104. package/dest/contract/complete_address.d.ts.map +1 -1
  105. package/dest/contract/complete_address.js +6 -2
  106. package/dest/contract/contract_address.d.ts +5 -5
  107. package/dest/contract/contract_address.d.ts.map +1 -1
  108. package/dest/contract/contract_address.js +5 -4
  109. package/dest/contract/contract_deployment_data.d.ts +15 -61
  110. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  111. package/dest/contract/contract_instance.d.ts +4 -2
  112. package/dest/contract/contract_instance.d.ts.map +1 -1
  113. package/dest/contract/contract_instance.js +10 -3
  114. package/dest/contract/interfaces/contract_class.d.ts +15 -86
  115. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  116. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  117. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  118. package/dest/contract/interfaces/contract_instance.js +4 -2
  119. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  120. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  121. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  122. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  123. package/dest/database-version/database_version.d.ts +5 -11
  124. package/dest/database-version/database_version.d.ts.map +1 -1
  125. package/dest/database-version/version_manager.d.ts +6 -2
  126. package/dest/database-version/version_manager.d.ts.map +1 -1
  127. package/dest/database-version/version_manager.js +12 -1
  128. package/dest/epoch-helpers/index.d.ts +4 -22
  129. package/dest/epoch-helpers/index.d.ts.map +1 -1
  130. package/dest/gas/gas.d.ts +9 -14
  131. package/dest/gas/gas.d.ts.map +1 -1
  132. package/dest/gas/gas.js +6 -3
  133. package/dest/gas/gas_fees.d.ts +9 -14
  134. package/dest/gas/gas_fees.d.ts.map +1 -1
  135. package/dest/gas/gas_fees.js +7 -3
  136. package/dest/gas/gas_settings.d.ts +27 -84
  137. package/dest/gas/gas_settings.d.ts.map +1 -1
  138. package/dest/gas/gas_settings.js +6 -3
  139. package/dest/ha-signing/config.d.ts +9 -73
  140. package/dest/ha-signing/config.d.ts.map +1 -1
  141. package/dest/ha-signing/config.js +5 -15
  142. package/dest/ha-signing/local_config.d.ts +3 -34
  143. package/dest/ha-signing/local_config.d.ts.map +1 -1
  144. package/dest/ha-signing/local_config.js +2 -2
  145. package/dest/hash/hash.d.ts +1 -1
  146. package/dest/hash/hash.d.ts.map +1 -1
  147. package/dest/hash/hash.js +2 -2
  148. package/dest/interfaces/allowed_element.d.ts +4 -28
  149. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  150. package/dest/interfaces/api_limit.d.ts +1 -1
  151. package/dest/interfaces/api_limit.js +1 -1
  152. package/dest/interfaces/archiver.d.ts +16 -36
  153. package/dest/interfaces/archiver.d.ts.map +1 -1
  154. package/dest/interfaces/archiver.js +211 -71
  155. package/dest/interfaces/aztec-node-admin.d.ts +62 -292
  156. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  157. package/dest/interfaces/aztec-node-admin.js +57 -14
  158. package/dest/interfaces/aztec-node-debug.js +4 -1
  159. package/dest/interfaces/aztec-node.d.ts +100 -106
  160. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  161. package/dest/interfaces/aztec-node.js +308 -70
  162. package/dest/interfaces/block-builder.d.ts +3 -1
  163. package/dest/interfaces/block-builder.d.ts.map +1 -1
  164. package/dest/interfaces/block_response.d.ts +90 -0
  165. package/dest/interfaces/block_response.d.ts.map +1 -0
  166. package/dest/interfaces/block_response.js +30 -0
  167. package/dest/interfaces/chain_tips.d.ts +50 -0
  168. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  169. package/dest/interfaces/chain_tips.js +11 -0
  170. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  171. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  172. package/dest/interfaces/checkpoint_parameter.js +18 -0
  173. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  174. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  175. package/dest/interfaces/checkpoint_response.js +26 -0
  176. package/dest/interfaces/client.d.ts +7 -2
  177. package/dest/interfaces/client.d.ts.map +1 -1
  178. package/dest/interfaces/client.js +6 -1
  179. package/dest/interfaces/configs.d.ts +41 -130
  180. package/dest/interfaces/configs.d.ts.map +1 -1
  181. package/dest/interfaces/configs.js +9 -1
  182. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  183. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  184. package/dest/interfaces/l1_publish_info.js +26 -0
  185. package/dest/interfaces/l2_logs_source.d.ts +14 -36
  186. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  187. package/dest/interfaces/l2_logs_source.js +5 -0
  188. package/dest/interfaces/merkle_tree_operations.d.ts +9 -3
  189. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  190. package/dest/interfaces/p2p-bootstrap.js +8 -2
  191. package/dest/interfaces/p2p.d.ts +15 -5
  192. package/dest/interfaces/p2p.d.ts.map +1 -1
  193. package/dest/interfaces/p2p.js +28 -5
  194. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  195. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  196. package/dest/interfaces/prover-agent.d.ts +5 -23
  197. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  198. package/dest/interfaces/prover-agent.js +4 -1
  199. package/dest/interfaces/prover-client.d.ts +6 -27
  200. package/dest/interfaces/prover-client.d.ts.map +1 -1
  201. package/dest/interfaces/prover-node.js +22 -8
  202. package/dest/interfaces/proving-job-source.js +24 -4
  203. package/dest/interfaces/proving-job.d.ts +725 -5776
  204. package/dest/interfaces/proving-job.d.ts.map +1 -1
  205. package/dest/interfaces/proving-job.js +1 -1
  206. package/dest/interfaces/public_storage_override.d.ts +22 -0
  207. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  208. package/dest/interfaces/public_storage_override.js +7 -0
  209. package/dest/interfaces/server.d.ts +6 -1
  210. package/dest/interfaces/server.d.ts.map +1 -1
  211. package/dest/interfaces/server.js +5 -0
  212. package/dest/interfaces/slasher.d.ts +25 -56
  213. package/dest/interfaces/slasher.d.ts.map +1 -1
  214. package/dest/interfaces/slasher.js +8 -2
  215. package/dest/interfaces/tx_provider.d.ts +6 -1
  216. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  217. package/dest/interfaces/validator.d.ts +40 -229
  218. package/dest/interfaces/validator.d.ts.map +1 -1
  219. package/dest/interfaces/validator.js +5 -0
  220. package/dest/interfaces/world_state.d.ts +2 -2
  221. package/dest/interfaces/world_state.d.ts.map +1 -1
  222. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  223. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  224. package/dest/kernel/hints/key_validation_request.js +20 -18
  225. package/dest/kernel/index.d.ts +5 -1
  226. package/dest/kernel/index.d.ts.map +1 -1
  227. package/dest/kernel/index.js +4 -0
  228. package/dest/kernel/log_hash.d.ts +6 -2
  229. package/dest/kernel/log_hash.d.ts.map +1 -1
  230. package/dest/kernel/log_hash.js +21 -9
  231. package/dest/kernel/private_circuit_public_inputs.d.ts +2 -2
  232. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  233. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +2 -2
  234. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  235. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  236. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  237. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  238. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  239. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  240. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  241. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  242. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  243. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  244. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  245. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  246. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  247. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  248. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  249. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  250. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  251. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  252. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  253. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  254. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  255. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  256. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  257. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  258. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  259. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  260. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  261. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  262. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  263. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  264. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  265. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  266. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  267. package/dest/kernel/public_call_request.d.ts +15 -30
  268. package/dest/kernel/public_call_request.d.ts.map +1 -1
  269. package/dest/kernel/public_call_request.js +16 -7
  270. package/dest/keys/derivation.d.ts +6 -2
  271. package/dest/keys/derivation.d.ts.map +1 -1
  272. package/dest/keys/derivation.js +16 -6
  273. package/dest/keys/public_key.d.ts +22 -3
  274. package/dest/keys/public_key.d.ts.map +1 -1
  275. package/dest/keys/public_key.js +20 -1
  276. package/dest/keys/public_keys.d.ts +55 -82
  277. package/dest/keys/public_keys.d.ts.map +1 -1
  278. package/dest/keys/public_keys.js +102 -74
  279. package/dest/kv-store/config.d.ts +3 -6
  280. package/dest/kv-store/config.d.ts.map +1 -1
  281. package/dest/kv-store/config.js +2 -7
  282. package/dest/logs/app_tagging_secret.d.ts +46 -0
  283. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  284. package/dest/logs/{extended_directional_app_tagging_secret.js → app_tagging_secret.js} +51 -21
  285. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  286. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  287. package/dest/logs/app_tagging_secret_kind.js +17 -0
  288. package/dest/logs/contract_class_log.d.ts +16 -34
  289. package/dest/logs/contract_class_log.d.ts.map +1 -1
  290. package/dest/logs/contract_class_log.js +11 -9
  291. package/dest/logs/index.d.ts +7 -7
  292. package/dest/logs/index.d.ts.map +1 -1
  293. package/dest/logs/index.js +6 -6
  294. package/dest/logs/log_cursor.d.ts +51 -0
  295. package/dest/logs/log_cursor.d.ts.map +1 -0
  296. package/dest/logs/log_cursor.js +82 -0
  297. package/dest/logs/log_result.d.ts +54 -0
  298. package/dest/logs/log_result.d.ts.map +1 -0
  299. package/dest/logs/log_result.js +56 -0
  300. package/dest/logs/logs_query.d.ts +82 -0
  301. package/dest/logs/logs_query.d.ts.map +1 -0
  302. package/dest/logs/logs_query.js +50 -0
  303. package/dest/logs/message_context.d.ts +3 -2
  304. package/dest/logs/message_context.d.ts.map +1 -1
  305. package/dest/logs/message_context.js +4 -0
  306. package/dest/logs/pre_tag.d.ts +11 -24
  307. package/dest/logs/pre_tag.d.ts.map +1 -1
  308. package/dest/logs/pre_tag.js +2 -2
  309. package/dest/logs/private_log.d.ts +7 -12
  310. package/dest/logs/private_log.d.ts.map +1 -1
  311. package/dest/logs/private_log.js +6 -3
  312. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  313. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  314. package/dest/logs/query_all_logs_by_tags.js +64 -0
  315. package/dest/logs/siloed_tag.d.ts +1 -1
  316. package/dest/logs/siloed_tag.d.ts.map +1 -1
  317. package/dest/logs/siloed_tag.js +3 -1
  318. package/dest/logs/tagging_index_range.d.ts +13 -31
  319. package/dest/logs/tagging_index_range.d.ts.map +1 -1
  320. package/dest/logs/tagging_index_range.js +2 -2
  321. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  322. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  323. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  324. package/dest/messaging/index.d.ts +2 -1
  325. package/dest/messaging/index.d.ts.map +1 -1
  326. package/dest/messaging/index.js +1 -0
  327. package/dest/messaging/l2_to_l1_membership.d.ts +43 -6
  328. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  329. package/dest/messaging/l2_to_l1_membership.js +72 -12
  330. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  331. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  332. package/dest/messaging/l2_to_l1_message.js +21 -12
  333. package/dest/noir/index.d.ts +3 -1
  334. package/dest/noir/index.d.ts.map +1 -1
  335. package/dest/note/note.d.ts +2 -2
  336. package/dest/note/note.d.ts.map +1 -1
  337. package/dest/p2p/block_proposal.d.ts +29 -10
  338. package/dest/p2p/block_proposal.d.ts.map +1 -1
  339. package/dest/p2p/block_proposal.js +56 -33
  340. package/dest/p2p/checkpoint_attestation.d.ts +14 -6
  341. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  342. package/dest/p2p/checkpoint_attestation.js +24 -20
  343. package/dest/p2p/checkpoint_proposal.d.ts +31 -10
  344. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  345. package/dest/p2p/checkpoint_proposal.js +58 -31
  346. package/dest/p2p/consensus_payload.d.ts +26 -20
  347. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  348. package/dest/p2p/consensus_payload.js +38 -19
  349. package/dest/p2p/signature_utils.d.ts +28 -19
  350. package/dest/p2p/signature_utils.d.ts.map +1 -1
  351. package/dest/p2p/signature_utils.js +118 -21
  352. package/dest/p2p/signed_txs.d.ts +15 -13
  353. package/dest/p2p/signed_txs.d.ts.map +1 -1
  354. package/dest/p2p/signed_txs.js +26 -24
  355. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  356. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  357. package/dest/parity/parity_base_private_inputs.js +7 -5
  358. package/dest/parity/parity_public_inputs.d.ts +8 -4
  359. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  360. package/dest/parity/parity_public_inputs.js +6 -3
  361. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  362. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  363. package/dest/proofs/chonk_proof.d.ts +17 -11
  364. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  365. package/dest/proofs/chonk_proof.js +44 -22
  366. package/dest/proofs/recursive_proof.d.ts +2 -2
  367. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  368. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  369. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  370. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  371. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  372. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  373. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  374. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  375. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  376. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  377. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  378. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  379. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  380. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  381. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  382. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  383. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  384. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  385. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  386. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  387. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  388. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  389. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  390. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  391. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  392. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  393. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  394. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  395. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  396. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  397. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  398. package/dest/schemas/schemas.d.ts +32 -78
  399. package/dest/schemas/schemas.d.ts.map +1 -1
  400. package/dest/schemas/schemas.js +2 -2
  401. package/dest/slashing/helpers.d.ts +2 -2
  402. package/dest/slashing/helpers.d.ts.map +1 -1
  403. package/dest/slashing/helpers.js +10 -7
  404. package/dest/slashing/types.d.ts +15 -23
  405. package/dest/slashing/types.d.ts.map +1 -1
  406. package/dest/slashing/types.js +16 -10
  407. package/dest/snapshots/types.d.ts +15 -78
  408. package/dest/snapshots/types.d.ts.map +1 -1
  409. package/dest/stats/stats.d.ts +2 -2
  410. package/dest/stats/stats.d.ts.map +1 -1
  411. package/dest/tests/factories.d.ts +23 -23
  412. package/dest/tests/factories.d.ts.map +1 -1
  413. package/dest/tests/factories.js +70 -47
  414. package/dest/tests/mocks.d.ts +8 -5
  415. package/dest/tests/mocks.d.ts.map +1 -1
  416. package/dest/tests/mocks.js +31 -38
  417. package/dest/timetable/index.d.ts +7 -10
  418. package/dest/timetable/index.d.ts.map +1 -1
  419. package/dest/timetable/index.js +60 -80
  420. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  421. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  422. package/dest/trees/append_only_tree_snapshot.js +6 -3
  423. package/dest/trees/nullifier_leaf.d.ts +18 -42
  424. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  425. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  426. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  427. package/dest/trees/nullifier_membership_witness.js +2 -14
  428. package/dest/trees/public_data_leaf.d.ts +21 -53
  429. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  430. package/dest/trees/public_data_witness.d.ts +16 -58
  431. package/dest/trees/public_data_witness.d.ts.map +1 -1
  432. package/dest/tx/block_header.d.ts +4 -3
  433. package/dest/tx/block_header.d.ts.map +1 -1
  434. package/dest/tx/block_header.js +6 -3
  435. package/dest/tx/call_context.d.ts +4 -14
  436. package/dest/tx/call_context.d.ts.map +1 -1
  437. package/dest/tx/capsule.d.ts +2 -2
  438. package/dest/tx/capsule.d.ts.map +1 -1
  439. package/dest/tx/function_data.d.ts +4 -10
  440. package/dest/tx/function_data.d.ts.map +1 -1
  441. package/dest/tx/global_variables.d.ts +16 -49
  442. package/dest/tx/global_variables.d.ts.map +1 -1
  443. package/dest/tx/global_variables.js +8 -12
  444. package/dest/tx/hashed_values.d.ts +4 -3
  445. package/dest/tx/hashed_values.d.ts.map +1 -1
  446. package/dest/tx/hashed_values.js +6 -3
  447. package/dest/tx/in_tx.d.ts +5 -17
  448. package/dest/tx/in_tx.d.ts.map +1 -1
  449. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  450. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  451. package/dest/tx/indexed_tx_effect.js +8 -4
  452. package/dest/tx/partial_state_reference.d.ts +22 -65
  453. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  454. package/dest/tx/partial_state_reference.js +6 -3
  455. package/dest/tx/private_execution_result.d.ts +6 -16
  456. package/dest/tx/private_execution_result.d.ts.map +1 -1
  457. package/dest/tx/profiling.d.ts +54 -352
  458. package/dest/tx/profiling.d.ts.map +1 -1
  459. package/dest/tx/profiling.js +4 -4
  460. package/dest/tx/protocol_contracts.d.ts +5 -9
  461. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  462. package/dest/tx/proven_tx.d.ts +30 -74
  463. package/dest/tx/proven_tx.d.ts.map +1 -1
  464. package/dest/tx/proven_tx.js +6 -0
  465. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  466. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  467. package/dest/tx/public_call_request_with_calldata.js +6 -3
  468. package/dest/tx/simulated_tx.d.ts +62 -1249
  469. package/dest/tx/simulated_tx.d.ts.map +1 -1
  470. package/dest/tx/simulated_tx.js +12 -10
  471. package/dest/tx/state_reference.d.ts +30 -117
  472. package/dest/tx/state_reference.d.ts.map +1 -1
  473. package/dest/tx/state_reference.js +6 -4
  474. package/dest/tx/tree_snapshots.d.ts +27 -84
  475. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  476. package/dest/tx/tree_snapshots.js +6 -4
  477. package/dest/tx/tx.d.ts +12 -11
  478. package/dest/tx/tx.d.ts.map +1 -1
  479. package/dest/tx/tx.js +30 -23
  480. package/dest/tx/tx_constant_data.d.ts +4 -3
  481. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  482. package/dest/tx/tx_constant_data.js +6 -3
  483. package/dest/tx/tx_context.d.ts +32 -131
  484. package/dest/tx/tx_context.d.ts.map +1 -1
  485. package/dest/tx/tx_context.js +6 -6
  486. package/dest/tx/tx_hash.d.ts +6 -4
  487. package/dest/tx/tx_hash.d.ts.map +1 -1
  488. package/dest/tx/tx_hash.js +13 -5
  489. package/dest/tx/tx_receipt.d.ts +144 -67
  490. package/dest/tx/tx_receipt.d.ts.map +1 -1
  491. package/dest/tx/tx_receipt.js +141 -51
  492. package/dest/tx/validator/tx_validator.d.ts +5 -27
  493. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  494. package/dest/tx/validator/tx_validator.js +0 -4
  495. package/dest/types/shared.d.ts +4 -3
  496. package/dest/types/shared.d.ts.map +1 -1
  497. package/dest/types/shared.js +6 -3
  498. package/dest/update-checker/dev_version.d.ts +3 -0
  499. package/dest/update-checker/dev_version.d.ts.map +1 -0
  500. package/dest/update-checker/dev_version.js +1 -0
  501. package/dest/update-checker/index.d.ts +2 -1
  502. package/dest/update-checker/index.d.ts.map +1 -1
  503. package/dest/update-checker/index.js +1 -0
  504. package/dest/update-checker/package_version.d.ts +6 -3
  505. package/dest/update-checker/package_version.d.ts.map +1 -1
  506. package/dest/update-checker/package_version.js +8 -19
  507. package/dest/validators/schemas.d.ts +147 -614
  508. package/dest/validators/schemas.d.ts.map +1 -1
  509. package/dest/validators/schemas.js +6 -4
  510. package/dest/validators/types.d.ts +20 -3
  511. package/dest/validators/types.d.ts.map +1 -1
  512. package/dest/versioning/versioning.js +1 -1
  513. package/dest/vks/verification_key.d.ts +3 -3
  514. package/dest/vks/verification_key.d.ts.map +1 -1
  515. package/dest/world-state/genesis_data.d.ts +3 -1
  516. package/dest/world-state/genesis_data.d.ts.map +1 -1
  517. package/dest/world-state/genesis_data.js +3 -0
  518. package/dest/world-state/world_state_revision.d.ts +4 -39
  519. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  520. package/dest/world-state/world_state_revision.js +0 -20
  521. package/package.json +12 -11
  522. package/src/abi/abi.ts +53 -19
  523. package/src/abi/contract_artifact.ts +11 -6
  524. package/src/abi/utils.ts +6 -4
  525. package/src/avm/avm.ts +5 -0
  526. package/src/avm/message_pack.ts +12 -3
  527. package/src/avm/revert_code.ts +0 -6
  528. package/src/aztec-address/index.ts +12 -3
  529. package/src/block/attestation_info.ts +11 -11
  530. package/src/block/block_parameter.ts +72 -4
  531. package/src/block/index.ts +0 -1
  532. package/src/block/l2_block_source.ts +201 -149
  533. package/src/block/l2_block_stream/l2_block_stream.ts +39 -28
  534. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  535. package/src/block/l2_block_stream/l2_tips_store_base.ts +29 -7
  536. package/src/block/proposal/attestations_and_signers.ts +32 -17
  537. package/src/block/test/l2_tips_store_test_suite.ts +1 -1
  538. package/src/checkpoint/checkpoint_data.ts +4 -0
  539. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  540. package/src/checkpoint/digest.ts +28 -0
  541. package/src/checkpoint/index.ts +3 -0
  542. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  543. package/src/config/chain-config.ts +6 -15
  544. package/src/config/index.ts +0 -1
  545. package/src/config/sequencer-config.ts +25 -7
  546. package/src/contract/complete_address.ts +7 -3
  547. package/src/contract/contract_address.ts +6 -6
  548. package/src/contract/contract_instance.ts +11 -2
  549. package/src/contract/interfaces/contract_instance.ts +6 -2
  550. package/src/database-version/version_manager.ts +17 -0
  551. package/src/gas/gas.ts +8 -3
  552. package/src/gas/gas_fees.ts +9 -9
  553. package/src/gas/gas_settings.ts +8 -3
  554. package/src/ha-signing/config.ts +9 -16
  555. package/src/ha-signing/local_config.ts +2 -2
  556. package/src/hash/hash.ts +2 -2
  557. package/src/interfaces/api_limit.ts +1 -1
  558. package/src/interfaces/archiver.ts +80 -94
  559. package/src/interfaces/aztec-node-admin.ts +32 -15
  560. package/src/interfaces/aztec-node-debug.ts +1 -1
  561. package/src/interfaces/aztec-node.ts +296 -262
  562. package/src/interfaces/block-builder.ts +2 -0
  563. package/src/interfaces/block_response.ts +92 -0
  564. package/src/interfaces/chain_tips.ts +24 -0
  565. package/src/interfaces/checkpoint_parameter.ts +20 -0
  566. package/src/interfaces/checkpoint_response.ts +84 -0
  567. package/src/interfaces/client.ts +6 -1
  568. package/src/interfaces/configs.ts +40 -1
  569. package/src/interfaces/l1_publish_info.ts +40 -0
  570. package/src/interfaces/l2_logs_source.ts +13 -42
  571. package/src/interfaces/merkle_tree_operations.ts +9 -2
  572. package/src/interfaces/p2p-bootstrap.ts +2 -2
  573. package/src/interfaces/p2p.ts +35 -15
  574. package/src/interfaces/private_kernel_prover.ts +88 -0
  575. package/src/interfaces/prover-agent.ts +1 -1
  576. package/src/interfaces/prover-node.ts +7 -7
  577. package/src/interfaces/proving-job-source.ts +4 -4
  578. package/src/interfaces/proving-job.ts +3 -3
  579. package/src/interfaces/public_storage_override.ts +26 -0
  580. package/src/interfaces/server.ts +5 -0
  581. package/src/interfaces/slasher.ts +17 -4
  582. package/src/interfaces/tx_provider.ts +6 -0
  583. package/src/interfaces/validator.ts +18 -2
  584. package/src/interfaces/world_state.ts +1 -1
  585. package/src/kernel/hints/key_validation_request.ts +18 -16
  586. package/src/kernel/index.ts +4 -0
  587. package/src/kernel/log_hash.ts +29 -9
  588. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  589. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  590. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  591. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  592. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  593. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  594. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  595. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  596. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  597. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  598. package/src/kernel/public_call_request.ts +22 -7
  599. package/src/keys/derivation.ts +21 -9
  600. package/src/keys/public_key.ts +26 -2
  601. package/src/keys/public_keys.ts +124 -110
  602. package/src/kv-store/config.ts +3 -10
  603. package/src/logs/{extended_directional_app_tagging_secret.ts → app_tagging_secret.ts} +62 -23
  604. package/src/logs/app_tagging_secret_kind.ts +21 -0
  605. package/src/logs/contract_class_log.ts +15 -5
  606. package/src/logs/index.ts +6 -6
  607. package/src/logs/log_cursor.ts +110 -0
  608. package/src/logs/log_result.ts +104 -0
  609. package/src/logs/logs_query.ts +138 -0
  610. package/src/logs/message_context.ts +5 -1
  611. package/src/logs/pre_tag.ts +3 -6
  612. package/src/logs/private_log.ts +9 -3
  613. package/src/logs/query_all_logs_by_tags.ts +98 -0
  614. package/src/logs/siloed_tag.ts +6 -1
  615. package/src/logs/tagging_index_range.ts +4 -10
  616. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  617. package/src/messaging/index.ts +1 -0
  618. package/src/messaging/l2_to_l1_membership.ts +108 -19
  619. package/src/messaging/l2_to_l1_message.ts +29 -9
  620. package/src/noir/index.ts +2 -0
  621. package/src/p2p/block_proposal.ts +99 -28
  622. package/src/p2p/checkpoint_attestation.ts +26 -26
  623. package/src/p2p/checkpoint_proposal.ts +109 -39
  624. package/src/p2p/consensus_payload.ts +59 -28
  625. package/src/p2p/signature_utils.ts +110 -25
  626. package/src/p2p/signed_txs.ts +46 -28
  627. package/src/parity/parity_base_private_inputs.ts +10 -4
  628. package/src/parity/parity_public_inputs.ts +9 -2
  629. package/src/proofs/chonk_proof.ts +49 -15
  630. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  631. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  632. package/src/schemas/schemas.ts +6 -1
  633. package/src/slashing/helpers.ts +13 -9
  634. package/src/slashing/types.ts +21 -14
  635. package/src/stats/stats.ts +4 -0
  636. package/src/tests/factories.ts +97 -68
  637. package/src/tests/mocks.ts +49 -57
  638. package/src/timetable/index.ts +63 -105
  639. package/src/trees/append_only_tree_snapshot.ts +8 -3
  640. package/src/trees/nullifier_membership_witness.ts +2 -12
  641. package/src/tx/block_header.ts +8 -3
  642. package/src/tx/global_variables.ts +10 -18
  643. package/src/tx/hashed_values.ts +8 -3
  644. package/src/tx/indexed_tx_effect.ts +17 -4
  645. package/src/tx/partial_state_reference.ts +8 -3
  646. package/src/tx/profiling.ts +4 -4
  647. package/src/tx/proven_tx.ts +6 -0
  648. package/src/tx/public_call_request_with_calldata.ts +8 -3
  649. package/src/tx/simulated_tx.ts +18 -21
  650. package/src/tx/state_reference.ts +9 -4
  651. package/src/tx/tree_snapshots.ts +9 -4
  652. package/src/tx/tx.ts +41 -22
  653. package/src/tx/tx_constant_data.ts +8 -3
  654. package/src/tx/tx_context.ts +8 -3
  655. package/src/tx/tx_hash.ts +20 -5
  656. package/src/tx/tx_receipt.ts +263 -80
  657. package/src/tx/validator/tx_validator.ts +1 -5
  658. package/src/types/shared.ts +8 -3
  659. package/src/update-checker/dev_version.ts +2 -0
  660. package/src/update-checker/index.ts +1 -0
  661. package/src/update-checker/package_version.ts +10 -23
  662. package/src/validators/schemas.ts +6 -4
  663. package/src/validators/types.ts +21 -2
  664. package/src/versioning/versioning.ts +1 -1
  665. package/src/world-state/genesis_data.ts +12 -0
  666. package/src/world-state/world_state_revision.ts +0 -33
  667. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  668. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  669. package/dest/block/checkpointed_l2_block.js +0 -46
  670. package/dest/config/pipelining-config.d.ts +0 -19
  671. package/dest/config/pipelining-config.d.ts.map +0 -1
  672. package/dest/config/pipelining-config.js +0 -18
  673. package/dest/interfaces/get_logs_response.d.ts +0 -97
  674. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  675. package/dest/interfaces/get_logs_response.js +0 -12
  676. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  677. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  678. package/dest/logs/extended_contract_class_log.js +0 -67
  679. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  680. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  681. package/dest/logs/extended_public_log.d.ts +0 -106
  682. package/dest/logs/extended_public_log.d.ts.map +0 -1
  683. package/dest/logs/extended_public_log.js +0 -73
  684. package/dest/logs/log_filter.d.ts +0 -25
  685. package/dest/logs/log_filter.d.ts.map +0 -1
  686. package/dest/logs/log_filter.js +0 -12
  687. package/dest/logs/log_id.d.ts +0 -85
  688. package/dest/logs/log_id.d.ts.map +0 -1
  689. package/dest/logs/log_id.js +0 -93
  690. package/dest/logs/tx_scoped_l2_log.d.ts +0 -51
  691. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  692. package/dest/logs/tx_scoped_l2_log.js +0 -77
  693. package/src/block/checkpointed_l2_block.ts +0 -70
  694. package/src/config/pipelining-config.ts +0 -31
  695. package/src/interfaces/get_logs_response.ts +0 -35
  696. package/src/logs/extended_contract_class_log.ts +0 -87
  697. package/src/logs/extended_public_log.ts +0 -94
  698. package/src/logs/log_filter.ts +0 -36
  699. package/src/logs/log_id.ts +0 -124
  700. package/src/logs/tx_scoped_l2_log.ts +0 -114
@@ -9,7 +9,6 @@ import {
9
9
  AVM_V2_PROOF_LENGTH_IN_FIELDS_PADDED,
10
10
  CHONK_PROOF_LENGTH,
11
11
  CONTRACT_CLASS_LOG_SIZE_IN_FIELDS,
12
- DomainSeparator,
13
12
  L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH,
14
13
  MAX_CHECKPOINTS_PER_EPOCH,
15
14
  MAX_CONTRACT_CLASS_LOGS_PER_TX,
@@ -46,8 +45,6 @@ import { type FieldsOf, makeTuple } from '@aztec/foundation/array';
46
45
  import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
47
46
  import { compact } from '@aztec/foundation/collection';
48
47
  import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
49
- import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
50
- import { SchnorrSignature } from '@aztec/foundation/crypto/schnorr';
51
48
  import { sha256 } from '@aztec/foundation/crypto/sha256';
52
49
  import { Fq, Fr } from '@aztec/foundation/curves/bn254';
53
50
  import { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
@@ -87,6 +84,7 @@ import {
87
84
  import { PublicDataRead } from '../avm/public_data_read.js';
88
85
  import { PublicDataWrite } from '../avm/public_data_write.js';
89
86
  import { AztecAddress } from '../aztec-address/index.js';
87
+ import { BlockHash } from '../block/block_hash.js';
90
88
  import type { L2Tips } from '../block/l2_block_source.js';
91
89
  import {
92
90
  type ContractClassPublic,
@@ -95,6 +93,7 @@ import {
95
93
  type PrivateFunction,
96
94
  SerializableContractInstance,
97
95
  computeContractClassId,
96
+ computePartialAddress,
98
97
  computePublicBytecodeCommitment,
99
98
  } from '../contract/index.js';
100
99
  import { Gas, GasFees, GasSettings } from '../gas/index.js';
@@ -125,12 +124,13 @@ import {
125
124
  PublicCallRequest,
126
125
  PublicCallRequestArrayLengths,
127
126
  } from '../kernel/public_call_request.js';
128
- import { PublicKeys, computeAddress } from '../keys/index.js';
129
- import { ExtendedDirectionalAppTaggingSecret } from '../logs/extended_directional_app_tagging_secret.js';
127
+ import { PublicKey, PublicKeys, computeAddress, hashPublicKey } from '../keys/index.js';
128
+ import { AppTaggingSecret } from '../logs/app_tagging_secret.js';
129
+ import { AppTaggingSecretKind } from '../logs/app_tagging_secret_kind.js';
130
130
  import { ContractClassLog, ContractClassLogFields } from '../logs/index.js';
131
+ import type { LogResult } from '../logs/log_result.js';
131
132
  import { PrivateLog } from '../logs/private_log.js';
132
133
  import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
133
- import { TxScopedL2Log } from '../logs/tx_scoped_l2_log.js';
134
134
  import { CountedL2ToL1Message, L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
135
135
  import { ParityBasePrivateInputs } from '../parity/parity_base_private_inputs.js';
136
136
  import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
@@ -254,7 +254,7 @@ function makeScopedReadRequest(n: number): ScopedReadRequest {
254
254
  * @returns A KeyValidationRequest.
255
255
  */
256
256
  function makeKeyValidationRequests(seed: number): KeyValidationRequest {
257
- return new KeyValidationRequest(makePoint(seed), fr(seed + 2));
257
+ return new KeyValidationRequest(fr(seed), fr(seed + 2));
258
258
  }
259
259
 
260
260
  /**
@@ -579,7 +579,7 @@ export function makeVerificationKeyAsFields(size: number): VerificationKeyAsFiel
579
579
  * @returns A point.
580
580
  */
581
581
  export function makePoint(seed = 1): Point {
582
- return new Point(fr(seed), fr(seed + 1), false);
582
+ return new Point(fr(seed), fr(seed + 1));
583
583
  }
584
584
 
585
585
  /**
@@ -750,15 +750,6 @@ export function makeAztecAddress(seed = 1): AztecAddress {
750
750
  return AztecAddress.fromField(fr(seed));
751
751
  }
752
752
 
753
- /**
754
- * Makes arbitrary Schnorr signature.
755
- * @param seed - The seed to use for generating the Schnorr signature.
756
- * @returns A Schnorr signature.
757
- */
758
- export function makeSchnorrSignature(seed = 1): SchnorrSignature {
759
- return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
760
- }
761
-
762
753
  function makeBlockConstantData(seed = 1, globalVariables?: GlobalVariables) {
763
754
  return new BlockConstantData(
764
755
  makeAppendOnlyTreeSnapshot(seed + 0x100),
@@ -855,11 +846,16 @@ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
855
846
  new Fr(BigInt(seed + 0x200)),
856
847
  new Fr(BigInt(seed + 0x300)),
857
848
  new Fr(BigInt(seed + 0x400)),
849
+ new Fr(BigInt(seed + 0x500)),
858
850
  );
859
851
  }
860
852
 
861
853
  export function makeParityBasePrivateInputs(seed = 0): ParityBasePrivateInputs {
862
- return new ParityBasePrivateInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
854
+ return new ParityBasePrivateInputs(
855
+ makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000),
856
+ new Fr(seed + 0x4000),
857
+ new Fr(seed + 0x5000),
858
+ );
863
859
  }
864
860
 
865
861
  export function makeParityRootPrivateInputs(seed = 0) {
@@ -1226,8 +1222,15 @@ export async function makeMapAsync<T>(size: number, fn: (i: number) => Promise<[
1226
1222
 
1227
1223
  export async function makePublicKeys(seed = 0): Promise<PublicKeys> {
1228
1224
  const f = (offset: number) => Grumpkin.mul(Grumpkin.generator, new Fq(seed + offset));
1229
-
1230
- return new PublicKeys(await f(0), await f(1), await f(2), await f(3));
1225
+ const ivpkM = await f(1);
1226
+ return new PublicKeys(
1227
+ await hashPublicKey(await f(0)),
1228
+ ivpkM,
1229
+ await hashPublicKey(await f(2)),
1230
+ await hashPublicKey(await f(3)),
1231
+ await hashPublicKey(await f(4)),
1232
+ await hashPublicKey(await f(5)),
1233
+ );
1231
1234
  }
1232
1235
 
1233
1236
  export async function makeContractInstanceFromClassId(
@@ -1236,6 +1239,7 @@ export async function makeContractInstanceFromClassId(
1236
1239
  overrides?: {
1237
1240
  deployer?: AztecAddress;
1238
1241
  initializationHash?: Fr;
1242
+ immutablesHash?: Fr;
1239
1243
  publicKeys?: PublicKeys;
1240
1244
  currentClassId?: Fr;
1241
1245
  },
@@ -1244,23 +1248,24 @@ export async function makeContractInstanceFromClassId(
1244
1248
  const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
1245
1249
  const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
1246
1250
  const publicKeys = overrides?.publicKeys ?? (await makePublicKeys(seed + 3));
1251
+ const immutablesHash = overrides?.immutablesHash ?? new Fr(seed + 4);
1247
1252
 
1248
- const saltedInitializationHash = await poseidon2HashWithSeparator(
1249
- [salt, initializationHash, deployer],
1250
- DomainSeparator.PARTIAL_ADDRESS,
1251
- );
1252
- const partialAddress = await poseidon2HashWithSeparator(
1253
- [classId, saltedInitializationHash],
1254
- DomainSeparator.PARTIAL_ADDRESS,
1255
- );
1253
+ const partialAddress = await computePartialAddress({
1254
+ originalContractClassId: classId,
1255
+ salt,
1256
+ initializationHash,
1257
+ immutablesHash,
1258
+ deployer,
1259
+ });
1256
1260
  const address = await computeAddress(publicKeys, partialAddress);
1257
1261
  return new SerializableContractInstance({
1258
- version: 1,
1262
+ version: 2,
1259
1263
  salt,
1260
1264
  deployer,
1261
1265
  currentContractClassId: overrides?.currentClassId ?? classId,
1262
1266
  originalContractClassId: classId,
1263
1267
  initializationHash,
1268
+ immutablesHash,
1264
1269
  publicKeys,
1265
1270
  }).withAddress(address);
1266
1271
  }
@@ -1438,11 +1443,14 @@ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
1438
1443
  new Fr(seed + 0x4),
1439
1444
  new Fr(seed + 0x5),
1440
1445
  new Fr(seed + 0x6),
1446
+ new Fr(seed + 0x7),
1441
1447
  new PublicKeys(
1442
- new Point(new Fr(seed + 0x7), new Fr(seed + 0x8), false),
1443
- new Point(new Fr(seed + 0x9), new Fr(seed + 0x10), false),
1444
- new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false),
1445
- new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false),
1448
+ new Fr(seed + 0x7),
1449
+ new PublicKey(new Fr(seed + 0x9), new Fr(seed + 0x10)),
1450
+ new Fr(seed + 0x11),
1451
+ new Fr(seed + 0x13),
1452
+ new Fr(seed + 0x15),
1453
+ new Fr(seed + 0x17),
1446
1454
  ),
1447
1455
  );
1448
1456
  }
@@ -1635,47 +1643,71 @@ export function fr(n: number): Fr {
1635
1643
  return new Fr(BigInt(n));
1636
1644
  }
1637
1645
 
1638
- /**
1639
- * Creates a random TxScopedL2Log with private log data.
1640
- */
1641
- export function randomTxScopedPrivateL2Log(opts?: {
1646
+ /** Creates a random {@link LogResult} with private-log-shaped data. `includeEffects` populates `noteHashes` + `nullifiers`. */
1647
+ export function randomPrivateLogResult(opts?: {
1642
1648
  tag?: Fr;
1643
1649
  txHash?: TxHash;
1644
1650
  blockNumber?: number;
1651
+ blockHash?: BlockHash;
1645
1652
  blockTimestamp?: bigint;
1653
+ txIndexWithinBlock?: number;
1654
+ logIndexWithinTx?: number;
1646
1655
  noteHashes?: Fr[];
1647
- firstNullifier?: Fr;
1648
- }) {
1656
+ nullifiers?: Fr[];
1657
+ includeEffects?: boolean;
1658
+ }): LogResult {
1649
1659
  const log = PrivateLog.random(opts?.tag);
1650
- return new TxScopedL2Log(
1651
- opts?.txHash ?? TxHash.random(),
1652
- BlockNumber(opts?.blockNumber ?? 1),
1653
- opts?.blockTimestamp ?? 1n,
1654
- log.getEmittedFields(),
1655
- opts?.noteHashes ?? [Fr.random(), Fr.random()],
1656
- opts?.firstNullifier ?? Fr.random(),
1657
- );
1658
- }
1659
-
1660
- /**
1661
- * Creates a random TxScopedL2Log with public log data.
1662
- */
1663
- export async function randomTxScopedPublicL2Log(opts?: {
1660
+ const includeEffects = opts?.includeEffects ?? (opts?.noteHashes !== undefined || opts?.nullifiers !== undefined);
1661
+ const base: LogResult = {
1662
+ logData: log.getEmittedFields(),
1663
+ blockNumber: BlockNumber(opts?.blockNumber ?? 1),
1664
+ blockHash: opts?.blockHash ?? BlockHash.random(),
1665
+ blockTimestamp: opts?.blockTimestamp ?? 1n,
1666
+ txHash: opts?.txHash ?? TxHash.random(),
1667
+ txIndexWithinBlock: opts?.txIndexWithinBlock ?? 0,
1668
+ logIndexWithinTx: opts?.logIndexWithinTx ?? 0,
1669
+ };
1670
+ if (includeEffects) {
1671
+ return {
1672
+ ...base,
1673
+ noteHashes: opts?.noteHashes ?? [Fr.random(), Fr.random()],
1674
+ nullifiers: opts?.nullifiers ?? [Fr.random()],
1675
+ };
1676
+ }
1677
+ return base;
1678
+ }
1679
+
1680
+ /** Creates a random {@link LogResult} with public-log-shaped data. `includeEffects` populates `noteHashes` + `nullifiers`. */
1681
+ export async function randomPublicLogResult(opts?: {
1664
1682
  txHash?: TxHash;
1665
1683
  blockNumber?: number;
1684
+ blockHash?: BlockHash;
1666
1685
  blockTimestamp?: bigint;
1686
+ txIndexWithinBlock?: number;
1687
+ logIndexWithinTx?: number;
1667
1688
  noteHashes?: Fr[];
1668
- firstNullifier?: Fr;
1669
- }) {
1689
+ nullifiers?: Fr[];
1690
+ includeEffects?: boolean;
1691
+ }): Promise<LogResult> {
1670
1692
  const log = await PublicLog.random();
1671
- return new TxScopedL2Log(
1672
- opts?.txHash ?? TxHash.random(),
1673
- BlockNumber(opts?.blockNumber ?? 1),
1674
- opts?.blockTimestamp ?? 1n,
1675
- log.getEmittedFields(),
1676
- opts?.noteHashes ?? [Fr.random(), Fr.random()],
1677
- opts?.firstNullifier ?? Fr.random(),
1678
- );
1693
+ const includeEffects = opts?.includeEffects ?? (opts?.noteHashes !== undefined || opts?.nullifiers !== undefined);
1694
+ const base: LogResult = {
1695
+ logData: log.getEmittedFields(),
1696
+ blockNumber: BlockNumber(opts?.blockNumber ?? 1),
1697
+ blockHash: opts?.blockHash ?? BlockHash.random(),
1698
+ blockTimestamp: opts?.blockTimestamp ?? 1n,
1699
+ txHash: opts?.txHash ?? TxHash.random(),
1700
+ txIndexWithinBlock: opts?.txIndexWithinBlock ?? 0,
1701
+ logIndexWithinTx: opts?.logIndexWithinTx ?? 0,
1702
+ };
1703
+ if (includeEffects) {
1704
+ return {
1705
+ ...base,
1706
+ noteHashes: opts?.noteHashes ?? [Fr.random(), Fr.random()],
1707
+ nullifiers: opts?.nullifiers ?? [Fr.random()],
1708
+ };
1709
+ }
1710
+ return base;
1679
1711
  }
1680
1712
 
1681
1713
  /**
@@ -1722,10 +1754,7 @@ export function makeL2Tips(
1722
1754
  };
1723
1755
  }
1724
1756
 
1725
- export async function randomExtendedDirectionalAppTaggingSecret(): Promise<ExtendedDirectionalAppTaggingSecret> {
1757
+ export async function randomAppTaggingSecret(kind: AppTaggingSecretKind): Promise<AppTaggingSecret> {
1726
1758
  const resolvedApp = await AztecAddress.random();
1727
- // Using the fromString method like this is messy as it leaks the underlying serialization format but I don't want to
1728
- // expose the type's constructor just for tests since in prod the secret is always constructed via compute. Also this
1729
- // method is tested in extended_directional_app_tagging_secret.test.ts hence all should be fine.
1730
- return ExtendedDirectionalAppTaggingSecret.fromString(`${Fr.random().toString()}:${resolvedApp.toString()}`);
1759
+ return new AppTaggingSecret(Fr.random(), resolvedApp, kind);
1731
1760
  }
@@ -14,8 +14,11 @@ import { padArrayEnd, times } from '@aztec/foundation/collection';
14
14
  import { randomBytes } from '@aztec/foundation/crypto/random';
15
15
  import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
16
16
  import { Fr } from '@aztec/foundation/curves/bn254';
17
+ import { EthAddress } from '@aztec/foundation/eth-address';
17
18
  import { Signature } from '@aztec/foundation/eth-signature';
18
19
 
20
+ import { type TypedDataDefinition, hashTypedData } from 'viem';
21
+
19
22
  import type { ContractArtifact } from '../abi/abi.js';
20
23
  import { PublicTxEffect } from '../avm/avm.js';
21
24
  import type { AvmAccumulatedData } from '../avm/avm_accumulated_data.js';
@@ -23,10 +26,9 @@ import { AvmCircuitPublicInputs } from '../avm/avm_circuit_public_inputs.js';
23
26
  import { PublicDataWrite } from '../avm/public_data_write.js';
24
27
  import { RevertCode } from '../avm/revert_code.js';
25
28
  import { AztecAddress } from '../aztec-address/index.js';
26
- import { CheckpointedL2Block, CommitteeAttestation, L2Block } from '../block/index.js';
29
+ import { L2Block } from '../block/index.js';
27
30
  import type { CommitteeAttestationsAndSigners } from '../block/proposal/attestations_and_signers.js';
28
31
  import { Checkpoint } from '../checkpoint/checkpoint.js';
29
- import { L1PublishedData } from '../checkpoint/published_checkpoint.js';
30
32
  import { computeContractAddressFromInstance } from '../contract/contract_address.js';
31
33
  import { getContractClassFromArtifact } from '../contract/contract_class.js';
32
34
  import { SerializableContractInstance } from '../contract/contract_instance.js';
@@ -51,7 +53,7 @@ import { BlockProposal } from '../p2p/block_proposal.js';
51
53
  import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
52
54
  import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
53
55
  import { ConsensusPayload } from '../p2p/consensus_payload.js';
54
- import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '../p2p/signature_utils.js';
56
+ import { type CoordinationSignatureContext, getHashedSignaturePayloadTypedData } from '../p2p/signature_utils.js';
55
57
  import { ChonkProof } from '../proofs/chonk_proof.js';
56
58
  import { ProvingRequestType } from '../proofs/proving_request_type.js';
57
59
  import { CheckpointHeader } from '../rollup/checkpoint_header.js';
@@ -72,6 +74,7 @@ import { NestedProcessReturnValues, PublicSimulationOutput } from '../tx/public_
72
74
  import { TxSimulationResult } from '../tx/simulated_tx.js';
73
75
  import { TxEffect } from '../tx/tx_effect.js';
74
76
  import { TxHash } from '../tx/tx_hash.js';
77
+ import { DEV_VERSION } from '../update-checker/dev_version.js';
75
78
  import {
76
79
  makeAvmCircuitInputs,
77
80
  makeAztecAddress,
@@ -86,6 +89,15 @@ import {
86
89
  makePublicDataWrite,
87
90
  } from './factories.js';
88
91
 
92
+ export const TEST_COORDINATION_SIGNATURE_CONTEXT: CoordinationSignatureContext = {
93
+ chainId: 31337,
94
+ rollupAddress: EthAddress.fromNumber(1),
95
+ };
96
+
97
+ function signTypedData(signer: Secp256k1Signer, typedData: TypedDataDefinition): Signature {
98
+ return signer.sign(Buffer32.fromString(hashTypedData(typedData)));
99
+ }
100
+
89
101
  export const randomTxHash = (): TxHash => TxHash.random();
90
102
 
91
103
  export const mockTx = async (
@@ -479,6 +491,7 @@ export async function mockCheckpointAndMessages(
479
491
 
480
492
  export const randomContractArtifact = (): ContractArtifact => ({
481
493
  name: randomBytes(4).toString('hex'),
494
+ aztecVersion: DEV_VERSION,
482
495
  functions: [],
483
496
  nonDispatchPublicFunctions: [],
484
497
  outputs: {
@@ -519,6 +532,7 @@ export interface MakeConsensusPayloadOptions {
519
532
  txHashes?: TxHash[];
520
533
  txs?: Tx[];
521
534
  feeAssetPriceModifier?: bigint;
535
+ signatureContext?: CoordinationSignatureContext;
522
536
  }
523
537
 
524
538
  export interface MakeBlockProposalOptions {
@@ -529,6 +543,7 @@ export interface MakeBlockProposalOptions {
529
543
  archiveRoot?: Fr;
530
544
  txHashes?: TxHash[];
531
545
  txs?: Tx[];
546
+ signatureContext?: CoordinationSignatureContext;
532
547
  }
533
548
 
534
549
  export interface MakeCheckpointProposalOptions {
@@ -536,6 +551,7 @@ export interface MakeCheckpointProposalOptions {
536
551
  checkpointHeader?: CheckpointHeader;
537
552
  archiveRoot?: Fr;
538
553
  feeAssetPriceModifier?: bigint;
554
+ signatureContext?: CoordinationSignatureContext;
539
555
  /** Options for the lastBlock - if undefined, no lastBlock is included */
540
556
  lastBlock?: {
541
557
  blockHeader?: BlockHeader;
@@ -546,10 +562,7 @@ export interface MakeCheckpointProposalOptions {
546
562
  }
547
563
 
548
564
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
549
- const makeAndSignConsensusPayload = (
550
- domainSeparator: SignatureDomainSeparator,
551
- options?: MakeConsensusPayloadOptions,
552
- ) => {
565
+ const makeAndSignConsensusPayload = (options?: MakeConsensusPayloadOptions) => {
553
566
  const header = options?.header ?? makeCheckpointHeader(1);
554
567
  const { signer = Secp256k1Signer.random(), archive = Fr.random(), feeAssetPriceModifier = 0n } = options ?? {};
555
568
 
@@ -557,9 +570,10 @@ const makeAndSignConsensusPayload = (
557
570
  header,
558
571
  archive,
559
572
  feeAssetPriceModifier,
573
+ signatureContext: TEST_COORDINATION_SIGNATURE_CONTEXT,
560
574
  });
561
575
 
562
- const hash = getHashedSignaturePayloadEthSignedMessage(payload, domainSeparator);
576
+ const hash = getHashedSignaturePayloadTypedData(payload);
563
577
  const signature = signer.sign(hash);
564
578
 
565
579
  return { blockNumber: header.slotNumber, payload, signature };
@@ -569,10 +583,7 @@ export const makeAndSignCommitteeAttestationsAndSigners = (
569
583
  attestationsAndSigners: CommitteeAttestationsAndSigners,
570
584
  signer: Secp256k1Signer = Secp256k1Signer.random(),
571
585
  ) => {
572
- const hash = getHashedSignaturePayloadEthSignedMessage(
573
- attestationsAndSigners,
574
- SignatureDomainSeparator.attestationsAndSigners,
575
- );
586
+ const hash = getHashedSignaturePayloadTypedData(attestationsAndSigners);
576
587
  return signer.sign(hash);
577
588
  };
578
589
 
@@ -584,6 +595,7 @@ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<B
584
595
  const txHashes = options?.txHashes ?? [0, 1, 2, 3, 4, 5].map(() => TxHash.random());
585
596
  const txs = options?.txs;
586
597
  const signer = options?.signer ?? Secp256k1Signer.random();
598
+ const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
587
599
 
588
600
  return BlockProposal.createProposalFromSigner(
589
601
  blockHeader,
@@ -593,7 +605,9 @@ export const makeBlockProposal = (options?: MakeBlockProposalOptions): Promise<B
593
605
  archiveRoot,
594
606
  txHashes,
595
607
  txs,
596
- (_payload, _context) => Promise.resolve(signer.signMessage(_payload)),
608
+ signatureContext,
609
+ (typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
610
+ (typedData, _context) => Promise.resolve(signTypedData(signer, typedData)),
597
611
  );
598
612
  };
599
613
 
@@ -602,6 +616,7 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
602
616
  const archiveRoot = options?.archiveRoot ?? Fr.random();
603
617
  const feeAssetPriceModifier = options?.feeAssetPriceModifier ?? 0n;
604
618
  const signer = options?.signer ?? Secp256k1Signer.random();
619
+ const signatureContext = options?.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
605
620
 
606
621
  // Build a signed block proposal if lastBlock options are provided
607
622
  const lastBlockProposal = options?.lastBlock
@@ -613,6 +628,7 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
613
628
  txHashes: options.lastBlock.txHashes,
614
629
  txs: options.lastBlock.txs,
615
630
  signer,
631
+ signatureContext,
616
632
  })
617
633
  : undefined;
618
634
 
@@ -622,7 +638,8 @@ export const makeCheckpointProposal = async (options?: MakeCheckpointProposalOpt
622
638
  CheckpointNumber(1),
623
639
  feeAssetPriceModifier,
624
640
  lastBlockProposal,
625
- payload => Promise.resolve(signer.signMessage(payload)),
641
+ signatureContext,
642
+ typedData => Promise.resolve(signTypedData(signer, typedData)),
626
643
  );
627
644
  };
628
645
 
@@ -636,6 +653,7 @@ export type MakeCheckpointAttestationOptions = {
636
653
  attesterSigner?: Secp256k1Signer;
637
654
  proposerSigner?: Secp256k1Signer;
638
655
  signer?: Secp256k1Signer;
656
+ signatureContext?: CoordinationSignatureContext;
639
657
  };
640
658
 
641
659
  /**
@@ -645,26 +663,27 @@ export const makeCheckpointAttestation = (options: MakeCheckpointAttestationOpti
645
663
  const header = options.header ?? makeCheckpointHeader(1);
646
664
  const archive = options.archive ?? Fr.random();
647
665
  const feeAssetPriceModifier = options.feeAssetPriceModifier ?? 0n;
666
+ const signatureContext = options.signatureContext ?? TEST_COORDINATION_SIGNATURE_CONTEXT;
648
667
  const { signer, attesterSigner = signer, proposerSigner = signer } = options;
649
668
 
650
- const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier);
669
+ const payload = new ConsensusPayload(header, archive, feeAssetPriceModifier, signatureContext);
651
670
 
652
671
  // Sign as attester
653
- const attestationHash = getHashedSignaturePayloadEthSignedMessage(
654
- payload,
655
- SignatureDomainSeparator.checkpointAttestation,
656
- );
672
+ const attestationHash = getHashedSignaturePayloadTypedData(payload);
657
673
  const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
658
674
  const attestationSignature = attestationSigner.sign(attestationHash);
659
675
 
660
676
  // Sign as proposer - use CheckpointProposal's payload format (serializeToBuffer)
661
677
  // This is different from ConsensusPayload's format (ABI encoding)
662
678
  const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
663
- const tempProposal = new CheckpointProposal(header, archive, feeAssetPriceModifier, Signature.empty());
664
- const proposalHash = getHashedSignaturePayloadEthSignedMessage(
665
- tempProposal,
666
- SignatureDomainSeparator.checkpointProposal,
679
+ const tempProposal = new CheckpointProposal(
680
+ header,
681
+ archive,
682
+ feeAssetPriceModifier,
683
+ Signature.empty(),
684
+ signatureContext,
667
685
  );
686
+ const proposalHash = getHashedSignaturePayloadTypedData(tempProposal);
668
687
  const proposerSignature = proposalSignerToUse.sign(proposalHash);
669
688
 
670
689
  return new CheckpointAttestation(payload, attestationSignature, proposerSignature);
@@ -677,13 +696,15 @@ export const makeCheckpointAttestationFromProposal = (
677
696
  proposal: CheckpointProposal,
678
697
  attesterSigner?: Secp256k1Signer,
679
698
  ): CheckpointAttestation => {
680
- const payload = new ConsensusPayload(proposal.checkpointHeader, proposal.archive, proposal.feeAssetPriceModifier);
699
+ const payload = new ConsensusPayload(
700
+ proposal.checkpointHeader,
701
+ proposal.archive,
702
+ proposal.feeAssetPriceModifier,
703
+ proposal.signatureContext,
704
+ );
681
705
 
682
706
  // Sign as attester
683
- const attestationHash = getHashedSignaturePayloadEthSignedMessage(
684
- payload,
685
- SignatureDomainSeparator.checkpointAttestation,
686
- );
707
+ const attestationHash = getHashedSignaturePayloadTypedData(payload);
687
708
  const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
688
709
  const attestationSignature = attestationSigner.sign(attestationHash);
689
710
 
@@ -726,32 +747,3 @@ export const makeCheckpointAttestationFromBlock = (
726
747
 
727
748
  return makeCheckpointAttestation({ header, archive, attesterSigner, proposerSigner });
728
749
  };
729
-
730
- export async function randomPublishedL2Block(
731
- l2BlockNumber: number,
732
- opts: { signers?: Secp256k1Signer[] } = {},
733
- ): Promise<CheckpointedL2Block> {
734
- const block = await L2Block.random(BlockNumber(l2BlockNumber));
735
- const l1 = L1PublishedData.fromFields({
736
- blockNumber: BigInt(block.number),
737
- timestamp: block.header.globalVariables.timestamp,
738
- blockHash: Buffer32.random().toString(),
739
- });
740
-
741
- const signers = opts.signers ?? times(3, () => Secp256k1Signer.random());
742
- const checkpoint = await Checkpoint.random(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), {
743
- numBlocks: 0,
744
- });
745
- checkpoint.blocks = [block];
746
- const atts = signers.map(signer =>
747
- makeCheckpointAttestation({
748
- signer,
749
- archive: block.archive.root,
750
- header: checkpoint.header,
751
- }),
752
- );
753
- const attestations = atts.map(
754
- (attestation, i) => new CommitteeAttestation(signers[i].address, attestation.signature),
755
- );
756
- return new CheckpointedL2Block(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), block, l1, attestations);
757
- }