@aztec/stdlib 0.0.1-commit.03f7ef2 → 0.0.1-commit.0b941701

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 (546) 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 +9 -1
  5. package/dest/abi/function_call.d.ts.map +1 -1
  6. package/dest/abi/selector.js +3 -1
  7. package/dest/abi/utils.d.ts +7 -1
  8. package/dest/abi/utils.d.ts.map +1 -1
  9. package/dest/abi/utils.js +7 -0
  10. package/dest/auth_witness/auth_witness.d.ts +2 -1
  11. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  12. package/dest/avm/avm.d.ts +62 -62
  13. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  14. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  15. package/dest/avm/avm_accumulated_data.js +5 -2
  16. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  17. package/dest/avm/avm_circuit_public_inputs.js +3 -1
  18. package/dest/avm/avm_proving_request.d.ts +299 -299
  19. package/dest/avm/contract_storage_read.d.ts +13 -1
  20. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  21. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  22. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  23. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  24. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  25. package/dest/avm/public_data_read.d.ts +10 -1
  26. package/dest/avm/public_data_read.d.ts.map +1 -1
  27. package/dest/avm/public_data_update_request.d.ts +10 -1
  28. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  29. package/dest/avm/public_data_update_request.js +3 -1
  30. package/dest/avm/public_data_write.d.ts +7 -1
  31. package/dest/avm/public_data_write.d.ts.map +1 -1
  32. package/dest/avm/public_inner_call_request.d.ts +4 -1
  33. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  34. package/dest/avm/public_inner_call_request.js +3 -1
  35. package/dest/avm/revert_code.d.ts +4 -4
  36. package/dest/avm/revert_code.d.ts.map +1 -1
  37. package/dest/avm/revert_code.js +3 -1
  38. package/dest/aztec-address/index.js +4 -2
  39. package/dest/block/attestation_info.d.ts +5 -5
  40. package/dest/block/attestation_info.d.ts.map +1 -1
  41. package/dest/block/attestation_info.js +4 -4
  42. package/dest/block/block_hash.d.ts +9 -2
  43. package/dest/block/block_hash.d.ts.map +1 -1
  44. package/dest/block/block_hash.js +15 -0
  45. package/dest/block/block_parameter.d.ts +4 -3
  46. package/dest/block/block_parameter.d.ts.map +1 -1
  47. package/dest/block/block_parameter.js +2 -0
  48. package/dest/block/body.d.ts +1 -1
  49. package/dest/block/body.d.ts.map +1 -1
  50. package/dest/block/body.js +5 -2
  51. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  52. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  53. package/dest/block/checkpointed_l2_block.js +7 -45
  54. package/dest/block/index.d.ts +1 -3
  55. package/dest/block/index.d.ts.map +1 -1
  56. package/dest/block/index.js +0 -2
  57. package/dest/block/l2_block.d.ts +56 -57
  58. package/dest/block/l2_block.d.ts.map +1 -1
  59. package/dest/block/l2_block.js +64 -107
  60. package/dest/block/l2_block_source.d.ts +296 -67
  61. package/dest/block/l2_block_source.d.ts.map +1 -1
  62. package/dest/block/l2_block_source.js +25 -6
  63. package/dest/block/l2_block_stream/index.d.ts +2 -1
  64. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  65. package/dest/block/l2_block_stream/index.js +1 -0
  66. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  67. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  68. package/dest/block/l2_block_stream/l2_block_stream.d.ts +8 -3
  69. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  70. package/dest/block/l2_block_stream/l2_block_stream.js +106 -31
  71. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  72. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  73. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  74. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  75. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  76. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  77. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  78. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  79. package/dest/block/test/l2_tips_store_test_suite.js +478 -38
  80. package/dest/block/validate_block_result.d.ts +24 -24
  81. package/dest/block/validate_block_result.d.ts.map +1 -1
  82. package/dest/block/validate_block_result.js +18 -17
  83. package/dest/checkpoint/checkpoint.d.ts +30 -20
  84. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  85. package/dest/checkpoint/checkpoint.js +19 -6
  86. package/dest/checkpoint/checkpoint_info.d.ts +32 -3
  87. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  88. package/dest/checkpoint/checkpoint_info.js +34 -1
  89. package/dest/checkpoint/index.d.ts +2 -1
  90. package/dest/checkpoint/index.d.ts.map +1 -1
  91. package/dest/checkpoint/index.js +1 -0
  92. package/dest/checkpoint/published_checkpoint.d.ts +17 -15
  93. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  94. package/dest/checkpoint/published_checkpoint.js +4 -3
  95. package/dest/config/node-rpc-config.js +1 -1
  96. package/dest/contract/complete_address.d.ts +4 -1
  97. package/dest/contract/complete_address.d.ts.map +1 -1
  98. package/dest/contract/contract_deployment_data.d.ts +5 -5
  99. package/dest/contract/index.d.ts +1 -3
  100. package/dest/contract/index.d.ts.map +1 -1
  101. package/dest/contract/index.js +0 -2
  102. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  103. package/dest/contract/private_function.d.ts +1 -1
  104. package/dest/contract/private_function.d.ts.map +1 -1
  105. package/dest/contract/private_function.js +1 -2
  106. package/dest/database-version/version_manager.d.ts +4 -2
  107. package/dest/database-version/version_manager.d.ts.map +1 -1
  108. package/dest/database-version/version_manager.js +3 -1
  109. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  110. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  111. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  112. package/dest/deserialization/index.d.ts +11 -0
  113. package/dest/deserialization/index.d.ts.map +1 -0
  114. package/dest/deserialization/index.js +10 -0
  115. package/dest/epoch-helpers/index.js +1 -1
  116. package/dest/errors/proving_error.d.ts +2 -2
  117. package/dest/errors/proving_error.d.ts.map +1 -1
  118. package/dest/gas/gas.js +3 -1
  119. package/dest/gas/gas_fees.js +3 -1
  120. package/dest/interfaces/api_limit.d.ts +3 -1
  121. package/dest/interfaces/api_limit.d.ts.map +1 -1
  122. package/dest/interfaces/api_limit.js +2 -0
  123. package/dest/interfaces/archiver.d.ts +6 -6
  124. package/dest/interfaces/archiver.d.ts.map +1 -1
  125. package/dest/interfaces/archiver.js +20 -16
  126. package/dest/interfaces/aztec-node-admin.d.ts +71 -35
  127. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  128. package/dest/interfaces/aztec-node-admin.js +3 -3
  129. package/dest/interfaces/aztec-node.d.ts +70 -51
  130. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  131. package/dest/interfaces/aztec-node.js +12 -9
  132. package/dest/interfaces/block-builder.d.ts +16 -14
  133. package/dest/interfaces/block-builder.d.ts.map +1 -1
  134. package/dest/interfaces/configs.d.ts +12 -7
  135. package/dest/interfaces/configs.d.ts.map +1 -1
  136. package/dest/interfaces/configs.js +2 -1
  137. package/dest/interfaces/get_logs_response.d.ts +1 -1
  138. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  139. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  140. package/dest/interfaces/p2p.d.ts +7 -9
  141. package/dest/interfaces/p2p.d.ts.map +1 -1
  142. package/dest/interfaces/p2p.js +3 -4
  143. package/dest/interfaces/prover-client.d.ts +10 -1
  144. package/dest/interfaces/prover-client.d.ts.map +1 -1
  145. package/dest/interfaces/prover-client.js +7 -1
  146. package/dest/interfaces/proving-job.d.ts +184 -184
  147. package/dest/interfaces/proving-job.d.ts.map +1 -1
  148. package/dest/interfaces/proving-job.js +1 -7
  149. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  150. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  151. package/dest/interfaces/tx_provider.d.ts +3 -3
  152. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  153. package/dest/interfaces/validator.d.ts +108 -18
  154. package/dest/interfaces/validator.d.ts.map +1 -1
  155. package/dest/interfaces/validator.js +5 -3
  156. package/dest/interfaces/world_state.d.ts +8 -6
  157. package/dest/interfaces/world_state.d.ts.map +1 -1
  158. package/dest/kernel/claimed_length_array.js +3 -1
  159. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  160. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  161. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  162. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  163. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  164. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  165. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  166. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  167. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  168. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  169. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
  170. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  171. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  172. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  173. package/dest/kernel/hints/read_request.d.ts +7 -1
  174. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  175. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  176. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  177. package/dest/kernel/hints/transient_data_squashing_hint.js +3 -1
  178. package/dest/kernel/log_hash.js +3 -1
  179. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  180. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  181. package/dest/kernel/private_call_data.d.ts +25 -1
  182. package/dest/kernel/private_call_data.d.ts.map +1 -1
  183. package/dest/kernel/private_call_request.d.ts +16 -1
  184. package/dest/kernel/private_call_request.d.ts.map +1 -1
  185. package/dest/kernel/private_circuit_public_inputs.d.ts +74 -1
  186. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  187. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
  188. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  189. package/dest/kernel/private_kernel_data.d.ts +7 -1
  190. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  191. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  192. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  193. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  194. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  195. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  196. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  197. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  198. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  199. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
  200. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  201. package/dest/kernel/private_log_data.js +5 -2
  202. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  203. package/dest/kernel/private_to_avm_accumulated_data.js +5 -2
  204. package/dest/kernel/private_to_public_accumulated_data.js +3 -1
  205. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  206. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  207. package/dest/kernel/private_to_rollup_accumulated_data.js +3 -1
  208. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
  209. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  210. package/dest/kernel/private_validation_requests.d.ts +10 -1
  211. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  212. package/dest/kernel/private_validation_requests.js +3 -1
  213. package/dest/kernel/public_call_request.d.ts +22 -1
  214. package/dest/kernel/public_call_request.d.ts.map +1 -1
  215. package/dest/kernel/public_call_request.js +5 -2
  216. package/dest/kernel/utils/optional_number.d.ts +7 -1
  217. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  218. package/dest/keys/public_keys.d.ts +5 -1
  219. package/dest/keys/public_keys.d.ts.map +1 -1
  220. package/dest/logs/contract_class_log.js +3 -1
  221. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  222. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  223. package/dest/logs/extended_public_log.d.ts +5 -3
  224. package/dest/logs/extended_public_log.d.ts.map +1 -1
  225. package/dest/logs/index.d.ts +1 -2
  226. package/dest/logs/index.d.ts.map +1 -1
  227. package/dest/logs/index.js +0 -1
  228. package/dest/logs/log_id.d.ts +5 -1
  229. package/dest/logs/log_id.d.ts.map +1 -1
  230. package/dest/logs/private_log.js +3 -1
  231. package/dest/logs/public_log.js +3 -1
  232. package/dest/logs/tx_scoped_l2_log.d.ts +18 -39
  233. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  234. package/dest/logs/tx_scoped_l2_log.js +29 -50
  235. package/dest/messaging/in_hash.d.ts +4 -2
  236. package/dest/messaging/in_hash.d.ts.map +1 -1
  237. package/dest/messaging/in_hash.js +3 -1
  238. package/dest/messaging/inbox_leaf.d.ts +3 -1
  239. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  240. package/dest/messaging/l1_actor.d.ts +7 -1
  241. package/dest/messaging/l1_actor.d.ts.map +1 -1
  242. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  243. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  244. package/dest/messaging/l2_actor.d.ts +7 -1
  245. package/dest/messaging/l2_actor.d.ts.map +1 -1
  246. package/dest/messaging/l2_to_l1_membership.d.ts +88 -6
  247. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  248. package/dest/messaging/l2_to_l1_membership.js +160 -42
  249. package/dest/messaging/out_hash.d.ts +41 -3
  250. package/dest/messaging/out_hash.d.ts.map +1 -1
  251. package/dest/messaging/out_hash.js +54 -19
  252. package/dest/note/note_dao.d.ts +36 -5
  253. package/dest/note/note_dao.d.ts.map +1 -1
  254. package/dest/note/note_dao.js +15 -12
  255. package/dest/p2p/attestation_utils.d.ts +3 -3
  256. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  257. package/dest/p2p/attestation_utils.js +1 -1
  258. package/dest/p2p/block_proposal.d.ts +93 -21
  259. package/dest/p2p/block_proposal.d.ts.map +1 -1
  260. package/dest/p2p/block_proposal.js +140 -39
  261. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  262. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  263. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  264. package/dest/p2p/checkpoint_proposal.d.ts +160 -0
  265. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  266. package/dest/p2p/checkpoint_proposal.js +229 -0
  267. package/dest/p2p/consensus_payload.d.ts +9 -9
  268. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  269. package/dest/p2p/consensus_payload.js +3 -5
  270. package/dest/p2p/constants.d.ts +3 -0
  271. package/dest/p2p/constants.d.ts.map +1 -0
  272. package/dest/p2p/constants.js +2 -0
  273. package/dest/p2p/gossipable.d.ts +4 -3
  274. package/dest/p2p/gossipable.d.ts.map +1 -1
  275. package/dest/p2p/gossipable.js +16 -5
  276. package/dest/p2p/index.d.ts +5 -2
  277. package/dest/p2p/index.d.ts.map +1 -1
  278. package/dest/p2p/index.js +4 -1
  279. package/dest/p2p/message_validator.d.ts +18 -3
  280. package/dest/p2p/message_validator.d.ts.map +1 -1
  281. package/dest/p2p/message_validator.js +2 -1
  282. package/dest/p2p/signature_utils.d.ts +5 -3
  283. package/dest/p2p/signature_utils.d.ts.map +1 -1
  284. package/dest/p2p/signature_utils.js +3 -1
  285. package/dest/p2p/signed_txs.d.ts +42 -0
  286. package/dest/p2p/signed_txs.d.ts.map +1 -0
  287. package/dest/p2p/signed_txs.js +75 -0
  288. package/dest/p2p/topic_type.d.ts +3 -2
  289. package/dest/p2p/topic_type.d.ts.map +1 -1
  290. package/dest/p2p/topic_type.js +10 -3
  291. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  292. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  293. package/dest/parity/parity_public_inputs.d.ts +4 -1
  294. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  295. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  296. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  297. package/dest/proofs/chonk_proof.d.ts +1 -1
  298. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  299. package/dest/proofs/chonk_proof.js +9 -4
  300. package/dest/proofs/proof.d.ts +4 -1
  301. package/dest/proofs/proof.d.ts.map +1 -1
  302. package/dest/proofs/recursive_proof.d.ts +10 -1
  303. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  304. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  305. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  306. package/dest/rollup/block_constant_data.d.ts +12 -1
  307. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  308. package/dest/rollup/block_headers_hash.js +1 -1
  309. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  310. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  311. package/dest/rollup/block_rollup_public_inputs.d.ts +47 -11
  312. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  313. package/dest/rollup/block_rollup_public_inputs.js +8 -12
  314. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  315. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  316. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  317. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  318. package/dest/rollup/checkpoint_constant_data.js +3 -1
  319. package/dest/rollup/checkpoint_header.d.ts +42 -12
  320. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  321. package/dest/rollup/checkpoint_header.js +49 -19
  322. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  323. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  324. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +41 -1
  325. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  326. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -2
  327. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  328. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  329. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  330. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  331. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  332. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  333. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  334. package/dest/rollup/root_rollup_public_inputs.d.ts +18 -3
  335. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  336. package/dest/rollup/root_rollup_public_inputs.js +9 -3
  337. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  338. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  339. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  340. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  341. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  342. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  343. package/dest/schemas/schemas.d.ts +1 -1
  344. package/dest/tests/factories.d.ts +39 -10
  345. package/dest/tests/factories.d.ts.map +1 -1
  346. package/dest/tests/factories.js +80 -25
  347. package/dest/tests/jest.js +1 -1
  348. package/dest/tests/mocks.d.ts +69 -18
  349. package/dest/tests/mocks.d.ts.map +1 -1
  350. package/dest/tests/mocks.js +119 -54
  351. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  352. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  353. package/dest/trees/append_only_tree_snapshot.js +3 -1
  354. package/dest/trees/nullifier_leaf.d.ts +13 -1
  355. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  356. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  357. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  358. package/dest/trees/public_data_leaf.d.ts +16 -1
  359. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  360. package/dest/trees/public_data_witness.d.ts +11 -1
  361. package/dest/trees/public_data_witness.d.ts.map +1 -1
  362. package/dest/tx/block_header.d.ts +14 -2
  363. package/dest/tx/block_header.d.ts.map +1 -1
  364. package/dest/tx/block_header.js +8 -2
  365. package/dest/tx/call_context.d.ts +13 -1
  366. package/dest/tx/call_context.d.ts.map +1 -1
  367. package/dest/tx/call_context.js +3 -1
  368. package/dest/tx/capsule.d.ts +4 -1
  369. package/dest/tx/capsule.d.ts.map +1 -1
  370. package/dest/tx/execution_payload.d.ts +9 -1
  371. package/dest/tx/execution_payload.d.ts.map +1 -1
  372. package/dest/tx/function_data.d.ts +4 -2
  373. package/dest/tx/function_data.d.ts.map +1 -1
  374. package/dest/tx/global_variable_builder.d.ts +2 -2
  375. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  376. package/dest/tx/global_variables.d.ts +9 -1
  377. package/dest/tx/global_variables.d.ts.map +1 -1
  378. package/dest/tx/global_variables.js +3 -1
  379. package/dest/tx/hashed_values.d.ts +7 -1
  380. package/dest/tx/hashed_values.d.ts.map +1 -1
  381. package/dest/tx/in_tx.d.ts +1 -1
  382. package/dest/tx/index.d.ts +1 -2
  383. package/dest/tx/index.d.ts.map +1 -1
  384. package/dest/tx/index.js +0 -1
  385. package/dest/tx/partial_state_reference.d.ts +4 -1
  386. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  387. package/dest/tx/private_execution_result.d.ts +23 -6
  388. package/dest/tx/private_execution_result.d.ts.map +1 -1
  389. package/dest/tx/private_execution_result.js +4 -21
  390. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  391. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  392. package/dest/tx/profiling.d.ts +149 -26
  393. package/dest/tx/profiling.d.ts.map +1 -1
  394. package/dest/tx/profiling.js +44 -7
  395. package/dest/tx/protocol_contracts.d.ts +1 -1
  396. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  397. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  398. package/dest/tx/public_call_request_with_calldata.js +3 -1
  399. package/dest/tx/state_reference.d.ts +3 -1
  400. package/dest/tx/state_reference.d.ts.map +1 -1
  401. package/dest/tx/state_reference.js +3 -1
  402. package/dest/tx/tree_snapshots.js +3 -1
  403. package/dest/tx/tx.d.ts +33 -3
  404. package/dest/tx/tx.d.ts.map +1 -1
  405. package/dest/tx/tx.js +18 -6
  406. package/dest/tx/tx_context.d.ts +2 -1
  407. package/dest/tx/tx_context.d.ts.map +1 -1
  408. package/dest/tx/tx_effect.d.ts +32 -6
  409. package/dest/tx/tx_effect.d.ts.map +1 -1
  410. package/dest/tx/tx_effect.js +6 -9
  411. package/dest/tx/tx_execution_request.d.ts +30 -1
  412. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  413. package/dest/tx/tx_execution_request.js +6 -2
  414. package/dest/tx/tx_hash.d.ts +2 -1
  415. package/dest/tx/tx_hash.d.ts.map +1 -1
  416. package/dest/tx/tx_receipt.d.ts +44 -10
  417. package/dest/tx/tx_receipt.d.ts.map +1 -1
  418. package/dest/tx/tx_receipt.js +44 -13
  419. package/dest/tx/tx_request.d.ts +6 -1
  420. package/dest/tx/tx_request.d.ts.map +1 -1
  421. package/dest/tx/validator/error_texts.d.ts +2 -1
  422. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  423. package/dest/tx/validator/error_texts.js +2 -0
  424. package/dest/types/shared.d.ts +4 -1
  425. package/dest/types/shared.d.ts.map +1 -1
  426. package/dest/validators/schemas.d.ts +8 -8
  427. package/dest/vks/verification_key.d.ts +22 -1
  428. package/dest/vks/verification_key.d.ts.map +1 -1
  429. package/dest/vks/vk_data.d.ts +7 -1
  430. package/dest/vks/vk_data.d.ts.map +1 -1
  431. package/dest/zkpassport/index.d.ts +3 -4
  432. package/dest/zkpassport/index.d.ts.map +1 -1
  433. package/dest/zkpassport/index.js +9 -9
  434. package/package.json +12 -10
  435. package/src/abi/contract_artifact.ts +10 -10
  436. package/src/abi/utils.ts +17 -0
  437. package/src/block/attestation_info.ts +9 -6
  438. package/src/block/block_hash.ts +27 -1
  439. package/src/block/block_parameter.ts +4 -2
  440. package/src/block/body.ts +2 -1
  441. package/src/block/checkpointed_l2_block.ts +8 -58
  442. package/src/block/index.ts +0 -2
  443. package/src/block/l2_block.ts +101 -148
  444. package/src/block/l2_block_source.ts +121 -43
  445. package/src/block/l2_block_stream/index.ts +1 -0
  446. package/src/block/l2_block_stream/interfaces.ts +15 -4
  447. package/src/block/l2_block_stream/l2_block_stream.ts +130 -39
  448. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  449. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  450. package/src/block/test/l2_tips_store_test_suite.ts +480 -36
  451. package/src/block/validate_block_result.ts +40 -35
  452. package/src/checkpoint/checkpoint.ts +34 -11
  453. package/src/checkpoint/checkpoint_info.ts +45 -2
  454. package/src/checkpoint/index.ts +1 -0
  455. package/src/checkpoint/published_checkpoint.ts +4 -3
  456. package/src/config/node-rpc-config.ts +1 -1
  457. package/src/contract/index.ts +0 -2
  458. package/src/contract/private_function.ts +1 -2
  459. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  460. package/src/deserialization/index.ts +21 -0
  461. package/src/epoch-helpers/index.ts +1 -1
  462. package/src/interfaces/api_limit.ts +2 -0
  463. package/src/interfaces/archiver.ts +24 -23
  464. package/src/interfaces/aztec-node-admin.ts +7 -4
  465. package/src/interfaces/aztec-node.ts +100 -68
  466. package/src/interfaces/block-builder.ts +31 -24
  467. package/src/interfaces/configs.ts +3 -0
  468. package/src/interfaces/l2_logs_source.ts +17 -4
  469. package/src/interfaces/p2p.ts +8 -12
  470. package/src/interfaces/prover-client.ts +15 -0
  471. package/src/interfaces/proving-job.ts +2 -11
  472. package/src/interfaces/server_circuit_prover.ts +3 -2
  473. package/src/interfaces/tx_provider.ts +2 -2
  474. package/src/interfaces/validator.ts +63 -14
  475. package/src/interfaces/world_state.ts +9 -7
  476. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  477. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  478. package/src/logs/index.ts +0 -1
  479. package/src/logs/tx_scoped_l2_log.ts +37 -53
  480. package/src/messaging/in_hash.ts +3 -1
  481. package/src/messaging/l2_to_l1_membership.ts +178 -52
  482. package/src/messaging/out_hash.ts +62 -21
  483. package/src/note/note_dao.ts +18 -13
  484. package/src/p2p/attestation_utils.ts +3 -3
  485. package/src/p2p/block_proposal.ts +204 -44
  486. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +31 -25
  487. package/src/p2p/checkpoint_proposal.ts +348 -0
  488. package/src/p2p/consensus_payload.ts +5 -7
  489. package/src/p2p/constants.ts +3 -0
  490. package/src/p2p/gossipable.ts +14 -4
  491. package/src/p2p/index.ts +4 -1
  492. package/src/p2p/message_validator.ts +14 -2
  493. package/src/p2p/signature_utils.ts +3 -1
  494. package/src/p2p/signed_txs.ts +88 -0
  495. package/src/p2p/topic_type.ts +4 -3
  496. package/src/proofs/chonk_proof.ts +9 -5
  497. package/src/rollup/block_headers_hash.ts +1 -1
  498. package/src/rollup/block_rollup_public_inputs.ts +5 -11
  499. package/src/rollup/checkpoint_header.ts +63 -20
  500. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -0
  501. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  502. package/src/rollup/root_rollup_public_inputs.ts +9 -0
  503. package/src/tests/factories.ts +101 -40
  504. package/src/tests/jest.ts +1 -1
  505. package/src/tests/mocks.ts +207 -87
  506. package/src/tx/block_header.ts +11 -3
  507. package/src/tx/global_variable_builder.ts +1 -1
  508. package/src/tx/index.ts +0 -1
  509. package/src/tx/private_execution_result.ts +1 -16
  510. package/src/tx/profiling.ts +46 -4
  511. package/src/tx/tx.ts +19 -11
  512. package/src/tx/tx_effect.ts +3 -10
  513. package/src/tx/tx_execution_request.ts +2 -0
  514. package/src/tx/tx_receipt.ts +72 -15
  515. package/src/tx/validator/error_texts.ts +3 -0
  516. package/src/zkpassport/index.ts +11 -12
  517. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  518. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  519. package/dest/block/l2_block_code_to_purge.js +0 -61
  520. package/dest/block/l2_block_header.d.ts +0 -98
  521. package/dest/block/l2_block_header.d.ts.map +0 -1
  522. package/dest/block/l2_block_header.js +0 -153
  523. package/dest/block/l2_block_new.d.ts +0 -135
  524. package/dest/block/l2_block_new.d.ts.map +0 -1
  525. package/dest/block/l2_block_new.js +0 -152
  526. package/dest/contract/contract_class_metadata.d.ts +0 -8
  527. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  528. package/dest/contract/contract_class_metadata.js +0 -1
  529. package/dest/contract/contract_metadata.d.ts +0 -7
  530. package/dest/contract/contract_metadata.d.ts.map +0 -1
  531. package/dest/contract/contract_metadata.js +0 -1
  532. package/dest/logs/log_with_tx_data.d.ts +0 -19
  533. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  534. package/dest/logs/log_with_tx_data.js +0 -49
  535. package/dest/p2p/block_attestation.d.ts +0 -80
  536. package/dest/p2p/block_attestation.d.ts.map +0 -1
  537. package/dest/tx/content_commitment.d.ts +0 -49
  538. package/dest/tx/content_commitment.d.ts.map +0 -1
  539. package/dest/tx/content_commitment.js +0 -90
  540. package/src/block/l2_block_code_to_purge.ts +0 -88
  541. package/src/block/l2_block_header.ts +0 -246
  542. package/src/block/l2_block_new.ts +0 -207
  543. package/src/contract/contract_class_metadata.ts +0 -8
  544. package/src/contract/contract_metadata.ts +0 -7
  545. package/src/logs/log_with_tx_data.ts +0 -46
  546. package/src/tx/content_commitment.ts +0 -113
