@aztec/stdlib 0.0.1-commit.a072138 → 0.0.1-commit.a4600f49

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 (1234) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +22 -10
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +20 -3
  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 +1756 -10463
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +7 -4
  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 +674 -5467
  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 +11 -10
  75. package/dest/block/block_hash.d.ts.map +1 -1
  76. package/dest/block/block_hash.js +10 -9
  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 +5 -24
  81. package/dest/block/in_block.d.ts.map +1 -1
  82. package/dest/block/in_block.js +1 -1
  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 +21 -41
  87. package/dest/block/l2_block.d.ts.map +1 -1
  88. package/dest/block/l2_block.js +12 -2
  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 -337
  93. package/dest/block/l2_block_source.d.ts.map +1 -1
  94. package/dest/block/l2_block_source.js +81 -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 +83 -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 +23 -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 +159 -125
  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 +296 -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/sequencer-config.d.ts +16 -0
  163. package/dest/config/sequencer-config.d.ts.map +1 -0
  164. package/dest/config/sequencer-config.js +57 -0
  165. package/dest/contract/complete_address.d.ts +3 -2
  166. package/dest/contract/complete_address.d.ts.map +1 -1
  167. package/dest/contract/complete_address.js +6 -2
  168. package/dest/contract/contract_address.d.ts +10 -9
  169. package/dest/contract/contract_address.d.ts.map +1 -1
  170. package/dest/contract/contract_address.js +9 -8
  171. package/dest/contract/contract_class.d.ts +2 -3
  172. package/dest/contract/contract_class.d.ts.map +1 -1
  173. package/dest/contract/contract_class.js +3 -2
  174. package/dest/contract/contract_class_id.d.ts +3 -3
  175. package/dest/contract/contract_class_id.d.ts.map +1 -1
  176. package/dest/contract/contract_class_id.js +7 -6
  177. package/dest/contract/contract_deployment_data.d.ts +15 -61
  178. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  179. package/dest/contract/contract_instance.d.ts +19 -3
  180. package/dest/contract/contract_instance.d.ts.map +1 -1
  181. package/dest/contract/contract_instance.js +55 -3
  182. package/dest/contract/index.d.ts +1 -4
  183. package/dest/contract/index.d.ts.map +1 -1
  184. package/dest/contract/index.js +0 -3
  185. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  186. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  187. package/dest/contract/interfaces/contract_class.js +1 -28
  188. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  189. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  190. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  191. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  192. package/dest/contract/interfaces/contract_instance.js +11 -4
  193. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  194. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  195. package/dest/contract/interfaces/node-info.d.ts +13 -1
  196. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  197. package/dest/contract/interfaces/node-info.js +8 -1
  198. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  199. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  200. package/dest/contract/partial_address.d.ts +9 -3
  201. package/dest/contract/partial_address.d.ts.map +1 -1
  202. package/dest/contract/partial_address.js +8 -2
  203. package/dest/contract/private_function.d.ts +1 -1
  204. package/dest/contract/private_function.d.ts.map +1 -1
  205. package/dest/contract/private_function.js +4 -6
  206. package/dest/database-version/database_version.d.ts +5 -11
  207. package/dest/database-version/database_version.d.ts.map +1 -1
  208. package/dest/database-version/version_manager.d.ts +22 -4
  209. package/dest/database-version/version_manager.d.ts.map +1 -1
  210. package/dest/database-version/version_manager.js +87 -6
  211. package/dest/deserialization/index.d.ts +35 -3
  212. package/dest/deserialization/index.d.ts.map +1 -1
  213. package/dest/deserialization/index.js +32 -1
  214. package/dest/epoch-helpers/index.d.ts +14 -18
  215. package/dest/epoch-helpers/index.d.ts.map +1 -1
  216. package/dest/epoch-helpers/index.js +18 -2
  217. package/dest/file-store/factory.d.ts +4 -3
  218. package/dest/file-store/factory.d.ts.map +1 -1
  219. package/dest/file-store/factory.js +9 -2
  220. package/dest/file-store/http.d.ts +9 -2
  221. package/dest/file-store/http.d.ts.map +1 -1
  222. package/dest/file-store/http.js +20 -9
  223. package/dest/file-store/index.d.ts +3 -1
  224. package/dest/file-store/index.d.ts.map +1 -1
  225. package/dest/file-store/index.js +1 -0
  226. package/dest/file-store/local.d.ts +3 -3
  227. package/dest/file-store/local.d.ts.map +1 -1
  228. package/dest/file-store/local.js +13 -4
  229. package/dest/file-store/memory.d.ts +24 -0
  230. package/dest/file-store/memory.d.ts.map +1 -0
  231. package/dest/file-store/memory.js +80 -0
  232. package/dest/file-store/s3.d.ts +1 -1
  233. package/dest/file-store/s3.d.ts.map +1 -1
  234. package/dest/file-store/s3.js +11 -3
  235. package/dest/gas/fee_math.d.ts +49 -0
  236. package/dest/gas/fee_math.d.ts.map +1 -0
  237. package/dest/gas/fee_math.js +80 -0
  238. package/dest/gas/gas.d.ts +9 -14
  239. package/dest/gas/gas.d.ts.map +1 -1
  240. package/dest/gas/gas.js +6 -3
  241. package/dest/gas/gas_fees.d.ts +13 -14
  242. package/dest/gas/gas_fees.d.ts.map +1 -1
  243. package/dest/gas/gas_fees.js +20 -4
  244. package/dest/gas/gas_settings.d.ts +60 -86
  245. package/dest/gas/gas_settings.d.ts.map +1 -1
  246. package/dest/gas/gas_settings.js +49 -9
  247. package/dest/gas/index.d.ts +3 -1
  248. package/dest/gas/index.d.ts.map +1 -1
  249. package/dest/gas/index.js +2 -0
  250. package/dest/gas/tx_gas_limits.d.ts +72 -0
  251. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  252. package/dest/gas/tx_gas_limits.js +85 -0
  253. package/dest/ha-signing/config.d.ts +86 -0
  254. package/dest/ha-signing/config.d.ts.map +1 -0
  255. package/dest/ha-signing/config.js +94 -0
  256. package/dest/ha-signing/index.d.ts +4 -0
  257. package/dest/ha-signing/index.d.ts.map +1 -0
  258. package/dest/ha-signing/index.js +3 -0
  259. package/dest/ha-signing/local_config.d.ts +40 -0
  260. package/dest/ha-signing/local_config.d.ts.map +1 -0
  261. package/dest/ha-signing/local_config.js +30 -0
  262. package/dest/ha-signing/types.d.ts +90 -0
  263. package/dest/ha-signing/types.d.ts.map +1 -0
  264. package/dest/ha-signing/types.js +39 -0
  265. package/dest/hash/hash.d.ts +35 -1
  266. package/dest/hash/hash.d.ts.map +1 -1
  267. package/dest/hash/hash.js +78 -11
  268. package/dest/hash/map_slot.js +2 -2
  269. package/dest/interfaces/allowed_element.d.ts +17 -35
  270. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  271. package/dest/interfaces/allowed_element.js +8 -8
  272. package/dest/interfaces/api_limit.d.ts +1 -1
  273. package/dest/interfaces/api_limit.js +1 -1
  274. package/dest/interfaces/archiver.d.ts +20 -32
  275. package/dest/interfaces/archiver.d.ts.map +1 -1
  276. package/dest/interfaces/archiver.js +216 -65
  277. package/dest/interfaces/aztec-node-admin.d.ts +115 -257
  278. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  279. package/dest/interfaces/aztec-node-admin.js +69 -18
  280. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  281. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  282. package/dest/interfaces/aztec-node-debug.js +49 -0
  283. package/dest/interfaces/aztec-node.d.ts +166 -116
  284. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  285. package/dest/interfaces/aztec-node.js +351 -72
  286. package/dest/interfaces/block-builder.d.ts +43 -12
  287. package/dest/interfaces/block-builder.d.ts.map +1 -1
  288. package/dest/interfaces/block-builder.js +13 -6
  289. package/dest/interfaces/block_response.d.ts +90 -0
  290. package/dest/interfaces/block_response.d.ts.map +1 -0
  291. package/dest/interfaces/block_response.js +30 -0
  292. package/dest/interfaces/chain_tips.d.ts +11 -0
  293. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  294. package/dest/interfaces/chain_tips.js +6 -0
  295. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  296. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  297. package/dest/interfaces/checkpoint_parameter.js +18 -0
  298. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  299. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  300. package/dest/interfaces/checkpoint_response.js +26 -0
  301. package/dest/interfaces/client.d.ts +9 -2
  302. package/dest/interfaces/client.d.ts.map +1 -1
  303. package/dest/interfaces/client.js +7 -1
  304. package/dest/interfaces/configs.d.ts +98 -121
  305. package/dest/interfaces/configs.d.ts.map +1 -1
  306. package/dest/interfaces/configs.js +23 -4
  307. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  308. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  309. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  310. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  311. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  312. package/dest/interfaces/l1_publish_info.js +26 -0
  313. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  314. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  315. package/dest/interfaces/l2_logs_source.js +5 -0
  316. package/dest/interfaces/merkle_tree_operations.d.ts +20 -24
  317. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  318. package/dest/interfaces/p2p-bootstrap.js +8 -2
  319. package/dest/interfaces/p2p.d.ts +49 -15
  320. package/dest/interfaces/p2p.d.ts.map +1 -1
  321. package/dest/interfaces/p2p.js +41 -6
  322. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  323. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  324. package/dest/interfaces/prover-agent.d.ts +5 -23
  325. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  326. package/dest/interfaces/prover-agent.js +4 -1
  327. package/dest/interfaces/prover-broker.d.ts +16 -1
  328. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  329. package/dest/interfaces/prover-broker.js +4 -1
  330. package/dest/interfaces/prover-client.d.ts +13 -25
  331. package/dest/interfaces/prover-client.d.ts.map +1 -1
  332. package/dest/interfaces/prover-client.js +12 -4
  333. package/dest/interfaces/prover-node.d.ts +12 -8
  334. package/dest/interfaces/prover-node.d.ts.map +1 -1
  335. package/dest/interfaces/prover-node.js +37 -16
  336. package/dest/interfaces/proving-job-source.js +24 -4
  337. package/dest/interfaces/proving-job.d.ts +744 -5795
  338. package/dest/interfaces/proving-job.d.ts.map +1 -1
  339. package/dest/interfaces/proving-job.js +3 -3
  340. package/dest/interfaces/public_storage_override.d.ts +22 -0
  341. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  342. package/dest/interfaces/public_storage_override.js +7 -0
  343. package/dest/interfaces/server.d.ts +6 -3
  344. package/dest/interfaces/server.d.ts.map +1 -1
  345. package/dest/interfaces/server.js +5 -2
  346. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  347. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  348. package/dest/interfaces/slasher.d.ts +27 -59
  349. package/dest/interfaces/slasher.d.ts.map +1 -1
  350. package/dest/interfaces/slasher.js +10 -4
  351. package/dest/interfaces/tx_provider.d.ts +6 -1
  352. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  353. package/dest/interfaces/validator.d.ts +89 -170
  354. package/dest/interfaces/validator.d.ts.map +1 -1
  355. package/dest/interfaces/validator.js +19 -6
  356. package/dest/interfaces/world_state.d.ts +19 -5
  357. package/dest/interfaces/world_state.d.ts.map +1 -1
  358. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  359. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  360. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  361. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  362. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  363. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  364. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  365. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  366. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  367. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  368. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  369. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  370. package/dest/kernel/hints/index.d.ts +3 -4
  371. package/dest/kernel/hints/index.d.ts.map +1 -1
  372. package/dest/kernel/hints/index.js +2 -3
  373. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  374. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  375. package/dest/kernel/hints/key_validation_request.js +20 -18
  376. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  377. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  378. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  379. package/dest/kernel/hints/read_request.js +1 -1
  380. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  381. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  382. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  383. package/dest/kernel/index.d.ts +10 -2
  384. package/dest/kernel/index.d.ts.map +1 -1
  385. package/dest/kernel/index.js +9 -1
  386. package/dest/kernel/log_hash.d.ts +6 -2
  387. package/dest/kernel/log_hash.d.ts.map +1 -1
  388. package/dest/kernel/log_hash.js +23 -11
  389. package/dest/kernel/note_hash.js +1 -1
  390. package/dest/kernel/nullifier.js +1 -1
  391. package/dest/kernel/private_circuit_public_inputs.d.ts +21 -11
  392. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  393. package/dest/kernel/private_circuit_public_inputs.js +26 -19
  394. package/dest/kernel/private_context_inputs.d.ts +4 -3
  395. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  396. package/dest/kernel/private_context_inputs.js +7 -3
  397. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +10 -12
  398. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  399. package/dest/kernel/private_kernel_circuit_public_inputs.js +13 -10
  400. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  401. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  402. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  403. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  404. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  405. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  406. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  407. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  408. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  409. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  410. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  411. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  412. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  413. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  414. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  415. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  416. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  417. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  418. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  419. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  420. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  421. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  422. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  423. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  424. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  425. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  426. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  427. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  428. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  429. package/dest/kernel/private_kernel_prover_output.js +4 -1
  430. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  431. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  432. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  433. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  434. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  435. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  436. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  437. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  438. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  439. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  440. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  441. package/dest/kernel/private_log_data.d.ts +1 -1
  442. package/dest/kernel/private_log_data.d.ts.map +1 -1
  443. package/dest/kernel/private_log_data.js +1 -1
  444. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  445. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  446. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  447. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  448. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  449. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  450. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  451. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  452. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  453. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  454. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  455. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  456. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  457. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  458. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  459. package/dest/kernel/private_validation_requests.d.ts +3 -3
  460. package/dest/kernel/private_validation_requests.js +9 -9
  461. package/dest/kernel/public_call_request.d.ts +15 -30
  462. package/dest/kernel/public_call_request.d.ts.map +1 -1
  463. package/dest/kernel/public_call_request.js +16 -7
  464. package/dest/kernel/utils/index.d.ts +1 -2
  465. package/dest/kernel/utils/index.d.ts.map +1 -1
  466. package/dest/kernel/utils/index.js +0 -1
  467. package/dest/keys/derivation.d.ts +45 -5
  468. package/dest/keys/derivation.d.ts.map +1 -1
  469. package/dest/keys/derivation.js +64 -24
  470. package/dest/keys/key_types.d.ts +3 -3
  471. package/dest/keys/key_types.d.ts.map +1 -1
  472. package/dest/keys/public_key.d.ts +22 -3
  473. package/dest/keys/public_key.d.ts.map +1 -1
  474. package/dest/keys/public_key.js +20 -1
  475. package/dest/keys/public_keys.d.ts +55 -82
  476. package/dest/keys/public_keys.d.ts.map +1 -1
  477. package/dest/keys/public_keys.js +102 -74
  478. package/dest/keys/utils.js +5 -5
  479. package/dest/kv-store/config.d.ts +14 -0
  480. package/dest/kv-store/config.d.ts.map +1 -0
  481. package/dest/kv-store/config.js +21 -0
  482. package/dest/kv-store/index.d.ts +2 -0
  483. package/dest/kv-store/index.d.ts.map +1 -0
  484. package/dest/kv-store/index.js +1 -0
  485. package/dest/l1-contracts/index.d.ts +2 -2
  486. package/dest/l1-contracts/index.d.ts.map +1 -1
  487. package/dest/l1-contracts/index.js +1 -1
  488. package/dest/logs/app_tagging_secret.d.ts +69 -0
  489. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  490. package/dest/logs/app_tagging_secret.js +125 -0
  491. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  492. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  493. package/dest/logs/app_tagging_secret_kind.js +17 -0
  494. package/dest/logs/contract_class_log.d.ts +16 -35
  495. package/dest/logs/contract_class_log.d.ts.map +1 -1
  496. package/dest/logs/contract_class_log.js +11 -13
  497. package/dest/logs/debug_log_store.d.ts +30 -0
  498. package/dest/logs/debug_log_store.d.ts.map +1 -0
  499. package/dest/logs/debug_log_store.js +30 -0
  500. package/dest/logs/index.d.ts +9 -7
  501. package/dest/logs/index.d.ts.map +1 -1
  502. package/dest/logs/index.js +8 -6
  503. package/dest/logs/log_cursor.d.ts +51 -0
  504. package/dest/logs/log_cursor.d.ts.map +1 -0
  505. package/dest/logs/log_cursor.js +82 -0
  506. package/dest/logs/log_result.d.ts +54 -0
  507. package/dest/logs/log_result.d.ts.map +1 -0
  508. package/dest/logs/log_result.js +56 -0
  509. package/dest/logs/logs_query.d.ts +82 -0
  510. package/dest/logs/logs_query.d.ts.map +1 -0
  511. package/dest/logs/logs_query.js +50 -0
  512. package/dest/logs/message_context.d.ts +4 -16
  513. package/dest/logs/message_context.d.ts.map +1 -1
  514. package/dest/logs/message_context.js +1 -48
  515. package/dest/logs/pending_tagged_log.d.ts +6 -9
  516. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  517. package/dest/logs/pending_tagged_log.js +1 -31
  518. package/dest/logs/pre_tag.d.ts +14 -22
  519. package/dest/logs/pre_tag.d.ts.map +1 -1
  520. package/dest/logs/pre_tag.js +2 -2
  521. package/dest/logs/private_log.d.ts +8 -13
  522. package/dest/logs/private_log.d.ts.map +1 -1
  523. package/dest/logs/private_log.js +6 -3
  524. package/dest/logs/public_log.d.ts +4 -3
  525. package/dest/logs/public_log.d.ts.map +1 -1
  526. package/dest/logs/public_log.js +2 -1
  527. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  528. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  529. package/dest/logs/query_all_logs_by_tags.js +64 -0
  530. package/dest/logs/shared_secret_derivation.d.ts +22 -8
  531. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  532. package/dest/logs/shared_secret_derivation.js +31 -10
  533. package/dest/logs/siloed_tag.d.ts +12 -9
  534. package/dest/logs/siloed_tag.d.ts.map +1 -1
  535. package/dest/logs/siloed_tag.js +18 -7
  536. package/dest/logs/tag.d.ts +5 -6
  537. package/dest/logs/tag.d.ts.map +1 -1
  538. package/dest/logs/tag.js +5 -1
  539. package/dest/logs/tagging_index_range.d.ts +22 -0
  540. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  541. package/dest/logs/tagging_index_range.js +8 -0
  542. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  543. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  544. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  545. package/dest/messaging/index.d.ts +2 -1
  546. package/dest/messaging/index.d.ts.map +1 -1
  547. package/dest/messaging/index.js +1 -0
  548. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  549. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  550. package/dest/messaging/l1_to_l2_message.js +11 -13
  551. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  552. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  553. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  554. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  555. package/dest/messaging/l2_to_l1_membership.js +133 -30
  556. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  557. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  558. package/dest/messaging/l2_to_l1_message.js +21 -12
  559. package/dest/noir/index.d.ts +5 -3
  560. package/dest/noir/index.d.ts.map +1 -1
  561. package/dest/note/index.d.ts +1 -2
  562. package/dest/note/index.d.ts.map +1 -1
  563. package/dest/note/index.js +0 -1
  564. package/dest/note/note.d.ts +2 -2
  565. package/dest/note/note.d.ts.map +1 -1
  566. package/dest/note/note_dao.d.ts +1 -1
  567. package/dest/note/note_dao.d.ts.map +1 -1
  568. package/dest/note/note_dao.js +1 -4
  569. package/dest/p2p/attestation_utils.d.ts +11 -1
  570. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  571. package/dest/p2p/attestation_utils.js +53 -1
  572. package/dest/p2p/block_proposal.d.ts +32 -15
  573. package/dest/p2p/block_proposal.d.ts.map +1 -1
  574. package/dest/p2p/block_proposal.js +58 -42
  575. package/dest/p2p/checkpoint_attestation.d.ts +25 -9
  576. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  577. package/dest/p2p/checkpoint_attestation.js +33 -24
  578. package/dest/p2p/checkpoint_proposal.d.ts +51 -24
  579. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  580. package/dest/p2p/checkpoint_proposal.js +77 -65
  581. package/dest/p2p/client_type.d.ts +2 -5
  582. package/dest/p2p/client_type.d.ts.map +1 -1
  583. package/dest/p2p/client_type.js +0 -7
  584. package/dest/p2p/consensus_payload.d.ts +33 -17
  585. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  586. package/dest/p2p/consensus_payload.js +47 -21
  587. package/dest/p2p/constants.d.ts +3 -1
  588. package/dest/p2p/constants.d.ts.map +1 -1
  589. package/dest/p2p/constants.js +1 -0
  590. package/dest/p2p/gossipable.d.ts +4 -4
  591. package/dest/p2p/gossipable.d.ts.map +1 -1
  592. package/dest/p2p/index.d.ts +1 -3
  593. package/dest/p2p/index.d.ts.map +1 -1
  594. package/dest/p2p/index.js +0 -2
  595. package/dest/p2p/peer_error.d.ts +3 -1
  596. package/dest/p2p/peer_error.d.ts.map +1 -1
  597. package/dest/p2p/peer_error.js +5 -0
  598. package/dest/p2p/signature_utils.d.ts +35 -17
  599. package/dest/p2p/signature_utils.d.ts.map +1 -1
  600. package/dest/p2p/signature_utils.js +125 -20
  601. package/dest/p2p/signed_txs.d.ts +15 -13
  602. package/dest/p2p/signed_txs.d.ts.map +1 -1
  603. package/dest/p2p/signed_txs.js +26 -24
  604. package/dest/p2p/topic_type.d.ts +3 -4
  605. package/dest/p2p/topic_type.d.ts.map +1 -1
  606. package/dest/p2p/topic_type.js +7 -24
  607. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  608. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  609. package/dest/parity/parity_base_private_inputs.js +7 -5
  610. package/dest/parity/parity_public_inputs.d.ts +8 -4
  611. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  612. package/dest/parity/parity_public_inputs.js +6 -3
  613. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  614. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  615. package/dest/proofs/chonk_proof.d.ts +57 -7
  616. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  617. package/dest/proofs/chonk_proof.js +112 -15
  618. package/dest/proofs/recursive_proof.d.ts +2 -2
  619. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  620. package/dest/rollup/avm_proof_data.d.ts +3 -3
  621. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  622. package/dest/rollup/block_headers_hash.d.ts +1 -1
  623. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  624. package/dest/rollup/block_headers_hash.js +8 -2
  625. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  626. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  627. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  628. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  629. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  630. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  631. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  632. package/dest/rollup/checkpoint_header.d.ts +10 -5
  633. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  634. package/dest/rollup/checkpoint_header.js +22 -12
  635. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  636. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  637. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  638. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  639. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  640. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  641. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  642. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  643. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  644. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  645. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  646. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  647. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  648. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  649. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  650. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  651. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  652. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  653. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  654. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  655. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  656. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  657. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  658. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  659. package/dest/schemas/schemas.d.ts +32 -78
  660. package/dest/schemas/schemas.d.ts.map +1 -1
  661. package/dest/schemas/schemas.js +2 -2
  662. package/dest/slashing/helpers.d.ts +2 -2
  663. package/dest/slashing/helpers.d.ts.map +1 -1
  664. package/dest/slashing/helpers.js +16 -7
  665. package/dest/slashing/index.d.ts +2 -3
  666. package/dest/slashing/index.d.ts.map +1 -1
  667. package/dest/slashing/index.js +1 -2
  668. package/dest/slashing/serialization.d.ts +2 -6
  669. package/dest/slashing/serialization.d.ts.map +1 -1
  670. package/dest/slashing/serialization.js +0 -60
  671. package/dest/slashing/types.d.ts +21 -111
  672. package/dest/slashing/types.d.ts.map +1 -1
  673. package/dest/slashing/types.js +28 -24
  674. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  675. package/dest/slashing/votes.d.ts.map +1 -0
  676. package/dest/slashing/{tally.js → votes.js} +35 -3
  677. package/dest/snapshots/types.d.ts +15 -78
  678. package/dest/snapshots/types.d.ts.map +1 -1
  679. package/dest/stats/stats.d.ts +2 -2
  680. package/dest/stats/stats.d.ts.map +1 -1
  681. package/dest/tests/factories.d.ts +25 -56
  682. package/dest/tests/factories.d.ts.map +1 -1
  683. package/dest/tests/factories.js +93 -120
  684. package/dest/tests/mocks.d.ts +15 -7
  685. package/dest/tests/mocks.d.ts.map +1 -1
  686. package/dest/tests/mocks.js +69 -70
  687. package/dest/timetable/budgets.d.ts +57 -0
  688. package/dest/timetable/budgets.d.ts.map +1 -0
  689. package/dest/timetable/budgets.js +56 -0
  690. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  691. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  692. package/dest/timetable/build_proposer_timetable.js +17 -0
  693. package/dest/timetable/consensus_timetable.d.ts +70 -0
  694. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  695. package/dest/timetable/consensus_timetable.js +89 -0
  696. package/dest/timetable/index.d.ts +5 -0
  697. package/dest/timetable/index.d.ts.map +1 -0
  698. package/dest/timetable/index.js +4 -0
  699. package/dest/timetable/proposer_timetable.d.ts +106 -0
  700. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  701. package/dest/timetable/proposer_timetable.js +132 -0
  702. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  703. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  704. package/dest/trees/append_only_tree_snapshot.js +6 -3
  705. package/dest/trees/nullifier_leaf.d.ts +19 -42
  706. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  707. package/dest/trees/nullifier_leaf.js +3 -0
  708. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  709. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  710. package/dest/trees/nullifier_membership_witness.js +0 -21
  711. package/dest/trees/public_data_leaf.d.ts +22 -53
  712. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  713. package/dest/trees/public_data_leaf.js +7 -6
  714. package/dest/trees/public_data_witness.d.ts +19 -71
  715. package/dest/trees/public_data_witness.d.ts.map +1 -1
  716. package/dest/trees/public_data_witness.js +0 -27
  717. package/dest/tx/block_header.d.ts +7 -4
  718. package/dest/tx/block_header.d.ts.map +1 -1
  719. package/dest/tx/block_header.js +13 -6
  720. package/dest/tx/call_context.d.ts +4 -14
  721. package/dest/tx/call_context.d.ts.map +1 -1
  722. package/dest/tx/capsule.d.ts +7 -3
  723. package/dest/tx/capsule.d.ts.map +1 -1
  724. package/dest/tx/capsule.js +9 -3
  725. package/dest/tx/execution_payload.d.ts +1 -1
  726. package/dest/tx/execution_payload.d.ts.map +1 -1
  727. package/dest/tx/execution_payload.js +1 -1
  728. package/dest/tx/fee_provider.d.ts +10 -0
  729. package/dest/tx/fee_provider.d.ts.map +1 -0
  730. package/dest/tx/fee_provider.js +1 -0
  731. package/dest/tx/function_data.d.ts +4 -10
  732. package/dest/tx/function_data.d.ts.map +1 -1
  733. package/dest/tx/global_variable_builder.d.ts +4 -15
  734. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  735. package/dest/tx/global_variables.d.ts +19 -52
  736. package/dest/tx/global_variables.d.ts.map +1 -1
  737. package/dest/tx/global_variables.js +10 -14
  738. package/dest/tx/hashed_values.d.ts +4 -3
  739. package/dest/tx/hashed_values.d.ts.map +1 -1
  740. package/dest/tx/hashed_values.js +6 -3
  741. package/dest/tx/in_tx.d.ts +5 -17
  742. package/dest/tx/in_tx.d.ts.map +1 -1
  743. package/dest/tx/index.d.ts +2 -2
  744. package/dest/tx/index.d.ts.map +1 -1
  745. package/dest/tx/index.js +1 -1
  746. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  747. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  748. package/dest/tx/indexed_tx_effect.js +9 -6
  749. package/dest/tx/partial_state_reference.d.ts +22 -65
  750. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  751. package/dest/tx/partial_state_reference.js +6 -3
  752. package/dest/tx/private_execution_result.d.ts +11 -21
  753. package/dest/tx/private_execution_result.d.ts.map +1 -1
  754. package/dest/tx/private_execution_result.js +6 -6
  755. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  756. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  757. package/dest/tx/private_tx_constant_data.js +13 -4
  758. package/dest/tx/profiling.d.ts +70 -356
  759. package/dest/tx/profiling.d.ts.map +1 -1
  760. package/dest/tx/profiling.js +21 -9
  761. package/dest/tx/protocol_contracts.d.ts +5 -9
  762. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  763. package/dest/tx/protocol_contracts.js +2 -2
  764. package/dest/tx/proven_tx.d.ts +30 -74
  765. package/dest/tx/proven_tx.d.ts.map +1 -1
  766. package/dest/tx/proven_tx.js +6 -0
  767. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  768. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  769. package/dest/tx/public_call_request_with_calldata.js +6 -3
  770. package/dest/tx/public_simulation_output.d.ts +4 -2
  771. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  772. package/dest/tx/public_simulation_output.js +7 -3
  773. package/dest/tx/simulated_tx.d.ts +77 -1149
  774. package/dest/tx/simulated_tx.d.ts.map +1 -1
  775. package/dest/tx/simulated_tx.js +17 -12
  776. package/dest/tx/state_reference.d.ts +30 -117
  777. package/dest/tx/state_reference.d.ts.map +1 -1
  778. package/dest/tx/state_reference.js +6 -4
  779. package/dest/tx/tree_snapshots.d.ts +27 -84
  780. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  781. package/dest/tx/tree_snapshots.js +6 -4
  782. package/dest/tx/tx.d.ts +27 -17
  783. package/dest/tx/tx.d.ts.map +1 -1
  784. package/dest/tx/tx.js +62 -28
  785. package/dest/tx/tx_constant_data.d.ts +4 -3
  786. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  787. package/dest/tx/tx_constant_data.js +6 -3
  788. package/dest/tx/tx_context.d.ts +32 -131
  789. package/dest/tx/tx_context.d.ts.map +1 -1
  790. package/dest/tx/tx_context.js +6 -6
  791. package/dest/tx/tx_hash.d.ts +6 -4
  792. package/dest/tx/tx_hash.d.ts.map +1 -1
  793. package/dest/tx/tx_hash.js +13 -5
  794. package/dest/tx/tx_receipt.d.ts +151 -51
  795. package/dest/tx/tx_receipt.d.ts.map +1 -1
  796. package/dest/tx/tx_receipt.js +145 -51
  797. package/dest/tx/tx_request.js +2 -2
  798. package/dest/tx/validator/error_texts.d.ts +11 -3
  799. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  800. package/dest/tx/validator/error_texts.js +12 -2
  801. package/dest/tx/validator/tx_validator.d.ts +6 -28
  802. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  803. package/dest/tx/validator/tx_validator.js +0 -4
  804. package/dest/types/shared.d.ts +4 -12
  805. package/dest/types/shared.d.ts.map +1 -1
  806. package/dest/types/shared.js +6 -12
  807. package/dest/update-checker/dev_version.d.ts +3 -0
  808. package/dest/update-checker/dev_version.d.ts.map +1 -0
  809. package/dest/update-checker/dev_version.js +1 -0
  810. package/dest/update-checker/index.d.ts +4 -2
  811. package/dest/update-checker/index.d.ts.map +1 -1
  812. package/dest/update-checker/index.js +3 -1
  813. package/dest/update-checker/package_version.d.ts +6 -0
  814. package/dest/update-checker/package_version.d.ts.map +1 -0
  815. package/dest/update-checker/package_version.js +13 -0
  816. package/dest/update-checker/version_checker.d.ts +25 -0
  817. package/dest/update-checker/version_checker.d.ts.map +1 -0
  818. package/dest/update-checker/version_checker.js +50 -0
  819. package/dest/validators/errors.d.ts +6 -1
  820. package/dest/validators/errors.d.ts.map +1 -1
  821. package/dest/validators/errors.js +7 -0
  822. package/dest/validators/schemas.d.ts +147 -614
  823. package/dest/validators/schemas.d.ts.map +1 -1
  824. package/dest/validators/schemas.js +9 -6
  825. package/dest/validators/types.d.ts +21 -4
  826. package/dest/validators/types.d.ts.map +1 -1
  827. package/dest/versioning/versioning.d.ts +4 -2
  828. package/dest/versioning/versioning.d.ts.map +1 -1
  829. package/dest/versioning/versioning.js +5 -2
  830. package/dest/vks/verification_key.d.ts +4 -139
  831. package/dest/vks/verification_key.d.ts.map +1 -1
  832. package/dest/vks/verification_key.js +5 -126
  833. package/dest/world-state/genesis_data.d.ts +13 -0
  834. package/dest/world-state/genesis_data.d.ts.map +1 -0
  835. package/dest/world-state/genesis_data.js +7 -0
  836. package/dest/world-state/index.d.ts +2 -1
  837. package/dest/world-state/index.d.ts.map +1 -1
  838. package/dest/world-state/index.js +1 -0
  839. package/dest/world-state/world_state_revision.d.ts +11 -39
  840. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  841. package/dest/world-state/world_state_revision.js +7 -21
  842. package/package.json +27 -14
  843. package/src/abi/abi.ts +78 -21
  844. package/src/abi/authorization_selector.ts +2 -8
  845. package/src/abi/buffer.ts +38 -5
  846. package/src/abi/contract_artifact.ts +11 -6
  847. package/src/abi/decoder.ts +36 -82
  848. package/src/abi/encoder.ts +85 -6
  849. package/src/abi/event_metadata_definition.ts +2 -0
  850. package/src/abi/event_selector.ts +2 -8
  851. package/src/abi/function_call.ts +25 -3
  852. package/src/abi/function_selector.ts +4 -13
  853. package/src/abi/function_signature_decoder.ts +77 -0
  854. package/src/abi/index.ts +1 -0
  855. package/src/abi/note_selector.ts +3 -12
  856. package/src/abi/selector.ts +1 -1
  857. package/src/abi/utils.ts +31 -4
  858. package/src/auth_witness/auth_witness.ts +3 -3
  859. package/src/avm/avm.ts +6 -1
  860. package/src/avm/index.ts +0 -5
  861. package/src/avm/message_pack.ts +12 -3
  862. package/src/avm/revert_code.ts +20 -25
  863. package/src/aztec-address/index.ts +50 -17
  864. package/src/block/attestation_info.ts +16 -11
  865. package/src/block/block_data.ts +25 -0
  866. package/src/block/block_hash.ts +21 -14
  867. package/src/block/block_parameter.ts +72 -4
  868. package/src/block/in_block.ts +1 -1
  869. package/src/block/index.ts +1 -1
  870. package/src/block/l2_block.ts +13 -1
  871. package/src/block/l2_block_info.ts +8 -6
  872. package/src/block/l2_block_source.ts +267 -122
  873. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  874. package/src/block/l2_block_stream/index.ts +1 -0
  875. package/src/block/l2_block_stream/interfaces.ts +99 -9
  876. package/src/block/l2_block_stream/l2_block_stream.ts +231 -158
  877. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  878. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  879. package/src/block/proposal/attestations_and_signers.ts +85 -24
  880. package/src/block/test/l2_tips_store_test_suite.ts +271 -22
  881. package/src/block/validate_block_result.ts +48 -2
  882. package/src/checkpoint/checkpoint.ts +55 -18
  883. package/src/checkpoint/checkpoint_data.ts +91 -0
  884. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  885. package/src/checkpoint/digest.ts +28 -0
  886. package/src/checkpoint/index.ts +6 -0
  887. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  888. package/src/checkpoint/published_checkpoint.ts +3 -1
  889. package/src/checkpoint/simulation_overrides.ts +171 -0
  890. package/src/checkpoint/validate.ts +240 -0
  891. package/src/config/chain-config.ts +13 -16
  892. package/src/config/index.ts +2 -0
  893. package/src/config/network-consensus-config.ts +291 -0
  894. package/src/config/sequencer-config.ts +96 -0
  895. package/src/contract/complete_address.ts +7 -3
  896. package/src/contract/contract_address.ts +14 -13
  897. package/src/contract/contract_class.ts +6 -5
  898. package/src/contract/contract_class_id.ts +7 -6
  899. package/src/contract/contract_instance.ts +73 -3
  900. package/src/contract/index.ts +0 -3
  901. package/src/contract/interfaces/contract_class.ts +2 -82
  902. package/src/contract/interfaces/contract_data_source.ts +2 -4
  903. package/src/contract/interfaces/contract_instance.ts +32 -10
  904. package/src/contract/interfaces/node-info.ts +14 -0
  905. package/src/contract/partial_address.ts +8 -2
  906. package/src/contract/private_function.ts +5 -3
  907. package/src/database-version/version_manager.ts +113 -6
  908. package/src/deserialization/index.ts +35 -2
  909. package/src/epoch-helpers/index.ts +30 -0
  910. package/src/file-store/factory.ts +20 -4
  911. package/src/file-store/http.ts +29 -10
  912. package/src/file-store/index.ts +2 -0
  913. package/src/file-store/local.ts +15 -5
  914. package/src/file-store/memory.ts +94 -0
  915. package/src/file-store/s3.ts +12 -3
  916. package/src/gas/README.md +246 -0
  917. package/src/gas/fee_math.ts +120 -0
  918. package/src/gas/gas.ts +8 -3
  919. package/src/gas/gas_fees.ts +29 -10
  920. package/src/gas/gas_settings.ts +63 -15
  921. package/src/gas/index.ts +2 -0
  922. package/src/gas/tx_gas_limits.ts +123 -0
  923. package/src/ha-signing/config.ts +170 -0
  924. package/src/ha-signing/index.ts +29 -0
  925. package/src/ha-signing/local_config.ts +65 -0
  926. package/src/ha-signing/types.ts +126 -0
  927. package/src/hash/hash.ts +76 -11
  928. package/src/hash/map_slot.ts +2 -2
  929. package/src/interfaces/allowed_element.ts +29 -9
  930. package/src/interfaces/api_limit.ts +1 -1
  931. package/src/interfaces/archiver.ts +89 -88
  932. package/src/interfaces/aztec-node-admin.ts +58 -19
  933. package/src/interfaces/aztec-node-debug.ts +92 -0
  934. package/src/interfaces/aztec-node.ts +407 -261
  935. package/src/interfaces/block-builder.ts +65 -14
  936. package/src/interfaces/block_response.ts +92 -0
  937. package/src/interfaces/chain_tips.ts +16 -0
  938. package/src/interfaces/checkpoint_parameter.ts +20 -0
  939. package/src/interfaces/checkpoint_response.ts +84 -0
  940. package/src/interfaces/client.ts +8 -1
  941. package/src/interfaces/configs.ts +102 -14
  942. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  943. package/src/interfaces/l1_publish_info.ts +40 -0
  944. package/src/interfaces/l2_logs_source.ts +13 -39
  945. package/src/interfaces/merkle_tree_operations.ts +20 -23
  946. package/src/interfaces/p2p-bootstrap.ts +2 -2
  947. package/src/interfaces/p2p.ts +60 -31
  948. package/src/interfaces/private_kernel_prover.ts +192 -13
  949. package/src/interfaces/prover-agent.ts +1 -1
  950. package/src/interfaces/prover-broker.ts +22 -0
  951. package/src/interfaces/prover-client.ts +18 -8
  952. package/src/interfaces/prover-node.ts +36 -21
  953. package/src/interfaces/proving-job-source.ts +4 -4
  954. package/src/interfaces/proving-job.ts +6 -6
  955. package/src/interfaces/public_storage_override.ts +26 -0
  956. package/src/interfaces/server.ts +5 -2
  957. package/src/interfaces/server_circuit_prover.ts +2 -2
  958. package/src/interfaces/slasher.ts +21 -10
  959. package/src/interfaces/tx_provider.ts +6 -0
  960. package/src/interfaces/validator.ts +98 -36
  961. package/src/interfaces/world_state.ts +19 -4
  962. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  963. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  964. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  965. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  966. package/src/kernel/hints/index.ts +2 -3
  967. package/src/kernel/hints/key_validation_request.ts +18 -16
  968. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  969. package/src/kernel/hints/read_request.ts +1 -1
  970. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  971. package/src/kernel/index.ts +9 -1
  972. package/src/kernel/log_hash.ts +36 -13
  973. package/src/kernel/note_hash.ts +1 -1
  974. package/src/kernel/nullifier.ts +1 -1
  975. package/src/kernel/private_circuit_public_inputs.ts +26 -15
  976. package/src/kernel/private_context_inputs.ts +10 -3
  977. package/src/kernel/private_kernel_circuit_public_inputs.ts +11 -9
  978. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  979. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  980. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  981. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  982. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  983. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  984. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  985. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  986. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  987. package/src/kernel/private_kernel_prover_output.ts +4 -0
  988. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  989. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  990. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  991. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  992. package/src/kernel/private_log_data.ts +4 -1
  993. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  994. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  995. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  996. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  997. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  998. package/src/kernel/private_validation_requests.ts +8 -8
  999. package/src/kernel/public_call_request.ts +22 -7
  1000. package/src/kernel/utils/index.ts +0 -1
  1001. package/src/keys/derivation.ts +86 -24
  1002. package/src/keys/key_types.ts +6 -2
  1003. package/src/keys/public_key.ts +26 -2
  1004. package/src/keys/public_keys.ts +125 -111
  1005. package/src/keys/utils.ts +5 -5
  1006. package/src/kv-store/config.ts +29 -0
  1007. package/src/kv-store/index.ts +1 -0
  1008. package/src/l1-contracts/index.ts +1 -1
  1009. package/src/logs/app_tagging_secret.ts +169 -0
  1010. package/src/logs/app_tagging_secret_kind.ts +21 -0
  1011. package/src/logs/contract_class_log.ts +15 -14
  1012. package/src/logs/debug_log_store.ts +54 -0
  1013. package/src/logs/index.ts +8 -6
  1014. package/src/logs/log_cursor.ts +110 -0
  1015. package/src/logs/log_result.ts +104 -0
  1016. package/src/logs/logs_query.ts +138 -0
  1017. package/src/logs/message_context.ts +6 -50
  1018. package/src/logs/pending_tagged_log.ts +6 -35
  1019. package/src/logs/pre_tag.ts +3 -6
  1020. package/src/logs/private_log.ts +9 -3
  1021. package/src/logs/public_log.ts +4 -2
  1022. package/src/logs/query_all_logs_by_tags.ts +98 -0
  1023. package/src/logs/shared_secret_derivation.ts +37 -10
  1024. package/src/logs/siloed_tag.ts +28 -14
  1025. package/src/logs/tag.ts +9 -9
  1026. package/src/logs/tagging_index_range.ts +18 -0
  1027. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  1028. package/src/messaging/index.ts +1 -0
  1029. package/src/messaging/l1_to_l2_message.ts +12 -9
  1030. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  1031. package/src/messaging/l2_to_l1_membership.ts +192 -38
  1032. package/src/messaging/l2_to_l1_message.ts +29 -9
  1033. package/src/noir/index.ts +4 -2
  1034. package/src/note/index.ts +0 -1
  1035. package/src/note/note_dao.ts +1 -4
  1036. package/src/p2p/attestation_utils.ts +64 -1
  1037. package/src/p2p/block_proposal.ts +112 -39
  1038. package/src/p2p/checkpoint_attestation.ts +44 -31
  1039. package/src/p2p/checkpoint_proposal.ts +159 -86
  1040. package/src/p2p/client_type.ts +0 -6
  1041. package/src/p2p/consensus_payload.ts +68 -24
  1042. package/src/p2p/constants.ts +3 -0
  1043. package/src/p2p/gossipable.ts +4 -4
  1044. package/src/p2p/index.ts +0 -2
  1045. package/src/p2p/peer_error.ts +7 -0
  1046. package/src/p2p/signature_utils.ts +117 -23
  1047. package/src/p2p/signed_txs.ts +46 -28
  1048. package/src/p2p/topic_type.ts +8 -15
  1049. package/src/parity/parity_base_private_inputs.ts +10 -4
  1050. package/src/parity/parity_public_inputs.ts +9 -2
  1051. package/src/proofs/chonk_proof.ts +132 -12
  1052. package/src/rollup/avm_proof_data.ts +2 -2
  1053. package/src/rollup/block_headers_hash.ts +11 -2
  1054. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  1055. package/src/rollup/checkpoint_header.ts +18 -4
  1056. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  1057. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  1058. package/src/schemas/schemas.ts +6 -1
  1059. package/src/slashing/helpers.ts +21 -9
  1060. package/src/slashing/index.ts +1 -2
  1061. package/src/slashing/serialization.ts +1 -81
  1062. package/src/slashing/types.ts +38 -49
  1063. package/src/slashing/{tally.ts → votes.ts} +41 -2
  1064. package/src/stats/stats.ts +10 -2
  1065. package/src/tests/factories.ts +128 -165
  1066. package/src/tests/mocks.ts +111 -84
  1067. package/src/timetable/README.md +609 -0
  1068. package/src/timetable/budgets.ts +87 -0
  1069. package/src/timetable/build_proposer_timetable.ts +42 -0
  1070. package/src/timetable/consensus_timetable.ts +126 -0
  1071. package/src/timetable/index.ts +4 -0
  1072. package/src/timetable/proposer_timetable.ts +190 -0
  1073. package/src/timetable/timetable-example.svg +108 -0
  1074. package/src/trees/append_only_tree_snapshot.ts +8 -3
  1075. package/src/trees/nullifier_leaf.ts +4 -0
  1076. package/src/trees/nullifier_membership_witness.ts +0 -21
  1077. package/src/trees/public_data_leaf.ts +11 -5
  1078. package/src/trees/public_data_witness.ts +0 -31
  1079. package/src/tx/block_header.ts +18 -7
  1080. package/src/tx/capsule.ts +10 -2
  1081. package/src/tx/execution_payload.ts +2 -1
  1082. package/src/tx/fee_provider.ts +10 -0
  1083. package/src/tx/global_variable_builder.ts +3 -20
  1084. package/src/tx/global_variables.ts +15 -23
  1085. package/src/tx/hashed_values.ts +8 -3
  1086. package/src/tx/index.ts +1 -1
  1087. package/src/tx/indexed_tx_effect.ts +18 -6
  1088. package/src/tx/partial_state_reference.ts +8 -3
  1089. package/src/tx/private_execution_result.ts +5 -5
  1090. package/src/tx/private_tx_constant_data.ts +25 -2
  1091. package/src/tx/profiling.ts +20 -9
  1092. package/src/tx/protocol_contracts.ts +2 -2
  1093. package/src/tx/proven_tx.ts +6 -0
  1094. package/src/tx/public_call_request_with_calldata.ts +8 -3
  1095. package/src/tx/public_simulation_output.ts +4 -0
  1096. package/src/tx/simulated_tx.ts +30 -22
  1097. package/src/tx/state_reference.ts +9 -4
  1098. package/src/tx/tree_snapshots.ts +9 -4
  1099. package/src/tx/tx.ts +80 -35
  1100. package/src/tx/tx_constant_data.ts +8 -3
  1101. package/src/tx/tx_context.ts +8 -3
  1102. package/src/tx/tx_hash.ts +20 -5
  1103. package/src/tx/tx_receipt.ts +269 -74
  1104. package/src/tx/tx_request.ts +2 -2
  1105. package/src/tx/validator/error_texts.ts +15 -2
  1106. package/src/tx/validator/tx_validator.ts +2 -6
  1107. package/src/types/shared.ts +8 -13
  1108. package/src/update-checker/dev_version.ts +2 -0
  1109. package/src/update-checker/index.ts +3 -1
  1110. package/src/update-checker/package_version.ts +17 -0
  1111. package/src/update-checker/version_checker.ts +65 -0
  1112. package/src/validators/errors.ts +9 -0
  1113. package/src/validators/schemas.ts +13 -4
  1114. package/src/validators/types.ts +25 -5
  1115. package/src/versioning/versioning.ts +5 -2
  1116. package/src/vks/verification_key.ts +5 -184
  1117. package/src/world-state/genesis_data.ts +27 -0
  1118. package/src/world-state/index.ts +1 -0
  1119. package/src/world-state/world_state_revision.ts +9 -34
  1120. package/dest/abi/mocked_keys.d.ts +0 -2
  1121. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1122. package/dest/abi/mocked_keys.js +0 -1
  1123. package/dest/avm/contract_storage_read.d.ts +0 -58
  1124. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1125. package/dest/avm/contract_storage_read.js +0 -65
  1126. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1127. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1128. package/dest/avm/contract_storage_update_request.js +0 -80
  1129. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1130. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1131. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1132. package/dest/avm/public_data_update_request.d.ts +0 -62
  1133. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1134. package/dest/avm/public_data_update_request.js +0 -67
  1135. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1136. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1137. package/dest/avm/public_inner_call_request.js +0 -74
  1138. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1139. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1140. package/dest/block/checkpointed_l2_block.js +0 -46
  1141. package/dest/contract/deployment_info.d.ts +0 -24
  1142. package/dest/contract/deployment_info.d.ts.map +0 -1
  1143. package/dest/contract/deployment_info.js +0 -3
  1144. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1145. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1146. package/dest/contract/private_function_membership_proof.js +0 -124
  1147. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1148. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1149. package/dest/contract/utility_function_membership_proof.js +0 -87
  1150. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1151. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1152. package/dest/interfaces/epoch-prover.js +0 -1
  1153. package/dest/interfaces/get_logs_response.d.ts +0 -90
  1154. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1155. package/dest/interfaces/get_logs_response.js +0 -12
  1156. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1157. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1158. package/dest/interfaces/prover-coordination.js +0 -1
  1159. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1160. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1161. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1162. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1163. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1164. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1165. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1166. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1167. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1168. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1169. package/dest/kernel/utils/optional_number.js +0 -42
  1170. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1171. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1172. package/dest/l1-contracts/slash_factory.js +0 -158
  1173. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1174. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1175. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1176. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1177. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1178. package/dest/logs/extended_contract_class_log.js +0 -67
  1179. package/dest/logs/extended_public_log.d.ts +0 -100
  1180. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1181. package/dest/logs/extended_public_log.js +0 -73
  1182. package/dest/logs/log_filter.d.ts +0 -22
  1183. package/dest/logs/log_filter.d.ts.map +0 -1
  1184. package/dest/logs/log_filter.js +0 -11
  1185. package/dest/logs/log_id.d.ts +0 -82
  1186. package/dest/logs/log_id.d.ts.map +0 -1
  1187. package/dest/logs/log_id.js +0 -92
  1188. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1189. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1190. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1191. package/dest/note/notes_filter.d.ts +0 -27
  1192. package/dest/note/notes_filter.d.ts.map +0 -1
  1193. package/dest/note/notes_filter.js +0 -11
  1194. package/dest/p2p/interface.d.ts +0 -5
  1195. package/dest/p2p/interface.d.ts.map +0 -1
  1196. package/dest/p2p/interface.js +0 -1
  1197. package/dest/slashing/empire.d.ts +0 -31
  1198. package/dest/slashing/empire.d.ts.map +0 -1
  1199. package/dest/slashing/empire.js +0 -85
  1200. package/dest/slashing/tally.d.ts.map +0 -1
  1201. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1202. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1203. package/dest/tx/validator/empty_validator.js +0 -7
  1204. package/dest/update-checker/update-checker.d.ts +0 -49
  1205. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1206. package/dest/update-checker/update-checker.js +0 -130
  1207. package/src/abi/mocked_keys.ts +0 -2
  1208. package/src/avm/contract_storage_read.ts +0 -77
  1209. package/src/avm/contract_storage_update_request.ts +0 -93
  1210. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1211. package/src/avm/public_data_update_request.ts +0 -106
  1212. package/src/avm/public_inner_call_request.ts +0 -85
  1213. package/src/block/checkpointed_l2_block.ts +0 -70
  1214. package/src/contract/deployment_info.ts +0 -25
  1215. package/src/contract/private_function_membership_proof.ts +0 -167
  1216. package/src/contract/utility_function_membership_proof.ts +0 -118
  1217. package/src/interfaces/epoch-prover.ts +0 -72
  1218. package/src/interfaces/get_logs_response.ts +0 -35
  1219. package/src/interfaces/prover-coordination.ts +0 -17
  1220. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1221. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1222. package/src/kernel/utils/optional_number.ts +0 -50
  1223. package/src/l1-contracts/slash_factory.ts +0 -180
  1224. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1225. package/src/logs/extended_contract_class_log.ts +0 -87
  1226. package/src/logs/extended_public_log.ts +0 -94
  1227. package/src/logs/log_filter.ts +0 -31
  1228. package/src/logs/log_id.ts +0 -122
  1229. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1230. package/src/note/notes_filter.ts +0 -38
  1231. package/src/p2p/interface.ts +0 -4
  1232. package/src/slashing/empire.ts +0 -102
  1233. package/src/tx/validator/empty_validator.ts +0 -7
  1234. package/src/update-checker/update-checker.ts +0 -166
