@aztec/stdlib 0.0.1-commit.d1f2d6c → 0.0.1-commit.d20b825a7

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 (733) hide show
  1. package/dest/abi/abi.d.ts +138 -1
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +10 -2
  4. package/dest/abi/authorization_selector.d.ts +3 -6
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/decoder.d.ts +6 -45
  10. package/dest/abi/decoder.d.ts.map +1 -1
  11. package/dest/abi/decoder.js +17 -70
  12. package/dest/abi/encoder.d.ts +1 -1
  13. package/dest/abi/encoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.js +64 -7
  15. package/dest/abi/event_metadata_definition.d.ts +3 -1
  16. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  17. package/dest/abi/event_metadata_definition.js +1 -1
  18. package/dest/abi/event_selector.d.ts +3 -6
  19. package/dest/abi/event_selector.d.ts.map +1 -1
  20. package/dest/abi/function_call.d.ts +39 -9
  21. package/dest/abi/function_call.d.ts.map +1 -1
  22. package/dest/abi/function_call.js +20 -3
  23. package/dest/abi/function_selector.d.ts +3 -6
  24. package/dest/abi/function_selector.d.ts.map +1 -1
  25. package/dest/abi/function_selector.js +2 -4
  26. package/dest/abi/function_signature_decoder.d.ts +43 -0
  27. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  28. package/dest/abi/function_signature_decoder.js +66 -0
  29. package/dest/abi/index.d.ts +2 -1
  30. package/dest/abi/index.d.ts.map +1 -1
  31. package/dest/abi/index.js +1 -0
  32. package/dest/abi/note_selector.d.ts +3 -6
  33. package/dest/abi/note_selector.d.ts.map +1 -1
  34. package/dest/abi/note_selector.js +1 -3
  35. package/dest/abi/selector.d.ts +2 -2
  36. package/dest/abi/selector.d.ts.map +1 -1
  37. package/dest/abi/selector.js +1 -1
  38. package/dest/abi/utils.d.ts +14 -1
  39. package/dest/abi/utils.d.ts.map +1 -1
  40. package/dest/abi/utils.js +15 -0
  41. package/dest/auth_witness/auth_witness.js +3 -3
  42. package/dest/avm/avm.d.ts +300 -300
  43. package/dest/avm/avm_proving_request.d.ts +166 -166
  44. package/dest/avm/revert_code.d.ts +9 -4
  45. package/dest/avm/revert_code.d.ts.map +1 -1
  46. package/dest/avm/revert_code.js +16 -21
  47. package/dest/aztec-address/index.d.ts +3 -6
  48. package/dest/aztec-address/index.d.ts.map +1 -1
  49. package/dest/aztec-address/index.js +2 -4
  50. package/dest/block/block_data.d.ts +52 -0
  51. package/dest/block/block_data.d.ts.map +1 -0
  52. package/dest/block/block_data.js +12 -0
  53. package/dest/block/block_hash.d.ts +20 -21
  54. package/dest/block/block_hash.d.ts.map +1 -1
  55. package/dest/block/block_hash.js +22 -31
  56. package/dest/block/block_parameter.d.ts +4 -4
  57. package/dest/block/block_parameter.d.ts.map +1 -1
  58. package/dest/block/block_parameter.js +2 -2
  59. package/dest/block/in_block.d.ts +9 -9
  60. package/dest/block/in_block.d.ts.map +1 -1
  61. package/dest/block/in_block.js +5 -5
  62. package/dest/block/index.d.ts +2 -1
  63. package/dest/block/index.d.ts.map +1 -1
  64. package/dest/block/index.js +1 -0
  65. package/dest/block/l2_block.d.ts +11 -2
  66. package/dest/block/l2_block.d.ts.map +1 -1
  67. package/dest/block/l2_block.js +12 -2
  68. package/dest/block/l2_block_info.d.ts +6 -5
  69. package/dest/block/l2_block_info.d.ts.map +1 -1
  70. package/dest/block/l2_block_info.js +6 -5
  71. package/dest/block/l2_block_source.d.ts +117 -12
  72. package/dest/block/l2_block_source.d.ts.map +1 -1
  73. package/dest/block/l2_block_source.js +1 -0
  74. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  75. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  76. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  77. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  78. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  79. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +1 -1
  80. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  81. package/dest/block/l2_block_stream/l2_tips_store_base.js +18 -5
  82. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  83. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  84. package/dest/block/test/l2_tips_store_test_suite.js +4 -3
  85. package/dest/checkpoint/checkpoint.d.ts +28 -7
  86. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  87. package/dest/checkpoint/checkpoint.js +41 -17
  88. package/dest/checkpoint/checkpoint_data.d.ts +186 -0
  89. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  90. package/dest/checkpoint/checkpoint_data.js +36 -0
  91. package/dest/checkpoint/index.d.ts +3 -1
  92. package/dest/checkpoint/index.d.ts.map +1 -1
  93. package/dest/checkpoint/index.js +2 -0
  94. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  95. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  96. package/dest/checkpoint/published_checkpoint.js +1 -2
  97. package/dest/checkpoint/validate.d.ts +36 -0
  98. package/dest/checkpoint/validate.d.ts.map +1 -0
  99. package/dest/checkpoint/validate.js +120 -0
  100. package/dest/config/chain-config.d.ts +1 -1
  101. package/dest/config/chain-config.d.ts.map +1 -1
  102. package/dest/config/chain-config.js +7 -1
  103. package/dest/config/index.d.ts +3 -1
  104. package/dest/config/index.d.ts.map +1 -1
  105. package/dest/config/index.js +2 -0
  106. package/dest/config/pipelining-config.d.ts +19 -0
  107. package/dest/config/pipelining-config.d.ts.map +1 -0
  108. package/dest/config/pipelining-config.js +18 -0
  109. package/dest/config/sequencer-config.d.ts +12 -0
  110. package/dest/config/sequencer-config.d.ts.map +1 -0
  111. package/dest/config/sequencer-config.js +31 -0
  112. package/dest/contract/contract_address.d.ts +3 -3
  113. package/dest/contract/contract_address.js +7 -7
  114. package/dest/contract/contract_class.d.ts +2 -3
  115. package/dest/contract/contract_class.d.ts.map +1 -1
  116. package/dest/contract/contract_class_id.d.ts +3 -3
  117. package/dest/contract/contract_class_id.d.ts.map +1 -1
  118. package/dest/contract/contract_class_id.js +7 -6
  119. package/dest/contract/index.d.ts +1 -3
  120. package/dest/contract/index.d.ts.map +1 -1
  121. package/dest/contract/index.js +0 -2
  122. package/dest/contract/interfaces/contract_class.d.ts +3 -156
  123. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  124. package/dest/contract/interfaces/contract_class.js +1 -28
  125. package/dest/contract/interfaces/node-info.d.ts +3 -1
  126. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  127. package/dest/contract/interfaces/node-info.js +2 -1
  128. package/dest/contract/private_function.d.ts +1 -1
  129. package/dest/contract/private_function.d.ts.map +1 -1
  130. package/dest/contract/private_function.js +4 -6
  131. package/dest/database-version/database_version.d.ts +58 -0
  132. package/dest/database-version/database_version.d.ts.map +1 -0
  133. package/dest/database-version/database_version.js +69 -0
  134. package/dest/database-version/version_manager.d.ts +2 -50
  135. package/dest/database-version/version_manager.d.ts.map +1 -1
  136. package/dest/database-version/version_manager.js +1 -66
  137. package/dest/epoch-helpers/index.d.ts +17 -1
  138. package/dest/epoch-helpers/index.d.ts.map +1 -1
  139. package/dest/epoch-helpers/index.js +22 -2
  140. package/dest/file-store/factory.d.ts +4 -3
  141. package/dest/file-store/factory.d.ts.map +1 -1
  142. package/dest/file-store/factory.js +2 -2
  143. package/dest/file-store/http.d.ts +9 -2
  144. package/dest/file-store/http.d.ts.map +1 -1
  145. package/dest/file-store/http.js +20 -9
  146. package/dest/file-store/index.d.ts +2 -1
  147. package/dest/file-store/index.d.ts.map +1 -1
  148. package/dest/file-store/local.d.ts +3 -3
  149. package/dest/file-store/local.d.ts.map +1 -1
  150. package/dest/file-store/local.js +13 -4
  151. package/dest/file-store/s3.d.ts +1 -1
  152. package/dest/file-store/s3.d.ts.map +1 -1
  153. package/dest/file-store/s3.js +11 -3
  154. package/dest/gas/fee_math.d.ts +49 -0
  155. package/dest/gas/fee_math.d.ts.map +1 -0
  156. package/dest/gas/fee_math.js +80 -0
  157. package/dest/gas/gas_fees.d.ts +5 -1
  158. package/dest/gas/gas_fees.d.ts.map +1 -1
  159. package/dest/gas/gas_fees.js +13 -1
  160. package/dest/gas/gas_settings.d.ts +40 -3
  161. package/dest/gas/gas_settings.d.ts.map +1 -1
  162. package/dest/gas/gas_settings.js +50 -6
  163. package/dest/gas/index.d.ts +2 -1
  164. package/dest/gas/index.d.ts.map +1 -1
  165. package/dest/gas/index.js +1 -0
  166. package/dest/ha-signing/config.d.ts +136 -0
  167. package/dest/ha-signing/config.d.ts.map +1 -0
  168. package/dest/ha-signing/config.js +98 -0
  169. package/dest/ha-signing/index.d.ts +4 -0
  170. package/dest/ha-signing/index.d.ts.map +1 -0
  171. package/dest/ha-signing/index.js +3 -0
  172. package/dest/ha-signing/local_config.d.ts +63 -0
  173. package/dest/ha-signing/local_config.d.ts.map +1 -0
  174. package/dest/ha-signing/local_config.js +24 -0
  175. package/dest/ha-signing/types.d.ts +90 -0
  176. package/dest/ha-signing/types.d.ts.map +1 -0
  177. package/dest/ha-signing/types.js +39 -0
  178. package/dest/hash/hash.d.ts +35 -1
  179. package/dest/hash/hash.d.ts.map +1 -1
  180. package/dest/hash/hash.js +77 -10
  181. package/dest/hash/map_slot.d.ts +1 -1
  182. package/dest/hash/map_slot.d.ts.map +1 -1
  183. package/dest/hash/map_slot.js +4 -3
  184. package/dest/interfaces/allowed_element.d.ts +26 -20
  185. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  186. package/dest/interfaces/allowed_element.js +8 -8
  187. package/dest/interfaces/archiver.d.ts +11 -1
  188. package/dest/interfaces/archiver.d.ts.map +1 -1
  189. package/dest/interfaces/archiver.js +17 -6
  190. package/dest/interfaces/aztec-node-admin.d.ts +129 -48
  191. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  192. package/dest/interfaces/aztec-node-admin.js +15 -7
  193. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  194. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  195. package/dest/interfaces/aztec-node-debug.js +18 -0
  196. package/dest/interfaces/aztec-node.d.ts +54 -60
  197. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  198. package/dest/interfaces/aztec-node.js +13 -12
  199. package/dest/interfaces/block-builder.d.ts +44 -11
  200. package/dest/interfaces/block-builder.d.ts.map +1 -1
  201. package/dest/interfaces/block-builder.js +16 -2
  202. package/dest/interfaces/client.d.ts +2 -1
  203. package/dest/interfaces/client.d.ts.map +1 -1
  204. package/dest/interfaces/client.js +1 -0
  205. package/dest/interfaces/configs.d.ts +77 -32
  206. package/dest/interfaces/configs.d.ts.map +1 -1
  207. package/dest/interfaces/configs.js +10 -3
  208. package/dest/interfaces/get_logs_response.d.ts +15 -8
  209. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  210. package/dest/interfaces/l2_logs_source.d.ts +5 -3
  211. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  212. package/dest/interfaces/merkle_tree_operations.d.ts +13 -22
  213. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  214. package/dest/interfaces/p2p.d.ts +4 -9
  215. package/dest/interfaces/p2p.d.ts.map +1 -1
  216. package/dest/interfaces/prover-broker.d.ts +16 -1
  217. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  218. package/dest/interfaces/prover-broker.js +4 -1
  219. package/dest/interfaces/prover-client.d.ts +11 -1
  220. package/dest/interfaces/prover-client.d.ts.map +1 -1
  221. package/dest/interfaces/prover-client.js +12 -4
  222. package/dest/interfaces/proving-job.d.ts +36 -36
  223. package/dest/interfaces/slasher.d.ts +9 -10
  224. package/dest/interfaces/slasher.d.ts.map +1 -1
  225. package/dest/interfaces/slasher.js +2 -2
  226. package/dest/interfaces/validator.d.ts +162 -65
  227. package/dest/interfaces/validator.d.ts.map +1 -1
  228. package/dest/interfaces/validator.js +11 -5
  229. package/dest/interfaces/world_state.d.ts +5 -4
  230. package/dest/interfaces/world_state.d.ts.map +1 -1
  231. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  232. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  233. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  234. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  235. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  236. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  237. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  238. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  239. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  240. package/dest/kernel/hints/index.d.ts +2 -2
  241. package/dest/kernel/hints/index.js +2 -2
  242. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  243. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  244. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  245. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  246. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  247. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  248. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  249. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  250. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  251. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  252. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  253. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  254. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  255. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  256. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  257. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +4 -3
  258. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  259. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +11 -7
  260. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  261. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  262. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  263. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  264. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  265. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  266. package/dest/kernel/private_validation_requests.d.ts +3 -3
  267. package/dest/kernel/private_validation_requests.js +9 -9
  268. package/dest/keys/derivation.d.ts +3 -3
  269. package/dest/keys/derivation.js +15 -15
  270. package/dest/keys/key_types.d.ts +3 -3
  271. package/dest/keys/key_types.d.ts.map +1 -1
  272. package/dest/keys/public_keys.js +2 -2
  273. package/dest/keys/utils.d.ts +1 -1
  274. package/dest/keys/utils.d.ts.map +1 -1
  275. package/dest/keys/utils.js +8 -4
  276. package/dest/kv-store/config.d.ts +17 -0
  277. package/dest/kv-store/config.d.ts.map +1 -0
  278. package/dest/kv-store/config.js +26 -0
  279. package/dest/kv-store/index.d.ts +2 -0
  280. package/dest/kv-store/index.d.ts.map +1 -0
  281. package/dest/kv-store/index.js +1 -0
  282. package/dest/l1-contracts/index.d.ts +2 -2
  283. package/dest/l1-contracts/index.d.ts.map +1 -1
  284. package/dest/l1-contracts/index.js +1 -1
  285. package/dest/logs/debug_log_store.d.ts +30 -0
  286. package/dest/logs/debug_log_store.d.ts.map +1 -0
  287. package/dest/logs/debug_log_store.js +30 -0
  288. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  289. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  290. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +35 -20
  291. package/dest/logs/extended_public_log.d.ts +13 -7
  292. package/dest/logs/extended_public_log.d.ts.map +1 -1
  293. package/dest/logs/index.d.ts +4 -2
  294. package/dest/logs/index.d.ts.map +1 -1
  295. package/dest/logs/index.js +3 -1
  296. package/dest/logs/log_filter.d.ts +4 -1
  297. package/dest/logs/log_filter.d.ts.map +1 -1
  298. package/dest/logs/log_filter.js +2 -1
  299. package/dest/logs/log_id.d.ts +17 -14
  300. package/dest/logs/log_id.d.ts.map +1 -1
  301. package/dest/logs/log_id.js +19 -17
  302. package/dest/logs/message_context.d.ts +4 -7
  303. package/dest/logs/message_context.d.ts.map +1 -1
  304. package/dest/logs/message_context.js +23 -9
  305. package/dest/logs/pending_tagged_log.d.ts +2 -3
  306. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  307. package/dest/logs/pending_tagged_log.js +2 -2
  308. package/dest/logs/pre_tag.d.ts +16 -11
  309. package/dest/logs/pre_tag.d.ts.map +1 -1
  310. package/dest/logs/pre_tag.js +2 -2
  311. package/dest/logs/private_log.d.ts +2 -2
  312. package/dest/logs/private_log.d.ts.map +1 -1
  313. package/dest/logs/public_log.d.ts +4 -3
  314. package/dest/logs/public_log.d.ts.map +1 -1
  315. package/dest/logs/public_log.js +2 -1
  316. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  317. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  318. package/dest/logs/shared_secret_derivation.js +15 -9
  319. package/dest/logs/siloed_tag.d.ts +12 -9
  320. package/dest/logs/siloed_tag.d.ts.map +1 -1
  321. package/dest/logs/siloed_tag.js +16 -6
  322. package/dest/logs/tag.d.ts +5 -6
  323. package/dest/logs/tag.d.ts.map +1 -1
  324. package/dest/logs/tag.js +5 -1
  325. package/dest/logs/tagging_index_range.d.ts +40 -0
  326. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  327. package/dest/logs/tagging_index_range.js +8 -0
  328. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  329. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  330. package/dest/logs/tx_scoped_l2_log.js +7 -0
  331. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  332. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  333. package/dest/messaging/l1_to_l2_message.js +11 -13
  334. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  335. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  336. package/dest/messaging/l2_to_l1_membership.d.ts +34 -8
  337. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  338. package/dest/messaging/l2_to_l1_membership.js +72 -29
  339. package/dest/noir/index.d.ts +3 -3
  340. package/dest/noir/index.d.ts.map +1 -1
  341. package/dest/note/index.d.ts +1 -2
  342. package/dest/note/index.d.ts.map +1 -1
  343. package/dest/note/index.js +0 -1
  344. package/dest/note/note_dao.d.ts +1 -1
  345. package/dest/note/note_dao.d.ts.map +1 -1
  346. package/dest/note/note_dao.js +1 -4
  347. package/dest/p2p/attestation_utils.d.ts +11 -1
  348. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  349. package/dest/p2p/attestation_utils.js +45 -0
  350. package/dest/p2p/block_proposal.d.ts +16 -11
  351. package/dest/p2p/block_proposal.d.ts.map +1 -1
  352. package/dest/p2p/block_proposal.js +6 -13
  353. package/dest/p2p/checkpoint_attestation.d.ts +5 -6
  354. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  355. package/dest/p2p/checkpoint_attestation.js +3 -8
  356. package/dest/p2p/checkpoint_proposal.d.ts +32 -20
  357. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  358. package/dest/p2p/checkpoint_proposal.js +32 -47
  359. package/dest/p2p/client_type.d.ts +2 -5
  360. package/dest/p2p/client_type.d.ts.map +1 -1
  361. package/dest/p2p/client_type.js +0 -7
  362. package/dest/p2p/consensus_payload.d.ts +12 -3
  363. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  364. package/dest/p2p/consensus_payload.js +22 -15
  365. package/dest/p2p/constants.d.ts +3 -1
  366. package/dest/p2p/constants.d.ts.map +1 -1
  367. package/dest/p2p/constants.js +1 -0
  368. package/dest/p2p/gossipable.d.ts +4 -4
  369. package/dest/p2p/gossipable.d.ts.map +1 -1
  370. package/dest/p2p/index.d.ts +1 -2
  371. package/dest/p2p/index.d.ts.map +1 -1
  372. package/dest/p2p/index.js +0 -1
  373. package/dest/p2p/peer_error.d.ts +3 -1
  374. package/dest/p2p/peer_error.d.ts.map +1 -1
  375. package/dest/p2p/peer_error.js +5 -0
  376. package/dest/p2p/topic_type.d.ts +3 -4
  377. package/dest/p2p/topic_type.d.ts.map +1 -1
  378. package/dest/p2p/topic_type.js +7 -24
  379. package/dest/parity/parity_base_private_inputs.d.ts +7 -3
  380. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  381. package/dest/parity/parity_base_private_inputs.js +7 -5
  382. package/dest/parity/parity_public_inputs.d.ts +7 -3
  383. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  384. package/dest/parity/parity_public_inputs.js +6 -3
  385. package/dest/proofs/chonk_proof.d.ts +46 -2
  386. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  387. package/dest/proofs/chonk_proof.js +85 -10
  388. package/dest/rollup/block_headers_hash.d.ts +1 -1
  389. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  390. package/dest/rollup/block_headers_hash.js +8 -2
  391. package/dest/rollup/checkpoint_header.d.ts +2 -2
  392. package/dest/rollup/checkpoint_header.js +2 -2
  393. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
  394. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  395. package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
  396. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
  397. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  398. package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
  399. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  400. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  401. package/dest/slashing/helpers.d.ts +2 -2
  402. package/dest/slashing/helpers.d.ts.map +1 -1
  403. package/dest/slashing/helpers.js +6 -0
  404. package/dest/slashing/index.d.ts +2 -3
  405. package/dest/slashing/index.d.ts.map +1 -1
  406. package/dest/slashing/index.js +1 -2
  407. package/dest/slashing/serialization.d.ts +2 -6
  408. package/dest/slashing/serialization.d.ts.map +1 -1
  409. package/dest/slashing/serialization.js +0 -60
  410. package/dest/slashing/types.d.ts +10 -92
  411. package/dest/slashing/types.d.ts.map +1 -1
  412. package/dest/slashing/types.js +13 -15
  413. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  414. package/dest/slashing/votes.d.ts.map +1 -0
  415. package/dest/slashing/{tally.js → votes.js} +35 -3
  416. package/dest/stats/stats.d.ts +1 -3
  417. package/dest/stats/stats.d.ts.map +1 -1
  418. package/dest/tests/factories.d.ts +5 -10
  419. package/dest/tests/factories.d.ts.map +1 -1
  420. package/dest/tests/factories.js +37 -56
  421. package/dest/tests/mocks.d.ts +12 -3
  422. package/dest/tests/mocks.d.ts.map +1 -1
  423. package/dest/tests/mocks.js +47 -41
  424. package/dest/timetable/index.d.ts +87 -0
  425. package/dest/timetable/index.d.ts.map +1 -0
  426. package/dest/timetable/index.js +229 -0
  427. package/dest/trees/nullifier_leaf.d.ts +2 -1
  428. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  429. package/dest/trees/nullifier_leaf.js +3 -0
  430. package/dest/trees/public_data_leaf.d.ts +2 -1
  431. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  432. package/dest/trees/public_data_leaf.js +7 -6
  433. package/dest/tx/block_header.d.ts +6 -3
  434. package/dest/tx/block_header.d.ts.map +1 -1
  435. package/dest/tx/block_header.js +7 -2
  436. package/dest/tx/capsule.d.ts +6 -2
  437. package/dest/tx/capsule.d.ts.map +1 -1
  438. package/dest/tx/capsule.js +9 -3
  439. package/dest/tx/fee_provider.d.ts +10 -0
  440. package/dest/tx/fee_provider.d.ts.map +1 -0
  441. package/dest/tx/fee_provider.js +1 -0
  442. package/dest/tx/global_variable_builder.d.ts +3 -4
  443. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  444. package/dest/tx/global_variables.d.ts +4 -4
  445. package/dest/tx/global_variables.d.ts.map +1 -1
  446. package/dest/tx/in_tx.d.ts +3 -3
  447. package/dest/tx/index.d.ts +2 -1
  448. package/dest/tx/index.d.ts.map +1 -1
  449. package/dest/tx/index.js +1 -0
  450. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  451. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  452. package/dest/tx/indexed_tx_effect.js +2 -2
  453. package/dest/tx/private_execution_result.d.ts +6 -6
  454. package/dest/tx/private_execution_result.d.ts.map +1 -1
  455. package/dest/tx/private_execution_result.js +6 -6
  456. package/dest/tx/profiling.d.ts +17 -5
  457. package/dest/tx/profiling.d.ts.map +1 -1
  458. package/dest/tx/profiling.js +15 -5
  459. package/dest/tx/protocol_contracts.d.ts +1 -1
  460. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  461. package/dest/tx/protocol_contracts.js +2 -2
  462. package/dest/tx/public_simulation_output.d.ts +4 -2
  463. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  464. package/dest/tx/public_simulation_output.js +7 -3
  465. package/dest/tx/simulated_tx.d.ts +116 -5
  466. package/dest/tx/simulated_tx.d.ts.map +1 -1
  467. package/dest/tx/simulated_tx.js +7 -4
  468. package/dest/tx/tx.d.ts +8 -7
  469. package/dest/tx/tx.d.ts.map +1 -1
  470. package/dest/tx/tx.js +18 -6
  471. package/dest/tx/tx_receipt.d.ts +33 -10
  472. package/dest/tx/tx_receipt.d.ts.map +1 -1
  473. package/dest/tx/tx_receipt.js +25 -21
  474. package/dest/tx/tx_request.js +2 -2
  475. package/dest/tx/validator/empty_validator.d.ts +2 -2
  476. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  477. package/dest/tx/validator/error_texts.d.ts +10 -2
  478. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  479. package/dest/tx/validator/error_texts.js +11 -1
  480. package/dest/tx/validator/tx_validator.d.ts +2 -2
  481. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  482. package/dest/types/shared.d.ts +1 -10
  483. package/dest/types/shared.d.ts.map +1 -1
  484. package/dest/types/shared.js +0 -9
  485. package/dest/update-checker/index.d.ts +3 -2
  486. package/dest/update-checker/index.d.ts.map +1 -1
  487. package/dest/update-checker/index.js +2 -1
  488. package/dest/update-checker/package_version.d.ts +3 -0
  489. package/dest/update-checker/package_version.d.ts.map +1 -0
  490. package/dest/update-checker/package_version.js +24 -0
  491. package/dest/update-checker/version_checker.d.ts +25 -0
  492. package/dest/update-checker/version_checker.d.ts.map +1 -0
  493. package/dest/update-checker/version_checker.js +50 -0
  494. package/dest/validators/errors.d.ts +6 -1
  495. package/dest/validators/errors.d.ts.map +1 -1
  496. package/dest/validators/errors.js +7 -0
  497. package/dest/validators/schemas.d.ts +30 -30
  498. package/dest/validators/schemas.d.ts.map +1 -1
  499. package/dest/validators/schemas.js +4 -3
  500. package/dest/validators/types.d.ts +3 -3
  501. package/dest/validators/types.d.ts.map +1 -1
  502. package/dest/versioning/versioning.d.ts +4 -2
  503. package/dest/versioning/versioning.d.ts.map +1 -1
  504. package/dest/versioning/versioning.js +4 -1
  505. package/dest/vks/verification_key.d.ts +2 -137
  506. package/dest/vks/verification_key.d.ts.map +1 -1
  507. package/dest/vks/verification_key.js +5 -126
  508. package/dest/world-state/genesis_data.d.ts +11 -0
  509. package/dest/world-state/genesis_data.d.ts.map +1 -0
  510. package/dest/world-state/genesis_data.js +4 -0
  511. package/dest/world-state/index.d.ts +2 -1
  512. package/dest/world-state/index.d.ts.map +1 -1
  513. package/dest/world-state/index.js +1 -0
  514. package/dest/world-state/world_state_revision.d.ts +8 -1
  515. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  516. package/dest/world-state/world_state_revision.js +7 -1
  517. package/package.json +26 -13
  518. package/src/abi/abi.ts +25 -2
  519. package/src/abi/authorization_selector.ts +2 -8
  520. package/src/abi/buffer.ts +25 -4
  521. package/src/abi/decoder.ts +36 -82
  522. package/src/abi/encoder.ts +85 -6
  523. package/src/abi/event_metadata_definition.ts +2 -0
  524. package/src/abi/event_selector.ts +2 -8
  525. package/src/abi/function_call.ts +25 -3
  526. package/src/abi/function_selector.ts +4 -13
  527. package/src/abi/function_signature_decoder.ts +77 -0
  528. package/src/abi/index.ts +1 -0
  529. package/src/abi/note_selector.ts +3 -12
  530. package/src/abi/selector.ts +1 -1
  531. package/src/abi/utils.ts +25 -0
  532. package/src/auth_witness/auth_witness.ts +3 -3
  533. package/src/avm/revert_code.ts +26 -25
  534. package/src/aztec-address/index.ts +4 -10
  535. package/src/block/block_data.ts +25 -0
  536. package/src/block/block_hash.ts +32 -46
  537. package/src/block/block_parameter.ts +3 -3
  538. package/src/block/in_block.ts +6 -6
  539. package/src/block/index.ts +1 -0
  540. package/src/block/l2_block.ts +15 -2
  541. package/src/block/l2_block_info.ts +8 -6
  542. package/src/block/l2_block_source.ts +51 -11
  543. package/src/block/l2_block_stream/interfaces.ts +6 -2
  544. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  545. package/src/block/l2_block_stream/l2_tips_store_base.ts +25 -13
  546. package/src/block/test/l2_tips_store_test_suite.ts +9 -2
  547. package/src/checkpoint/checkpoint.ts +54 -17
  548. package/src/checkpoint/checkpoint_data.ts +87 -0
  549. package/src/checkpoint/index.ts +2 -0
  550. package/src/checkpoint/published_checkpoint.ts +3 -1
  551. package/src/checkpoint/validate.ts +230 -0
  552. package/src/config/chain-config.ts +7 -1
  553. package/src/config/index.ts +2 -0
  554. package/src/config/pipelining-config.ts +31 -0
  555. package/src/config/sequencer-config.ts +47 -0
  556. package/src/contract/contract_address.ts +7 -7
  557. package/src/contract/contract_class.ts +3 -3
  558. package/src/contract/contract_class_id.ts +7 -6
  559. package/src/contract/index.ts +0 -2
  560. package/src/contract/interfaces/contract_class.ts +2 -82
  561. package/src/contract/interfaces/node-info.ts +3 -0
  562. package/src/contract/private_function.ts +5 -3
  563. package/src/database-version/database_version.ts +87 -0
  564. package/src/database-version/version_manager.ts +1 -77
  565. package/src/epoch-helpers/index.ts +39 -0
  566. package/src/file-store/factory.ts +13 -4
  567. package/src/file-store/http.ts +29 -10
  568. package/src/file-store/index.ts +1 -0
  569. package/src/file-store/local.ts +15 -5
  570. package/src/file-store/s3.ts +12 -3
  571. package/src/gas/README.md +154 -0
  572. package/src/gas/fee_math.ts +120 -0
  573. package/src/gas/gas_fees.ts +20 -1
  574. package/src/gas/gas_settings.ts +65 -12
  575. package/src/gas/index.ts +1 -0
  576. package/src/ha-signing/config.ts +159 -0
  577. package/src/ha-signing/index.ts +29 -0
  578. package/src/ha-signing/local_config.ts +46 -0
  579. package/src/ha-signing/types.ts +126 -0
  580. package/src/hash/hash.ts +75 -10
  581. package/src/hash/map_slot.ts +3 -2
  582. package/src/interfaces/allowed_element.ts +29 -9
  583. package/src/interfaces/archiver.ts +22 -5
  584. package/src/interfaces/aztec-node-admin.ts +31 -9
  585. package/src/interfaces/aztec-node-debug.ts +40 -0
  586. package/src/interfaces/aztec-node.ts +82 -99
  587. package/src/interfaces/block-builder.ts +68 -11
  588. package/src/interfaces/client.ts +1 -0
  589. package/src/interfaces/configs.ts +36 -8
  590. package/src/interfaces/l2_logs_source.ts +4 -1
  591. package/src/interfaces/merkle_tree_operations.ts +12 -21
  592. package/src/interfaces/p2p.ts +3 -14
  593. package/src/interfaces/prover-broker.ts +22 -0
  594. package/src/interfaces/prover-client.ts +17 -5
  595. package/src/interfaces/slasher.ts +4 -6
  596. package/src/interfaces/validator.ts +71 -37
  597. package/src/interfaces/world_state.ts +4 -3
  598. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  599. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  600. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  601. package/src/kernel/hints/index.ts +2 -2
  602. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  603. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  604. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  605. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  606. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  607. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +14 -5
  608. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  609. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  610. package/src/kernel/private_validation_requests.ts +8 -8
  611. package/src/keys/derivation.ts +15 -15
  612. package/src/keys/key_types.ts +6 -2
  613. package/src/keys/public_keys.ts +2 -2
  614. package/src/keys/utils.ts +8 -4
  615. package/src/kv-store/config.ts +36 -0
  616. package/src/kv-store/index.ts +1 -0
  617. package/src/l1-contracts/index.ts +1 -1
  618. package/src/logs/debug_log_store.ts +54 -0
  619. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +41 -22
  620. package/src/logs/index.ts +3 -1
  621. package/src/logs/log_filter.ts +5 -0
  622. package/src/logs/log_id.ts +21 -18
  623. package/src/logs/message_context.ts +17 -7
  624. package/src/logs/pending_tagged_log.ts +1 -3
  625. package/src/logs/pre_tag.ts +5 -5
  626. package/src/logs/public_log.ts +4 -2
  627. package/src/logs/shared_secret_derivation.ts +21 -10
  628. package/src/logs/siloed_tag.ts +23 -13
  629. package/src/logs/tag.ts +9 -9
  630. package/src/logs/tagging_index_range.ts +24 -0
  631. package/src/logs/tx_scoped_l2_log.ts +16 -0
  632. package/src/messaging/l1_to_l2_message.ts +12 -9
  633. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  634. package/src/messaging/l2_to_l1_membership.ts +101 -36
  635. package/src/noir/index.ts +2 -2
  636. package/src/note/index.ts +0 -1
  637. package/src/note/note_dao.ts +1 -4
  638. package/src/p2p/attestation_utils.ts +56 -0
  639. package/src/p2p/block_proposal.ts +23 -14
  640. package/src/p2p/checkpoint_attestation.ts +11 -10
  641. package/src/p2p/checkpoint_proposal.ts +72 -62
  642. package/src/p2p/client_type.ts +0 -6
  643. package/src/p2p/consensus_payload.ts +25 -12
  644. package/src/p2p/constants.ts +3 -0
  645. package/src/p2p/gossipable.ts +4 -4
  646. package/src/p2p/index.ts +0 -1
  647. package/src/p2p/peer_error.ts +7 -0
  648. package/src/p2p/topic_type.ts +8 -15
  649. package/src/parity/parity_base_private_inputs.ts +10 -4
  650. package/src/parity/parity_public_inputs.ts +9 -2
  651. package/src/proofs/chonk_proof.ts +91 -5
  652. package/src/rollup/block_headers_hash.ts +11 -2
  653. package/src/rollup/checkpoint_header.ts +2 -2
  654. package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
  655. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  656. package/src/slashing/helpers.ts +8 -0
  657. package/src/slashing/index.ts +1 -2
  658. package/src/slashing/serialization.ts +1 -81
  659. package/src/slashing/types.ts +17 -35
  660. package/src/slashing/{tally.ts → votes.ts} +41 -2
  661. package/src/stats/stats.ts +0 -2
  662. package/src/tests/factories.ts +42 -68
  663. package/src/tests/mocks.ts +65 -33
  664. package/src/timetable/index.ts +346 -0
  665. package/src/trees/nullifier_leaf.ts +4 -0
  666. package/src/trees/public_data_leaf.ts +11 -5
  667. package/src/tx/block_header.ts +14 -5
  668. package/src/tx/capsule.ts +10 -2
  669. package/src/tx/fee_provider.ts +10 -0
  670. package/src/tx/global_variable_builder.ts +2 -3
  671. package/src/tx/global_variables.ts +3 -3
  672. package/src/tx/index.ts +1 -0
  673. package/src/tx/indexed_tx_effect.ts +2 -2
  674. package/src/tx/private_execution_result.ts +5 -5
  675. package/src/tx/profiling.ts +14 -5
  676. package/src/tx/protocol_contracts.ts +2 -2
  677. package/src/tx/public_simulation_output.ts +4 -0
  678. package/src/tx/simulated_tx.ts +14 -3
  679. package/src/tx/tx.ts +22 -13
  680. package/src/tx/tx_receipt.ts +32 -20
  681. package/src/tx/tx_request.ts +2 -2
  682. package/src/tx/validator/empty_validator.ts +1 -1
  683. package/src/tx/validator/error_texts.ts +13 -1
  684. package/src/tx/validator/tx_validator.ts +1 -1
  685. package/src/types/shared.ts +0 -10
  686. package/src/update-checker/index.ts +2 -1
  687. package/src/update-checker/package_version.ts +30 -0
  688. package/src/update-checker/version_checker.ts +65 -0
  689. package/src/validators/errors.ts +9 -0
  690. package/src/validators/schemas.ts +8 -1
  691. package/src/validators/types.ts +5 -4
  692. package/src/versioning/versioning.ts +4 -1
  693. package/src/vks/verification_key.ts +5 -184
  694. package/src/world-state/genesis_data.ts +15 -0
  695. package/src/world-state/index.ts +1 -0
  696. package/src/world-state/world_state_revision.ts +9 -1
  697. package/dest/abi/mocked_keys.d.ts +0 -2
  698. package/dest/abi/mocked_keys.d.ts.map +0 -1
  699. package/dest/abi/mocked_keys.js +0 -1
  700. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  701. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  702. package/dest/contract/private_function_membership_proof.js +0 -124
  703. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  704. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  705. package/dest/contract/utility_function_membership_proof.js +0 -87
  706. package/dest/database-version/index.d.ts +0 -2
  707. package/dest/database-version/index.d.ts.map +0 -1
  708. package/dest/database-version/index.js +0 -1
  709. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  710. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  711. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  712. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  713. package/dest/l1-contracts/slash_factory.js +0 -157
  714. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  715. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  716. package/dest/note/notes_filter.d.ts +0 -27
  717. package/dest/note/notes_filter.d.ts.map +0 -1
  718. package/dest/note/notes_filter.js +0 -11
  719. package/dest/slashing/empire.d.ts +0 -31
  720. package/dest/slashing/empire.d.ts.map +0 -1
  721. package/dest/slashing/empire.js +0 -85
  722. package/dest/slashing/tally.d.ts.map +0 -1
  723. package/dest/update-checker/update-checker.d.ts +0 -49
  724. package/dest/update-checker/update-checker.d.ts.map +0 -1
  725. package/dest/update-checker/update-checker.js +0 -130
  726. package/src/abi/mocked_keys.ts +0 -2
  727. package/src/contract/private_function_membership_proof.ts +0 -167
  728. package/src/contract/utility_function_membership_proof.ts +0 -118
  729. package/src/database-version/index.ts +0 -1
  730. package/src/l1-contracts/slash_factory.ts +0 -179
  731. package/src/note/notes_filter.ts +0 -38
  732. package/src/slashing/empire.ts +0 -102
  733. package/src/update-checker/update-checker.ts +0 -166
