@aztec/stdlib 0.0.1-commit.1142ef1 → 0.0.1-commit.18ccd8f0

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 (459) hide show
  1. package/dest/abi/function_call.d.ts +9 -1
  2. package/dest/abi/function_call.d.ts.map +1 -1
  3. package/dest/abi/utils.d.ts +7 -1
  4. package/dest/abi/utils.d.ts.map +1 -1
  5. package/dest/abi/utils.js +7 -0
  6. package/dest/auth_witness/auth_witness.d.ts +2 -1
  7. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  8. package/dest/avm/avm.d.ts +62 -62
  9. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  10. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  11. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  12. package/dest/avm/avm_proving_request.d.ts +299 -299
  13. package/dest/avm/contract_storage_read.d.ts +13 -1
  14. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  15. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  16. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  17. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  18. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  19. package/dest/avm/public_data_read.d.ts +10 -1
  20. package/dest/avm/public_data_read.d.ts.map +1 -1
  21. package/dest/avm/public_data_update_request.d.ts +10 -1
  22. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  23. package/dest/avm/public_data_write.d.ts +7 -1
  24. package/dest/avm/public_data_write.d.ts.map +1 -1
  25. package/dest/avm/public_inner_call_request.d.ts +4 -1
  26. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  27. package/dest/avm/revert_code.d.ts +4 -4
  28. package/dest/avm/revert_code.d.ts.map +1 -1
  29. package/dest/block/block_hash.d.ts +16 -9
  30. package/dest/block/block_hash.d.ts.map +1 -1
  31. package/dest/block/block_hash.js +23 -8
  32. package/dest/block/block_parameter.d.ts +4 -3
  33. package/dest/block/block_parameter.d.ts.map +1 -1
  34. package/dest/block/block_parameter.js +2 -0
  35. package/dest/block/body.d.ts +1 -1
  36. package/dest/block/body.d.ts.map +1 -1
  37. package/dest/block/body.js +2 -1
  38. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  39. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  40. package/dest/block/checkpointed_l2_block.js +7 -45
  41. package/dest/block/in_block.d.ts +8 -8
  42. package/dest/block/in_block.d.ts.map +1 -1
  43. package/dest/block/in_block.js +4 -4
  44. package/dest/block/index.d.ts +1 -3
  45. package/dest/block/index.d.ts.map +1 -1
  46. package/dest/block/index.js +0 -2
  47. package/dest/block/l2_block.d.ts +55 -59
  48. package/dest/block/l2_block.d.ts.map +1 -1
  49. package/dest/block/l2_block.js +64 -109
  50. package/dest/block/l2_block_source.d.ts +63 -38
  51. package/dest/block/l2_block_source.d.ts.map +1 -1
  52. package/dest/block/l2_block_source.js +2 -1
  53. package/dest/block/l2_block_stream/interfaces.d.ts +9 -6
  54. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  55. package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -3
  56. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  57. package/dest/block/l2_block_stream/l2_block_stream.js +37 -34
  58. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +3 -3
  59. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  60. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  61. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  62. package/dest/block/test/l2_tips_store_test_suite.js +2 -7
  63. package/dest/block/validate_block_result.d.ts +1 -1
  64. package/dest/block/validate_block_result.d.ts.map +1 -1
  65. package/dest/block/validate_block_result.js +5 -4
  66. package/dest/checkpoint/checkpoint.d.ts +30 -20
  67. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  68. package/dest/checkpoint/checkpoint.js +18 -6
  69. package/dest/checkpoint/published_checkpoint.d.ts +17 -15
  70. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  71. package/dest/checkpoint/published_checkpoint.js +4 -3
  72. package/dest/config/node-rpc-config.js +1 -1
  73. package/dest/contract/complete_address.d.ts +4 -1
  74. package/dest/contract/complete_address.d.ts.map +1 -1
  75. package/dest/contract/contract_address.js +1 -1
  76. package/dest/contract/contract_class_id.d.ts +1 -1
  77. package/dest/contract/contract_class_id.js +1 -1
  78. package/dest/contract/contract_deployment_data.d.ts +5 -5
  79. package/dest/contract/index.d.ts +1 -3
  80. package/dest/contract/index.d.ts.map +1 -1
  81. package/dest/contract/index.js +0 -2
  82. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  83. package/dest/contract/private_function.d.ts +1 -1
  84. package/dest/contract/private_function.d.ts.map +1 -1
  85. package/dest/contract/private_function.js +2 -3
  86. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  87. package/dest/contract/private_function_membership_proof.js +1 -1
  88. package/dest/database-version/version_manager.d.ts +4 -2
  89. package/dest/database-version/version_manager.d.ts.map +1 -1
  90. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  91. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  92. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  93. package/dest/deserialization/index.d.ts +11 -0
  94. package/dest/deserialization/index.d.ts.map +1 -0
  95. package/dest/deserialization/index.js +10 -0
  96. package/dest/epoch-helpers/index.d.ts +3 -1
  97. package/dest/epoch-helpers/index.d.ts.map +1 -1
  98. package/dest/epoch-helpers/index.js +5 -1
  99. package/dest/errors/proving_error.d.ts +2 -2
  100. package/dest/errors/proving_error.d.ts.map +1 -1
  101. package/dest/hash/hash.js +2 -2
  102. package/dest/hash/map_slot.d.ts +1 -1
  103. package/dest/hash/map_slot.d.ts.map +1 -1
  104. package/dest/hash/map_slot.js +4 -3
  105. package/dest/interfaces/api_limit.d.ts +2 -1
  106. package/dest/interfaces/api_limit.d.ts.map +1 -1
  107. package/dest/interfaces/api_limit.js +1 -0
  108. package/dest/interfaces/archiver.d.ts +1 -1
  109. package/dest/interfaces/archiver.d.ts.map +1 -1
  110. package/dest/interfaces/archiver.js +16 -14
  111. package/dest/interfaces/aztec-node-admin.d.ts +56 -26
  112. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  113. package/dest/interfaces/aztec-node.d.ts +61 -43
  114. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  115. package/dest/interfaces/aztec-node.js +7 -9
  116. package/dest/interfaces/block-builder.d.ts +17 -14
  117. package/dest/interfaces/block-builder.d.ts.map +1 -1
  118. package/dest/interfaces/configs.d.ts +8 -8
  119. package/dest/interfaces/configs.d.ts.map +1 -1
  120. package/dest/interfaces/get_logs_response.d.ts +3 -3
  121. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  122. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  123. package/dest/interfaces/prover-client.d.ts +10 -1
  124. package/dest/interfaces/prover-client.d.ts.map +1 -1
  125. package/dest/interfaces/prover-client.js +7 -1
  126. package/dest/interfaces/proving-job.d.ts +14 -14
  127. package/dest/interfaces/tx_provider.d.ts +3 -3
  128. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  129. package/dest/interfaces/validator.d.ts +70 -14
  130. package/dest/interfaces/validator.d.ts.map +1 -1
  131. package/dest/interfaces/validator.js +2 -2
  132. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  133. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  134. package/dest/kernel/hints/build_note_hash_read_request_hints.js +16 -6
  135. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  136. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  137. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  138. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  139. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  140. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  141. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  142. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
  143. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  144. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  145. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  146. package/dest/kernel/hints/read_request.d.ts +7 -1
  147. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  148. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  149. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  150. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  151. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  152. package/dest/kernel/private_call_data.d.ts +25 -1
  153. package/dest/kernel/private_call_data.d.ts.map +1 -1
  154. package/dest/kernel/private_call_request.d.ts +16 -1
  155. package/dest/kernel/private_call_request.d.ts.map +1 -1
  156. package/dest/kernel/private_circuit_public_inputs.d.ts +74 -1
  157. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  158. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
  159. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  160. package/dest/kernel/private_kernel_data.d.ts +7 -1
  161. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  162. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  163. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  164. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  165. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  166. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  167. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  168. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  169. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  170. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
  171. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  172. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  173. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  174. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  175. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
  176. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  177. package/dest/kernel/private_validation_requests.d.ts +10 -1
  178. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  179. package/dest/kernel/public_call_request.d.ts +22 -1
  180. package/dest/kernel/public_call_request.d.ts.map +1 -1
  181. package/dest/kernel/utils/optional_number.d.ts +7 -1
  182. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  183. package/dest/keys/public_keys.d.ts +5 -1
  184. package/dest/keys/public_keys.d.ts.map +1 -1
  185. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  186. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  187. package/dest/logs/extended_public_log.d.ts +7 -5
  188. package/dest/logs/extended_public_log.d.ts.map +1 -1
  189. package/dest/logs/log_id.d.ts +10 -6
  190. package/dest/logs/log_id.d.ts.map +1 -1
  191. package/dest/logs/log_id.js +5 -5
  192. package/dest/logs/siloed_tag.d.ts +1 -1
  193. package/dest/logs/siloed_tag.d.ts.map +1 -1
  194. package/dest/logs/siloed_tag.js +4 -3
  195. package/dest/messaging/inbox_leaf.d.ts +3 -1
  196. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  197. package/dest/messaging/l1_actor.d.ts +7 -1
  198. package/dest/messaging/l1_actor.d.ts.map +1 -1
  199. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  200. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  201. package/dest/messaging/l2_actor.d.ts +7 -1
  202. package/dest/messaging/l2_actor.d.ts.map +1 -1
  203. package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
  204. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  205. package/dest/messaging/l2_to_l1_membership.js +5 -3
  206. package/dest/messaging/out_hash.d.ts +41 -4
  207. package/dest/messaging/out_hash.d.ts.map +1 -1
  208. package/dest/messaging/out_hash.js +52 -26
  209. package/dest/note/note_dao.d.ts +36 -5
  210. package/dest/note/note_dao.d.ts.map +1 -1
  211. package/dest/note/note_dao.js +15 -12
  212. package/dest/p2p/block_proposal.d.ts +23 -8
  213. package/dest/p2p/block_proposal.d.ts.map +1 -1
  214. package/dest/p2p/block_proposal.js +25 -7
  215. package/dest/p2p/checkpoint_attestation.d.ts +5 -1
  216. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  217. package/dest/p2p/checkpoint_proposal.d.ts +20 -7
  218. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  219. package/dest/p2p/checkpoint_proposal.js +17 -5
  220. package/dest/p2p/consensus_payload.d.ts +4 -3
  221. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  222. package/dest/p2p/consensus_payload.js +0 -3
  223. package/dest/p2p/constants.d.ts +3 -0
  224. package/dest/p2p/constants.d.ts.map +1 -0
  225. package/dest/p2p/constants.js +2 -0
  226. package/dest/p2p/index.d.ts +2 -1
  227. package/dest/p2p/index.d.ts.map +1 -1
  228. package/dest/p2p/index.js +1 -0
  229. package/dest/p2p/message_validator.d.ts +18 -3
  230. package/dest/p2p/message_validator.d.ts.map +1 -1
  231. package/dest/p2p/message_validator.js +2 -1
  232. package/dest/p2p/signed_txs.d.ts +3 -1
  233. package/dest/p2p/signed_txs.d.ts.map +1 -1
  234. package/dest/p2p/signed_txs.js +6 -1
  235. package/dest/p2p/topic_type.js +2 -1
  236. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  237. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  238. package/dest/parity/parity_public_inputs.d.ts +4 -1
  239. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  240. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  241. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  242. package/dest/proofs/chonk_proof.d.ts +1 -1
  243. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  244. package/dest/proofs/chonk_proof.js +9 -4
  245. package/dest/proofs/proof.d.ts +4 -1
  246. package/dest/proofs/proof.d.ts.map +1 -1
  247. package/dest/proofs/recursive_proof.d.ts +10 -1
  248. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  249. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  250. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  251. package/dest/rollup/block_constant_data.d.ts +12 -1
  252. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  253. package/dest/rollup/block_headers_hash.js +1 -1
  254. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  255. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  256. package/dest/rollup/block_rollup_public_inputs.d.ts +44 -3
  257. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  258. package/dest/rollup/block_rollup_public_inputs.js +2 -2
  259. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  260. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  261. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  262. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  263. package/dest/rollup/checkpoint_header.d.ts +29 -2
  264. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  265. package/dest/rollup/checkpoint_header.js +21 -5
  266. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  267. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  268. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +41 -6
  269. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  270. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -6
  271. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  272. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  273. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  274. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  275. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  276. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  277. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  278. package/dest/rollup/root_rollup_public_inputs.d.ts +12 -2
  279. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  280. package/dest/rollup/root_rollup_public_inputs.js +4 -1
  281. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  282. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  283. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  284. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  285. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  286. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  287. package/dest/schemas/schemas.d.ts +1 -1
  288. package/dest/tests/factories.d.ts +2 -4
  289. package/dest/tests/factories.d.ts.map +1 -1
  290. package/dest/tests/factories.js +6 -15
  291. package/dest/tests/jest.js +1 -1
  292. package/dest/tests/mocks.d.ts +20 -14
  293. package/dest/tests/mocks.d.ts.map +1 -1
  294. package/dest/tests/mocks.js +45 -27
  295. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  296. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  297. package/dest/trees/nullifier_leaf.d.ts +13 -1
  298. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  299. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  300. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  301. package/dest/trees/public_data_leaf.d.ts +16 -1
  302. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  303. package/dest/trees/public_data_witness.d.ts +11 -1
  304. package/dest/trees/public_data_witness.d.ts.map +1 -1
  305. package/dest/tx/block_header.d.ts +14 -2
  306. package/dest/tx/block_header.d.ts.map +1 -1
  307. package/dest/tx/block_header.js +5 -1
  308. package/dest/tx/call_context.d.ts +13 -1
  309. package/dest/tx/call_context.d.ts.map +1 -1
  310. package/dest/tx/capsule.d.ts +4 -1
  311. package/dest/tx/capsule.d.ts.map +1 -1
  312. package/dest/tx/execution_payload.d.ts +9 -1
  313. package/dest/tx/execution_payload.d.ts.map +1 -1
  314. package/dest/tx/function_data.d.ts +4 -2
  315. package/dest/tx/function_data.d.ts.map +1 -1
  316. package/dest/tx/global_variables.d.ts +9 -1
  317. package/dest/tx/global_variables.d.ts.map +1 -1
  318. package/dest/tx/hashed_values.d.ts +7 -1
  319. package/dest/tx/hashed_values.d.ts.map +1 -1
  320. package/dest/tx/in_tx.d.ts +3 -3
  321. package/dest/tx/indexed_tx_effect.d.ts +4 -4
  322. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  323. package/dest/tx/indexed_tx_effect.js +2 -2
  324. package/dest/tx/partial_state_reference.d.ts +4 -1
  325. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  326. package/dest/tx/private_execution_result.d.ts +23 -2
  327. package/dest/tx/private_execution_result.d.ts.map +1 -1
  328. package/dest/tx/private_execution_result.js +1 -1
  329. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  330. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  331. package/dest/tx/profiling.d.ts +149 -26
  332. package/dest/tx/profiling.d.ts.map +1 -1
  333. package/dest/tx/profiling.js +44 -7
  334. package/dest/tx/protocol_contracts.d.ts +1 -1
  335. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  336. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  337. package/dest/tx/state_reference.d.ts +3 -1
  338. package/dest/tx/state_reference.d.ts.map +1 -1
  339. package/dest/tx/tx.d.ts +24 -1
  340. package/dest/tx/tx.d.ts.map +1 -1
  341. package/dest/tx/tx.js +6 -3
  342. package/dest/tx/tx_context.d.ts +2 -1
  343. package/dest/tx/tx_context.d.ts.map +1 -1
  344. package/dest/tx/tx_effect.d.ts +32 -6
  345. package/dest/tx/tx_effect.d.ts.map +1 -1
  346. package/dest/tx/tx_effect.js +0 -7
  347. package/dest/tx/tx_execution_request.d.ts +30 -1
  348. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  349. package/dest/tx/tx_hash.d.ts +2 -1
  350. package/dest/tx/tx_hash.d.ts.map +1 -1
  351. package/dest/tx/tx_receipt.d.ts +47 -13
  352. package/dest/tx/tx_receipt.d.ts.map +1 -1
  353. package/dest/tx/tx_receipt.js +46 -15
  354. package/dest/tx/tx_request.d.ts +6 -1
  355. package/dest/tx/tx_request.d.ts.map +1 -1
  356. package/dest/tx/validator/error_texts.d.ts +2 -1
  357. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  358. package/dest/tx/validator/error_texts.js +2 -0
  359. package/dest/types/shared.d.ts +4 -1
  360. package/dest/types/shared.d.ts.map +1 -1
  361. package/dest/validators/schemas.d.ts +8 -8
  362. package/dest/vks/verification_key.d.ts +22 -1
  363. package/dest/vks/verification_key.d.ts.map +1 -1
  364. package/dest/vks/vk_data.d.ts +7 -1
  365. package/dest/vks/vk_data.d.ts.map +1 -1
  366. package/dest/zkpassport/index.d.ts +3 -4
  367. package/dest/zkpassport/index.d.ts.map +1 -1
  368. package/dest/zkpassport/index.js +9 -9
  369. package/package.json +12 -10
  370. package/src/abi/utils.ts +17 -0
  371. package/src/block/block_hash.ts +36 -10
  372. package/src/block/block_parameter.ts +4 -2
  373. package/src/block/body.ts +2 -1
  374. package/src/block/checkpointed_l2_block.ts +8 -58
  375. package/src/block/in_block.ts +5 -5
  376. package/src/block/index.ts +0 -2
  377. package/src/block/l2_block.ts +101 -149
  378. package/src/block/l2_block_source.ts +69 -41
  379. package/src/block/l2_block_stream/interfaces.ts +8 -5
  380. package/src/block/l2_block_stream/l2_block_stream.ts +45 -37
  381. package/src/block/l2_block_stream/l2_tips_store_base.ts +2 -2
  382. package/src/block/test/l2_tips_store_test_suite.ts +4 -9
  383. package/src/block/validate_block_result.ts +5 -4
  384. package/src/checkpoint/checkpoint.ts +33 -11
  385. package/src/checkpoint/published_checkpoint.ts +4 -3
  386. package/src/config/node-rpc-config.ts +1 -1
  387. package/src/contract/contract_address.ts +1 -1
  388. package/src/contract/contract_class_id.ts +1 -1
  389. package/src/contract/index.ts +0 -2
  390. package/src/contract/private_function.ts +2 -3
  391. package/src/contract/private_function_membership_proof.ts +1 -1
  392. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  393. package/src/deserialization/index.ts +21 -0
  394. package/src/epoch-helpers/index.ts +10 -1
  395. package/src/hash/hash.ts +2 -2
  396. package/src/hash/map_slot.ts +3 -2
  397. package/src/interfaces/api_limit.ts +1 -0
  398. package/src/interfaces/archiver.ts +16 -23
  399. package/src/interfaces/aztec-node.ts +76 -74
  400. package/src/interfaces/block-builder.ts +33 -24
  401. package/src/interfaces/configs.ts +1 -3
  402. package/src/interfaces/l2_logs_source.ts +17 -4
  403. package/src/interfaces/prover-client.ts +15 -0
  404. package/src/interfaces/tx_provider.ts +2 -2
  405. package/src/interfaces/validator.ts +9 -11
  406. package/src/kernel/hints/build_note_hash_read_request_hints.ts +17 -6
  407. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  408. package/src/logs/log_id.ts +6 -6
  409. package/src/logs/siloed_tag.ts +3 -2
  410. package/src/messaging/l2_to_l1_membership.ts +5 -3
  411. package/src/messaging/out_hash.ts +60 -29
  412. package/src/note/note_dao.ts +18 -13
  413. package/src/p2p/block_proposal.ts +36 -13
  414. package/src/p2p/checkpoint_proposal.ts +29 -11
  415. package/src/p2p/consensus_payload.ts +0 -5
  416. package/src/p2p/constants.ts +3 -0
  417. package/src/p2p/index.ts +1 -0
  418. package/src/p2p/message_validator.ts +14 -2
  419. package/src/p2p/signed_txs.ts +6 -1
  420. package/src/p2p/topic_type.ts +1 -1
  421. package/src/proofs/chonk_proof.ts +9 -5
  422. package/src/rollup/block_headers_hash.ts +1 -1
  423. package/src/rollup/block_rollup_public_inputs.ts +2 -2
  424. package/src/rollup/checkpoint_header.ts +20 -0
  425. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -6
  426. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  427. package/src/rollup/root_rollup_public_inputs.ts +4 -1
  428. package/src/tests/factories.ts +6 -26
  429. package/src/tests/jest.ts +1 -1
  430. package/src/tests/mocks.ts +62 -42
  431. package/src/tx/block_header.ts +11 -3
  432. package/src/tx/indexed_tx_effect.ts +2 -2
  433. package/src/tx/private_execution_result.ts +1 -1
  434. package/src/tx/profiling.ts +46 -4
  435. package/src/tx/tx.ts +8 -9
  436. package/src/tx/tx_effect.ts +0 -9
  437. package/src/tx/tx_receipt.ts +75 -18
  438. package/src/tx/validator/error_texts.ts +3 -0
  439. package/src/zkpassport/index.ts +11 -12
  440. package/dest/block/l2_block_code_to_purge.d.ts +0 -11
  441. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  442. package/dest/block/l2_block_code_to_purge.js +0 -55
  443. package/dest/block/l2_block_header.d.ts +0 -94
  444. package/dest/block/l2_block_header.d.ts.map +0 -1
  445. package/dest/block/l2_block_header.js +0 -160
  446. package/dest/block/l2_block_new.d.ts +0 -134
  447. package/dest/block/l2_block_new.d.ts.map +0 -1
  448. package/dest/block/l2_block_new.js +0 -155
  449. package/dest/contract/contract_class_metadata.d.ts +0 -8
  450. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  451. package/dest/contract/contract_class_metadata.js +0 -1
  452. package/dest/contract/contract_metadata.d.ts +0 -7
  453. package/dest/contract/contract_metadata.d.ts.map +0 -1
  454. package/dest/contract/contract_metadata.js +0 -1
  455. package/src/block/l2_block_code_to_purge.ts +0 -80
  456. package/src/block/l2_block_header.ts +0 -255
  457. package/src/block/l2_block_new.ts +0 -211
  458. package/src/contract/contract_class_metadata.ts +0 -8
  459. package/src/contract/contract_metadata.ts +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block.d.ts","sourceRoot":"","sources":["../../src/block/l2_block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAA2D,MAAM,0BAA0B,CAAC;AACvH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C;;;;GAIG;AACH,qBAAa,OAAO;IAGT,OAAO,EAAE,sBAAsB;IAE/B,MAAM,EAAE,aAAa;IAErB,IAAI,EAAE,IAAI;IACjB,OAAO,CAAC,SAAS;IAPnB;IACE,2DAA2D;IACpD,OAAO,EAAE,sBAAsB;IACtC,uBAAuB;IAChB,MAAM,EAAE,aAAa;IAC5B,qBAAqB;IACd,IAAI,EAAE,IAAI,EACT,SAAS,GAAE,EAAE,GAAG,SAAqB,EAC3C;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,WAO3C;IAED;;;OAGG;IACH,QAAQ,4BAEP;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtC;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED;;;;;;;;OAQG;IACH,OAAa,MAAM,CACjB,UAAU,EAAE,WAAW,EACvB,WAAW,SAAI,EACf,mBAAmB,SAAI,EACvB,oBAAoB,SAAI,EACxB,MAAM,GAAE,EAAE,GAAG,SAAqB,EAClC,UAAU,GAAE,MAAM,GAAG,SAAqB,EAC1C,UAAU,GAAE,MAAM,GAAG,SAAqB,GACzC,OAAO,CAAC,OAAO,CAAC,CAQlB;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC,CAK/B;IAED;;;;OAIG;IACI,mBAAmB,8DAEzB;IAGM,cAAc,IAAI,WAAW,CAEnC;IAEM,SAAS,CAAC,IAAI,GAAE;QAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,UAAU,CAQ/G;IAEM,YAAY,eAOlB;IAED,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,WAe3C;IAED;;;;OAIG;IACI,uBAAuB,SAG7B;IAEM,YAAY,IAAI,EAAE,EAAE,CAG1B;IAEM,eAAe,IAAI,aAAa,CAuBtC;IAED;;;OAGG;IACH,QAAQ;;;;;;;;MAqBP;IAED,WAAW,IAAI,WAAW,CAUzB;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;CACF"}