@@ -1,70 +1,49 @@
1
1
  import { BlockNumber } from '@aztec/foundation/branded-types';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { z } from 'zod';
3
- import { L2BlockHash } from '../block/block_hash.js';
4
4
  import { TxHash } from '../tx/tx_hash.js';
5
5
  import type { UInt64 } from '../types/shared.js';
6
- import { PrivateLog } from './private_log.js';
7
- import { PublicLog } from './public_log.js';
8
6
  export declare class TxScopedL2Log {
9
7
  txHash: TxHash;
10
- dataStartIndexForTx: number;
11
- logIndexInTx: number;
12
8
  blockNumber: BlockNumber;
13
- blockHash: L2BlockHash;
14
9
  blockTimestamp: UInt64;
15
- log: PrivateLog | PublicLog;
16
- constructor(txHash: TxHash, dataStartIndexForTx: number, logIndexInTx: number, blockNumber: BlockNumber, blockHash: L2BlockHash, blockTimestamp: UInt64, log: PrivateLog | PublicLog);
17
- get isFromPublic(): boolean;
10
+ logData: Fr[];
11
+ noteHashes: Fr[];
12
+ firstNullifier: Fr;
13
+ constructor(txHash: TxHash, blockNumber: BlockNumber, blockTimestamp: UInt64, logData: Fr[], noteHashes: Fr[], firstNullifier: Fr);
18
14
  static get schema(): z.ZodEffects<z.ZodObject<{
19
15
  txHash: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, Buffer<ArrayBuffer>, string>, TxHash, string>;
20
- dataStartIndexForTx: z.ZodNumber;
21
- logIndexInTx: z.ZodNumber;
22
16
  blockNumber: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
23
- blockHash: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, Buffer<ArrayBuffer>, string>, L2BlockHash, string>;
24
17
  blockTimestamp: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
25
- log: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
26
- fields: z.ZodArray<z.ZodType<import("../../../foundation/dest/schemas/schemas.js").Fr, any, string>, "many">;
27
- emittedLength: z.ZodNumber;
28
- }, "strict", z.ZodTypeAny, {
29
- fields: import("../../../foundation/dest/schemas/schemas.js").Fr[];
30
- emittedLength: number;
31
- }, {
32
- fields: string[];
33
- emittedLength: number;
34
- }>, PrivateLog, {
35
- fields: string[];
36
- emittedLength: number;
37
- }>, import("../schemas/schemas.js").ZodFor<PublicLog>]>;
18
+ logData: z.ZodArray<z.ZodType<Fr, any, string>, "many">;
19
+ noteHashes: z.ZodArray<z.ZodType<Fr, any, string>, "many">;
20
+ firstNullifier: z.ZodType<Fr, any, string>;
38
21
  }, "strip", z.ZodTypeAny, {
39
22
  txHash: TxHash;
40
- dataStartIndexForTx: number;
41
- logIndexInTx: number;
42
23
  blockNumber: number & {
43
24
  _branding: "BlockNumber";
44
25
  };
45
- blockHash: L2BlockHash;
46
26
  blockTimestamp: bigint;
47
- log: PrivateLog | PublicLog;
27
+ logData: Fr[];
28
+ noteHashes: Fr[];
29
+ firstNullifier: Fr;
48
30
  }, {
49
31
  txHash: string;
50
- dataStartIndexForTx: number;
51
- logIndexInTx: number;
52
32
  blockNumber: string | number | bigint;
53
- blockHash: string;
54
33
  blockTimestamp: string | number | bigint;
55
- log?: any;
34
+ logData: string[];
35
+ noteHashes: string[];
36
+ firstNullifier: string;
56
37
  }>, TxScopedL2Log, {
57
38
  txHash: string;
58
- dataStartIndexForTx: number;
59
- logIndexInTx: number;
60
39
  blockNumber: string | number | bigint;
61
- blockHash: string;
62
40
  blockTimestamp: string | number | bigint;
63
- log?: any;
41
+ logData: string[];
42
+ noteHashes: string[];
43
+ firstNullifier: string;
64
44
  }>;
