@aztec/stdlib 0.0.1-commit.c31f2472 → 0.0.1-commit.c52d6e7

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 (1253) hide show
  1. package/dest/abi/abi.d.ts +169 -1083
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +52 -20
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +49 -26
  12. package/dest/abi/decoder.d.ts +15 -47
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +33 -89
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +35 -14
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +45 -9
  26. package/dest/abi/function_selector.d.ts +3 -6
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +2 -4
  29. package/dest/abi/function_signature_decoder.d.ts +43 -0
  30. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  31. package/dest/abi/function_signature_decoder.js +66 -0
  32. package/dest/abi/index.d.ts +2 -1
  33. package/dest/abi/index.d.ts.map +1 -1
  34. package/dest/abi/index.js +1 -0
  35. package/dest/abi/note_selector.d.ts +4 -7
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +1 -3
  38. package/dest/abi/selector.d.ts +2 -2
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +1 -1
  41. package/dest/abi/utils.d.ts +14 -1
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +16 -1
  44. package/dest/auth_witness/auth_witness.d.ts +2 -2
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +3 -3
  47. package/dest/avm/avm.d.ts +2228 -10934
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +10 -5
  50. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  53. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  54. package/dest/avm/avm_proving_request.d.ts +653 -5446
  55. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  56. package/dest/avm/index.d.ts +1 -6
  57. package/dest/avm/index.d.ts.map +1 -1
  58. package/dest/avm/index.js +0 -5
  59. package/dest/avm/message_pack.js +12 -3
  60. package/dest/avm/public_data_write.d.ts +6 -12
  61. package/dest/avm/public_data_write.d.ts.map +1 -1
  62. package/dest/avm/revert_code.d.ts +6 -7
  63. package/dest/avm/revert_code.d.ts.map +1 -1
  64. package/dest/avm/revert_code.js +13 -21
  65. package/dest/aztec-address/index.d.ts +42 -12
  66. package/dest/aztec-address/index.d.ts.map +1 -1
  67. package/dest/aztec-address/index.js +40 -13
  68. package/dest/block/attestation_info.d.ts +3 -2
  69. package/dest/block/attestation_info.d.ts.map +1 -1
  70. package/dest/block/attestation_info.js +10 -5
  71. package/dest/block/block_data.d.ts +27 -0
  72. package/dest/block/block_data.d.ts.map +1 -0
  73. package/dest/block/block_data.js +12 -0
  74. package/dest/block/block_hash.d.ts +17 -19
  75. package/dest/block/block_hash.d.ts.map +1 -1
  76. package/dest/block/block_hash.js +22 -34
  77. package/dest/block/block_parameter.d.ts +37 -4
  78. package/dest/block/block_parameter.d.ts.map +1 -1
  79. package/dest/block/block_parameter.js +53 -2
  80. package/dest/block/in_block.d.ts +7 -26
  81. package/dest/block/in_block.d.ts.map +1 -1
  82. package/dest/block/in_block.js +2 -2
  83. package/dest/block/index.d.ts +2 -2
  84. package/dest/block/index.d.ts.map +1 -1
  85. package/dest/block/index.js +1 -1
  86. package/dest/block/l2_block.d.ts +23 -42
  87. package/dest/block/l2_block.d.ts.map +1 -1
  88. package/dest/block/l2_block.js +14 -5
  89. package/dest/block/l2_block_info.d.ts +10 -29
  90. package/dest/block/l2_block_info.d.ts.map +1 -1
  91. package/dest/block/l2_block_info.js +6 -5
  92. package/dest/block/l2_block_source.d.ts +238 -336
  93. package/dest/block/l2_block_source.d.ts.map +1 -1
  94. package/dest/block/l2_block_source.js +85 -1
  95. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  96. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  97. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  98. package/dest/block/l2_block_stream/index.d.ts +2 -1
  99. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  100. package/dest/block/l2_block_stream/index.js +1 -0
  101. package/dest/block/l2_block_stream/interfaces.d.ts +85 -10
  102. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  103. package/dest/block/l2_block_stream/interfaces.js +25 -1
  104. package/dest/block/l2_block_stream/l2_block_stream.d.ts +24 -15
  105. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  106. package/dest/block/l2_block_stream/l2_block_stream.js +185 -124
  107. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  108. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  109. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  110. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  111. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  112. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  113. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  114. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  115. package/dest/block/proposal/attestations_and_signers.js +73 -25
  116. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  117. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  118. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  119. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  120. package/dest/block/test/l2_tips_store_test_suite.js +301 -36
  121. package/dest/block/validate_block_result.d.ts +16 -1
  122. package/dest/block/validate_block_result.d.ts.map +1 -1
  123. package/dest/block/validate_block_result.js +18 -3
  124. package/dest/checkpoint/checkpoint.d.ts +48 -99
  125. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  126. package/dest/checkpoint/checkpoint.js +42 -18
  127. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  128. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  129. package/dest/checkpoint/checkpoint_data.js +38 -0
  130. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  131. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  132. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  133. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  134. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  135. package/dest/checkpoint/digest.d.ts +18 -0
  136. package/dest/checkpoint/digest.d.ts.map +1 -0
  137. package/dest/checkpoint/digest.js +12 -0
  138. package/dest/checkpoint/index.d.ts +7 -1
  139. package/dest/checkpoint/index.d.ts.map +1 -1
  140. package/dest/checkpoint/index.js +6 -0
  141. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  142. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  143. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  144. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  145. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  146. package/dest/checkpoint/published_checkpoint.js +1 -2
  147. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  148. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  149. package/dest/checkpoint/simulation_overrides.js +98 -0
  150. package/dest/checkpoint/validate.d.ts +44 -0
  151. package/dest/checkpoint/validate.d.ts.map +1 -0
  152. package/dest/checkpoint/validate.js +123 -0
  153. package/dest/config/chain-config.d.ts +4 -9
  154. package/dest/config/chain-config.d.ts.map +1 -1
  155. package/dest/config/chain-config.js +13 -12
  156. package/dest/config/index.d.ts +3 -1
  157. package/dest/config/index.d.ts.map +1 -1
  158. package/dest/config/index.js +2 -0
  159. package/dest/config/network-consensus-config.d.ts +72 -0
  160. package/dest/config/network-consensus-config.d.ts.map +1 -0
  161. package/dest/config/network-consensus-config.js +223 -0
  162. package/dest/config/node-rpc-config.d.ts +1 -1
  163. package/dest/config/node-rpc-config.d.ts.map +1 -1
  164. package/dest/config/node-rpc-config.js +1 -1
  165. package/dest/config/sequencer-config.d.ts +16 -0
  166. package/dest/config/sequencer-config.d.ts.map +1 -0
  167. package/dest/config/sequencer-config.js +57 -0
  168. package/dest/contract/artifact_hash.d.ts +2 -2
  169. package/dest/contract/artifact_hash.d.ts.map +1 -1
  170. package/dest/contract/artifact_hash.js +10 -2
  171. package/dest/contract/complete_address.d.ts +3 -2
  172. package/dest/contract/complete_address.d.ts.map +1 -1
  173. package/dest/contract/complete_address.js +6 -2
  174. package/dest/contract/contract_address.d.ts +10 -9
  175. package/dest/contract/contract_address.d.ts.map +1 -1
  176. package/dest/contract/contract_address.js +9 -8
  177. package/dest/contract/contract_class.d.ts +2 -3
  178. package/dest/contract/contract_class.d.ts.map +1 -1
  179. package/dest/contract/contract_class.js +3 -2
  180. package/dest/contract/contract_class_id.d.ts +3 -3
  181. package/dest/contract/contract_class_id.d.ts.map +1 -1
  182. package/dest/contract/contract_class_id.js +7 -6
  183. package/dest/contract/contract_deployment_data.d.ts +15 -61
  184. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  185. package/dest/contract/contract_instance.d.ts +19 -3
  186. package/dest/contract/contract_instance.d.ts.map +1 -1
  187. package/dest/contract/contract_instance.js +55 -3
  188. package/dest/contract/index.d.ts +1 -4
  189. package/dest/contract/index.d.ts.map +1 -1
  190. package/dest/contract/index.js +0 -3
  191. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  192. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  193. package/dest/contract/interfaces/contract_class.js +1 -28
  194. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  195. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  196. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  197. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  198. package/dest/contract/interfaces/contract_instance.js +11 -4
  199. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  200. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  201. package/dest/contract/interfaces/node-info.d.ts +13 -1
  202. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  203. package/dest/contract/interfaces/node-info.js +8 -1
  204. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  205. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  206. package/dest/contract/partial_address.d.ts +9 -3
  207. package/dest/contract/partial_address.d.ts.map +1 -1
  208. package/dest/contract/partial_address.js +8 -2
  209. package/dest/contract/private_function.d.ts +1 -1
  210. package/dest/contract/private_function.d.ts.map +1 -1
  211. package/dest/contract/private_function.js +4 -6
  212. package/dest/database-version/database_version.d.ts +52 -0
  213. package/dest/database-version/database_version.d.ts.map +1 -0
  214. package/dest/database-version/database_version.js +69 -0
  215. package/dest/database-version/version_manager.d.ts +22 -52
  216. package/dest/database-version/version_manager.d.ts.map +1 -1
  217. package/dest/database-version/version_manager.js +88 -72
  218. package/dest/deserialization/index.d.ts +35 -3
  219. package/dest/deserialization/index.d.ts.map +1 -1
  220. package/dest/deserialization/index.js +32 -1
  221. package/dest/epoch-helpers/index.d.ts +14 -18
  222. package/dest/epoch-helpers/index.d.ts.map +1 -1
  223. package/dest/epoch-helpers/index.js +18 -2
  224. package/dest/file-store/factory.d.ts +4 -3
  225. package/dest/file-store/factory.d.ts.map +1 -1
  226. package/dest/file-store/factory.js +9 -2
  227. package/dest/file-store/http.d.ts +9 -2
  228. package/dest/file-store/http.d.ts.map +1 -1
  229. package/dest/file-store/http.js +20 -9
  230. package/dest/file-store/index.d.ts +3 -1
  231. package/dest/file-store/index.d.ts.map +1 -1
  232. package/dest/file-store/index.js +1 -0
  233. package/dest/file-store/local.d.ts +3 -3
  234. package/dest/file-store/local.d.ts.map +1 -1
  235. package/dest/file-store/local.js +13 -4
  236. package/dest/file-store/memory.d.ts +24 -0
  237. package/dest/file-store/memory.d.ts.map +1 -0
  238. package/dest/file-store/memory.js +80 -0
  239. package/dest/file-store/s3.d.ts +1 -1
  240. package/dest/file-store/s3.d.ts.map +1 -1
  241. package/dest/file-store/s3.js +11 -3
  242. package/dest/gas/fee_math.d.ts +49 -0
  243. package/dest/gas/fee_math.d.ts.map +1 -0
  244. package/dest/gas/fee_math.js +80 -0
  245. package/dest/gas/gas.d.ts +9 -14
  246. package/dest/gas/gas.d.ts.map +1 -1
  247. package/dest/gas/gas.js +6 -3
  248. package/dest/gas/gas_fees.d.ts +13 -14
  249. package/dest/gas/gas_fees.d.ts.map +1 -1
  250. package/dest/gas/gas_fees.js +20 -4
  251. package/dest/gas/gas_settings.d.ts +60 -86
  252. package/dest/gas/gas_settings.d.ts.map +1 -1
  253. package/dest/gas/gas_settings.js +49 -9
  254. package/dest/gas/index.d.ts +3 -1
  255. package/dest/gas/index.d.ts.map +1 -1
  256. package/dest/gas/index.js +2 -0
  257. package/dest/gas/tx_gas_limits.d.ts +72 -0
  258. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  259. package/dest/gas/tx_gas_limits.js +85 -0
  260. package/dest/ha-signing/config.d.ts +86 -0
  261. package/dest/ha-signing/config.d.ts.map +1 -0
  262. package/dest/ha-signing/config.js +94 -0
  263. package/dest/ha-signing/index.d.ts +4 -0
  264. package/dest/ha-signing/index.d.ts.map +1 -0
  265. package/dest/ha-signing/index.js +3 -0
  266. package/dest/ha-signing/local_config.d.ts +40 -0
  267. package/dest/ha-signing/local_config.d.ts.map +1 -0
  268. package/dest/ha-signing/local_config.js +30 -0
  269. package/dest/ha-signing/types.d.ts +90 -0
  270. package/dest/ha-signing/types.d.ts.map +1 -0
  271. package/dest/ha-signing/types.js +39 -0
  272. package/dest/hash/hash.d.ts +35 -2
  273. package/dest/hash/hash.d.ts.map +1 -1
  274. package/dest/hash/hash.js +77 -17
  275. package/dest/hash/map_slot.js +2 -2
  276. package/dest/interfaces/allowed_element.d.ts +17 -35
  277. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  278. package/dest/interfaces/allowed_element.js +8 -8
  279. package/dest/interfaces/api_limit.d.ts +7 -2
  280. package/dest/interfaces/api_limit.d.ts.map +1 -1
  281. package/dest/interfaces/api_limit.js +4 -1
  282. package/dest/interfaces/archiver.d.ts +27 -32
  283. package/dest/interfaces/archiver.d.ts.map +1 -1
  284. package/dest/interfaces/archiver.js +217 -64
  285. package/dest/interfaces/aztec-node-admin.d.ts +116 -257
  286. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  287. package/dest/interfaces/aztec-node-admin.js +69 -18
  288. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  289. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  290. package/dest/interfaces/aztec-node-debug.js +49 -0
  291. package/dest/interfaces/aztec-node.d.ts +192 -163
  292. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  293. package/dest/interfaces/aztec-node.js +352 -77
  294. package/dest/interfaces/block-builder.d.ts +53 -12
  295. package/dest/interfaces/block-builder.d.ts.map +1 -1
  296. package/dest/interfaces/block-builder.js +16 -2
  297. package/dest/interfaces/block_response.d.ts +90 -0
  298. package/dest/interfaces/block_response.d.ts.map +1 -0
  299. package/dest/interfaces/block_response.js +30 -0
  300. package/dest/interfaces/chain_tips.d.ts +11 -0
  301. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  302. package/dest/interfaces/chain_tips.js +6 -0
  303. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  304. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  305. package/dest/interfaces/checkpoint_parameter.js +18 -0
  306. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  307. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  308. package/dest/interfaces/checkpoint_response.js +26 -0
  309. package/dest/interfaces/client.d.ts +9 -2
  310. package/dest/interfaces/client.d.ts.map +1 -1
  311. package/dest/interfaces/client.js +7 -1
  312. package/dest/interfaces/configs.d.ts +104 -121
  313. package/dest/interfaces/configs.d.ts.map +1 -1
  314. package/dest/interfaces/configs.js +24 -4
  315. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  316. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  317. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  318. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  319. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  320. package/dest/interfaces/l1_publish_info.js +26 -0
  321. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  322. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  323. package/dest/interfaces/l2_logs_source.js +5 -0
  324. package/dest/interfaces/merkle_tree_operations.d.ts +20 -24
  325. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  326. package/dest/interfaces/p2p-bootstrap.js +8 -2
  327. package/dest/interfaces/p2p.d.ts +49 -15
  328. package/dest/interfaces/p2p.d.ts.map +1 -1
  329. package/dest/interfaces/p2p.js +41 -6
  330. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  331. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  332. package/dest/interfaces/prover-agent.d.ts +5 -23
  333. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  334. package/dest/interfaces/prover-agent.js +4 -1
  335. package/dest/interfaces/prover-broker.d.ts +16 -1
  336. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  337. package/dest/interfaces/prover-broker.js +4 -1
  338. package/dest/interfaces/prover-client.d.ts +13 -25
  339. package/dest/interfaces/prover-client.d.ts.map +1 -1
  340. package/dest/interfaces/prover-client.js +12 -4
  341. package/dest/interfaces/prover-node.d.ts +12 -8
  342. package/dest/interfaces/prover-node.d.ts.map +1 -1
  343. package/dest/interfaces/prover-node.js +37 -16
  344. package/dest/interfaces/proving-job-source.js +24 -4
  345. package/dest/interfaces/proving-job.d.ts +757 -5795
  346. package/dest/interfaces/proving-job.d.ts.map +1 -1
  347. package/dest/interfaces/proving-job.js +14 -5
  348. package/dest/interfaces/public_storage_override.d.ts +22 -0
  349. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  350. package/dest/interfaces/public_storage_override.js +7 -0
  351. package/dest/interfaces/server.d.ts +6 -3
  352. package/dest/interfaces/server.d.ts.map +1 -1
  353. package/dest/interfaces/server.js +5 -2
  354. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  355. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  356. package/dest/interfaces/slasher.d.ts +27 -59
  357. package/dest/interfaces/slasher.d.ts.map +1 -1
  358. package/dest/interfaces/slasher.js +10 -4
  359. package/dest/interfaces/tx_provider.d.ts +10 -1
  360. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  361. package/dest/interfaces/validator.d.ts +89 -170
  362. package/dest/interfaces/validator.d.ts.map +1 -1
  363. package/dest/interfaces/validator.js +19 -6
  364. package/dest/interfaces/world_state.d.ts +19 -5
  365. package/dest/interfaces/world_state.d.ts.map +1 -1
  366. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  367. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  368. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  369. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  370. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  371. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  372. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  373. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  374. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  375. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  376. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  377. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  378. package/dest/kernel/hints/index.d.ts +3 -4
  379. package/dest/kernel/hints/index.d.ts.map +1 -1
  380. package/dest/kernel/hints/index.js +2 -3
  381. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  382. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  383. package/dest/kernel/hints/key_validation_request.js +20 -18
  384. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  385. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  386. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  387. package/dest/kernel/hints/read_request.js +1 -1
  388. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  389. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  390. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  391. package/dest/kernel/index.d.ts +10 -2
  392. package/dest/kernel/index.d.ts.map +1 -1
  393. package/dest/kernel/index.js +9 -1
  394. package/dest/kernel/log_hash.d.ts +6 -2
  395. package/dest/kernel/log_hash.d.ts.map +1 -1
  396. package/dest/kernel/log_hash.js +23 -11
  397. package/dest/kernel/note_hash.js +1 -1
  398. package/dest/kernel/nullifier.js +1 -1
  399. package/dest/kernel/private_circuit_public_inputs.d.ts +21 -11
  400. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  401. package/dest/kernel/private_circuit_public_inputs.js +26 -19
  402. package/dest/kernel/private_context_inputs.d.ts +4 -3
  403. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  404. package/dest/kernel/private_context_inputs.js +7 -3
  405. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +10 -12
  406. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  407. package/dest/kernel/private_kernel_circuit_public_inputs.js +13 -10
  408. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  409. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  410. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  411. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  412. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  413. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  414. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  415. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  416. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  417. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  418. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  419. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  420. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  421. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  422. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  423. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  424. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  425. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  426. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  427. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  428. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  429. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  430. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  431. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  432. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  433. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  434. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  435. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  436. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  437. package/dest/kernel/private_kernel_prover_output.js +4 -1
  438. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  439. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  440. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  441. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  442. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  443. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  444. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  445. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  446. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  447. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  448. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  449. package/dest/kernel/private_log_data.d.ts +1 -1
  450. package/dest/kernel/private_log_data.d.ts.map +1 -1
  451. package/dest/kernel/private_log_data.js +1 -1
  452. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  453. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  454. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  455. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  456. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  457. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  458. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  459. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  460. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  461. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  462. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  463. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  464. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  465. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  466. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  467. package/dest/kernel/private_validation_requests.d.ts +3 -3
  468. package/dest/kernel/private_validation_requests.js +9 -9
  469. package/dest/kernel/public_call_request.d.ts +15 -30
  470. package/dest/kernel/public_call_request.d.ts.map +1 -1
  471. package/dest/kernel/public_call_request.js +16 -7
  472. package/dest/kernel/utils/index.d.ts +1 -2
  473. package/dest/kernel/utils/index.d.ts.map +1 -1
  474. package/dest/kernel/utils/index.js +0 -1
  475. package/dest/keys/derivation.d.ts +45 -6
  476. package/dest/keys/derivation.d.ts.map +1 -1
  477. package/dest/keys/derivation.js +60 -27
  478. package/dest/keys/key_types.d.ts +3 -3
  479. package/dest/keys/key_types.d.ts.map +1 -1
  480. package/dest/keys/public_key.d.ts +22 -3
  481. package/dest/keys/public_key.d.ts.map +1 -1
  482. package/dest/keys/public_key.js +20 -1
  483. package/dest/keys/public_keys.d.ts +55 -82
  484. package/dest/keys/public_keys.d.ts.map +1 -1
  485. package/dest/keys/public_keys.js +102 -74
  486. package/dest/keys/utils.d.ts +1 -1
  487. package/dest/keys/utils.d.ts.map +1 -1
  488. package/dest/keys/utils.js +8 -4
  489. package/dest/kv-store/config.d.ts +14 -0
  490. package/dest/kv-store/config.d.ts.map +1 -0
  491. package/dest/kv-store/config.js +21 -0
  492. package/dest/kv-store/index.d.ts +2 -0
  493. package/dest/kv-store/index.d.ts.map +1 -0
  494. package/dest/kv-store/index.js +1 -0
  495. package/dest/l1-contracts/index.d.ts +2 -2
  496. package/dest/l1-contracts/index.d.ts.map +1 -1
  497. package/dest/l1-contracts/index.js +1 -1
  498. package/dest/logs/app_tagging_secret.d.ts +69 -0
  499. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  500. package/dest/logs/app_tagging_secret.js +116 -0
  501. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  502. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  503. package/dest/logs/app_tagging_secret_kind.js +17 -0
  504. package/dest/logs/contract_class_log.d.ts +16 -35
  505. package/dest/logs/contract_class_log.d.ts.map +1 -1
  506. package/dest/logs/contract_class_log.js +11 -13
  507. package/dest/logs/debug_log_store.d.ts +30 -0
  508. package/dest/logs/debug_log_store.d.ts.map +1 -0
  509. package/dest/logs/debug_log_store.js +30 -0
  510. package/dest/logs/index.d.ts +9 -7
  511. package/dest/logs/index.d.ts.map +1 -1
  512. package/dest/logs/index.js +8 -6
  513. package/dest/logs/log_cursor.d.ts +51 -0
  514. package/dest/logs/log_cursor.d.ts.map +1 -0
  515. package/dest/logs/log_cursor.js +82 -0
  516. package/dest/logs/log_result.d.ts +54 -0
  517. package/dest/logs/log_result.d.ts.map +1 -0
  518. package/dest/logs/log_result.js +56 -0
  519. package/dest/logs/logs_query.d.ts +82 -0
  520. package/dest/logs/logs_query.d.ts.map +1 -0
  521. package/dest/logs/logs_query.js +50 -0
  522. package/dest/logs/message_context.d.ts +4 -16
  523. package/dest/logs/message_context.d.ts.map +1 -1
  524. package/dest/logs/message_context.js +1 -48
  525. package/dest/logs/pending_tagged_log.d.ts +6 -9
  526. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  527. package/dest/logs/pending_tagged_log.js +1 -31
  528. package/dest/logs/pre_tag.d.ts +14 -22
  529. package/dest/logs/pre_tag.d.ts.map +1 -1
  530. package/dest/logs/pre_tag.js +2 -2
  531. package/dest/logs/private_log.d.ts +8 -13
  532. package/dest/logs/private_log.d.ts.map +1 -1
  533. package/dest/logs/private_log.js +6 -3
  534. package/dest/logs/public_log.d.ts +4 -3
  535. package/dest/logs/public_log.d.ts.map +1 -1
  536. package/dest/logs/public_log.js +2 -1
  537. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  538. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  539. package/dest/logs/query_all_logs_by_tags.js +64 -0
  540. package/dest/logs/shared_secret_derivation.d.ts +33 -9
  541. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  542. package/dest/logs/shared_secret_derivation.js +49 -10
  543. package/dest/logs/siloed_tag.d.ts +12 -9
  544. package/dest/logs/siloed_tag.d.ts.map +1 -1
  545. package/dest/logs/siloed_tag.js +18 -7
  546. package/dest/logs/tag.d.ts +5 -6
  547. package/dest/logs/tag.d.ts.map +1 -1
  548. package/dest/logs/tag.js +5 -1
  549. package/dest/logs/tagging_index_range.d.ts +22 -0
  550. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  551. package/dest/logs/tagging_index_range.js +8 -0
  552. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  553. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  554. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  555. package/dest/messaging/index.d.ts +2 -1
  556. package/dest/messaging/index.d.ts.map +1 -1
  557. package/dest/messaging/index.js +1 -0
  558. package/dest/messaging/l1_to_l2_message.d.ts +25 -3
  559. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  560. package/dest/messaging/l1_to_l2_message.js +38 -15
  561. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  562. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  563. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  564. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  565. package/dest/messaging/l2_to_l1_membership.js +133 -30
  566. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  567. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  568. package/dest/messaging/l2_to_l1_message.js +21 -12
  569. package/dest/noir/index.d.ts +7 -5
  570. package/dest/noir/index.d.ts.map +1 -1
  571. package/dest/note/index.d.ts +1 -2
  572. package/dest/note/index.d.ts.map +1 -1
  573. package/dest/note/index.js +0 -1
  574. package/dest/note/note.d.ts +2 -2
  575. package/dest/note/note.d.ts.map +1 -1
  576. package/dest/note/note_dao.d.ts +1 -1
  577. package/dest/note/note_dao.d.ts.map +1 -1
  578. package/dest/note/note_dao.js +1 -4
  579. package/dest/p2p/attestation_utils.d.ts +11 -1
  580. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  581. package/dest/p2p/attestation_utils.js +53 -1
  582. package/dest/p2p/block_proposal.d.ts +32 -15
  583. package/dest/p2p/block_proposal.d.ts.map +1 -1
  584. package/dest/p2p/block_proposal.js +58 -42
  585. package/dest/p2p/checkpoint_attestation.d.ts +25 -9
  586. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  587. package/dest/p2p/checkpoint_attestation.js +33 -24
  588. package/dest/p2p/checkpoint_proposal.d.ts +51 -24
  589. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  590. package/dest/p2p/checkpoint_proposal.js +77 -65
  591. package/dest/p2p/client_type.d.ts +2 -5
  592. package/dest/p2p/client_type.d.ts.map +1 -1
  593. package/dest/p2p/client_type.js +0 -7
  594. package/dest/p2p/consensus_payload.d.ts +33 -17
  595. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  596. package/dest/p2p/consensus_payload.js +47 -21
  597. package/dest/p2p/constants.d.ts +3 -1
  598. package/dest/p2p/constants.d.ts.map +1 -1
  599. package/dest/p2p/constants.js +1 -0
  600. package/dest/p2p/gossipable.d.ts +4 -4
  601. package/dest/p2p/gossipable.d.ts.map +1 -1
  602. package/dest/p2p/index.d.ts +1 -3
  603. package/dest/p2p/index.d.ts.map +1 -1
  604. package/dest/p2p/index.js +0 -2
  605. package/dest/p2p/peer_error.d.ts +3 -1
  606. package/dest/p2p/peer_error.d.ts.map +1 -1
  607. package/dest/p2p/peer_error.js +5 -0
  608. package/dest/p2p/signature_utils.d.ts +35 -17
  609. package/dest/p2p/signature_utils.d.ts.map +1 -1
  610. package/dest/p2p/signature_utils.js +125 -20
  611. package/dest/p2p/signed_txs.d.ts +15 -13
  612. package/dest/p2p/signed_txs.d.ts.map +1 -1
  613. package/dest/p2p/signed_txs.js +26 -24
  614. package/dest/p2p/topic_type.d.ts +3 -4
  615. package/dest/p2p/topic_type.d.ts.map +1 -1
  616. package/dest/p2p/topic_type.js +7 -24
  617. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  618. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  619. package/dest/parity/parity_base_private_inputs.js +7 -5
  620. package/dest/parity/parity_public_inputs.d.ts +8 -4
  621. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  622. package/dest/parity/parity_public_inputs.js +6 -3
  623. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  624. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  625. package/dest/proofs/chonk_proof.d.ts +57 -7
  626. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  627. package/dest/proofs/chonk_proof.js +112 -15
  628. package/dest/proofs/recursive_proof.d.ts +2 -2
  629. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  630. package/dest/rollup/avm_proof_data.d.ts +3 -3
  631. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  632. package/dest/rollup/block_headers_hash.d.ts +1 -1
  633. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  634. package/dest/rollup/block_headers_hash.js +8 -2
  635. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  636. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  637. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  638. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  639. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  640. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  641. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  642. package/dest/rollup/checkpoint_header.d.ts +10 -5
  643. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  644. package/dest/rollup/checkpoint_header.js +22 -12
  645. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  646. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  647. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  648. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  649. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  650. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  651. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  652. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  653. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  654. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  655. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  656. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  657. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  658. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  659. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  660. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  661. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  662. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  663. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  664. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  665. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  666. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  667. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  668. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  669. package/dest/schemas/schemas.d.ts +32 -78
  670. package/dest/schemas/schemas.d.ts.map +1 -1
  671. package/dest/schemas/schemas.js +2 -2
  672. package/dest/slashing/helpers.d.ts +2 -2
  673. package/dest/slashing/helpers.d.ts.map +1 -1
  674. package/dest/slashing/helpers.js +16 -7
  675. package/dest/slashing/index.d.ts +2 -3
  676. package/dest/slashing/index.d.ts.map +1 -1
  677. package/dest/slashing/index.js +1 -2
  678. package/dest/slashing/serialization.d.ts +2 -6
  679. package/dest/slashing/serialization.d.ts.map +1 -1
  680. package/dest/slashing/serialization.js +0 -60
  681. package/dest/slashing/types.d.ts +21 -111
  682. package/dest/slashing/types.d.ts.map +1 -1
  683. package/dest/slashing/types.js +28 -24
  684. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  685. package/dest/slashing/votes.d.ts.map +1 -0
  686. package/dest/slashing/{tally.js → votes.js} +35 -3
  687. package/dest/snapshots/types.d.ts +15 -78
  688. package/dest/snapshots/types.d.ts.map +1 -1
  689. package/dest/stats/stats.d.ts +2 -4
  690. package/dest/stats/stats.d.ts.map +1 -1
  691. package/dest/tests/factories.d.ts +25 -56
  692. package/dest/tests/factories.d.ts.map +1 -1
  693. package/dest/tests/factories.js +93 -120
  694. package/dest/tests/mocks.d.ts +15 -7
  695. package/dest/tests/mocks.d.ts.map +1 -1
  696. package/dest/tests/mocks.js +69 -70
  697. package/dest/timetable/budgets.d.ts +57 -0
  698. package/dest/timetable/budgets.d.ts.map +1 -0
  699. package/dest/timetable/budgets.js +56 -0
  700. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  701. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  702. package/dest/timetable/build_proposer_timetable.js +17 -0
  703. package/dest/timetable/consensus_timetable.d.ts +70 -0
  704. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  705. package/dest/timetable/consensus_timetable.js +89 -0
  706. package/dest/timetable/index.d.ts +5 -0
  707. package/dest/timetable/index.d.ts.map +1 -0
  708. package/dest/timetable/index.js +4 -0
  709. package/dest/timetable/proposer_timetable.d.ts +106 -0
  710. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  711. package/dest/timetable/proposer_timetable.js +132 -0
  712. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  713. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  714. package/dest/trees/append_only_tree_snapshot.js +6 -3
  715. package/dest/trees/nullifier_leaf.d.ts +19 -42
  716. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  717. package/dest/trees/nullifier_leaf.js +3 -0
  718. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  719. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  720. package/dest/trees/nullifier_membership_witness.js +0 -21
  721. package/dest/trees/public_data_leaf.d.ts +22 -53
  722. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  723. package/dest/trees/public_data_leaf.js +7 -6
  724. package/dest/trees/public_data_witness.d.ts +19 -71
  725. package/dest/trees/public_data_witness.d.ts.map +1 -1
  726. package/dest/trees/public_data_witness.js +0 -27
  727. package/dest/tx/block_header.d.ts +7 -4
  728. package/dest/tx/block_header.d.ts.map +1 -1
  729. package/dest/tx/block_header.js +13 -6
  730. package/dest/tx/call_context.d.ts +4 -14
  731. package/dest/tx/call_context.d.ts.map +1 -1
  732. package/dest/tx/capsule.d.ts +7 -3
  733. package/dest/tx/capsule.d.ts.map +1 -1
  734. package/dest/tx/capsule.js +9 -3
  735. package/dest/tx/execution_payload.d.ts +1 -1
  736. package/dest/tx/execution_payload.d.ts.map +1 -1
  737. package/dest/tx/execution_payload.js +1 -1
  738. package/dest/tx/fee_provider.d.ts +10 -0
  739. package/dest/tx/fee_provider.d.ts.map +1 -0
  740. package/dest/tx/fee_provider.js +1 -0
  741. package/dest/tx/function_data.d.ts +4 -10
  742. package/dest/tx/function_data.d.ts.map +1 -1
  743. package/dest/tx/global_variable_builder.d.ts +4 -15
  744. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  745. package/dest/tx/global_variables.d.ts +19 -52
  746. package/dest/tx/global_variables.d.ts.map +1 -1
  747. package/dest/tx/global_variables.js +10 -14
  748. package/dest/tx/hashed_values.d.ts +10 -3
  749. package/dest/tx/hashed_values.d.ts.map +1 -1
  750. package/dest/tx/hashed_values.js +15 -4
  751. package/dest/tx/in_tx.d.ts +6 -18
  752. package/dest/tx/in_tx.d.ts.map +1 -1
  753. package/dest/tx/index.d.ts +2 -2
  754. package/dest/tx/index.d.ts.map +1 -1
  755. package/dest/tx/index.js +1 -1
  756. package/dest/tx/indexed_tx_effect.d.ts +9 -20
  757. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  758. package/dest/tx/indexed_tx_effect.js +9 -5
  759. package/dest/tx/offchain_effect.js +1 -1
  760. package/dest/tx/partial_state_reference.d.ts +22 -65
  761. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  762. package/dest/tx/partial_state_reference.js +6 -3
  763. package/dest/tx/private_execution_result.d.ts +11 -21
  764. package/dest/tx/private_execution_result.d.ts.map +1 -1
  765. package/dest/tx/private_execution_result.js +6 -6
  766. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  767. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  768. package/dest/tx/private_tx_constant_data.js +13 -4
  769. package/dest/tx/profiling.d.ts +70 -356
  770. package/dest/tx/profiling.d.ts.map +1 -1
  771. package/dest/tx/profiling.js +21 -9
  772. package/dest/tx/protocol_contracts.d.ts +5 -9
  773. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  774. package/dest/tx/protocol_contracts.js +2 -2
  775. package/dest/tx/proven_tx.d.ts +30 -74
  776. package/dest/tx/proven_tx.d.ts.map +1 -1
  777. package/dest/tx/proven_tx.js +6 -0
  778. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  779. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  780. package/dest/tx/public_call_request_with_calldata.js +6 -3
  781. package/dest/tx/public_simulation_output.d.ts +4 -2
  782. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  783. package/dest/tx/public_simulation_output.js +7 -3
  784. package/dest/tx/simulated_tx.d.ts +77 -1149
  785. package/dest/tx/simulated_tx.d.ts.map +1 -1
  786. package/dest/tx/simulated_tx.js +23 -13
  787. package/dest/tx/state_reference.d.ts +30 -117
  788. package/dest/tx/state_reference.d.ts.map +1 -1
  789. package/dest/tx/state_reference.js +6 -4
  790. package/dest/tx/tree_snapshots.d.ts +27 -84
  791. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  792. package/dest/tx/tree_snapshots.js +6 -4
  793. package/dest/tx/tx.d.ts +34 -17
  794. package/dest/tx/tx.d.ts.map +1 -1
  795. package/dest/tx/tx.js +70 -30
  796. package/dest/tx/tx_constant_data.d.ts +4 -3
  797. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  798. package/dest/tx/tx_constant_data.js +6 -3
  799. package/dest/tx/tx_context.d.ts +32 -131
  800. package/dest/tx/tx_context.d.ts.map +1 -1
  801. package/dest/tx/tx_context.js +6 -6
  802. package/dest/tx/tx_hash.d.ts +6 -4
  803. package/dest/tx/tx_hash.d.ts.map +1 -1
  804. package/dest/tx/tx_hash.js +13 -5
  805. package/dest/tx/tx_receipt.d.ts +151 -51
  806. package/dest/tx/tx_receipt.d.ts.map +1 -1
  807. package/dest/tx/tx_receipt.js +145 -51
  808. package/dest/tx/tx_request.js +2 -2
  809. package/dest/tx/validator/error_texts.d.ts +11 -3
  810. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  811. package/dest/tx/validator/error_texts.js +12 -2
  812. package/dest/tx/validator/tx_validator.d.ts +6 -28
  813. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  814. package/dest/tx/validator/tx_validator.js +0 -4
  815. package/dest/types/shared.d.ts +4 -12
  816. package/dest/types/shared.d.ts.map +1 -1
  817. package/dest/types/shared.js +6 -12
  818. package/dest/update-checker/dev_version.d.ts +3 -0
  819. package/dest/update-checker/dev_version.d.ts.map +1 -0
  820. package/dest/update-checker/dev_version.js +1 -0
  821. package/dest/update-checker/index.d.ts +4 -2
  822. package/dest/update-checker/index.d.ts.map +1 -1
  823. package/dest/update-checker/index.js +3 -1
  824. package/dest/update-checker/package_version.d.ts +6 -0
  825. package/dest/update-checker/package_version.d.ts.map +1 -0
  826. package/dest/update-checker/package_version.js +13 -0
  827. package/dest/update-checker/version_checker.d.ts +25 -0
  828. package/dest/update-checker/version_checker.d.ts.map +1 -0
  829. package/dest/update-checker/version_checker.js +50 -0
  830. package/dest/validators/errors.d.ts +21 -1
  831. package/dest/validators/errors.d.ts.map +1 -1
  832. package/dest/validators/errors.js +19 -0
  833. package/dest/validators/schemas.d.ts +147 -614
  834. package/dest/validators/schemas.d.ts.map +1 -1
  835. package/dest/validators/schemas.js +9 -6
  836. package/dest/validators/types.d.ts +21 -4
  837. package/dest/validators/types.d.ts.map +1 -1
  838. package/dest/versioning/versioning.d.ts +4 -2
  839. package/dest/versioning/versioning.d.ts.map +1 -1
  840. package/dest/versioning/versioning.js +5 -2
  841. package/dest/vks/verification_key.d.ts +4 -139
  842. package/dest/vks/verification_key.d.ts.map +1 -1
  843. package/dest/vks/verification_key.js +5 -126
  844. package/dest/world-state/genesis_data.d.ts +21 -0
  845. package/dest/world-state/genesis_data.d.ts.map +1 -0
  846. package/dest/world-state/genesis_data.js +8 -0
  847. package/dest/world-state/index.d.ts +2 -1
  848. package/dest/world-state/index.d.ts.map +1 -1
  849. package/dest/world-state/index.js +1 -0
  850. package/dest/world-state/world_state_revision.d.ts +11 -39
  851. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  852. package/dest/world-state/world_state_revision.js +7 -21
  853. package/package.json +29 -15
  854. package/src/abi/abi.ts +110 -25
  855. package/src/abi/authorization_selector.ts +2 -8
  856. package/src/abi/buffer.ts +38 -5
  857. package/src/abi/contract_artifact.ts +51 -22
  858. package/src/abi/decoder.ts +53 -103
  859. package/src/abi/encoder.ts +85 -6
  860. package/src/abi/event_metadata_definition.ts +2 -0
  861. package/src/abi/event_selector.ts +2 -8
  862. package/src/abi/function_call.ts +41 -7
  863. package/src/abi/function_selector.ts +4 -13
  864. package/src/abi/function_signature_decoder.ts +77 -0
  865. package/src/abi/index.ts +1 -0
  866. package/src/abi/note_selector.ts +3 -12
  867. package/src/abi/selector.ts +1 -1
  868. package/src/abi/utils.ts +31 -4
  869. package/src/auth_witness/auth_witness.ts +3 -3
  870. package/src/avm/avm.ts +10 -2
  871. package/src/avm/index.ts +0 -5
  872. package/src/avm/message_pack.ts +12 -3
  873. package/src/avm/revert_code.ts +20 -25
  874. package/src/aztec-address/index.ts +50 -17
  875. package/src/block/attestation_info.ts +16 -11
  876. package/src/block/block_data.ts +25 -0
  877. package/src/block/block_hash.ts +31 -49
  878. package/src/block/block_parameter.ts +72 -4
  879. package/src/block/in_block.ts +2 -2
  880. package/src/block/index.ts +1 -1
  881. package/src/block/l2_block.ts +16 -4
  882. package/src/block/l2_block_info.ts +8 -6
  883. package/src/block/l2_block_source.ts +279 -121
  884. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  885. package/src/block/l2_block_stream/index.ts +1 -0
  886. package/src/block/l2_block_stream/interfaces.ts +101 -9
  887. package/src/block/l2_block_stream/l2_block_stream.ts +268 -158
  888. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  889. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  890. package/src/block/proposal/attestations_and_signers.ts +85 -24
  891. package/src/block/test/l2_tips_store_test_suite.ts +276 -22
  892. package/src/block/validate_block_result.ts +48 -2
  893. package/src/checkpoint/checkpoint.ts +55 -18
  894. package/src/checkpoint/checkpoint_data.ts +91 -0
  895. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  896. package/src/checkpoint/digest.ts +28 -0
  897. package/src/checkpoint/index.ts +6 -0
  898. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  899. package/src/checkpoint/published_checkpoint.ts +3 -1
  900. package/src/checkpoint/simulation_overrides.ts +171 -0
  901. package/src/checkpoint/validate.ts +240 -0
  902. package/src/config/chain-config.ts +13 -16
  903. package/src/config/index.ts +2 -0
  904. package/src/config/network-consensus-config.ts +291 -0
  905. package/src/config/node-rpc-config.ts +2 -1
  906. package/src/config/sequencer-config.ts +96 -0
  907. package/src/contract/artifact_hash.ts +15 -3
  908. package/src/contract/complete_address.ts +7 -3
  909. package/src/contract/contract_address.ts +14 -13
  910. package/src/contract/contract_class.ts +6 -5
  911. package/src/contract/contract_class_id.ts +7 -6
  912. package/src/contract/contract_instance.ts +73 -3
  913. package/src/contract/index.ts +0 -3
  914. package/src/contract/interfaces/contract_class.ts +2 -82
  915. package/src/contract/interfaces/contract_data_source.ts +2 -4
  916. package/src/contract/interfaces/contract_instance.ts +32 -10
  917. package/src/contract/interfaces/node-info.ts +14 -0
  918. package/src/contract/partial_address.ts +8 -2
  919. package/src/contract/private_function.ts +5 -3
  920. package/src/database-version/database_version.ts +87 -0
  921. package/src/database-version/version_manager.ts +114 -83
  922. package/src/deserialization/index.ts +35 -2
  923. package/src/epoch-helpers/index.ts +30 -0
  924. package/src/file-store/factory.ts +20 -4
  925. package/src/file-store/http.ts +29 -10
  926. package/src/file-store/index.ts +2 -0
  927. package/src/file-store/local.ts +15 -5
  928. package/src/file-store/memory.ts +94 -0
  929. package/src/file-store/s3.ts +12 -3
  930. package/src/gas/README.md +318 -0
  931. package/src/gas/fee_math.ts +120 -0
  932. package/src/gas/gas.ts +8 -3
  933. package/src/gas/gas_fees.ts +29 -10
  934. package/src/gas/gas_settings.ts +63 -15
  935. package/src/gas/index.ts +2 -0
  936. package/src/gas/tx_gas_limits.ts +123 -0
  937. package/src/ha-signing/config.ts +170 -0
  938. package/src/ha-signing/index.ts +29 -0
  939. package/src/ha-signing/local_config.ts +65 -0
  940. package/src/ha-signing/types.ts +126 -0
  941. package/src/hash/hash.ts +75 -18
  942. package/src/hash/map_slot.ts +2 -2
  943. package/src/interfaces/allowed_element.ts +29 -9
  944. package/src/interfaces/api_limit.ts +6 -1
  945. package/src/interfaces/archiver.ts +97 -87
  946. package/src/interfaces/aztec-node-admin.ts +58 -19
  947. package/src/interfaces/aztec-node-debug.ts +92 -0
  948. package/src/interfaces/aztec-node.ts +437 -342
  949. package/src/interfaces/block-builder.ts +76 -12
  950. package/src/interfaces/block_response.ts +92 -0
  951. package/src/interfaces/chain_tips.ts +16 -0
  952. package/src/interfaces/checkpoint_parameter.ts +20 -0
  953. package/src/interfaces/checkpoint_response.ts +84 -0
  954. package/src/interfaces/client.ts +8 -1
  955. package/src/interfaces/configs.ts +108 -14
  956. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  957. package/src/interfaces/l1_publish_info.ts +40 -0
  958. package/src/interfaces/l2_logs_source.ts +13 -39
  959. package/src/interfaces/merkle_tree_operations.ts +20 -23
  960. package/src/interfaces/p2p-bootstrap.ts +2 -2
  961. package/src/interfaces/p2p.ts +60 -31
  962. package/src/interfaces/private_kernel_prover.ts +192 -13
  963. package/src/interfaces/prover-agent.ts +1 -1
  964. package/src/interfaces/prover-broker.ts +22 -0
  965. package/src/interfaces/prover-client.ts +18 -8
  966. package/src/interfaces/prover-node.ts +36 -21
  967. package/src/interfaces/proving-job-source.ts +4 -4
  968. package/src/interfaces/proving-job.ts +18 -6
  969. package/src/interfaces/public_storage_override.ts +26 -0
  970. package/src/interfaces/server.ts +5 -2
  971. package/src/interfaces/server_circuit_prover.ts +2 -2
  972. package/src/interfaces/slasher.ts +21 -10
  973. package/src/interfaces/tx_provider.ts +10 -0
  974. package/src/interfaces/validator.ts +98 -36
  975. package/src/interfaces/world_state.ts +19 -4
  976. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  977. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  978. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  979. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  980. package/src/kernel/hints/index.ts +2 -3
  981. package/src/kernel/hints/key_validation_request.ts +18 -16
  982. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  983. package/src/kernel/hints/read_request.ts +1 -1
  984. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  985. package/src/kernel/index.ts +9 -1
  986. package/src/kernel/log_hash.ts +36 -13
  987. package/src/kernel/note_hash.ts +1 -1
  988. package/src/kernel/nullifier.ts +1 -1
  989. package/src/kernel/private_circuit_public_inputs.ts +26 -15
  990. package/src/kernel/private_context_inputs.ts +10 -3
  991. package/src/kernel/private_kernel_circuit_public_inputs.ts +11 -9
  992. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  993. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  994. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  995. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  996. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  997. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  998. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  999. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  1000. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  1001. package/src/kernel/private_kernel_prover_output.ts +4 -0
  1002. package/src/kernel/private_kernel_reset_dimensions.ts +16 -6
  1003. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  1004. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  1005. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  1006. package/src/kernel/private_log_data.ts +4 -1
  1007. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  1008. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  1009. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  1010. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  1011. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  1012. package/src/kernel/private_validation_requests.ts +8 -8
  1013. package/src/kernel/public_call_request.ts +22 -7
  1014. package/src/kernel/utils/index.ts +0 -1
  1015. package/src/keys/derivation.ts +84 -27
  1016. package/src/keys/key_types.ts +6 -2
  1017. package/src/keys/public_key.ts +26 -2
  1018. package/src/keys/public_keys.ts +125 -111
  1019. package/src/keys/utils.ts +8 -4
  1020. package/src/kv-store/config.ts +29 -0
  1021. package/src/kv-store/index.ts +1 -0
  1022. package/src/l1-contracts/index.ts +1 -1
  1023. package/src/logs/app_tagging_secret.ts +160 -0
  1024. package/src/logs/app_tagging_secret_kind.ts +21 -0
  1025. package/src/logs/contract_class_log.ts +15 -14
  1026. package/src/logs/debug_log_store.ts +54 -0
  1027. package/src/logs/index.ts +8 -6
  1028. package/src/logs/log_cursor.ts +110 -0
  1029. package/src/logs/log_result.ts +104 -0
  1030. package/src/logs/logs_query.ts +138 -0
  1031. package/src/logs/message_context.ts +6 -50
  1032. package/src/logs/pending_tagged_log.ts +6 -35
  1033. package/src/logs/pre_tag.ts +3 -6
  1034. package/src/logs/private_log.ts +9 -3
  1035. package/src/logs/public_log.ts +4 -2
  1036. package/src/logs/query_all_logs_by_tags.ts +98 -0
  1037. package/src/logs/shared_secret_derivation.ts +55 -11
  1038. package/src/logs/siloed_tag.ts +28 -14
  1039. package/src/logs/tag.ts +9 -9
  1040. package/src/logs/tagging_index_range.ts +18 -0
  1041. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  1042. package/src/messaging/index.ts +1 -0
  1043. package/src/messaging/l1_to_l2_message.ts +56 -15
  1044. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  1045. package/src/messaging/l2_to_l1_membership.ts +192 -38
  1046. package/src/messaging/l2_to_l1_message.ts +29 -9
  1047. package/src/noir/index.ts +6 -3
  1048. package/src/note/index.ts +0 -1
  1049. package/src/note/note_dao.ts +1 -4
  1050. package/src/p2p/attestation_utils.ts +64 -1
  1051. package/src/p2p/block_proposal.ts +112 -39
  1052. package/src/p2p/checkpoint_attestation.ts +44 -31
  1053. package/src/p2p/checkpoint_proposal.ts +159 -86
  1054. package/src/p2p/client_type.ts +0 -6
  1055. package/src/p2p/consensus_payload.ts +68 -24
  1056. package/src/p2p/constants.ts +3 -0
  1057. package/src/p2p/gossipable.ts +4 -4
  1058. package/src/p2p/index.ts +0 -2
  1059. package/src/p2p/peer_error.ts +7 -0
  1060. package/src/p2p/signature_utils.ts +117 -23
  1061. package/src/p2p/signed_txs.ts +46 -28
  1062. package/src/p2p/topic_type.ts +8 -15
  1063. package/src/parity/parity_base_private_inputs.ts +10 -4
  1064. package/src/parity/parity_public_inputs.ts +9 -2
  1065. package/src/proofs/chonk_proof.ts +132 -12
  1066. package/src/rollup/avm_proof_data.ts +2 -2
  1067. package/src/rollup/block_headers_hash.ts +11 -2
  1068. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  1069. package/src/rollup/checkpoint_header.ts +18 -4
  1070. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  1071. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  1072. package/src/schemas/schemas.ts +6 -1
  1073. package/src/slashing/helpers.ts +21 -9
  1074. package/src/slashing/index.ts +1 -2
  1075. package/src/slashing/serialization.ts +1 -81
  1076. package/src/slashing/types.ts +38 -49
  1077. package/src/slashing/{tally.ts → votes.ts} +41 -2
  1078. package/src/stats/stats.ts +10 -4
  1079. package/src/tests/factories.ts +128 -165
  1080. package/src/tests/mocks.ts +111 -84
  1081. package/src/timetable/README.md +609 -0
  1082. package/src/timetable/budgets.ts +87 -0
  1083. package/src/timetable/build_proposer_timetable.ts +42 -0
  1084. package/src/timetable/consensus_timetable.ts +126 -0
  1085. package/src/timetable/index.ts +4 -0
  1086. package/src/timetable/proposer_timetable.ts +190 -0
  1087. package/src/timetable/timetable-example.svg +108 -0
  1088. package/src/trees/append_only_tree_snapshot.ts +8 -3
  1089. package/src/trees/nullifier_leaf.ts +4 -0
  1090. package/src/trees/nullifier_membership_witness.ts +0 -21
  1091. package/src/trees/public_data_leaf.ts +11 -5
  1092. package/src/trees/public_data_witness.ts +0 -31
  1093. package/src/tx/block_header.ts +19 -8
  1094. package/src/tx/capsule.ts +10 -2
  1095. package/src/tx/execution_payload.ts +2 -1
  1096. package/src/tx/fee_provider.ts +10 -0
  1097. package/src/tx/global_variable_builder.ts +3 -20
  1098. package/src/tx/global_variables.ts +15 -23
  1099. package/src/tx/hashed_values.ts +19 -9
  1100. package/src/tx/index.ts +1 -1
  1101. package/src/tx/indexed_tx_effect.ts +18 -5
  1102. package/src/tx/offchain_effect.ts +1 -1
  1103. package/src/tx/partial_state_reference.ts +8 -3
  1104. package/src/tx/private_execution_result.ts +5 -5
  1105. package/src/tx/private_tx_constant_data.ts +25 -2
  1106. package/src/tx/profiling.ts +20 -9
  1107. package/src/tx/protocol_contracts.ts +2 -2
  1108. package/src/tx/proven_tx.ts +6 -0
  1109. package/src/tx/public_call_request_with_calldata.ts +8 -3
  1110. package/src/tx/public_simulation_output.ts +4 -0
  1111. package/src/tx/simulated_tx.ts +39 -20
  1112. package/src/tx/state_reference.ts +9 -4
  1113. package/src/tx/tree_snapshots.ts +9 -4
  1114. package/src/tx/tx.ts +98 -37
  1115. package/src/tx/tx_constant_data.ts +8 -3
  1116. package/src/tx/tx_context.ts +8 -3
  1117. package/src/tx/tx_hash.ts +20 -5
  1118. package/src/tx/tx_receipt.ts +269 -74
  1119. package/src/tx/tx_request.ts +2 -2
  1120. package/src/tx/validator/error_texts.ts +15 -2
  1121. package/src/tx/validator/tx_validator.ts +2 -6
  1122. package/src/types/shared.ts +8 -13
  1123. package/src/update-checker/dev_version.ts +2 -0
  1124. package/src/update-checker/index.ts +3 -1
  1125. package/src/update-checker/package_version.ts +17 -0
  1126. package/src/update-checker/version_checker.ts +65 -0
  1127. package/src/validators/errors.ts +26 -0
  1128. package/src/validators/schemas.ts +13 -4
  1129. package/src/validators/types.ts +25 -5
  1130. package/src/versioning/versioning.ts +5 -2
  1131. package/src/vks/verification_key.ts +5 -184
  1132. package/src/world-state/genesis_data.ts +37 -0
  1133. package/src/world-state/index.ts +1 -0
  1134. package/src/world-state/world_state_revision.ts +9 -34
  1135. package/dest/abi/mocked_keys.d.ts +0 -2
  1136. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1137. package/dest/abi/mocked_keys.js +0 -1
  1138. package/dest/avm/contract_storage_read.d.ts +0 -58
  1139. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1140. package/dest/avm/contract_storage_read.js +0 -65
  1141. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1142. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1143. package/dest/avm/contract_storage_update_request.js +0 -80
  1144. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1145. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1146. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1147. package/dest/avm/public_data_update_request.d.ts +0 -62
  1148. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1149. package/dest/avm/public_data_update_request.js +0 -67
  1150. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1151. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1152. package/dest/avm/public_inner_call_request.js +0 -74
  1153. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1154. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1155. package/dest/block/checkpointed_l2_block.js +0 -46
  1156. package/dest/contract/deployment_info.d.ts +0 -24
  1157. package/dest/contract/deployment_info.d.ts.map +0 -1
  1158. package/dest/contract/deployment_info.js +0 -3
  1159. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1160. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1161. package/dest/contract/private_function_membership_proof.js +0 -124
  1162. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1163. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1164. package/dest/contract/utility_function_membership_proof.js +0 -87
  1165. package/dest/database-version/index.d.ts +0 -2
  1166. package/dest/database-version/index.d.ts.map +0 -1
  1167. package/dest/database-version/index.js +0 -1
  1168. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1169. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1170. package/dest/interfaces/epoch-prover.js +0 -1
  1171. package/dest/interfaces/get_logs_response.d.ts +0 -90
  1172. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1173. package/dest/interfaces/get_logs_response.js +0 -12
  1174. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1175. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1176. package/dest/interfaces/prover-coordination.js +0 -1
  1177. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1178. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1179. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1180. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1181. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1182. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1183. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1184. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1185. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1186. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1187. package/dest/kernel/utils/optional_number.js +0 -42
  1188. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1189. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1190. package/dest/l1-contracts/slash_factory.js +0 -157
  1191. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1192. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1193. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1194. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1195. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1196. package/dest/logs/extended_contract_class_log.js +0 -67
  1197. package/dest/logs/extended_public_log.d.ts +0 -100
  1198. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1199. package/dest/logs/extended_public_log.js +0 -73
  1200. package/dest/logs/log_filter.d.ts +0 -22
  1201. package/dest/logs/log_filter.d.ts.map +0 -1
  1202. package/dest/logs/log_filter.js +0 -11
  1203. package/dest/logs/log_id.d.ts +0 -82
  1204. package/dest/logs/log_id.d.ts.map +0 -1
  1205. package/dest/logs/log_id.js +0 -91
  1206. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1207. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1208. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1209. package/dest/note/notes_filter.d.ts +0 -27
  1210. package/dest/note/notes_filter.d.ts.map +0 -1
  1211. package/dest/note/notes_filter.js +0 -11
  1212. package/dest/p2p/interface.d.ts +0 -5
  1213. package/dest/p2p/interface.d.ts.map +0 -1
  1214. package/dest/p2p/interface.js +0 -1
  1215. package/dest/slashing/empire.d.ts +0 -31
  1216. package/dest/slashing/empire.d.ts.map +0 -1
  1217. package/dest/slashing/empire.js +0 -85
  1218. package/dest/slashing/tally.d.ts.map +0 -1
  1219. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1220. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1221. package/dest/tx/validator/empty_validator.js +0 -7
  1222. package/dest/update-checker/update-checker.d.ts +0 -49
  1223. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1224. package/dest/update-checker/update-checker.js +0 -130
  1225. package/src/abi/mocked_keys.ts +0 -2
  1226. package/src/avm/contract_storage_read.ts +0 -77
  1227. package/src/avm/contract_storage_update_request.ts +0 -93
  1228. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1229. package/src/avm/public_data_update_request.ts +0 -106
  1230. package/src/avm/public_inner_call_request.ts +0 -85
  1231. package/src/block/checkpointed_l2_block.ts +0 -70
  1232. package/src/contract/deployment_info.ts +0 -25
  1233. package/src/contract/private_function_membership_proof.ts +0 -167
  1234. package/src/contract/utility_function_membership_proof.ts +0 -118
  1235. package/src/database-version/index.ts +0 -1
  1236. package/src/interfaces/epoch-prover.ts +0 -72
  1237. package/src/interfaces/get_logs_response.ts +0 -35
  1238. package/src/interfaces/prover-coordination.ts +0 -17
  1239. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1240. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1241. package/src/kernel/utils/optional_number.ts +0 -50
  1242. package/src/l1-contracts/slash_factory.ts +0 -179
  1243. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1244. package/src/logs/extended_contract_class_log.ts +0 -87
  1245. package/src/logs/extended_public_log.ts +0 -94
  1246. package/src/logs/log_filter.ts +0 -31
  1247. package/src/logs/log_id.ts +0 -121
  1248. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1249. package/src/note/notes_filter.ts +0 -38
  1250. package/src/p2p/interface.ts +0 -4
  1251. package/src/slashing/empire.ts +0 -102
  1252. package/src/tx/validator/empty_validator.ts +0 -7
  1253. package/src/update-checker/update-checker.ts +0 -166