@@ -1,4 +1,5 @@
1
1
  import { encodeBlockBlobData } from '@aztec/blob-lib/encoding';
2
+ import { DA_GAS_PER_FIELD } from '@aztec/constants';
2
3
  import { CheckpointNumber, CheckpointNumberSchema, IndexWithinCheckpoint, IndexWithinCheckpointSchema } from '@aztec/foundation/branded-types';
3
4
  import { Fr } from '@aztec/foundation/curves/bn254';
4
5
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
@@ -111,8 +112,8 @@ import { Body } from './body.js';
111
112
  */ static async random(blockNumber, { checkpointNumber = CheckpointNumber(Number(blockNumber)), indexWithinCheckpoint = IndexWithinCheckpoint(0), txsPerBlock = 1, txOptions = {}, makeTxOptions, ...blockHeaderOverrides } = {}) {
112
113
  const archive = new AppendOnlyTreeSnapshot(Fr.random(), blockNumber + 1);
113
114
  const header = BlockHeader.random({
114
- blockNumber,
115
- ...blockHeaderOverrides
115
+ ...blockHeaderOverrides,
116
+ blockNumber
116
117
  });
117
118
  const body = await Body.random({
118
119
  txsPerBlock,
@@ -151,4 +152,13 @@ import { Body } from './body.js';
151
152
  timestamp: this.header.globalVariables.timestamp
152
153
  };
153
154
  }
155
+ /**
156
+ * Compute how much DA gas this block uses.
157
+ *
158
+ * @remarks This assumes DA gas is computed solely based on the number of blob fields in transactions.
159
+ * This may change in the future, but we cannot access the actual DA gas used in a block since it's not exposed
160
+ * in the L2BlockHeader, so we have to rely on recomputing it.
161
+ */ computeDAGasUsed() {
162
+ return this.body.txEffects.reduce((total, txEffect)=>total + txEffect.getNumBlobFields(), 0) * DA_GAS_PER_FIELD;
163
+ }
154
164
  }