65
45
  toBuffer(): Buffer<ArrayBuffer>;
66
46
  static fromBuffer(buffer: Buffer): TxScopedL2Log;
67
- static random(isFromPublic?: boolean): Promise<TxScopedL2Log>;
68
47
  equals(other: TxScopedL2Log): boolean;
69
48
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfc2NvcGVkX2wyX2xvZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3MvdHhfc2NvcGVkX2wyX2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFxQixNQUFNLGlDQUFpQyxDQUFDO0FBR2pGLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXJELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzVDLHFCQUFhLGFBQWE7SUFLZixNQUFNLEVBQUUsTUFBTTtJQUtkLG1CQUFtQixFQUFFLE1BQU07SUFLM0IsWUFBWSxFQUFFLE1BQU07SUFJcEIsV0FBVyxFQUFFLFdBQVc7SUFJeEIsU0FBUyxFQUFFLFdBQVc7SUFJdEIsY0FBYyxFQUFFLE1BQU07SUFJdEIsR0FBRyxFQUFFLFVBQVUsR0FBRyxTQUFTO0lBOUJwQyxZQUlTLE1BQU0sRUFBRSxNQUFNLEVBS2QsbUJBQW1CLEVBQUUsTUFBTSxFQUszQixZQUFZLEVBQUUsTUFBTSxFQUlwQixXQUFXLEVBQUUsV0FBVyxFQUl4QixTQUFTLEVBQUUsV0FBVyxFQUl0QixjQUFjLEVBQUUsTUFBTSxFQUl0QixHQUFHLEVBQUUsVUFBVSxHQUFHLFNBQVMsRUFDaEM7SUFFSixJQUFJLFlBQVksWUFFZjtJQUVELE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BZWhCO0lBRUQsUUFBUSx3QkFXUDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0saUJBWS9CO0lBRUQsT0FBYSxNQUFNLENBQUMsWUFBWSxVQUFzQiwwQkFHckQ7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLGFBQWEsV0FZMUI7Q0FDRiJ9
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfc2NvcGVkX2wyX2xvZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3MvdHhfc2NvcGVkX2wyX2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFxQixNQUFNLGlDQUFpQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQVNwRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxxQkFBYSxhQUFhO0lBS2YsTUFBTSxFQUFFLE1BQU07SUFJZCxXQUFXLEVBQUUsV0FBVztJQUl4QixjQUFjLEVBQUUsTUFBTTtJQUl0QixPQUFPLEVBQUUsRUFBRSxFQUFFO0lBSWIsVUFBVSxFQUFFLEVBQUUsRUFBRTtJQU1oQixjQUFjLEVBQUUsRUFBRTtJQTFCM0IsWUFJUyxNQUFNLEVBQUUsTUFBTSxFQUlkLFdBQVcsRUFBRSxXQUFXLEVBSXhCLGNBQWMsRUFBRSxNQUFNLEVBSXRCLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFJYixVQUFVLEVBQUUsRUFBRSxFQUFFLEVBTWhCLGNBQWMsRUFBRSxFQUFFLEVBQ3ZCO0lBRUosTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWNoQjtJQUVELFFBQVEsd0JBU1A7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLGlCQVUvQjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsYUFBYSxXQVcxQjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"tx_scoped_l2_log.d.ts","sourceRoot":"","sources":["../../src/logs/tx_scoped_l2_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAGjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,qBAAa,aAAa;IAKf,MAAM,EAAE,MAAM;IAKd,mBAAmB,EAAE,MAAM;IAK3B,YAAY,EAAE,MAAM;IAIpB,WAAW,EAAE,WAAW;IAIxB,SAAS,EAAE,WAAW;IAItB,cAAc,EAAE,MAAM;IAItB,GAAG,EAAE,UAAU,GAAG,SAAS;IA9BpC,YAIS,MAAM,EAAE,MAAM,EAKd,mBAAmB,EAAE,MAAM,EAK3B,YAAY,EAAE,MAAM,EAIpB,WAAW,EAAE,WAAW,EAIxB,SAAS,EAAE,WAAW,EAItB,cAAc,EAAE,MAAM,EAItB,GAAG,EAAE,UAAU,GAAG,SAAS,EAChC;IAEJ,IAAI,YAAY,YAEf;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAehB;IAED,QAAQ,wBAWP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,iBAY/B;IAED,OAAa,MAAM,CAAC,YAAY,UAAsB,0BAGrD;IAED,MAAM,CAAC,KAAK,EAAE,aAAa,WAY1B;CACF"}
1
+ {"version":3,"file":"tx_scoped_l2_log.d.ts","sourceRoot":"","sources":["../../src/logs/tx_scoped_l2_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AASpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,aAAa;IAKf,MAAM,EAAE,MAAM;IAId,WAAW,EAAE,WAAW;IAIxB,cAAc,EAAE,MAAM;IAItB,OAAO,EAAE,EAAE,EAAE;IAIb,UAAU,EAAE,EAAE,EAAE;IAMhB,cAAc,EAAE,EAAE;IA1B3B,YAIS,MAAM,EAAE,MAAM,EAId,WAAW,EAAE,WAAW,EAIxB,cAAc,EAAE,MAAM,EAItB,OAAO,EAAE,EAAE,EAAE,EAIb,UAAU,EAAE,EAAE,EAAE,EAMhB,cAAc,EAAE,EAAE,EACvB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAchB;IAED,QAAQ,wBASP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,iBAU/B;IAED,MAAM,CAAC,KAAK,EAAE,aAAa,WAW1B;CACF"}
@@ -1,91 +1,70 @@
1
1
  import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
2
- import { BufferReader, bigintToUInt64BE, boolToBuffer, numToUInt32BE } from '@aztec/foundation/serialize';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
+ import { schemas as foundationSchemas } from '@aztec/foundation/schemas';
4
+ import { BufferReader, bigintToUInt64BE, numToUInt32BE, serializeArrayOfBufferableToVector } from '@aztec/foundation/serialize';
3
5
  import { z } from 'zod';
4
- import { L2BlockHash } from '../block/block_hash.js';
5
6
  import { schemas } from '../schemas/schemas.js';
6
7
  import { TxHash } from '../tx/tx_hash.js';
7
- import { PrivateLog } from './private_log.js';
8
- import { PublicLog } from './public_log.js';
9
- // TODO(#14460): Split to private and public versions instead of having this weird mix.
10
8
  export class TxScopedL2Log {
11
9
  txHash;
12
- dataStartIndexForTx;
13
- logIndexInTx;
14
10
  blockNumber;
15
- blockHash;
16
11
  blockTimestamp;
17
- log;
12
+ logData;
13
+ noteHashes;
14
+ firstNullifier;
18
15
  constructor(/*
19
16
  * Hash of the tx where the log is included
20
17
  */ txHash, /*
21
- * The next available leaf index for the note hash tree for this transaction. It is stored
22
- * with the log so the noteHashIndex can be reconstructed after decryption.
23
- */ dataStartIndexForTx, /*
24
- * The index of the log in the transaction. Note that public and private logs are in separate arrays in the tx
25
- * effect and for this reason these indices are independent (a private and public log can have the same index).
26
- */ logIndexInTx, /*
27
18
  * The block this log is included in
28
19
  */ blockNumber, /*
29
- * The block this log is included in
30
- */ blockHash, /*
31
20
  * The timestamp of the block this log is included in
32
21
  */ blockTimestamp, /*
33
- * The log data as either a PrivateLog or PublicLog
34
- */ log){
22
+ * The log data as an array of field elements
23
+ */ logData, /*
24
+ * The note hashes from the tx effect
25
+ */ noteHashes, /*
26
+ * The first nullifier from the tx effect. Used for nonce discovery when processing notes from logs.
27
+ *
28
+ * (Note nonces are computed as `hash(firstNullifier, noteIndexInTx)`.)
29
+ */ firstNullifier){
35
30
  this.txHash = txHash;
36
- this.dataStartIndexForTx = dataStartIndexForTx;
37
- this.logIndexInTx = logIndexInTx;
38
31
  this.blockNumber = blockNumber;
39
- this.blockHash = blockHash;
40
32
  this.blockTimestamp = blockTimestamp;
41
- this.log = log;
42
- }
43
- get isFromPublic() {
44
- return this.log instanceof PublicLog;
33
+ this.logData = logData;
34
+ this.noteHashes = noteHashes;
35
+ this.firstNullifier = firstNullifier;
45
36
  }
46
37
  static get schema() {
47
38
  return z.object({
48
39
  txHash: TxHash.schema,
49
- dataStartIndexForTx: z.number(),
50
- logIndexInTx: z.number(),
51
40
  blockNumber: BlockNumberSchema,
52
- blockHash: L2BlockHash.schema,
53
41
  blockTimestamp: schemas.UInt64,
54
- log: z.union([
55
- PrivateLog.schema,
56
- PublicLog.schema
57
- ])
58
- }).transform(({ txHash, dataStartIndexForTx, logIndexInTx, blockNumber, blockHash, blockTimestamp, log })=>new TxScopedL2Log(txHash, dataStartIndexForTx, logIndexInTx, blockNumber, blockHash, blockTimestamp, log));
42
+ logData: z.array(foundationSchemas.Fr),
43
+ noteHashes: z.array(foundationSchemas.Fr),
44
+ firstNullifier: foundationSchemas.Fr
45
+ }).transform(({ txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier })=>new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier));
59
46
  }