1
+ {"version":3,"file":"l2_block.d.ts","sourceRoot":"","sources":["../../src/block/l2_block.ts"],"names":[],"mappings":"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"}
@@ -1,150 +1,82 @@
1
- import { encodeBlockBlobData, encodeCheckpointBlobDataFromBlocks } from '@aztec/blob-lib/encoding';
2
- import { CheckpointNumber } from '@aztec/foundation/branded-types';
1
+ import { encodeBlockBlobData } from '@aztec/blob-lib/encoding';
2
+ import { CheckpointNumber, CheckpointNumberSchema, IndexWithinCheckpoint, IndexWithinCheckpointSchema } from '@aztec/foundation/branded-types';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
- import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
5
  import { z } from 'zod';
6
- import { Checkpoint } from '../checkpoint/checkpoint.js';
7
6
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
7
+ import { BlockHeader } from '../tx/block_header.js';
8
8
  import { Body } from './body.js';
9
- import { makeAppendOnlyTreeSnapshot, makeL2BlockHeader } from './l2_block_code_to_purge.js';
10
- import { L2BlockHeader } from './l2_block_header.js';
11
- import { L2BlockNew } from './l2_block_new.js';
12
9
  /**
13
- * The data that makes up the rollup proof, with encoder decoder functions.
14
- *
15
- * @deprecated Use `L2BlockNew` instead.
10
+ * An L2 block with a header and a body.
16
11
  */ export class L2Block {
17
12
  archive;
18
13
  header;
19
14
  body;
20
- blockHash;
21
- constructor(/** Snapshot of archive tree after the block is applied. */ archive, /** L2 block header. */ header, /** L2 block body. */ body, blockHash = undefined){
15
+ checkpointNumber;
16
+ indexWithinCheckpoint;
17
+ constructor(/** Snapshot of archive tree after the block is applied. */ archive, /** Header of the block. */ header, /** L2 block body. */ body, /** Number of the checkpoint that the block belongs to. */ checkpointNumber, /** Index of the block within the checkpoint. */ indexWithinCheckpoint){
22
18
  this.archive = archive;
23
19
  this.header = header;
24
20
  this.body = body;
25
- this.blockHash = blockHash;
21
+ this.checkpointNumber = checkpointNumber;
22
+ this.indexWithinCheckpoint = indexWithinCheckpoint;
23
+ }
24
+ get number() {
25
+ return this.header.globalVariables.blockNumber;
26
+ }
27
+ get slot() {
28
+ return this.header.globalVariables.slotNumber;
29
+ }
30
+ get timestamp() {
31
+ return this.header.globalVariables.timestamp;
26
32
  }
27
33
  static get schema() {
28
34
  return z.object({
29
35
  archive: AppendOnlyTreeSnapshot.schema,
30
- header: L2BlockHeader.schema,
31
- body: Body.schema
32
- }).transform(({ archive, header, body })=>new L2Block(archive, header, body));
36
+ header: BlockHeader.schema,
37
+ body: Body.schema,
38
+ checkpointNumber: CheckpointNumberSchema,
39
+ indexWithinCheckpoint: IndexWithinCheckpointSchema
40
+ }).transform(({ archive, header, body, checkpointNumber, indexWithinCheckpoint })=>new L2Block(archive, header, body, checkpointNumber, indexWithinCheckpoint));
33
41
  }
