@aztec/stdlib 0.0.1-commit.d3ec352c → 0.0.1-commit.d58ff9d0

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 (1502) hide show
  1. package/dest/abi/abi.d.ts +199 -533
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +48 -25
  4. package/dest/abi/authorization_selector.d.ts +5 -8
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/authorization_selector.js +2 -1
  7. package/dest/abi/buffer.d.ts +20 -6
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +39 -6
  10. package/dest/abi/contract_artifact.d.ts +2 -2
  11. package/dest/abi/contract_artifact.d.ts.map +1 -1
  12. package/dest/abi/contract_artifact.js +40 -15
  13. package/dest/abi/decoder.d.ts +7 -46
  14. package/dest/abi/decoder.d.ts.map +1 -1
  15. package/dest/abi/decoder.js +17 -70
  16. package/dest/abi/encoder.d.ts +2 -2
  17. package/dest/abi/encoder.d.ts.map +1 -1
  18. package/dest/abi/encoder.js +65 -8
  19. package/dest/abi/event_metadata_definition.d.ts +3 -1
  20. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  21. package/dest/abi/event_metadata_definition.js +1 -1
  22. package/dest/abi/event_selector.d.ts +5 -8
  23. package/dest/abi/event_selector.d.ts.map +1 -1
  24. package/dest/abi/event_selector.js +2 -1
  25. package/dest/abi/function_call.d.ts +31 -11
  26. package/dest/abi/function_call.d.ts.map +1 -1
  27. package/dest/abi/function_call.js +20 -3
  28. package/dest/abi/function_selector.d.ts +5 -7
  29. package/dest/abi/function_selector.d.ts.map +1 -1
  30. package/dest/abi/function_selector.js +11 -5
  31. package/dest/abi/function_signature_decoder.d.ts +43 -0
  32. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  33. package/dest/abi/function_signature_decoder.js +66 -0
  34. package/dest/abi/index.d.ts +2 -1
  35. package/dest/abi/index.d.ts.map +1 -1
  36. package/dest/abi/index.js +1 -0
  37. package/dest/abi/note_selector.d.ts +5 -8
  38. package/dest/abi/note_selector.d.ts.map +1 -1
  39. package/dest/abi/note_selector.js +3 -5
  40. package/dest/abi/selector.d.ts +3 -3
  41. package/dest/abi/selector.d.ts.map +1 -1
  42. package/dest/abi/selector.js +5 -3
  43. package/dest/abi/utils.d.ts +20 -1
  44. package/dest/abi/utils.d.ts.map +1 -1
  45. package/dest/abi/utils.js +22 -0
  46. package/dest/auth_witness/auth_witness.d.ts +4 -3
  47. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  48. package/dest/auth_witness/auth_witness.js +5 -5
  49. package/dest/avm/avm.d.ts +1827 -10485
  50. package/dest/avm/avm.d.ts.map +1 -1
  51. package/dest/avm/avm.js +94 -29
  52. package/dest/avm/avm_accumulated_data.d.ts +51 -88
  53. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  54. package/dest/avm/avm_accumulated_data.js +6 -3
  55. package/dest/avm/avm_circuit_public_inputs.d.ts +186 -938
  56. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  57. package/dest/avm/avm_circuit_public_inputs.js +4 -2
  58. package/dest/avm/avm_proving_request.d.ts +834 -5627
  59. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  60. package/dest/avm/index.d.ts +1 -6
  61. package/dest/avm/index.d.ts.map +1 -1
  62. package/dest/avm/index.js +0 -5
  63. package/dest/avm/message_pack.d.ts +1 -1
  64. package/dest/avm/message_pack.d.ts.map +1 -1
  65. package/dest/avm/message_pack.js +14 -4
  66. package/dest/avm/public_data_read.d.ts +11 -2
  67. package/dest/avm/public_data_read.d.ts.map +1 -1
  68. package/dest/avm/public_data_read.js +1 -1
  69. package/dest/avm/public_data_write.d.ts +13 -13
  70. package/dest/avm/public_data_write.d.ts.map +1 -1
  71. package/dest/avm/public_data_write.js +1 -1
  72. package/dest/avm/revert_code.d.ts +10 -11
  73. package/dest/avm/revert_code.d.ts.map +1 -1
  74. package/dest/avm/revert_code.js +17 -23
  75. package/dest/aztec-address/index.d.ts +44 -13
  76. package/dest/aztec-address/index.d.ts.map +1 -1
  77. package/dest/aztec-address/index.js +44 -14
  78. package/dest/block/attestation_info.d.ts +7 -6
  79. package/dest/block/attestation_info.d.ts.map +1 -1
  80. package/dest/block/attestation_info.js +12 -7
  81. package/dest/block/block_data.d.ts +27 -0
  82. package/dest/block/block_data.d.ts.map +1 -0
  83. package/dest/block/block_data.js +12 -0
  84. package/dest/block/block_hash.d.ts +20 -15
  85. package/dest/block/block_hash.d.ts.map +1 -1
  86. package/dest/block/block_hash.js +23 -20
  87. package/dest/block/block_parameter.d.ts +38 -4
  88. package/dest/block/block_parameter.d.ts.map +1 -1
  89. package/dest/block/block_parameter.js +55 -2
  90. package/dest/block/body.d.ts +1 -1
  91. package/dest/block/body.d.ts.map +1 -1
  92. package/dest/block/body.js +5 -2
  93. package/dest/block/in_block.d.ts +14 -17
  94. package/dest/block/in_block.d.ts.map +1 -1
  95. package/dest/block/in_block.js +19 -10
  96. package/dest/block/index.d.ts +2 -4
  97. package/dest/block/index.d.ts.map +1 -1
  98. package/dest/block/index.js +1 -3
  99. package/dest/block/l2_block.d.ts +66 -86
  100. package/dest/block/l2_block.d.ts.map +1 -1
  101. package/dest/block/l2_block.js +77 -109
  102. package/dest/block/l2_block_info.d.ts +11 -30
  103. package/dest/block/l2_block_info.d.ts.map +1 -1
  104. package/dest/block/l2_block_info.js +7 -6
  105. package/dest/block/l2_block_source.d.ts +321 -166
  106. package/dest/block/l2_block_source.d.ts.map +1 -1
  107. package/dest/block/l2_block_source.js +105 -6
  108. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  109. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  110. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  111. package/dest/block/l2_block_stream/index.d.ts +3 -1
  112. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  113. package/dest/block/l2_block_stream/index.js +2 -0
  114. package/dest/block/l2_block_stream/interfaces.d.ts +91 -8
  115. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  116. package/dest/block/l2_block_stream/interfaces.js +25 -1
  117. package/dest/block/l2_block_stream/l2_block_stream.d.ts +28 -10
  118. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  119. package/dest/block/l2_block_stream/l2_block_stream.js +177 -60
  120. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +20 -16
  121. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  122. package/dest/block/l2_block_stream/l2_tips_memory_store.js +36 -63
  123. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +51 -0
  124. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  125. package/dest/block/l2_block_stream/l2_tips_store_base.js +223 -0
  126. package/dest/block/proposal/attestations_and_signers.d.ts +38 -31
  127. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  128. package/dest/block/proposal/attestations_and_signers.js +73 -25
  129. package/dest/block/proposal/committee_attestation.d.ts +7 -13
  130. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  131. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  132. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  133. package/dest/block/test/l2_tips_store_test_suite.js +747 -50
  134. package/dest/block/validate_block_result.d.ts +39 -24
  135. package/dest/block/validate_block_result.d.ts.map +1 -1
  136. package/dest/block/validate_block_result.js +33 -17
  137. package/dest/checkpoint/checkpoint.d.ts +76 -88
  138. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  139. package/dest/checkpoint/checkpoint.js +92 -17
  140. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  141. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  142. package/dest/checkpoint/checkpoint_data.js +38 -0
  143. package/dest/checkpoint/checkpoint_info.d.ts +22 -0
  144. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  145. package/dest/checkpoint/checkpoint_info.js +34 -0
  146. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  147. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  148. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  149. package/dest/checkpoint/digest.d.ts +18 -0
  150. package/dest/checkpoint/digest.d.ts.map +1 -0
  151. package/dest/checkpoint/digest.js +12 -0
  152. package/dest/checkpoint/index.d.ts +8 -1
  153. package/dest/checkpoint/index.d.ts.map +1 -1
  154. package/dest/checkpoint/index.js +7 -0
  155. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  156. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  157. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  158. package/dest/checkpoint/published_checkpoint.d.ts +58 -169
  159. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  160. package/dest/checkpoint/published_checkpoint.js +16 -6
  161. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  162. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  163. package/dest/checkpoint/simulation_overrides.js +98 -0
  164. package/dest/checkpoint/validate.d.ts +44 -0
  165. package/dest/checkpoint/validate.d.ts.map +1 -0
  166. package/dest/checkpoint/validate.js +123 -0
  167. package/dest/config/chain-config.d.ts +4 -9
  168. package/dest/config/chain-config.d.ts.map +1 -1
  169. package/dest/config/chain-config.js +13 -12
  170. package/dest/config/index.d.ts +3 -1
  171. package/dest/config/index.d.ts.map +1 -1
  172. package/dest/config/index.js +2 -0
  173. package/dest/config/network-consensus-config.d.ts +72 -0
  174. package/dest/config/network-consensus-config.d.ts.map +1 -0
  175. package/dest/config/network-consensus-config.js +223 -0
  176. package/dest/config/node-rpc-config.js +1 -1
  177. package/dest/config/sequencer-config.d.ts +16 -0
  178. package/dest/config/sequencer-config.d.ts.map +1 -0
  179. package/dest/config/sequencer-config.js +57 -0
  180. package/dest/contract/artifact_hash.d.ts +2 -2
  181. package/dest/contract/artifact_hash.d.ts.map +1 -1
  182. package/dest/contract/artifact_hash.js +2 -2
  183. package/dest/contract/complete_address.d.ts +7 -3
  184. package/dest/contract/complete_address.d.ts.map +1 -1
  185. package/dest/contract/complete_address.js +7 -3
  186. package/dest/contract/contract_address.d.ts +11 -10
  187. package/dest/contract/contract_address.d.ts.map +1 -1
  188. package/dest/contract/contract_address.js +11 -10
  189. package/dest/contract/contract_class.d.ts +3 -4
  190. package/dest/contract/contract_class.d.ts.map +1 -1
  191. package/dest/contract/contract_class.js +3 -2
  192. package/dest/contract/contract_class_id.d.ts +4 -4
  193. package/dest/contract/contract_class_id.d.ts.map +1 -1
  194. package/dest/contract/contract_class_id.js +9 -8
  195. package/dest/contract/contract_deployment_data.d.ts +18 -64
  196. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  197. package/dest/contract/contract_instance.d.ts +20 -4
  198. package/dest/contract/contract_instance.d.ts.map +1 -1
  199. package/dest/contract/contract_instance.js +56 -4
  200. package/dest/contract/contract_instance_update.d.ts +2 -2
  201. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  202. package/dest/contract/contract_instance_update.js +1 -1
  203. package/dest/contract/index.d.ts +1 -6
  204. package/dest/contract/index.d.ts.map +1 -1
  205. package/dest/contract/index.js +0 -5
  206. package/dest/contract/interfaces/contract_class.d.ts +30 -249
  207. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  208. package/dest/contract/interfaces/contract_class.js +24 -34
  209. package/dest/contract/interfaces/contract_data_source.d.ts +4 -6
  210. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  211. package/dest/contract/interfaces/contract_instance.d.ts +133 -117
  212. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  213. package/dest/contract/interfaces/contract_instance.js +39 -7
  214. package/dest/contract/interfaces/contract_instance_update.d.ts +12 -33
  215. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  216. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  217. package/dest/contract/interfaces/node-info.d.ts +13 -1
  218. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  219. package/dest/contract/interfaces/node-info.js +8 -1
  220. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  221. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  222. package/dest/contract/partial_address.d.ts +10 -4
  223. package/dest/contract/partial_address.d.ts.map +1 -1
  224. package/dest/contract/partial_address.js +8 -2
  225. package/dest/contract/private_function.d.ts +2 -2
  226. package/dest/contract/private_function.d.ts.map +1 -1
  227. package/dest/contract/private_function.js +7 -9
  228. package/dest/database-version/database_version.d.ts +52 -0
  229. package/dest/database-version/database_version.d.ts.map +1 -0
  230. package/dest/database-version/database_version.js +69 -0
  231. package/dest/database-version/version_manager.d.ts +23 -51
  232. package/dest/database-version/version_manager.d.ts.map +1 -1
  233. package/dest/database-version/version_manager.js +88 -70
  234. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +3 -3
  235. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  236. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +9 -12
  237. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +2 -2
  238. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  239. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +1 -1
  240. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +2 -2
  241. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  242. package/dest/delayed_public_mutable/scheduled_value_change.js +1 -1
  243. package/dest/deserialization/index.d.ts +43 -0
  244. package/dest/deserialization/index.d.ts.map +1 -0
  245. package/dest/deserialization/index.js +41 -0
  246. package/dest/epoch-helpers/index.d.ts +16 -18
  247. package/dest/epoch-helpers/index.d.ts.map +1 -1
  248. package/dest/epoch-helpers/index.js +26 -6
  249. package/dest/errors/proving_error.d.ts +2 -2
  250. package/dest/errors/proving_error.d.ts.map +1 -1
  251. package/dest/errors/simulation_error.d.ts +2 -2
  252. package/dest/errors/simulation_error.d.ts.map +1 -1
  253. package/dest/fees/transaction_fee.d.ts +2 -2
  254. package/dest/fees/transaction_fee.d.ts.map +1 -1
  255. package/dest/file-store/factory.d.ts +4 -3
  256. package/dest/file-store/factory.d.ts.map +1 -1
  257. package/dest/file-store/factory.js +9 -2
  258. package/dest/file-store/http.d.ts +9 -2
  259. package/dest/file-store/http.d.ts.map +1 -1
  260. package/dest/file-store/http.js +20 -9
  261. package/dest/file-store/index.d.ts +3 -1
  262. package/dest/file-store/index.d.ts.map +1 -1
  263. package/dest/file-store/index.js +1 -0
  264. package/dest/file-store/local.d.ts +3 -3
  265. package/dest/file-store/local.d.ts.map +1 -1
  266. package/dest/file-store/local.js +13 -4
  267. package/dest/file-store/memory.d.ts +24 -0
  268. package/dest/file-store/memory.d.ts.map +1 -0
  269. package/dest/file-store/memory.js +80 -0
  270. package/dest/file-store/s3.d.ts +1 -1
  271. package/dest/file-store/s3.d.ts.map +1 -1
  272. package/dest/file-store/s3.js +11 -3
  273. package/dest/gas/fee_math.d.ts +49 -0
  274. package/dest/gas/fee_math.d.ts.map +1 -0
  275. package/dest/gas/fee_math.js +80 -0
  276. package/dest/gas/gas.d.ts +10 -15
  277. package/dest/gas/gas.d.ts.map +1 -1
  278. package/dest/gas/gas.js +10 -5
  279. package/dest/gas/gas_fees.d.ts +14 -15
  280. package/dest/gas/gas_fees.d.ts.map +1 -1
  281. package/dest/gas/gas_fees.js +23 -5
  282. package/dest/gas/gas_settings.d.ts +61 -87
  283. package/dest/gas/gas_settings.d.ts.map +1 -1
  284. package/dest/gas/gas_settings.js +50 -10
  285. package/dest/gas/index.d.ts +3 -1
  286. package/dest/gas/index.d.ts.map +1 -1
  287. package/dest/gas/index.js +2 -0
  288. package/dest/gas/tx_gas_limits.d.ts +72 -0
  289. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  290. package/dest/gas/tx_gas_limits.js +85 -0
  291. package/dest/ha-signing/config.d.ts +86 -0
  292. package/dest/ha-signing/config.d.ts.map +1 -0
  293. package/dest/ha-signing/config.js +94 -0
  294. package/dest/ha-signing/index.d.ts +4 -0
  295. package/dest/ha-signing/index.d.ts.map +1 -0
  296. package/dest/ha-signing/index.js +3 -0
  297. package/dest/ha-signing/local_config.d.ts +40 -0
  298. package/dest/ha-signing/local_config.d.ts.map +1 -0
  299. package/dest/ha-signing/local_config.js +30 -0
  300. package/dest/ha-signing/types.d.ts +90 -0
  301. package/dest/ha-signing/types.d.ts.map +1 -0
  302. package/dest/ha-signing/types.js +39 -0
  303. package/dest/hash/hash.d.ts +34 -9
  304. package/dest/hash/hash.d.ts.map +1 -1
  305. package/dest/hash/hash.js +77 -28
  306. package/dest/hash/map_slot.d.ts +2 -2
  307. package/dest/hash/map_slot.d.ts.map +1 -1
  308. package/dest/hash/map_slot.js +4 -3
  309. package/dest/interfaces/allowed_element.d.ts +22 -41
  310. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  311. package/dest/interfaces/allowed_element.js +11 -11
  312. package/dest/interfaces/api_limit.d.ts +3 -1
  313. package/dest/interfaces/api_limit.d.ts.map +1 -1
  314. package/dest/interfaces/api_limit.js +2 -0
  315. package/dest/interfaces/archiver.d.ts +26 -33
  316. package/dest/interfaces/archiver.d.ts.map +1 -1
  317. package/dest/interfaces/archiver.js +219 -60
  318. package/dest/interfaces/aztec-node-admin.d.ts +131 -218
  319. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  320. package/dest/interfaces/aztec-node-admin.js +71 -20
  321. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  322. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  323. package/dest/interfaces/aztec-node-debug.js +49 -0
  324. package/dest/interfaces/aztec-node.d.ts +200 -160
  325. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  326. package/dest/interfaces/aztec-node.js +355 -79
  327. package/dest/interfaces/block-builder.d.ts +58 -18
  328. package/dest/interfaces/block-builder.d.ts.map +1 -1
  329. package/dest/interfaces/block-builder.js +23 -1
  330. package/dest/interfaces/block_response.d.ts +90 -0
  331. package/dest/interfaces/block_response.d.ts.map +1 -0
  332. package/dest/interfaces/block_response.js +30 -0
  333. package/dest/interfaces/chain_tips.d.ts +11 -0
  334. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  335. package/dest/interfaces/chain_tips.js +6 -0
  336. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  337. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  338. package/dest/interfaces/checkpoint_parameter.js +18 -0
  339. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  340. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  341. package/dest/interfaces/checkpoint_response.js +26 -0
  342. package/dest/interfaces/client.d.ts +9 -2
  343. package/dest/interfaces/client.d.ts.map +1 -1
  344. package/dest/interfaces/client.js +7 -1
  345. package/dest/interfaces/configs.d.ts +129 -123
  346. package/dest/interfaces/configs.d.ts.map +1 -1
  347. package/dest/interfaces/configs.js +34 -9
  348. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  349. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  350. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  351. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  352. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  353. package/dest/interfaces/l1_publish_info.js +26 -0
  354. package/dest/interfaces/l2_logs_source.d.ts +14 -29
  355. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  356. package/dest/interfaces/l2_logs_source.js +5 -0
  357. package/dest/interfaces/merkle_tree_operations.d.ts +21 -25
  358. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  359. package/dest/interfaces/p2p-bootstrap.js +8 -2
  360. package/dest/interfaces/p2p.d.ts +52 -20
  361. package/dest/interfaces/p2p.d.ts.map +1 -1
  362. package/dest/interfaces/p2p.js +42 -8
  363. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  364. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  365. package/dest/interfaces/prover-agent.d.ts +5 -23
  366. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  367. package/dest/interfaces/prover-agent.js +4 -1
  368. package/dest/interfaces/prover-broker.d.ts +16 -1
  369. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  370. package/dest/interfaces/prover-broker.js +4 -1
  371. package/dest/interfaces/prover-client.d.ts +22 -23
  372. package/dest/interfaces/prover-client.d.ts.map +1 -1
  373. package/dest/interfaces/prover-client.js +22 -7
  374. package/dest/interfaces/prover-node.d.ts +12 -8
  375. package/dest/interfaces/prover-node.d.ts.map +1 -1
  376. package/dest/interfaces/prover-node.js +37 -16
  377. package/dest/interfaces/proving-job-source.js +24 -4
  378. package/dest/interfaces/proving-job.d.ts +753 -5804
  379. package/dest/interfaces/proving-job.d.ts.map +1 -1
  380. package/dest/interfaces/proving-job.js +3 -9
  381. package/dest/interfaces/public_state_source.d.ts +2 -2
  382. package/dest/interfaces/public_state_source.d.ts.map +1 -1
  383. package/dest/interfaces/public_storage_override.d.ts +22 -0
  384. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  385. package/dest/interfaces/public_storage_override.js +7 -0
  386. package/dest/interfaces/server.d.ts +6 -3
  387. package/dest/interfaces/server.d.ts.map +1 -1
  388. package/dest/interfaces/server.js +5 -2
  389. package/dest/interfaces/server_circuit_prover.d.ts +5 -4
  390. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  391. package/dest/interfaces/slasher.d.ts +27 -59
  392. package/dest/interfaces/slasher.d.ts.map +1 -1
  393. package/dest/interfaces/slasher.js +13 -7
  394. package/dest/interfaces/tx_provider.d.ts +8 -3
  395. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  396. package/dest/interfaces/validator.d.ts +133 -125
  397. package/dest/interfaces/validator.d.ts.map +1 -1
  398. package/dest/interfaces/validator.js +25 -10
  399. package/dest/interfaces/world_state.d.ts +35 -12
  400. package/dest/interfaces/world_state.d.ts.map +1 -1
  401. package/dest/kernel/claimed_length_array.d.ts +2 -2
  402. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  403. package/dest/kernel/claimed_length_array.js +3 -1
  404. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +7 -6
  405. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  406. package/dest/kernel/hints/build_note_hash_read_request_hints.js +31 -19
  407. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +5 -5
  408. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  409. package/dest/kernel/hints/build_nullifier_read_request_hints.js +28 -17
  410. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  411. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  412. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  413. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  414. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  415. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -76
  416. package/dest/kernel/hints/index.d.ts +3 -4
  417. package/dest/kernel/hints/index.d.ts.map +1 -1
  418. package/dest/kernel/hints/index.js +2 -3
  419. package/dest/kernel/hints/key_validation_hint.d.ts +3 -2
  420. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  421. package/dest/kernel/hints/key_validation_hint.js +1 -1
  422. package/dest/kernel/hints/key_validation_request.d.ts +14 -8
  423. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  424. package/dest/kernel/hints/key_validation_request.js +21 -18
  425. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  426. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  427. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +13 -16
  428. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -2
  429. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  430. package/dest/kernel/hints/note_hash_read_request_hints.js +1 -1
  431. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  432. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  433. package/dest/kernel/hints/read_request.d.ts +8 -2
  434. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  435. package/dest/kernel/hints/read_request.js +2 -2
  436. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  437. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  438. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +9 -9
  439. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  440. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  441. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  442. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  443. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +2 -2
  444. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  445. package/dest/kernel/hints/transient_data_squashing_hint.js +4 -2
  446. package/dest/kernel/index.d.ts +10 -2
  447. package/dest/kernel/index.d.ts.map +1 -1
  448. package/dest/kernel/index.js +9 -1
  449. package/dest/kernel/log_hash.d.ts +7 -3
  450. package/dest/kernel/log_hash.d.ts.map +1 -1
  451. package/dest/kernel/log_hash.js +27 -13
  452. package/dest/kernel/note_hash.d.ts +2 -2
  453. package/dest/kernel/note_hash.d.ts.map +1 -1
  454. package/dest/kernel/note_hash.js +2 -2
  455. package/dest/kernel/nullifier.d.ts +2 -2
  456. package/dest/kernel/nullifier.d.ts.map +1 -1
  457. package/dest/kernel/nullifier.js +2 -2
  458. package/dest/kernel/padded_side_effects.d.ts +2 -2
  459. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  460. package/dest/kernel/padded_side_effects.js +1 -1
  461. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  462. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  463. package/dest/kernel/private_call_data.d.ts +26 -2
  464. package/dest/kernel/private_call_data.d.ts.map +1 -1
  465. package/dest/kernel/private_call_data.js +1 -1
  466. package/dest/kernel/private_call_request.d.ts +17 -2
  467. package/dest/kernel/private_call_request.d.ts.map +1 -1
  468. package/dest/kernel/private_call_request.js +1 -1
  469. package/dest/kernel/private_circuit_public_inputs.d.ts +135 -52
  470. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  471. package/dest/kernel/private_circuit_public_inputs.js +76 -69
  472. package/dest/kernel/private_context_inputs.d.ts +4 -3
  473. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  474. package/dest/kernel/private_context_inputs.js +7 -3
  475. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +38 -10
  476. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  477. package/dest/kernel/private_kernel_circuit_public_inputs.js +14 -11
  478. package/dest/kernel/private_kernel_data.d.ts +7 -1
  479. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  480. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  481. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  482. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  483. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  484. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  485. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  486. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  487. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  488. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  489. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  490. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  491. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  492. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +20 -7
  493. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  494. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +3 -7
  495. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  496. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  497. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  498. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  499. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  500. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  501. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  502. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  503. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  504. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  505. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  506. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  507. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  508. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  509. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  510. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  511. package/dest/kernel/private_kernel_prover_output.js +4 -1
  512. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  513. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  514. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  515. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  516. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  517. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  518. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  519. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  520. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  521. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  522. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +35 -9
  523. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  524. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +33 -14
  525. package/dest/kernel/private_log_data.d.ts +2 -2
  526. package/dest/kernel/private_log_data.d.ts.map +1 -1
  527. package/dest/kernel/private_log_data.js +6 -3
  528. package/dest/kernel/private_to_avm_accumulated_data.d.ts +27 -71
  529. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  530. package/dest/kernel/private_to_avm_accumulated_data.js +17 -8
  531. package/dest/kernel/private_to_public_accumulated_data.d.ts +5 -4
  532. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  533. package/dest/kernel/private_to_public_accumulated_data.js +10 -5
  534. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  535. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  536. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  537. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +8 -7
  538. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  539. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +14 -10
  540. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +22 -5
  541. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  542. package/dest/kernel/private_to_rollup_accumulated_data.js +10 -5
  543. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +23 -7
  544. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  545. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +14 -10
  546. package/dest/kernel/private_validation_requests.d.ts +13 -4
  547. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  548. package/dest/kernel/private_validation_requests.js +12 -10
  549. package/dest/kernel/public_call_request.d.ts +37 -31
  550. package/dest/kernel/public_call_request.d.ts.map +1 -1
  551. package/dest/kernel/public_call_request.js +22 -10
  552. package/dest/kernel/utils/index.d.ts +1 -2
  553. package/dest/kernel/utils/index.d.ts.map +1 -1
  554. package/dest/kernel/utils/index.js +0 -1
  555. package/dest/keys/derivation.d.ts +47 -7
  556. package/dest/keys/derivation.d.ts.map +1 -1
  557. package/dest/keys/derivation.js +65 -29
  558. package/dest/keys/key_types.d.ts +3 -3
  559. package/dest/keys/key_types.d.ts.map +1 -1
  560. package/dest/keys/public_key.d.ts +22 -3
  561. package/dest/keys/public_key.d.ts.map +1 -1
  562. package/dest/keys/public_key.js +20 -1
  563. package/dest/keys/public_keys.d.ts +57 -79
  564. package/dest/keys/public_keys.d.ts.map +1 -1
  565. package/dest/keys/public_keys.js +104 -75
  566. package/dest/keys/utils.d.ts +1 -1
  567. package/dest/keys/utils.d.ts.map +1 -1
  568. package/dest/keys/utils.js +8 -4
  569. package/dest/kv-store/config.d.ts +14 -0
  570. package/dest/kv-store/config.d.ts.map +1 -0
  571. package/dest/kv-store/config.js +21 -0
  572. package/dest/kv-store/index.d.ts +2 -0
  573. package/dest/kv-store/index.d.ts.map +1 -0
  574. package/dest/kv-store/index.js +1 -0
  575. package/dest/l1-contracts/index.d.ts +2 -2
  576. package/dest/l1-contracts/index.d.ts.map +1 -1
  577. package/dest/l1-contracts/index.js +1 -1
  578. package/dest/logs/app_tagging_secret.d.ts +69 -0
  579. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  580. package/dest/logs/app_tagging_secret.js +116 -0
  581. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  582. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  583. package/dest/logs/app_tagging_secret_kind.js +17 -0
  584. package/dest/logs/contract_class_log.d.ts +17 -36
  585. package/dest/logs/contract_class_log.d.ts.map +1 -1
  586. package/dest/logs/contract_class_log.js +16 -16
  587. package/dest/logs/debug_log.d.ts +2 -2
  588. package/dest/logs/debug_log.d.ts.map +1 -1
  589. package/dest/logs/debug_log.js +1 -1
  590. package/dest/logs/debug_log_store.d.ts +30 -0
  591. package/dest/logs/debug_log_store.d.ts.map +1 -0
  592. package/dest/logs/debug_log_store.js +30 -0
  593. package/dest/logs/index.d.ts +11 -8
  594. package/dest/logs/index.d.ts.map +1 -1
  595. package/dest/logs/index.js +10 -7
  596. package/dest/logs/log_cursor.d.ts +51 -0
  597. package/dest/logs/log_cursor.d.ts.map +1 -0
  598. package/dest/logs/log_cursor.js +82 -0
  599. package/dest/logs/log_result.d.ts +54 -0
  600. package/dest/logs/log_result.d.ts.map +1 -0
  601. package/dest/logs/log_result.js +56 -0
  602. package/dest/logs/logs_query.d.ts +82 -0
  603. package/dest/logs/logs_query.d.ts.map +1 -0
  604. package/dest/logs/logs_query.js +50 -0
  605. package/dest/logs/message_context.d.ts +4 -16
  606. package/dest/logs/message_context.d.ts.map +1 -1
  607. package/dest/logs/message_context.js +1 -48
  608. package/dest/logs/pending_tagged_log.d.ts +6 -9
  609. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  610. package/dest/logs/pending_tagged_log.js +1 -31
  611. package/dest/logs/pre_tag.d.ts +14 -22
  612. package/dest/logs/pre_tag.d.ts.map +1 -1
  613. package/dest/logs/pre_tag.js +2 -2
  614. package/dest/logs/private_log.d.ts +9 -14
  615. package/dest/logs/private_log.d.ts.map +1 -1
  616. package/dest/logs/private_log.js +12 -6
  617. package/dest/logs/public_log.d.ts +6 -4
  618. package/dest/logs/public_log.d.ts.map +1 -1
  619. package/dest/logs/public_log.js +9 -3
  620. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  621. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  622. package/dest/logs/query_all_logs_by_tags.js +64 -0
  623. package/dest/logs/shared_secret_derivation.d.ts +33 -9
  624. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  625. package/dest/logs/shared_secret_derivation.js +50 -11
  626. package/dest/logs/siloed_tag.d.ts +26 -0
  627. package/dest/logs/siloed_tag.d.ts.map +1 -0
  628. package/dest/logs/siloed_tag.js +42 -0
  629. package/dest/logs/tag.d.ts +20 -0
  630. package/dest/logs/tag.d.ts.map +1 -0
  631. package/dest/logs/tag.js +34 -0
  632. package/dest/logs/tagging_index_range.d.ts +22 -0
  633. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  634. package/dest/logs/tagging_index_range.js +8 -0
  635. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  636. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  637. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  638. package/dest/messaging/in_hash.d.ts +5 -3
  639. package/dest/messaging/in_hash.d.ts.map +1 -1
  640. package/dest/messaging/in_hash.js +4 -2
  641. package/dest/messaging/inbox_leaf.d.ts +10 -7
  642. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  643. package/dest/messaging/inbox_leaf.js +10 -9
  644. package/dest/messaging/index.d.ts +2 -1
  645. package/dest/messaging/index.d.ts.map +1 -1
  646. package/dest/messaging/index.js +1 -0
  647. package/dest/messaging/l1_actor.d.ts +8 -2
  648. package/dest/messaging/l1_actor.d.ts.map +1 -1
  649. package/dest/messaging/l1_actor.js +2 -2
  650. package/dest/messaging/l1_to_l2_message.d.ts +31 -4
  651. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  652. package/dest/messaging/l1_to_l2_message.js +40 -17
  653. package/dest/messaging/l1_to_l2_message_source.d.ts +7 -16
  654. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  655. package/dest/messaging/l2_actor.d.ts +8 -2
  656. package/dest/messaging/l2_actor.d.ts.map +1 -1
  657. package/dest/messaging/l2_actor.js +2 -2
  658. package/dest/messaging/l2_to_l1_membership.d.ts +153 -8
  659. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  660. package/dest/messaging/l2_to_l1_membership.js +269 -48
  661. package/dest/messaging/l2_to_l1_message.d.ts +40 -113
  662. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  663. package/dest/messaging/l2_to_l1_message.js +25 -13
  664. package/dest/messaging/out_hash.d.ts +42 -4
  665. package/dest/messaging/out_hash.d.ts.map +1 -1
  666. package/dest/messaging/out_hash.js +55 -20
  667. package/dest/noir/index.d.ts +7 -5
  668. package/dest/noir/index.d.ts.map +1 -1
  669. package/dest/note/index.d.ts +1 -2
  670. package/dest/note/index.d.ts.map +1 -1
  671. package/dest/note/index.js +0 -1
  672. package/dest/note/note.d.ts +3 -3
  673. package/dest/note/note.d.ts.map +1 -1
  674. package/dest/note/note.js +5 -2
  675. package/dest/note/note_dao.d.ts +41 -6
  676. package/dest/note/note_dao.d.ts.map +1 -1
  677. package/dest/note/note_dao.js +19 -13
  678. package/dest/p2p/attestation_utils.d.ts +13 -3
  679. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  680. package/dest/p2p/attestation_utils.js +54 -2
  681. package/dest/p2p/block_proposal.d.ts +127 -31
  682. package/dest/p2p/block_proposal.d.ts.map +1 -1
  683. package/dest/p2p/block_proposal.js +169 -51
  684. package/dest/p2p/checkpoint_attestation.d.ts +97 -0
  685. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  686. package/dest/p2p/checkpoint_attestation.js +113 -0
  687. package/dest/p2p/checkpoint_proposal.d.ts +194 -0
  688. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  689. package/dest/p2p/checkpoint_proposal.js +241 -0
  690. package/dest/p2p/client_type.d.ts +2 -5
  691. package/dest/p2p/client_type.d.ts.map +1 -1
  692. package/dest/p2p/client_type.js +0 -7
  693. package/dest/p2p/consensus_payload.d.ts +42 -26
  694. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  695. package/dest/p2p/consensus_payload.js +50 -26
  696. package/dest/p2p/constants.d.ts +5 -0
  697. package/dest/p2p/constants.d.ts.map +1 -0
  698. package/dest/p2p/constants.js +3 -0
  699. package/dest/p2p/gossipable.d.ts +7 -6
  700. package/dest/p2p/gossipable.d.ts.map +1 -1
  701. package/dest/p2p/gossipable.js +16 -5
  702. package/dest/p2p/index.d.ts +5 -4
  703. package/dest/p2p/index.d.ts.map +1 -1
  704. package/dest/p2p/index.js +4 -3
  705. package/dest/p2p/message_validator.d.ts +18 -3
  706. package/dest/p2p/message_validator.d.ts.map +1 -1
  707. package/dest/p2p/message_validator.js +2 -1
  708. package/dest/p2p/peer_error.d.ts +3 -1
  709. package/dest/p2p/peer_error.d.ts.map +1 -1
  710. package/dest/p2p/peer_error.js +5 -0
  711. package/dest/p2p/signature_utils.d.ts +35 -15
  712. package/dest/p2p/signature_utils.d.ts.map +1 -1
  713. package/dest/p2p/signature_utils.js +126 -18
  714. package/dest/p2p/signed_txs.d.ts +44 -0
  715. package/dest/p2p/signed_txs.d.ts.map +1 -0
  716. package/dest/p2p/signed_txs.js +77 -0
  717. package/dest/p2p/topic_type.d.ts +5 -5
  718. package/dest/p2p/topic_type.d.ts.map +1 -1
  719. package/dest/p2p/topic_type.js +9 -19
  720. package/dest/parity/parity_base_private_inputs.d.ts +11 -5
  721. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  722. package/dest/parity/parity_base_private_inputs.js +8 -6
  723. package/dest/parity/parity_public_inputs.d.ts +12 -5
  724. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  725. package/dest/parity/parity_public_inputs.js +7 -4
  726. package/dest/parity/parity_root_private_inputs.d.ts +3 -2
  727. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  728. package/dest/proofs/chonk_proof.d.ts +58 -8
  729. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  730. package/dest/proofs/chonk_proof.js +123 -21
  731. package/dest/proofs/proof.d.ts +5 -2
  732. package/dest/proofs/proof.d.ts.map +1 -1
  733. package/dest/proofs/proof.js +1 -1
  734. package/dest/proofs/proof_data.d.ts +13 -1
  735. package/dest/proofs/proof_data.d.ts.map +1 -1
  736. package/dest/proofs/proof_data.js +17 -0
  737. package/dest/proofs/recursive_proof.d.ts +12 -3
  738. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  739. package/dest/proofs/recursive_proof.js +1 -1
  740. package/dest/rollup/avm_proof_data.d.ts +4 -6
  741. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  742. package/dest/rollup/avm_proof_data.js +1 -9
  743. package/dest/rollup/base_rollup_hints.d.ts +35 -2
  744. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  745. package/dest/rollup/base_rollup_hints.js +1 -1
  746. package/dest/rollup/block_constant_data.d.ts +13 -2
  747. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  748. package/dest/rollup/block_constant_data.js +1 -1
  749. package/dest/rollup/block_headers_hash.d.ts +2 -2
  750. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  751. package/dest/rollup/block_headers_hash.js +10 -4
  752. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +5 -2
  753. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  754. package/dest/rollup/block_rollup_public_inputs.d.ts +59 -13
  755. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  756. package/dest/rollup/block_rollup_public_inputs.js +21 -13
  757. package/dest/rollup/block_root_rollup_private_inputs.d.ts +70 -7
  758. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  759. package/dest/rollup/block_root_rollup_private_inputs.js +1 -1
  760. package/dest/rollup/checkpoint_constant_data.d.ts +12 -2
  761. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  762. package/dest/rollup/checkpoint_constant_data.js +5 -2
  763. package/dest/rollup/checkpoint_header.d.ts +54 -15
  764. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  765. package/dest/rollup/checkpoint_header.js +70 -27
  766. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +5 -2
  767. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  768. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +56 -9
  769. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  770. package/dest/rollup/checkpoint_rollup_public_inputs.js +21 -4
  771. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +50 -8
  772. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  773. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +15 -3
  774. package/dest/rollup/epoch_constant_data.d.ts +17 -2
  775. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  776. package/dest/rollup/epoch_constant_data.js +1 -1
  777. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  778. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  779. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +3 -3
  780. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  781. package/dest/rollup/public_chonk_verifier_private_inputs.js +1 -1
  782. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +3 -3
  783. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  784. package/dest/rollup/public_chonk_verifier_public_inputs.js +1 -1
  785. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  786. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  787. package/dest/rollup/public_tx_base_rollup_private_inputs.js +2 -2
  788. package/dest/rollup/root_rollup_private_inputs.d.ts +7 -2
  789. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  790. package/dest/rollup/root_rollup_public_inputs.d.ts +23 -8
  791. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  792. package/dest/rollup/root_rollup_public_inputs.js +11 -5
  793. package/dest/rollup/tree_snapshot_diff_hints.d.ts +25 -2
  794. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  795. package/dest/rollup/tree_snapshot_diff_hints.js +1 -1
  796. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +5 -2
  797. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  798. package/dest/rollup/tx_rollup_public_inputs.d.ts +31 -3
  799. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  800. package/dest/rollup/tx_rollup_public_inputs.js +1 -1
  801. package/dest/schemas/schemas.d.ts +36 -79
  802. package/dest/schemas/schemas.d.ts.map +1 -1
  803. package/dest/schemas/schemas.js +3 -2
  804. package/dest/slashing/helpers.d.ts +2 -2
  805. package/dest/slashing/helpers.d.ts.map +1 -1
  806. package/dest/slashing/helpers.js +16 -7
  807. package/dest/slashing/index.d.ts +2 -3
  808. package/dest/slashing/index.d.ts.map +1 -1
  809. package/dest/slashing/index.js +1 -2
  810. package/dest/slashing/serialization.d.ts +2 -6
  811. package/dest/slashing/serialization.d.ts.map +1 -1
  812. package/dest/slashing/serialization.js +0 -60
  813. package/dest/slashing/types.d.ts +22 -113
  814. package/dest/slashing/types.d.ts.map +1 -1
  815. package/dest/slashing/types.js +31 -27
  816. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  817. package/dest/slashing/votes.d.ts.map +1 -0
  818. package/dest/slashing/{tally.js → votes.js} +35 -3
  819. package/dest/snapshots/types.d.ts +15 -78
  820. package/dest/snapshots/types.d.ts.map +1 -1
  821. package/dest/snapshots/types.js +5 -5
  822. package/dest/stats/stats.d.ts +11 -9
  823. package/dest/stats/stats.d.ts.map +1 -1
  824. package/dest/tests/factories.d.ts +52 -53
  825. package/dest/tests/factories.d.ts.map +1 -1
  826. package/dest/tests/factories.js +170 -130
  827. package/dest/tests/jest.js +1 -1
  828. package/dest/tests/mocks.d.ts +97 -21
  829. package/dest/tests/mocks.d.ts.map +1 -1
  830. package/dest/tests/mocks.js +205 -82
  831. package/dest/timetable/budgets.d.ts +57 -0
  832. package/dest/timetable/budgets.d.ts.map +1 -0
  833. package/dest/timetable/budgets.js +56 -0
  834. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  835. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  836. package/dest/timetable/build_proposer_timetable.js +17 -0
  837. package/dest/timetable/consensus_timetable.d.ts +70 -0
  838. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  839. package/dest/timetable/consensus_timetable.js +89 -0
  840. package/dest/timetable/index.d.ts +5 -0
  841. package/dest/timetable/index.d.ts.map +1 -0
  842. package/dest/timetable/index.js +4 -0
  843. package/dest/timetable/proposer_timetable.d.ts +106 -0
  844. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  845. package/dest/timetable/proposer_timetable.js +132 -0
  846. package/dest/trees/append_only_tree_snapshot.d.ts +22 -15
  847. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  848. package/dest/trees/append_only_tree_snapshot.js +10 -5
  849. package/dest/trees/database_public_state_source.d.ts +2 -2
  850. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  851. package/dest/trees/database_public_state_source.js +1 -1
  852. package/dest/trees/nullifier_leaf.d.ts +32 -43
  853. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  854. package/dest/trees/nullifier_leaf.js +4 -1
  855. package/dest/trees/nullifier_membership_witness.d.ts +26 -63
  856. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  857. package/dest/trees/nullifier_membership_witness.js +0 -21
  858. package/dest/trees/public_data_leaf.d.ts +38 -54
  859. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  860. package/dest/trees/public_data_leaf.js +8 -7
  861. package/dest/trees/public_data_witness.d.ts +29 -71
  862. package/dest/trees/public_data_witness.d.ts.map +1 -1
  863. package/dest/trees/public_data_witness.js +0 -27
  864. package/dest/tx/block_header.d.ts +27 -11
  865. package/dest/tx/block_header.d.ts.map +1 -1
  866. package/dest/tx/block_header.js +26 -8
  867. package/dest/tx/call_context.d.ts +17 -15
  868. package/dest/tx/call_context.d.ts.map +1 -1
  869. package/dest/tx/call_context.js +3 -1
  870. package/dest/tx/capsule.d.ts +11 -4
  871. package/dest/tx/capsule.d.ts.map +1 -1
  872. package/dest/tx/capsule.js +10 -4
  873. package/dest/tx/execution_payload.d.ts +9 -1
  874. package/dest/tx/execution_payload.d.ts.map +1 -1
  875. package/dest/tx/execution_payload.js +1 -1
  876. package/dest/tx/fee_provider.d.ts +10 -0
  877. package/dest/tx/fee_provider.d.ts.map +1 -0
  878. package/dest/tx/fee_provider.js +1 -0
  879. package/dest/tx/function_data.d.ts +8 -12
  880. package/dest/tx/function_data.d.ts.map +1 -1
  881. package/dest/tx/function_data.js +1 -1
  882. package/dest/tx/global_variable_builder.d.ts +5 -14
  883. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  884. package/dest/tx/global_variables.d.ts +30 -50
  885. package/dest/tx/global_variables.d.ts.map +1 -1
  886. package/dest/tx/global_variables.js +15 -17
  887. package/dest/tx/hashed_values.d.ts +11 -4
  888. package/dest/tx/hashed_values.d.ts.map +1 -1
  889. package/dest/tx/hashed_values.js +7 -4
  890. package/dest/tx/in_tx.d.ts +14 -0
  891. package/dest/tx/in_tx.d.ts.map +1 -0
  892. package/dest/tx/in_tx.js +14 -0
  893. package/dest/tx/index.d.ts +3 -3
  894. package/dest/tx/index.d.ts.map +1 -1
  895. package/dest/tx/index.js +2 -2
  896. package/dest/tx/indexed_tx_effect.d.ts +10 -20
  897. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  898. package/dest/tx/indexed_tx_effect.js +13 -9
  899. package/dest/tx/offchain_effect.d.ts +2 -2
  900. package/dest/tx/offchain_effect.d.ts.map +1 -1
  901. package/dest/tx/offchain_effect.js +1 -1
  902. package/dest/tx/partial_state_reference.d.ts +26 -66
  903. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  904. package/dest/tx/partial_state_reference.js +6 -3
  905. package/dest/tx/private_execution_result.d.ts +33 -26
  906. package/dest/tx/private_execution_result.d.ts.map +1 -1
  907. package/dest/tx/private_execution_result.js +10 -27
  908. package/dest/tx/private_tx_constant_data.d.ts +34 -3
  909. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  910. package/dest/tx/private_tx_constant_data.js +14 -5
  911. package/dest/tx/processed_tx.d.ts +4 -3
  912. package/dest/tx/processed_tx.d.ts.map +1 -1
  913. package/dest/tx/processed_tx.js +4 -6
  914. package/dest/tx/profiling.d.ts +116 -279
  915. package/dest/tx/profiling.d.ts.map +1 -1
  916. package/dest/tx/profiling.js +62 -13
  917. package/dest/tx/protocol_contracts.d.ts +6 -10
  918. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  919. package/dest/tx/protocol_contracts.js +3 -3
  920. package/dest/tx/proven_tx.d.ts +30 -74
  921. package/dest/tx/proven_tx.d.ts.map +1 -1
  922. package/dest/tx/proven_tx.js +6 -0
  923. package/dest/tx/public_call_request_with_calldata.d.ts +11 -4
  924. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  925. package/dest/tx/public_call_request_with_calldata.js +10 -5
  926. package/dest/tx/public_simulation_output.d.ts +5 -3
  927. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  928. package/dest/tx/public_simulation_output.js +8 -4
  929. package/dest/tx/simulated_tx.d.ts +77 -125
  930. package/dest/tx/simulated_tx.d.ts.map +1 -1
  931. package/dest/tx/simulated_tx.js +17 -12
  932. package/dest/tx/state_reference.d.ts +33 -118
  933. package/dest/tx/state_reference.d.ts.map +1 -1
  934. package/dest/tx/state_reference.js +9 -5
  935. package/dest/tx/tree_snapshots.d.ts +28 -85
  936. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  937. package/dest/tx/tree_snapshots.js +9 -5
  938. package/dest/tx/tx.d.ts +60 -20
  939. package/dest/tx/tx.d.ts.map +1 -1
  940. package/dest/tx/tx.js +80 -34
  941. package/dest/tx/tx_constant_data.d.ts +5 -4
  942. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  943. package/dest/tx/tx_constant_data.js +7 -4
  944. package/dest/tx/tx_context.d.ts +34 -132
  945. package/dest/tx/tx_context.d.ts.map +1 -1
  946. package/dest/tx/tx_context.js +7 -7
  947. package/dest/tx/tx_effect.d.ts +33 -7
  948. package/dest/tx/tx_effect.d.ts.map +1 -1
  949. package/dest/tx/tx_effect.js +8 -11
  950. package/dest/tx/tx_execution_request.d.ts +31 -2
  951. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  952. package/dest/tx/tx_execution_request.js +7 -3
  953. package/dest/tx/tx_hash.d.ts +8 -5
  954. package/dest/tx/tx_hash.d.ts.map +1 -1
  955. package/dest/tx/tx_hash.js +14 -6
  956. package/dest/tx/tx_receipt.d.ts +170 -36
  957. package/dest/tx/tx_receipt.d.ts.map +1 -1
  958. package/dest/tx/tx_receipt.js +169 -44
  959. package/dest/tx/tx_request.d.ts +7 -2
  960. package/dest/tx/tx_request.d.ts.map +1 -1
  961. package/dest/tx/tx_request.js +4 -4
  962. package/dest/tx/validator/error_texts.d.ts +12 -3
  963. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  964. package/dest/tx/validator/error_texts.js +14 -2
  965. package/dest/tx/validator/tx_validator.d.ts +6 -31
  966. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  967. package/dest/tx/validator/tx_validator.js +4 -8
  968. package/dest/types/shared.d.ts +7 -12
  969. package/dest/types/shared.d.ts.map +1 -1
  970. package/dest/types/shared.js +6 -12
  971. package/dest/update-checker/dev_version.d.ts +3 -0
  972. package/dest/update-checker/dev_version.d.ts.map +1 -0
  973. package/dest/update-checker/dev_version.js +1 -0
  974. package/dest/update-checker/index.d.ts +4 -2
  975. package/dest/update-checker/index.d.ts.map +1 -1
  976. package/dest/update-checker/index.js +3 -1
  977. package/dest/update-checker/package_version.d.ts +6 -0
  978. package/dest/update-checker/package_version.d.ts.map +1 -0
  979. package/dest/update-checker/package_version.js +13 -0
  980. package/dest/update-checker/version_checker.d.ts +25 -0
  981. package/dest/update-checker/version_checker.d.ts.map +1 -0
  982. package/dest/update-checker/version_checker.js +50 -0
  983. package/dest/validators/errors.d.ts +7 -2
  984. package/dest/validators/errors.d.ts.map +1 -1
  985. package/dest/validators/errors.js +7 -0
  986. package/dest/validators/schemas.d.ts +147 -614
  987. package/dest/validators/schemas.d.ts.map +1 -1
  988. package/dest/validators/schemas.js +22 -19
  989. package/dest/validators/types.d.ts +21 -4
  990. package/dest/validators/types.d.ts.map +1 -1
  991. package/dest/versioning/versioning.d.ts +5 -3
  992. package/dest/versioning/versioning.d.ts.map +1 -1
  993. package/dest/versioning/versioning.js +5 -2
  994. package/dest/vks/verification_key.d.ts +4 -118
  995. package/dest/vks/verification_key.d.ts.map +1 -1
  996. package/dest/vks/verification_key.js +5 -126
  997. package/dest/vks/vk_data.d.ts +8 -2
  998. package/dest/vks/vk_data.d.ts.map +1 -1
  999. package/dest/vks/vk_data.js +1 -1
  1000. package/dest/world-state/genesis_data.d.ts +13 -0
  1001. package/dest/world-state/genesis_data.d.ts.map +1 -0
  1002. package/dest/world-state/genesis_data.js +7 -0
  1003. package/dest/world-state/index.d.ts +2 -1
  1004. package/dest/world-state/index.d.ts.map +1 -1
  1005. package/dest/world-state/index.js +1 -0
  1006. package/dest/world-state/world_state_revision.d.ts +11 -39
  1007. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  1008. package/dest/world-state/world_state_revision.js +7 -21
  1009. package/dest/zkpassport/index.d.ts +4 -5
  1010. package/dest/zkpassport/index.d.ts.map +1 -1
  1011. package/dest/zkpassport/index.js +11 -11
  1012. package/package.json +37 -16
  1013. package/src/abi/abi.ts +122 -51
  1014. package/src/abi/authorization_selector.ts +5 -10
  1015. package/src/abi/buffer.ts +39 -6
  1016. package/src/abi/contract_artifact.ts +54 -25
  1017. package/src/abi/decoder.ts +37 -83
  1018. package/src/abi/encoder.ts +86 -7
  1019. package/src/abi/event_metadata_definition.ts +2 -0
  1020. package/src/abi/event_selector.ts +5 -10
  1021. package/src/abi/function_call.ts +26 -4
  1022. package/src/abi/function_selector.ts +15 -15
  1023. package/src/abi/function_signature_decoder.ts +77 -0
  1024. package/src/abi/index.ts +1 -0
  1025. package/src/abi/note_selector.ts +5 -14
  1026. package/src/abi/selector.ts +2 -2
  1027. package/src/abi/utils.ts +44 -0
  1028. package/src/auth_witness/auth_witness.ts +5 -5
  1029. package/src/avm/avm.ts +122 -14
  1030. package/src/avm/avm_accumulated_data.ts +1 -1
  1031. package/src/avm/avm_circuit_public_inputs.ts +1 -1
  1032. package/src/avm/index.ts +0 -5
  1033. package/src/avm/message_pack.ts +14 -4
  1034. package/src/avm/public_data_read.ts +1 -1
  1035. package/src/avm/public_data_write.ts +1 -1
  1036. package/src/avm/revert_code.ts +21 -26
  1037. package/src/aztec-address/index.ts +52 -18
  1038. package/src/block/attestation_info.ts +19 -11
  1039. package/src/block/block_data.ts +25 -0
  1040. package/src/block/block_hash.ts +32 -24
  1041. package/src/block/block_parameter.ts +74 -4
  1042. package/src/block/body.ts +2 -1
  1043. package/src/block/in_block.ts +19 -10
  1044. package/src/block/index.ts +1 -3
  1045. package/src/block/l2_block.ts +116 -143
  1046. package/src/block/l2_block_info.ts +9 -7
  1047. package/src/block/l2_block_source.ts +362 -110
  1048. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  1049. package/src/block/l2_block_stream/index.ts +2 -0
  1050. package/src/block/l2_block_stream/interfaces.ts +108 -7
  1051. package/src/block/l2_block_stream/l2_block_stream.ts +252 -79
  1052. package/src/block/l2_block_stream/l2_tips_memory_store.ts +41 -59
  1053. package/src/block/l2_block_stream/l2_tips_store_base.ts +251 -0
  1054. package/src/block/proposal/attestations_and_signers.ts +86 -25
  1055. package/src/block/proposal/committee_attestation.ts +1 -1
  1056. package/src/block/test/l2_tips_store_test_suite.ts +736 -42
  1057. package/src/block/validate_block_result.ts +86 -35
  1058. package/src/checkpoint/checkpoint.ts +132 -25
  1059. package/src/checkpoint/checkpoint_data.ts +91 -0
  1060. package/src/checkpoint/checkpoint_info.ts +52 -0
  1061. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  1062. package/src/checkpoint/digest.ts +28 -0
  1063. package/src/checkpoint/index.ts +7 -0
  1064. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  1065. package/src/checkpoint/published_checkpoint.ts +26 -9
  1066. package/src/checkpoint/simulation_overrides.ts +171 -0
  1067. package/src/checkpoint/validate.ts +240 -0
  1068. package/src/config/chain-config.ts +13 -16
  1069. package/src/config/index.ts +2 -0
  1070. package/src/config/network-consensus-config.ts +291 -0
  1071. package/src/config/node-rpc-config.ts +1 -1
  1072. package/src/config/sequencer-config.ts +96 -0
  1073. package/src/contract/artifact_hash.ts +2 -2
  1074. package/src/contract/complete_address.ts +8 -4
  1075. package/src/contract/contract_address.ts +16 -15
  1076. package/src/contract/contract_class.ts +7 -6
  1077. package/src/contract/contract_class_id.ts +9 -8
  1078. package/src/contract/contract_instance.ts +74 -4
  1079. package/src/contract/contract_instance_update.ts +1 -1
  1080. package/src/contract/index.ts +0 -5
  1081. package/src/contract/interfaces/contract_class.ts +48 -97
  1082. package/src/contract/interfaces/contract_data_source.ts +3 -5
  1083. package/src/contract/interfaces/contract_instance.ts +77 -23
  1084. package/src/contract/interfaces/contract_instance_update.ts +12 -10
  1085. package/src/contract/interfaces/node-info.ts +14 -0
  1086. package/src/contract/partial_address.ts +9 -3
  1087. package/src/contract/private_function.ts +8 -6
  1088. package/src/database-version/database_version.ts +87 -0
  1089. package/src/database-version/version_manager.ts +114 -83
  1090. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +11 -12
  1091. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +1 -1
  1092. package/src/delayed_public_mutable/scheduled_value_change.ts +1 -1
  1093. package/src/deserialization/index.ts +54 -0
  1094. package/src/epoch-helpers/index.ts +51 -10
  1095. package/src/errors/simulation_error.ts +1 -1
  1096. package/src/fees/transaction_fee.ts +1 -1
  1097. package/src/file-store/factory.ts +20 -4
  1098. package/src/file-store/http.ts +29 -10
  1099. package/src/file-store/index.ts +2 -0
  1100. package/src/file-store/local.ts +15 -5
  1101. package/src/file-store/memory.ts +94 -0
  1102. package/src/file-store/s3.ts +12 -3
  1103. package/src/gas/README.md +318 -0
  1104. package/src/gas/fee_math.ts +120 -0
  1105. package/src/gas/gas.ts +9 -4
  1106. package/src/gas/gas_fees.ts +30 -11
  1107. package/src/gas/gas_settings.ts +64 -16
  1108. package/src/gas/index.ts +2 -0
  1109. package/src/gas/tx_gas_limits.ts +123 -0
  1110. package/src/ha-signing/config.ts +170 -0
  1111. package/src/ha-signing/index.ts +29 -0
  1112. package/src/ha-signing/local_config.ts +65 -0
  1113. package/src/ha-signing/types.ts +126 -0
  1114. package/src/hash/hash.ts +74 -27
  1115. package/src/hash/map_slot.ts +4 -3
  1116. package/src/interfaces/allowed_element.ts +35 -13
  1117. package/src/interfaces/api_limit.ts +2 -0
  1118. package/src/interfaces/archiver.ts +98 -86
  1119. package/src/interfaces/aztec-node-admin.ts +64 -22
  1120. package/src/interfaces/aztec-node-debug.ts +92 -0
  1121. package/src/interfaces/aztec-node.ts +445 -329
  1122. package/src/interfaces/block-builder.ts +106 -28
  1123. package/src/interfaces/block_response.ts +92 -0
  1124. package/src/interfaces/chain_tips.ts +16 -0
  1125. package/src/interfaces/checkpoint_parameter.ts +20 -0
  1126. package/src/interfaces/checkpoint_response.ts +84 -0
  1127. package/src/interfaces/client.ts +8 -1
  1128. package/src/interfaces/configs.ts +161 -39
  1129. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  1130. package/src/interfaces/l1_publish_info.ts +40 -0
  1131. package/src/interfaces/l2_logs_source.ts +13 -30
  1132. package/src/interfaces/merkle_tree_operations.ts +24 -24
  1133. package/src/interfaces/p2p-bootstrap.ts +2 -2
  1134. package/src/interfaces/p2p.ts +63 -38
  1135. package/src/interfaces/private_kernel_prover.ts +192 -13
  1136. package/src/interfaces/prover-agent.ts +1 -1
  1137. package/src/interfaces/prover-broker.ts +22 -0
  1138. package/src/interfaces/prover-client.ts +46 -18
  1139. package/src/interfaces/prover-node.ts +36 -21
  1140. package/src/interfaces/proving-job-source.ts +4 -4
  1141. package/src/interfaces/proving-job.ts +6 -15
  1142. package/src/interfaces/public_state_source.ts +1 -1
  1143. package/src/interfaces/public_storage_override.ts +26 -0
  1144. package/src/interfaces/server.ts +5 -2
  1145. package/src/interfaces/server_circuit_prover.ts +4 -4
  1146. package/src/interfaces/slasher.ts +41 -28
  1147. package/src/interfaces/tx_provider.ts +8 -2
  1148. package/src/interfaces/validator.ts +162 -48
  1149. package/src/interfaces/world_state.ts +35 -13
  1150. package/src/kernel/claimed_length_array.ts +1 -1
  1151. package/src/kernel/hints/build_note_hash_read_request_hints.ts +34 -30
  1152. package/src/kernel/hints/build_nullifier_read_request_hints.ts +33 -33
  1153. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  1154. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -114
  1155. package/src/kernel/hints/index.ts +2 -3
  1156. package/src/kernel/hints/key_validation_hint.ts +1 -1
  1157. package/src/kernel/hints/key_validation_request.ts +19 -16
  1158. package/src/kernel/hints/key_validation_request_and_separator.ts +49 -0
  1159. package/src/kernel/hints/note_hash_read_request_hints.ts +1 -1
  1160. package/src/kernel/hints/read_request.ts +2 -2
  1161. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +11 -11
  1162. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  1163. package/src/kernel/hints/transient_data_squashing_hint.ts +1 -1
  1164. package/src/kernel/index.ts +9 -1
  1165. package/src/kernel/log_hash.ts +37 -14
  1166. package/src/kernel/note_hash.ts +2 -2
  1167. package/src/kernel/nullifier.ts +2 -2
  1168. package/src/kernel/padded_side_effects.ts +1 -1
  1169. package/src/kernel/private_call_data.ts +1 -1
  1170. package/src/kernel/private_call_request.ts +1 -1
  1171. package/src/kernel/private_circuit_public_inputs.ts +105 -94
  1172. package/src/kernel/private_context_inputs.ts +10 -3
  1173. package/src/kernel/private_kernel_circuit_public_inputs.ts +12 -10
  1174. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  1175. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  1176. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  1177. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  1178. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +1 -7
  1179. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  1180. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  1181. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  1182. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  1183. package/src/kernel/private_kernel_prover_output.ts +4 -0
  1184. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  1185. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  1186. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  1187. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +43 -19
  1188. package/src/kernel/private_log_data.ts +5 -2
  1189. package/src/kernel/private_to_avm_accumulated_data.ts +17 -6
  1190. package/src/kernel/private_to_public_accumulated_data.ts +10 -4
  1191. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  1192. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +16 -10
  1193. package/src/kernel/private_to_rollup_accumulated_data.ts +9 -4
  1194. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +15 -15
  1195. package/src/kernel/private_validation_requests.ts +8 -8
  1196. package/src/kernel/public_call_request.ts +23 -8
  1197. package/src/kernel/utils/index.ts +0 -1
  1198. package/src/keys/derivation.ts +89 -29
  1199. package/src/keys/key_types.ts +6 -2
  1200. package/src/keys/public_key.ts +26 -2
  1201. package/src/keys/public_keys.ts +127 -112
  1202. package/src/keys/utils.ts +8 -4
  1203. package/src/kv-store/config.ts +29 -0
  1204. package/src/kv-store/index.ts +1 -0
  1205. package/src/l1-contracts/index.ts +1 -1
  1206. package/src/logs/app_tagging_secret.ts +160 -0
  1207. package/src/logs/app_tagging_secret_kind.ts +21 -0
  1208. package/src/logs/contract_class_log.ts +17 -16
  1209. package/src/logs/debug_log.ts +1 -1
  1210. package/src/logs/debug_log_store.ts +54 -0
  1211. package/src/logs/index.ts +10 -7
  1212. package/src/logs/log_cursor.ts +110 -0
  1213. package/src/logs/log_result.ts +104 -0
  1214. package/src/logs/logs_query.ts +138 -0
  1215. package/src/logs/message_context.ts +6 -50
  1216. package/src/logs/pending_tagged_log.ts +6 -35
  1217. package/src/logs/pre_tag.ts +3 -6
  1218. package/src/logs/private_log.ts +12 -5
  1219. package/src/logs/public_log.ts +12 -3
  1220. package/src/logs/query_all_logs_by_tags.ts +98 -0
  1221. package/src/logs/shared_secret_derivation.ts +56 -12
  1222. package/src/logs/siloed_tag.ts +59 -0
  1223. package/src/logs/tag.ts +42 -0
  1224. package/src/logs/tagging_index_range.ts +18 -0
  1225. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  1226. package/src/messaging/in_hash.ts +4 -2
  1227. package/src/messaging/inbox_leaf.ts +11 -10
  1228. package/src/messaging/index.ts +1 -0
  1229. package/src/messaging/l1_actor.ts +2 -2
  1230. package/src/messaging/l1_to_l2_message.ts +58 -16
  1231. package/src/messaging/l1_to_l2_message_source.ts +6 -17
  1232. package/src/messaging/l2_actor.ts +2 -2
  1233. package/src/messaging/l2_to_l1_membership.ts +342 -62
  1234. package/src/messaging/l2_to_l1_message.ts +34 -10
  1235. package/src/messaging/out_hash.ts +63 -22
  1236. package/src/noir/index.ts +6 -3
  1237. package/src/note/index.ts +0 -1
  1238. package/src/note/note.ts +5 -2
  1239. package/src/note/note_dao.ts +37 -14
  1240. package/src/p2p/attestation_utils.ts +67 -4
  1241. package/src/p2p/block_proposal.ts +305 -64
  1242. package/src/p2p/checkpoint_attestation.ts +156 -0
  1243. package/src/p2p/checkpoint_proposal.ts +428 -0
  1244. package/src/p2p/client_type.ts +0 -6
  1245. package/src/p2p/consensus_payload.ts +74 -32
  1246. package/src/p2p/constants.ts +6 -0
  1247. package/src/p2p/gossipable.ts +18 -8
  1248. package/src/p2p/index.ts +4 -3
  1249. package/src/p2p/message_validator.ts +14 -2
  1250. package/src/p2p/peer_error.ts +7 -0
  1251. package/src/p2p/signature_utils.ts +118 -21
  1252. package/src/p2p/signed_txs.ts +106 -0
  1253. package/src/p2p/topic_type.ts +10 -16
  1254. package/src/parity/parity_base_private_inputs.ts +11 -5
  1255. package/src/parity/parity_public_inputs.ts +10 -3
  1256. package/src/proofs/chonk_proof.ts +143 -19
  1257. package/src/proofs/proof.ts +1 -1
  1258. package/src/proofs/proof_data.ts +24 -0
  1259. package/src/proofs/recursive_proof.ts +1 -1
  1260. package/src/rollup/avm_proof_data.ts +3 -10
  1261. package/src/rollup/base_rollup_hints.ts +1 -1
  1262. package/src/rollup/block_constant_data.ts +1 -1
  1263. package/src/rollup/block_headers_hash.ts +13 -4
  1264. package/src/rollup/block_rollup_public_inputs.ts +19 -12
  1265. package/src/rollup/block_root_rollup_private_inputs.ts +1 -1
  1266. package/src/rollup/checkpoint_constant_data.ts +2 -1
  1267. package/src/rollup/checkpoint_header.ts +86 -25
  1268. package/src/rollup/checkpoint_rollup_public_inputs.ts +28 -6
  1269. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +16 -2
  1270. package/src/rollup/epoch_constant_data.ts +1 -1
  1271. package/src/rollup/public_chonk_verifier_private_inputs.ts +1 -1
  1272. package/src/rollup/public_chonk_verifier_public_inputs.ts +1 -1
  1273. package/src/rollup/public_tx_base_rollup_private_inputs.ts +2 -2
  1274. package/src/rollup/root_rollup_public_inputs.ts +17 -8
  1275. package/src/rollup/tree_snapshot_diff_hints.ts +1 -1
  1276. package/src/rollup/tx_rollup_public_inputs.ts +1 -1
  1277. package/src/schemas/schemas.ts +12 -2
  1278. package/src/slashing/helpers.ts +21 -9
  1279. package/src/slashing/index.ts +1 -2
  1280. package/src/slashing/serialization.ts +1 -81
  1281. package/src/slashing/types.ts +47 -54
  1282. package/src/slashing/{tally.ts → votes.ts} +41 -2
  1283. package/src/snapshots/types.ts +33 -29
  1284. package/src/stats/stats.ts +20 -9
  1285. package/src/tests/factories.ts +215 -170
  1286. package/src/tests/jest.ts +1 -1
  1287. package/src/tests/mocks.ts +338 -114
  1288. package/src/timetable/README.md +609 -0
  1289. package/src/timetable/budgets.ts +87 -0
  1290. package/src/timetable/build_proposer_timetable.ts +42 -0
  1291. package/src/timetable/consensus_timetable.ts +126 -0
  1292. package/src/timetable/index.ts +4 -0
  1293. package/src/timetable/proposer_timetable.ts +190 -0
  1294. package/src/timetable/timetable-example.svg +108 -0
  1295. package/src/trees/append_only_tree_snapshot.ts +9 -4
  1296. package/src/trees/database_public_state_source.ts +1 -1
  1297. package/src/trees/nullifier_leaf.ts +5 -1
  1298. package/src/trees/nullifier_membership_witness.ts +0 -21
  1299. package/src/trees/public_data_leaf.ts +12 -6
  1300. package/src/trees/public_data_witness.ts +0 -31
  1301. package/src/tx/block_header.ts +39 -14
  1302. package/src/tx/call_context.ts +1 -1
  1303. package/src/tx/capsule.ts +11 -3
  1304. package/src/tx/execution_payload.ts +2 -1
  1305. package/src/tx/fee_provider.ts +10 -0
  1306. package/src/tx/function_data.ts +1 -1
  1307. package/src/tx/global_variable_builder.ts +7 -17
  1308. package/src/tx/global_variables.ts +20 -22
  1309. package/src/tx/hashed_values.ts +9 -4
  1310. package/src/tx/in_tx.ts +24 -0
  1311. package/src/tx/index.ts +2 -2
  1312. package/src/tx/indexed_tx_effect.ts +21 -8
  1313. package/src/tx/offchain_effect.ts +1 -1
  1314. package/src/tx/partial_state_reference.ts +9 -4
  1315. package/src/tx/private_execution_result.ts +8 -23
  1316. package/src/tx/private_tx_constant_data.ts +26 -3
  1317. package/src/tx/processed_tx.ts +11 -14
  1318. package/src/tx/profiling.ts +63 -10
  1319. package/src/tx/protocol_contracts.ts +4 -4
  1320. package/src/tx/proven_tx.ts +6 -0
  1321. package/src/tx/public_call_request_with_calldata.ts +9 -4
  1322. package/src/tx/public_simulation_output.ts +5 -1
  1323. package/src/tx/simulated_tx.ts +30 -22
  1324. package/src/tx/state_reference.ts +10 -5
  1325. package/src/tx/tree_snapshots.ts +10 -5
  1326. package/src/tx/tx.ts +100 -47
  1327. package/src/tx/tx_constant_data.ts +9 -4
  1328. package/src/tx/tx_context.ts +9 -4
  1329. package/src/tx/tx_effect.ts +5 -12
  1330. package/src/tx/tx_execution_request.ts +3 -1
  1331. package/src/tx/tx_hash.ts +21 -6
  1332. package/src/tx/tx_receipt.ts +301 -49
  1333. package/src/tx/tx_request.ts +4 -4
  1334. package/src/tx/validator/error_texts.ts +18 -2
  1335. package/src/tx/validator/tx_validator.ts +9 -11
  1336. package/src/types/shared.ts +8 -13
  1337. package/src/update-checker/dev_version.ts +2 -0
  1338. package/src/update-checker/index.ts +3 -1
  1339. package/src/update-checker/package_version.ts +17 -0
  1340. package/src/update-checker/version_checker.ts +65 -0
  1341. package/src/validators/errors.ts +10 -1
  1342. package/src/validators/schemas.ts +64 -49
  1343. package/src/validators/types.ts +25 -5
  1344. package/src/versioning/versioning.ts +6 -3
  1345. package/src/vks/verification_key.ts +5 -184
  1346. package/src/vks/vk_data.ts +1 -1
  1347. package/src/world-state/genesis_data.ts +27 -0
  1348. package/src/world-state/index.ts +1 -0
  1349. package/src/world-state/world_state_revision.ts +9 -34
  1350. package/src/zkpassport/index.ts +13 -14
  1351. package/dest/abi/mocked_keys.d.ts +0 -2
  1352. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1353. package/dest/abi/mocked_keys.js +0 -1
  1354. package/dest/avm/contract_storage_read.d.ts +0 -46
  1355. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1356. package/dest/avm/contract_storage_read.js +0 -65
  1357. package/dest/avm/contract_storage_update_request.d.ts +0 -53
  1358. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1359. package/dest/avm/contract_storage_update_request.js +0 -80
  1360. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -41
  1361. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1362. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1363. package/dest/avm/public_data_update_request.d.ts +0 -53
  1364. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1365. package/dest/avm/public_data_update_request.js +0 -65
  1366. package/dest/avm/public_inner_call_request.d.ts +0 -47
  1367. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1368. package/dest/avm/public_inner_call_request.js +0 -72
  1369. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  1370. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  1371. package/dest/block/l2_block_code_to_purge.js +0 -61
  1372. package/dest/block/l2_block_header.d.ts +0 -98
  1373. package/dest/block/l2_block_header.d.ts.map +0 -1
  1374. package/dest/block/l2_block_header.js +0 -153
  1375. package/dest/block/l2_block_new.d.ts +0 -110
  1376. package/dest/block/l2_block_new.d.ts.map +0 -1
  1377. package/dest/block/l2_block_new.js +0 -138
  1378. package/dest/block/published_l2_block.d.ts +0 -130
  1379. package/dest/block/published_l2_block.d.ts.map +0 -1
  1380. package/dest/block/published_l2_block.js +0 -48
  1381. package/dest/contract/contract_class_metadata.d.ts +0 -8
  1382. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  1383. package/dest/contract/contract_class_metadata.js +0 -1
  1384. package/dest/contract/contract_metadata.d.ts +0 -7
  1385. package/dest/contract/contract_metadata.d.ts.map +0 -1
  1386. package/dest/contract/contract_metadata.js +0 -1
  1387. package/dest/contract/deployment_info.d.ts +0 -24
  1388. package/dest/contract/deployment_info.d.ts.map +0 -1
  1389. package/dest/contract/deployment_info.js +0 -3
  1390. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1391. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1392. package/dest/contract/private_function_membership_proof.js +0 -124
  1393. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1394. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1395. package/dest/contract/utility_function_membership_proof.js +0 -87
  1396. package/dest/database-version/index.d.ts +0 -2
  1397. package/dest/database-version/index.d.ts.map +0 -1
  1398. package/dest/database-version/index.js +0 -1
  1399. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1400. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1401. package/dest/interfaces/epoch-prover.js +0 -1
  1402. package/dest/interfaces/get_logs_response.d.ts +0 -75
  1403. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1404. package/dest/interfaces/get_logs_response.js +0 -11
  1405. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1406. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1407. package/dest/interfaces/prover-coordination.js +0 -1
  1408. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -25
  1409. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1410. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1411. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1412. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1413. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -38
  1414. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1415. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1416. package/dest/kernel/utils/optional_number.d.ts +0 -25
  1417. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1418. package/dest/kernel/utils/optional_number.js +0 -42
  1419. package/dest/l1-contracts/slash_factory.d.ts +0 -44
  1420. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1421. package/dest/l1-contracts/slash_factory.js +0 -157
  1422. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1423. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1424. package/dest/logs/directional_app_tagging_secret.js +0 -63
  1425. package/dest/logs/extended_contract_class_log.d.ts +0 -49
  1426. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1427. package/dest/logs/extended_contract_class_log.js +0 -67
  1428. package/dest/logs/extended_public_log.d.ts +0 -92
  1429. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1430. package/dest/logs/extended_public_log.js +0 -73
  1431. package/dest/logs/log_filter.d.ts +0 -22
  1432. package/dest/logs/log_filter.d.ts.map +0 -1
  1433. package/dest/logs/log_filter.js +0 -11
  1434. package/dest/logs/log_id.d.ts +0 -70
  1435. package/dest/logs/log_id.d.ts.map +0 -1
  1436. package/dest/logs/log_id.js +0 -84
  1437. package/dest/logs/log_with_tx_data.d.ts +0 -19
  1438. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1439. package/dest/logs/log_with_tx_data.js +0 -49
  1440. package/dest/logs/tx_scoped_l2_log.d.ts +0 -58
  1441. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1442. package/dest/logs/tx_scoped_l2_log.js +0 -76
  1443. package/dest/note/notes_filter.d.ts +0 -27
  1444. package/dest/note/notes_filter.d.ts.map +0 -1
  1445. package/dest/note/notes_filter.js +0 -11
  1446. package/dest/p2p/block_attestation.d.ts +0 -80
  1447. package/dest/p2p/block_attestation.d.ts.map +0 -1
  1448. package/dest/p2p/block_attestation.js +0 -100
  1449. package/dest/p2p/interface.d.ts +0 -5
  1450. package/dest/p2p/interface.d.ts.map +0 -1
  1451. package/dest/p2p/interface.js +0 -1
  1452. package/dest/slashing/empire.d.ts +0 -31
  1453. package/dest/slashing/empire.d.ts.map +0 -1
  1454. package/dest/slashing/empire.js +0 -85
  1455. package/dest/slashing/tally.d.ts.map +0 -1
  1456. package/dest/tx/content_commitment.d.ts +0 -49
  1457. package/dest/tx/content_commitment.d.ts.map +0 -1
  1458. package/dest/tx/content_commitment.js +0 -90
  1459. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1460. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1461. package/dest/tx/validator/empty_validator.js +0 -7
  1462. package/dest/update-checker/update-checker.d.ts +0 -49
  1463. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1464. package/dest/update-checker/update-checker.js +0 -130
  1465. package/src/abi/mocked_keys.ts +0 -2
  1466. package/src/avm/contract_storage_read.ts +0 -77
  1467. package/src/avm/contract_storage_update_request.ts +0 -93
  1468. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1469. package/src/avm/public_data_update_request.ts +0 -106
  1470. package/src/avm/public_inner_call_request.ts +0 -85
  1471. package/src/block/l2_block_code_to_purge.ts +0 -88
  1472. package/src/block/l2_block_header.ts +0 -246
  1473. package/src/block/l2_block_new.ts +0 -176
  1474. package/src/block/published_l2_block.ts +0 -65
  1475. package/src/contract/contract_class_metadata.ts +0 -8
  1476. package/src/contract/contract_metadata.ts +0 -7
  1477. package/src/contract/deployment_info.ts +0 -25
  1478. package/src/contract/private_function_membership_proof.ts +0 -167
  1479. package/src/contract/utility_function_membership_proof.ts +0 -118
  1480. package/src/database-version/index.ts +0 -1
  1481. package/src/interfaces/epoch-prover.ts +0 -72
  1482. package/src/interfaces/get_logs_response.ts +0 -31
  1483. package/src/interfaces/prover-coordination.ts +0 -17
  1484. package/src/kernel/hints/key_validation_request_and_generator.ts +0 -52
  1485. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1486. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1487. package/src/kernel/utils/optional_number.ts +0 -50
  1488. package/src/l1-contracts/slash_factory.ts +0 -177
  1489. package/src/logs/directional_app_tagging_secret.ts +0 -77
  1490. package/src/logs/extended_contract_class_log.ts +0 -87
  1491. package/src/logs/extended_public_log.ts +0 -94
  1492. package/src/logs/log_filter.ts +0 -31
  1493. package/src/logs/log_id.ts +0 -111
  1494. package/src/logs/log_with_tx_data.ts +0 -46
  1495. package/src/logs/tx_scoped_l2_log.ts +0 -96
  1496. package/src/note/notes_filter.ts +0 -38
  1497. package/src/p2p/block_attestation.ts +0 -136
  1498. package/src/p2p/interface.ts +0 -4
  1499. package/src/slashing/empire.ts +0 -102
  1500. package/src/tx/content_commitment.ts +0 -113
  1501. package/src/tx/validator/empty_validator.ts +0 -7
  1502. package/src/update-checker/update-checker.ts +0 -165