@@ -19,8 +19,8 @@ import type { UInt64 } from '../types/shared.js';
19
19
 
20
20
  /**
21
21
  * Header of a checkpoint. A checkpoint is a collection of blocks submitted to L1 all within the same slot.
22
- * TODO(palla/mbps): Should this include chainId and version as well? Is this used just in circuits?
23
- * TODO(palla/mbps): What about CheckpointNumber?
22
+ * This header is verified as-is in the rollup circuits, posted to the L1 rollup contract, stored in the archiver,
23
+ * and exposed via the Aztec Node API. See `CheckpointData` for a struct that includes the header plus extra metadata.
24
24
  */
25
25
  export class CheckpointHeader {
26
26
  constructor(
@@ -52,6 +52,8 @@ export class CheckpointHeader {
52
52
  public gasFees: GasFees,
53
53
  /** Total mana used in the block, computed by the root rollup circuit */
54
54
  public totalManaUsed: Fr,
55
+ /** Total fees accrued across the checkpoint. */
56
+ public accumulatedFees: Fr,
55
57
  ) {}
56
58
 
57
59
  static get schema(): ZodFor<CheckpointHeader> {
@@ -68,6 +70,7 @@ export class CheckpointHeader {
68
70
  feeRecipient: schemas.AztecAddress,
69
71
  gasFees: GasFees.schema,
70
72
  totalManaUsed: schemas.Fr,
73
+ accumulatedFees: schemas.Fr,
71
74
  })
72
75
  .transform(CheckpointHeader.from);
73
76
  }
@@ -85,6 +88,7 @@ export class CheckpointHeader {
85
88
  fields.feeRecipient,
86
89
  fields.gasFees,
87
90
  fields.totalManaUsed,
91
+ fields.accumulatedFees,
88
92
  ] as const;
89
93
  }