@@ -2,8 +2,9 @@ import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader } from '@aztec/foundation/serialize';
4
4
  import { z } from 'zod';
5
+ import { BlockHash } from './block_hash.js';
5
6
  export type L2BlockInfo = {
6
- blockHash?: Fr;
7
+ blockHash?: BlockHash;
7
8
  archive: Fr;
8
9
  lastArchive: Fr;
9
10
  blockNumber: BlockNumber;
@@ -13,7 +14,7 @@ export type L2BlockInfo = {
13
14
  };
14
15
  export declare function randomBlockInfo(blockNumber?: BlockNumber | number): L2BlockInfo;
15
16
  export declare const BlockInfoSchema: z.ZodObject<{
16
- blockHash: z.ZodOptional<z.ZodType<Fr, any, string>>;
17
+ blockHash: z.ZodOptional<import("@aztec/foundation/schemas").ZodFor<BlockHash>>;
17
18
  archive: z.ZodType<Fr, any, string>;
18
19
  lastArchive: z.ZodType<Fr, any, string>;
19
20
  blockNumber: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
@@ -21,7 +22,7 @@ export declare const BlockInfoSchema: z.ZodObject<{
21
22
  txCount: z.ZodNumber;
22
23
  timestamp: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
23
24
  }, "strip", z.ZodTypeAny, {
24
- blockHash?: Fr | undefined;
25
+ blockHash?: BlockHash | undefined;
25
26
  archive: Fr;
26
27
  lastArchive: Fr;
27
28
  blockNumber: number & {
@@ -33,7 +34,7 @@ export declare const BlockInfoSchema: z.ZodObject<{
33
34
  txCount: number;
34
35
  timestamp: bigint;
35
36
  }, {
36
- blockHash?: string | undefined;
37
+ blockHash?: any;
37
38
  archive: string;
38
39
  lastArchive: string;
39
40
  blockNumber: string | number | bigint;
@@ -43,4 +44,4 @@ export declare const BlockInfoSchema: z.ZodObject<{
43
44
  }>;
44
45
  export declare function serializeBlockInfo(blockInfo: L2BlockInfo): Buffer;
45
46
  export declare function deserializeBlockInfo(buffer: Buffer | BufferReader): L2BlockInfo;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaW5mby5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsVUFBVSxFQUFvQixNQUFNLGlDQUFpQyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxNQUFNLFdBQVcsR0FBRztJQUN4QixTQUFTLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDZixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUNoQixXQUFXLEVBQUUsV0FBVyxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxVQUFVLENBQUM7SUFDdkIsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUNoQixTQUFTLEVBQUUsTUFBTSxDQUFDO0NBQ25CLENBQUM7QUFFRix3QkFBZ0IsZUFBZSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFdBQVcsR0FBRyxNQUFNLEdBQUcsV0FBVyxDQVUvRTtBQUVELGVBQU8sTUFBTSxlQUFlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBUTFCLENBQUM7QUFFSCx3QkFBZ0Isa0JBQWtCLENBQUMsU0FBUyxFQUFFLFdBQVcsR0FBRyxNQUFNLENBVWpFO0FBRUQsd0JBQWdCLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FZL0UifQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfaW5mby5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsVUFBVSxFQUFvQixNQUFNLGlDQUFpQyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDO0lBQ3RCLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDWixXQUFXLEVBQUUsRUFBRSxDQUFDO0lBQ2hCLFdBQVcsRUFBRSxXQUFXLENBQUM7SUFDekIsVUFBVSxFQUFFLFVBQVUsQ0FBQztJQUN2QixPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQ2hCLFNBQVMsRUFBRSxNQUFNLENBQUM7Q0FDbkIsQ0FBQztBQUVGLHdCQUFnQixlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsV0FBVyxHQUFHLE1BQU0sR0FBRyxXQUFXLENBVS9FO0FBRUQsZUFBTyxNQUFNLGVBQWU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFRMUIsQ0FBQztBQUVILHdCQUFnQixrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsV0FBVyxHQUFHLE1BQU0sQ0FVakU7QUFFRCx3QkFBZ0Isb0JBQW9CLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsV0FBVyxDQVkvRSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_info.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,UAAU,EAAoB,MAAM,iCAAiC,CAAC;AAC/G,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,CAAC,EAAE,EAAE,CAAC;IACf,OAAO,EAAE,EAAE,CAAC;IACZ,WAAW,EAAE,EAAE,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,WAAW,CAU/E;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ1B,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,CAUjE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAY/E"}
1
+ {"version":3,"file":"l2_block_info.d.ts","sourceRoot":"","sources":["../../src/block/l2_block_info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,UAAU,EAAoB,MAAM,iCAAiC,CAAC;AAC/G,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,EAAE,EAAE,CAAC;IACZ,WAAW,EAAE,EAAE,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,WAAW,CAU/E;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ1B,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,CAUjE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAY/E"}
@@ -3,9 +3,10 @@ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
5
  import { z } from 'zod';
6
+ import { BlockHash } from './block_hash.js';
6
7
  export function randomBlockInfo(blockNumber) {
7
8
  return {
8
- blockHash: Fr.random(),
9
+ blockHash: BlockHash.random(),
9
10
  archive: Fr.random(),
10
11
  lastArchive: Fr.random(),
11
12
  blockNumber: BlockNumber(blockNumber ?? Math.floor(Math.random() * 100000) + 1),
@@ -15,7 +16,7 @@ export function randomBlockInfo(blockNumber) {
15
16
  };
16
17
  }
17
18
  export const BlockInfoSchema = z.object({
18
- blockHash: schemas.Fr.optional(),
19
+ blockHash: BlockHash.schema.optional(),
19
20
  archive: schemas.Fr,
20
21
  lastArchive: schemas.Fr,
21
22
  blockNumber: BlockNumberSchema,
@@ -24,13 +25,13 @@ export const BlockInfoSchema = z.object({
24
25
  timestamp: schemas.BigInt
25
26
  });
26
27
  export function serializeBlockInfo(blockInfo) {
27
- return serializeToBuffer(blockInfo.blockHash ?? Fr.ZERO, blockInfo.archive, blockInfo.lastArchive, blockInfo.blockNumber, blockInfo.slotNumber, blockInfo.txCount, blockInfo.timestamp);
28
+ return serializeToBuffer(blockInfo.blockHash ?? BlockHash.ZERO, blockInfo.archive, blockInfo.lastArchive, blockInfo.blockNumber, blockInfo.slotNumber, blockInfo.txCount, blockInfo.timestamp);
28
29
  }
29
30
  export function deserializeBlockInfo(buffer) {
30
31
  const reader = BufferReader.asReader(buffer);
31
- const blockHash = reader.readObject(Fr);
32
+ const blockHash = BlockHash.fromBuffer(reader);
32
33
  return {
33
- blockHash: blockHash.equals(Fr.ZERO) ? undefined : blockHash,
34
+ blockHash: blockHash.equals(BlockHash.ZERO) ? undefined : blockHash,
34
35
  archive: reader.readObject(Fr),
35
36
  lastArchive: reader.readObject(Fr),
36
37
  blockNumber: BlockNumber(reader.readNumber()),
@@ -4,12 +4,15 @@ import type { EthAddress } from '@aztec/foundation/eth-address';
4
4
  import type { TypedEventEmitter } from '@aztec/foundation/types';
5
5
  import { z } from 'zod';
6
6
  import type { Checkpoint } from '../checkpoint/checkpoint.js';
7
+ import type { CheckpointData, CommonCheckpointData, ProposedCheckpointData } from '../checkpoint/checkpoint_data.js';
7
8
  import type { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
8
9
  import type { L1RollupConstants } from '../epoch-helpers/index.js';
9
10
  import type { BlockHeader } from '../tx/block_header.js';
10
11
  import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
11
12
  import type { TxHash } from '../tx/tx_hash.js';
12
13
  import type { TxReceipt } from '../tx/tx_receipt.js';
14
+ import type { BlockData } from './block_data.js';
15
+ import type { BlockHash } from './block_hash.js';
13
16
  import type { CheckpointedL2Block } from './checkpointed_l2_block.js';
14
17
  import type { L2Block } from './l2_block.js';
15
18
  import type { ValidateCheckpointNegativeResult, ValidateCheckpointResult } from './validate_block_result.js';
@@ -32,6 +35,11 @@ export interface L2BlockSource {
32
35
  * @returns The number of the latest L2 block processed by the block source implementation.
33
36
  */
34
37
  getBlockNumber(): Promise<BlockNumber>;
38
+ /**
39
+ * Gets the number of the latest L2 checkpoint processed by the block source implementation.
40
+ * @returns The number of the latest L2 checkpoint processed by the block source implementation.
41
+ */
42
+ getCheckpointNumber(): Promise<CheckpointNumber>;
35
43
  /**
36
44
  * Gets the number of the latest L2 block proven seen by the block source implementation.
37
45
  * @returns The number of the latest L2 block proven seen by the block source implementation.
@@ -43,9 +51,8 @@ export interface L2BlockSource {
43
51
  */
44
52
  getCheckpointedL2BlockNumber(): Promise<BlockNumber>;
45
53
  /**
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.
54
+ * Returns the finalized L2 block number. A block is finalized when it was proven
55
+ * in an L1 block that has itself been finalized on Ethereum.
49
56
  * @returns The finalized block number.
50
57
  */
51
58
  getFinalizedL2BlockNumber(): Promise<BlockNumber>;
@@ -75,18 +82,35 @@ export interface L2BlockSource {
75
82
  * @param epochNumber - Epoch for which we want checkpoint data
76
83
  */
77
84
  getCheckpointsForEpoch(epochNumber: EpochNumber): Promise<Checkpoint[]>;
85
+ /**
86
+ * Gets lightweight checkpoint metadata for a given epoch, without fetching full block data.
87
+ * @param epochNumber - Epoch for which we want checkpoint data
88
+ */
89
+ getCheckpointsDataForEpoch(epochNumber: EpochNumber): Promise<CheckpointData[]>;
78
90
  /**
79
91
  * Gets a block header by its hash.
80
92
  * @param blockHash - The block hash to retrieve.
81
93
  * @returns The requested block header (or undefined if not found).
82
94
  */
83
- getBlockHeaderByHash(blockHash: Fr): Promise<BlockHeader | undefined>;
95
+ getBlockHeaderByHash(blockHash: BlockHash): Promise<BlockHeader | undefined>;
84
96
  /**
85
97
  * Gets a block header by its archive root.
86
98
  * @param archive - The archive root to retrieve.
87
99
  * @returns The requested block header (or undefined if not found).
88
100
  */
89
101
  getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
102
+ /**
103
+ * Gets block metadata (without tx data) by block number.
104
+ * @param number - The block number to retrieve.
105
+ * @returns The requested block data (or undefined if not found).
106
+ */
107
+ getBlockData(number: BlockNumber): Promise<BlockData | undefined>;
108
+ /**
109
+ * Gets block metadata (without tx data) by archive root.
110
+ * @param archive - The archive root to retrieve.
111
+ * @returns The requested block data (or undefined if not found).
112
+ */
113
+ getBlockDataByArchive(archive: Fr): Promise<BlockData | undefined>;
90
114
  /**
91
115
  * Gets an L2 block by block number.
92
116
  * @param number - The block number to return.
@@ -98,7 +122,7 @@ export interface L2BlockSource {
98
122
  * @param blockHash - The block hash to retrieve.
99
123
  * @returns The requested L2 block (or undefined if not found).
100
124
  */
101
- getL2BlockByHash(blockHash: Fr): Promise<L2Block | undefined>;
125
+ getL2BlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
102
126
  /**
103
127
  * Gets an L2 block by its archive root.
104
128
  * @param archive - The archive root to retrieve.
@@ -118,13 +142,17 @@ export interface L2BlockSource {
118
142
  */
119
143
  getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
120
144
  /**
121
- * Returns the current L2 slot number based on the currently synced L1 timestamp.
145
+ * Returns the last L2 slot number for which we have all L1 data needed to build the next checkpoint.
146
+ * Determined by the max of two signals: L1 block sync progress and latest synced checkpoint slot.
147
+ * The checkpoint signal handles missed L1 blocks, since a published checkpoint seals the message tree
148
+ * for the next checkpoint via the inbox LAG mechanism.
122
149
  */
123
- getL2SlotNumber(): Promise<SlotNumber | undefined>;
150
+ getSyncedL2SlotNumber(): Promise<SlotNumber | undefined>;
124
151
  /**
125
- * Returns the current L2 epoch number based on the currently synced L1 timestamp.
152
+ * Returns the last L2 epoch number that has been fully synchronized from L1.
153
+ * An epoch is fully synced when all its L2 slots have been fully synced.
126
154
  */
127
- getL2EpochNumber(): Promise<EpochNumber | undefined>;
155
+ getSyncedL2EpochNumber(): Promise<EpochNumber | undefined>;
128
156
  /**
129
157
  * Returns all checkpointed block headers for a given epoch.
130
158
  * @dev Use this method only with recent epochs, since it walks the block list backwards.
@@ -160,6 +188,10 @@ export interface L2BlockSource {
160
188
  * checkpoint that is invalid, along with the reason for being invalid, which can be used to trigger an invalidation.
161
189
  */
162
190
  getPendingChainValidationStatus(): Promise<ValidateCheckpointResult>;
191
+ /** Returns the checkpoint at the proposed chain tip. */
192
+ getProposedCheckpoint(): Promise<CommonCheckpointData | undefined>;
193
+ /** Returns proposed checkpoint, if set, undefined if not*/
194
+ getProposedCheckpointOnly(): Promise<ProposedCheckpointData | undefined>;
163
195
  /** Force a sync. */
164
196
  syncImmediate(): Promise<void>;
165
197
  /**
@@ -185,7 +217,7 @@ export interface L2BlockSource {
185
217
  * @param blockHash - The block hash to retrieve.
186
218
  * @returns The requested block (or undefined if not found).
187
219
  */
188
- getCheckpointedBlockByHash(blockHash: Fr): Promise<CheckpointedL2Block | undefined>;
220
+ getCheckpointedBlockByHash(blockHash: BlockHash): Promise<CheckpointedL2Block | undefined>;
189
221
  /**
190
222
  * Gets a checkpointed block by its archive root.
191
223
  * @param archive - The archive root to retrieve.
@@ -232,11 +264,12 @@ export interface L2BlockSourceEventEmitter extends L2BlockSource {
232
264
  * - proven: Proven block on L1.
233
265
  * - finalized: Proven block on a finalized L1 block (not implemented, set to proven for now).
234
266
  */
235
- export type L2BlockTag = 'proposed' | 'checkpointed' | 'proven' | 'finalized';
267
+ export type L2BlockTag = 'proposed' | 'proposedCheckpoint' | 'checkpointed' | 'proven' | 'finalized';
236
268
  /** Tips of the L2 chain. */
237
269
  export type L2Tips = {
238
270
  proposed: L2BlockId;
239
271
  checkpointed: L2TipId;
272
+ proposedCheckpoint: L2TipId;
240
273
  proven: L2TipId;
241
274
  finalized: L2TipId;
242
275
  };
@@ -319,6 +352,54 @@ export declare const L2TipsSchema: z.ZodObject<{
319
352
  hash: string;
320
353
  };
321
354
  }>;
355
+ proposedCheckpoint: z.ZodObject<{
356
+ block: z.ZodObject<{
357
+ number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
358
+ hash: z.ZodString;
359
+ }, "strip", z.ZodTypeAny, {
360
+ number: number & {
361
+ _branding: "BlockNumber";
362
+ };
363
+ hash: string;
364
+ }, {
365
+ number: string | number | bigint;
366
+ hash: string;
367
+ }>;
368
+ checkpoint: z.ZodObject<{
369
+ number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, CheckpointNumber, string | number | bigint>;
370
+ hash: z.ZodString;
371
+ }, "strip", z.ZodTypeAny, {
372
+ number: number & {
373
+ _branding: "CheckpointNumber";
374
+ };
375
+ hash: string;
376
+ }, {
377
+ number: string | number | bigint;
378
+ hash: string;
379
+ }>;
380
+ }, "strip", z.ZodTypeAny, {
381
+ block: {
382
+ number: number & {
383
+ _branding: "BlockNumber";
384
+ };
385
+ hash: string;
386
+ };
387
+ checkpoint: {
388
+ number: number & {
389
+ _branding: "CheckpointNumber";
390
+ };
391
+ hash: string;
392
+ };
393
+ }, {
394
+ block: {
395
+ number: string | number | bigint;
396
+ hash: string;
397
+ };
398
+ checkpoint: {
399
+ number: string | number | bigint;
400
+ hash: string;
401
+ };
402
+ }>;
322
403
  proven: z.ZodObject<{
323
404
  block: z.ZodObject<{
324
405
  number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
@@ -436,6 +517,20 @@ export declare const L2TipsSchema: z.ZodObject<{
436
517
  hash: string;
437
518
  };
438
519
  };
520
+ proposedCheckpoint: {
521
+ block: {
522
+ number: number & {
523
+ _branding: "BlockNumber";
524
+ };
525
+ hash: string;
526
+ };
527
+ checkpoint: {
528
+ number: number & {
529
+ _branding: "CheckpointNumber";
530
+ };
531
+ hash: string;
532
+ };
533
+ };
439
534
  proven: {
440
535
  block: {
441
536
  number: number & {
@@ -479,6 +574,16 @@ export declare const L2TipsSchema: z.ZodObject<{
479
574
  hash: string;
480
575
  };
481
576
  };
577
+ proposedCheckpoint: {
578
+ block: {
579
+ number: string | number | bigint;
580
+ hash: string;
581
+ };
582
+ checkpoint: {
583
+ number: string | number | bigint;
584
+ hash: string;
585
+ };
586
+ };
482
587
  proven: {
483
588
  block: {
484
589
  number: string | number | bigint;
@@ -531,4 +636,4 @@ export type InvalidCheckpointDetectedEvent = {
531
636
  type: 'invalidCheckpointDetected';
532
637
  validationResult: ValidateCheckpointNegativeResult;
533
638
  };
534
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLGdDQUFnQyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENB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
639
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckgsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFN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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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"}
@@ -32,6 +32,7 @@ const L2TipIdSchema = z.object({
32
32
  export const L2TipsSchema = z.object({
33
33
  proposed: L2BlockIdSchema,
34
34
  checkpointed: L2TipIdSchema,
35
+ proposedCheckpoint: L2TipIdSchema,
35
36
  proven: L2TipIdSchema,
36
37
  finalized: L2TipIdSchema
37
38
  });
@@ -1,10 +1,13 @@
1
1
  import type { PublishedCheckpoint } from '../../checkpoint/published_checkpoint.js';
2
2
  import type { L2Block } from '../l2_block.js';
3
3
  import type { CheckpointId, L2BlockId, L2Tips } from '../l2_block_source.js';
4
+ /** Provides the current chain tips. Implemented by world-state, l2-tips-store, and AztecNode. */
5
+ export interface L2TipsProvider {
6
+ getL2Tips(): Promise<L2Tips>;
7
+ }
4
8
  /** Interface to the local view of the chain. Implemented by world-state and l2-tips-store. */
5
- export interface L2BlockStreamLocalDataProvider {
9
+ export interface L2BlockStreamLocalDataProvider extends L2TipsProvider {
6
10
  getL2BlockHash(number: number): Promise<string | undefined>;
7
- getL2Tips(): Promise<L2Tips>;
8
11
  }
9
12
  /** Interface to a handler of events emitted. */
10
13
  export interface L2BlockStreamEventHandler {
@@ -33,4 +36,4 @@ export type L2BlockStreamEvent = /** Emits blocks added to the chain. */ {
33
36
  block: L2BlockId;
34
37
  };
35
38
  export type L2TipsStore = L2BlockStreamEventHandler & L2BlockStreamLocalDataProvider;
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX3N0cmVhbS9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU3RSw4RkFBOEY7QUFDOUYsTUFBTSxXQUFXLDhCQUE4QjtJQUM3QyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQzVELFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDOUI7QUFFRCxnREFBZ0Q7QUFDaEQsTUFBTSxXQUFXLHlCQUF5QjtJQUN4QyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ2xFO0FBRUQsTUFBTSxNQUFNLGtCQUFrQixHQUMxQix1Q0FBdUMsQ0FBQztJQUN0QyxJQUFJLEVBQUUsY0FBYyxDQUFDO0lBQ3JCLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztDQUNuQixHQUNELHlDQUF5QyxDQUFDO0lBQ3hDLElBQUksRUFBRSxvQkFBb0IsQ0FBQztJQUMzQixVQUFVLEVBQUUsbUJBQW1CLENBQUM7SUFDaEMsS0FBSyxFQUFFLFNBQVMsQ0FBQztDQUNsQixHQUNEOzs7O0dBSUMsQ0FBQztJQUNBLElBQUksRUFBRSxjQUFjLENBQUM7SUFDckIsS0FBSyxFQUFFLFNBQVMsQ0FBQztJQUNqQixVQUFVLEVBQUUsWUFBWSxDQUFDO0NBQzFCLEdBQ0QsZ0NBQWdDLENBQUM7SUFDL0IsSUFBSSxFQUFFLGNBQWMsQ0FBQztJQUNyQixLQUFLLEVBQUUsU0FBUyxDQUFDO0NBQ2xCLEdBQ0QsZ0VBQWdFLENBQUM7SUFDL0QsSUFBSSxFQUFFLGlCQUFpQixDQUFDO0lBQ3hCLEtBQUssRUFBRSxTQUFTLENBQUM7Q0FDbEIsQ0FBQztBQUVOLE1BQU0sTUFBTSxXQUFXLEdBQUcseUJBQXlCLEdBQUcsOEJBQThCLENBQUMifQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jsb2NrL2wyX2Jsb2NrX3N0cmVhbS9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEYsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU3RSxpR0FBaUc7QUFDakcsTUFBTSxXQUFXLGNBQWM7SUFDN0IsU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUM5QjtBQUVELDhGQUE4RjtBQUM5RixNQUFNLFdBQVcsOEJBQStCLFNBQVEsY0FBYztJQUNwRSxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0NBQzdEO0FBRUQsZ0RBQWdEO0FBQ2hELE1BQU0sV0FBVyx5QkFBeUI7SUFDeEMsc0JBQXNCLENBQUMsS0FBSyxFQUFFLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztDQUNsRTtBQUVELE1BQU0sTUFBTSxrQkFBa0IsR0FDMUIsdUNBQXVDLENBQUM7SUFDdEMsSUFBSSxFQUFFLGNBQWMsQ0FBQztJQUNyQixNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Q0FDbkIsR0FDRCx5Q0FBeUMsQ0FBQztJQUN4QyxJQUFJLEVBQUUsb0JBQW9CLENBQUM7SUFDM0IsVUFBVSxFQUFFLG1CQUFtQixDQUFDO0lBQ2hDLEtBQUssRUFBRSxTQUFTLENBQUM7Q0FDbEIsR0FDRDs7OztHQUlDLENBQUM7SUFDQSxJQUFJLEVBQUUsY0FBYyxDQUFDO0lBQ3JCLEtBQUssRUFBRSxTQUFTLENBQUM7SUFDakIsVUFBVSxFQUFFLFlBQVksQ0FBQztDQUMxQixHQUNELGdDQUFnQyxDQUFDO0lBQy9CLElBQUksRUFBRSxjQUFjLENBQUM7SUFDckIsS0FBSyxFQUFFLFNBQVMsQ0FBQztDQUNsQixHQUNELGdFQUFnRSxDQUFDO0lBQy9ELElBQUksRUFBRSxpQkFBaUIsQ0FBQztJQUN4QixLQUFLLEVBQUUsU0FBUyxDQUFDO0NBQ2xCLENBQUM7QUFFTixNQUFNLE1BQU0sV0FBVyxHQUFHLHlCQUF5QixHQUFHLDhCQUE4QixDQUFDIn0=
@@ -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,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
+ {"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,iGAAiG;AACjG,MAAM,WAAW,cAAc;IAC7B,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9B;AAED,8FAA8F;AAC9F,MAAM,WAAW,8BAA+B,SAAQ,cAAc;IACpE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC7D;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"}
@@ -37,4 +37,4 @@ export declare class L2BlockStream {
37
37
  private getBlockHashFromSource;
38
38
  private emitEvent;
39
39
  }
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX2Jsb2NrX3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWtCLEtBQUssYUFBYSxFQUFpQixNQUFNLHVCQUF1QixDQUFDO0FBQzFGLE9BQU8sS0FBSyxFQUFzQix5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJILHNHQUFzRztBQUN0RyxlQUFPLE1BQU0seUJBQXlCLEtBQUssQ0FBQztBQUU1Qyx1SEFBdUg7QUFDdkgscUJBQWEsYUFBYTtJQU10QixPQUFPLENBQUMsYUFBYTtJQUlyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsT0FBTztJQUNmLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRztJQUNwQixPQUFPLENBQUMsSUFBSTtJQVpkLE9BQU8sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFpQjtJQUNoRCxPQUFPLENBQUMsU0FBUyxDQUFTO0lBQzFCLE9BQU8sQ0FBQyxVQUFVLENBQVM7SUFFM0IsWUFDVSxhQUFhLEVBQUUsSUFBSSxDQUN6QixhQUFhLEVBQ2IsV0FBVyxHQUFHLGdCQUFnQixHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsR0FBRyx1QkFBdUIsQ0FDMUYsRUFDTyxTQUFTLEVBQUUsOEJBQThCLEVBQ3pDLE9BQU8sRUFBRSx5QkFBeUIsRUFDekIsR0FBRyx5Q0FBcUMsRUFDakQsSUFBSSxHQUFFO1FBQ1osY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNuQixhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDdkIsa0hBQWtIO1FBQ2xILGFBQWEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztRQUN4QiwySUFBMkk7UUFDM0ksaUJBQWlCLENBQUMsRUFBRSxPQUFPLENBQUM7UUFDNUIsaUhBQWlIO1FBQ2pILHVCQUF1QixDQUFDLEVBQUUsTUFBTSxDQUFDO0tBQzdCLEVBT1A7SUFFTSxLQUFLLFNBR1g7SUFFWSxJQUFJLGtCQUVoQjtJQUVNLFNBQVMsWUFFZjtJQUVEOzs7O09BSUc7SUFDVSxJQUFJLGtCQUloQjtJQUVELFVBQWdCLElBQUksa0JBMEtuQjtZQU9hLHFCQUFxQjtJQXdCbkMsT0FBTyxDQUFDLHNCQUFzQjtZQU9oQixTQUFTO0NBU3hCIn0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX2Jsb2NrX3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWtCLEtBQUssYUFBYSxFQUFpQixNQUFNLHVCQUF1QixDQUFDO0FBQzFGLE9BQU8sS0FBSyxFQUFzQix5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJILHNHQUFzRztBQUN0RyxlQUFPLE1BQU0seUJBQXlCLEtBQUssQ0FBQztBQUU1Qyx1SEFBdUg7QUFDdkgscUJBQWEsYUFBYTtJQU10QixPQUFPLENBQUMsYUFBYTtJQUlyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsT0FBTztJQUNmLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRztJQUNwQixPQUFPLENBQUMsSUFBSTtJQVpkLE9BQU8sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFpQjtJQUNoRCxPQUFPLENBQUMsU0FBUyxDQUFTO0lBQzFCLE9BQU8sQ0FBQyxVQUFVLENBQVM7SUFFM0IsWUFDVSxhQUFhLEVBQUUsSUFBSSxDQUN6QixhQUFhLEVBQ2IsV0FBVyxHQUFHLGdCQUFnQixHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsR0FBRyx1QkFBdUIsQ0FDMUYsRUFDTyxTQUFTLEVBQUUsOEJBQThCLEVBQ3pDLE9BQU8sRUFBRSx5QkFBeUIsRUFDekIsR0FBRyx5Q0FBcUMsRUFDakQsSUFBSSxHQUFFO1FBQ1osY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNuQixhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDdkIsa0hBQWtIO1FBQ2xILGFBQWEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztRQUN4QiwySUFBMkk7UUFDM0ksaUJBQWlCLENBQUMsRUFBRSxPQUFPLENBQUM7UUFDNUIsaUhBQWlIO1FBQ2pILHVCQUF1QixDQUFDLEVBQUUsTUFBTSxDQUFDO0tBQzdCLEVBT1A7SUFFTSxLQUFLLFNBR1g7SUFFWSxJQUFJLGtCQUVoQjtJQUVNLFNBQVMsWUFFZjtJQUVEOzs7O09BSUc7SUFDVSxJQUFJLGtCQUloQjtJQUVELFVBQWdCLElBQUksa0JBK0xuQjtZQU9hLHFCQUFxQjtJQXdCbkMsT0FBTyxDQUFDLHNCQUFzQjtZQU9oQixTQUFTO0NBU3hCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_stream.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/l2_block_stream.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkB,KAAK,aAAa,EAAiB,MAAM,uBAAuB,CAAC;AAC1F,OAAO,KAAK,EAAsB,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AAErH,sGAAsG;AACtG,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,uHAAuH;AACvH,qBAAa,aAAa;IAMtB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,IAAI;IAZd,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAE3B,YACU,aAAa,EAAE,IAAI,CACzB,aAAa,EACb,WAAW,GAAG,gBAAgB,GAAG,WAAW,GAAG,gBAAgB,GAAG,uBAAuB,CAC1F,EACO,SAAS,EAAE,8BAA8B,EACzC,OAAO,EAAE,yBAAyB,EACzB,GAAG,yCAAqC,EACjD,IAAI,GAAE;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,kHAAkH;QAClH,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,2IAA2I;QAC3I,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,iHAAiH;QACjH,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAC7B,EAOP;IAEM,KAAK,SAGX;IAEY,IAAI,kBAEhB;IAEM,SAAS,YAEf;IAED;;;;OAIG;IACU,IAAI,kBAIhB;IAED,UAAgB,IAAI,kBA0KnB;YAOa,qBAAqB;IAwBnC,OAAO,CAAC,sBAAsB;YAOhB,SAAS;CASxB"}
1
+ {"version":3,"file":"l2_block_stream.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/l2_block_stream.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkB,KAAK,aAAa,EAAiB,MAAM,uBAAuB,CAAC;AAC1F,OAAO,KAAK,EAAsB,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AAErH,sGAAsG;AACtG,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,uHAAuH;AACvH,qBAAa,aAAa;IAMtB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,IAAI;IAZd,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAE3B,YACU,aAAa,EAAE,IAAI,CACzB,aAAa,EACb,WAAW,GAAG,gBAAgB,GAAG,WAAW,GAAG,gBAAgB,GAAG,uBAAuB,CAC1F,EACO,SAAS,EAAE,8BAA8B,EACzC,OAAO,EAAE,yBAAyB,EACzB,GAAG,yCAAqC,EACjD,IAAI,GAAE;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,kHAAkH;QAClH,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,2IAA2I;QAC3I,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,iHAAiH;QACjH,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAC7B,EAOP;IAEM,KAAK,SAGX;IAEY,IAAI,kBAEhB;IAEM,SAAS,YAEf;IAED;;;;OAIG;IACU,IAAI,kBAIhB;IAED,UAAgB,IAAI,kBA+LnB;YAOa,qBAAqB;IAwBnC,OAAO,CAAC,sBAAsB;YAOhB,SAAS;CASxB"}
@@ -88,6 +88,16 @@ import { makeL2BlockId } from '../l2_block_source.js';
88
88
  }
89
89
  let nextBlockNumber = latestBlockNumber + 1;
90
90
  let nextCheckpointToEmit = CheckpointNumber(localTips.checkpointed.checkpoint.number + 1);
91
+ // When startingBlock is set, also skip ahead for checkpoints.
92
+ if (this.opts.startingBlock !== undefined && this.opts.startingBlock >= 1 && nextCheckpointToEmit <= sourceTips.checkpointed.checkpoint.number) {
93
+ const startingBlockCheckpoints = await this.l2BlockSource.getCheckpointedBlocks(BlockNumber(this.opts.startingBlock), 1);
94
+ if (startingBlockCheckpoints.length > 0) {
95
+ nextCheckpointToEmit = CheckpointNumber(Math.max(nextCheckpointToEmit, startingBlockCheckpoints[0].checkpointNumber));
96
+ } else {
97
+ // startingBlock is past all checkpointed blocks; skip Loop 1 entirely.
98
+ nextCheckpointToEmit = CheckpointNumber(sourceTips.checkpointed.checkpoint.number + 1);
99
+ }
100
+ }
91
101
  if (this.opts.skipFinalized) {
92
102
  // When skipping finalized blocks we need to provide reliable reorg detection while fetching as few blocks as
93
103
  // possible. Finalized blocks cannot be reorged by definition, so we can skip most of them. We do need the very
@@ -46,4 +46,4 @@ export declare abstract class L2TipsStoreBase implements L2BlockStreamEventHandl
46
46
  private saveTag;
47
47
  private saveCheckpoint;
48
48
  }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdGlwc19zdG9yZV9iYXNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX3RpcHNfc3RvcmVfYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFaEYsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNwRixPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBSUwsS0FBSyxVQUFVLEVBQ2YsS0FBSyxNQUFNLEVBQ1osTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJIOzs7R0FHRztBQUNILDhCQUFzQixlQUFnQixZQUFXLHlCQUF5QixFQUFFLDhCQUE4QjtJQUd4Ryw2Q0FBNkM7SUFDN0MsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTdFLDZDQUE2QztJQUM3QyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXBGLG9EQUFvRDtJQUNwRCxTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU3RixvREFBb0Q7SUFDcEQsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2Rix5RUFBeUU7SUFDekUsU0FBUyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVwRiwyREFBMkQ7SUFDM0QsU0FBUyxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoSCwyREFBMkQ7SUFDM0QsU0FBUyxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FDNUMsV0FBVyxFQUFFLFdBQVcsRUFDeEIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQ2pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVqQix5RkFBeUY7SUFDekYsU0FBUyxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUxRix1Q0FBdUM7SUFDdkMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRS9HLDBCQUEwQjtJQUMxQixTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFdEYsa0VBQWtFO0lBQ2xFLFNBQVMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTlGLDRGQUE0RjtJQUM1RixTQUFTLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBSWxFLGNBQWMsQ0FBQyxNQUFNLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBRXRFO0lBRU0sU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FzQmxDO0lBRVksc0JBQXNCLENBQUMsS0FBSyxFQUFFLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FrQjVFO0lBR0QsU0FBUyxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUUxRDtZQUlhLFVBQVU7WUFZVixlQUFlO1lBaUJmLGlCQUFpQjtZQWFqQix1QkFBdUI7WUFVdkIsaUJBQWlCO1lBY2pCLGlCQUFpQjtZQVNqQixvQkFBb0I7WUFpQnBCLE9BQU87WUFPUCxjQUFjO0NBUzdCIn0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdGlwc19zdG9yZV9iYXNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc3RyZWFtL2wyX3RpcHNfc3RvcmVfYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFaEYsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVwRixPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBSUwsS0FBSyxVQUFVLEVBQ2YsS0FBSyxNQUFNLEVBQ1osTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXJIOzs7R0FHRztBQUNILDhCQUFzQixlQUFnQixZQUFXLHlCQUF5QixFQUFFLDhCQUE4QjtJQUd4Ryw2Q0FBNkM7SUFDN0MsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTdFLDZDQUE2QztJQUM3QyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXBGLG9EQUFvRDtJQUNwRCxTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU3RixvREFBb0Q7SUFDcEQsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2Rix5RUFBeUU7SUFDekUsU0FBUyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVwRiwyREFBMkQ7SUFDM0QsU0FBUyxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoSCwyREFBMkQ7SUFDM0QsU0FBUyxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FDNUMsV0FBVyxFQUFFLFdBQVcsRUFDeEIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQ2pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVqQix5RkFBeUY7SUFDekYsU0FBUyxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUxRix1Q0FBdUM7SUFDdkMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRS9HLDBCQUEwQjtJQUMxQixTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFdEYsa0VBQWtFO0lBQ2xFLFNBQVMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTlGLDRGQUE0RjtJQUM1RixTQUFTLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBSWxFLGNBQWMsQ0FBQyxNQUFNLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBRXRFO0lBRU0sU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0EyQmxDO0lBRVksc0JBQXNCLENBQUMsS0FBSyxFQUFFLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FrQjVFO0lBR0QsU0FBUyxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUUxRDtZQUlhLFVBQVU7WUFZVixlQUFlO1lBaUJmLGlCQUFpQjtZQWFqQix1QkFBdUI7WUFnQnZCLGlCQUFpQjtZQWVqQixpQkFBaUI7WUFTakIsb0JBQW9CO1lBaUJwQixPQUFPO1lBT1AsY0FBYztDQVM3QiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"l2_tips_store_base.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/l2_tips_store_base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"l2_tips_store_base.d.ts","sourceRoot":"","sources":["../../../src/block/l2_block_stream/l2_tips_store_base.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { GENESIS_BLOCK_HEADER_HASH } from '@aztec/constants';
2
1
  import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
2
+ import { GENESIS_BLOCK_HEADER_HASH } from '../block_hash.js';
3
3
  import { GENESIS_CHECKPOINT_HEADER_HASH } from '../l2_block_source.js';
4
4
  /**
5
5
  * Abstract base class for L2 tips stores. Provides common event handling logic
@@ -11,16 +11,18 @@ import { GENESIS_CHECKPOINT_HEADER_HASH } from '../l2_block_source.js';
11
11
  }
12
12
  getL2Tips() {
13
13
  return this.runInTransaction(async ()=>{
14
- const [proposedBlockId, finalizedBlockId, provenBlockId, checkpointedBlockId] = await Promise.all([
14
+ const [proposedBlockId, finalizedBlockId, provenBlockId, checkpointedBlockId, proposedCheckpointBlockId] = await Promise.all([
15
15
  this.getBlockId('proposed'),
16
16
  this.getBlockId('finalized'),
17
17
  this.getBlockId('proven'),
18
- this.getBlockId('checkpointed')
18
+ this.getBlockId('checkpointed'),
19
+ this.getBlockId('proposedCheckpoint')
19
20
  ]);
20
- const [finalizedCheckpointId, provenCheckpointId, checkpointedCheckpointId] = await Promise.all([
21
+ const [finalizedCheckpointId, provenCheckpointId, checkpointedCheckpointId, proposedCheckpointId] = await Promise.all([
21
22
  this.getCheckpointId('finalized'),
22
23
  this.getCheckpointId('proven'),
23
- this.getCheckpointId('checkpointed')
24
+ this.getCheckpointId('checkpointed'),
25
+ this.getCheckpointId('proposedCheckpoint')
24
26
  ]);
25
27
  return {
26
28
  proposed: proposedBlockId,
@@ -35,6 +37,10 @@ import { GENESIS_CHECKPOINT_HEADER_HASH } from '../l2_block_source.js';
35
37
  checkpointed: {
36
38
  block: checkpointedBlockId,
37
39
  checkpoint: checkpointedCheckpointId
40
+ },
41
+ proposedCheckpoint: {
42
+ block: proposedCheckpointBlockId,
43
+ checkpoint: proposedCheckpointId
38
44
  }
39
45
  };
40
46
  });
@@ -124,6 +130,12 @@ import { GENESIS_CHECKPOINT_HEADER_HASH } from '../l2_block_source.js';
124
130
  await this.runInTransaction(async ()=>{
125
131
  await this.saveTag('checkpointed', event.block);
126
132
  await this.saveCheckpoint(event.checkpoint);
133
+ // proposedCheckpoint is always >= checkpointed. If checkpointed has caught up
134
+ // or surpassed it, advance proposedCheckpoint to match.
135
+ const proposedCheckpointBlock = await this.getBlockId('proposedCheckpoint');
136
+ if (event.block.number > proposedCheckpointBlock.number) {
137
+ await this.saveTag('proposedCheckpoint', event.block);
138
+ }
127
139
  });
128
140
  }
129
141
  async handleChainPruned(event) {
@@ -133,6 +145,7 @@ import { GENESIS_CHECKPOINT_HEADER_HASH } from '../l2_block_source.js';
133
145
  await this.runInTransaction(async ()=>{
134
146
  await this.saveTag('proposed', event.block);
135
147
  await this.saveTag('checkpointed', event.block);
148
+ await this.saveTag('proposedCheckpoint', event.block);
136
149
  const storeProven = await this.getBlockId('proven');
137
150
  if (storeProven.number > event.block.number) {
138
151
  await this.saveTag('proven', event.block);
@@ -1,3 +1,3 @@
1
1
  import type { L2TipsStore } from '../l2_block_stream/index.js';
2
2
  export declare function testL2TipsStore(makeTipsStore: () => Promise<L2TipsStore>): void;
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdGlwc19zdG9yZV90ZXN0X3N1aXRlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svdGVzdC9sMl90aXBzX3N0b3JlX3Rlc3Rfc3VpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFL0Qsd0JBQWdCLGVBQWUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxPQUFPLENBQUMsV0FBVyxDQUFDLFFBdWdCeEUifQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdGlwc19zdG9yZV90ZXN0X3N1aXRlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2svdGVzdC9sMl90aXBzX3N0b3JlX3Rlc3Rfc3VpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFL0Qsd0JBQWdCLGVBQWUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxPQUFPLENBQUMsV0FBVyxDQUFDLFFBOGdCeEUifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"l2_tips_store_test_suite.d.ts","sourceRoot":"","sources":["../../../src/block/test/l2_tips_store_test_suite.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,QAugBxE"}
1
+ {"version":3,"file":"l2_tips_store_test_suite.d.ts","sourceRoot":"","sources":["../../../src/block/test/l2_tips_store_test_suite.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,QA8gBxE"}