60
47
  toBuffer() {
61
48
  return Buffer.concat([
62
49
  this.txHash.toBuffer(),
63
- numToUInt32BE(this.dataStartIndexForTx),
64
- numToUInt32BE(this.logIndexInTx),
65
50
  numToUInt32BE(this.blockNumber),
66
- this.blockHash.toBuffer(),
67
51
  bigintToUInt64BE(this.blockTimestamp),
68
- boolToBuffer(this.isFromPublic),
69
- this.log.toBuffer()
52
+ serializeArrayOfBufferableToVector(this.logData),
53
+ serializeArrayOfBufferableToVector(this.noteHashes),
54
+ this.firstNullifier.toBuffer()
70
55
  ]);
71
56
  }
72
57
  static fromBuffer(buffer) {
73
58
  const reader = BufferReader.asReader(buffer);
74
59
  const txHash = reader.readObject(TxHash);
75
- const dataStartIndexForTx = reader.readNumber();
76
- const logIndexInTx = reader.readNumber();
77
60
  const blockNumber = BlockNumber(reader.readNumber());
78
- const blockHash = reader.readObject(L2BlockHash);
79
61
  const blockTimestamp = reader.readUInt64();
80
- const isFromPublic = reader.readBoolean();
81
- const log = isFromPublic ? PublicLog.fromBuffer(reader) : PrivateLog.fromBuffer(reader);
82
- return new TxScopedL2Log(txHash, dataStartIndexForTx, logIndexInTx, blockNumber, blockHash, blockTimestamp, log);
83
- }
84
- static async random(isFromPublic = Math.random() < 0.5) {
85
- const log = isFromPublic ? await PublicLog.random() : PrivateLog.random();
86
- return new TxScopedL2Log(TxHash.random(), 1, 1, BlockNumber(1), L2BlockHash.random(), 1n, log);
62
+ const logData = reader.readVector(Fr);
63
+ const noteHashes = reader.readVector(Fr);
64
+ const firstNullifier = reader.readObject(Fr);
65
+ return new TxScopedL2Log(txHash, blockNumber, blockTimestamp, logData, noteHashes, firstNullifier);
87
66
  }