90
94
 
@@ -107,6 +111,7 @@ export class CheckpointHeader {
107
111
  reader.readObject(AztecAddress),
108
112
  reader.readObject(GasFees),
109
113
  reader.readObject(Fr),
114
+ reader.readObject(Fr),
110
115
  );
111
116
  }
112
117
 
@@ -122,7 +127,8 @@ export class CheckpointHeader {
122
127
  this.coinbase.equals(other.coinbase) &&
123
128
  this.feeRecipient.equals(other.feeRecipient) &&
124
129
  this.gasFees.equals(other.gasFees) &&
125
- this.totalManaUsed.equals(other.totalManaUsed)
130
+ this.totalManaUsed.equals(other.totalManaUsed) &&
131
+ this.accumulatedFees.equals(other.accumulatedFees)
126
132
  );
127
133
  }
128
134
 
@@ -151,6 +157,7 @@ export class CheckpointHeader {
151
157
  this.feeRecipient,
152
158
  this.gasFees,
153
159
  this.totalManaUsed,
160
+ this.accumulatedFees,
154
161
  ]);
155
162
  }
156
163
 
@@ -171,6 +178,7 @@ export class CheckpointHeader {
171
178
  feeRecipient: AztecAddress.ZERO,
172
179
  gasFees: GasFees.empty(),
173
180
  totalManaUsed: Fr.ZERO,
181
+ accumulatedFees: Fr.ZERO,
174
182
  ...fields,
175
183
  });
