@aztec/stdlib 0.0.1-commit.f2ce05ee → 0.0.1-commit.f5a9928

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 (1160) hide show
  1. package/dest/abi/abi.d.ts +149 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  9. package/dest/abi/contract_artifact.d.ts +14 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +57 -15
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +7 -25
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_selector.d.ts +3 -6
  26. package/dest/abi/function_selector.d.ts.map +1 -1
  27. package/dest/abi/function_selector.js +2 -4
  28. package/dest/abi/function_signature_decoder.d.ts +43 -0
  29. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  30. package/dest/abi/function_signature_decoder.js +66 -0
  31. package/dest/abi/index.d.ts +2 -1
  32. package/dest/abi/index.d.ts.map +1 -1
  33. package/dest/abi/index.js +1 -0
  34. package/dest/abi/note_selector.d.ts +4 -7
  35. package/dest/abi/note_selector.d.ts.map +1 -1
  36. package/dest/abi/note_selector.js +1 -3
  37. package/dest/abi/selector.d.ts +2 -2
  38. package/dest/abi/selector.d.ts.map +1 -1
  39. package/dest/abi/selector.js +1 -1
  40. package/dest/abi/utils.d.ts +14 -1
  41. package/dest/abi/utils.d.ts.map +1 -1
  42. package/dest/abi/utils.js +16 -1
  43. package/dest/auth_witness/auth_witness.d.ts +2 -2
  44. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  45. package/dest/auth_witness/auth_witness.js +3 -3
  46. package/dest/avm/avm.d.ts +1756 -10463
  47. package/dest/avm/avm.d.ts.map +1 -1
  48. package/dest/avm/avm.js +7 -4
  49. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  50. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  51. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  52. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  53. package/dest/avm/avm_proving_request.d.ts +653 -5446
  54. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  55. package/dest/avm/message_pack.js +12 -3
  56. package/dest/avm/public_data_write.d.ts +6 -12
  57. package/dest/avm/public_data_write.d.ts.map +1 -1
  58. package/dest/avm/revert_code.d.ts +6 -7
  59. package/dest/avm/revert_code.d.ts.map +1 -1
  60. package/dest/avm/revert_code.js +13 -21
  61. package/dest/aztec-address/index.d.ts +42 -12
  62. package/dest/aztec-address/index.d.ts.map +1 -1
  63. package/dest/aztec-address/index.js +40 -13
  64. package/dest/block/attestation_info.d.ts +3 -2
  65. package/dest/block/attestation_info.d.ts.map +1 -1
  66. package/dest/block/attestation_info.js +10 -5
  67. package/dest/block/block_data.d.ts +27 -0
  68. package/dest/block/block_data.d.ts.map +1 -0
  69. package/dest/block/block_data.js +12 -0
  70. package/dest/block/block_hash.d.ts +11 -10
  71. package/dest/block/block_hash.d.ts.map +1 -1
  72. package/dest/block/block_hash.js +10 -9
  73. package/dest/block/block_parameter.d.ts +37 -4
  74. package/dest/block/block_parameter.d.ts.map +1 -1
  75. package/dest/block/block_parameter.js +53 -2
  76. package/dest/block/in_block.d.ts +5 -24
  77. package/dest/block/in_block.d.ts.map +1 -1
  78. package/dest/block/index.d.ts +2 -2
  79. package/dest/block/index.d.ts.map +1 -1
  80. package/dest/block/index.js +1 -1
  81. package/dest/block/l2_block.d.ts +21 -41
  82. package/dest/block/l2_block.d.ts.map +1 -1
  83. package/dest/block/l2_block.js +12 -2
  84. package/dest/block/l2_block_info.d.ts +10 -29
  85. package/dest/block/l2_block_info.d.ts.map +1 -1
  86. package/dest/block/l2_block_info.js +6 -5
  87. package/dest/block/l2_block_source.d.ts +235 -337
  88. package/dest/block/l2_block_source.d.ts.map +1 -1
  89. package/dest/block/l2_block_source.js +85 -1
  90. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +30 -0
  91. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  92. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +61 -0
  93. package/dest/block/l2_block_stream/index.d.ts +2 -1
  94. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  95. package/dest/block/l2_block_stream/index.js +1 -0
  96. package/dest/block/l2_block_stream/interfaces.d.ts +85 -10
  97. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  98. package/dest/block/l2_block_stream/interfaces.js +25 -1
  99. package/dest/block/l2_block_stream/l2_block_stream.d.ts +24 -15
  100. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  101. package/dest/block/l2_block_stream/l2_block_stream.js +185 -124
  102. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  103. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  104. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  105. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  106. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  107. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  108. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  109. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  110. package/dest/block/proposal/attestations_and_signers.js +73 -25
  111. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  112. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  113. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  114. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  115. package/dest/block/test/l2_tips_store_test_suite.js +301 -36
  116. package/dest/block/validate_block_result.d.ts +16 -1
  117. package/dest/block/validate_block_result.d.ts.map +1 -1
  118. package/dest/block/validate_block_result.js +18 -3
  119. package/dest/checkpoint/checkpoint.d.ts +48 -99
  120. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  121. package/dest/checkpoint/checkpoint.js +42 -18
  122. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  123. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  124. package/dest/checkpoint/checkpoint_data.js +38 -0
  125. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  126. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  127. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  128. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  129. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  130. package/dest/checkpoint/digest.d.ts +18 -0
  131. package/dest/checkpoint/digest.d.ts.map +1 -0
  132. package/dest/checkpoint/digest.js +12 -0
  133. package/dest/checkpoint/index.d.ts +7 -1
  134. package/dest/checkpoint/index.d.ts.map +1 -1
  135. package/dest/checkpoint/index.js +6 -0
  136. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  137. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  138. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  139. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  140. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  141. package/dest/checkpoint/published_checkpoint.js +1 -2
  142. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  143. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  144. package/dest/checkpoint/simulation_overrides.js +98 -0
  145. package/dest/checkpoint/validate.d.ts +52 -0
  146. package/dest/checkpoint/validate.d.ts.map +1 -0
  147. package/dest/checkpoint/validate.js +132 -0
  148. package/dest/config/chain-config.d.ts +4 -9
  149. package/dest/config/chain-config.d.ts.map +1 -1
  150. package/dest/config/chain-config.js +13 -12
  151. package/dest/config/index.d.ts +2 -1
  152. package/dest/config/index.d.ts.map +1 -1
  153. package/dest/config/index.js +1 -0
  154. package/dest/config/network-consensus-config.d.ts +72 -0
  155. package/dest/config/network-consensus-config.d.ts.map +1 -0
  156. package/dest/config/network-consensus-config.js +227 -0
  157. package/dest/config/node-rpc-config.d.ts +13 -1
  158. package/dest/config/node-rpc-config.d.ts.map +1 -1
  159. package/dest/config/node-rpc-config.js +34 -1
  160. package/dest/config/sequencer-config.d.ts +9 -3
  161. package/dest/config/sequencer-config.d.ts.map +1 -1
  162. package/dest/config/sequencer-config.js +47 -2
  163. package/dest/contract/complete_address.d.ts +3 -2
  164. package/dest/contract/complete_address.d.ts.map +1 -1
  165. package/dest/contract/complete_address.js +6 -2
  166. package/dest/contract/contract_address.d.ts +10 -9
  167. package/dest/contract/contract_address.d.ts.map +1 -1
  168. package/dest/contract/contract_address.js +9 -8
  169. package/dest/contract/contract_class.d.ts +2 -3
  170. package/dest/contract/contract_class.d.ts.map +1 -1
  171. package/dest/contract/contract_class_id.d.ts +3 -3
  172. package/dest/contract/contract_class_id.d.ts.map +1 -1
  173. package/dest/contract/contract_class_id.js +7 -6
  174. package/dest/contract/contract_deployment_data.d.ts +15 -61
  175. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  176. package/dest/contract/contract_instance.d.ts +19 -3
  177. package/dest/contract/contract_instance.d.ts.map +1 -1
  178. package/dest/contract/contract_instance.js +55 -3
  179. package/dest/contract/index.d.ts +1 -3
  180. package/dest/contract/index.d.ts.map +1 -1
  181. package/dest/contract/index.js +0 -2
  182. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  183. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  184. package/dest/contract/interfaces/contract_class.js +1 -28
  185. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  186. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  187. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  188. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  189. package/dest/contract/interfaces/contract_instance.js +11 -4
  190. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  191. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  192. package/dest/contract/interfaces/node-info.d.ts +13 -1
  193. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  194. package/dest/contract/interfaces/node-info.js +8 -1
  195. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  196. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  197. package/dest/contract/partial_address.d.ts +9 -3
  198. package/dest/contract/partial_address.d.ts.map +1 -1
  199. package/dest/contract/partial_address.js +8 -2
  200. package/dest/contract/private_function.d.ts +1 -1
  201. package/dest/contract/private_function.d.ts.map +1 -1
  202. package/dest/contract/private_function.js +4 -6
  203. package/dest/database-version/database_version.d.ts +5 -11
  204. package/dest/database-version/database_version.d.ts.map +1 -1
  205. package/dest/database-version/version_manager.d.ts +22 -4
  206. package/dest/database-version/version_manager.d.ts.map +1 -1
  207. package/dest/database-version/version_manager.js +87 -6
  208. package/dest/deserialization/index.d.ts +35 -3
  209. package/dest/deserialization/index.d.ts.map +1 -1
  210. package/dest/deserialization/index.js +32 -1
  211. package/dest/epoch-helpers/index.d.ts +12 -20
  212. package/dest/epoch-helpers/index.d.ts.map +1 -1
  213. package/dest/epoch-helpers/index.js +16 -2
  214. package/dest/file-store/factory.d.ts +4 -3
  215. package/dest/file-store/factory.d.ts.map +1 -1
  216. package/dest/file-store/factory.js +9 -2
  217. package/dest/file-store/http.d.ts +9 -2
  218. package/dest/file-store/http.d.ts.map +1 -1
  219. package/dest/file-store/http.js +20 -9
  220. package/dest/file-store/index.d.ts +3 -1
  221. package/dest/file-store/index.d.ts.map +1 -1
  222. package/dest/file-store/index.js +1 -0
  223. package/dest/file-store/local.d.ts +3 -3
  224. package/dest/file-store/local.d.ts.map +1 -1
  225. package/dest/file-store/local.js +13 -4
  226. package/dest/file-store/memory.d.ts +24 -0
  227. package/dest/file-store/memory.d.ts.map +1 -0
  228. package/dest/file-store/memory.js +80 -0
  229. package/dest/file-store/s3.d.ts +1 -1
  230. package/dest/file-store/s3.d.ts.map +1 -1
  231. package/dest/file-store/s3.js +11 -3
  232. package/dest/gas/fee_math.d.ts +49 -0
  233. package/dest/gas/fee_math.d.ts.map +1 -0
  234. package/dest/gas/fee_math.js +80 -0
  235. package/dest/gas/gas.d.ts +9 -14
  236. package/dest/gas/gas.d.ts.map +1 -1
  237. package/dest/gas/gas.js +6 -3
  238. package/dest/gas/gas_fees.d.ts +13 -14
  239. package/dest/gas/gas_fees.d.ts.map +1 -1
  240. package/dest/gas/gas_fees.js +20 -4
  241. package/dest/gas/gas_settings.d.ts +60 -86
  242. package/dest/gas/gas_settings.d.ts.map +1 -1
  243. package/dest/gas/gas_settings.js +49 -9
  244. package/dest/gas/index.d.ts +3 -1
  245. package/dest/gas/index.d.ts.map +1 -1
  246. package/dest/gas/index.js +2 -0
  247. package/dest/gas/tx_gas_limits.d.ts +72 -0
  248. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  249. package/dest/gas/tx_gas_limits.js +85 -0
  250. package/dest/ha-signing/config.d.ts +86 -0
  251. package/dest/ha-signing/config.d.ts.map +1 -0
  252. package/dest/ha-signing/config.js +94 -0
  253. package/dest/ha-signing/index.d.ts +4 -0
  254. package/dest/ha-signing/index.d.ts.map +1 -0
  255. package/dest/ha-signing/index.js +3 -0
  256. package/dest/ha-signing/local_config.d.ts +40 -0
  257. package/dest/ha-signing/local_config.d.ts.map +1 -0
  258. package/dest/ha-signing/local_config.js +30 -0
  259. package/dest/ha-signing/types.d.ts +90 -0
  260. package/dest/ha-signing/types.d.ts.map +1 -0
  261. package/dest/ha-signing/types.js +39 -0
  262. package/dest/hash/hash.d.ts +35 -2
  263. package/dest/hash/hash.d.ts.map +1 -1
  264. package/dest/hash/hash.js +77 -17
  265. package/dest/hash/map_slot.js +2 -2
  266. package/dest/interfaces/allowed_element.d.ts +17 -35
  267. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  268. package/dest/interfaces/allowed_element.js +8 -8
  269. package/dest/interfaces/api_limit.d.ts +7 -2
  270. package/dest/interfaces/api_limit.d.ts.map +1 -1
  271. package/dest/interfaces/api_limit.js +4 -1
  272. package/dest/interfaces/archiver.d.ts +27 -32
  273. package/dest/interfaces/archiver.d.ts.map +1 -1
  274. package/dest/interfaces/archiver.js +217 -65
  275. package/dest/interfaces/aztec-node-admin.d.ts +116 -265
  276. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  277. package/dest/interfaces/aztec-node-admin.js +67 -18
  278. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  279. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  280. package/dest/interfaces/aztec-node-debug.js +49 -0
  281. package/dest/interfaces/aztec-node.d.ts +168 -117
  282. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  283. package/dest/interfaces/aztec-node.js +359 -78
  284. package/dest/interfaces/block-builder.d.ts +49 -13
  285. package/dest/interfaces/block-builder.d.ts.map +1 -1
  286. package/dest/interfaces/block-builder.js +13 -6
  287. package/dest/interfaces/block_response.d.ts +90 -0
  288. package/dest/interfaces/block_response.d.ts.map +1 -0
  289. package/dest/interfaces/block_response.js +30 -0
  290. package/dest/interfaces/chain_tips.d.ts +11 -0
  291. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  292. package/dest/interfaces/chain_tips.js +6 -0
  293. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  294. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  295. package/dest/interfaces/checkpoint_parameter.js +18 -0
  296. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  297. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  298. package/dest/interfaces/checkpoint_response.js +26 -0
  299. package/dest/interfaces/client.d.ts +9 -2
  300. package/dest/interfaces/client.d.ts.map +1 -1
  301. package/dest/interfaces/client.js +7 -1
  302. package/dest/interfaces/configs.d.ts +110 -121
  303. package/dest/interfaces/configs.d.ts.map +1 -1
  304. package/dest/interfaces/configs.js +25 -4
  305. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  306. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  307. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  308. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  309. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  310. package/dest/interfaces/l1_publish_info.js +26 -0
  311. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  312. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  313. package/dest/interfaces/l2_logs_source.js +5 -0
  314. package/dest/interfaces/merkle_tree_operations.d.ts +13 -22
  315. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  316. package/dest/interfaces/p2p-bootstrap.js +8 -2
  317. package/dest/interfaces/p2p.d.ts +65 -14
  318. package/dest/interfaces/p2p.d.ts.map +1 -1
  319. package/dest/interfaces/p2p.js +49 -6
  320. package/dest/interfaces/private_kernel_prover.d.ts +69 -11
  321. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  322. package/dest/interfaces/prover-agent.d.ts +5 -23
  323. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  324. package/dest/interfaces/prover-agent.js +4 -1
  325. package/dest/interfaces/prover-client.d.ts +10 -27
  326. package/dest/interfaces/prover-client.d.ts.map +1 -1
  327. package/dest/interfaces/prover-client.js +7 -4
  328. package/dest/interfaces/prover-node.d.ts +12 -8
  329. package/dest/interfaces/prover-node.d.ts.map +1 -1
  330. package/dest/interfaces/prover-node.js +37 -16
  331. package/dest/interfaces/proving-job-source.js +24 -4
  332. package/dest/interfaces/proving-job.d.ts +757 -5795
  333. package/dest/interfaces/proving-job.d.ts.map +1 -1
  334. package/dest/interfaces/proving-job.js +14 -5
  335. package/dest/interfaces/public_storage_override.d.ts +22 -0
  336. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  337. package/dest/interfaces/public_storage_override.js +7 -0
  338. package/dest/interfaces/server.d.ts +6 -2
  339. package/dest/interfaces/server.d.ts.map +1 -1
  340. package/dest/interfaces/server.js +5 -1
  341. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  342. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  343. package/dest/interfaces/slasher.d.ts +26 -62
  344. package/dest/interfaces/slasher.d.ts.map +1 -1
  345. package/dest/interfaces/slasher.js +9 -4
  346. package/dest/interfaces/tx_provider.d.ts +10 -1
  347. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  348. package/dest/interfaces/validator.d.ts +91 -207
  349. package/dest/interfaces/validator.d.ts.map +1 -1
  350. package/dest/interfaces/validator.js +18 -6
  351. package/dest/interfaces/world_state.d.ts +19 -5
  352. package/dest/interfaces/world_state.d.ts.map +1 -1
  353. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  354. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  355. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  356. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  357. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  358. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  359. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  360. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  361. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  362. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  363. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  364. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  365. package/dest/kernel/hints/index.d.ts +2 -2
  366. package/dest/kernel/hints/index.js +2 -2
  367. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  368. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  369. package/dest/kernel/hints/key_validation_request.js +20 -18
  370. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  371. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  372. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  373. package/dest/kernel/hints/read_request.js +1 -1
  374. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  375. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  376. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  377. package/dest/kernel/index.d.ts +6 -2
  378. package/dest/kernel/index.d.ts.map +1 -1
  379. package/dest/kernel/index.js +5 -1
  380. package/dest/kernel/log_hash.d.ts +6 -2
  381. package/dest/kernel/log_hash.d.ts.map +1 -1
  382. package/dest/kernel/log_hash.js +23 -11
  383. package/dest/kernel/note_hash.js +1 -1
  384. package/dest/kernel/nullifier.js +1 -1
  385. package/dest/kernel/private_circuit_public_inputs.d.ts +21 -11
  386. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  387. package/dest/kernel/private_circuit_public_inputs.js +26 -19
  388. package/dest/kernel/private_context_inputs.d.ts +4 -3
  389. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  390. package/dest/kernel/private_context_inputs.js +7 -3
  391. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +10 -4
  392. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  393. package/dest/kernel/private_kernel_circuit_public_inputs.js +11 -4
  394. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  395. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  396. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  397. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  398. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  399. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  400. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  401. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  402. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  403. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  404. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  405. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  406. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  407. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  408. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  409. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  410. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  411. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  412. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  413. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  414. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  415. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  416. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  417. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  418. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  419. package/dest/kernel/private_log_data.d.ts +1 -1
  420. package/dest/kernel/private_log_data.d.ts.map +1 -1
  421. package/dest/kernel/private_log_data.js +1 -1
  422. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  423. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  424. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  425. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  426. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  427. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  428. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  429. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  430. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  431. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  432. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  433. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  434. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  435. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  436. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  437. package/dest/kernel/private_validation_requests.d.ts +3 -3
  438. package/dest/kernel/private_validation_requests.js +9 -9
  439. package/dest/kernel/public_call_request.d.ts +15 -30
  440. package/dest/kernel/public_call_request.d.ts.map +1 -1
  441. package/dest/kernel/public_call_request.js +16 -7
  442. package/dest/keys/derivation.d.ts +45 -6
  443. package/dest/keys/derivation.d.ts.map +1 -1
  444. package/dest/keys/derivation.js +59 -26
  445. package/dest/keys/key_types.d.ts +3 -3
  446. package/dest/keys/key_types.d.ts.map +1 -1
  447. package/dest/keys/public_key.d.ts +22 -3
  448. package/dest/keys/public_key.d.ts.map +1 -1
  449. package/dest/keys/public_key.js +20 -1
  450. package/dest/keys/public_keys.d.ts +55 -82
  451. package/dest/keys/public_keys.d.ts.map +1 -1
  452. package/dest/keys/public_keys.js +102 -74
  453. package/dest/keys/utils.js +5 -5
  454. package/dest/kv-store/config.d.ts +14 -0
  455. package/dest/kv-store/config.d.ts.map +1 -0
  456. package/dest/kv-store/config.js +21 -0
  457. package/dest/kv-store/index.d.ts +2 -0
  458. package/dest/kv-store/index.d.ts.map +1 -0
  459. package/dest/kv-store/index.js +1 -0
  460. package/dest/l1-contracts/index.d.ts +2 -2
  461. package/dest/l1-contracts/index.d.ts.map +1 -1
  462. package/dest/l1-contracts/index.js +1 -1
  463. package/dest/logs/app_tagging_secret.d.ts +69 -0
  464. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  465. package/dest/logs/app_tagging_secret.js +116 -0
  466. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  467. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  468. package/dest/logs/app_tagging_secret_kind.js +17 -0
  469. package/dest/logs/contract_class_log.d.ts +16 -35
  470. package/dest/logs/contract_class_log.d.ts.map +1 -1
  471. package/dest/logs/contract_class_log.js +11 -13
  472. package/dest/logs/debug_log_store.d.ts +30 -0
  473. package/dest/logs/debug_log_store.d.ts.map +1 -0
  474. package/dest/logs/debug_log_store.js +30 -0
  475. package/dest/logs/index.d.ts +9 -9
  476. package/dest/logs/index.d.ts.map +1 -1
  477. package/dest/logs/index.js +8 -8
  478. package/dest/logs/log_cursor.d.ts +51 -0
  479. package/dest/logs/log_cursor.d.ts.map +1 -0
  480. package/dest/logs/log_cursor.js +82 -0
  481. package/dest/logs/log_result.d.ts +54 -0
  482. package/dest/logs/log_result.d.ts.map +1 -0
  483. package/dest/logs/log_result.js +56 -0
  484. package/dest/logs/logs_query.d.ts +82 -0
  485. package/dest/logs/logs_query.d.ts.map +1 -0
  486. package/dest/logs/logs_query.js +50 -0
  487. package/dest/logs/pre_tag.d.ts +14 -22
  488. package/dest/logs/pre_tag.d.ts.map +1 -1
  489. package/dest/logs/pre_tag.js +2 -2
  490. package/dest/logs/private_log.d.ts +8 -13
  491. package/dest/logs/private_log.d.ts.map +1 -1
  492. package/dest/logs/private_log.js +6 -3
  493. package/dest/logs/public_log.d.ts +4 -3
  494. package/dest/logs/public_log.d.ts.map +1 -1
  495. package/dest/logs/public_log.js +2 -1
  496. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  497. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  498. package/dest/logs/query_all_logs_by_tags.js +64 -0
  499. package/dest/logs/shared_secret_derivation.d.ts +33 -9
  500. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  501. package/dest/logs/shared_secret_derivation.js +49 -10
  502. package/dest/logs/siloed_tag.d.ts +12 -9
  503. package/dest/logs/siloed_tag.d.ts.map +1 -1
  504. package/dest/logs/siloed_tag.js +18 -7
  505. package/dest/logs/tag.d.ts +5 -6
  506. package/dest/logs/tag.d.ts.map +1 -1
  507. package/dest/logs/tag.js +5 -1
  508. package/dest/logs/tagging_index_range.d.ts +22 -0
  509. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  510. package/dest/logs/tagging_index_range.js +8 -0
  511. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  512. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  513. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  514. package/dest/messaging/index.d.ts +2 -1
  515. package/dest/messaging/index.d.ts.map +1 -1
  516. package/dest/messaging/index.js +1 -0
  517. package/dest/messaging/l1_to_l2_message.d.ts +25 -3
  518. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  519. package/dest/messaging/l1_to_l2_message.js +38 -15
  520. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  521. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  522. package/dest/messaging/l2_to_l1_membership.d.ts +70 -7
  523. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  524. package/dest/messaging/l2_to_l1_membership.js +130 -27
  525. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  526. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  527. package/dest/messaging/l2_to_l1_message.js +21 -12
  528. package/dest/noir/index.d.ts +7 -5
  529. package/dest/noir/index.d.ts.map +1 -1
  530. package/dest/note/index.d.ts +1 -2
  531. package/dest/note/index.d.ts.map +1 -1
  532. package/dest/note/index.js +0 -1
  533. package/dest/note/note.d.ts +2 -2
  534. package/dest/note/note.d.ts.map +1 -1
  535. package/dest/note/note_dao.d.ts +1 -1
  536. package/dest/note/note_dao.d.ts.map +1 -1
  537. package/dest/note/note_dao.js +1 -4
  538. package/dest/p2p/attestation_utils.d.ts +11 -1
  539. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  540. package/dest/p2p/attestation_utils.js +53 -1
  541. package/dest/p2p/block_proposal.d.ts +32 -15
  542. package/dest/p2p/block_proposal.d.ts.map +1 -1
  543. package/dest/p2p/block_proposal.js +58 -42
  544. package/dest/p2p/checkpoint_attestation.d.ts +25 -9
  545. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  546. package/dest/p2p/checkpoint_attestation.js +33 -24
  547. package/dest/p2p/checkpoint_proposal.d.ts +45 -25
  548. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  549. package/dest/p2p/checkpoint_proposal.js +68 -65
  550. package/dest/p2p/client_type.d.ts +2 -5
  551. package/dest/p2p/client_type.d.ts.map +1 -1
  552. package/dest/p2p/client_type.js +0 -7
  553. package/dest/p2p/consensus_payload.d.ts +33 -17
  554. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  555. package/dest/p2p/consensus_payload.js +47 -21
  556. package/dest/p2p/constants.d.ts +3 -1
  557. package/dest/p2p/constants.d.ts.map +1 -1
  558. package/dest/p2p/constants.js +1 -0
  559. package/dest/p2p/gossipable.d.ts +4 -4
  560. package/dest/p2p/gossipable.d.ts.map +1 -1
  561. package/dest/p2p/index.d.ts +2 -2
  562. package/dest/p2p/index.d.ts.map +1 -1
  563. package/dest/p2p/index.js +1 -1
  564. package/dest/p2p/peer_error.d.ts +3 -1
  565. package/dest/p2p/peer_error.d.ts.map +1 -1
  566. package/dest/p2p/peer_error.js +5 -0
  567. package/dest/p2p/signature_utils.d.ts +35 -17
  568. package/dest/p2p/signature_utils.d.ts.map +1 -1
  569. package/dest/p2p/signature_utils.js +125 -20
  570. package/dest/p2p/signed_txs.d.ts +15 -13
  571. package/dest/p2p/signed_txs.d.ts.map +1 -1
  572. package/dest/p2p/signed_txs.js +26 -24
  573. package/dest/p2p/topic_type.d.ts +3 -4
  574. package/dest/p2p/topic_type.d.ts.map +1 -1
  575. package/dest/p2p/topic_type.js +7 -24
  576. package/dest/p2p/validated_proposal.d.ts +35 -0
  577. package/dest/p2p/validated_proposal.d.ts.map +1 -0
  578. package/dest/p2p/validated_proposal.js +17 -0
  579. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  580. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  581. package/dest/parity/parity_base_private_inputs.js +7 -5
  582. package/dest/parity/parity_public_inputs.d.ts +8 -4
  583. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  584. package/dest/parity/parity_public_inputs.js +6 -3
  585. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  586. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  587. package/dest/proofs/chonk_proof.d.ts +57 -7
  588. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  589. package/dest/proofs/chonk_proof.js +112 -15
  590. package/dest/proofs/recursive_proof.d.ts +2 -2
  591. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  592. package/dest/rollup/avm_proof_data.d.ts +3 -3
  593. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  594. package/dest/rollup/block_headers_hash.d.ts +1 -1
  595. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  596. package/dest/rollup/block_headers_hash.js +8 -2
  597. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  598. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  599. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  600. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  601. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  602. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  603. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  604. package/dest/rollup/checkpoint_header.d.ts +10 -5
  605. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  606. package/dest/rollup/checkpoint_header.js +22 -12
  607. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  608. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  609. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +9 -2
  610. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  611. package/dest/rollup/checkpoint_rollup_public_inputs.js +9 -0
  612. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  613. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  614. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  615. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  616. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  617. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  618. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  619. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  620. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  621. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  622. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  623. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  624. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  625. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  626. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  627. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  628. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  629. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  630. package/dest/schemas/schemas.d.ts +32 -78
  631. package/dest/schemas/schemas.d.ts.map +1 -1
  632. package/dest/schemas/schemas.js +2 -2
  633. package/dest/slashing/helpers.d.ts +2 -2
  634. package/dest/slashing/helpers.d.ts.map +1 -1
  635. package/dest/slashing/helpers.js +13 -7
  636. package/dest/slashing/index.d.ts +2 -3
  637. package/dest/slashing/index.d.ts.map +1 -1
  638. package/dest/slashing/index.js +1 -2
  639. package/dest/slashing/serialization.d.ts +2 -6
  640. package/dest/slashing/serialization.d.ts.map +1 -1
  641. package/dest/slashing/serialization.js +0 -60
  642. package/dest/slashing/types.d.ts +20 -112
  643. package/dest/slashing/types.d.ts.map +1 -1
  644. package/dest/slashing/types.js +22 -24
  645. package/dest/slashing/{tally.d.ts → votes.d.ts} +7 -2
  646. package/dest/slashing/votes.d.ts.map +1 -0
  647. package/dest/slashing/{tally.js → votes.js} +30 -2
  648. package/dest/snapshots/types.d.ts +15 -78
  649. package/dest/snapshots/types.d.ts.map +1 -1
  650. package/dest/stats/stats.d.ts +2 -2
  651. package/dest/stats/stats.d.ts.map +1 -1
  652. package/dest/tests/factories.d.ts +25 -30
  653. package/dest/tests/factories.d.ts.map +1 -1
  654. package/dest/tests/factories.js +91 -88
  655. package/dest/tests/mocks.d.ts +15 -7
  656. package/dest/tests/mocks.d.ts.map +1 -1
  657. package/dest/tests/mocks.js +69 -70
  658. package/dest/timetable/budgets.d.ts +57 -0
  659. package/dest/timetable/budgets.d.ts.map +1 -0
  660. package/dest/timetable/budgets.js +56 -0
  661. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  662. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  663. package/dest/timetable/build_proposer_timetable.js +17 -0
  664. package/dest/timetable/consensus_timetable.d.ts +70 -0
  665. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  666. package/dest/timetable/consensus_timetable.js +89 -0
  667. package/dest/timetable/index.d.ts +5 -37
  668. package/dest/timetable/index.d.ts.map +1 -1
  669. package/dest/timetable/index.js +4 -39
  670. package/dest/timetable/proposer_timetable.d.ts +106 -0
  671. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  672. package/dest/timetable/proposer_timetable.js +132 -0
  673. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  674. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  675. package/dest/trees/append_only_tree_snapshot.js +6 -3
  676. package/dest/trees/nullifier_leaf.d.ts +19 -42
  677. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  678. package/dest/trees/nullifier_leaf.js +3 -0
  679. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  680. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  681. package/dest/trees/nullifier_membership_witness.js +0 -21
  682. package/dest/trees/public_data_leaf.d.ts +22 -53
  683. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  684. package/dest/trees/public_data_leaf.js +7 -6
  685. package/dest/trees/public_data_witness.d.ts +19 -71
  686. package/dest/trees/public_data_witness.d.ts.map +1 -1
  687. package/dest/trees/public_data_witness.js +0 -27
  688. package/dest/tx/block_header.d.ts +7 -4
  689. package/dest/tx/block_header.d.ts.map +1 -1
  690. package/dest/tx/block_header.js +13 -6
  691. package/dest/tx/call_context.d.ts +4 -14
  692. package/dest/tx/call_context.d.ts.map +1 -1
  693. package/dest/tx/capsule.d.ts +7 -3
  694. package/dest/tx/capsule.d.ts.map +1 -1
  695. package/dest/tx/capsule.js +9 -3
  696. package/dest/tx/execution_payload.d.ts +1 -1
  697. package/dest/tx/execution_payload.d.ts.map +1 -1
  698. package/dest/tx/execution_payload.js +1 -1
  699. package/dest/tx/fee_provider.d.ts +10 -0
  700. package/dest/tx/fee_provider.d.ts.map +1 -0
  701. package/dest/tx/fee_provider.js +1 -0
  702. package/dest/tx/function_data.d.ts +4 -10
  703. package/dest/tx/function_data.d.ts.map +1 -1
  704. package/dest/tx/global_variable_builder.d.ts +4 -15
  705. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  706. package/dest/tx/global_variables.d.ts +19 -52
  707. package/dest/tx/global_variables.d.ts.map +1 -1
  708. package/dest/tx/global_variables.js +10 -14
  709. package/dest/tx/hashed_values.d.ts +10 -3
  710. package/dest/tx/hashed_values.d.ts.map +1 -1
  711. package/dest/tx/hashed_values.js +15 -4
  712. package/dest/tx/in_tx.d.ts +5 -17
  713. package/dest/tx/in_tx.d.ts.map +1 -1
  714. package/dest/tx/index.d.ts +2 -1
  715. package/dest/tx/index.d.ts.map +1 -1
  716. package/dest/tx/index.js +1 -0
  717. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  718. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  719. package/dest/tx/indexed_tx_effect.js +9 -6
  720. package/dest/tx/partial_state_reference.d.ts +22 -65
  721. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  722. package/dest/tx/partial_state_reference.js +6 -3
  723. package/dest/tx/private_execution_result.d.ts +11 -21
  724. package/dest/tx/private_execution_result.d.ts.map +1 -1
  725. package/dest/tx/private_execution_result.js +6 -6
  726. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  727. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  728. package/dest/tx/private_tx_constant_data.js +13 -4
  729. package/dest/tx/profiling.d.ts +70 -356
  730. package/dest/tx/profiling.d.ts.map +1 -1
  731. package/dest/tx/profiling.js +19 -9
  732. package/dest/tx/protocol_contracts.d.ts +5 -9
  733. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  734. package/dest/tx/protocol_contracts.js +2 -2
  735. package/dest/tx/proven_tx.d.ts +30 -74
  736. package/dest/tx/proven_tx.d.ts.map +1 -1
  737. package/dest/tx/proven_tx.js +6 -0
  738. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  739. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  740. package/dest/tx/public_call_request_with_calldata.js +6 -3
  741. package/dest/tx/public_simulation_output.d.ts +4 -2
  742. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  743. package/dest/tx/public_simulation_output.js +7 -3
  744. package/dest/tx/simulated_tx.d.ts +77 -1149
  745. package/dest/tx/simulated_tx.d.ts.map +1 -1
  746. package/dest/tx/simulated_tx.js +23 -13
  747. package/dest/tx/state_reference.d.ts +30 -117
  748. package/dest/tx/state_reference.d.ts.map +1 -1
  749. package/dest/tx/state_reference.js +6 -4
  750. package/dest/tx/tree_snapshots.d.ts +27 -84
  751. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  752. package/dest/tx/tree_snapshots.js +6 -4
  753. package/dest/tx/tx.d.ts +34 -17
  754. package/dest/tx/tx.d.ts.map +1 -1
  755. package/dest/tx/tx.js +70 -30
  756. package/dest/tx/tx_constant_data.d.ts +4 -3
  757. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  758. package/dest/tx/tx_constant_data.js +6 -3
  759. package/dest/tx/tx_context.d.ts +32 -131
  760. package/dest/tx/tx_context.d.ts.map +1 -1
  761. package/dest/tx/tx_context.js +6 -6
  762. package/dest/tx/tx_hash.d.ts +6 -4
  763. package/dest/tx/tx_hash.d.ts.map +1 -1
  764. package/dest/tx/tx_hash.js +13 -5
  765. package/dest/tx/tx_receipt.d.ts +151 -51
  766. package/dest/tx/tx_receipt.d.ts.map +1 -1
  767. package/dest/tx/tx_receipt.js +145 -51
  768. package/dest/tx/tx_request.js +2 -2
  769. package/dest/tx/validator/empty_validator.d.ts +2 -2
  770. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  771. package/dest/tx/validator/error_texts.d.ts +11 -3
  772. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  773. package/dest/tx/validator/error_texts.js +12 -2
  774. package/dest/tx/validator/tx_validator.d.ts +6 -28
  775. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  776. package/dest/tx/validator/tx_validator.js +0 -4
  777. package/dest/types/shared.d.ts +4 -12
  778. package/dest/types/shared.d.ts.map +1 -1
  779. package/dest/types/shared.js +6 -12
  780. package/dest/update-checker/dev_version.d.ts +3 -0
  781. package/dest/update-checker/dev_version.d.ts.map +1 -0
  782. package/dest/update-checker/dev_version.js +1 -0
  783. package/dest/update-checker/index.d.ts +4 -2
  784. package/dest/update-checker/index.d.ts.map +1 -1
  785. package/dest/update-checker/index.js +3 -1
  786. package/dest/update-checker/package_version.d.ts +6 -0
  787. package/dest/update-checker/package_version.d.ts.map +1 -0
  788. package/dest/update-checker/package_version.js +13 -0
  789. package/dest/update-checker/version_checker.d.ts +25 -0
  790. package/dest/update-checker/version_checker.d.ts.map +1 -0
  791. package/dest/update-checker/version_checker.js +50 -0
  792. package/dest/validators/errors.d.ts +21 -1
  793. package/dest/validators/errors.d.ts.map +1 -1
  794. package/dest/validators/errors.js +19 -0
  795. package/dest/validators/schemas.d.ts +147 -614
  796. package/dest/validators/schemas.d.ts.map +1 -1
  797. package/dest/validators/schemas.js +9 -6
  798. package/dest/validators/types.d.ts +21 -4
  799. package/dest/validators/types.d.ts.map +1 -1
  800. package/dest/versioning/versioning.d.ts +4 -2
  801. package/dest/versioning/versioning.d.ts.map +1 -1
  802. package/dest/versioning/versioning.js +5 -2
  803. package/dest/vks/verification_key.d.ts +4 -139
  804. package/dest/vks/verification_key.d.ts.map +1 -1
  805. package/dest/vks/verification_key.js +5 -126
  806. package/dest/world-state/genesis_data.d.ts +21 -0
  807. package/dest/world-state/genesis_data.d.ts.map +1 -0
  808. package/dest/world-state/genesis_data.js +8 -0
  809. package/dest/world-state/index.d.ts +2 -1
  810. package/dest/world-state/index.d.ts.map +1 -1
  811. package/dest/world-state/index.js +1 -0
  812. package/dest/world-state/world_state_revision.d.ts +15 -26
  813. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  814. package/dest/world-state/world_state_revision.js +7 -1
  815. package/package.json +15 -13
  816. package/src/abi/abi.ts +86 -21
  817. package/src/abi/authorization_selector.ts +2 -8
  818. package/src/abi/buffer.ts +38 -5
  819. package/src/abi/contract_artifact.ts +63 -15
  820. package/src/abi/decoder.ts +36 -82
  821. package/src/abi/encoder.ts +85 -6
  822. package/src/abi/event_metadata_definition.ts +2 -0
  823. package/src/abi/event_selector.ts +2 -8
  824. package/src/abi/function_selector.ts +4 -13
  825. package/src/abi/function_signature_decoder.ts +77 -0
  826. package/src/abi/index.ts +1 -0
  827. package/src/abi/note_selector.ts +3 -12
  828. package/src/abi/selector.ts +1 -1
  829. package/src/abi/utils.ts +31 -4
  830. package/src/auth_witness/auth_witness.ts +3 -3
  831. package/src/avm/avm.ts +6 -1
  832. package/src/avm/message_pack.ts +12 -3
  833. package/src/avm/revert_code.ts +20 -25
  834. package/src/aztec-address/index.ts +50 -17
  835. package/src/block/attestation_info.ts +16 -11
  836. package/src/block/block_data.ts +25 -0
  837. package/src/block/block_hash.ts +21 -14
  838. package/src/block/block_parameter.ts +72 -4
  839. package/src/block/index.ts +1 -1
  840. package/src/block/l2_block.ts +13 -1
  841. package/src/block/l2_block_info.ts +8 -6
  842. package/src/block/l2_block_source.ts +276 -122
  843. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +81 -0
  844. package/src/block/l2_block_stream/index.ts +1 -0
  845. package/src/block/l2_block_stream/interfaces.ts +101 -9
  846. package/src/block/l2_block_stream/l2_block_stream.ts +268 -158
  847. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  848. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  849. package/src/block/proposal/attestations_and_signers.ts +85 -24
  850. package/src/block/test/l2_tips_store_test_suite.ts +276 -22
  851. package/src/block/validate_block_result.ts +48 -2
  852. package/src/checkpoint/checkpoint.ts +55 -18
  853. package/src/checkpoint/checkpoint_data.ts +91 -0
  854. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  855. package/src/checkpoint/digest.ts +28 -0
  856. package/src/checkpoint/index.ts +6 -0
  857. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  858. package/src/checkpoint/published_checkpoint.ts +3 -1
  859. package/src/checkpoint/simulation_overrides.ts +171 -0
  860. package/src/checkpoint/validate.ts +262 -0
  861. package/src/config/chain-config.ts +13 -16
  862. package/src/config/index.ts +1 -0
  863. package/src/config/network-consensus-config.ts +299 -0
  864. package/src/config/node-rpc-config.ts +51 -1
  865. package/src/config/sequencer-config.ts +82 -5
  866. package/src/contract/complete_address.ts +7 -3
  867. package/src/contract/contract_address.ts +14 -13
  868. package/src/contract/contract_class.ts +3 -3
  869. package/src/contract/contract_class_id.ts +7 -6
  870. package/src/contract/contract_instance.ts +73 -3
  871. package/src/contract/index.ts +0 -2
  872. package/src/contract/interfaces/contract_class.ts +2 -82
  873. package/src/contract/interfaces/contract_data_source.ts +2 -4
  874. package/src/contract/interfaces/contract_instance.ts +32 -10
  875. package/src/contract/interfaces/node-info.ts +14 -0
  876. package/src/contract/partial_address.ts +8 -2
  877. package/src/contract/private_function.ts +5 -3
  878. package/src/database-version/version_manager.ts +113 -6
  879. package/src/deserialization/index.ts +35 -2
  880. package/src/epoch-helpers/index.ts +27 -0
  881. package/src/file-store/factory.ts +20 -4
  882. package/src/file-store/http.ts +29 -10
  883. package/src/file-store/index.ts +2 -0
  884. package/src/file-store/local.ts +15 -5
  885. package/src/file-store/memory.ts +94 -0
  886. package/src/file-store/s3.ts +12 -3
  887. package/src/gas/README.md +318 -0
  888. package/src/gas/fee_math.ts +120 -0
  889. package/src/gas/gas.ts +8 -3
  890. package/src/gas/gas_fees.ts +29 -10
  891. package/src/gas/gas_settings.ts +63 -15
  892. package/src/gas/index.ts +2 -0
  893. package/src/gas/tx_gas_limits.ts +123 -0
  894. package/src/ha-signing/config.ts +170 -0
  895. package/src/ha-signing/index.ts +29 -0
  896. package/src/ha-signing/local_config.ts +65 -0
  897. package/src/ha-signing/types.ts +126 -0
  898. package/src/hash/hash.ts +75 -18
  899. package/src/hash/map_slot.ts +2 -2
  900. package/src/interfaces/allowed_element.ts +29 -9
  901. package/src/interfaces/api_limit.ts +6 -1
  902. package/src/interfaces/archiver.ts +97 -88
  903. package/src/interfaces/aztec-node-admin.ts +58 -20
  904. package/src/interfaces/aztec-node-debug.ts +92 -0
  905. package/src/interfaces/aztec-node.ts +420 -264
  906. package/src/interfaces/block-builder.ts +71 -15
  907. package/src/interfaces/block_response.ts +92 -0
  908. package/src/interfaces/chain_tips.ts +16 -0
  909. package/src/interfaces/checkpoint_parameter.ts +20 -0
  910. package/src/interfaces/checkpoint_response.ts +84 -0
  911. package/src/interfaces/client.ts +8 -1
  912. package/src/interfaces/configs.ts +114 -14
  913. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  914. package/src/interfaces/l1_publish_info.ts +40 -0
  915. package/src/interfaces/l2_logs_source.ts +13 -39
  916. package/src/interfaces/merkle_tree_operations.ts +12 -21
  917. package/src/interfaces/p2p-bootstrap.ts +2 -2
  918. package/src/interfaces/p2p.ts +80 -30
  919. package/src/interfaces/private_kernel_prover.ts +98 -12
  920. package/src/interfaces/prover-agent.ts +1 -1
  921. package/src/interfaces/prover-client.ts +11 -8
  922. package/src/interfaces/prover-node.ts +36 -21
  923. package/src/interfaces/proving-job-source.ts +4 -4
  924. package/src/interfaces/proving-job.ts +18 -6
  925. package/src/interfaces/public_storage_override.ts +26 -0
  926. package/src/interfaces/server.ts +5 -1
  927. package/src/interfaces/server_circuit_prover.ts +2 -2
  928. package/src/interfaces/slasher.ts +19 -10
  929. package/src/interfaces/tx_provider.ts +10 -0
  930. package/src/interfaces/validator.ts +103 -40
  931. package/src/interfaces/world_state.ts +19 -4
  932. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  933. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  934. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  935. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  936. package/src/kernel/hints/index.ts +2 -2
  937. package/src/kernel/hints/key_validation_request.ts +18 -16
  938. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  939. package/src/kernel/hints/read_request.ts +1 -1
  940. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  941. package/src/kernel/index.ts +5 -1
  942. package/src/kernel/log_hash.ts +36 -13
  943. package/src/kernel/note_hash.ts +1 -1
  944. package/src/kernel/nullifier.ts +1 -1
  945. package/src/kernel/private_circuit_public_inputs.ts +26 -15
  946. package/src/kernel/private_context_inputs.ts +10 -3
  947. package/src/kernel/private_kernel_circuit_public_inputs.ts +11 -2
  948. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  949. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  950. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  951. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  952. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  953. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  954. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  955. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  956. package/src/kernel/private_log_data.ts +4 -1
  957. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  958. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  959. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  960. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  961. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  962. package/src/kernel/private_validation_requests.ts +8 -8
  963. package/src/kernel/public_call_request.ts +22 -7
  964. package/src/keys/derivation.ts +83 -26
  965. package/src/keys/key_types.ts +6 -2
  966. package/src/keys/public_key.ts +26 -2
  967. package/src/keys/public_keys.ts +125 -111
  968. package/src/keys/utils.ts +5 -5
  969. package/src/kv-store/config.ts +29 -0
  970. package/src/kv-store/index.ts +1 -0
  971. package/src/l1-contracts/index.ts +1 -1
  972. package/src/logs/app_tagging_secret.ts +160 -0
  973. package/src/logs/app_tagging_secret_kind.ts +21 -0
  974. package/src/logs/contract_class_log.ts +15 -14
  975. package/src/logs/debug_log_store.ts +54 -0
  976. package/src/logs/index.ts +8 -8
  977. package/src/logs/log_cursor.ts +110 -0
  978. package/src/logs/log_result.ts +104 -0
  979. package/src/logs/logs_query.ts +138 -0
  980. package/src/logs/pre_tag.ts +3 -6
  981. package/src/logs/private_log.ts +9 -3
  982. package/src/logs/public_log.ts +4 -2
  983. package/src/logs/query_all_logs_by_tags.ts +98 -0
  984. package/src/logs/shared_secret_derivation.ts +55 -11
  985. package/src/logs/siloed_tag.ts +28 -14
  986. package/src/logs/tag.ts +9 -9
  987. package/src/logs/tagging_index_range.ts +18 -0
  988. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  989. package/src/messaging/index.ts +1 -0
  990. package/src/messaging/l1_to_l2_message.ts +56 -15
  991. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  992. package/src/messaging/l2_to_l1_membership.ts +189 -35
  993. package/src/messaging/l2_to_l1_message.ts +29 -9
  994. package/src/noir/index.ts +6 -3
  995. package/src/note/index.ts +0 -1
  996. package/src/note/note_dao.ts +1 -4
  997. package/src/p2p/attestation_utils.ts +64 -1
  998. package/src/p2p/block_proposal.ts +112 -39
  999. package/src/p2p/checkpoint_attestation.ts +44 -31
  1000. package/src/p2p/checkpoint_proposal.ts +149 -86
  1001. package/src/p2p/client_type.ts +0 -6
  1002. package/src/p2p/consensus_payload.ts +68 -24
  1003. package/src/p2p/constants.ts +3 -0
  1004. package/src/p2p/gossipable.ts +4 -4
  1005. package/src/p2p/index.ts +1 -1
  1006. package/src/p2p/peer_error.ts +7 -0
  1007. package/src/p2p/signature_utils.ts +117 -23
  1008. package/src/p2p/signed_txs.ts +46 -28
  1009. package/src/p2p/topic_type.ts +8 -15
  1010. package/src/p2p/validated_proposal.ts +43 -0
  1011. package/src/parity/parity_base_private_inputs.ts +10 -4
  1012. package/src/parity/parity_public_inputs.ts +9 -2
  1013. package/src/proofs/chonk_proof.ts +132 -12
  1014. package/src/rollup/avm_proof_data.ts +2 -2
  1015. package/src/rollup/block_headers_hash.ts +11 -2
  1016. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  1017. package/src/rollup/checkpoint_header.ts +18 -4
  1018. package/src/rollup/checkpoint_rollup_public_inputs.ts +10 -0
  1019. package/src/schemas/schemas.ts +6 -1
  1020. package/src/slashing/helpers.ts +17 -9
  1021. package/src/slashing/index.ts +1 -2
  1022. package/src/slashing/serialization.ts +1 -81
  1023. package/src/slashing/types.ts +31 -49
  1024. package/src/slashing/{tally.ts → votes.ts} +34 -1
  1025. package/src/stats/stats.ts +6 -2
  1026. package/src/tests/factories.ts +123 -122
  1027. package/src/tests/mocks.ts +111 -84
  1028. package/src/timetable/README.md +609 -0
  1029. package/src/timetable/budgets.ts +87 -0
  1030. package/src/timetable/build_proposer_timetable.ts +42 -0
  1031. package/src/timetable/consensus_timetable.ts +126 -0
  1032. package/src/timetable/index.ts +4 -66
  1033. package/src/timetable/proposer_timetable.ts +190 -0
  1034. package/src/timetable/timetable-example.svg +108 -0
  1035. package/src/trees/append_only_tree_snapshot.ts +8 -3
  1036. package/src/trees/nullifier_leaf.ts +4 -0
  1037. package/src/trees/nullifier_membership_witness.ts +0 -21
  1038. package/src/trees/public_data_leaf.ts +11 -5
  1039. package/src/trees/public_data_witness.ts +0 -31
  1040. package/src/tx/block_header.ts +18 -7
  1041. package/src/tx/capsule.ts +10 -2
  1042. package/src/tx/execution_payload.ts +2 -1
  1043. package/src/tx/fee_provider.ts +10 -0
  1044. package/src/tx/global_variable_builder.ts +3 -20
  1045. package/src/tx/global_variables.ts +15 -23
  1046. package/src/tx/hashed_values.ts +19 -9
  1047. package/src/tx/index.ts +1 -0
  1048. package/src/tx/indexed_tx_effect.ts +18 -6
  1049. package/src/tx/partial_state_reference.ts +8 -3
  1050. package/src/tx/private_execution_result.ts +5 -5
  1051. package/src/tx/private_tx_constant_data.ts +25 -2
  1052. package/src/tx/profiling.ts +18 -9
  1053. package/src/tx/protocol_contracts.ts +2 -2
  1054. package/src/tx/proven_tx.ts +6 -0
  1055. package/src/tx/public_call_request_with_calldata.ts +8 -3
  1056. package/src/tx/public_simulation_output.ts +4 -0
  1057. package/src/tx/simulated_tx.ts +39 -20
  1058. package/src/tx/state_reference.ts +9 -4
  1059. package/src/tx/tree_snapshots.ts +9 -4
  1060. package/src/tx/tx.ts +98 -37
  1061. package/src/tx/tx_constant_data.ts +8 -3
  1062. package/src/tx/tx_context.ts +8 -3
  1063. package/src/tx/tx_hash.ts +20 -5
  1064. package/src/tx/tx_receipt.ts +269 -74
  1065. package/src/tx/tx_request.ts +2 -2
  1066. package/src/tx/validator/empty_validator.ts +1 -1
  1067. package/src/tx/validator/error_texts.ts +15 -2
  1068. package/src/tx/validator/tx_validator.ts +2 -6
  1069. package/src/types/shared.ts +8 -13
  1070. package/src/update-checker/dev_version.ts +2 -0
  1071. package/src/update-checker/index.ts +3 -1
  1072. package/src/update-checker/package_version.ts +17 -0
  1073. package/src/update-checker/version_checker.ts +65 -0
  1074. package/src/validators/errors.ts +26 -0
  1075. package/src/validators/schemas.ts +13 -4
  1076. package/src/validators/types.ts +25 -5
  1077. package/src/versioning/versioning.ts +5 -2
  1078. package/src/vks/verification_key.ts +5 -184
  1079. package/src/world-state/genesis_data.ts +37 -0
  1080. package/src/world-state/index.ts +1 -0
  1081. package/src/world-state/world_state_revision.ts +9 -1
  1082. package/dest/abi/mocked_keys.d.ts +0 -2
  1083. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1084. package/dest/abi/mocked_keys.js +0 -1
  1085. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1086. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1087. package/dest/block/checkpointed_l2_block.js +0 -46
  1088. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1089. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1090. package/dest/contract/private_function_membership_proof.js +0 -124
  1091. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1092. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1093. package/dest/contract/utility_function_membership_proof.js +0 -87
  1094. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1095. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1096. package/dest/interfaces/epoch-prover.js +0 -1
  1097. package/dest/interfaces/get_logs_response.d.ts +0 -97
  1098. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1099. package/dest/interfaces/get_logs_response.js +0 -12
  1100. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1101. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1102. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1103. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1104. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1105. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1106. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1107. package/dest/l1-contracts/slash_factory.js +0 -158
  1108. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1109. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1110. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1111. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1112. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1113. package/dest/logs/extended_contract_class_log.js +0 -67
  1114. package/dest/logs/extended_public_log.d.ts +0 -106
  1115. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1116. package/dest/logs/extended_public_log.js +0 -73
  1117. package/dest/logs/log_filter.d.ts +0 -22
  1118. package/dest/logs/log_filter.d.ts.map +0 -1
  1119. package/dest/logs/log_filter.js +0 -11
  1120. package/dest/logs/log_id.d.ts +0 -85
  1121. package/dest/logs/log_id.d.ts.map +0 -1
  1122. package/dest/logs/log_id.js +0 -94
  1123. package/dest/logs/message_context.d.ts +0 -29
  1124. package/dest/logs/message_context.d.ts.map +0 -1
  1125. package/dest/logs/message_context.js +0 -56
  1126. package/dest/logs/pending_tagged_log.d.ts +0 -14
  1127. package/dest/logs/pending_tagged_log.d.ts.map +0 -1
  1128. package/dest/logs/pending_tagged_log.js +0 -34
  1129. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1130. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1131. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1132. package/dest/note/notes_filter.d.ts +0 -27
  1133. package/dest/note/notes_filter.d.ts.map +0 -1
  1134. package/dest/note/notes_filter.js +0 -11
  1135. package/dest/slashing/empire.d.ts +0 -31
  1136. package/dest/slashing/empire.d.ts.map +0 -1
  1137. package/dest/slashing/empire.js +0 -86
  1138. package/dest/slashing/tally.d.ts.map +0 -1
  1139. package/dest/update-checker/update-checker.d.ts +0 -49
  1140. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1141. package/dest/update-checker/update-checker.js +0 -130
  1142. package/src/abi/mocked_keys.ts +0 -2
  1143. package/src/block/checkpointed_l2_block.ts +0 -70
  1144. package/src/contract/private_function_membership_proof.ts +0 -167
  1145. package/src/contract/utility_function_membership_proof.ts +0 -118
  1146. package/src/interfaces/epoch-prover.ts +0 -72
  1147. package/src/interfaces/get_logs_response.ts +0 -35
  1148. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1149. package/src/l1-contracts/slash_factory.ts +0 -180
  1150. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1151. package/src/logs/extended_contract_class_log.ts +0 -87
  1152. package/src/logs/extended_public_log.ts +0 -94
  1153. package/src/logs/log_filter.ts +0 -31
  1154. package/src/logs/log_id.ts +0 -125
  1155. package/src/logs/message_context.ts +0 -62
  1156. package/src/logs/pending_tagged_log.ts +0 -41
  1157. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1158. package/src/note/notes_filter.ts +0 -38
  1159. package/src/slashing/empire.ts +0 -103
  1160. package/src/update-checker/update-checker.ts +0 -166