34
42
  /**
35
43
  * Deserializes a block from a buffer
36
44
  * @returns A deserialized L2 block.
37
45
  */ static fromBuffer(buf) {
38
46
  const reader = BufferReader.asReader(buf);
39
- const header = reader.readObject(L2BlockHeader);
47
+ const header = reader.readObject(BlockHeader);
40
48
  const archive = reader.readObject(AppendOnlyTreeSnapshot);
41
49
  const body = reader.readObject(Body);
42
- return new L2Block(archive, header, body);
50
+ const checkpointNumber = CheckpointNumber(reader.readNumber());
51
+ const indexWithinCheckpoint = IndexWithinCheckpoint(reader.readNumber());
52
+ return new L2Block(archive, header, body, checkpointNumber, indexWithinCheckpoint);
43
53
  }
44
54
  /**
45
55
  * Serializes a block
46
56
  * @returns A serialized L2 block as a Buffer.
47
57
  */ toBuffer() {
48
- return serializeToBuffer(this.header, this.archive, this.body);
49
- }
50
- /**
51
- * Deserializes L2 block from a buffer.
52
- * @param str - A serialized L2 block.
53
- * @returns Deserialized L2 block.
54
- */ static fromString(str) {
55
- return L2Block.fromBuffer(hexToBuffer(str));
56
- }
57
- /**
58
- * Serializes a block to a string.
59
- * @returns A serialized L2 block as a string.
60
- */ toString() {
61
- return bufferToHex(this.toBuffer());
62
- }
63
- /**
64
- * Creates an L2 block containing random data.
65
- * @param l2BlockNum - The number of the L2 block.
66
- * @param txsPerBlock - The number of transactions to include in the block.
67
- * @param numPublicCallsPerTx - The number of public function calls to include in each transaction.
68
- * @param numPublicLogsPerCall - The number of public logs per 1 public function invocation.
69
- * @param inHash - The hash of the L1 to L2 messages subtree which got inserted in this block.
70
- * @returns The L2 block.
71
- */ static async random(l2BlockNum, txsPerBlock = 4, numPublicCallsPerTx = 3, numPublicLogsPerCall = 1, inHash = undefined, slotNumber = undefined, maxEffects = undefined) {
72
- const body = await Body.random({
73
- txsPerBlock,
74
- numPublicCallsPerTx,
75
- numPublicLogsPerCall,
76
- maxEffects
77
- });
78
- return new L2Block(makeAppendOnlyTreeSnapshot(l2BlockNum + 1), makeL2BlockHeader(0, l2BlockNum, slotNumber ?? l2BlockNum, {
79
- inHash
80
- }), body);
81
- }
82
- /**
83
- * Creates an L2 block containing empty data.
84
- * @returns The L2 block.
85
- */ static empty() {
86
- return new L2Block(AppendOnlyTreeSnapshot.empty(), L2BlockHeader.empty(), Body.empty());
87
- }
88
- get number() {
89
- return this.header.getBlockNumber();
90
- }
91
- get slot() {
92
- return this.header.getSlot();
93
- }
94
- get timestamp() {
95
- return this.header.globalVariables.timestamp;
58
+ return serializeToBuffer(this.header, this.archive, this.body, this.checkpointNumber, this.indexWithinCheckpoint);
96
59
  }