@@ -0,0 +1,61 @@
1
+ import { type FeeHeader, RollupContract, type SimulationOverridesPlan } from '@aztec/ethereum/contracts';
2
+ import { CheckpointNumber } from '@aztec/foundation/branded-types';
3
+ import type { Logger } from '@aztec/foundation/log';
4
+ import type { CoordinationSignatureContext } from '../p2p/signature_utils.js';
5
+ import type { ProposedCheckpointData } from './checkpoint_data.js';
6
+ type CheckpointSimulationOverridesPlanInput = {
7
+ /** Target rollup contract. */
8
+ rollup: RollupContract;
9
+ /** Checkpoint number to be proposed. */
10
+ checkpointNumber: CheckpointNumber;
11
+ /** Logger instance. */
12
+ log: Logger;
13
+ /**
14
+ * The proposed parent checkpoint when pipelining. Its `checkpointNumber` must equal
15
+ * `checkpointNumber - 1`; the helper enforces this. Mutually exclusive with
16
+ * `invalidateToPendingCheckpointNumber`.
17
+ */
18
+ proposedCheckpointData?: ProposedCheckpointData;
19
+ /**
20
+ * The pending checkpoint number we'll end up at after invalidation lands. Mutually exclusive
21
+ * with `proposedCheckpointData`.
22
+ */
23
+ invalidateToPendingCheckpointNumber?: CheckpointNumber;
24
+ /**
25
+ * The real on-chain pending checkpoint number (typically `syncedTo.checkpointedCheckpointNumber`).
26
+ * Used as the snapshot we pin both `pending` and `proven` to avoid prunes in simulation.
27
+ */
28
+ checkpointedCheckpointNumber: CheckpointNumber;
29
+ /**
30
+ * Chain-level consensus signature context. Used to recompute the parent's `payloadDigest` for the
31
+ * pipelined simulation override so it matches what `propose` will write into `tempCheckpointLogs[parent]`
32
+ * once the parent lands.
33
+ */
34
+ signatureContext: CoordinationSignatureContext;
35
+ };
36
+ /**
37
+ * Builds the SimulationOverridesPlan describing the simulated L1 rollup state for a checkpoint's
38
+ * enqueue-time simulations: `canProposeAt` (in Sequencer.doWork) and the propose-related sims
39
+ * (validateBlockHeader, simulateProposeTx). The plan reflects "as if our pipelined parent
40
+ * checkpoint has landed and any required invalidation has executed" — the gap that needs to be
41
+ * bridged at enqueue time.
42
+ *
43
+ * Pipelining (`proposedCheckpointData`) and invalidation (`invalidateToPendingCheckpointNumber`)
44
+ * are mutually exclusive; passing both throws.
45
+ */
46
+ export declare function buildCheckpointSimulationOverridesPlan(input: CheckpointSimulationOverridesPlanInput): Promise<SimulationOverridesPlan | undefined>;
47
+ type PipelinedParentFeeHeaderInput = {
48
+ checkpointNumber: CheckpointNumber;
49
+ proposedCheckpointData: ProposedCheckpointData;
50
+ rollup: RollupContract;
51
+ log: Logger;
52
+ };
53
+ /**
54
+ * Derives the pending parent fee header used during pipelined proposal simulation. Returns
55
+ * `undefined` only when no grandparent exists (i.e. the proposed parent is the genesis
56
+ * checkpoint); all other failure modes (missing grandparent state, missing fee header, RPC
57
+ * errors) throw so callers don't silently desync the fee-header override.
58
+ */
59
+ export declare function computePipelinedParentFeeHeader(input: PipelinedParentFeeHeaderInput): Promise<FeeHeader | undefined>;
60
+ export {};
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGlvbl9vdmVycmlkZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGVja3BvaW50L3NpbXVsYXRpb25fb3ZlcnJpZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLFNBQVMsRUFDZCxjQUFjLEVBRWQsS0FBSyx1QkFBdUIsRUFDN0IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlFLE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbkUsS0FBSyxzQ0FBc0MsR0FBRztJQUM1Qyw4QkFBOEI7SUFDOUIsTUFBTSxFQUFFLGNBQWMsQ0FBQztJQUN2Qix3Q0FBd0M7SUFDeEMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbkMsdUJBQXVCO0lBQ3ZCLEdBQUcsRUFBRSxNQUFNLENBQUM7SUFDWjs7OztPQUlHO0lBQ0gsc0JBQXNCLENBQUMsRUFBRSxzQkFBc0IsQ0FBQztJQUNoRDs7O09BR0c7SUFDSCxtQ0FBbUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDO0lBQ3ZEOzs7T0FHRztJQUNILDRCQUE0QixFQUFFLGdCQUFnQixDQUFDO0lBQy9DOzs7O09BSUc7SUFDSCxnQkFBZ0IsRUFBRSw0QkFBNEIsQ0FBQztDQUNoRCxDQUFDO0FBRUY7Ozs7Ozs7OztHQVNHO0FBQ0gsd0JBQXNCLHNDQUFzQyxDQUMxRCxLQUFLLEVBQUUsc0NBQXNDLEdBQzVDLE9BQU8sQ0FBQyx1QkFBdUIsR0FBRyxTQUFTLENBQUMsQ0FzRDlDO0FBcUJELEtBQUssNkJBQTZCLEdBQUc7SUFDbkMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbkMsc0JBQXNCLEVBQUUsc0JBQXNCLENBQUM7SUFDL0MsTUFBTSxFQUFFLGNBQWMsQ0FBQztJQUN2QixHQUFHLEVBQUUsTUFBTSxDQUFDO0NBQ2IsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsd0JBQXNCLCtCQUErQixDQUNuRCxLQUFLLEVBQUUsNkJBQTZCLEdBQ25DLE9BQU8sQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLENBd0JoQyJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation_overrides.d.ts","sourceRoot":"","sources":["../../src/checkpoint/simulation_overrides.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EACd,cAAc,EAEd,KAAK,uBAAuB,EAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGnE,KAAK,sCAAsC,GAAG;IAC5C,8BAA8B;IAC9B,MAAM,EAAE,cAAc,CAAC;IACvB,wCAAwC;IACxC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD;;;OAGG;IACH,mCAAmC,CAAC,EAAE,gBAAgB,CAAC;IACvD;;;OAGG;IACH,4BAA4B,EAAE,gBAAgB,CAAC;IAC/C;;;;OAIG;IACH,gBAAgB,EAAE,4BAA4B,CAAC;CAChD,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,sCAAsC,CAC1D,KAAK,EAAE,sCAAsC,GAC5C,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAsD9C;AAqBD,KAAK,6BAA6B,GAAG;IACnC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,+BAA+B,CACnD,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAwBhC"}
@@ -0,0 +1,98 @@
1
+ import { RollupContract, SimulationOverridesBuilder } from '@aztec/ethereum/contracts';
2
+ import { CheckpointNumber } from '@aztec/foundation/branded-types';
3
+ import { computeCheckpointPayloadDigest } from './digest.js';
4
+ /**
5
+ * Builds the SimulationOverridesPlan describing the simulated L1 rollup state for a checkpoint's
6
+ * enqueue-time simulations: `canProposeAt` (in Sequencer.doWork) and the propose-related sims
7
+ * (validateBlockHeader, simulateProposeTx). The plan reflects "as if our pipelined parent
8
+ * checkpoint has landed and any required invalidation has executed" — the gap that needs to be
9
+ * bridged at enqueue time.
10
+ *
11
+ * Pipelining (`proposedCheckpointData`) and invalidation (`invalidateToPendingCheckpointNumber`)
12
+ * are mutually exclusive; passing both throws.
13
+ */ export async function buildCheckpointSimulationOverridesPlan(input) {
14
+ if (input.proposedCheckpointData && input.invalidateToPendingCheckpointNumber !== undefined) {
15
+ throw new Error('Error in buildCheckpointSimulationOverridesPlan: proposedCheckpointData and invalidateToPendingCheckpointNumber are mutually exclusive');
16
+ }
17
+ const builder = new SimulationOverridesBuilder();
18
+ const pendingCheckpointNumber = derivePendingCheckpointNumber(input);
19
+ // Override the latest checkpoint number when invalidating or pipelining, so our checkpoint
20
+ // follows from it. We also override the proven chain tip so we dont need to worry about
21
+ // prunes kicking in that would break out simulation if there's a prune pending. We always
22
+ // assume that a proof will land in time. If we don't have a pending checkpoint number to force,
23
+ // we still set both tips to the current checkpoint number to avoid the prune trigger.
24
+ const overridenChainTip = pendingCheckpointNumber ?? input.checkpointedCheckpointNumber;
25
+ builder.withChainTips({
26
+ pending: overridenChainTip,
27
+ proven: overridenChainTip
28
+ });
29
+ if (input.proposedCheckpointData) {
30
+ const { header, archive, checkpointOutHash, feeAssetPriceModifier } = input.proposedCheckpointData;
31
+ builder.withPendingArchive(archive.root);
32
+ // Override every locally-derivable `tempCheckpointLogs[parent]` field that L1 will eventually
33
+ // write. `slotNumber` is load-bearing for `STFLib.canPruneAtTime`: without it the cell reads
34
+ // slotNumber 0, the contract treats the pending tip as belonging to an expired epoch, and
35
+ // `getEffectivePendingCheckpointNumber` silently collapses pending back to proven — producing
36
+ // a spurious `Rollup__InvalidArchive` against the on-chain genesis archive. The other fields
37
+ // (headerHash, outHash, payloadDigest) are not strictly load-bearing for `canProposeAt` /
38
+ // `validateBlockHeader`, but mirroring the full cell keeps the simulation byte-faithful with
39
+ // what the actual `propose()` send will observe, which is a defense against future reads
40
+ // taking dependencies on them.
41
+ builder.withPendingTempCheckpointLogFields({
42
+ headerHash: header.hash(),
43
+ outHash: checkpointOutHash,
44
+ slotNumber: header.slotNumber,
45
+ payloadDigest: computeCheckpointPayloadDigest({
46
+ header,
47
+ archiveRoot: archive.root,
48
+ feeAssetPriceModifier,
49
+ signatureContext: input.signatureContext
50
+ })
51
+ });
52
+ const feeHeader = await computePipelinedParentFeeHeader({
53
+ checkpointNumber: input.checkpointNumber,
54
+ proposedCheckpointData: input.proposedCheckpointData,
55
+ rollup: input.rollup,
56
+ log: input.log
57
+ });
58
+ if (feeHeader) {
59
+ builder.withPendingFeeHeader(feeHeader);
60
+ }
61
+ }
62
+ return builder.build();
63
+ }
64
+ function derivePendingCheckpointNumber(input) {
65
+ if (input.invalidateToPendingCheckpointNumber !== undefined) {
66
+ return input.invalidateToPendingCheckpointNumber;
67
+ }
68
+ if (!input.proposedCheckpointData) {
69
+ return undefined;
70
+ }
71
+ if (input.checkpointNumber < 1) {
72
+ throw new Error(`Cannot build simulation override for checkpoint ${input.checkpointNumber}: no parent exists`);
73
+ }
74
+ const expectedParent = CheckpointNumber(input.checkpointNumber - 1);
75
+ if (input.proposedCheckpointData.checkpointNumber !== expectedParent) {
76
+ throw new Error(`Cannot build simulation override for checkpoint ${input.checkpointNumber}: proposedCheckpointData.checkpointNumber (${input.proposedCheckpointData.checkpointNumber}) does not match expected parent ${expectedParent}`);
77
+ }
78
+ return expectedParent;
79
+ }
80
+ /**
81
+ * Derives the pending parent fee header used during pipelined proposal simulation. Returns
82
+ * `undefined` only when no grandparent exists (i.e. the proposed parent is the genesis
83
+ * checkpoint); all other failure modes (missing grandparent state, missing fee header, RPC
84
+ * errors) throw so callers don't silently desync the fee-header override.
85
+ */ export async function computePipelinedParentFeeHeader(input) {
86
+ if (input.checkpointNumber < 2) {
87
+ return undefined;
88
+ }
89
+ const grandparentCheckpointNumber = CheckpointNumber(input.checkpointNumber - 2);
90
+ const [grandparentCheckpoint, manaTarget] = await Promise.all([
91
+ input.rollup.getCheckpoint(grandparentCheckpointNumber),
92
+ input.rollup.getManaTarget()
93
+ ]);
94
+ if (!grandparentCheckpoint?.feeHeader) {
95
+ throw new Error(`Grandparent checkpoint or feeHeader missing for checkpoint ${grandparentCheckpointNumber.toString()}`);
96
+ }
97
+ return RollupContract.computeChildFeeHeader(grandparentCheckpoint.feeHeader, input.proposedCheckpointData.totalManaUsed, input.proposedCheckpointData.feeAssetPriceModifier, manaTarget);
98
+ }
@@ -0,0 +1,44 @@
1
+ import type { CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
+ import type { Checkpoint } from './checkpoint.js';
3
+ export declare class CheckpointValidationError extends Error {
4
+ readonly checkpointNumber: CheckpointNumber;
5
+ readonly slot: SlotNumber;
6
+ constructor(message: string, checkpointNumber: CheckpointNumber, slot: SlotNumber);
7
+ }
8
+ /**
9
+ * Validates a checkpoint. Throws a CheckpointValidationError if any validation fails.
10
+ * - Validates structural integrity (non-empty, block count, sequential numbers, archive chaining, slot consistency)
11
+ * - Validates checkpoint blob field count against maxBlobFields limit
12
+ * - Validates total L2 gas used by checkpoint blocks against the Rollup contract mana limit
13
+ * - Validates total DA gas used by checkpoint blocks against MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT
14
+ * - Validates individual block L2 gas and DA gas against maxL2BlockGas and maxDABlockGas limits
15
+ */
16
+ export declare function validateCheckpoint(checkpoint: Checkpoint, opts: {
17
+ rollupManaLimit?: number;
18
+ maxL2BlockGas?: number;
19
+ maxDABlockGas?: number;
20
+ maxTxsPerCheckpoint?: number;
21
+ maxTxsPerBlock?: number;
22
+ /**
23
+ * Max blocks per checkpoint. Defaults to {@link MAX_ATTESTABLE_BLOCKS_PER_CHECKPOINT}; the L1-sync
24
+ * ingest path passes `MAX_CAPACITY_BLOCKS_PER_CHECKPOINT` to tolerate larger checkpoints already
25
+ * accepted by L1.
26
+ */
27
+ maxBlocksPerCheckpoint?: number;
28
+ }): void;
29
+ /**
30
+ * Validates structural integrity of a checkpoint.
31
+ * - Non-empty block list
32
+ * - Block count within `maxBlocksPerCheckpoint` (default {@link MAX_ATTESTABLE_BLOCKS_PER_CHECKPOINT})
33
+ * - Checkpoint slot matches the first block's slot
34
+ * - Checkpoint lastArchiveRoot matches the first block's lastArchive root
35
+ * - Sequential block numbers without gaps
36
+ * - Sequential indexWithinCheckpoint starting at 0
37
+ * - Archive root chaining between consecutive blocks
38
+ * - Consistent slot number across all blocks
39
+ * - Global variables (slot, timestamp, coinbase, feeRecipient, gasFees) match checkpoint header for each block
40
+ */
41
+ export declare function validateCheckpointStructure(checkpoint: Checkpoint, opts?: {
42
+ maxBlocksPerCheckpoint?: number;
43
+ }): void;
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGVja3BvaW50L3ZhbGlkYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBSXBGLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELHFCQUFhLHlCQUEwQixTQUFRLEtBQUs7YUFHaEMsZ0JBQWdCLEVBQUUsZ0JBQWdCO2FBQ2xDLElBQUksRUFBRSxVQUFVO0lBSGxDLFlBQ0UsT0FBTyxFQUFFLE1BQU0sRUFDQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFDbEMsSUFBSSxFQUFFLFVBQVUsRUFJakM7Q0FDRjtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0Isa0JBQWtCLENBQ2hDLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLElBQUksRUFBRTtJQUNKLGVBQWUsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN6QixhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdkIsYUFBYSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3ZCLG1CQUFtQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzdCLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN4Qjs7OztPQUlHO0lBQ0gsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDakMsR0FDQSxJQUFJLENBSU47QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILHdCQUFnQiwyQkFBMkIsQ0FDekMsVUFBVSxFQUFFLFVBQVUsRUFDdEIsSUFBSSxHQUFFO0lBQUUsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUE7Q0FBTyxHQUM3QyxJQUFJLENBd0VOIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/checkpoint/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAIpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,yBAA0B,SAAQ,KAAK;aAGhC,gBAAgB,EAAE,gBAAgB;aAClC,IAAI,EAAE,UAAU;IAHlC,YACE,OAAO,EAAE,MAAM,EACC,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,UAAU,EAIjC;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE;IACJ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC,GACA,IAAI,CAIN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,UAAU,EACtB,IAAI,GAAE;IAAE,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7C,IAAI,CAwEN"}
@@ -0,0 +1,123 @@
1
+ import { BLOBS_PER_CHECKPOINT, FIELDS_PER_BLOB, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT } from '@aztec/constants';
2
+ import { sum } from '@aztec/foundation/collection';
3
+ import { MAX_ATTESTABLE_BLOCKS_PER_CHECKPOINT } from '../deserialization/index.js';
4
+ export class CheckpointValidationError extends Error {
5
+ checkpointNumber;
6
+ slot;
7
+ constructor(message, checkpointNumber, slot){
8
+ super(message), this.checkpointNumber = checkpointNumber, this.slot = slot;
9
+ this.name = 'CheckpointValidationError';
10
+ }
11
+ }
12
+ /**
13
+ * Validates a checkpoint. Throws a CheckpointValidationError if any validation fails.
14
+ * - Validates structural integrity (non-empty, block count, sequential numbers, archive chaining, slot consistency)
15
+ * - Validates checkpoint blob field count against maxBlobFields limit
16
+ * - Validates total L2 gas used by checkpoint blocks against the Rollup contract mana limit
17
+ * - Validates total DA gas used by checkpoint blocks against MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT
18
+ * - Validates individual block L2 gas and DA gas against maxL2BlockGas and maxDABlockGas limits
19
+ */ export function validateCheckpoint(checkpoint, opts) {
20
+ validateCheckpointStructure(checkpoint, {
21
+ maxBlocksPerCheckpoint: opts.maxBlocksPerCheckpoint
22
+ });
23
+ validateCheckpointLimits(checkpoint, opts);
24
+ validateCheckpointBlocksLimits(checkpoint, opts);
25
+ }
26
+ /**
27
+ * Validates structural integrity of a checkpoint.
28
+ * - Non-empty block list
29
+ * - Block count within `maxBlocksPerCheckpoint` (default {@link MAX_ATTESTABLE_BLOCKS_PER_CHECKPOINT})
30
+ * - Checkpoint slot matches the first block's slot
31
+ * - Checkpoint lastArchiveRoot matches the first block's lastArchive root
32
+ * - Sequential block numbers without gaps
33
+ * - Sequential indexWithinCheckpoint starting at 0
34
+ * - Archive root chaining between consecutive blocks
35
+ * - Consistent slot number across all blocks
36
+ * - Global variables (slot, timestamp, coinbase, feeRecipient, gasFees) match checkpoint header for each block
37
+ */ export function validateCheckpointStructure(checkpoint, opts = {}) {
38
+ const { maxBlocksPerCheckpoint = MAX_ATTESTABLE_BLOCKS_PER_CHECKPOINT } = opts;
39
+ const { blocks, number, slot } = checkpoint;
40
+ if (blocks.length === 0) {
41
+ throw new CheckpointValidationError('Checkpoint has no blocks', number, slot);
42
+ }
43
+ if (blocks.length > maxBlocksPerCheckpoint) {
44
+ throw new CheckpointValidationError(`Checkpoint has ${blocks.length} blocks, exceeding limit of ${maxBlocksPerCheckpoint}`, number, slot);
45
+ }
46
+ const firstBlock = blocks[0];
47
+ if (!checkpoint.header.lastArchiveRoot.equals(firstBlock.header.lastArchive.root)) {
48
+ throw new CheckpointValidationError(`Checkpoint lastArchiveRoot does not match first block's lastArchive root`, number, slot);
49
+ }
50
+ for(let i = 0; i < blocks.length; i++){
51
+ const block = blocks[i];
52
+ if (block.indexWithinCheckpoint !== i) {
53
+ throw new CheckpointValidationError(`Block at index ${i} has indexWithinCheckpoint ${block.indexWithinCheckpoint}, expected ${i}`, number, slot);
54
+ }
55
+ if (block.slot !== slot) {
56
+ throw new CheckpointValidationError(`Block ${block.number} has slot ${block.slot}, expected ${slot} (all blocks must share the same slot)`, number, slot);
57
+ }
58
+ if (!checkpoint.header.matchesGlobalVariables(block.header.globalVariables)) {
59
+ throw new CheckpointValidationError(`Block ${block.number} global variables (slot, timestamp, coinbase, feeRecipient, gasFees) do not match checkpoint header`, number, slot);
60
+ }
61
+ if (i > 0) {
62
+ const prev = blocks[i - 1];
63
+ if (block.number !== prev.number + 1) {
64
+ throw new CheckpointValidationError(`Block numbers are not sequential: block at index ${i - 1} has number ${prev.number}, block at index ${i} has number ${block.number}`, number, slot);
65
+ }
66
+ if (!block.header.lastArchive.root.equals(prev.archive.root)) {
67
+ throw new CheckpointValidationError(`Block ${block.number} lastArchive root does not match archive root of block ${prev.number}`, number, slot);
68
+ }
69
+ }
70
+ }
71
+ }
72
+ /** Validates checkpoint blocks gas limits */ function validateCheckpointBlocksLimits(checkpoint, opts) {
73
+ const { maxL2BlockGas, maxDABlockGas, maxTxsPerBlock } = opts;
74
+ if (maxL2BlockGas !== undefined) {
75
+ for (const block of checkpoint.blocks){
76
+ const blockL2Gas = block.header.totalManaUsed.toNumber();
77
+ if (blockL2Gas > maxL2BlockGas) {
78
+ throw new CheckpointValidationError(`Block ${block.number} in checkpoint has L2 gas used ${blockL2Gas} exceeding limit of ${maxL2BlockGas}`, checkpoint.number, checkpoint.slot);
79
+ }
80
+ }
81
+ }
82
+ if (maxDABlockGas !== undefined) {
83
+ for (const block of checkpoint.blocks){
84
+ const blockDAGas = block.computeDAGasUsed();
85
+ if (blockDAGas > maxDABlockGas) {
86
+ throw new CheckpointValidationError(`Block ${block.number} in checkpoint has DA gas used ${blockDAGas} exceeding limit of ${maxDABlockGas}`, checkpoint.number, checkpoint.slot);
87
+ }
88
+ }
89
+ }
90
+ if (maxTxsPerBlock !== undefined) {
91
+ for (const block of checkpoint.blocks){
92
+ const blockTxCount = block.body.txEffects.length;
93
+ if (blockTxCount > maxTxsPerBlock) {
94
+ throw new CheckpointValidationError(`Block ${block.number} in checkpoint has ${blockTxCount} txs exceeding limit of ${maxTxsPerBlock}`, checkpoint.number, checkpoint.slot);
95
+ }
96
+ }
97
+ }
98
+ }
99
+ /** Validates checkpoint max blob fields, gas limits, and tx limits */ function validateCheckpointLimits(checkpoint, opts) {
100
+ const { rollupManaLimit, maxTxsPerCheckpoint } = opts;
101
+ const maxBlobFields = BLOBS_PER_CHECKPOINT * FIELDS_PER_BLOB;
102
+ const maxDAGas = MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
103
+ if (rollupManaLimit !== undefined) {
104
+ const checkpointMana = sum(checkpoint.blocks.map((block)=>block.header.totalManaUsed.toNumber()));
105
+ if (checkpointMana > rollupManaLimit) {
106
+ throw new CheckpointValidationError(`Checkpoint mana cost ${checkpointMana} exceeds rollup limit of ${rollupManaLimit}`, checkpoint.number, checkpoint.slot);
107
+ }
108
+ }
109
+ const checkpointDAGas = sum(checkpoint.blocks.map((block)=>block.computeDAGasUsed()));
110
+ if (checkpointDAGas > maxDAGas) {
111
+ throw new CheckpointValidationError(`Checkpoint DA gas cost ${checkpointDAGas} exceeds limit of ${maxDAGas}`, checkpoint.number, checkpoint.slot);
112
+ }
113
+ const checkpointBlobFields = checkpoint.toBlobFields().length;
114
+ if (checkpointBlobFields > maxBlobFields) {
115
+ throw new CheckpointValidationError(`Checkpoint blob field count ${checkpointBlobFields} exceeds limit of ${maxBlobFields}`, checkpoint.number, checkpoint.slot);
116
+ }
117
+ if (maxTxsPerCheckpoint !== undefined) {
118
+ const checkpointTxCount = sum(checkpoint.blocks.map((block)=>block.body.txEffects.length));
119
+ if (checkpointTxCount > maxTxsPerCheckpoint) {
120
+ throw new CheckpointValidationError(`Checkpoint tx count ${checkpointTxCount} exceeds limit of ${maxTxsPerCheckpoint}`, checkpoint.number, checkpoint.slot);
121
+ }
122
+ }
123
+ }
@@ -1,5 +1,5 @@
1
- import type { ConfigMappingsType } from '@aztec/foundation/config';
2
- import { EthAddress } from '@aztec/foundation/eth-address';
1
+ import { type L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
2
+ import { type ConfigMappingsType } from '@aztec/foundation/config';
3
3
  export { type SequencerConfig, SequencerConfigSchema } from '../interfaces/configs.js';
4
4
  export { type AllowedElement } from '../interfaces/allowed_element.js';
5
5
  export declare const emptyChainConfig: ChainConfig;
@@ -10,10 +10,5 @@ export type ChainConfig = {
10
10
  l1ChainId: number;
11
11
  /** The version of the rollup. */
12
12
  rollupVersion: number;
13
- /** The address to the L1 contracts. */
14
- l1Contracts: {
15
- /** The address to rollup */
16
- rollupAddress: EthAddress;
17
- };
18
- };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4tY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2NoYWluLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RixPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RSxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsV0FJOUIsQ0FBQztBQUVGLGVBQU8sTUFBTSxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLENBZ0IvRCxDQUFDO0FBRUYsMkJBQTJCO0FBQzNCLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIseUNBQXlDO0lBQ3pDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsaUNBQWlDO0lBQ2pDLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIsdUNBQXVDO0lBQ3ZDLFdBQVcsRUFBRTtRQUNYLDRCQUE0QjtRQUM1QixhQUFhLEVBQUUsVUFBVSxDQUFDO0tBQzNCLENBQUM7Q0FDSCxDQUFDIn0=
13
+ } & Pick<L1ContractAddresses, 'rollupAddress'>;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4tY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2NoYWluLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxtQkFBbUIsRUFBaUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoSCxPQUFPLEVBQUUsS0FBSyxrQkFBa0IsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQztBQUd2RixPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RixPQUFPLEVBQUUsS0FBSyxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RSxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsV0FJOUIsQ0FBQztBQUVGLGVBQU8sTUFBTSxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLENBa0IvRCxDQUFDO0FBRUYsMkJBQTJCO0FBQzNCLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIseUNBQXlDO0lBQ3pDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsaUNBQWlDO0lBQ2pDLGFBQWEsRUFBRSxNQUFNLENBQUM7Q0FDdkIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsZUFBZSxDQUFDLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"chain-config.d.ts","sourceRoot":"","sources":["../../src/config/chain-config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,KAAK,eAAe,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE,eAAO,MAAM,gBAAgB,EAAE,WAI9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,kBAAkB,CAAC,WAAW,CAgB/D,CAAC;AAEF,2BAA2B;AAC3B,MAAM,MAAM,WAAW,GAAG;IACxB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,WAAW,EAAE;QACX,4BAA4B;QAC5B,aAAa,EAAE,UAAU,CAAC;KAC3B,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"chain-config.d.ts","sourceRoot":"","sources":["../../src/config/chain-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAiC,MAAM,uCAAuC,CAAC;AAChH,OAAO,EAAE,KAAK,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AAGvF,OAAO,EAAE,KAAK,eAAe,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE,eAAO,MAAM,gBAAgB,EAAE,WAI9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,kBAAkB,CAAC,WAAW,CAkB/D,CAAC;AAEF,2BAA2B;AAC3B,MAAM,MAAM,WAAW,GAAG;IACxB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC"}
@@ -1,27 +1,28 @@
1
- import { l1ContractAddressesMapping } from '@aztec/ethereum/l1-contract-addresses';
1
+ import { pickL1ContractAddressMappings } from '@aztec/ethereum/l1-contract-addresses';
2
+ import { numberConfigHelper } from '@aztec/foundation/config';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
3
4
  export { SequencerConfigSchema } from '../interfaces/configs.js';
4
5
  export const emptyChainConfig = {
5
6
  l1ChainId: 0,
6
- l1Contracts: {
7
- rollupAddress: EthAddress.ZERO
8
- },
9
- rollupVersion: 0
7
+ rollupVersion: 0,
8
+ rollupAddress: EthAddress.ZERO
10
9
  };
11
10
  export const chainConfigMappings = {
12
11
  l1ChainId: {
13
12
  env: 'L1_CHAIN_ID',
14
- parseEnv: (val)=>+val,
15
- defaultValue: 31337,
13
+ ...numberConfigHelper(31337),
16
14
  description: 'The chain ID of the ethereum host.'
17
15
  },
18
16
  rollupVersion: {
19
17
  env: 'ROLLUP_VERSION',
20
18
  description: 'The version of the rollup.',
21
- parseEnv: (val)=>Number.isSafeInteger(parseInt(val, 10)) ? parseInt(val, 10) : undefined
19
+ parseEnv: (val)=>{
20
+ const parsed = parseInt(val, 10);
21
+ if (!Number.isSafeInteger(parsed)) {
22
+ throw new Error(`Invalid rollup version: ${val}`);
23
+ }
24
+ return parsed;
25
+ }
22
26
  },
23
- l1Contracts: {
24
- description: 'The deployed L1 contract addresses',
25
- nested: l1ContractAddressesMapping
26
- }
27
+ ...pickL1ContractAddressMappings('rollupAddress')
27
28
  };
@@ -1,3 +1,5 @@
1
1
  export * from './chain-config.js';
2
+ export * from './network-consensus-config.js';
2
3
  export * from './node-rpc-config.js';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDIn0=
4
+ export * from './sequencer-config.js';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx1QkFBdUIsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * from './chain-config.js';
2
+ export * from './network-consensus-config.js';
2
3
  export * from './node-rpc-config.js';
4
+ export * from './sequencer-config.js';
@@ -0,0 +1,72 @@
1
+ import { type L1ContractsConfig } from '@aztec/ethereum/config';
2
+ import type { SequencerConfig } from '../interfaces/configs.js';
3
+ /**
4
+ * Environment variables whose values must be identical across every node of a network. They fall into three
5
+ * categories, all consensus-critical:
6
+ *
7
+ * - Timing/protocol consensus: slot and epoch durations, block sub-slot duration, max blocks per checkpoint, and
8
+ * the checkpoint-proposal materialization grace. Proposers and validators must agree on these to land on the
9
+ * same proposed chain and the same checkpoint-proposal receive/handoff deadlines.
10
+ * - Network identity and L1-posted deployment params: the L1 chain id and the staking/governance/slashing
11
+ * parameters baked into the deployed rollup contract (committee size, lags, thresholds, mana target, fee
12
+ * pricing, governance/slashing round sizes, quorums, slash amounts, etc.). A node disagreeing with the rollup
13
+ * it points at would compute the wrong epoch geometry, fees, or slashing rounds.
14
+ * - Node-side slashing offense consensus: the offense detection/penalty parameters validators apply locally to
15
+ * decide which payloads to sign. Validators must agree on these to reach the on-chain slashing quorum.
16
+ *
17
+ * Deliberately excluded: bootnodes, P2P/store/OTEL/sentinel settings, SEQ_MIN_TX_PER_BLOCK, SEQ_MAX_TX_PER_*,
18
+ * AZTEC_SLASHER_ENABLED, PROVER_REAL_PROOFS, TRANSACTIONS_DISABLED, and AZTEC_ENTRY_QUEUE_* (mainnet-only genesis
19
+ * params enforced by L1).
20
+ */
21
+ export declare const NETWORK_CONSENSUS_ENV_VARS: readonly ["ETHEREUM_SLOT_DURATION", "AZTEC_SLOT_DURATION", "AZTEC_EPOCH_DURATION", "SEQ_BLOCK_DURATION_MS", "MAX_BLOCKS_PER_CHECKPOINT", "CHECKPOINT_PROPOSAL_SYNC_GRACE_SECONDS", "L1_CHAIN_ID", "AZTEC_TARGET_COMMITTEE_SIZE", "AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET", "AZTEC_LAG_IN_EPOCHS_FOR_RANDAO", "AZTEC_ACTIVATION_THRESHOLD", "AZTEC_EJECTION_THRESHOLD", "AZTEC_LOCAL_EJECTION_THRESHOLD", "AZTEC_EXIT_DELAY_SECONDS", "AZTEC_INBOX_LAG", "AZTEC_PROOF_SUBMISSION_EPOCHS", "AZTEC_MANA_TARGET", "AZTEC_PROVING_COST_PER_MANA", "AZTEC_INITIAL_ETH_PER_FEE_ASSET", "AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE", "AZTEC_GOVERNANCE_PROPOSER_QUORUM", "AZTEC_SLASHING_QUORUM", "AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS", "AZTEC_SLASHING_LIFETIME_IN_ROUNDS", "AZTEC_SLASHING_OFFSET_IN_ROUNDS", "AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS", "AZTEC_SLASHING_VETOER", "AZTEC_SLASHING_DISABLE_DURATION", "AZTEC_SLASH_AMOUNT_SMALL", "AZTEC_SLASH_AMOUNT_MEDIUM", "AZTEC_SLASH_AMOUNT_LARGE", "SLASH_OFFENSE_EXPIRATION_ROUNDS", "SLASH_MAX_PAYLOAD_SIZE", "SLASH_EXECUTE_ROUNDS_LOOK_BACK", "SLASH_DATA_WITHHOLDING_TOLERANCE_SLOTS", "SLASH_DATA_WITHHOLDING_PENALTY", "SLASH_INACTIVITY_TARGET_PERCENTAGE", "SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD", "SLASH_INACTIVITY_PENALTY", "SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY", "SLASH_DUPLICATE_PROPOSAL_PENALTY", "SLASH_DUPLICATE_ATTESTATION_PENALTY", "SLASH_PROPOSE_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS_PENALTY", "SLASH_ATTEST_INVALID_CHECKPOINT_PROPOSAL_PENALTY", "SLASH_UNKNOWN_PENALTY", "SLASH_INVALID_BLOCK_PENALTY", "SLASH_INVALID_CHECKPOINT_PROPOSAL_PENALTY", "SLASH_GRACE_PERIOD_L2_SLOTS"];
22
+ /** A consensus-critical environment variable name; see {@link NETWORK_CONSENSUS_ENV_VARS}. */
23
+ export type ConsensusEnvVar = (typeof NETWORK_CONSENSUS_ENV_VARS)[number];
24
+ /**
25
+ * The subset of consensus-critical timing config whose geometry can be validated in isolation. Composed by
26
+ * picking the canonical fields from their owning config types so the field set never drifts from the config
27
+ * layer: slot durations from {@link L1ContractsConfig}, block sub-slot/checkpoint timings from
28
+ * {@link SequencerConfig} (whose fields are optional there, hence `Required`).
29
+ */
30
+ export type NetworkConsensusConfig = Pick<L1ContractsConfig, 'aztecSlotDuration' | 'ethereumSlotDuration'> & Required<Pick<SequencerConfig, 'blockDurationMs' | 'maxBlocksPerCheckpoint' | 'checkpointProposalSyncGraceSeconds'>>;
31
+ /**
32
+ * Extracts the timing {@link NetworkConsensusConfig} from a generated network config object. The env-var names
33
+ * and the per-field parsing both come from the canonical config mappings (`l1ContractsConfigMappings` and
34
+ * `sharedSequencerConfigMappings`), so each field is parsed exactly as the node's config layer would parse it.
35
+ * A field whose env var is absent becomes `NaN`, which {@link validateNetworkConsensusConfig} reports as an
36
+ * error. Never throws: parse helpers that would throw or yield `undefined` are coerced to `NaN`.
37
+ */
38
+ export declare function getConsensusConfigFromNetworkEnv(values: Record<string, string | number | boolean>): NetworkConsensusConfig;
39
+ /**
40
+ * Validates a {@link NetworkConsensusConfig} for self-consistency, returning a list of error messages (empty
41
+ * when valid). Used by the cli unit test that gates the generated network configs.
42
+ *
43
+ * The check requires `maxBlocksPerCheckpoint` to be *exactly* what a {@link ProposerTimetable} built from the
44
+ * same slot timings and the production default budgets derives. This exact-equality requirement ensures the
45
+ * published network value is precisely what the production default budgets produce, so every node running those
46
+ * defaults agrees on the per-checkpoint block count without clamping.
47
+ */
48
+ export declare function validateNetworkConsensusConfig(config: NetworkConsensusConfig): string[];
49
+ /**
50
+ * Enforces that operators do not silently override consensus-critical values diverging from the network config.
51
+ *
52
+ * For each var in {@link NETWORK_CONSENSUS_ENV_VARS} present in `networkConfig`: if the operator set it in `env`
53
+ * to a conflicting value, this throws unless `ALLOW_OVERRIDING_NETWORK_CONFIG` is truthy (in which case it logs
54
+ * and keeps the operator value).
55
+ *
56
+ * This function is pure: it never writes to `env`. Instead it returns the canonical env writes the caller
57
+ * should apply — a map of env-var name to canonical string value for every numeric var whose env value matched
58
+ * the network value numerically. Applying these closes a bypass where the config layer parses some vars with
59
+ * `parseInt` (which reads '6e3' as 6); rewriting them to the network value's string form keeps the operator's
60
+ * numerically-equal value but in canonical form. Vars kept under `ALLOW_OVERRIDING_NETWORK_CONFIG` (genuine
61
+ * conflicts) are not included, so the operator value is preserved untouched.
62
+ *
63
+ * @returns Canonical env writes (env-var name -> canonical string value) for the caller to apply.
64
+ */
65
+ export declare function checkConsensusEnvOverrides(networkConfig: Record<string, string | number | boolean>, env?: {
66
+ [key: string]: string | undefined;
67
+ }, log?: (msg: string) => void): Record<string, string>;
68
+ /** Whether the env opts into overriding network-wide consensus values (`ALLOW_OVERRIDING_NETWORK_CONFIG`). */
69
+ export declare function allowsNetworkConfigOverride(env?: {
70
+ [key: string]: string | undefined;
71
+ }): boolean;
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay1jb25zZW5zdXMtY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL25ldHdvcmstY29uc2Vuc3VzLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxpQkFBaUIsRUFBb0QsTUFBTSx3QkFBd0IsQ0FBQztBQUdsSCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVVoRTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxlQUFPLE1BQU0sMEJBQTBCLDJsREFzREQsQ0FBQztBQUV2Qyw4RkFBOEY7QUFDOUYsTUFBTSxNQUFNLGVBQWUsR0FBRyxDQUFDLE9BQU8sMEJBQTBCLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUUxRTs7Ozs7R0FLRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsbUJBQW1CLEdBQUcsc0JBQXNCLENBQUMsR0FDeEcsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLEdBQUcsd0JBQXdCLEdBQUcsb0NBQW9DLENBQUMsQ0FBQyxDQUFDO0FBWXZIOzs7Ozs7R0FNRztBQUNILHdCQUFnQixnQ0FBZ0MsQ0FDOUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FDaEQsc0JBQXNCLENBaUJ4QjtBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsd0JBQWdCLDhCQUE4QixDQUFDLE1BQU0sRUFBRSxzQkFBc0IsR0FBRyxNQUFNLEVBQUUsQ0FtRXZGO0FBRUQ7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUN4QyxhQUFhLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUN4RCxHQUFHLEdBQUU7SUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLFNBQVMsQ0FBQTtDQUFnQixFQUN4RCxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssSUFBSSxHQUMxQixNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQWlEeEI7QUFFRCw4R0FBOEc7QUFDOUcsd0JBQWdCLDJCQUEyQixDQUFDLEdBQUcsR0FBRTtJQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxNQUFNLEdBQUcsU0FBUyxDQUFBO0NBQWdCLEdBQUcsT0FBTyxDQUc3RyJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-consensus-config.d.ts","sourceRoot":"","sources":["../../src/config/network-consensus-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAoD,MAAM,wBAAwB,CAAC;AAGlH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAUhE;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,0BAA0B,2lDAsDD,CAAC;AAEvC,8FAA8F;AAC9F,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,EAAE,mBAAmB,GAAG,sBAAsB,CAAC,GACxG,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,iBAAiB,GAAG,wBAAwB,GAAG,oCAAoC,CAAC,CAAC,CAAC;AAYvH;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAChD,sBAAsB,CAiBxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,EAAE,CAmEvF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EACxD,GAAG,GAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAgB,EACxD,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiDxB;AAED,8GAA8G;AAC9G,wBAAgB,2BAA2B,CAAC,GAAG,GAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAgB,GAAG,OAAO,CAG7G"}