88
67
  equals(other) {
89
- return this.txHash.equals(other.txHash) && this.dataStartIndexForTx === other.dataStartIndexForTx && this.logIndexInTx === other.logIndexInTx && this.blockNumber === other.blockNumber && this.blockHash.equals(other.blockHash) && this.blockTimestamp === other.blockTimestamp && (this.log instanceof PublicLog && other.log instanceof PublicLog || this.log instanceof PrivateLog && other.log instanceof PrivateLog) && this.log.equals(other.log);
68
+ return this.txHash.equals(other.txHash) && this.blockNumber === other.blockNumber && this.blockTimestamp === other.blockTimestamp && this.logData.length === other.logData.length && this.logData.every((f, i)=>f.equals(other.logData[i])) && this.noteHashes.length === other.noteHashes.length && this.noteHashes.every((h, i)=>h.equals(other.noteHashes[i])) && this.firstNullifier.equals(other.firstNullifier);
90
69
  }
91
70
  }
@@ -1,4 +1,6 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- /** Computes the inHash for a block's ContentCommitment given its l1 to l2 messages. */
2
+ /**
3
+ * Computes the inHash for a checkpoint (or the first block in a checkpoint) given its l1 to l2 messages.
4
+ */
3
5
  export declare function computeInHashFromL1ToL2Messages(unpaddedL1ToL2Messages: Fr[]): Fr;
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5faGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9pbl9oYXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUdwRCx1RkFBdUY7QUFDdkYsd0JBQWdCLCtCQUErQixDQUFDLHNCQUFzQixFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FHaEYifQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5faGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9pbl9oYXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUdwRDs7R0FFRztBQUNILHdCQUFnQiwrQkFBK0IsQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBR2hGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"in_hash.d.ts","sourceRoot":"","sources":["../../src/messaging/in_hash.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,uFAAuF;AACvF,wBAAgB,+BAA+B,CAAC,sBAAsB,EAAE,EAAE,EAAE,GAAG,EAAE,CAGhF"}
1
+ {"version":3,"file":"in_hash.d.ts","sourceRoot":"","sources":["../../src/messaging/in_hash.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,sBAAsB,EAAE,EAAE,EAAE,GAAG,EAAE,CAGhF"}
@@ -2,7 +2,9 @@ import { NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/constants';
2
2
  import { padArrayEnd } from '@aztec/foundation/collection';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { computeBalancedShaRoot } from '@aztec/foundation/trees';
5
- /** Computes the inHash for a block's ContentCommitment given its l1 to l2 messages. */ export function computeInHashFromL1ToL2Messages(unpaddedL1ToL2Messages) {
5
+ /**
6
+ * Computes the inHash for a checkpoint (or the first block in a checkpoint) given its l1 to l2 messages.
7
+ */ export function computeInHashFromL1ToL2Messages(unpaddedL1ToL2Messages) {
6
8
  const l1ToL2Messages = padArrayEnd(unpaddedL1ToL2Messages, Fr.ZERO, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP);
7
9
  return new Fr(computeBalancedShaRoot(l1ToL2Messages.map((msg)=>msg.toBuffer())));
8
10
  }
@@ -2,7 +2,9 @@ import { CheckpointNumber } from '@aztec/foundation/branded-types';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader } from '@aztec/foundation/serialize';
4
4
  export declare class InboxLeaf {
5
+ /** Index of the leaf in the whole tree. */
5
6
  readonly index: bigint;
7
+ /** Leaf in the subtree/message hash. */
6
8
  readonly leaf: Fr;
7
9
  constructor(
8
10
  /** Index of the leaf in the whole tree. */
@@ -20,4 +22,4 @@ export declare class InboxLeaf {
20
22
  /** Returns the checkpoint number for a given leaf index */
21
23
  static checkpointNumberFromIndex(index: bigint): CheckpointNumber;
22
24
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3hfbGVhZi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9pbmJveF9sZWFmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLHFCQUFhLFNBQVM7YUFHRixLQUFLLEVBQUUsTUFBTTthQUViLElBQUksRUFBRSxFQUFFO0lBSjFCO0lBQ0UsMkNBQTJDO0lBQzNCLEtBQUssRUFBRSxNQUFNO0lBQzdCLHdDQUF3QztJQUN4QixJQUFJLEVBQUUsRUFBRSxFQUN0QjtJQUVKLFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFNBQVMsQ0FLbkQ7SUFFRCxNQUFNLENBQUMsMEJBQTBCLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsTUFBTSxDQUU1RTtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FJbkY7SUFFRCwyREFBMkQ7SUFDM0QsTUFBTSxDQUFDLHlCQUF5QixDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBRWhFO0NBQ0YifQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3hfbGVhZi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9pbmJveF9sZWFmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLHFCQUFhLFNBQVM7SUFFbEIsMkNBQTJDO2FBQzNCLEtBQUssRUFBRSxNQUFNO0lBQzdCLHdDQUF3QzthQUN4QixJQUFJLEVBQUUsRUFBRTtJQUoxQjtJQUNFLDJDQUEyQztJQUMzQixLQUFLLEVBQUUsTUFBTTtJQUM3Qix3Q0FBd0M7SUFDeEIsSUFBSSxFQUFFLEVBQUUsRUFDdEI7SUFFSixRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxTQUFTLENBS25EO0lBRUQsTUFBTSxDQUFDLDBCQUEwQixDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixHQUFHLE1BQU0sQ0FFNUU7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBSW5GO0lBRUQsMkRBQTJEO0lBQzNELE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLGdCQUFnQixDQUVoRTtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"inbox_leaf.d.ts","sourceRoot":"","sources":["../../src/messaging/inbox_leaf.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,qBAAa,SAAS;aAGF,KAAK,EAAE,MAAM;aAEb,IAAI,EAAE,EAAE;IAJ1B;IACE,2CAA2C;IAC3B,KAAK,EAAE,MAAM;IAC7B,wCAAwC;IACxB,IAAI,EAAE,EAAE,EACtB;IAEJ,QAAQ,IAAI,MAAM,CAEjB;IAED,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAKnD;IAED,MAAM,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,CAE5E;IAED;;;OAGG;IACH,MAAM,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAInF;IAED,2DAA2D;IAC3D,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAEhE;CACF"}
1
+ {"version":3,"file":"inbox_leaf.d.ts","sourceRoot":"","sources":["../../src/messaging/inbox_leaf.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,qBAAa,SAAS;IAElB,2CAA2C;aAC3B,KAAK,EAAE,MAAM;IAC7B,wCAAwC;aACxB,IAAI,EAAE,EAAE;IAJ1B;IACE,2CAA2C;IAC3B,KAAK,EAAE,MAAM;IAC7B,wCAAwC;IACxB,IAAI,EAAE,EAAE,EACtB;IAEJ,QAAQ,IAAI,MAAM,CAEjB;IAED,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAKnD;IAED,MAAM,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,CAE5E;IAED;;;OAGG;IACH,MAAM,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAInF;IAED,2DAA2D;IAC3D,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAEhE;CACF"}
@@ -5,7 +5,13 @@ import { BufferReader } from '@aztec/foundation/serialize';
5
5
  * The sender of an L1 to L2 message or recipient of an L2 to L1 message.
6
6
  */
7
7
  export declare class L1Actor {
8
+ /**
9
+ * The sender of the message.
10
+ */
8
11
  readonly sender: EthAddress;
12
+ /**
13
+ * The chain id on which the message was sent (L1 -> L2) or on which the message will be received (L2 -> L1).
14
+ */
9
15
  readonly chainId: number;
10
16
  constructor(
11
17
  /**
@@ -22,4 +28,4 @@ export declare class L1Actor {
22
28
  static fromBuffer(buffer: Buffer | BufferReader): L1Actor;
23
29
  static random(): L1Actor;
24
30
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfYWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXNzYWdpbmcvbDFfYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFOztHQUVHO0FBQ0gscUJBQWEsT0FBTzthQUtBLE1BQU0sRUFBRSxVQUFVO2FBSWxCLE9BQU8sRUFBRSxNQUFNO0lBUmpDO0lBQ0U7O09BRUc7SUFDYSxNQUFNLEVBQUUsVUFBVTtJQUNsQzs7T0FFRztJQUNhLE9BQU8sRUFBRSxNQUFNLEVBQzdCO0lBRUosTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxPQUFPLENBS3hEO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBRXZCO0NBQ0YifQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfYWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXNzYWdpbmcvbDFfYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFOztHQUVHO0FBQ0gscUJBQWEsT0FBTztJQUVoQjs7T0FFRzthQUNhLE1BQU0sRUFBRSxVQUFVO0lBQ2xDOztPQUVHO2FBQ2EsT0FBTyxFQUFFLE1BQU07SUFSakM7SUFDRTs7T0FFRztJQUNhLE1BQU0sRUFBRSxVQUFVO0lBQ2xDOztPQUVHO0lBQ2EsT0FBTyxFQUFFLE1BQU0sRUFDN0I7SUFFSixNQUFNLENBQUMsS0FBSyxZQUVYO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLE9BQU8sQ0FLeEQ7SUFFRCxNQUFNLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FFdkI7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l1_actor.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E;;GAEG;AACH,qBAAa,OAAO;aAKA,MAAM,EAAE,UAAU;aAIlB,OAAO,EAAE,MAAM;IARjC;IACE;;OAEG;IACa,MAAM,EAAE,UAAU;IAClC;;OAEG;IACa,OAAO,EAAE,MAAM,EAC7B;IAEJ,MAAM,CAAC,KAAK,YAEX;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAKxD;IAED,MAAM,CAAC,MAAM,IAAI,OAAO,CAEvB;CACF"}
1
+ {"version":3,"file":"l1_actor.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E;;GAEG;AACH,qBAAa,OAAO;IAEhB;;OAEG;aACa,MAAM,EAAE,UAAU;IAClC;;OAEG;aACa,OAAO,EAAE,MAAM;IARjC;IACE;;OAEG;IACa,MAAM,EAAE,UAAU;IAClC;;OAEG;IACa,OAAO,EAAE,MAAM,EAC7B;IAEJ,MAAM,CAAC,KAAK,YAEX;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAKxD;IAED,MAAM,CAAC,MAAM,IAAI,OAAO,CAEvB;CACF"}
@@ -10,10 +10,15 @@ import { L2Actor } from './l2_actor.js';
10
10
  * The format of an L1 to L2 Message.
11
11
  */
12
12
  export declare class L1ToL2Message {
13
+ /** The sender of the message on L1. */
13
14
  readonly sender: L1Actor;
15
+ /** The recipient of the message on L2. */
14
16
  readonly recipient: L2Actor;
17
+ /** The message content. */
15
18
  readonly content: Fr;
19
+ /** The hash of the spending secret. */
16
20
  readonly secretHash: Fr;
21
+ /** Global index of this message on the tree. */
17
22
  readonly index: Fr;
18
23
  constructor(
19
24
  /** The sender of the message on L1. */
@@ -40,4 +45,4 @@ export declare class L1ToL2Message {
40
45
  static random(): Promise<L1ToL2Message>;
41
46
  }
42
47
  export declare function getNonNullifiedL1ToL2MessageWitness(node: AztecNode, contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdG9fbDJfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMV90b19sMl9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXRELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTdELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4Qzs7R0FFRztBQUNILHFCQUFhLGFBQWE7YUFHTixNQUFNLEVBQUUsT0FBTzthQUVmLFNBQVMsRUFBRSxPQUFPO2FBRWxCLE9BQU8sRUFBRSxFQUFFO2FBRVgsVUFBVSxFQUFFLEVBQUU7YUFFZCxLQUFLLEVBQUUsRUFBRTtJQVYzQjtJQUNFLHVDQUF1QztJQUN2QixNQUFNLEVBQUUsT0FBTztJQUMvQiwwQ0FBMEM7SUFDMUIsU0FBUyxFQUFFLE9BQU87SUFDbEMsMkJBQTJCO0lBQ1gsT0FBTyxFQUFFLEVBQUU7SUFDM0IsdUNBQXVDO0lBQ3ZCLFVBQVUsRUFBRSxFQUFFO0lBQzlCLGdEQUFnRDtJQUNoQyxLQUFLLEVBQUUsRUFBRSxFQUN2QjtJQUVKOzs7T0FHRztJQUNILFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsSUFBSSxJQUFJLEVBQUUsQ0FFVDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsYUFBYSxDQVE5RDtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FHN0M7SUFFRCxNQUFNLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FFNUI7SUFFRCxPQUFhLE1BQU0sSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLENBRTVDO0NBQ0Y7QUFHRCx3QkFBc0IsbUNBQW1DLENBQ3ZELElBQUksRUFBRSxTQUFTLEVBQ2YsZUFBZSxFQUFFLFlBQVksRUFDN0IsV0FBVyxFQUFFLEVBQUUsRUFDZixNQUFNLEVBQUUsRUFBRSxHQUNULE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FnQmpFIn0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdG9fbDJfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMV90b19sMl9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXRELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTdELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4Qzs7R0FFRztBQUNILHFCQUFhLGFBQWE7SUFFdEIsdUNBQXVDO2FBQ3ZCLE1BQU0sRUFBRSxPQUFPO0lBQy9CLDBDQUEwQzthQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQywyQkFBMkI7YUFDWCxPQUFPLEVBQUUsRUFBRTtJQUMzQix1Q0FBdUM7YUFDdkIsVUFBVSxFQUFFLEVBQUU7SUFDOUIsZ0RBQWdEO2FBQ2hDLEtBQUssRUFBRSxFQUFFO0lBVjNCO0lBQ0UsdUNBQXVDO0lBQ3ZCLE1BQU0sRUFBRSxPQUFPO0lBQy9CLDBDQUEwQztJQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQywyQkFBMkI7SUFDWCxPQUFPLEVBQUUsRUFBRTtJQUMzQix1Q0FBdUM7SUFDdkIsVUFBVSxFQUFFLEVBQUU7SUFDOUIsZ0RBQWdEO0lBQ2hDLEtBQUssRUFBRSxFQUFFLEVBQ3ZCO0lBRUo7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxJQUFJLElBQUksRUFBRSxDQUVUO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxhQUFhLENBUTlEO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxNQUFNLEdBQUcsYUFBYSxDQUc3QztJQUVELE1BQU0sQ0FBQyxLQUFLLElBQUksYUFBYSxDQUU1QjtJQUVELE9BQWEsTUFBTSxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FFNUM7Q0FDRjtBQUdELHdCQUFzQixtQ0FBbUMsQ0FDdkQsSUFBSSxFQUFFLFNBQVMsRUFDZixlQUFlLEVBQUUsWUFBWSxFQUM3QixXQUFXLEVBQUUsRUFBRSxFQUNmLE1BQU0sRUFBRSxFQUFFLEdBQ1QsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQWdCakUifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"l1_to_l2_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_to_l2_message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAa;aAGN,MAAM,EAAE,OAAO;aAEf,SAAS,EAAE,OAAO;aAElB,OAAO,EAAE,EAAE;aAEX,UAAU,EAAE,EAAE;aAEd,KAAK,EAAE,EAAE;IAV3B;IACE,uCAAuC;IACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;IAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;IACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;IACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;IAChC,KAAK,EAAE,EAAE,EACvB;IAEJ;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,EAAE,CAET;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAQ9D;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAG7C;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAE5C;CACF;AAGD,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,GACT,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAgBjE"}
1
+ {"version":3,"file":"l1_to_l2_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l1_to_l2_message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAa;IAEtB,uCAAuC;aACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;aAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;aACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;aACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;aAChC,KAAK,EAAE,EAAE;IAV3B;IACE,uCAAuC;IACvB,MAAM,EAAE,OAAO;IAC/B,0CAA0C;IAC1B,SAAS,EAAE,OAAO;IAClC,2BAA2B;IACX,OAAO,EAAE,EAAE;IAC3B,uCAAuC;IACvB,UAAU,EAAE,EAAE;IAC9B,gDAAgD;IAChC,KAAK,EAAE,EAAE,EACvB;IAEJ;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,EAAE,CAET;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAQ9D;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAG7C;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAE5C;CACF;AAGD,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,GACT,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAgBjE"}
@@ -5,7 +5,13 @@ import { AztecAddress } from '../aztec-address/index.js';
5
5
  * The recipient of an L2 message.
6
6
  */
7
7
  export declare class L2Actor {
8
+ /**
9
+ * The recipient of the message.
10
+ */
8
11
  readonly recipient: AztecAddress;
12
+ /**
13
+ * The version of the protocol.
14
+ */
9
15
  readonly version: number;
10
16
  constructor(
11
17
  /**
@@ -22,4 +28,4 @@ export declare class L2Actor {
22
28
  static fromBuffer(buffer: Buffer | BufferReader): L2Actor;
23
29
  static random(): Promise<L2Actor>;
24
30
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXNzYWdpbmcvbDJfYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpEOztHQUVHO0FBQ0gscUJBQWEsT0FBTzthQUtBLFNBQVMsRUFBRSxZQUFZO2FBSXZCLE9BQU8sRUFBRSxNQUFNO0lBUmpDO0lBQ0U7O09BRUc7SUFDYSxTQUFTLEVBQUUsWUFBWTtJQUN2Qzs7T0FFRztJQUNhLE9BQU8sRUFBRSxNQUFNLEVBQzdCO0lBRUosTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxPQUFPLENBS3hEO0lBRUQsT0FBYSxNQUFNLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV0QztDQUNGIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXNzYWdpbmcvbDJfYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpEOztHQUVHO0FBQ0gscUJBQWEsT0FBTztJQUVoQjs7T0FFRzthQUNhLFNBQVMsRUFBRSxZQUFZO0lBQ3ZDOztPQUVHO2FBQ2EsT0FBTyxFQUFFLE1BQU07SUFSakM7SUFDRTs7T0FFRztJQUNhLFNBQVMsRUFBRSxZQUFZO0lBQ3ZDOztPQUVHO0lBQ2EsT0FBTyxFQUFFLE1BQU0sRUFDN0I7SUFFSixNQUFNLENBQUMsS0FBSyxZQUVYO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLE9BQU8sQ0FLeEQ7SUFFRCxPQUFhLE1BQU0sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBRXRDO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"l2_actor.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,qBAAa,OAAO;aAKA,SAAS,EAAE,YAAY;aAIvB,OAAO,EAAE,MAAM;IARjC;IACE;;OAEG;IACa,SAAS,EAAE,YAAY;IACvC;;OAEG;IACa,OAAO,EAAE,MAAM,EAC7B;IAEJ,MAAM,CAAC,KAAK,YAEX;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAKxD;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAEtC;CACF"}
1
+ {"version":3,"file":"l2_actor.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,qBAAa,OAAO;IAEhB;;OAEG;aACa,SAAS,EAAE,YAAY;IACvC;;OAEG;aACa,OAAO,EAAE,MAAM;IARjC;IACE;;OAEG;IACa,SAAS,EAAE,YAAY;IACvC;;OAEG;IACa,OAAO,EAAE,MAAM,EAC7B;IAEJ,MAAM,CAAC,KAAK,YAEX;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAKxD;IAED,OAAa,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAEtC;CACF"}
@@ -1,15 +1,97 @@
1
- import type { BlockNumber } from '@aztec/foundation/branded-types';
1
+ import type { EpochNumber } from '@aztec/foundation/branded-types';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { SiblingPath } from '@aztec/foundation/trees';
4
+ /**
5
+ * # L2-to-L1 Message Tree Structure and Leaf IDs
6
+ *
7
+ * ## Overview
8
+ * L2-to-L1 messages are organized in a hierarchical 4-level tree structure within each epoch:
9
+ * Epoch → Checkpoints → Blocks → Transactions → Messages
10
+ *
11
+ * Each level uses an unbalanced Merkle tree, and some levels use compression (skipping zero hashes).
12
+ *
13
+ * ## Tree Levels
14
+ *
15
+ * 1. **Message Tree (TX Out Hash)**
16
+ * - Leaves: Individual L2-to-L1 messages within a transaction
17
+ * - Root: TX out hash
18
+ * - Type: Unbalanced, non-compressed (the circuits ensure that all messages are not empty.)
19
+ *
20
+ * 2. **Block Tree**
21
+ * - Leaves: TX out hashes from all transactions in a block
22
+ * - Root: Block out hash
23
+ * - Type: Unbalanced, compressed (zero hashes are skipped)
24
+ * - Compression: If a tx has no messages (out hash = 0), that branch is ignored
25
+ *
26
+ * 3. **Checkpoint Tree**
27
+ * - Leaves: Block out hashes from all blocks in a checkpoint
28
+ * - Root: Checkpoint out hash
29
+ * - Type: Unbalanced, compressed (zero hashes are skipped)
30
+ * - Compression: If a block has no messages (out hash = 0), that branch is ignored
31
+ *
32
+ * 4. **Epoch Tree**
33
+ * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to AZTEC_MAX_EPOCH_DURATION)
34
+ * - Root: Epoch out hash (set in the root rollup's public inputs and inserted into the Outbox on L1 when the epoch is proven)
35
+ * - Type: Unbalanced, non-compressed
36
+ * - **Important**: Padded with zeros up to AZTEC_MAX_EPOCH_DURATION to allow for proofs of partial epochs
37
+ *
38
+ * ## Combined Membership Proof
39
+ * To prove a message exists in an epoch, we combine the sibling paths from all 4 trees:
40
+ * [message siblings] + [tx siblings] + [block siblings] + [checkpoint siblings]
41
+ *
42
+ * ## Leaf ID: Stable Message Identification
43
+ *
44
+ * Each message gets a unique, stable **leaf ID** that identifies its position in the combined tree.
45
+ * The leaf ID is computed as:
46
+ * leafId = 2^pathSize + leafIndex
47
+ *
48
+ * Where:
49
+ * - `pathSize`: Total length of the combined sibling path (from all 4 tree levels)
50
+ * - `leafIndex`: The message's index in a balanced tree representation at that height
51
+ *
52
+ * ### Why Leaf IDs Are Stable
53
+ *
54
+ * The leaf ID is based on the message's position in the tree structure, which is determined by:
55
+ * - The checkpoint index within the epoch
56
+ * - The block index within the checkpoint
57
+ * - The transaction index within the block
58
+ * - The message index within the transaction
59
+ *
60
+ * These indices are structural and do NOT depend on the total number of blocks/checkpoints in the epoch.
61
+ *
62
+ * ### Critical Property: Preserving Consumed Status
63
+ *
64
+ * **Problem**: On L1, epoch proofs can be submitted incrementally. For example:
65
+ * - First, a proof for checkpoints 1-10 of epoch 0 is submitted (proves the first 10 checkpoints)
66
+ * - Later, a proof for checkpoints 1-20 of epoch 0 is submitted (proves all 20 checkpoints)
67
+ *
68
+ * When the longer proof is submitted, it updates the epoch's out hash root on L1 to reflect the complete epoch (all 20
69
+ * checkpoints). However, some messages from checkpoints 1-10 may have already been consumed.
70
+ *
71
+ * **Solution**: The Outbox on L1 tracks consumed messages using a bitmap indexed by leaf ID.
72
+ * Because leaf IDs are stable (they don't change when more checkpoints are added to the epoch), messages that were consumed
73
+ * under the shorter proof remain marked as consumed under the longer proof.
74
+ *
75
+ * This prevents double-spending of L2-to-L1 messages when longer epoch proofs are submitted.
76
+ */
77
+ /**
78
+ * Computes the unique leaf ID for an L2-to-L1 message.
79
+ *
80
+ * The leaf ID is stable across different epoch proof lengths and is used by the Outbox
81
+ * on L1 to track which messages have been consumed.
82
+ *
83
+ * @param membershipWitness - Contains the leafIndex and siblingPath for the message
84
+ * @returns The unique leaf ID used for tracking message consumption on L1
85
+ */
86
+ export declare function getL2ToL1MessageLeafId(membershipWitness: Pick<L2ToL1MembershipWitness, 'leafIndex' | 'siblingPath'>): bigint;
4
87
  export interface MessageRetrieval {
5
- getL2ToL1Messages(l2BlockNumber: BlockNumber): Promise<Fr[][] | undefined>;
88
+ getL2ToL1Messages(epoch: EpochNumber): Promise<Fr[][][][]>;
6
89
  }
7
90
  export type L2ToL1MembershipWitness = {
8
91
  root: Fr;
9
92
  leafIndex: bigint;
10
93
  siblingPath: SiblingPath<number>;
11
94
  };
12
- export declare function computeL2ToL1MembershipWitness(messageRetriever: MessageRetrieval, l2BlockNumber: BlockNumber, message: Fr): Promise<L2ToL1MembershipWitness | undefined>;
13
- export declare function computeL2ToL1MembershipWitnessFromMessagesForAllTxs(messagesForAllTxs: Fr[][], message: Fr): L2ToL1MembershipWitness;
14
- export declare function getL2ToL1MessageLeafId(membershipWitness: Pick<L2ToL1MembershipWitness, 'leafIndex' | 'siblingPath'>): bigint;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVtYmVyc2hpcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZW1iZXJzaGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUE0RCxNQUFNLHlCQUF5QixDQUFDO0FBRWhILE1BQU0sV0FBVyxnQkFBZ0I7SUFDL0IsaUJBQWlCLENBQUMsYUFBYSxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztDQUM1RTtBQUVELE1BQU0sTUFBTSx1QkFBdUIsR0FBRztJQUNwQyxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ1QsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ2xDLENBQUM7QUFFRix3QkFBc0IsOEJBQThCLENBQ2xELGdCQUFnQixFQUFFLGdCQUFnQixFQUNsQyxhQUFhLEVBQUUsV0FBVyxFQUMxQixPQUFPLEVBQUUsRUFBRSxHQUNWLE9BQU8sQ0FBQyx1QkFBdUIsR0FBRyxTQUFTLENBQUMsQ0FPOUM7QUFJRCx3QkFBZ0IsbURBQW1ELENBQ2pFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQ3pCLE9BQU8sRUFBRSxFQUFFLEdBQ1YsdUJBQXVCLENBNER6QjtBQUVELHdCQUFnQixzQkFBc0IsQ0FDcEMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFdBQVcsR0FBRyxhQUFhLENBQUMsR0FDNUUsTUFBTSxDQUVSIn0=
95
+ export declare function computeL2ToL1MembershipWitness(messageRetriever: MessageRetrieval, epoch: EpochNumber, message: Fr): Promise<L2ToL1MembershipWitness | undefined>;
96
+ export declare function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch: Fr[][][][], message: Fr): L2ToL1MembershipWitness;
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVtYmVyc2hpcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZW1iZXJzaGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUE0RCxNQUFNLHlCQUF5QixDQUFDO0FBRWhIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3RUc7QUFFSDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixzQkFBc0IsQ0FDcEMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFdBQVcsR0FBRyxhQUFhLENBQUMsR0FDNUUsTUFBTSxDQUVSO0FBRUQsTUFBTSxXQUFXLGdCQUFnQjtJQUMvQixpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0NBQzVEO0FBRUQsTUFBTSxNQUFNLHVCQUF1QixHQUFHO0lBQ3BDLElBQUksRUFBRSxFQUFFLENBQUM7SUFDVCxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLFdBQVcsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDbEMsQ0FBQztBQUVGLHdCQUFzQiw4QkFBOEIsQ0FDbEQsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLEtBQUssRUFBRSxXQUFXLEVBQ2xCLE9BQU8sRUFBRSxFQUFFLEdBQ1YsT0FBTyxDQUFDLHVCQUF1QixHQUFHLFNBQVMsQ0FBQyxDQU85QztBQUlELHdCQUFnQixpREFBaUQsQ0FDL0QsZUFBZSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUMzQixPQUFPLEVBQUUsRUFBRSxHQUNWLHVCQUF1QixDQXFGekIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"l2_to_l1_membership.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_membership.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,WAAW,EAA4D,MAAM,yBAAyB,CAAC;AAEhH,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,aAAa,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,CAAC;CAC5E;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,wBAAsB,8BAA8B,CAClD,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,WAAW,EAC1B,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAO9C;AAID,wBAAgB,mDAAmD,CACjE,iBAAiB,EAAE,EAAE,EAAE,EAAE,EACzB,OAAO,EAAE,EAAE,GACV,uBAAuB,CA4DzB;AAED,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,GAAG,aAAa,CAAC,GAC5E,MAAM,CAER"}
1
+ {"version":3,"file":"l2_to_l1_membership.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_membership.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,WAAW,EAA4D,MAAM,yBAAyB,CAAC;AAEhH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,GAAG,aAAa,CAAC,GAC5E,MAAM,CAER;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;CAC5D;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,wBAAsB,8BAA8B,CAClD,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAO9C;AAID,wBAAgB,iDAAiD,CAC/D,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAC3B,OAAO,EAAE,EAAE,GACV,uBAAuB,CAqFzB"}