@@ -0,0 +1,57 @@
1
+ /** Default block sub-slot duration (`D`) in seconds, used to derive how many blocks fit in a slot. */
2
+ export declare const DEFAULT_BLOCK_DURATION = 3;
3
+ /** Default minimum block-building duration (`min_block_duration`) in seconds. */
4
+ export declare const DEFAULT_MIN_BLOCK_DURATION = 2;
5
+ /** Default one-way P2P propagation time (`p2p_propagation_time`) for proposals and attestations in seconds. */
6
+ export declare const DEFAULT_P2P_PROPAGATION_TIME = 2;
7
+ /** Default local checkpoint proposal preparation time (`checkpoint_proposal_prepare_time`) in seconds. */
8
+ export declare const DEFAULT_CHECKPOINT_PROPOSAL_PREPARE_TIME = 1;
9
+ /** Default local tolerance for archiver orphan-prune checks when no checkpoint proposal was received. */
10
+ export declare const DEFAULT_ORPHAN_PRUNE_NO_PROPOSAL_TOLERANCE = 1;
11
+ /**
12
+ * Default proposer initialization time (`checkpoint_proposal_init_time`) in seconds: the budget reserved at
13
+ * the start of the build frame for sync, the proposer check, and checkpoint initialization before the first
14
+ * block sub-slot opens. The proposer rarely starts building exactly at `build_frame_start`; this offset
15
+ * shifts the sub-slot grid so the first sub-slot still has its full duration once the prologue completes.
16
+ */
17
+ export declare const DEFAULT_CHECKPOINT_PROPOSAL_INIT_TIME = 1;
18
+ /**
19
+ * Ethereum slot duration (seconds) below which a network is treated as a fast local/e2e profile with mocked
20
+ * p2p. Profiles at or above this keep the production operational budgets. Mainnet is 12s; fast anvil-style
21
+ * local profiles run at 4s.
22
+ */
23
+ export declare const FAST_PROFILE_ETHEREUM_SLOT_DURATION = 8;
24
+ /**
25
+ * Operational timing budgets for the fast local/e2e profile (mocked p2p), per the README's "Local e2e with
26
+ * mocked p2p" section. When `ethereum_slot_duration < FAST_PROFILE_ETHEREUM_SLOT_DURATION`, these cap the
27
+ * proposer's operational budgets so a fast network does not inherit the conservative production budgets,
28
+ * which would shrink the per-checkpoint build window and under-pack checkpoints. Explicitly configured
29
+ * budgets below these caps are kept as-is (the budgets are clamped down, never raised).
30
+ */
31
+ export declare const FAST_PROFILE_P2P_PROPAGATION_TIME = 0.5;
32
+ /** Fast-profile checkpoint proposal preparation budget (seconds). See {@link FAST_PROFILE_P2P_PROPAGATION_TIME}. */
33
+ export declare const FAST_PROFILE_CHECKPOINT_PROPOSAL_PREPARE_TIME = 0.5;
34
+ /** Fast-profile minimum block-building budget (seconds). See {@link FAST_PROFILE_P2P_PROPAGATION_TIME}. */
35
+ export declare const FAST_PROFILE_MIN_BLOCK_DURATION = 1;
36
+ /** Resolved operational timing budgets used to size the proposer build window. */
37
+ export type ResolvedTimingBudgets = {
38
+ minBlockDuration: number;
39
+ p2pPropagationTime: number;
40
+ checkpointProposalPrepareTime: number;
41
+ checkpointProposalInitTime: number;
42
+ };
43
+ /** Default consensus grace for received checkpoint proposals to materialize locally. */
44
+ export declare function getDefaultCheckpointProposalSyncGrace(blockDuration: number): number;
45
+ /**
46
+ * Resolves the operational timing budgets, applying the fast local/e2e profile when
47
+ * `ethereumSlotDuration < FAST_PROFILE_ETHEREUM_SLOT_DURATION`.
48
+ *
49
+ * Production profiles (`ethereumSlotDuration >= FAST_PROFILE_ETHEREUM_SLOT_DURATION`) use the configured
50
+ * budgets verbatim. Fast profiles clamp `p2pPropagationTime`, `checkpointProposalPrepareTime`, and
51
+ * `minBlockDuration` down to the fast-profile caps so a fast network (mocked p2p) gets a build window sized
52
+ * for local timing rather than the conservative production budgets. The clamp only lowers budgets, so an
53
+ * operator that explicitly configured a smaller value keeps it. `checkpointProposalInitTime` is unchanged by
54
+ * the profile: it is a proposer prologue budget, not a propagation/preparation budget.
55
+ */
56
+ export declare function resolveTimingBudgets(ethereumSlotDuration: number, opts: ResolvedTimingBudgets): ResolvedTimingBudgets;
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVkZ2V0cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RpbWV0YWJsZS9idWRnZXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNHQUFzRztBQUN0RyxlQUFPLE1BQU0sc0JBQXNCLElBQUksQ0FBQztBQUV4QyxpRkFBaUY7QUFDakYsZUFBTyxNQUFNLDBCQUEwQixJQUFJLENBQUM7QUFFNUMsK0dBQStHO0FBQy9HLGVBQU8sTUFBTSw0QkFBNEIsSUFBSSxDQUFDO0FBRTlDLDBHQUEwRztBQUMxRyxlQUFPLE1BQU0sd0NBQXdDLElBQUksQ0FBQztBQUUxRCx5R0FBeUc7QUFDekcsZUFBTyxNQUFNLDBDQUEwQyxJQUFJLENBQUM7QUFFNUQ7Ozs7O0dBS0c7QUFDSCxlQUFPLE1BQU0scUNBQXFDLElBQUksQ0FBQztBQUV2RDs7OztHQUlHO0FBQ0gsZUFBTyxNQUFNLG1DQUFtQyxJQUFJLENBQUM7QUFFckQ7Ozs7OztHQU1HO0FBQ0gsZUFBTyxNQUFNLGlDQUFpQyxNQUFNLENBQUM7QUFFckQsb0hBQW9IO0FBQ3BILGVBQU8sTUFBTSw2Q0FBNkMsTUFBTSxDQUFDO0FBRWpFLDJHQUEyRztBQUMzRyxlQUFPLE1BQU0sK0JBQStCLElBQUksQ0FBQztBQUVqRCxrRkFBa0Y7QUFDbEYsTUFBTSxNQUFNLHFCQUFxQixHQUFHO0lBQ2xDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQztJQUN6QixrQkFBa0IsRUFBRSxNQUFNLENBQUM7SUFDM0IsNkJBQTZCLEVBQUUsTUFBTSxDQUFDO0lBQ3RDLDBCQUEwQixFQUFFLE1BQU0sQ0FBQztDQUNwQyxDQUFDO0FBRUYsd0ZBQXdGO0FBQ3hGLHdCQUFnQixxQ0FBcUMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FFbkY7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsd0JBQWdCLG9CQUFvQixDQUFDLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUscUJBQXFCLEdBQUcscUJBQXFCLENBaUJySCJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budgets.d.ts","sourceRoot":"","sources":["../../src/timetable/budgets.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C,+GAA+G;AAC/G,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,0GAA0G;AAC1G,eAAO,MAAM,wCAAwC,IAAI,CAAC;AAE1D,yGAAyG;AACzG,eAAO,MAAM,0CAA0C,IAAI,CAAC;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,IAAI,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,IAAI,CAAC;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,oHAAoH;AACpH,eAAO,MAAM,6CAA6C,MAAM,CAAC;AAEjE,2GAA2G;AAC3G,eAAO,MAAM,+BAA+B,IAAI,CAAC;AAEjD,kFAAkF;AAClF,MAAM,MAAM,qBAAqB,GAAG;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6BAA6B,EAAE,MAAM,CAAC;IACtC,0BAA0B,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,wFAAwF;AACxF,wBAAgB,qCAAqC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,qBAAqB,CAiBrH"}
@@ -0,0 +1,56 @@
1
+ /** Default block sub-slot duration (`D`) in seconds, used to derive how many blocks fit in a slot. */ export const DEFAULT_BLOCK_DURATION = 3;
2
+ /** Default minimum block-building duration (`min_block_duration`) in seconds. */ export const DEFAULT_MIN_BLOCK_DURATION = 2;
3
+ /** Default one-way P2P propagation time (`p2p_propagation_time`) for proposals and attestations in seconds. */ export const DEFAULT_P2P_PROPAGATION_TIME = 2;
4
+ /** Default local checkpoint proposal preparation time (`checkpoint_proposal_prepare_time`) in seconds. */ export const DEFAULT_CHECKPOINT_PROPOSAL_PREPARE_TIME = 1;
5
+ /** Default local tolerance for archiver orphan-prune checks when no checkpoint proposal was received. */ export const DEFAULT_ORPHAN_PRUNE_NO_PROPOSAL_TOLERANCE = 1;
6
+ /**
7
+ * Default proposer initialization time (`checkpoint_proposal_init_time`) in seconds: the budget reserved at
8
+ * the start of the build frame for sync, the proposer check, and checkpoint initialization before the first
9
+ * block sub-slot opens. The proposer rarely starts building exactly at `build_frame_start`; this offset
10
+ * shifts the sub-slot grid so the first sub-slot still has its full duration once the prologue completes.
11
+ */ export const DEFAULT_CHECKPOINT_PROPOSAL_INIT_TIME = 1;
12
+ /**
13
+ * Ethereum slot duration (seconds) below which a network is treated as a fast local/e2e profile with mocked
14
+ * p2p. Profiles at or above this keep the production operational budgets. Mainnet is 12s; fast anvil-style
15
+ * local profiles run at 4s.
16
+ */ export const FAST_PROFILE_ETHEREUM_SLOT_DURATION = 8;
17
+ /**
18
+ * Operational timing budgets for the fast local/e2e profile (mocked p2p), per the README's "Local e2e with
19
+ * mocked p2p" section. When `ethereum_slot_duration < FAST_PROFILE_ETHEREUM_SLOT_DURATION`, these cap the
20
+ * proposer's operational budgets so a fast network does not inherit the conservative production budgets,
21
+ * which would shrink the per-checkpoint build window and under-pack checkpoints. Explicitly configured
22
+ * budgets below these caps are kept as-is (the budgets are clamped down, never raised).
23
+ */ export const FAST_PROFILE_P2P_PROPAGATION_TIME = 0.5;
24
+ /** Fast-profile checkpoint proposal preparation budget (seconds). See {@link FAST_PROFILE_P2P_PROPAGATION_TIME}. */ export const FAST_PROFILE_CHECKPOINT_PROPOSAL_PREPARE_TIME = 0.5;
25
+ /** Fast-profile minimum block-building budget (seconds). See {@link FAST_PROFILE_P2P_PROPAGATION_TIME}. */ export const FAST_PROFILE_MIN_BLOCK_DURATION = 1;
26
+ /** Default consensus grace for received checkpoint proposals to materialize locally. */ export function getDefaultCheckpointProposalSyncGrace(blockDuration) {
27
+ return 2 * blockDuration;
28
+ }
29
+ /**
30
+ * Resolves the operational timing budgets, applying the fast local/e2e profile when
31
+ * `ethereumSlotDuration < FAST_PROFILE_ETHEREUM_SLOT_DURATION`.
32
+ *
33
+ * Production profiles (`ethereumSlotDuration >= FAST_PROFILE_ETHEREUM_SLOT_DURATION`) use the configured
34
+ * budgets verbatim. Fast profiles clamp `p2pPropagationTime`, `checkpointProposalPrepareTime`, and
35
+ * `minBlockDuration` down to the fast-profile caps so a fast network (mocked p2p) gets a build window sized
36
+ * for local timing rather than the conservative production budgets. The clamp only lowers budgets, so an
37
+ * operator that explicitly configured a smaller value keeps it. `checkpointProposalInitTime` is unchanged by
38
+ * the profile: it is a proposer prologue budget, not a propagation/preparation budget.
39
+ */ export function resolveTimingBudgets(ethereumSlotDuration, opts) {
40
+ const { minBlockDuration, p2pPropagationTime, checkpointProposalPrepareTime, checkpointProposalInitTime } = opts;
41
+ const isFastProfile = ethereumSlotDuration < FAST_PROFILE_ETHEREUM_SLOT_DURATION;
42
+ if (!isFastProfile) {
43
+ return {
44
+ minBlockDuration,
45
+ p2pPropagationTime,
46
+ checkpointProposalPrepareTime,
47
+ checkpointProposalInitTime
48
+ };
49
+ }
50
+ return {
51
+ minBlockDuration: Math.min(minBlockDuration, FAST_PROFILE_MIN_BLOCK_DURATION),
52
+ p2pPropagationTime: Math.min(p2pPropagationTime, FAST_PROFILE_P2P_PROPAGATION_TIME),
53
+ checkpointProposalPrepareTime: Math.min(checkpointProposalPrepareTime, FAST_PROFILE_CHECKPOINT_PROPOSAL_PREPARE_TIME),
54
+ checkpointProposalInitTime
55
+ };
56
+ }
@@ -0,0 +1,21 @@
1
+ import type { SlotTimingConstants } from './consensus_timetable.js';
2
+ import { ProposerTimetable } from './proposer_timetable.js';
3
+ /**
4
+ * Subset of the sequencer/p2p config the proposer timetable derives its operational budgets from. Both
5
+ * {@link SequencerConfig} and {@link P2PConfig} structurally satisfy this, so the same builder is used by
6
+ * the sequencer, the p2p layer, and the node's `getNodeInfo`.
7
+ */
8
+ export type ProposerTimetableConfig = {
9
+ blockDurationMs?: number;
10
+ minBlockDuration?: number;
11
+ attestationPropagationTime?: number;
12
+ checkpointProposalPrepareTime?: number;
13
+ checkpointProposalSyncGraceSeconds?: number;
14
+ };
15
+ /**
16
+ * Builds the proposer timetable from a sequencer/p2p config and the slot-timing protocol constants,
17
+ * applying the shared stdlib budget defaults. Single source of truth shared by the sequencer, the p2p
18
+ * layer, and the node's `getNodeInfo` so they all derive the same `maxBlocksPerCheckpoint`.
19
+ */
20
+ export declare function buildProposerTimetable(config: ProposerTimetableConfig, l1Constants: SlotTimingConstants): ProposerTimetable;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfcHJvcG9zZXJfdGltZXRhYmxlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGltZXRhYmxlL2J1aWxkX3Byb3Bvc2VyX3RpbWV0YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTVEOzs7O0dBSUc7QUFDSCxNQUFNLE1BQU0sdUJBQXVCLEdBQUc7SUFDcEMsZUFBZSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLGdCQUFnQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzFCLDBCQUEwQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3BDLDZCQUE2QixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3ZDLGtDQUFrQyxDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQzdDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsd0JBQWdCLHNCQUFzQixDQUNwQyxNQUFNLEVBQUUsdUJBQXVCLEVBQy9CLFdBQVcsRUFBRSxtQkFBbUIsR0FDL0IsaUJBQWlCLENBVW5CIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build_proposer_timetable.d.ts","sourceRoot":"","sources":["../../src/timetable/build_proposer_timetable.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,kCAAkC,CAAC,EAAE,MAAM,CAAC;CAC7C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,uBAAuB,EAC/B,WAAW,EAAE,mBAAmB,GAC/B,iBAAiB,CAUnB"}
@@ -0,0 +1,17 @@
1
+ import { DEFAULT_BLOCK_DURATION, DEFAULT_CHECKPOINT_PROPOSAL_INIT_TIME, DEFAULT_CHECKPOINT_PROPOSAL_PREPARE_TIME, DEFAULT_MIN_BLOCK_DURATION, DEFAULT_P2P_PROPAGATION_TIME } from './budgets.js';
2
+ import { ProposerTimetable } from './proposer_timetable.js';
3
+ /**
4
+ * Builds the proposer timetable from a sequencer/p2p config and the slot-timing protocol constants,
5
+ * applying the shared stdlib budget defaults. Single source of truth shared by the sequencer, the p2p
6
+ * layer, and the node's `getNodeInfo` so they all derive the same `maxBlocksPerCheckpoint`.
7
+ */ export function buildProposerTimetable(config, l1Constants) {
8
+ return new ProposerTimetable({
9
+ l1Constants,
10
+ blockDuration: config.blockDurationMs !== undefined ? config.blockDurationMs / 1000 : DEFAULT_BLOCK_DURATION,
11
+ minBlockDuration: config.minBlockDuration ?? DEFAULT_MIN_BLOCK_DURATION,
12
+ p2pPropagationTime: config.attestationPropagationTime ?? DEFAULT_P2P_PROPAGATION_TIME,
13
+ checkpointProposalPrepareTime: config.checkpointProposalPrepareTime ?? DEFAULT_CHECKPOINT_PROPOSAL_PREPARE_TIME,
14
+ checkpointProposalInitTime: DEFAULT_CHECKPOINT_PROPOSAL_INIT_TIME,
15
+ checkpointProposalSyncGrace: config.checkpointProposalSyncGraceSeconds
16
+ });
17
+ }
@@ -0,0 +1,70 @@
1
+ import type { SlotNumber } from '@aztec/foundation/branded-types';
2
+ import { type L1RollupConstants } from '../epoch-helpers/index.js';
3
+ /** Slot-timing protocol constants the timetables derive wall-clock times from. */
4
+ export type SlotTimingConstants = Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'ethereumSlotDuration'>;
5
+ /**
6
+ * Consensus acceptance bounds for the pipelined timetable.
7
+ *
8
+ * Returns the deadlines and matching receive-window lower bounds that validators and p2p use to decide
9
+ * whether a proposal or attestation is acceptable for a given target slot. All getters take a target slot
10
+ * and return an absolute wall-clock timestamp in seconds.
11
+ *
12
+ * Inputs are protocol slot-timing constants only (`genesis`, `aztec_slot_duration`,
13
+ * `ethereum_slot_duration`, `block_duration`, `checkpoint_proposal_sync_grace`); no operational budgets, so every
14
+ * node agrees on these bounds. See `stdlib/src/timetable/README.md` for the timing model.
15
+ */
16
+ export declare class ConsensusTimetable {
17
+ /** Aztec slot duration (`S`) in seconds. */
18
+ readonly aztecSlotDuration: number;
19
+ /** Ethereum slot duration (`E`) in seconds. */
20
+ readonly ethereumSlotDuration: number;
21
+ /** Block sub-slot duration (`D`) in seconds. */
22
+ readonly blockDuration: number;
23
+ /** L1 genesis timestamp in seconds (`genesis`), the anchor all slot timings derive from. */
24
+ readonly genesisTime: bigint;
25
+ /** Consensus grace for received checkpoint proposals to materialize into local proposed state. */
26
+ readonly checkpointProposalSyncGrace: number;
27
+ constructor(opts: {
28
+ l1Constants: SlotTimingConstants;
29
+ blockDuration: number;
30
+ checkpointProposalSyncGrace?: number;
31
+ });
32
+ /**
33
+ * Build-frame start for the target slot: `target_slot_start - S - E`. Anchors all sub-slot timings.
34
+ * Computed directly (not via a `slot - 1` hop) so it is well-defined for slot 0, whose build frame
35
+ * predates genesis; p2p validators evaluate acceptance windows for arbitrary peer-supplied slots.
36
+ */
37
+ getBuildFrameStart(slot: SlotNumber): number;
38
+ /** Start of the target slot: `genesis + slot * S`. */
39
+ getTargetSlotStart(slot: SlotNumber): number;
40
+ /**
41
+ * Earliest acceptable arrival for a checkpoint proposal: `target_slot_start - S - E` (the build frame
42
+ * opening). Nothing legitimate for this slot exists before its build frame opens.
43
+ */
44
+ getCheckpointProposalReceiveStart(slot: SlotNumber): number;
45
+ /**
46
+ * Hard consensus receive deadline for a checkpoint proposal: `target_slot_start - E - D`. Validators
47
+ * reject proposals arriving after this, and the next proposer does not build on them.
48
+ */
49
+ getCheckpointProposalReceiveDeadline(slot: SlotNumber): number;
50
+ /**
51
+ * Wall-clock deadline by which a received checkpoint proposal should have materialized into local proposed
52
+ * state. This is `next_proposer_build_frame_start + checkpointProposalSyncGrace`, rounded up to the next
53
+ * integer second because L1 timestamps and archiver comparisons are second-granularity.
54
+ */
55
+ getCheckpointProposalSyncedDeadline(slot: SlotNumber): number;
56
+ /**
57
+ * Earliest acceptable arrival for an attestation: `target_slot_start - S - E` (the build frame
58
+ * opening). Deliberately liberal; attestations are attributed by content, not timing.
59
+ */
60
+ getAttestationReceiveStart(slot: SlotNumber): number;
61
+ /**
62
+ * Single hard consensus deadline: `target_slot_start + S - 2E`. The latest the checkpoint can still
63
+ * land on L1 in the target slot, and the cutoff by which every block and the checkpoint must be
64
+ * re-executed, validated, and signed. Consensus-driven (used for inactivity/slashing decisions).
65
+ */
66
+ getAttestationDeadline(slot: SlotNumber): number;
67
+ /** Slot-timing protocol constants this timetable derives wall-clock times from. */
68
+ getL1Constants(): SlotTimingConstants;
69
+ }
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2Vuc3VzX3RpbWV0YWJsZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RpbWV0YWJsZS9jb25zZW5zdXNfdGltZXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWxFLE9BQU8sRUFBRSxLQUFLLGlCQUFpQixFQUF1QixNQUFNLDJCQUEyQixDQUFDO0FBR3hGLGtGQUFrRjtBQUNsRixNQUFNLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsR0FBRyxjQUFjLEdBQUcsc0JBQXNCLENBQUMsQ0FBQztBQUVySDs7Ozs7Ozs7OztHQVVHO0FBQ0gscUJBQWEsa0JBQWtCO0lBQzdCLDRDQUE0QztJQUM1QyxTQUFnQixpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFFMUMsK0NBQStDO0lBQy9DLFNBQWdCLG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUU3QyxnREFBZ0Q7SUFDaEQsU0FBZ0IsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUV0Qyw0RkFBNEY7SUFDNUYsU0FBZ0IsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUVwQyxrR0FBa0c7SUFDbEcsU0FBZ0IsMkJBQTJCLEVBQUUsTUFBTSxDQUFDO0lBRXBELFlBQVksSUFBSSxFQUFFO1FBQUUsV0FBVyxFQUFFLG1CQUFtQixDQUFDO1FBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUFDLDJCQUEyQixDQUFDLEVBQUUsTUFBTSxDQUFBO0tBQUUsRUFzQmxIO0lBRUQ7Ozs7T0FJRztJQUNJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLEdBQUcsTUFBTSxDQUVsRDtJQUVELHNEQUFzRDtJQUMvQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FFbEQ7SUFFRDs7O09BR0c7SUFDSSxpQ0FBaUMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FFakU7SUFFRDs7O09BR0c7SUFDSSxvQ0FBb0MsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FFcEU7SUFFRDs7OztPQUlHO0lBQ0ksbUNBQW1DLENBQUMsSUFBSSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBSW5FO0lBRUQ7OztPQUdHO0lBQ0ksMEJBQTBCLENBQUMsSUFBSSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBRTFEO0lBRUQ7Ozs7T0FJRztJQUNJLHNCQUFzQixDQUFDLElBQUksRUFBRSxVQUFVLEdBQUcsTUFBTSxDQUV0RDtJQUVELG1GQUFtRjtJQUM1RSxjQUFjLElBQUksbUJBQW1CLENBTTNDO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consensus_timetable.d.ts","sourceRoot":"","sources":["../../src/timetable/consensus_timetable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,2BAA2B,CAAC;AAGxF,kFAAkF;AAClF,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,CAAC;AAErH;;;;;;;;;;GAUG;AACH,qBAAa,kBAAkB;IAC7B,4CAA4C;IAC5C,SAAgB,iBAAiB,EAAE,MAAM,CAAC;IAE1C,+CAA+C;IAC/C,SAAgB,oBAAoB,EAAE,MAAM,CAAC;IAE7C,gDAAgD;IAChD,SAAgB,aAAa,EAAE,MAAM,CAAC;IAEtC,4FAA4F;IAC5F,SAAgB,WAAW,EAAE,MAAM,CAAC;IAEpC,kGAAkG;IAClG,SAAgB,2BAA2B,EAAE,MAAM,CAAC;IAEpD,YAAY,IAAI,EAAE;QAAE,WAAW,EAAE,mBAAmB,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,2BAA2B,CAAC,EAAE,MAAM,CAAA;KAAE,EAsBlH;IAED;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAElD;IAED,sDAAsD;IAC/C,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAElD;IAED;;;OAGG;IACI,iCAAiC,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAEjE;IAED;;;OAGG;IACI,oCAAoC,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAEpE;IAED;;;;OAIG;IACI,mCAAmC,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAInE;IAED;;;OAGG;IACI,0BAA0B,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAE1D;IAED;;;;OAIG;IACI,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAEtD;IAED,mFAAmF;IAC5E,cAAc,IAAI,mBAAmB,CAM3C;CACF"}
@@ -0,0 +1,89 @@
1
+ import { getTimestampForSlot } from '../epoch-helpers/index.js';
2
+ import { getDefaultCheckpointProposalSyncGrace } from './budgets.js';
3
+ /**
4
+ * Consensus acceptance bounds for the pipelined timetable.
5
+ *
6
+ * Returns the deadlines and matching receive-window lower bounds that validators and p2p use to decide
7
+ * whether a proposal or attestation is acceptable for a given target slot. All getters take a target slot
8
+ * and return an absolute wall-clock timestamp in seconds.
9
+ *
10
+ * Inputs are protocol slot-timing constants only (`genesis`, `aztec_slot_duration`,
11
+ * `ethereum_slot_duration`, `block_duration`, `checkpoint_proposal_sync_grace`); no operational budgets, so every
12
+ * node agrees on these bounds. See `stdlib/src/timetable/README.md` for the timing model.
13
+ */ export class ConsensusTimetable {
14
+ /** Aztec slot duration (`S`) in seconds. */ aztecSlotDuration;
15
+ /** Ethereum slot duration (`E`) in seconds. */ ethereumSlotDuration;
16
+ /** Block sub-slot duration (`D`) in seconds. */ blockDuration;
17
+ /** L1 genesis timestamp in seconds (`genesis`), the anchor all slot timings derive from. */ genesisTime;
18
+ /** Consensus grace for received checkpoint proposals to materialize into local proposed state. */ checkpointProposalSyncGrace;
19
+ constructor(opts){
20
+ const { l1Constants, blockDuration } = opts;
21
+ const checkpointProposalSyncGrace = opts.checkpointProposalSyncGrace ?? getDefaultCheckpointProposalSyncGrace(blockDuration);
22
+ if (l1Constants.slotDuration <= 0) {
23
+ throw new Error(`aztecSlotDuration must be positive (got ${l1Constants.slotDuration})`);
24
+ }
25
+ if (l1Constants.ethereumSlotDuration <= 0) {
26
+ throw new Error(`ethereumSlotDuration must be positive (got ${l1Constants.ethereumSlotDuration})`);
27
+ }
28
+ if (blockDuration <= 0) {
29
+ throw new Error(`blockDuration must be positive (got ${blockDuration})`);
30
+ }
31
+ if (checkpointProposalSyncGrace < 0) {
32
+ throw new Error(`checkpointProposalSyncGrace must be non-negative (got ${checkpointProposalSyncGrace})`);
33
+ }
34
+ this.aztecSlotDuration = l1Constants.slotDuration;
35
+ this.ethereumSlotDuration = l1Constants.ethereumSlotDuration;
36
+ this.blockDuration = blockDuration;
37
+ this.genesisTime = l1Constants.l1GenesisTime;
38
+ this.checkpointProposalSyncGrace = checkpointProposalSyncGrace;
39
+ }
40
+ /**
41
+ * Build-frame start for the target slot: `target_slot_start - S - E`. Anchors all sub-slot timings.
42
+ * Computed directly (not via a `slot - 1` hop) so it is well-defined for slot 0, whose build frame
43
+ * predates genesis; p2p validators evaluate acceptance windows for arbitrary peer-supplied slots.
44
+ */ getBuildFrameStart(slot) {
45
+ return this.getTargetSlotStart(slot) - this.aztecSlotDuration - this.ethereumSlotDuration;
46
+ }
47
+ /** Start of the target slot: `genesis + slot * S`. */ getTargetSlotStart(slot) {
48
+ return Number(getTimestampForSlot(slot, this.getL1Constants()));
49
+ }
50
+ /**
51
+ * Earliest acceptable arrival for a checkpoint proposal: `target_slot_start - S - E` (the build frame
52
+ * opening). Nothing legitimate for this slot exists before its build frame opens.
53
+ */ getCheckpointProposalReceiveStart(slot) {
54
+ return this.getBuildFrameStart(slot);
55
+ }
56
+ /**
57
+ * Hard consensus receive deadline for a checkpoint proposal: `target_slot_start - E - D`. Validators
58
+ * reject proposals arriving after this, and the next proposer does not build on them.
59
+ */ getCheckpointProposalReceiveDeadline(slot) {
60
+ return this.getTargetSlotStart(slot) - this.ethereumSlotDuration - this.blockDuration;
61
+ }
62
+ /**
63
+ * Wall-clock deadline by which a received checkpoint proposal should have materialized into local proposed
64
+ * state. This is `next_proposer_build_frame_start + checkpointProposalSyncGrace`, rounded up to the next
65
+ * integer second because L1 timestamps and archiver comparisons are second-granularity.
66
+ */ getCheckpointProposalSyncedDeadline(slot) {
67
+ return Math.ceil(this.getCheckpointProposalReceiveDeadline(slot) + this.blockDuration + this.checkpointProposalSyncGrace);
68
+ }
69
+ /**
70
+ * Earliest acceptable arrival for an attestation: `target_slot_start - S - E` (the build frame
71
+ * opening). Deliberately liberal; attestations are attributed by content, not timing.
72
+ */ getAttestationReceiveStart(slot) {
73
+ return this.getBuildFrameStart(slot);
74
+ }
75
+ /**
76
+ * Single hard consensus deadline: `target_slot_start + S - 2E`. The latest the checkpoint can still
77
+ * land on L1 in the target slot, and the cutoff by which every block and the checkpoint must be
78
+ * re-executed, validated, and signed. Consensus-driven (used for inactivity/slashing decisions).
79
+ */ getAttestationDeadline(slot) {
80
+ return this.getTargetSlotStart(slot) + this.aztecSlotDuration - 2 * this.ethereumSlotDuration;
81
+ }
82
+ /** Slot-timing protocol constants this timetable derives wall-clock times from. */ getL1Constants() {
83
+ return {
84
+ l1GenesisTime: this.genesisTime,
85
+ slotDuration: this.aztecSlotDuration,
86
+ ethereumSlotDuration: this.ethereumSlotDuration
87
+ };
88
+ }
89
+ }
@@ -0,0 +1,5 @@
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==
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,4 @@
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
+ }