176
184
  }
@@ -188,6 +196,7 @@ export class CheckpointHeader {
188
196
  feeRecipient: new AztecAddress(Fr.random()),
189
197
  gasFees: GasFees.random(),
190
198
  totalManaUsed: new Fr(BigInt(Math.floor(Math.random() * 1000000))),
199
+ accumulatedFees: new Fr(BigInt(Math.floor(Math.random() * 1000000))),
191
200
  ...overrides,
192
201
  });
193
202
  }
@@ -204,7 +213,8 @@ export class CheckpointHeader {
204
213
  this.coinbase.isZero() &&
205
214
  this.feeRecipient.isZero() &&
206
215
  this.gasFees.isEmpty() &&
207
- this.totalManaUsed.isZero()
216
+ this.totalManaUsed.isZero() &&
217
+ this.accumulatedFees.isZero()
208
218
  );
209
219
  }
210
220
 
@@ -233,6 +243,7 @@ export class CheckpointHeader {
233
243
  new AztecAddress(hexToBuffer(header.feeRecipient)),
234
244
  new GasFees(header.gasFees.feePerDaGas, header.gasFees.feePerL2Gas),
235
245
  new Fr(header.totalManaUsed),
246
+ new Fr(header.accumulatedFees),
236
247
  );
237
248
  }