@@ -1,37 +1,5 @@
1
- /**
2
- * Timetable constants used for sequencer timing calculations.
3
- * These define the time budgets for various phases of block production.
4
- *
5
- * The sequencer slot is divided into phases:
6
- * 1. Checkpoint initialization (sync + proposer check)
7
- * 2. Block building (execution)
8
- * 3. Checkpoint assembly
9
- * 4. P2P propagation for proposal and attestations (round-trip)
10
- * 5. L1 publishing
11
- */
12
- /** Time budget for checkpoint initialization (sync + proposer check) in seconds */
13
- export declare const CHECKPOINT_INITIALIZATION_TIME = 1;
14
- /** Time budget for assembling a checkpoint after building the last block in seconds */
15
- export declare const CHECKPOINT_ASSEMBLE_TIME = 1;
16
- /** Default one-way P2P propagation time for proposals and attestations in seconds */
17
- export declare const DEFAULT_P2P_PROPAGATION_TIME = 2;
18
- /** Default L1 publishing time (matches Ethereum slot duration on mainnet) in seconds */
19
- export declare const DEFAULT_L1_PUBLISHING_TIME = 12;
20
- /** Minimum execution time for building a block in seconds */
21
- export declare const MIN_EXECUTION_TIME = 2;
22
- /**
23
- * Calculates the maximum number of blocks that can be built in a slot.
24
- * Used by both the sequencer timetable and p2p gossipsub scoring.
25
- *
26
- * @param aztecSlotDurationSec - Aztec slot duration in seconds
27
- * @param blockDurationSec - Duration per block in seconds (undefined = single block mode)
28
- * @param opts - Optional overrides for timing constants
29
- * @returns Maximum number of blocks per slot
30
- */
31
- export declare function calculateMaxBlocksPerSlot(aztecSlotDurationSec: number, blockDurationSec: number | undefined, opts?: {
32
- checkpointInitializationTime?: number;
33
- checkpointAssembleTime?: number;
34
- p2pPropagationTime?: number;
35
- l1PublishingTime?: number;
36
- }): number;
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1ldGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7R0FVRztBQUVILG1GQUFtRjtBQUNuRixlQUFPLE1BQU0sOEJBQThCLElBQUksQ0FBQztBQUVoRCx1RkFBdUY7QUFDdkYsZUFBTyxNQUFNLHdCQUF3QixJQUFJLENBQUM7QUFFMUMscUZBQXFGO0FBQ3JGLGVBQU8sTUFBTSw0QkFBNEIsSUFBSSxDQUFDO0FBRTlDLHdGQUF3RjtBQUN4RixlQUFPLE1BQU0sMEJBQTBCLEtBQUssQ0FBQztBQUU3Qyw2REFBNkQ7QUFDN0QsZUFBTyxNQUFNLGtCQUFrQixJQUFJLENBQUM7QUFFcEM7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLG9CQUFvQixFQUFFLE1BQU0sRUFDNUIsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFDcEMsSUFBSSxHQUFFO0lBQ0osNEJBQTRCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdEMsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDaEMsa0JBQWtCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDNUIsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEIsR0FDTCxNQUFNLENBb0JSIn0=
1
+ export * from './budgets.js';
2
+ export * from './build_proposer_timetable.js';
3
+ export * from './consensus_timetable.js';
4
+ export * from './proposer_timetable.js';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1ldGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMseUJBQXlCLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/timetable/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,mFAAmF;AACnF,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,uFAAuF;AACvF,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,wFAAwF;AACxF,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,oBAAoB,EAAE,MAAM,EAC5B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,IAAI,GAAE;IACJ,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACtB,GACL,MAAM,CAoBR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/timetable/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC"}
@@ -1,39 +1,4 @@
1
- /**
2
- * Timetable constants used for sequencer timing calculations.
3
- * These define the time budgets for various phases of block production.
4
- *
5
- * The sequencer slot is divided into phases:
6
- * 1. Checkpoint initialization (sync + proposer check)
7
- * 2. Block building (execution)
8
- * 3. Checkpoint assembly
9
- * 4. P2P propagation for proposal and attestations (round-trip)
10
- * 5. L1 publishing
11
- */ /** Time budget for checkpoint initialization (sync + proposer check) in seconds */ export const CHECKPOINT_INITIALIZATION_TIME = 1;
12
- /** Time budget for assembling a checkpoint after building the last block in seconds */ export const CHECKPOINT_ASSEMBLE_TIME = 1;
13
- /** Default one-way P2P propagation time for proposals and attestations in seconds */ export const DEFAULT_P2P_PROPAGATION_TIME = 2;
14
- /** Default L1 publishing time (matches Ethereum slot duration on mainnet) in seconds */ export const DEFAULT_L1_PUBLISHING_TIME = 12;
15
- /** Minimum execution time for building a block in seconds */ export const MIN_EXECUTION_TIME = 2;
16
- /**
17
- * Calculates the maximum number of blocks that can be built in a slot.
18
- * Used by both the sequencer timetable and p2p gossipsub scoring.
19
- *
20
- * @param aztecSlotDurationSec - Aztec slot duration in seconds
21
- * @param blockDurationSec - Duration per block in seconds (undefined = single block mode)
22
- * @param opts - Optional overrides for timing constants
23
- * @returns Maximum number of blocks per slot
24
- */ export function calculateMaxBlocksPerSlot(aztecSlotDurationSec, blockDurationSec, opts = {}) {
25
- if (!blockDurationSec) {
26
- return 1; // Single block per slot
27
- }
28
- const initOffset = opts.checkpointInitializationTime ?? CHECKPOINT_INITIALIZATION_TIME;
29
- const assembleTime = opts.checkpointAssembleTime ?? CHECKPOINT_ASSEMBLE_TIME;
30
- const p2pTime = opts.p2pPropagationTime ?? DEFAULT_P2P_PROPAGATION_TIME;
31
- const l1Time = opts.l1PublishingTime ?? DEFAULT_L1_PUBLISHING_TIME;
32
- // Calculate checkpoint finalization time (assembly + round-trip propagation + L1 publishing)
33
- const checkpointFinalizationTime = assembleTime + p2pTime * 2 + l1Time;
34
- // Time reserved at end for last sub-slot (validator re-execution) + finalization
35
- const timeReservedAtEnd = blockDurationSec + checkpointFinalizationTime;
36
- // Time available for building blocks
37
- const timeAvailableForBlocks = aztecSlotDurationSec - initOffset - timeReservedAtEnd;
38
- return Math.max(1, Math.floor(timeAvailableForBlocks / blockDurationSec));
39
- }
1
+ export * from './budgets.js';
2
+ export * from './build_proposer_timetable.js';
3
+ export * from './consensus_timetable.js';
4
+ export * from './proposer_timetable.js';
@@ -0,0 +1,106 @@
1
+ import type { SlotNumber } from '@aztec/foundation/branded-types';
2
+ import type { Logger } from '@aztec/foundation/log';
3
+ import { ConsensusTimetable, type SlotTimingConstants } from './consensus_timetable.js';
4
+ /** Result of selecting the next block sub-slot to build. */
5
+ export type SubslotSelection = {
6
+ canStart: false;
7
+ index: undefined;
8
+ deadline: undefined;
9
+ isLastBlock: false;
10
+ } | {
11
+ canStart: true;
12
+ index: number;
13
+ deadline: number;
14
+ isLastBlock: boolean;
15
+ };
16
+ /**
17
+ * Proposer ideal/happy-path schedule and block sub-slot timetable.
18
+ *
19
+ * Composes a {@link ConsensusTimetable} and adds the operational budgets that only the proposer needs
20
+ * (`min_block_duration`, `p2p_propagation_time`, `checkpoint_proposal_prepare_time`). Used by the
21
+ * sequencer and checkpoint-proposal job. All getters take a target slot and return an absolute
22
+ * wall-clock timestamp in seconds (or sub-slot deadlines in seconds for {@link selectNextSubslot}).
23
+ *
24
+ * The single hard deadline {@link getAttestationDeadline} is inherited from the composed
25
+ * {@link ConsensusTimetable}, so the proposer uses one object.
26
+ *
27
+ * `maxBlocksPerCheckpoint` is computed from the local operational budgets and then clamped down to the optional
28
+ * network-provided value when that value is lower; a network value at or above the computed count leaves the
29
+ * computed count in effect. When clamping down occurs and a logger is supplied, a warning is emitted.
30
+ */
31
+ export declare class ProposerTimetable extends ConsensusTimetable {
32
+ /** Minimum block-building time (`min_block_duration`) in seconds. */
33
+ readonly minBlockDuration: number;
34
+ /** One-way proposal/attestation propagation budget (`p2p_propagation_time`) in seconds. */
35
+ readonly p2pPropagationTime: number;
36
+ /** Local checkpoint proposal preparation budget (`checkpoint_proposal_prepare_time`) in seconds. */
37
+ readonly checkpointProposalPrepareTime: number;
38
+ /** Proposer initialization budget (`checkpoint_proposal_init_time`) reserved before the first sub-slot, in seconds. */
39
+ readonly checkpointProposalInitTime: number;
40
+ /**
41
+ * Effective maximum number of block sub-slots per checkpoint: the value the local operational budgets compute,
42
+ * clamped down to the explicit network value when that value is lower. A network value above the computed
43
+ * count has no effect (the computed count is used) and is not logged.
44
+ */
45
+ readonly maxBlocksPerCheckpoint: number;
46
+ constructor(opts: {
47
+ l1Constants: SlotTimingConstants;
48
+ blockDuration: number;
49
+ minBlockDuration: number;
50
+ p2pPropagationTime: number;
51
+ checkpointProposalPrepareTime: number;
52
+ checkpointProposalInitTime: number;
53
+ checkpointProposalSyncGrace?: number;
54
+ /** Explicit network max blocks per checkpoint; the effective value is clamped down to this when it is lower. */
55
+ maxBlocksPerCheckpoint?: number;
56
+ /** Optional logger; warns when the local budgets compute more blocks than the network value allows. */
57
+ logger?: Logger;
58
+ });
59
+ /**
60
+ * Computes the maximum number of full-duration block sub-slots in a checkpoint from the already-resolved
61
+ * budgets. Derived from the spec's `max_blocks_per_checkpoint = floor((last_block_build_time -
62
+ * first_subslot_start) / D)`, where the first sub-slot starts one `checkpoint_proposal_init_time` (`init`)
63
+ * after `build_frame_start`, so it simplifies to `floor((S - init - D - 2P - prepCp) / D)`.
64
+ */
65
+ private computeMaxBlocksPerCheckpoint;
66
+ /**
67
+ * Ideal time the last block must finish building by to make the ideal L1 publish path:
68
+ * `target_slot_start - E - D - 2P - prepCp` (= `checkpoint_proposal_send_time - prepCp`). Single value;
69
+ * the proposer sizes block production around the ideal L1-publish path only.
70
+ */
71
+ getLastBlockBuildTime(slot: SlotNumber): number;
72
+ /**
73
+ * Latest start at which the proposer can still squeeze in a minimum-duration block.
74
+ *
75
+ * Multi-block mode: `last_block_build_time - min_block_duration`, an ideal-derived cutoff
76
+ * intentionally earlier (by `P`) than the consensus receive gate would strictly allow, and
77
+ * conservatively no later than the final sub-slot's start cutoff in {@link selectNextSubslot}.
78
+ *
79
+ */
80
+ getBuildStartDeadline(slot: SlotNumber): number;
81
+ /** Ideal L1 publish/send time: `target_slot_start - E`. Also the ideal attestation-receipt target. */
82
+ getL1PublishIdealTime(slot: SlotNumber): number;
83
+ /**
84
+ * Build deadline for sub-slot `k` (zero-based): `build_frame_start + init + (k + 1) * D`.
85
+ *
86
+ * The `init` (`checkpoint_proposal_init_time`) offset reserves the proposer's sync/proposer-check/init
87
+ * budget at the start of the build frame, so the first sub-slot still has its full duration once the
88
+ * prologue finishes rather than being eaten by it.
89
+ */
90
+ getBlockBuildDeadline(slot: SlotNumber, blockIndex: number): number;
91
+ /** Latest time to keep waiting for txs for sub-slot `k`: `block_build_deadline(k) - min_block_duration`. */
92
+ getWaitForTxsDeadline(slot: SlotNumber, blockIndex: number): number;
93
+ /** Maximum number of full-duration block sub-slots for this timing config. */
94
+ getMaxBlocksPerCheckpoint(): number;
95
+ /**
96
+ * Selects the next block sub-slot to build for the target slot given the current wall-clock time.
97
+ *
98
+ * Scans sub-slots in order and picks the first whose build deadline is at least `min_block_duration`
99
+ * in the future. Sub-slots with insufficient remaining headroom are skipped.
100
+ *
101
+ * @param slot - Target slot the checkpoint commits to.
102
+ * @param now - Current wall-clock time in seconds.
103
+ */
104
+ selectNextSubslot(slot: SlotNumber, now: number): SubslotSelection;
105
+ }
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcG9zZXJfdGltZXRhYmxlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGltZXRhYmxlL3Byb3Bvc2VyX3RpbWV0YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXhGLDREQUE0RDtBQUM1RCxNQUFNLE1BQU0sZ0JBQWdCLEdBQ3hCO0lBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQztJQUFDLEtBQUssRUFBRSxTQUFTLENBQUM7SUFBQyxRQUFRLEVBQUUsU0FBUyxDQUFDO0lBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQTtDQUFFLEdBQzlFO0lBQUUsUUFBUSxFQUFFLElBQUksQ0FBQztJQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7SUFBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQTtDQUFFLENBQUM7QUFFOUU7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxxQkFBYSxpQkFBa0IsU0FBUSxrQkFBa0I7SUFDdkQscUVBQXFFO0lBQ3JFLFNBQWdCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQztJQUV6QywyRkFBMkY7SUFDM0YsU0FBZ0Isa0JBQWtCLEVBQUUsTUFBTSxDQUFDO0lBRTNDLG9HQUFvRztJQUNwRyxTQUFnQiw2QkFBNkIsRUFBRSxNQUFNLENBQUM7SUFFdEQsdUhBQXVIO0lBQ3ZILFNBQWdCLDBCQUEwQixFQUFFLE1BQU0sQ0FBQztJQUVuRDs7OztPQUlHO0lBQ0gsU0FBZ0Isc0JBQXNCLEVBQUUsTUFBTSxDQUFDO0lBRS9DLFlBQVksSUFBSSxFQUFFO1FBQ2hCLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQztRQUNqQyxhQUFhLEVBQUUsTUFBTSxDQUFDO1FBQ3RCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQztRQUN6QixrQkFBa0IsRUFBRSxNQUFNLENBQUM7UUFDM0IsNkJBQTZCLEVBQUUsTUFBTSxDQUFDO1FBQ3RDLDBCQUEwQixFQUFFLE1BQU0sQ0FBQztRQUNuQywyQkFBMkIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNyQyxnSEFBZ0g7UUFDaEgsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDaEMsdUdBQXVHO1FBQ3ZHLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQztLQUNqQixFQXNDQTtJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLDZCQUE2QjtJQVdyQzs7OztPQUlHO0lBQ0kscUJBQXFCLENBQUMsSUFBSSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBUXJEO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLHFCQUFxQixDQUFDLElBQUksRUFBRSxVQUFVLEdBQUcsTUFBTSxDQUVyRDtJQUVELHNHQUFzRztJQUMvRixxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FFckQ7SUFFRDs7Ozs7O09BTUc7SUFDSSxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQUV6RTtJQUVELDRHQUE0RztJQUNyRyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQUV6RTtJQUVELDhFQUE4RTtJQUN2RSx5QkFBeUIsSUFBSSxNQUFNLENBRXpDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBV3hFO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposer_timetable.d.ts","sourceRoot":"","sources":["../../src/timetable/proposer_timetable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAExF,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,KAAK,CAAA;CAAE,GAC9E;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9E;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,SAAQ,kBAAkB;IACvD,qEAAqE;IACrE,SAAgB,gBAAgB,EAAE,MAAM,CAAC;IAEzC,2FAA2F;IAC3F,SAAgB,kBAAkB,EAAE,MAAM,CAAC;IAE3C,oGAAoG;IACpG,SAAgB,6BAA6B,EAAE,MAAM,CAAC;IAEtD,uHAAuH;IACvH,SAAgB,0BAA0B,EAAE,MAAM,CAAC;IAEnD;;;;OAIG;IACH,SAAgB,sBAAsB,EAAE,MAAM,CAAC;IAE/C,YAAY,IAAI,EAAE;QAChB,WAAW,EAAE,mBAAmB,CAAC;QACjC,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,6BAA6B,EAAE,MAAM,CAAC;QACtC,0BAA0B,EAAE,MAAM,CAAC;QACnC,2BAA2B,CAAC,EAAE,MAAM,CAAC;QACrC,gHAAgH;QAChH,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,uGAAuG;QACvG,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,EAsCA;IAED;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAWrC;;;;OAIG;IACI,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAQrD;IAED;;;;;;;OAOG;IACI,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAErD;IAED,sGAAsG;IAC/F,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAErD;IAED;;;;;;OAMG;IACI,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzE;IAED,4GAA4G;IACrG,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzE;IAED,8EAA8E;IACvE,yBAAyB,IAAI,MAAM,CAEzC;IAED;;;;;;;;OAQG;IACI,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAWxE;CACF"}
@@ -0,0 +1,132 @@
1
+ import { getDefaultCheckpointProposalSyncGrace, resolveTimingBudgets } from './budgets.js';
2
+ import { ConsensusTimetable } from './consensus_timetable.js';
3
+ /**
4
+ * Proposer ideal/happy-path schedule and block sub-slot timetable.
5
+ *
6
+ * Composes a {@link ConsensusTimetable} and adds the operational budgets that only the proposer needs
7
+ * (`min_block_duration`, `p2p_propagation_time`, `checkpoint_proposal_prepare_time`). Used by the
8
+ * sequencer and checkpoint-proposal job. All getters take a target slot and return an absolute
9
+ * wall-clock timestamp in seconds (or sub-slot deadlines in seconds for {@link selectNextSubslot}).
10
+ *
11
+ * The single hard deadline {@link getAttestationDeadline} is inherited from the composed
12
+ * {@link ConsensusTimetable}, so the proposer uses one object.
13
+ *
14
+ * `maxBlocksPerCheckpoint` is computed from the local operational budgets and then clamped down to the optional
15
+ * network-provided value when that value is lower; a network value at or above the computed count leaves the
16
+ * computed count in effect. When clamping down occurs and a logger is supplied, a warning is emitted.
17
+ */ export class ProposerTimetable extends ConsensusTimetable {
18
+ /** Minimum block-building time (`min_block_duration`) in seconds. */ minBlockDuration;
19
+ /** One-way proposal/attestation propagation budget (`p2p_propagation_time`) in seconds. */ p2pPropagationTime;
20
+ /** Local checkpoint proposal preparation budget (`checkpoint_proposal_prepare_time`) in seconds. */ checkpointProposalPrepareTime;
21
+ /** Proposer initialization budget (`checkpoint_proposal_init_time`) reserved before the first sub-slot, in seconds. */ checkpointProposalInitTime;
22
+ /**
23
+ * Effective maximum number of block sub-slots per checkpoint: the value the local operational budgets compute,
24
+ * clamped down to the explicit network value when that value is lower. A network value above the computed
25
+ * count has no effect (the computed count is used) and is not logged.
26
+ */ maxBlocksPerCheckpoint;
27
+ constructor(opts){
28
+ super({
29
+ l1Constants: opts.l1Constants,
30
+ blockDuration: opts.blockDuration,
31
+ checkpointProposalSyncGrace: opts.checkpointProposalSyncGrace ?? getDefaultCheckpointProposalSyncGrace(opts.blockDuration)
32
+ });
33
+ // Resolve operational budgets, applying the fast local/e2e profile for low ethereum slot durations so a
34
+ // fast network does not inherit the conservative production budgets (which would shrink the build window).
35
+ const budgets = resolveTimingBudgets(this.ethereumSlotDuration, {
36
+ minBlockDuration: opts.minBlockDuration,
37
+ p2pPropagationTime: opts.p2pPropagationTime,
38
+ checkpointProposalPrepareTime: opts.checkpointProposalPrepareTime,
39
+ checkpointProposalInitTime: opts.checkpointProposalInitTime
40
+ });
41
+ this.p2pPropagationTime = budgets.p2pPropagationTime;
42
+ this.checkpointProposalPrepareTime = budgets.checkpointProposalPrepareTime;
43
+ this.checkpointProposalInitTime = budgets.checkpointProposalInitTime;
44
+ // Clamp min block duration to the block duration so a single sub-slot is always startable.
45
+ this.minBlockDuration = Math.min(budgets.minBlockDuration, this.blockDuration);
46
+ const computed = this.computeMaxBlocksPerCheckpoint();
47
+ this.maxBlocksPerCheckpoint = opts.maxBlocksPerCheckpoint !== undefined ? Math.min(computed, opts.maxBlocksPerCheckpoint) : computed;
48
+ if (opts.maxBlocksPerCheckpoint !== undefined && opts.maxBlocksPerCheckpoint < computed) {
49
+ opts.logger?.warn(`Locally computed max blocks per checkpoint clamped down to the network-provided value`, {
50
+ computed,
51
+ maxBlocksPerCheckpoint: opts.maxBlocksPerCheckpoint
52
+ });
53
+ }
54
+ if (this.maxBlocksPerCheckpoint < 1) {
55
+ throw new Error(`Invalid timing configuration: derived ${this.maxBlocksPerCheckpoint} blocks per checkpoint for ` + `slot duration ${this.aztecSlotDuration}s and block duration ${this.blockDuration}s.`);
56
+ }
57
+ }
58
+ /**
59
+ * Computes the maximum number of full-duration block sub-slots in a checkpoint from the already-resolved
60
+ * budgets. Derived from the spec's `max_blocks_per_checkpoint = floor((last_block_build_time -
61
+ * first_subslot_start) / D)`, where the first sub-slot starts one `checkpoint_proposal_init_time` (`init`)
62
+ * after `build_frame_start`, so it simplifies to `floor((S - init - D - 2P - prepCp) / D)`.
63
+ */ computeMaxBlocksPerCheckpoint() {
64
+ // last_block_build_time - (build_frame_start + init) = S - init - D - 2P - prepCp.
65
+ const timeAvailableForBlocks = this.aztecSlotDuration - this.checkpointProposalInitTime - this.blockDuration - 2 * this.p2pPropagationTime - this.checkpointProposalPrepareTime;
66
+ return Math.floor(timeAvailableForBlocks / this.blockDuration);
67
+ }
68
+ /**
69
+ * Ideal time the last block must finish building by to make the ideal L1 publish path:
70
+ * `target_slot_start - E - D - 2P - prepCp` (= `checkpoint_proposal_send_time - prepCp`). Single value;
71
+ * the proposer sizes block production around the ideal L1-publish path only.
72
+ */ getLastBlockBuildTime(slot) {
73
+ return this.getTargetSlotStart(slot) - this.ethereumSlotDuration - this.blockDuration - 2 * this.p2pPropagationTime - this.checkpointProposalPrepareTime;
74
+ }
75
+ /**
76
+ * Latest start at which the proposer can still squeeze in a minimum-duration block.
77
+ *
78
+ * Multi-block mode: `last_block_build_time - min_block_duration`, an ideal-derived cutoff
79
+ * intentionally earlier (by `P`) than the consensus receive gate would strictly allow, and
80
+ * conservatively no later than the final sub-slot's start cutoff in {@link selectNextSubslot}.
81
+ *
82
+ */ getBuildStartDeadline(slot) {
83
+ return this.getLastBlockBuildTime(slot) - this.minBlockDuration;
84
+ }
85
+ /** Ideal L1 publish/send time: `target_slot_start - E`. Also the ideal attestation-receipt target. */ getL1PublishIdealTime(slot) {
86
+ return this.getTargetSlotStart(slot) - this.ethereumSlotDuration;
87
+ }
88
+ /**
89
+ * Build deadline for sub-slot `k` (zero-based): `build_frame_start + init + (k + 1) * D`.
90
+ *
91
+ * The `init` (`checkpoint_proposal_init_time`) offset reserves the proposer's sync/proposer-check/init
92
+ * budget at the start of the build frame, so the first sub-slot still has its full duration once the
93
+ * prologue finishes rather than being eaten by it.
94
+ */ getBlockBuildDeadline(slot, blockIndex) {
95
+ return this.getBuildFrameStart(slot) + this.checkpointProposalInitTime + (blockIndex + 1) * this.blockDuration;
96
+ }
97
+ /** Latest time to keep waiting for txs for sub-slot `k`: `block_build_deadline(k) - min_block_duration`. */ getWaitForTxsDeadline(slot, blockIndex) {
98
+ return this.getBlockBuildDeadline(slot, blockIndex) - this.minBlockDuration;
99
+ }
100
+ /** Maximum number of full-duration block sub-slots for this timing config. */ getMaxBlocksPerCheckpoint() {
101
+ return this.maxBlocksPerCheckpoint;
102
+ }
103
+ /**
104
+ * Selects the next block sub-slot to build for the target slot given the current wall-clock time.
105
+ *
106
+ * Scans sub-slots in order and picks the first whose build deadline is at least `min_block_duration`
107
+ * in the future. Sub-slots with insufficient remaining headroom are skipped.
108
+ *
109
+ * @param slot - Target slot the checkpoint commits to.
110
+ * @param now - Current wall-clock time in seconds.
111
+ */ selectNextSubslot(slot, now) {
112
+ const maxBlocks = this.maxBlocksPerCheckpoint;
113
+ for(let index = 0; index < maxBlocks; index++){
114
+ const deadline = this.getBlockBuildDeadline(slot, index);
115
+ if (deadline - now >= this.minBlockDuration) {
116
+ const isLastBlock = index === maxBlocks - 1;
117
+ return {
118
+ canStart: true,
119
+ index,
120
+ deadline,
121
+ isLastBlock
122
+ };
123
+ }
124
+ }
125
+ return {
126
+ canStart: false,
127
+ index: undefined,
128
+ deadline: undefined,
129
+ isLastBlock: false
130
+ };
131
+ }
132
+ }
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
- import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
2
+ import { BufferReader, BufferSink, FieldReader } from '@aztec/foundation/serialize';
3
3
  import { inspect } from 'util';