97
60
  /**
98
61
  * Returns the block's hash (hash of block header).
99
62
  * @returns The block's hash.
100
63
  */ async hash() {
101
- if (this.blockHash === undefined) {
102
- this.blockHash = await this.getBlockHeader().hash();
103
- }
104
- return this.blockHash;
64
+ const blockHash = await this.header.hash();
65
+ return blockHash.toField();
105
66
  }
106
67
  /**
107
- * @deprecated
108
- * This only works when there's one block per checkpoint.
109
- * TODO(#17027): Remove this method from L2Block and create a dedicated Checkpoint class.
110
- */ getCheckpointHeader() {
111
- return this.header.toCheckpointHeader();
112
- }
113
- // Temporary helper to get the actual block header.
114
- getBlockHeader() {
115
- return this.header.toBlockHeader();
116
- }
117
- toL2Block(args = {}) {
118
- return new L2BlockNew(this.archive, this.getBlockHeader(), this.body, args?.checkpointNumber ?? CheckpointNumber.fromBlockNumber(this.number), args?.indexWithinCheckpoint ?? 0);
119
- }
120
- toCheckpoint() {
121
- return new Checkpoint(this.archive, this.getCheckpointHeader(), [
122
- this.toL2Block()
123
- ], CheckpointNumber.fromBlockNumber(this.number));
124
- }
125
- static fromCheckpoint(checkpoint) {
126
- const checkpointHeader = checkpoint.header;
127
- const block = checkpoint.blocks.at(-1);
128
- const header = new L2BlockHeader(new AppendOnlyTreeSnapshot(checkpointHeader.lastArchiveRoot, block.number), checkpointHeader.blobsHash, checkpointHeader.inHash, block.header.state, block.header.globalVariables, block.header.totalFees, checkpointHeader.totalManaUsed, block.header.spongeBlobHash, checkpointHeader.blockHeadersHash);
129
- return new L2Block(checkpoint.archive, header, block.body);
130
- }
131
- /**
132
- * @deprecated
133
- * This only works when there's one block per checkpoint.
134
- * TODO(#17027): Remove this method from L2Block and create a dedicated Checkpoint class.
135
- */ getCheckpointBlobFields() {
136
- const blockBlobData = this.toBlockBlobData();
137
- return encodeCheckpointBlobDataFromBlocks([
138
- blockBlobData
139
- ]);
68
+ * Checks if this block equals another block.
69
+ * @param other - The other block to compare with.
70
+ * @returns True if both blocks are equal.
71
+ */ equals(other) {
72
+ return this.archive.equals(other.archive) && this.header.equals(other.header) && this.body.equals(other.body) && this.checkpointNumber === other.checkpointNumber && this.indexWithinCheckpoint === other.indexWithinCheckpoint;
140
73
  }
141
74
  toBlobFields() {
142
75
  const blockBlobData = this.toBlockBlobData();
143
76
  return encodeBlockBlobData(blockBlobData);
144
77
  }
145
78
  toBlockBlobData() {
146
- // There's only one L2Block per checkpoint, so it's always the first block in the checkpoint.
147
- const isFirstBlock = true;
79
+ const isFirstBlock = this.indexWithinCheckpoint === 0;
148
80
  return {
149
81
  blockEndMarker: {
150
82
  numTxs: this.body.txEffects.length,
@@ -166,6 +98,30 @@ import { L2BlockNew } from './l2_block_new.js';
166
98
  txs: this.body.toTxBlobData()
167
99
  };
168
100
  }
101
+ static empty(header) {
102
+ return new L2Block(AppendOnlyTreeSnapshot.empty(), header ?? BlockHeader.empty(), Body.empty(), CheckpointNumber(0), IndexWithinCheckpoint(0));
103
+ }
104
+ /**
105
+ * Creates an L2 block containing random data.
106
+ * @param l2BlockNum - The number of the L2 block.
107
+ * @param txsPerBlock - The number of transactions to include in the block.
108
+ * @param numPublicCallsPerTx - The number of public function calls to include in each transaction.
109
+ * @param numPublicLogsPerCall - The number of public logs per 1 public function invocation.
110
+ * @param inHash - The hash of the L1 to L2 messages subtree which got inserted in this block.
111
+ * @returns The L2 block.
112
+ */ static async random(blockNumber, { checkpointNumber = CheckpointNumber(Number(blockNumber)), indexWithinCheckpoint = IndexWithinCheckpoint(0), txsPerBlock = 1, txOptions = {}, makeTxOptions, ...blockHeaderOverrides } = {}) {
113
+ const archive = new AppendOnlyTreeSnapshot(Fr.random(), blockNumber + 1);
114
+ const header = BlockHeader.random({
115
+ blockNumber,
116
+ ...blockHeaderOverrides
117
+ });
118
+ const body = await Body.random({
119
+ txsPerBlock,
120
+ makeTxOptions,
121
+ ...txOptions
122
+ });
123
+ return new L2Block(archive, header, body, checkpointNumber, indexWithinCheckpoint);
124
+ }
169
125
  /**
170
126
  * Returns stats used for logging.
171
127
  * @returns Stats on tx count, number, and log size and count.
@@ -183,9 +139,11 @@ import { L2BlockNew } from './l2_block_new.js';
183
139
  ...logsStats
184
140
  };
185
141
  }
142
+ getPrivateLogs() {
143
+ return this.body.txEffects.map((txEffect)=>txEffect.privateLogs).flat();
144
+ }
186
145
  toBlockInfo() {
187
146
  return {
188
- blockHash: this.blockHash,
189
147
  archive: this.archive.root,
190
148
  lastArchive: this.header.lastArchive.root,
191
149
  blockNumber: this.number,
@@ -194,7 +152,4 @@ import { L2BlockNew } from './l2_block_new.js';
194
152
  timestamp: this.header.globalVariables.timestamp
195
153
  };
196
154
  }
197
- equals(other) {
198
- return this.archive.equals(other.archive) && this.header.equals(other.header) && this.body.equals(other.body);
199
- }
200
155
  }
@@ -10,9 +10,8 @@ import type { BlockHeader } from '../tx/block_header.js';
10
10
  import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
11
11
  import type { TxHash } from '../tx/tx_hash.js';
12
12
  import type { TxReceipt } from '../tx/tx_receipt.js';
13
- import { type CheckpointedL2Block, PublishedL2Block } from './checkpointed_l2_block.js';
13
+ import type { CheckpointedL2Block } from './checkpointed_l2_block.js';
14
14
  import type { L2Block } from './l2_block.js';
15
- import type { L2BlockNew } from './l2_block_new.js';
16
15
  import type { ValidateCheckpointNegativeResult, ValidateCheckpointResult } from './validate_block_result.js';
17
16
  /**
18
17
  * Interface of classes allowing for the retrieval of L2 blocks.
@@ -38,6 +37,18 @@ export interface L2BlockSource {
38
37
  * @returns The number of the latest L2 block proven seen by the block source implementation.
39
38
  */
40
39
  getProvenBlockNumber(): Promise<BlockNumber>;
40
+ /**
41
+ * Gets the number of the latest L2 block checkpointed seen by the block source implementation.
42
+ * @returns The number of the latest L2 block checkpointed seen by the block source implementation.
43
+ */
44
+ getCheckpointedL2BlockNumber(): Promise<BlockNumber>;
45
+ /**
46
+ * Computes the finalized block number based on the proven block number.
47
+ * A block is considered finalized when it's 2 epochs behind the proven block.
48
+ * TODO(#13569): Compute proper finalized block number based on L1 finalized block.
49
+ * @returns The finalized block number.
50
+ */
51
+ getFinalizedL2BlockNumber(): Promise<BlockNumber>;
41
52
  /**
42
53
  * Gets an l2 block header.
43
54
  * @param number - The block number to return or 'latest' for the most recent one.
@@ -51,14 +62,14 @@ export interface L2BlockSource {
51
62
  * @returns The requested checkpointed L2 block (or undefined if not found or not checkpointed).
52
63
  */
53
64
  getCheckpointedBlock(number: BlockNumber): Promise<CheckpointedL2Block | undefined>;
54
- getCheckpointedBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<CheckpointedL2Block[]>;
65
+ getCheckpointedBlocks(from: BlockNumber, limit: number): Promise<CheckpointedL2Block[]>;
55
66
  /**
56
- * Retrieves a collection of published checkpoints
57
- * @param checkpointNumber The first checkpoint to be retrieved
58
- * @param limit The number of checkpoints to be retrieved
59
- * @returns The collection of complete checkpoints
67
+ * Retrieves a collection of checkpoints.
68
+ * @param checkpointNumber The first checkpoint to be retrieved.
69
+ * @param limit The number of checkpoints to be retrieved.
70
+ * @returns The collection of complete checkpoints.
60
71
  */
61
- getPublishedCheckpoints(checkpointNumber: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
72
+ getCheckpoints(checkpointNumber: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
62
73
  /**
63
74
  * Gets the checkpoints for a given epoch
64
75
  * @param epochNumber - Epoch for which we want checkpoint data
@@ -81,7 +92,19 @@ export interface L2BlockSource {
81
92
  * @param number - The block number to return.
82
93
  * @returns The requested L2 block (or undefined if not found).
83
94
  */
84
- getL2BlockNew(number: BlockNumber): Promise<L2BlockNew | undefined>;
95
+ getL2Block(number: BlockNumber): Promise<L2Block | undefined>;
96
+ /**
97
+ * Gets an L2 block by its hash.
98
+ * @param blockHash - The block hash to retrieve.
99
+ * @returns The requested L2 block (or undefined if not found).
100
+ */
101
+ getL2BlockByHash(blockHash: Fr): Promise<L2Block | undefined>;
102
+ /**
103
+ * Gets an L2 block by its archive root.
104
+ * @param archive - The archive root to retrieve.
105
+ * @returns The requested L2 block (or undefined if not found).
106
+ */
107
+ getL2BlockByArchive(archive: Fr): Promise<L2Block | undefined>;
85
108
  /**
86
109
  * Gets a tx effect.
87
110
  * @param txHash - The hash of the tx corresponding to the tx effect.
@@ -103,11 +126,11 @@ export interface L2BlockSource {
103
126
  */
104
127
  getL2EpochNumber(): Promise<EpochNumber | undefined>;
105
128
  /**
106
- * Returns all block headers for a given epoch.
129
+ * Returns all checkpointed block headers for a given epoch.
107
130
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
108
131
  * @param epochNumber - The epoch number to return headers for.
109
132
  */
110
- getBlockHeadersForEpoch(epochNumber: EpochNumber): Promise<BlockHeader[]>;
133
+ getCheckpointedBlockHeadersForEpoch(epochNumber: EpochNumber): Promise<BlockHeader[]>;
111
134
  /**
112
135
  * Returns whether the given epoch is completed on L1, based on the current L1 and L2 block numbers.
113
136
  * @param epochNumber - The epoch number to check.
@@ -143,39 +166,39 @@ export interface L2BlockSource {
143
166
  * Gets an l2 block. If a negative number is passed, the block returned is the most recent.
144
167
  * @param number - The block number to return (inclusive).
145
168
  * @returns The requested L2 block.
146
- * @deprecated Use getL2BlockNew instead.
147
169
  */
148
170
  getBlock(number: BlockNumber): Promise<L2Block | undefined>;
149
- getL2BlockNew(number: BlockNumber): Promise<L2BlockNew | undefined>;
150
- getL2BlocksNew(from: BlockNumber, limit: number, proven?: boolean): Promise<L2BlockNew[]>;
151
171
  /**
152
- * Returns all blocks for a given epoch.
172
+ * Returns all checkpointed blocks for a given epoch.
153
173
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
154
174
  * @param epochNumber - The epoch number to return blocks for.
155
175
  */
156
- getBlocksForEpoch(epochNumber: EpochNumber): Promise<L2Block[]>;
176
+ getCheckpointedBlocksForEpoch(epochNumber: EpochNumber): Promise<CheckpointedL2Block[]>;
177
+ /**
178
+ * Returns all blocks for a given slot.
179
+ * @dev Use this method only with recent slots, since it walks the block list backwards.
180
+ * @param slotNumber - The slot number to return blocks for.
181
+ */
182
+ getBlocksForSlot(slotNumber: SlotNumber): Promise<L2Block[]>;
157
183
  /**
158
- * Gets a published block by its block hash.
184
+ * Gets a checkpointed block by its block hash.
159
185
  * @param blockHash - The block hash to retrieve.
160
186
  * @returns The requested block (or undefined if not found).
161
187
  */
162
- getPublishedBlockByHash(blockHash: Fr): Promise<PublishedL2Block | undefined>;
188
+ getCheckpointedBlockByHash(blockHash: Fr): Promise<CheckpointedL2Block | undefined>;
163
189
  /**
164
- * Gets a published block by its archive root.
190
+ * Gets a checkpointed block by its archive root.
165
191
  * @param archive - The archive root to retrieve.
166
192
  * @returns The requested block (or undefined if not found).
167
193
  */
168
- getPublishedBlockByArchive(archive: Fr): Promise<PublishedL2Block | undefined>;
194
+ getCheckpointedBlockByArchive(archive: Fr): Promise<CheckpointedL2Block | undefined>;
169
195
  /**
170
196
  * Gets up to `limit` amount of L2 blocks starting from `from`.
171
197
  * @param from - Number of the first block to return (inclusive).
172
198
  * @param limit - The maximum number of blocks to return.
173
- * @param proven - If true, only return blocks that have been proven.
174
199
  * @returns The requested L2 blocks.
175
200
  */
176
- getBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<L2Block[]>;
177
- /** Equivalent to getBlocks but includes publish data. */
178
- getPublishedBlocks(from: BlockNumber, limit: number, proven?: boolean): Promise<PublishedL2Block[]>;
201
+ getBlocks(from: BlockNumber, limit: number): Promise<L2Block[]>;
179
202
  }
180
203
  /**
181
204
  * Interface for classes that can receive and store L2 blocks.
@@ -186,19 +209,21 @@ export interface L2BlockSink {
186
209
  * @param block - The L2 block to add.
187
210
  * @throws If block number is not incremental (i.e., not exactly one more than the last stored block).
188
211
  */
189
- addBlock(block: L2BlockNew): Promise<void>;
212
+ addBlock(block: L2Block): Promise<void>;
190
213
  }
191
214
  /**
192
215
  * L2BlockSource that emits events upon pending / proven chain changes.
193
216
  * see L2BlockSourceEvents for the events emitted.
194
217
  */
195
218
  export type ArchiverEmitter = TypedEventEmitter<{
196
- [L2BlockSourceEvents.L2PruneDetected]: (args: L2BlockPruneEvent) => void;
219
+ [L2BlockSourceEvents.L2PruneUnproven]: (args: L2PruneUnprovenEvent) => void;
220
+ [L2BlockSourceEvents.L2PruneUncheckpointed]: (args: L2PruneUncheckpointedEvent) => void;
197
221
  [L2BlockSourceEvents.L2BlockProven]: (args: L2BlockProvenEvent) => void;
198
222
  [L2BlockSourceEvents.InvalidAttestationsCheckpointDetected]: (args: InvalidCheckpointDetectedEvent) => void;
199
223
  [L2BlockSourceEvents.L2BlocksCheckpointed]: (args: L2CheckpointEvent) => void;
200
224
  }>;
201
- export interface L2BlockSourceEventEmitter extends L2BlockSource, ArchiverEmitter {
225
+ export interface L2BlockSourceEventEmitter extends L2BlockSource {
226
+ events: ArchiverEmitter;
202
227
  }
203
228
  /**
204
229
  * Identifier for L2 block tags.
@@ -208,12 +233,6 @@ export interface L2BlockSourceEventEmitter extends L2BlockSource, ArchiverEmitte
208
233
  * - finalized: Proven block on a finalized L1 block (not implemented, set to proven for now).
209
234
  */
210
235
  export type L2BlockTag = 'proposed' | 'checkpointed' | 'proven' | 'finalized';
211
- /**
212
- * Reason for L2 block prune.
213
- * - uncheckpointed: L2 blocks were pruned due to a failure to checkpoint.
214
- * - unproven: L2 blocks were pruned due to a failure to prove.
215
- */
216
- export type L2BlockPruneReason = 'uncheckpointed' | 'unproven';
217
236
  /** Tips of the L2 chain. */
218
237
  export type L2Tips = {
219
238
  proposed: L2BlockId;
@@ -482,7 +501,8 @@ export declare const L2TipsSchema: z.ZodObject<{
482
501
  };
483
502
  }>;
484
503
  export declare enum L2BlockSourceEvents {
485
- L2PruneDetected = "l2PruneDetected",
504
+ L2PruneUnproven = "l2PruneUnproven",
505
+ L2PruneUncheckpointed = "l2PruneUncheckpointed",
486
506
  L2BlockProven = "l2BlockProven",
487
507
  L2BlocksCheckpointed = "l2BlocksCheckpointed",
488
508
  InvalidAttestationsCheckpointDetected = "invalidCheckpointDetected"
@@ -493,10 +513,15 @@ export type L2BlockProvenEvent = {
493
513
  slotNumber: SlotNumber;
494
514
  epochNumber: EpochNumber;
495
515
  };
496
- export type L2BlockPruneEvent = {
497
- type: 'l2PruneDetected';
516
+ export type L2PruneUnprovenEvent = {
517
+ type: 'l2PruneUnproven';
498
518
  epochNumber: EpochNumber;
499
- blocks: L2BlockNew[];
519
+ blocks: L2Block[];
520
+ };
521
+ export type L2PruneUncheckpointedEvent = {
522
+ type: 'l2PruneUncheckpointed';
523
+ slotNumber: SlotNumber;
524
+ blocks: L2Block[];
500
525
  };
501
526
  export type L2CheckpointEvent = {
502
527
  type: 'l2BlocksCheckpointed';
@@ -506,4 +531,4 @@ export type InvalidCheckpointDetectedEvent = {
506
531
  type: 'invalidCheckpointDetected';
507
532
  validationResult: ValidateCheckpointNegativeResult;
508
533
  };
509
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxLQUFLLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEYsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFD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
534
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLGdDQUFnQyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENB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
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_source.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"l2_block_source.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_source.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,8 @@ export const L2TipsSchema = z.object({
36
36
  finalized: L2TipIdSchema
37
37
  });
38
38
  export var L2BlockSourceEvents = /*#__PURE__*/ function(L2BlockSourceEvents) {
39
- L2BlockSourceEvents["L2PruneDetected"] = "l2PruneDetected";
39
+ L2BlockSourceEvents["L2PruneUnproven"] = "l2PruneUnproven";
40
+ L2BlockSourceEvents["L2PruneUncheckpointed"] = "l2PruneUncheckpointed";
40
41
  L2BlockSourceEvents["L2BlockProven"] = "l2BlockProven";
41
42
  L2BlockSourceEvents["L2BlocksCheckpointed"] = "l2BlocksCheckpointed";
42
43
  L2BlockSourceEvents["InvalidAttestationsCheckpointDetected"] = "invalidCheckpointDetected";
@@ -1,6 +1,6 @@
1
1
  import type { PublishedCheckpoint } from '../../checkpoint/published_checkpoint.js';
2
- import type { L2BlockNew } from '../l2_block_new.js';
3
- import type { CheckpointId, L2BlockId, L2BlockPruneReason, L2Tips } from '../l2_block_source.js';
2
+ import type { L2Block } from '../l2_block.js';
3
+ import type { CheckpointId, L2BlockId, L2Tips } from '../l2_block_source.js';
4
4
  /** Interface to the local view of the chain. Implemented by world-state and l2-tips-store. */
5
5
  export interface L2BlockStreamLocalDataProvider {
6
6
  getL2BlockHash(number: number): Promise<string | undefined>;
@@ -12,14 +12,17 @@ export interface L2BlockStreamEventHandler {
12
12
  }
13
13
  export type L2BlockStreamEvent = /** Emits blocks added to the chain. */ {
14
14
  type: 'blocks-added';
15
- blocks: L2BlockNew[];
15
+ blocks: L2Block[];
16
16
  } | /** Emits checkpoints published to L1. */ {
17
17
  type: 'chain-checkpointed';
18
18
  checkpoint: PublishedCheckpoint;
19
19
  block: L2BlockId;
20
- } | /** Reports last correct block (new tip of the proposed chain). */ {
20
+ } | /**
21
+ * Reports last correct block (new tip of the proposed chain). Note that this is not necessarily the anchor block
22
+ * that will be used in the transaction - if the chain has already moved past the reorg, we'll also see blocks-added
23
+ * events that will push the anchor block forward.
24
+ */ {
21
25
  type: 'chain-pruned';
22
- reason: L2BlockPruneReason;
23
26
  block: L2BlockId;
24
27
  checkpoint: CheckpointId;
25
28
  } | /** Reports new proven block. */ {
@@ -30,4 +33,4 @@ export type L2BlockStreamEvent = /** Emits blocks added to the chain. */ {
30
33
  block: L2BlockId;
31
34
  };
32
35
  export type L2TipsStore = L2BlockStreamEventHandler & L2BlockStreamLocalDataProvider;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX3N0cmVhbS9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVqRyw4RkFBOEY7QUFDOUYsTUFBTSxXQUFXLDhCQUE4QjtJQUM3QyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQzVELFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDOUI7QUFFRCxnREFBZ0Q7QUFDaEQsTUFBTSxXQUFXLHlCQUF5QjtJQUN4QyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ2xFO0FBRUQsTUFBTSxNQUFNLGtCQUFrQixHQUMxQix1Q0FBdUMsQ0FBQztJQUN0QyxJQUFJLEVBQUUsY0FBYyxDQUFDO0lBQ3JCLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQztDQUN0QixHQUNELHlDQUF5QyxDQUFDO0lBQ3hDLElBQUksRUFBRSxvQkFBb0IsQ0FBQztJQUMzQixVQUFVLEVBQUUsbUJBQW1CLENBQUM7SUFDaEMsS0FBSyxFQUFFLFNBQVMsQ0FBQztDQUNsQixHQUNELGtFQUFrRSxDQUFDO0lBQ2pFLElBQUksRUFBRSxjQUFjLENBQUM7SUFDckIsTUFBTSxFQUFFLGtCQUFrQixDQUFDO0lBQzNCLEtBQUssRUFBRSxTQUFTLENBQUM7SUFDakIsVUFBVSxFQUFFLFlBQVksQ0FBQztDQUMxQixHQUNELGdDQUFnQyxDQUFDO0lBQy9CLElBQUksRUFBRSxjQUFjLENBQUM7SUFDckIsS0FBSyxFQUFFLFNBQVMsQ0FBQztDQUNsQixHQUNELGdFQUFnRSxDQUFDO0lBQy9ELElBQUksRUFBRSxpQkFBaUIsQ0FBQztJQUN4QixLQUFLLEVBQUUsU0FBUyxDQUFDO0NBQ2xCLENBQUM7QUFFTixNQUFNLE1BQU0sV0FBVyxHQUFHLHlCQUF5QixHQUFHLDhCQUE4QixDQUFDIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX3N0cmVhbS9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU3RSw4RkFBOEY7QUFDOUYsTUFBTSxXQUFXLDhCQUE4QjtJQUM3QyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQzVELFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDOUI7QUFFRCxnREFBZ0Q7QUFDaEQsTUFBTSxXQUFXLHlCQUF5QjtJQUN4QyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ2xFO0FBRUQsTUFBTSxNQUFNLGtCQUFrQixHQUMxQix1Q0FBdUMsQ0FBQztJQUN0QyxJQUFJLEVBQUUsY0FBYyxDQUFDO0lBQ3JCLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztDQUNuQixHQUNELHlDQUF5QyxDQUFDO0lBQ3hDLElBQUksRUFBRSxvQkFBb0IsQ0FBQztJQUMzQixVQUFVLEVBQUUsbUJBQW1CLENBQUM7SUFDaEMsS0FBSyxFQUFFLFNBQVMsQ0FBQztDQUNsQixHQUNEOzs7O0dBSUMsQ0FBQztJQUNBLElBQUksRUFBRSxjQUFjLENBQUM7SUFDckIsS0FBSyxFQUFFLFNBQVMsQ0FBQztJQUNqQixVQUFVLEVBQUUsWUFBWSxDQUFDO0NBQzFCLEdBQ0QsZ0NBQWdDLENBQUM7SUFDL0IsSUFBSSxFQUFFLGNBQWMsQ0FBQztJQUNyQixLQUFLLEVBQUUsU0FBUyxDQUFDO0NBQ2xCLEdBQ0QsZ0VBQWdFLENBQUM7SUFDL0QsSUFBSSxFQUFFLGlCQUFpQixDQUFDO0lBQ3hCLEtBQUssRUFBRSxTQUFTLENBQUM7Q0FDbEIsQ0FBQztBQUVOLE1BQU0sTUFBTSxXQUFXLEdBQUcseUJBQXlCLEdBQUcsOEJBQThCLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjG,8FAA8F;AAC9F,MAAM,WAAW,8BAA8B;IAC7C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5D,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,gDAAgD;AAChD,MAAM,WAAW,yBAAyB;IACxC,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE;AAED,MAAM,MAAM,kBAAkB,GAC1B,uCAAuC,CAAC;IACtC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB,GACD,yCAAyC,CAAC;IACxC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,UAAU,EAAE,mBAAmB,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;CAClB,GACD,kEAAkE,CAAC;IACjE,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,YAAY,CAAC;CAC1B,GACD,gCAAgC,CAAC;IAC/B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;CAClB,GACD,gEAAgE,CAAC;IAC/D,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEN,MAAM,MAAM,WAAW,GAAG,yBAAyB,GAAG,8BAA8B,CAAC"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE7E,8FAA8F;AAC9F,MAAM,WAAW,8BAA8B;IAC7C,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5D,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,gDAAgD;AAChD,MAAM,WAAW,yBAAyB;IACxC,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE;AAED,MAAM,MAAM,kBAAkB,GAC1B,uCAAuC,CAAC;IACtC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB,GACD,yCAAyC,CAAC;IACxC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,UAAU,EAAE,mBAAmB,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;CAClB,GACD;;;;GAIC,CAAC;IACA,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,YAAY,CAAC;CAC1B,GACD,gCAAgC,CAAC;IAC/B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;CAClB,GACD,gEAAgE,CAAC;IAC/D,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEN,MAAM,MAAM,WAAW,GAAG,yBAAyB,GAAG,8BAA8B,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { type L2BlockSource } from '../l2_block_source.js';
2
2
  import type { L2BlockStreamEventHandler, L2BlockStreamLocalDataProvider } from './interfaces.js';
3
+ /** Maximum number of checkpoints to prefetch at once during sync. Matches MAX_RPC_CHECKPOINTS_LEN. */
4
+ export declare const CHECKPOINT_PREFETCH_LIMIT = 50;
3
5
  /** Creates a stream of events for new blocks, chain tips updates, and reorgs, out of polling an archiver or a node. */
4
6
  export declare class L2BlockStream {
5
7
  private l2BlockSource;
@@ -10,8 +12,7 @@ export declare class L2BlockStream {
10
12
  private readonly runningPromise;
11
13
  private isSyncing;
12
14
  private hasStarted;
13
- constructor(l2BlockSource: Pick<L2BlockSource, 'getL2BlocksNew' | 'getBlockHeader' | 'getL2Tips' | 'getPublishedCheckpoints' | 'getCheckpointedBlocks'>, localData: L2BlockStreamLocalDataProvider, handler: L2BlockStreamEventHandler, log?: import("@aztec/foundation/log").Logger, opts?: {
14
- proven?: boolean;
15
+ constructor(l2BlockSource: Pick<L2BlockSource, 'getBlocks' | 'getBlockHeader' | 'getL2Tips' | 'getCheckpoints' | 'getCheckpointedBlocks'>, localData: L2BlockStreamLocalDataProvider, handler: L2BlockStreamEventHandler, log?: import("@aztec/foundation/log").Logger, opts?: {
15
16
  pollIntervalMS?: number;
16
17
  batchSize?: number;
17
18
  startingBlock?: number;
@@ -19,6 +20,8 @@ export declare class L2BlockStream {
19
20
  skipFinalized?: boolean;
20
21
  /** When true, checkpoint events will not be emitted. Blocks are still fetched via checkpoints but only blocks-added events are emitted. */
21
22
  ignoreCheckpoints?: boolean;
23
+ /** Maximum number of checkpoints to prefetch at once during sync. Defaults to CHECKPOINT_PREFETCH_LIMIT (50). */
24
+ checkpointPrefetchLimit?: number;
22
25
  });
23
26
  start(): void;
24
27
  stop(): Promise<void>;
@@ -34,4 +37,4 @@ export declare class L2BlockStream {
34
37
  private getBlockHashFromSource;
35
38
  private emitEvent;
36
39
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX2Jsb2NrX3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQTJDLEtBQUssYUFBYSxFQUFpQixNQUFNLHVCQUF1QixDQUFDO0FBQ25ILE9BQU8sS0FBSyxFQUFzQix5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJILHVIQUF1SDtBQUN2SCxxQkFBYSxhQUFhO0lBTXRCLE9BQU8sQ0FBQyxhQUFhO0lBSXJCLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxPQUFPO0lBQ2YsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHO0lBQ3BCLE9BQU8sQ0FBQyxJQUFJO0lBWmQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQWlCO0lBQ2hELE9BQU8sQ0FBQyxTQUFTLENBQVM7SUFDMUIsT0FBTyxDQUFDLFVBQVUsQ0FBUztJQUUzQixZQUNVLGFBQWEsRUFBRSxJQUFJLENBQ3pCLGFBQWEsRUFDYixnQkFBZ0IsR0FBRyxnQkFBZ0IsR0FBRyxXQUFXLEdBQUcseUJBQXlCLEdBQUcsdUJBQXVCLENBQ3hHLEVBQ08sU0FBUyxFQUFFLDhCQUE4QixFQUN6QyxPQUFPLEVBQUUseUJBQXlCLEVBQ3pCLEdBQUcseUNBQXFDLEVBQ2pELElBQUksR0FBRTtRQUNaLE1BQU0sQ0FBQyxFQUFFLE9BQU8sQ0FBQztRQUNqQixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDeEIsU0FBUyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ25CLGFBQWEsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUN2QixrSEFBa0g7UUFDbEgsYUFBYSxDQUFDLEVBQUUsT0FBTyxDQUFDO1FBQ3hCLDJJQUEySTtRQUMzSSxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztLQUN4QixFQU9QO0lBRU0sS0FBSyxTQUdYO0lBRVksSUFBSSxrQkFFaEI7SUFFTSxTQUFTLFlBRWY7SUFFRDs7OztPQUlHO0lBQ1UsSUFBSSxrQkFJaEI7SUFFRCxVQUFnQixJQUFJLGtCQXNLbkI7WUFPYSxxQkFBcUI7SUF3Qm5DLE9BQU8sQ0FBQyxzQkFBc0I7WUFPaEIsU0FBUztDQVN4QiJ9
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX2Jsb2NrX3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWtCLEtBQUssYUFBYSxFQUFpQixNQUFNLHVCQUF1QixDQUFDO0FBQzFGLE9BQU8sS0FBSyxFQUFzQix5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJILHNHQUFzRztBQUN0RyxlQUFPLE1BQU0seUJBQXlCLEtBQUssQ0FBQztBQUU1Qyx1SEFBdUg7QUFDdkgscUJBQWEsYUFBYTtJQU10QixPQUFPLENBQUMsYUFBYTtJQUlyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsT0FBTztJQUNmLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRztJQUNwQixPQUFPLENBQUMsSUFBSTtJQVpkLE9BQU8sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFpQjtJQUNoRCxPQUFPLENBQUMsU0FBUyxDQUFTO0lBQzFCLE9BQU8sQ0FBQyxVQUFVLENBQVM7SUFFM0IsWUFDVSxhQUFhLEVBQUUsSUFBSSxDQUN6QixhQUFhLEVBQ2IsV0FBVyxHQUFHLGdCQUFnQixHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsR0FBRyx1QkFBdUIsQ0FDMUYsRUFDTyxTQUFTLEVBQUUsOEJBQThCLEVBQ3pDLE9BQU8sRUFBRSx5QkFBeUIsRUFDekIsR0FBRyx5Q0FBcUMsRUFDakQsSUFBSSxHQUFFO1FBQ1osY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNuQixhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDdkIsa0hBQWtIO1FBQ2xILGFBQWEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztRQUN4QiwySUFBMkk7UUFDM0ksaUJBQWlCLENBQUMsRUFBRSxPQUFPLENBQUM7UUFDNUIsaUhBQWlIO1FBQ2pILHVCQUF1QixDQUFDLEVBQUUsTUFBTSxDQUFDO0tBQzdCLEVBT1A7SUFFTSxLQUFLLFNBR1g7SUFFWSxJQUFJLGtCQUVoQjtJQUVNLFNBQVMsWUFFZjtJQUVEOzs7O09BSUc7SUFDVSxJQUFJLGtCQUloQjtJQUVELFVBQWdCLElBQUksa0JBMEtuQjtZQU9hLHFCQUFxQjtJQXdCbkMsT0FBTyxDQUFDLHNCQUFzQjtZQU9oQixTQUFTO0NBU3hCIn0=