238
249
 
@@ -260,6 +271,7 @@ export class CheckpointHeader {
260
271
  feePerL2Gas: this.gasFees.feePerL2Gas,
261
272
  },
262
273
  totalManaUsed: this.totalManaUsed.toBigInt(),
274
+ accumulatedFees: this.accumulatedFees.toBigInt(),
263
275
  };
264
276
  }
265
277
 
@@ -276,6 +288,7 @@ export class CheckpointHeader {
276
288
  feeRecipient: this.feeRecipient.toString(),
277
289
  gasFees: this.gasFees.toInspect(),
278
290
  totalManaUsed: this.totalManaUsed.toBigInt(),
291
+ accumulatedFees: this.accumulatedFees.toBigInt(),
279
292
  };
280
293
  }
281
294
 
@@ -292,6 +305,7 @@ export class CheckpointHeader {
292
305
  feeRecipient: ${this.feeRecipient.toString()},
293
306
  gasFees: { da:${this.gasFees.feePerDaGas}, l2:${this.gasFees.feePerL2Gas} },
294
307
  totalManaUsed: ${this.totalManaUsed.toBigInt()},
308
+ accumulatedFees: ${this.accumulatedFees.toBigInt()},
295
309
  }`;
296
310
  }
297
311
  }
@@ -1,5 +1,5 @@
1
1
  import { BlobAccumulator, FinalBlobBatchingChallenges } from '@aztec/blob-lib/types';
2
- import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
2
+ import { MAX_CHECKPOINTS_PER_EPOCH } from '@aztec/constants';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { EthAddress } from '@aztec/foundation/eth-address';
5
5
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
@@ -38,11 +38,11 @@ export class CheckpointRollupPublicInputs {
38
38
  /**
39
39
  * The hashes of the headers of the constituent checkpoints.
40
40
  */
41
- public checkpointHeaderHashes: Tuple<Fr, typeof AZTEC_MAX_EPOCH_DURATION>,
41
+ public checkpointHeaderHashes: Tuple<Fr, typeof MAX_CHECKPOINTS_PER_EPOCH>,
42
42
  /**
43
43
  * The summed transaction fees and recipients of the constituent checkpoints.
44
44
  */
45
- public fees: Tuple<FeeRecipient, typeof AZTEC_MAX_EPOCH_DURATION>,
45
+ public fees: Tuple<FeeRecipient, typeof MAX_CHECKPOINTS_PER_EPOCH>,
46
46
  /**
47
47
  * Accumulated opening proofs for all blobs before this checkpoint range.
48
48
  */
@@ -65,8 +65,8 @@ export class CheckpointRollupPublicInputs {
65
65
  reader.readObject(AppendOnlyTreeSnapshot),
66
66
  reader.readObject(AppendOnlyTreeSnapshot),
67
67
  reader.readObject(AppendOnlyTreeSnapshot),
68
- reader.readArray(AZTEC_MAX_EPOCH_DURATION, Fr),
69
- reader.readArray(AZTEC_MAX_EPOCH_DURATION, FeeRecipient),
68
+ reader.readArray(MAX_CHECKPOINTS_PER_EPOCH, Fr),
69
+ reader.readArray(MAX_CHECKPOINTS_PER_EPOCH, FeeRecipient),
70
70
  reader.readObject(BlobAccumulator),
71
71
  reader.readObject(BlobAccumulator),
72
72
  reader.readObject(FinalBlobBatchingChallenges),
@@ -101,6 +101,16 @@ export class CheckpointRollupPublicInputs {
101
101
  return this.toBuffer();
102
102
  }
103
103
 
104
+ toInspect() {
105
+ return {
106
+ checkpointHeaderHash: this.checkpointHeaderHashes[0].toString(),
107
+ previousArchiveRoot: this.previousArchive.root.toString(),
108
+ newArchiveRoot: this.newArchive.root.toString(),
109
+ previousOutHashRoot: this.previousOutHash.root.toString(),
110
+ newOutHashRoot: this.newOutHash.root.toString(),
111
+ };
112
+ }
113
+
104
114
  /** Creates an instance from a hex string. */
105
115
  static get schema() {
106
116
  return bufferSchemaFor(CheckpointRollupPublicInputs);
@@ -1,5 +1,5 @@
1
1
  import { FinalBlobAccumulator } from '@aztec/blob-lib/types';
2
- import { AZTEC_MAX_EPOCH_DURATION } from '@aztec/constants';
2
+ import { MAX_CHECKPOINTS_PER_EPOCH } from '@aztec/constants';
3
3
  import { makeTuple } from '@aztec/foundation/array';
4
4
  import { Fr } from '@aztec/foundation/curves/bn254';
5
5
  import { bufferSchemaFor } from '@aztec/foundation/schemas';
@@ -27,8 +27,8 @@ export class RootRollupPublicInputs {
27
27
  */
28
28
  public outHash: Fr,
29
29
  /** Hashes of checkpoint headers for this rollup. */
30
- public checkpointHeaderHashes: Tuple<Fr, typeof AZTEC_MAX_EPOCH_DURATION>,
31
- public fees: Tuple<FeeRecipient, typeof AZTEC_MAX_EPOCH_DURATION>,
30
+ public checkpointHeaderHashes: Tuple<Fr, typeof MAX_CHECKPOINTS_PER_EPOCH>,
31
+ public fees: Tuple<FeeRecipient, typeof MAX_CHECKPOINTS_PER_EPOCH>,
32
32
  public constants: EpochConstantData,
33
33
  public blobPublicInputs: FinalBlobAccumulator,
34
34
  ) {}
@@ -68,8 +68,8 @@ export class RootRollupPublicInputs {
68
68
  Fr.fromBuffer(reader),
69
69
  Fr.fromBuffer(reader),
70
70
  Fr.fromBuffer(reader),
71
- reader.readArray(AZTEC_MAX_EPOCH_DURATION, Fr),
72
- reader.readArray(AZTEC_MAX_EPOCH_DURATION, FeeRecipient),
71
+ reader.readArray(MAX_CHECKPOINTS_PER_EPOCH, Fr),
72
+ reader.readArray(MAX_CHECKPOINTS_PER_EPOCH, FeeRecipient),
73
73
  EpochConstantData.fromBuffer(reader),
74
74
  reader.readObject(FinalBlobAccumulator),
75
75
  );
@@ -99,8 +99,8 @@ export class RootRollupPublicInputs {
99
99
  Fr.random(),
100
100
  Fr.random(),
101
101
  Fr.random(),
102
- makeTuple(AZTEC_MAX_EPOCH_DURATION, Fr.random),
103
- makeTuple(AZTEC_MAX_EPOCH_DURATION, FeeRecipient.random),
102
+ makeTuple(MAX_CHECKPOINTS_PER_EPOCH, Fr.random),
103
+ makeTuple(MAX_CHECKPOINTS_PER_EPOCH, FeeRecipient.random),
104
104
  new EpochConstantData(Fr.random(), Fr.random(), Fr.random(), Fr.random(), Fr.random()),
105
105
  FinalBlobAccumulator.random(),
106
106
  );
@@ -89,7 +89,10 @@ export const AbiDecodedSchema: ZodFor<AbiDecoded> = z.union([
89
89
  z.boolean(),
90
90
  schemas.AztecAddress,
91
91
  z.array(z.lazy(() => AbiDecodedSchema)),
92
- z.record(z.lazy(() => AbiDecodedSchema)),
92
+ z.record(
93
+ z.string(),
94
+ z.lazy(() => AbiDecodedSchema),
95
+ ),
93
96
  ]);
94
97
 
95
98
  // C++ only supports null values, which we want to convert to undefined.
@@ -103,6 +106,8 @@ export {
103
106
  hexSchemaFor,
104
107
  bufferSchemaFor,
105
108
  type ApiSchemaFor,
109
+ getSchemaParameters,
110
+ getSchemaReturnType,
106
111
  optional,
107
112
  mapSchema,
108
113
  pickFromSchema,
@@ -48,9 +48,12 @@ export function getPenaltyForOffense(
48
48
  offense: OffenseType,
49
49
  config: Pick<
50
50
  SlasherConfig,
51
- | 'slashAttestDescendantOfInvalidPenalty'
51
+ | 'slashProposeDescendantOfCheckpointWithInvalidAttestationsPenalty'
52
52
  | 'slashBroadcastedInvalidBlockPenalty'
53
- | 'slashPrunePenalty'
53
+ | 'slashBroadcastedInvalidCheckpointProposalPenalty'
54
+ | 'slashDuplicateProposalPenalty'
55
+ | 'slashDuplicateAttestationPenalty'
56
+ | 'slashAttestInvalidCheckpointProposalPenalty'
54
57
  | 'slashDataWithholdingPenalty'
55
58
  | 'slashUnknownPenalty'
56
59
  | 'slashInactivityPenalty'
@@ -58,8 +61,6 @@ export function getPenaltyForOffense(
58
61
  >,
59
62
  ) {
60
63
  switch (offense) {
61
- case OffenseType.VALID_EPOCH_PRUNED:
62
- return config.slashPrunePenalty;
63
64
  case OffenseType.DATA_WITHHOLDING:
64
65
  return config.slashDataWithholdingPenalty;
65
66
  case OffenseType.INACTIVITY:
@@ -67,10 +68,18 @@ export function getPenaltyForOffense(
67
68
  case OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS:
68
69
  case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
69
70
  return config.slashProposeInvalidAttestationsPenalty;
70
- case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
71
- return config.slashAttestDescendantOfInvalidPenalty;
71
+ case OffenseType.PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS:
72
+ return config.slashProposeDescendantOfCheckpointWithInvalidAttestationsPenalty;
72
73
  case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
73
74
  return config.slashBroadcastedInvalidBlockPenalty;
75
+ case OffenseType.BROADCASTED_INVALID_CHECKPOINT_PROPOSAL:
76
+ return config.slashBroadcastedInvalidCheckpointProposalPenalty;
77
+ case OffenseType.DUPLICATE_PROPOSAL:
78
+ return config.slashDuplicateProposalPenalty;
79
+ case OffenseType.DUPLICATE_ATTESTATION:
80
+ return config.slashDuplicateAttestationPenalty;
81
+ case OffenseType.ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL:
82
+ return config.slashAttestInvalidCheckpointProposalPenalty;
74
83
  case OffenseType.UNKNOWN:
75
84
  return config.slashUnknownPenalty;
76
85
  default: {
@@ -83,15 +92,18 @@ export function getPenaltyForOffense(
83
92
  /** Returns whether the `epochOrSlot` field for an offense references an epoch or a slot */
84
93
  export function getTimeUnitForOffense(offense: OffenseType): 'epoch' | 'slot' {
85
94
  switch (offense) {
86
- case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
95
+ case OffenseType.PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS:
87
96
  case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
97
+ case OffenseType.DATA_WITHHOLDING:
98
+ case OffenseType.BROADCASTED_INVALID_CHECKPOINT_PROPOSAL:
99
+ case OffenseType.DUPLICATE_PROPOSAL:
100
+ case OffenseType.DUPLICATE_ATTESTATION:
101
+ case OffenseType.ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL:
88
102
  case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
89
103
  case OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS:
90
104
  return 'slot';
91
105
  case OffenseType.INACTIVITY:
92
- case OffenseType.DATA_WITHHOLDING:
93
106
  case OffenseType.UNKNOWN:
94
- case OffenseType.VALID_EPOCH_PRUNED:
95
107
  return 'epoch';
96
108
  default: {
97
109
  const _exhaustiveCheck: never = offense;
@@ -1,6 +1,5 @@
1
1
  export * from './types.js';
2
2
  export * from './interfaces.js';
3
3
  export * from './helpers.js';
4
- export * from './empire.js';
5
- export * from './tally.js';
4
+ export * from './votes.js';
6
5
  export * from './serialization.js';
@@ -1,15 +1,7 @@
1
- import { times } from '@aztec/foundation/collection';
2
1
  import { EthAddress } from '@aztec/foundation/eth-address';
3
2
  import { BufferReader, bigintToUInt64BE, bigintToUInt128BE, serializeToBuffer } from '@aztec/foundation/serialize';
4
3
 
5
- import type {
6
- Offense,
7
- OffenseType,
8
- SlashPayload,
9
- SlashPayloadRound,
10
- ValidatorSlash,
11
- ValidatorSlashOffense,
12
- } from './types.js';
4
+ import type { Offense, OffenseType } from './types.js';
13
5
 
14
6
  export function serializeOffense(offense: Offense): Buffer {
15
7
  return serializeToBuffer(
@@ -29,75 +21,3 @@ export function deserializeOffense(buffer: Buffer): Offense {
29
21
 
30
22
  return { validator, amount, offenseType: offense, epochOrSlot };
31
23
  }
32
-
33
- function serializeValidatorSlashOffense(offense: ValidatorSlashOffense): Buffer {
34
- return serializeToBuffer(bigintToUInt64BE(offense.epochOrSlot), offense.offenseType);
35
- }
36
-
37
- function deserializeValidatorSlashOffense(buffer: Buffer | BufferReader): ValidatorSlashOffense {
38
- const reader = BufferReader.asReader(buffer);
39
- return {
40
- epochOrSlot: reader.readUInt64(),
41
- offenseType: reader.readNumber() as OffenseType,
42
- };
43
- }
44
-
45
- function serializeValidatorSlash(slash: ValidatorSlash): Buffer {
46
- return serializeToBuffer(
47
- slash.validator,
48
- bigintToUInt128BE(slash.amount),
49
- slash.offenses.length,
50
- slash.offenses.map(serializeValidatorSlashOffense),
51
- );
52
- }
53
-
54
- function deserializeValidatorSlash(buffer: Buffer | BufferReader): ValidatorSlash {
55
- const reader = BufferReader.asReader(buffer);
56
- const validator = reader.readObject(EthAddress);
57
- const amount = reader.readUInt128();
58
- const offensesCount = reader.readNumber();
59
- const offenses = times(offensesCount, () => deserializeValidatorSlashOffense(reader));
60
-
61
- return { validator, amount, offenses };
62
- }
63
-
64
- export function serializeSlashPayload(payload: SlashPayload): Buffer {
65
- return serializeToBuffer(
66
- payload.address,
67
- payload.slashes.length,
68
- payload.slashes.map(serializeValidatorSlash),
69
- bigintToUInt64BE(payload.timestamp),
70
- );
71
- }
72
-
73
- export function deserializeSlashPayload(buffer: Buffer): SlashPayload {
74
- const reader = BufferReader.asReader(buffer);
75
- const address = reader.readObject(EthAddress);
76
- const slashesCount = reader.readNumber();
77
- const slashes = times(slashesCount, () => deserializeValidatorSlash(reader));
78
- const timestamp = reader.readUInt64();
79
- return { address, slashes, timestamp };
80
- }
81
-
82
- export function serializeSlashPayloadRound(payload: SlashPayloadRound): Buffer {
83
- return serializeToBuffer(
84
- payload.address,
85
- payload.slashes.length,
86
- payload.slashes.map(serializeValidatorSlash),
87
- bigintToUInt64BE(payload.timestamp),
88
- Number(payload.votes),
89
- bigintToUInt64BE(payload.round),
90
- );
91
- }
92
-
93
- export function deserializeSlashPayloadRound(buffer: Buffer): SlashPayloadRound {
94
- const reader = BufferReader.asReader(buffer);
95
- const address = reader.readObject(EthAddress);
96
- const slashesCount = reader.readNumber();
97
- const slashes = times(slashesCount, () => deserializeValidatorSlash(reader));
98
- const timestamp = reader.readUInt64();
99
- const votes = BigInt(reader.readNumber());
100
- const round = reader.readUInt64();
101
-
102
- return { address, slashes, timestamp, votes, round };
103
- }
@@ -6,10 +6,8 @@ import { schemas, zodFor } from '../schemas/index.js';
6
6
 
7
7
  export enum OffenseType {
8
8
  UNKNOWN = 0,
9
- /** The data for proving an epoch was not publicly available, we slash its committee */
9
+ /** The data for the txs in a published checkpoint was not available within the tolerance window, we slash the checkpoint's attesters */
10
10
  DATA_WITHHOLDING = 1,
11
- /** An epoch was not successfully proven in time, we slash its committee */
12
- VALID_EPOCH_PRUNED = 2,
13
11
  /** A proposer failed to attest or propose during an epoch according to the Sentinel */
14
12
  INACTIVITY = 3,
15
13
  /** A proposer sent an invalid block proposal over the p2p network to the committee */
@@ -18,8 +16,16 @@ export enum OffenseType {
18
16
  PROPOSED_INSUFFICIENT_ATTESTATIONS = 5,
19
17
  /** A proposer pushed to L1 a block with incorrect committee attestations (ie signature from a non-committee member) */
20
18
  PROPOSED_INCORRECT_ATTESTATIONS = 6,
21
- /** A committee member attested to a block that was built as a descendent of an invalid block (as in a block with invalid attestations) */
22
- ATTESTED_DESCENDANT_OF_INVALID = 7,
19
+ /** A proposer published a checkpoint to L1 that builds on an invalid checkpoint (as in a checkpoint with invalid or insufficient attestations) */
20
+ PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS = 7,
21
+ /** A proposer sent duplicate proposals for the same position (slot, indexWithinCheckpoint for blocks or slot for checkpoints) */
22
+ DUPLICATE_PROPOSAL = 8,
23
+ /** A validator signed attestations for different proposals at the same slot (equivocation) */
24
+ DUPLICATE_ATTESTATION = 9,
25
+ /** A committee member attested to a checkpoint proposal in a slot with an invalid block proposal */
26
+ ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL = 10,
27
+ /** A proposer broadcast an invalid checkpoint proposal, detected by retained evidence or deterministic recomputation */
28
+ BROADCASTED_INVALID_CHECKPOINT_PROPOSAL = 11,
23
29
  }
24
30
 
25
31
  export function getOffenseTypeName(offense: OffenseType) {
@@ -28,8 +34,6 @@ export function getOffenseTypeName(offense: OffenseType) {
28
34
  return 'unknown';
29
35
  case OffenseType.DATA_WITHHOLDING:
30
36
  return 'data_withholding';
31
- case OffenseType.VALID_EPOCH_PRUNED:
32
- return 'valid_epoch_pruned';
33
37
  case OffenseType.INACTIVITY:
34
38
  return 'inactivity';
35
39
  case OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL:
@@ -38,8 +42,16 @@ export function getOffenseTypeName(offense: OffenseType) {
38
42
  return 'proposed_insufficient_attestations';
39
43
  case OffenseType.PROPOSED_INCORRECT_ATTESTATIONS:
40
44
  return 'proposed_incorrect_attestations';
41
- case OffenseType.ATTESTED_DESCENDANT_OF_INVALID:
42
- return 'attested_descendant_of_invalid';
45
+ case OffenseType.PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS:
46
+ return 'proposed_descendant_of_checkpoint_with_invalid_attestations';
47
+ case OffenseType.DUPLICATE_PROPOSAL:
48
+ return 'duplicate_proposal';
49
+ case OffenseType.DUPLICATE_ATTESTATION:
50
+ return 'duplicate_attestation';
51
+ case OffenseType.ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL:
52
+ return 'attested_to_invalid_checkpoint_proposal';
53
+ case OffenseType.BROADCASTED_INVALID_CHECKPOINT_PROPOSAL:
54
+ return 'broadcasted_invalid_checkpoint_proposal';
43
55
  default:
44
56
  throw new Error(`Unknown offense type: ${offense}`);
45
57
  }
@@ -50,12 +62,15 @@ export const OffenseTypeSchema = z.nativeEnum(OffenseType);
50
62
  export const OffenseToBigInt: Record<OffenseType, bigint> = {
51
63
  [OffenseType.UNKNOWN]: 0n,
52
64
  [OffenseType.DATA_WITHHOLDING]: 1n,
53
- [OffenseType.VALID_EPOCH_PRUNED]: 2n,
54
65
  [OffenseType.INACTIVITY]: 3n,
55
66
  [OffenseType.BROADCASTED_INVALID_BLOCK_PROPOSAL]: 4n,
56
67
  [OffenseType.PROPOSED_INSUFFICIENT_ATTESTATIONS]: 5n,
57
68
  [OffenseType.PROPOSED_INCORRECT_ATTESTATIONS]: 6n,
58
- [OffenseType.ATTESTED_DESCENDANT_OF_INVALID]: 7n,
69
+ [OffenseType.PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS]: 7n,
70
+ [OffenseType.DUPLICATE_PROPOSAL]: 8n,
71
+ [OffenseType.DUPLICATE_ATTESTATION]: 9n,
72
+ [OffenseType.ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL]: 10n,
73
+ [OffenseType.BROADCASTED_INVALID_CHECKPOINT_PROPOSAL]: 11n,
59
74
  };
60
75
 
61
76
  export function bigIntToOffense(offense: bigint): OffenseType {
@@ -64,8 +79,6 @@ export function bigIntToOffense(offense: bigint): OffenseType {
64
79
  return OffenseType.UNKNOWN;
65
80
  case 1n:
66
81
  return OffenseType.DATA_WITHHOLDING;
67
- case 2n:
68
- return OffenseType.VALID_EPOCH_PRUNED;
69
82
  case 3n:
70
83
  return OffenseType.INACTIVITY;
71
84
  case 4n:
@@ -75,7 +88,15 @@ export function bigIntToOffense(offense: bigint): OffenseType {
75
88
  case 6n:
76
89
  return OffenseType.PROPOSED_INCORRECT_ATTESTATIONS;
77
90
  case 7n:
78
- return OffenseType.ATTESTED_DESCENDANT_OF_INVALID;
91
+ return OffenseType.PROPOSED_DESCENDANT_OF_CHECKPOINT_WITH_INVALID_ATTESTATIONS;
92
+ case 8n:
93
+ return OffenseType.DUPLICATE_PROPOSAL;
94
+ case 9n:
95
+ return OffenseType.DUPLICATE_ATTESTATION;
96
+ case 10n:
97
+ return OffenseType.ATTESTED_TO_INVALID_CHECKPOINT_PROPOSAL;
98
+ case 11n:
99
+ return OffenseType.BROADCASTED_INVALID_CHECKPOINT_PROPOSAL;
79
100
  default:
80
101
  throw new Error(`Unknown offense: ${offense}`);
81
102
  }
@@ -112,45 +133,13 @@ export type ValidatorSlash = {
112
133
  offenses: ValidatorSlashOffense[];
113
134
  };
114
135
 
115
- /** Slash payload as published by the empire slash proposer */
116
- export type SlashPayload = {
117
- address: EthAddress;
118
- slashes: ValidatorSlash[];
119
- timestamp: bigint;
120
- };
121
-
122
- /** Slash payload with round information from empire slash proposer */
123
- export type SlashPayloadRound = SlashPayload & { votes: bigint; round: bigint };
124
-
125
- export const SlashPayloadRoundSchema = zodFor<SlashPayloadRound>()(
126
- z.object({
127
- address: schemas.EthAddress,
128
- timestamp: schemas.BigInt,
129
- votes: schemas.BigInt,
130
- round: schemas.BigInt,
131
- slashes: z.array(
132
- z.object({
133
- validator: schemas.EthAddress,
134
- amount: schemas.BigInt,
135
- offenses: z.array(z.object({ offenseType: OffenseTypeSchema, epochOrSlot: schemas.BigInt })),
136
- }),
137
- ),
138
- }),
139
- );
140
-
141
- /** Votes for a validator slash in the consensus slash proposer */
136
+ /** Votes for a validator slash in the slashing proposer */
142
137
  export type ValidatorSlashVote = number;
143
138
 
144
139
  export type ProposerSlashAction =
145
- /** Create a new slash payload on an empire-based slash proposer */
146
- | { type: 'create-empire-payload'; data: ValidatorSlash[] }
147
- /** Vote for a slashing payload on an empire-based slash proposer */
148
- | { type: 'vote-empire-payload'; payload: EthAddress }
149
- /** Execute a slashing payload on an empire-based slash proposer */
150
- | { type: 'execute-empire-payload'; round: bigint }
151
- /** Vote for offenses on a consensus slashing proposer */
140
+ /** Vote for offenses on the slashing proposer */
152
141
  | { type: 'vote-offenses'; votes: ValidatorSlashVote[]; committees: EthAddress[][]; round: bigint }
153
- /** Execute a slashing round on a consensus slashing proposer */
142
+ /** Execute a slashing round on the slashing proposer */
154
143
  | { type: 'execute-slash'; committees: EthAddress[][]; round: bigint };
155
144
 
156
145
  export type ProposerSlashActionType = ProposerSlashAction['type'];
@@ -1,5 +1,7 @@
1
1
  import { sumBigint } from '@aztec/foundation/bigint';
2
+ import { padArrayEnd } from '@aztec/foundation/collection';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
4
+ import { type Logger, createLogger } from '@aztec/foundation/log';
3
5
  import type { PartialBy } from '@aztec/foundation/types';
4
6
 
5
7
  import { getEpochForOffense } from './helpers.js';
@@ -11,6 +13,9 @@ import type { Offense, ValidatorSlashVote } from './types.js';
11
13
  * @param committees - Array of committees (each containing array of validator addresses)
12
14
  * @param epochsForCommittees - Array of epochs corresponding to each committee
13
15
  * @param settings - Settings including slashingAmounts and optional validator override lists
16
+ * @param settings.maxSlashedValidators - If set, limits the total number of [validator, epoch] pairs
17
+ * with non-zero votes. The lowest-vote pairs are zeroed out to stay within the limit.
18
+ * @param logger - Logger, logs which validators were dropped.
14
19
  * @returns Array of ValidatorSlashVote, where each vote is how many slash units the validator in that position should be slashed
15
20
  */
16
21
  export function getSlashConsensusVotesFromOffenses(
@@ -20,9 +25,12 @@ export function getSlashConsensusVotesFromOffenses(
20
25
  settings: {
21
26
  slashingAmounts: [bigint, bigint, bigint];
22
27
  epochDuration: number;
28
+ targetCommitteeSize: number;
29
+ maxSlashedValidators?: number;
23
30
  },
31
+ logger: Logger = createLogger('slasher:votes'),
24
32
  ): ValidatorSlashVote[] {
25
- const { slashingAmounts } = settings;
33
+ const { slashingAmounts, targetCommitteeSize, maxSlashedValidators } = settings;
26
34
 
27
35
  if (committees.length !== epochsForCommittees.length) {
28
36
  throw new Error('committees and epochsForCommittees must have the same length');
@@ -31,7 +39,9 @@ export function getSlashConsensusVotesFromOffenses(
31
39
  const votes = committees.flatMap((committee, committeeIndex) => {
32
40
  const committeeEpoch = epochsForCommittees[committeeIndex];
33
41
 
34
- return committee.map(validator => {
42
+ // Map over actual committee members, then pad to targetCommitteeSize.
43
+ // Padding handles cases where committees may be empty (e.g., when there aren't enough validators to fill the committee size during network startup).
44
+ const votes = committee.map(validator => {
35
45
  // Find offenses for this validator in this specific epoch.
36
46
  // If an offense has no epoch, it is considered for all epochs due to a slashAlways setting.
37
47
  const validatorOffenses = offenses.filter(
@@ -45,8 +55,37 @@ export function getSlashConsensusVotesFromOffenses(
45
55
  const slashUnits = getSlashUnitsForAmount(slashAmount, slashingAmounts);
46
56
  return Number(slashUnits);
47
57
  });
58
+
59
+ return padArrayEnd(votes, 0, targetCommitteeSize);
48
60
  });
49
61
 
62
+ // if a cap is set, zero out the lowest-vote [validator, epoch] pairs so that the most severe slashes stay.
63
+ if (maxSlashedValidators === undefined) {
64
+ return votes;
65
+ }
66
+
67
+ const nonZeroByDescendingVote = [...votes.entries()].filter(([, vote]) => vote > 0).sort(([, a], [, b]) => b - a);
68
+
69
+ const toTruncate = nonZeroByDescendingVote.slice(maxSlashedValidators);
70
+ for (const [idx] of toTruncate) {
71
+ votes[idx] = 0;
72
+ }
73
+
74
+ if (toTruncate.length > 0) {
75
+ const truncated = toTruncate.map(([idx]) => {
76
+ const committeeIndex = Math.floor(idx / targetCommitteeSize);
77
+ const positionInCommittee = idx % targetCommitteeSize;
78
+ return {
79
+ validator: committees[committeeIndex][positionInCommittee].toString(),
80
+ epoch: epochsForCommittees[committeeIndex],
81
+ };
82
+ });
83
+ logger.warn(
84
+ `Truncated ${toTruncate.length} validator-epoch pairs to stay within limit of ${maxSlashedValidators}`,
85
+ { truncated },
86
+ );
87
+ }
88
+
50
89
  return votes;
51
90
  }
52
91
 
@@ -84,10 +84,18 @@ export type NodeSyncedChainHistoryStats = {
84
84
 
85
85
  export type ClientCircuitName =
86
86
  | 'private-kernel-init'
87
+ | 'private-kernel-init-2'
88
+ | 'private-kernel-init-3'
89
+ | 'private-kernel-init-4'
90
+ | 'private-kernel-init-5'
87
91
  | 'private-kernel-inner'
92
+ | 'private-kernel-inner-2'
93
+ | 'private-kernel-inner-3'
94
+ | 'private-kernel-inner-4'
95
+ | 'private-kernel-inner-5'
88
96
  | 'private-kernel-reset'
89
- | 'private-kernel-tail'
90
- | 'private-kernel-tail-to-public'
97
+ | 'private-kernel-reset-tail'
98
+ | 'private-kernel-reset-tail-to-public'
91
99
  | 'hiding-kernel-to-rollup'
92
100
  | 'hiding-kernel-to-public'
93
101
  | 'app-circuit';