4
4
  import { z } from 'zod';
5
5
  import type { UInt32 } from '../types/shared.js';
@@ -38,21 +38,16 @@ export declare class AppendOnlyTreeSnapshot {
38
38
  * preserved when verifying state transitions.
39
39
  */
40
40
  nextAvailableLeafIndex: UInt32);
41
- static get schema(): z.ZodEffects<z.ZodObject<{
42
- root: z.ZodType<Fr, any, string>;
43
- nextAvailableLeafIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
44
- }, "strip", z.ZodTypeAny, {
41
+ static get schema(): z.ZodPipe<z.ZodObject<{
42
+ root: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
43
+ nextAvailableLeafIndex: z.ZodPipe<z.ZodUnion<readonly [z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodCoercedNumber<string | number | bigint>>;
44
+ }, z.core.$strip>, z.ZodTransform<AppendOnlyTreeSnapshot, {
45
45
  root: Fr;
46
46
  nextAvailableLeafIndex: number;
47
- }, {
48
- root: string;
49
- nextAvailableLeafIndex: string | number | bigint;
50
- }>, AppendOnlyTreeSnapshot, {
51
- root: string;
52
- nextAvailableLeafIndex: string | number | bigint;
53
- }>;
47
+ }>>;
54
48
  getSize(): number;
55
- toBuffer(): Buffer<ArrayBufferLike>;
49
+ toBuffer(): Buffer;
50
+ toBuffer(sink: BufferSink): void;
56
51
  toFields(): Fr[];
57
52
  toString(): string;
58
53
  static fromBuffer(buffer: Buffer | BufferReader): AppendOnlyTreeSnapshot;
@@ -73,4 +68,4 @@ export declare class AppendOnlyTreeSnapshot {
73
68
  equals(other: this): boolean;
74
69
  static random(): AppendOnlyTreeSnapshot;
75
70
  }
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwZW5kX29ubHlfdHJlZV9zbmFwc2hvdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RyZWVzL2FwcGVuZF9vbmx5X3RyZWVfc25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRDs7OztHQUlHO0FBQ0gscUJBQWEsc0JBQXNCO0lBRS9COztPQUVHO0lBQ0ksSUFBSSxFQUFFLEVBQUU7SUFDZjs7Ozs7Ozs7T0FRRztJQUNJLHNCQUFzQixFQUFFLE1BQU07SUFkdkM7SUFDRTs7T0FFRztJQUNJLElBQUksRUFBRSxFQUFFO0lBQ2Y7Ozs7Ozs7O09BUUc7SUFDSSxzQkFBc0IsRUFBRSxNQUFNLEVBQ25DO0lBRUosTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7OztPQU9oQjtJQUVELE9BQU8sV0FFTjtJQUVELFFBQVEsNEJBRVA7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsc0JBQXNCLENBR3ZFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLHNCQUFzQixDQUVyRDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxzQkFBc0IsQ0FJcEU7SUFFRCxLQUFLLElBQUksQ0FBQyxLQUFLLE1BQU0sRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUUvQjtJQUVELE1BQU0sQ0FBQyxLQUFLLDJCQUVYO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHNCQUFzQixDQUV2RDtJQUVELE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBSWY7SUFFTSxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksV0FFeEI7SUFFRCxNQUFNLENBQUMsTUFBTSwyQkFFWjtDQUNGIn0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwZW5kX29ubHlfdHJlZV9zbmFwc2hvdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RyZWVzL2FwcGVuZF9vbmx5X3RyZWVfc25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBbUIsTUFBTSw2QkFBNkIsQ0FBQztBQUdyRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakQ7Ozs7R0FJRztBQUNILHFCQUFhLHNCQUFzQjtJQUUvQjs7T0FFRztJQUNJLElBQUksRUFBRSxFQUFFO0lBQ2Y7Ozs7Ozs7O09BUUc7SUFDSSxzQkFBc0IsRUFBRSxNQUFNO0lBZHZDO0lBQ0U7O09BRUc7SUFDSSxJQUFJLEVBQUUsRUFBRTtJQUNmOzs7Ozs7OztPQVFHO0lBQ0ksc0JBQXNCLEVBQUUsTUFBTSxFQUNuQztJQUVKLE1BQU0sS0FBSyxNQUFNOzs7Ozs7UUFPaEI7SUFFRCxPQUFPLFdBRU47SUFFRCxRQUFRLElBQUksTUFBTSxDQUFDO0lBQ25CLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLElBQUksQ0FBQztJQVFqQyxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsc0JBQXNCLENBR3ZFO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLHNCQUFzQixDQUVyRDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxzQkFBc0IsQ0FJcEU7SUFFRCxLQUFLLElBQUksQ0FBQyxLQUFLLE1BQU0sRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUUvQjtJQUVELE1BQU0sQ0FBQyxLQUFLLDJCQUVYO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHNCQUFzQixDQUV2RDtJQUVELE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBSWY7SUFFTSxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksV0FFeEI7SUFFRCxNQUFNLENBQUMsTUFBTSwyQkFFWjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"append_only_tree_snapshot.d.ts","sourceRoot":"","sources":["../../src/trees/append_only_tree_snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAG3F,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;;GAIG;AACH,qBAAa,sBAAsB;IAE/B;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;;;;;;;OAQG;IACI,sBAAsB,EAAE,MAAM;IAdvC;IACE;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;;;;;;;OAQG;IACI,sBAAsB,EAAE,MAAM,EACnC;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED,OAAO,WAEN;IAED,QAAQ,4BAEP;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,sBAAsB,CAGvE;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAErD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,sBAAsB,CAIpE;IAED,KAAK,IAAI,CAAC,KAAK,MAAM,EAAE,EAAE,MAAM,CAAC,CAE/B;IAED,MAAM,CAAC,KAAK,2BAEX;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,sBAAsB,CAEvD;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAIf;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,WAExB;IAED,MAAM,CAAC,MAAM,2BAEZ;CACF"}
1
+ {"version":3,"file":"append_only_tree_snapshot.d.ts","sourceRoot":"","sources":["../../src/trees/append_only_tree_snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAmB,MAAM,6BAA6B,CAAC;AAGrG,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;;GAIG;AACH,qBAAa,sBAAsB;IAE/B;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;;;;;;;OAQG;IACI,sBAAsB,EAAE,MAAM;IAdvC;IACE;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;;;;;;;OAQG;IACI,sBAAsB,EAAE,MAAM,EACnC;IAEJ,MAAM,KAAK,MAAM;;;;;;QAOhB;IAED,OAAO,WAEN;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAQjC,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,sBAAsB,CAGvE;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAErD;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,sBAAsB,CAIpE;IAED,KAAK,IAAI,CAAC,KAAK,MAAM,EAAE,EAAE,MAAM,CAAC,CAE/B;IAED,MAAM,CAAC,KAAK,2BAEX;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,sBAAsB,CAEvD;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAIf;IAEM,MAAM,CAAC,KAAK,EAAE,IAAI,WAExB;IAED,MAAM,CAAC,MAAM,2BAEZ;CACF"}
@@ -1,7 +1,7 @@
1
1
  var _computedKey;
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
- import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
+ import { BufferReader, BufferSink, FieldReader, serializeToSink } from '@aztec/foundation/serialize';
5
5
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
6
6
  import { inspect } from 'util';
7
7
  import { z } from 'zod';
@@ -36,8 +36,11 @@ _computedKey = inspect.custom;
36
36
  getSize() {
37
37
  return this.root.size + 4;
38
38
  }
39
- toBuffer() {
40
- return serializeToBuffer(this.root, this.nextAvailableLeafIndex);
39
+ toBuffer(sink) {
40
+ if (!sink) {
41
+ return BufferSink.serialize(this);
42
+ }
43
+ serializeToSink(sink, this.root, this.nextAvailableLeafIndex);
41
44
  }
42
45
  toFields() {
43
46
  return [
@@ -32,35 +32,19 @@ export declare class NullifierLeafPreimage implements IndexedTreeLeafPreimage {
32
32
  * Index of the next leaf in the indexed tree's linked list.
33
33
  */
34
34
  nextIndex: bigint);
35
- static get schema(): z.ZodEffects<z.ZodObject<{
36
- leaf: z.ZodEffects<z.ZodObject<{
37
- nullifier: z.ZodType<Fr, any, string>;
38
- }, "strip", z.ZodTypeAny, {
35
+ static get schema(): z.ZodPipe<z.ZodObject<{
36
+ leaf: z.ZodPipe<z.ZodObject<{
37
+ nullifier: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
38
+ }, z.core.$strip>, z.ZodTransform<NullifierLeaf, {
39
39
  nullifier: Fr;
40
- }, {
41
- nullifier: string;
42
- }>, NullifierLeaf, {
43
- nullifier: string;
44
- }>;
45
- nextKey: z.ZodType<Fr, any, string>;
46
- nextIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
47
- }, "strip", z.ZodTypeAny, {
40
+ }>>;
41
+ nextKey: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
42
+ nextIndex: z.ZodPipe<z.ZodUnion<readonly [z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodCoercedBigInt<string | number | bigint>>;
43
+ }, z.core.$strip>, z.ZodTransform<NullifierLeafPreimage, {
48
44
  leaf: NullifierLeaf;
49
45
  nextKey: Fr;
50
46
  nextIndex: bigint;
51
- }, {
52
- leaf: {
53
- nullifier: string;
54
- };
55
- nextKey: string;
56
- nextIndex: string | number | bigint;
57
- }>, NullifierLeafPreimage, {
58
- leaf: {
59
- nullifier: string;
60
- };
61
- nextKey: string;
62
- nextIndex: string | number | bigint;
63
- }>;
47
+ }>>;
64
48
  /**
65
49
  * Creates a NullifierLeafPreimage from a plain object without Zod validation.
66
50
  * This method is optimized for performance and skips validation, making it suitable
@@ -69,21 +53,18 @@ export declare class NullifierLeafPreimage implements IndexedTreeLeafPreimage {
69
53
  * @returns A NullifierLeafPreimage instance
70
54
  */
71
55
  static fromPlainObject(obj: any): NullifierLeafPreimage;
72
- static get leafSchema(): z.ZodEffects<z.ZodObject<{
73
- nullifier: z.ZodType<Fr, any, string>;
74
- }, "strip", z.ZodTypeAny, {
56
+ static get leafSchema(): z.ZodPipe<z.ZodObject<{
57
+ nullifier: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
58
+ }, z.core.$strip>, z.ZodTransform<NullifierLeaf, {
75
59
  nullifier: Fr;
76
- }, {
77
- nullifier: string;
78
- }>, NullifierLeaf, {
79
- nullifier: string;
80
- }>;
60
+ }>>;
81
61
  getKey(): bigint;
82
62
  getNextKey(): bigint;
83
63
  getNextIndex(): bigint;
84
64
  asLeaf(): NullifierLeaf;
85
65
  toBuffer(): Buffer;
86
66
  toHashInputs(): Buffer[];
67
+ isEmpty(): boolean;
87
68
  toFields(): Fr[];
88
69
  clone(): NullifierLeafPreimage;
89
70
  static random(): NullifierLeafPreimage;
@@ -115,15 +96,11 @@ export declare class NullifierLeaf implements IndexedTreeLeaf {
115
96
  updateTo(_another: NullifierLeaf): NullifierLeaf;
116
97
  static buildDummy(key: bigint): NullifierLeaf;
117
98
  static fromBuffer(buf: Buffer | BufferReader): NullifierLeaf;
118
- static get schema(): z.ZodEffects<z.ZodObject<{
119
- nullifier: z.ZodType<Fr, any, string>;
120
- }, "strip", z.ZodTypeAny, {
99
+ static get schema(): z.ZodPipe<z.ZodObject<{
100
+ nullifier: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
101
+ }, z.core.$strip>, z.ZodTransform<NullifierLeaf, {
121
102
  nullifier: Fr;
122
- }, {
123
- nullifier: string;
124
- }>, NullifierLeaf, {
125
- nullifier: string;
126
- }>;
103
+ }>>;
127
104
  /**
128
105
  * Creates a NullifierLeaf from a plain object without Zod validation.
129
106
  * This method is optimized for performance and skips validation, making it suitable
@@ -133,4 +110,4 @@ export declare class NullifierLeaf implements IndexedTreeLeaf {
133
110
  */
134
111
  static fromPlainObject(obj: any): NullifierLeaf;
135
112
  }
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVsbGlmaWVyX2xlYWYuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmVlcy9udWxsaWZpZXJfbGVhZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhGLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEI7OztHQUdHO0FBQ0gscUJBQWEscUJBQXNCLFlBQVcsdUJBQXVCO0lBRWpFOztPQUVHO0lBQ0ksSUFBSSxFQUFFLGFBQWE7SUFDMUI7O09BRUc7SUFDSSxPQUFPLEVBQUUsRUFBRTtJQUNsQjs7T0FFRztJQUNJLFNBQVMsRUFBRSxNQUFNO0lBWjFCO0lBQ0U7O09BRUc7SUFDSSxJQUFJLEVBQUUsYUFBYTtJQUMxQjs7T0FFRztJQUNJLE9BQU8sRUFBRSxFQUFFO0lBQ2xCOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU0sRUFDdEI7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVFoQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxxQkFBcUIsQ0FTdEQ7SUFFRCxNQUFNLEtBQUssVUFBVTs7Ozs7Ozs7T0FFcEI7SUFFRCxNQUFNLElBQUksTUFBTSxDQUVmO0lBRUQsVUFBVSxJQUFJLE1BQU0sQ0FFbkI7SUFFRCxZQUFZLElBQUksTUFBTSxDQUVyQjtJQUVELE1BQU0sSUFBSSxhQUFhLENBRXRCO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxZQUFZLElBQUksTUFBTSxFQUFFLENBTXZCO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsS0FBSyxJQUFJLHFCQUFxQixDQUU3QjtJQUVELE1BQU0sQ0FBQyxNQUFNLDBCQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxxQkFBcUIsQ0FFcEM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLHFCQUFxQixDQU90RTtJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcscUJBQXFCLENBRTlGO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUscUJBQXFCLEdBQUcscUJBQXFCLENBRW5FO0NBQ0Y7QUFFRDs7R0FFRztBQUNILHFCQUFhLGFBQWMsWUFBVyxlQUFlO0lBRWpEOztPQUVHO0lBQ0ksU0FBUyxFQUFFLEVBQUU7SUFKdEI7SUFDRTs7T0FFRztJQUNJLFNBQVMsRUFBRSxFQUFFLEVBQ2xCO0lBRUosTUFBTSxJQUFJLE1BQU0sQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsS0FBSyxJQUFJLGFBQWEsQ0FFckI7SUFFRCxZQUFZLElBQUksTUFBTSxFQUFFLENBRXZCO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxhQUFhLENBRTVCO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxhQUFhLENBRTdCO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxRQUFRLENBQUMsUUFBUSxFQUFFLGFBQWEsR0FBRyxhQUFhLENBRS9DO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FFNUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLGFBQWEsQ0FHM0Q7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7T0FFaEI7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsYUFBYSxDQUs5QztDQUNGIn0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVsbGlmaWVyX2xlYWYuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmVlcy9udWxsaWZpZXJfbGVhZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhGLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEI7OztHQUdHO0FBQ0gscUJBQWEscUJBQXNCLFlBQVcsdUJBQXVCO0lBRWpFOztPQUVHO0lBQ0ksSUFBSSxFQUFFLGFBQWE7SUFDMUI7O09BRUc7SUFDSSxPQUFPLEVBQUUsRUFBRTtJQUNsQjs7T0FFRztJQUNJLFNBQVMsRUFBRSxNQUFNO0lBWjFCO0lBQ0U7O09BRUc7SUFDSSxJQUFJLEVBQUUsYUFBYTtJQUMxQjs7T0FFRztJQUNJLE9BQU8sRUFBRSxFQUFFO0lBQ2xCOztPQUVHO0lBQ0ksU0FBUyxFQUFFLE1BQU0sRUFDdEI7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O1FBUWhCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHFCQUFxQixDQVN0RDtJQUVELE1BQU0sS0FBSyxVQUFVOzs7O1FBRXBCO0lBRUQsTUFBTSxJQUFJLE1BQU0sQ0FFZjtJQUVELFVBQVUsSUFBSSxNQUFNLENBRW5CO0lBRUQsWUFBWSxJQUFJLE1BQU0sQ0FFckI7SUFFRCxNQUFNLElBQUksYUFBYSxDQUV0QjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsWUFBWSxJQUFJLE1BQU0sRUFBRSxDQU12QjtJQUVELE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsS0FBSyxJQUFJLHFCQUFxQixDQUU3QjtJQUVELE1BQU0sQ0FBQyxNQUFNLDBCQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxxQkFBcUIsQ0FFcEM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLHFCQUFxQixDQU90RTtJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcscUJBQXFCLENBRTlGO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUscUJBQXFCLEdBQUcscUJBQXFCLENBRW5FO0NBQ0Y7QUFFRDs7R0FFRztBQUNILHFCQUFhLGFBQWMsWUFBVyxlQUFlO0lBRWpEOztPQUVHO0lBQ0ksU0FBUyxFQUFFLEVBQUU7SUFKdEI7SUFDRTs7T0FFRztJQUNJLFNBQVMsRUFBRSxFQUFFLEVBQ2xCO0lBRUosTUFBTSxJQUFJLE1BQU0sQ0FFZjtJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsS0FBSyxJQUFJLGFBQWEsQ0FFckI7SUFFRCxZQUFZLElBQUksTUFBTSxFQUFFLENBRXZCO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxhQUFhLENBRTVCO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxhQUFhLENBRTdCO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxRQUFRLENBQUMsUUFBUSxFQUFFLGFBQWEsR0FBRyxhQUFhLENBRS9DO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLGFBQWEsQ0FFNUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLGFBQWEsQ0FHM0Q7SUFFRCxNQUFNLEtBQUssTUFBTTs7OztRQUVoQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxhQUFhLENBSzlDO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"nullifier_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/nullifier_leaf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,qBAAa,qBAAsB,YAAW,uBAAuB;IAEjE;;OAEG;IACI,IAAI,EAAE,aAAa;IAC1B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM;IAZ1B;IACE;;OAEG;IACI,IAAI,EAAE,aAAa;IAC1B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM,EACtB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,qBAAqB,CAStD;IAED,MAAM,KAAK,UAAU;;;;;;;;OAEpB;IAED,MAAM,IAAI,MAAM,CAEf;IAED,UAAU,IAAI,MAAM,CAEnB;IAED,YAAY,IAAI,MAAM,CAErB;IAED,MAAM,IAAI,aAAa,CAEtB;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,YAAY,IAAI,MAAM,EAAE,CAMvB;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,IAAI,qBAAqB,CAE7B;IAED,MAAM,CAAC,MAAM,0BAEZ;IAED,MAAM,CAAC,KAAK,IAAI,qBAAqB,CAEpC;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAOtE;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,qBAAqB,CAE9F;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qBAAqB,GAAG,qBAAqB,CAEnE;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,eAAe;IAEjD;;OAEG;IACI,SAAS,EAAE,EAAE;IAJtB;IACE;;OAEG;IACI,SAAS,EAAE,EAAE,EAClB;IAEJ,MAAM,IAAI,MAAM,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,KAAK,IAAI,aAAa,CAErB;IAED,YAAY,IAAI,MAAM,EAAE,CAEvB;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,MAAM,CAAC,MAAM,IAAI,aAAa,CAE7B;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,CAE/C;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAE5C;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAG3D;IAED,MAAM,KAAK,MAAM;;;;;;;;OAEhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAK9C;CACF"}
1
+ {"version":3,"file":"nullifier_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/nullifier_leaf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,qBAAa,qBAAsB,YAAW,uBAAuB;IAEjE;;OAEG;IACI,IAAI,EAAE,aAAa;IAC1B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM;IAZ1B;IACE;;OAEG;IACI,IAAI,EAAE,aAAa;IAC1B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM,EACtB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;QAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,qBAAqB,CAStD;IAED,MAAM,KAAK,UAAU;;;;QAEpB;IAED,MAAM,IAAI,MAAM,CAEf;IAED,UAAU,IAAI,MAAM,CAEnB;IAED,YAAY,IAAI,MAAM,CAErB;IAED,MAAM,IAAI,aAAa,CAEtB;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,YAAY,IAAI,MAAM,EAAE,CAMvB;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,KAAK,IAAI,qBAAqB,CAE7B;IAED,MAAM,CAAC,MAAM,0BAEZ;IAED,MAAM,CAAC,KAAK,IAAI,qBAAqB,CAEpC;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,qBAAqB,CAOtE;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,qBAAqB,CAE9F;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qBAAqB,GAAG,qBAAqB,CAEnE;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,eAAe;IAEjD;;OAEG;IACI,SAAS,EAAE,EAAE;IAJtB;IACE;;OAEG;IACI,SAAS,EAAE,EAAE,EAClB;IAEJ,MAAM,IAAI,MAAM,CAEf;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,KAAK,IAAI,aAAa,CAErB;IAED,YAAY,IAAI,MAAM,EAAE,CAEvB;IAED,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED,MAAM,CAAC,MAAM,IAAI,aAAa,CAE7B;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,CAE/C;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAE5C;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAG3D;IAED,MAAM,KAAK,MAAM;;;;QAEhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAK9C;CACF"}
@@ -65,6 +65,9 @@ import { z } from 'zod';
65
65
  Buffer.from(toBufferBE(this.nextIndex, 32))
66
66
  ];
67
67
  }
68
+ isEmpty() {
69
+ return this.leaf.isEmpty() && this.nextKey.isZero() && this.nextIndex === 0n;
70
+ }
68
71
  toFields() {
69
72
  return this.toHashInputs().map((buf)=>Fr.fromBuffer(buf));
70
73
  }