@aztec/stdlib 0.0.1-commit.a89ec08 → 0.0.1-commit.aa0c64f

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 (1119) hide show
  1. package/dest/abi/abi.d.ts +146 -1050
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +34 -60
  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 +6 -2
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +13 -1
  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 +40 -15
  12. package/dest/abi/encoder.d.ts +1 -1
  13. package/dest/abi/encoder.d.ts.map +1 -1
  14. package/dest/abi/encoder.js +32 -6
  15. package/dest/abi/event_selector.d.ts +4 -7
  16. package/dest/abi/event_selector.d.ts.map +1 -1
  17. package/dest/abi/function_call.d.ts +7 -25
  18. package/dest/abi/function_call.d.ts.map +1 -1
  19. package/dest/abi/function_selector.d.ts +3 -6
  20. package/dest/abi/function_selector.d.ts.map +1 -1
  21. package/dest/abi/function_selector.js +1 -3
  22. package/dest/abi/note_selector.d.ts +4 -7
  23. package/dest/abi/note_selector.d.ts.map +1 -1
  24. package/dest/abi/note_selector.js +1 -3
  25. package/dest/abi/utils.d.ts +1 -1
  26. package/dest/abi/utils.d.ts.map +1 -1
  27. package/dest/abi/utils.js +1 -1
  28. package/dest/auth_witness/auth_witness.d.ts +2 -2
  29. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  30. package/dest/avm/avm.d.ts +1756 -10463
  31. package/dest/avm/avm.d.ts.map +1 -1
  32. package/dest/avm/avm.js +7 -4
  33. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  34. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  35. package/dest/avm/avm_accumulated_data.js +2 -2
  36. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  37. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  38. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  39. package/dest/avm/avm_proving_request.d.ts +674 -5467
  40. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  41. package/dest/avm/index.d.ts +1 -6
  42. package/dest/avm/index.d.ts.map +1 -1
  43. package/dest/avm/index.js +0 -5
  44. package/dest/avm/message_pack.js +12 -3
  45. package/dest/avm/public_data_write.d.ts +6 -12
  46. package/dest/avm/public_data_write.d.ts.map +1 -1
  47. package/dest/avm/revert_code.d.ts +1 -7
  48. package/dest/avm/revert_code.d.ts.map +1 -1
  49. package/dest/avm/revert_code.js +0 -3
  50. package/dest/aztec-address/index.d.ts +42 -12
  51. package/dest/aztec-address/index.d.ts.map +1 -1
  52. package/dest/aztec-address/index.js +40 -13
  53. package/dest/block/attestation_info.d.ts +3 -2
  54. package/dest/block/attestation_info.d.ts.map +1 -1
  55. package/dest/block/attestation_info.js +10 -5
  56. package/dest/block/block_data.d.ts +13 -38
  57. package/dest/block/block_data.d.ts.map +1 -1
  58. package/dest/block/block_data.js +2 -2
  59. package/dest/block/block_hash.d.ts +11 -10
  60. package/dest/block/block_hash.d.ts.map +1 -1
  61. package/dest/block/block_hash.js +10 -9
  62. package/dest/block/block_parameter.d.ts +37 -4
  63. package/dest/block/block_parameter.d.ts.map +1 -1
  64. package/dest/block/block_parameter.js +53 -2
  65. package/dest/block/in_block.d.ts +5 -24
  66. package/dest/block/in_block.d.ts.map +1 -1
  67. package/dest/block/index.d.ts +1 -2
  68. package/dest/block/index.d.ts.map +1 -1
  69. package/dest/block/index.js +0 -1
  70. package/dest/block/l2_block.d.ts +13 -41
  71. package/dest/block/l2_block.d.ts.map +1 -1
  72. package/dest/block/l2_block_info.d.ts +10 -29
  73. package/dest/block/l2_block_info.d.ts.map +1 -1
  74. package/dest/block/l2_block_info.js +6 -5
  75. package/dest/block/l2_block_source.d.ts +228 -354
  76. package/dest/block/l2_block_source.d.ts.map +1 -1
  77. package/dest/block/l2_block_source.js +81 -1
  78. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  79. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  80. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  81. package/dest/block/l2_block_stream/index.d.ts +2 -1
  82. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  83. package/dest/block/l2_block_stream/index.js +1 -0
  84. package/dest/block/l2_block_stream/interfaces.d.ts +81 -11
  85. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  86. package/dest/block/l2_block_stream/interfaces.js +25 -1
  87. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  88. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  89. package/dest/block/l2_block_stream/l2_block_stream.js +159 -135
  90. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  91. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  92. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  93. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  94. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  95. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  96. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  97. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  98. package/dest/block/proposal/attestations_and_signers.js +73 -25
  99. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  100. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  101. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  102. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  103. package/dest/block/test/l2_tips_store_test_suite.js +296 -36
  104. package/dest/block/validate_block_result.d.ts +16 -1
  105. package/dest/block/validate_block_result.d.ts.map +1 -1
  106. package/dest/block/validate_block_result.js +18 -3
  107. package/dest/checkpoint/checkpoint.d.ts +30 -96
  108. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  109. package/dest/checkpoint/checkpoint.js +11 -3
  110. package/dest/checkpoint/checkpoint_data.d.ts +68 -91
  111. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -1
  112. package/dest/checkpoint/checkpoint_data.js +12 -0
  113. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  114. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  115. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  116. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  117. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  118. package/dest/checkpoint/digest.d.ts +18 -0
  119. package/dest/checkpoint/digest.d.ts.map +1 -0
  120. package/dest/checkpoint/digest.js +12 -0
  121. package/dest/checkpoint/index.d.ts +5 -1
  122. package/dest/checkpoint/index.d.ts.map +1 -1
  123. package/dest/checkpoint/index.js +4 -0
  124. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  125. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  126. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  127. package/dest/checkpoint/published_checkpoint.d.ts +42 -194
  128. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  129. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  130. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  131. package/dest/checkpoint/simulation_overrides.js +98 -0
  132. package/dest/checkpoint/validate.d.ts +11 -3
  133. package/dest/checkpoint/validate.d.ts.map +1 -1
  134. package/dest/checkpoint/validate.js +9 -6
  135. package/dest/config/chain-config.d.ts +4 -9
  136. package/dest/config/chain-config.d.ts.map +1 -1
  137. package/dest/config/chain-config.js +13 -12
  138. package/dest/config/index.d.ts +2 -1
  139. package/dest/config/index.d.ts.map +1 -1
  140. package/dest/config/index.js +1 -0
  141. package/dest/config/network-consensus-config.d.ts +72 -0
  142. package/dest/config/network-consensus-config.d.ts.map +1 -0
  143. package/dest/config/network-consensus-config.js +223 -0
  144. package/dest/config/sequencer-config.d.ts +9 -3
  145. package/dest/config/sequencer-config.d.ts.map +1 -1
  146. package/dest/config/sequencer-config.js +39 -5
  147. package/dest/contract/complete_address.d.ts +3 -2
  148. package/dest/contract/complete_address.d.ts.map +1 -1
  149. package/dest/contract/complete_address.js +6 -2
  150. package/dest/contract/contract_address.d.ts +10 -9
  151. package/dest/contract/contract_address.d.ts.map +1 -1
  152. package/dest/contract/contract_address.js +6 -5
  153. package/dest/contract/contract_class.d.ts +1 -1
  154. package/dest/contract/contract_class.d.ts.map +1 -1
  155. package/dest/contract/contract_class.js +3 -2
  156. package/dest/contract/contract_class_id.d.ts +2 -2
  157. package/dest/contract/contract_class_id.js +2 -2
  158. package/dest/contract/contract_deployment_data.d.ts +15 -61
  159. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  160. package/dest/contract/contract_instance.d.ts +19 -3
  161. package/dest/contract/contract_instance.d.ts.map +1 -1
  162. package/dest/contract/contract_instance.js +55 -3
  163. package/dest/contract/index.d.ts +1 -4
  164. package/dest/contract/index.d.ts.map +1 -1
  165. package/dest/contract/index.js +0 -3
  166. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  167. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  168. package/dest/contract/interfaces/contract_class.js +1 -28
  169. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  170. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  171. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  172. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  173. package/dest/contract/interfaces/contract_instance.js +11 -4
  174. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  175. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  176. package/dest/contract/interfaces/node-info.d.ts +11 -1
  177. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  178. package/dest/contract/interfaces/node-info.js +7 -1
  179. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  180. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  181. package/dest/contract/partial_address.d.ts +9 -3
  182. package/dest/contract/partial_address.d.ts.map +1 -1
  183. package/dest/contract/partial_address.js +8 -2
  184. package/dest/contract/private_function.d.ts +1 -1
  185. package/dest/contract/private_function.d.ts.map +1 -1
  186. package/dest/contract/private_function.js +2 -4
  187. package/dest/database-version/database_version.d.ts +5 -11
  188. package/dest/database-version/database_version.d.ts.map +1 -1
  189. package/dest/database-version/version_manager.d.ts +22 -4
  190. package/dest/database-version/version_manager.d.ts.map +1 -1
  191. package/dest/database-version/version_manager.js +87 -6
  192. package/dest/deserialization/index.d.ts +35 -3
  193. package/dest/deserialization/index.d.ts.map +1 -1
  194. package/dest/deserialization/index.js +32 -1
  195. package/dest/epoch-helpers/index.d.ts +6 -22
  196. package/dest/epoch-helpers/index.d.ts.map +1 -1
  197. package/dest/epoch-helpers/index.js +3 -0
  198. package/dest/file-store/factory.d.ts +4 -3
  199. package/dest/file-store/factory.d.ts.map +1 -1
  200. package/dest/file-store/factory.js +9 -2
  201. package/dest/file-store/http.d.ts +9 -2
  202. package/dest/file-store/http.d.ts.map +1 -1
  203. package/dest/file-store/http.js +20 -9
  204. package/dest/file-store/index.d.ts +3 -1
  205. package/dest/file-store/index.d.ts.map +1 -1
  206. package/dest/file-store/index.js +1 -0
  207. package/dest/file-store/memory.d.ts +24 -0
  208. package/dest/file-store/memory.d.ts.map +1 -0
  209. package/dest/file-store/memory.js +80 -0
  210. package/dest/gas/fee_math.d.ts +49 -0
  211. package/dest/gas/fee_math.d.ts.map +1 -0
  212. package/dest/gas/fee_math.js +80 -0
  213. package/dest/gas/gas.d.ts +9 -14
  214. package/dest/gas/gas.d.ts.map +1 -1
  215. package/dest/gas/gas.js +6 -3
  216. package/dest/gas/gas_fees.d.ts +13 -14
  217. package/dest/gas/gas_fees.d.ts.map +1 -1
  218. package/dest/gas/gas_fees.js +17 -4
  219. package/dest/gas/gas_settings.d.ts +33 -96
  220. package/dest/gas/gas_settings.d.ts.map +1 -1
  221. package/dest/gas/gas_settings.js +15 -19
  222. package/dest/gas/index.d.ts +3 -1
  223. package/dest/gas/index.d.ts.map +1 -1
  224. package/dest/gas/index.js +2 -0
  225. package/dest/gas/tx_gas_limits.d.ts +72 -0
  226. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  227. package/dest/gas/tx_gas_limits.js +85 -0
  228. package/dest/ha-signing/config.d.ts +86 -0
  229. package/dest/ha-signing/config.d.ts.map +1 -0
  230. package/dest/ha-signing/config.js +94 -0
  231. package/dest/ha-signing/index.d.ts +4 -0
  232. package/dest/ha-signing/index.d.ts.map +1 -0
  233. package/dest/ha-signing/index.js +3 -0
  234. package/dest/ha-signing/local_config.d.ts +40 -0
  235. package/dest/ha-signing/local_config.d.ts.map +1 -0
  236. package/dest/ha-signing/local_config.js +30 -0
  237. package/dest/ha-signing/types.d.ts +90 -0
  238. package/dest/ha-signing/types.d.ts.map +1 -0
  239. package/dest/ha-signing/types.js +39 -0
  240. package/dest/hash/hash.d.ts +16 -2
  241. package/dest/hash/hash.d.ts.map +1 -1
  242. package/dest/hash/hash.js +34 -9
  243. package/dest/interfaces/allowed_element.d.ts +4 -28
  244. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  245. package/dest/interfaces/api_limit.d.ts +1 -1
  246. package/dest/interfaces/api_limit.js +1 -1
  247. package/dest/interfaces/archiver.d.ts +27 -32
  248. package/dest/interfaces/archiver.d.ts.map +1 -1
  249. package/dest/interfaces/archiver.js +216 -70
  250. package/dest/interfaces/aztec-node-admin.d.ts +74 -296
  251. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  252. package/dest/interfaces/aztec-node-admin.js +60 -17
  253. package/dest/interfaces/aztec-node-debug.d.ts +40 -2
  254. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -1
  255. package/dest/interfaces/aztec-node-debug.js +33 -2
  256. package/dest/interfaces/aztec-node.d.ts +160 -116
  257. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  258. package/dest/interfaces/aztec-node.js +350 -74
  259. package/dest/interfaces/block-builder.d.ts +11 -2
  260. package/dest/interfaces/block-builder.d.ts.map +1 -1
  261. package/dest/interfaces/block_response.d.ts +90 -0
  262. package/dest/interfaces/block_response.d.ts.map +1 -0
  263. package/dest/interfaces/block_response.js +30 -0
  264. package/dest/interfaces/chain_tips.d.ts +11 -0
  265. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  266. package/dest/interfaces/chain_tips.js +6 -0
  267. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  268. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  269. package/dest/interfaces/checkpoint_parameter.js +18 -0
  270. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  271. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  272. package/dest/interfaces/checkpoint_response.js +26 -0
  273. package/dest/interfaces/client.d.ts +8 -2
  274. package/dest/interfaces/client.d.ts.map +1 -1
  275. package/dest/interfaces/client.js +6 -1
  276. package/dest/interfaces/configs.d.ts +66 -134
  277. package/dest/interfaces/configs.d.ts.map +1 -1
  278. package/dest/interfaces/configs.js +14 -2
  279. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  280. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  281. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  282. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  283. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  284. package/dest/interfaces/l1_publish_info.js +26 -0
  285. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  286. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  287. package/dest/interfaces/l2_logs_source.js +5 -0
  288. package/dest/interfaces/merkle_tree_operations.d.ts +11 -5
  289. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  290. package/dest/interfaces/p2p-bootstrap.js +8 -2
  291. package/dest/interfaces/p2p.d.ts +46 -7
  292. package/dest/interfaces/p2p.d.ts.map +1 -1
  293. package/dest/interfaces/p2p.js +41 -6
  294. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  295. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  296. package/dest/interfaces/prover-agent.d.ts +5 -23
  297. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  298. package/dest/interfaces/prover-agent.js +4 -1
  299. package/dest/interfaces/prover-client.d.ts +7 -29
  300. package/dest/interfaces/prover-client.d.ts.map +1 -1
  301. package/dest/interfaces/prover-client.js +0 -3
  302. package/dest/interfaces/prover-node.d.ts +12 -8
  303. package/dest/interfaces/prover-node.d.ts.map +1 -1
  304. package/dest/interfaces/prover-node.js +37 -16
  305. package/dest/interfaces/proving-job-source.js +24 -4
  306. package/dest/interfaces/proving-job.d.ts +757 -5795
  307. package/dest/interfaces/proving-job.d.ts.map +1 -1
  308. package/dest/interfaces/proving-job.js +14 -5
  309. package/dest/interfaces/public_storage_override.d.ts +22 -0
  310. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  311. package/dest/interfaces/public_storage_override.js +7 -0
  312. package/dest/interfaces/server.d.ts +6 -3
  313. package/dest/interfaces/server.d.ts.map +1 -1
  314. package/dest/interfaces/server.js +5 -2
  315. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  316. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  317. package/dest/interfaces/slasher.d.ts +25 -65
  318. package/dest/interfaces/slasher.d.ts.map +1 -1
  319. package/dest/interfaces/slasher.js +8 -4
  320. package/dest/interfaces/tx_provider.d.ts +6 -1
  321. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  322. package/dest/interfaces/validator.d.ts +61 -230
  323. package/dest/interfaces/validator.d.ts.map +1 -1
  324. package/dest/interfaces/validator.js +10 -4
  325. package/dest/interfaces/world_state.d.ts +15 -2
  326. package/dest/interfaces/world_state.d.ts.map +1 -1
  327. package/dest/kernel/claimed_length_array.js +1 -1
  328. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  329. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  330. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  331. package/dest/kernel/hints/index.d.ts +1 -2
  332. package/dest/kernel/hints/index.d.ts.map +1 -1
  333. package/dest/kernel/hints/index.js +0 -1
  334. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  335. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  336. package/dest/kernel/hints/key_validation_request.js +20 -18
  337. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  338. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  339. package/dest/kernel/hints/read_request.js +1 -1
  340. package/dest/kernel/index.d.ts +10 -2
  341. package/dest/kernel/index.d.ts.map +1 -1
  342. package/dest/kernel/index.js +9 -1
  343. package/dest/kernel/log_hash.d.ts +6 -2
  344. package/dest/kernel/log_hash.d.ts.map +1 -1
  345. package/dest/kernel/log_hash.js +23 -11
  346. package/dest/kernel/note_hash.js +1 -1
  347. package/dest/kernel/nullifier.js +1 -1
  348. package/dest/kernel/padded_side_effects.js +1 -1
  349. package/dest/kernel/private_circuit_public_inputs.d.ts +14 -4
  350. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  351. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  352. package/dest/kernel/private_context_inputs.d.ts +4 -3
  353. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_context_inputs.js +7 -3
  355. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +8 -10
  356. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  357. package/dest/kernel/private_kernel_circuit_public_inputs.js +10 -7
  358. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  359. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  360. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  361. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  362. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  363. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  364. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  365. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  366. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  367. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  368. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  369. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  370. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  371. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  372. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  373. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  374. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  375. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  376. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  377. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  378. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  379. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  380. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  381. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  382. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  383. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  384. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  385. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  386. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  387. package/dest/kernel/private_kernel_prover_output.js +4 -1
  388. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  389. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  390. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  391. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  392. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  393. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  394. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  395. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  396. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +9 -6
  397. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  398. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +22 -7
  399. package/dest/kernel/private_log_data.d.ts +1 -1
  400. package/dest/kernel/private_log_data.d.ts.map +1 -1
  401. package/dest/kernel/private_log_data.js +1 -1
  402. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  403. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  404. package/dest/kernel/private_to_avm_accumulated_data.js +13 -7
  405. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  406. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  407. package/dest/kernel/private_to_public_accumulated_data.js +8 -5
  408. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +5 -4
  409. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  410. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -3
  411. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  412. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  413. package/dest/kernel/private_to_rollup_accumulated_data.js +7 -4
  414. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +5 -4
  415. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  416. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -3
  417. package/dest/kernel/public_call_request.d.ts +15 -30
  418. package/dest/kernel/public_call_request.d.ts.map +1 -1
  419. package/dest/kernel/public_call_request.js +16 -7
  420. package/dest/kernel/utils/index.d.ts +1 -2
  421. package/dest/kernel/utils/index.d.ts.map +1 -1
  422. package/dest/kernel/utils/index.js +0 -1
  423. package/dest/keys/derivation.d.ts +45 -6
  424. package/dest/keys/derivation.d.ts.map +1 -1
  425. package/dest/keys/derivation.js +55 -22
  426. package/dest/keys/public_key.d.ts +22 -3
  427. package/dest/keys/public_key.d.ts.map +1 -1
  428. package/dest/keys/public_key.js +20 -1
  429. package/dest/keys/public_keys.d.ts +55 -82
  430. package/dest/keys/public_keys.d.ts.map +1 -1
  431. package/dest/keys/public_keys.js +102 -74
  432. package/dest/kv-store/config.d.ts +14 -0
  433. package/dest/kv-store/config.d.ts.map +1 -0
  434. package/dest/kv-store/config.js +21 -0
  435. package/dest/kv-store/index.d.ts +2 -0
  436. package/dest/kv-store/index.d.ts.map +1 -0
  437. package/dest/kv-store/index.js +1 -0
  438. package/dest/l1-contracts/index.d.ts +2 -2
  439. package/dest/l1-contracts/index.d.ts.map +1 -1
  440. package/dest/l1-contracts/index.js +1 -1
  441. package/dest/logs/app_tagging_secret.d.ts +69 -0
  442. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  443. package/dest/logs/app_tagging_secret.js +116 -0
  444. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  445. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  446. package/dest/logs/app_tagging_secret_kind.js +17 -0
  447. package/dest/logs/contract_class_log.d.ts +16 -35
  448. package/dest/logs/contract_class_log.d.ts.map +1 -1
  449. package/dest/logs/contract_class_log.js +11 -13
  450. package/dest/logs/index.d.ts +7 -7
  451. package/dest/logs/index.d.ts.map +1 -1
  452. package/dest/logs/index.js +6 -6
  453. package/dest/logs/log_cursor.d.ts +51 -0
  454. package/dest/logs/log_cursor.d.ts.map +1 -0
  455. package/dest/logs/log_cursor.js +82 -0
  456. package/dest/logs/log_result.d.ts +54 -0
  457. package/dest/logs/log_result.d.ts.map +1 -0
  458. package/dest/logs/log_result.js +56 -0
  459. package/dest/logs/logs_query.d.ts +82 -0
  460. package/dest/logs/logs_query.d.ts.map +1 -0
  461. package/dest/logs/logs_query.js +50 -0
  462. package/dest/logs/message_context.d.ts +4 -13
  463. package/dest/logs/message_context.d.ts.map +1 -1
  464. package/dest/logs/message_context.js +1 -62
  465. package/dest/logs/pending_tagged_log.d.ts +6 -8
  466. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  467. package/dest/logs/pending_tagged_log.js +1 -31
  468. package/dest/logs/pre_tag.d.ts +11 -24
  469. package/dest/logs/pre_tag.d.ts.map +1 -1
  470. package/dest/logs/pre_tag.js +2 -2
  471. package/dest/logs/private_log.d.ts +7 -12
  472. package/dest/logs/private_log.d.ts.map +1 -1
  473. package/dest/logs/private_log.js +7 -4
  474. package/dest/logs/public_log.d.ts +1 -1
  475. package/dest/logs/public_log.d.ts.map +1 -1
  476. package/dest/logs/public_log.js +1 -7
  477. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  478. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  479. package/dest/logs/query_all_logs_by_tags.js +64 -0
  480. package/dest/logs/shared_secret_derivation.d.ts +29 -6
  481. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  482. package/dest/logs/shared_secret_derivation.js +44 -11
  483. package/dest/logs/siloed_tag.d.ts +5 -7
  484. package/dest/logs/siloed_tag.d.ts.map +1 -1
  485. package/dest/logs/siloed_tag.js +7 -1
  486. package/dest/logs/tag.d.ts +5 -6
  487. package/dest/logs/tag.d.ts.map +1 -1
  488. package/dest/logs/tag.js +4 -0
  489. package/dest/logs/tagging_index_range.d.ts +13 -31
  490. package/dest/logs/tagging_index_range.d.ts.map +1 -1
  491. package/dest/logs/tagging_index_range.js +2 -2
  492. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  493. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  494. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  495. package/dest/messaging/index.d.ts +2 -1
  496. package/dest/messaging/index.d.ts.map +1 -1
  497. package/dest/messaging/index.js +1 -0
  498. package/dest/messaging/l1_to_l2_message.d.ts +23 -2
  499. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  500. package/dest/messaging/l1_to_l2_message.js +36 -11
  501. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  502. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  503. package/dest/messaging/l2_to_l1_membership.d.ts +43 -6
  504. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  505. package/dest/messaging/l2_to_l1_membership.js +72 -12
  506. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  507. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  508. package/dest/messaging/l2_to_l1_message.js +21 -12
  509. package/dest/noir/index.d.ts +5 -3
  510. package/dest/noir/index.d.ts.map +1 -1
  511. package/dest/note/note.d.ts +2 -2
  512. package/dest/note/note.d.ts.map +1 -1
  513. package/dest/p2p/attestation_utils.d.ts +1 -1
  514. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  515. package/dest/p2p/attestation_utils.js +8 -1
  516. package/dest/p2p/block_proposal.d.ts +32 -15
  517. package/dest/p2p/block_proposal.d.ts.map +1 -1
  518. package/dest/p2p/block_proposal.js +58 -40
  519. package/dest/p2p/checkpoint_attestation.d.ts +24 -9
  520. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  521. package/dest/p2p/checkpoint_attestation.js +33 -24
  522. package/dest/p2p/checkpoint_proposal.d.ts +37 -17
  523. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  524. package/dest/p2p/checkpoint_proposal.js +60 -52
  525. package/dest/p2p/consensus_payload.d.ts +27 -20
  526. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  527. package/dest/p2p/consensus_payload.js +38 -19
  528. package/dest/p2p/gossipable.d.ts +4 -4
  529. package/dest/p2p/gossipable.d.ts.map +1 -1
  530. package/dest/p2p/index.d.ts +1 -2
  531. package/dest/p2p/index.d.ts.map +1 -1
  532. package/dest/p2p/index.js +0 -1
  533. package/dest/p2p/signature_utils.d.ts +35 -17
  534. package/dest/p2p/signature_utils.d.ts.map +1 -1
  535. package/dest/p2p/signature_utils.js +125 -20
  536. package/dest/p2p/signed_txs.d.ts +15 -13
  537. package/dest/p2p/signed_txs.d.ts.map +1 -1
  538. package/dest/p2p/signed_txs.js +26 -24
  539. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  540. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  541. package/dest/parity/parity_base_private_inputs.js +7 -5
  542. package/dest/parity/parity_public_inputs.d.ts +8 -4
  543. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  544. package/dest/parity/parity_public_inputs.js +6 -3
  545. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  546. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  547. package/dest/proofs/chonk_proof.d.ts +57 -7
  548. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  549. package/dest/proofs/chonk_proof.js +111 -20
  550. package/dest/proofs/recursive_proof.d.ts +2 -2
  551. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  552. package/dest/rollup/avm_proof_data.d.ts +3 -3
  553. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  554. package/dest/rollup/base_rollup_hints.js +2 -2
  555. package/dest/rollup/block_headers_hash.d.ts +1 -1
  556. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  557. package/dest/rollup/block_headers_hash.js +8 -2
  558. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  559. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  560. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  561. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  562. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  563. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  564. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  565. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  566. package/dest/rollup/checkpoint_header.d.ts +8 -3
  567. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  568. package/dest/rollup/checkpoint_header.js +20 -10
  569. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  570. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  571. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +10 -3
  572. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  573. package/dest/rollup/checkpoint_rollup_public_inputs.js +10 -1
  574. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -5
  575. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  576. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  577. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  578. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  579. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  580. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  581. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  582. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  583. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  584. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  585. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  586. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  587. package/dest/rollup/root_rollup_public_inputs.d.ts +2 -2
  588. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  589. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  590. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  591. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  592. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  593. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  594. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  595. package/dest/schemas/schemas.d.ts +32 -78
  596. package/dest/schemas/schemas.d.ts.map +1 -1
  597. package/dest/schemas/schemas.js +2 -2
  598. package/dest/slashing/helpers.d.ts +2 -2
  599. package/dest/slashing/helpers.d.ts.map +1 -1
  600. package/dest/slashing/helpers.js +10 -7
  601. package/dest/slashing/index.d.ts +2 -3
  602. package/dest/slashing/index.d.ts.map +1 -1
  603. package/dest/slashing/index.js +1 -2
  604. package/dest/slashing/serialization.d.ts +2 -6
  605. package/dest/slashing/serialization.d.ts.map +1 -1
  606. package/dest/slashing/serialization.js +0 -60
  607. package/dest/slashing/types.d.ts +18 -112
  608. package/dest/slashing/types.d.ts.map +1 -1
  609. package/dest/slashing/types.js +16 -24
  610. package/dest/slashing/{tally.d.ts → votes.d.ts} +1 -1
  611. package/dest/slashing/{tally.d.ts.map → votes.d.ts.map} +1 -1
  612. package/dest/slashing/{tally.js → votes.js} +1 -1
  613. package/dest/snapshots/types.d.ts +15 -78
  614. package/dest/snapshots/types.d.ts.map +1 -1
  615. package/dest/stats/stats.d.ts +2 -2
  616. package/dest/stats/stats.d.ts.map +1 -1
  617. package/dest/tests/factories.d.ts +25 -58
  618. package/dest/tests/factories.d.ts.map +1 -1
  619. package/dest/tests/factories.js +80 -115
  620. package/dest/tests/mocks.d.ts +8 -5
  621. package/dest/tests/mocks.d.ts.map +1 -1
  622. package/dest/tests/mocks.js +43 -54
  623. package/dest/timetable/budgets.d.ts +57 -0
  624. package/dest/timetable/budgets.d.ts.map +1 -0
  625. package/dest/timetable/budgets.js +56 -0
  626. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  627. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  628. package/dest/timetable/build_proposer_timetable.js +17 -0
  629. package/dest/timetable/consensus_timetable.d.ts +70 -0
  630. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  631. package/dest/timetable/consensus_timetable.js +89 -0
  632. package/dest/timetable/index.d.ts +5 -37
  633. package/dest/timetable/index.d.ts.map +1 -1
  634. package/dest/timetable/index.js +4 -39
  635. package/dest/timetable/proposer_timetable.d.ts +106 -0
  636. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  637. package/dest/timetable/proposer_timetable.js +132 -0
  638. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  639. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  640. package/dest/trees/append_only_tree_snapshot.js +6 -3
  641. package/dest/trees/nullifier_leaf.d.ts +19 -42
  642. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  643. package/dest/trees/nullifier_leaf.js +3 -0
  644. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  645. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  646. package/dest/trees/nullifier_membership_witness.js +0 -21
  647. package/dest/trees/public_data_leaf.d.ts +21 -53
  648. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  649. package/dest/trees/public_data_witness.d.ts +19 -71
  650. package/dest/trees/public_data_witness.d.ts.map +1 -1
  651. package/dest/trees/public_data_witness.js +0 -27
  652. package/dest/tx/block_header.d.ts +5 -4
  653. package/dest/tx/block_header.d.ts.map +1 -1
  654. package/dest/tx/block_header.js +7 -4
  655. package/dest/tx/call_context.d.ts +4 -14
  656. package/dest/tx/call_context.d.ts.map +1 -1
  657. package/dest/tx/capsule.d.ts +2 -2
  658. package/dest/tx/capsule.d.ts.map +1 -1
  659. package/dest/tx/execution_payload.d.ts +1 -1
  660. package/dest/tx/execution_payload.d.ts.map +1 -1
  661. package/dest/tx/execution_payload.js +1 -1
  662. package/dest/tx/fee_provider.d.ts +10 -0
  663. package/dest/tx/fee_provider.d.ts.map +1 -0
  664. package/dest/tx/fee_provider.js +1 -0
  665. package/dest/tx/function_data.d.ts +4 -10
  666. package/dest/tx/function_data.d.ts.map +1 -1
  667. package/dest/tx/global_variable_builder.d.ts +4 -15
  668. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  669. package/dest/tx/global_variables.d.ts +16 -49
  670. package/dest/tx/global_variables.d.ts.map +1 -1
  671. package/dest/tx/global_variables.js +10 -14
  672. package/dest/tx/hashed_values.d.ts +4 -3
  673. package/dest/tx/hashed_values.d.ts.map +1 -1
  674. package/dest/tx/hashed_values.js +6 -3
  675. package/dest/tx/in_tx.d.ts +5 -17
  676. package/dest/tx/in_tx.d.ts.map +1 -1
  677. package/dest/tx/index.d.ts +2 -2
  678. package/dest/tx/index.d.ts.map +1 -1
  679. package/dest/tx/index.js +1 -1
  680. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  681. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  682. package/dest/tx/indexed_tx_effect.js +9 -6
  683. package/dest/tx/partial_state_reference.d.ts +22 -65
  684. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  685. package/dest/tx/partial_state_reference.js +6 -3
  686. package/dest/tx/private_execution_result.d.ts +6 -16
  687. package/dest/tx/private_execution_result.d.ts.map +1 -1
  688. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  689. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  690. package/dest/tx/private_tx_constant_data.js +13 -4
  691. package/dest/tx/profiling.d.ts +54 -352
  692. package/dest/tx/profiling.d.ts.map +1 -1
  693. package/dest/tx/profiling.js +6 -4
  694. package/dest/tx/protocol_contracts.d.ts +5 -9
  695. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  696. package/dest/tx/protocol_contracts.js +2 -2
  697. package/dest/tx/proven_tx.d.ts +30 -74
  698. package/dest/tx/proven_tx.d.ts.map +1 -1
  699. package/dest/tx/proven_tx.js +6 -0
  700. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  701. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  702. package/dest/tx/public_call_request_with_calldata.js +6 -3
  703. package/dest/tx/simulated_tx.d.ts +71 -1129
  704. package/dest/tx/simulated_tx.d.ts.map +1 -1
  705. package/dest/tx/simulated_tx.js +12 -10
  706. package/dest/tx/state_reference.d.ts +30 -117
  707. package/dest/tx/state_reference.d.ts.map +1 -1
  708. package/dest/tx/state_reference.js +6 -4
  709. package/dest/tx/tree_snapshots.d.ts +27 -84
  710. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  711. package/dest/tx/tree_snapshots.js +6 -4
  712. package/dest/tx/tx.d.ts +22 -13
  713. package/dest/tx/tx.d.ts.map +1 -1
  714. package/dest/tx/tx.js +44 -22
  715. package/dest/tx/tx_constant_data.d.ts +4 -3
  716. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  717. package/dest/tx/tx_constant_data.js +6 -3
  718. package/dest/tx/tx_context.d.ts +32 -131
  719. package/dest/tx/tx_context.d.ts.map +1 -1
  720. package/dest/tx/tx_context.js +6 -6
  721. package/dest/tx/tx_hash.d.ts +6 -4
  722. package/dest/tx/tx_hash.d.ts.map +1 -1
  723. package/dest/tx/tx_hash.js +13 -5
  724. package/dest/tx/tx_receipt.d.ts +144 -67
  725. package/dest/tx/tx_receipt.d.ts.map +1 -1
  726. package/dest/tx/tx_receipt.js +141 -51
  727. package/dest/tx/validator/error_texts.d.ts +2 -2
  728. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  729. package/dest/tx/validator/error_texts.js +1 -1
  730. package/dest/tx/validator/tx_validator.d.ts +5 -27
  731. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  732. package/dest/tx/validator/tx_validator.js +0 -4
  733. package/dest/types/shared.d.ts +4 -12
  734. package/dest/types/shared.d.ts.map +1 -1
  735. package/dest/types/shared.js +6 -12
  736. package/dest/update-checker/dev_version.d.ts +3 -0
  737. package/dest/update-checker/dev_version.d.ts.map +1 -0
  738. package/dest/update-checker/dev_version.js +1 -0
  739. package/dest/update-checker/index.d.ts +2 -1
  740. package/dest/update-checker/index.d.ts.map +1 -1
  741. package/dest/update-checker/index.js +1 -0
  742. package/dest/update-checker/package_version.d.ts +6 -3
  743. package/dest/update-checker/package_version.d.ts.map +1 -1
  744. package/dest/update-checker/package_version.js +8 -19
  745. package/dest/validators/schemas.d.ts +147 -614
  746. package/dest/validators/schemas.d.ts.map +1 -1
  747. package/dest/validators/schemas.js +6 -4
  748. package/dest/validators/types.d.ts +20 -3
  749. package/dest/validators/types.d.ts.map +1 -1
  750. package/dest/versioning/versioning.js +1 -1
  751. package/dest/vks/verification_key.d.ts +4 -139
  752. package/dest/vks/verification_key.d.ts.map +1 -1
  753. package/dest/vks/verification_key.js +5 -126
  754. package/dest/vks/vk_data.js +1 -1
  755. package/dest/world-state/genesis_data.d.ts +21 -0
  756. package/dest/world-state/genesis_data.d.ts.map +1 -0
  757. package/dest/world-state/genesis_data.js +8 -0
  758. package/dest/world-state/index.d.ts +2 -1
  759. package/dest/world-state/index.d.ts.map +1 -1
  760. package/dest/world-state/index.js +1 -0
  761. package/dest/world-state/world_state_revision.d.ts +11 -39
  762. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  763. package/dest/world-state/world_state_revision.js +7 -21
  764. package/package.json +15 -13
  765. package/src/abi/abi.ts +75 -86
  766. package/src/abi/authorization_selector.ts +2 -8
  767. package/src/abi/buffer.ts +13 -1
  768. package/src/abi/contract_artifact.ts +44 -15
  769. package/src/abi/encoder.ts +42 -6
  770. package/src/abi/event_selector.ts +2 -8
  771. package/src/abi/function_selector.ts +3 -12
  772. package/src/abi/note_selector.ts +3 -12
  773. package/src/abi/utils.ts +6 -4
  774. package/src/avm/avm.ts +6 -1
  775. package/src/avm/avm_accumulated_data.ts +6 -6
  776. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  777. package/src/avm/index.ts +0 -5
  778. package/src/avm/message_pack.ts +12 -3
  779. package/src/avm/revert_code.ts +0 -6
  780. package/src/aztec-address/index.ts +50 -17
  781. package/src/block/attestation_info.ts +16 -11
  782. package/src/block/block_data.ts +3 -4
  783. package/src/block/block_hash.ts +21 -14
  784. package/src/block/block_parameter.ts +72 -4
  785. package/src/block/index.ts +0 -1
  786. package/src/block/l2_block_info.ts +8 -6
  787. package/src/block/l2_block_source.ts +258 -144
  788. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  789. package/src/block/l2_block_stream/index.ts +1 -0
  790. package/src/block/l2_block_stream/interfaces.ts +96 -10
  791. package/src/block/l2_block_stream/l2_block_stream.ts +229 -177
  792. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  793. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  794. package/src/block/proposal/attestations_and_signers.ts +85 -24
  795. package/src/block/test/l2_tips_store_test_suite.ts +271 -22
  796. package/src/block/validate_block_result.ts +48 -2
  797. package/src/checkpoint/checkpoint.ts +13 -3
  798. package/src/checkpoint/checkpoint_data.ts +44 -4
  799. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  800. package/src/checkpoint/digest.ts +28 -0
  801. package/src/checkpoint/index.ts +4 -0
  802. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  803. package/src/checkpoint/simulation_overrides.ts +171 -0
  804. package/src/checkpoint/validate.ts +16 -6
  805. package/src/config/chain-config.ts +13 -16
  806. package/src/config/index.ts +1 -0
  807. package/src/config/network-consensus-config.ts +291 -0
  808. package/src/config/sequencer-config.ts +71 -9
  809. package/src/contract/complete_address.ts +7 -3
  810. package/src/contract/contract_address.ts +11 -10
  811. package/src/contract/contract_class.ts +3 -2
  812. package/src/contract/contract_class_id.ts +2 -2
  813. package/src/contract/contract_instance.ts +73 -3
  814. package/src/contract/index.ts +0 -3
  815. package/src/contract/interfaces/contract_class.ts +2 -82
  816. package/src/contract/interfaces/contract_data_source.ts +2 -4
  817. package/src/contract/interfaces/contract_instance.ts +32 -10
  818. package/src/contract/interfaces/node-info.ts +11 -0
  819. package/src/contract/partial_address.ts +8 -2
  820. package/src/contract/private_function.ts +3 -1
  821. package/src/database-version/version_manager.ts +113 -6
  822. package/src/deserialization/index.ts +35 -2
  823. package/src/epoch-helpers/index.ts +5 -0
  824. package/src/file-store/factory.ts +20 -4
  825. package/src/file-store/http.ts +29 -10
  826. package/src/file-store/index.ts +2 -0
  827. package/src/file-store/memory.ts +94 -0
  828. package/src/gas/README.md +230 -35
  829. package/src/gas/fee_math.ts +120 -0
  830. package/src/gas/gas.ts +8 -3
  831. package/src/gas/gas_fees.ts +26 -13
  832. package/src/gas/gas_settings.ts +19 -24
  833. package/src/gas/index.ts +2 -0
  834. package/src/gas/tx_gas_limits.ts +123 -0
  835. package/src/ha-signing/config.ts +170 -0
  836. package/src/ha-signing/index.ts +29 -0
  837. package/src/ha-signing/local_config.ts +65 -0
  838. package/src/ha-signing/types.ts +126 -0
  839. package/src/hash/hash.ts +29 -10
  840. package/src/interfaces/api_limit.ts +1 -1
  841. package/src/interfaces/archiver.ts +96 -93
  842. package/src/interfaces/aztec-node-admin.ts +36 -21
  843. package/src/interfaces/aztec-node-debug.ts +55 -3
  844. package/src/interfaces/aztec-node.ts +398 -271
  845. package/src/interfaces/block-builder.ts +10 -1
  846. package/src/interfaces/block_response.ts +92 -0
  847. package/src/interfaces/chain_tips.ts +16 -0
  848. package/src/interfaces/checkpoint_parameter.ts +20 -0
  849. package/src/interfaces/checkpoint_response.ts +84 -0
  850. package/src/interfaces/client.ts +7 -1
  851. package/src/interfaces/configs.ts +67 -7
  852. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  853. package/src/interfaces/l1_publish_info.ts +40 -0
  854. package/src/interfaces/l2_logs_source.ts +13 -39
  855. package/src/interfaces/merkle_tree_operations.ts +11 -4
  856. package/src/interfaces/p2p-bootstrap.ts +2 -2
  857. package/src/interfaces/p2p.ts +59 -19
  858. package/src/interfaces/private_kernel_prover.ts +192 -13
  859. package/src/interfaces/prover-agent.ts +1 -1
  860. package/src/interfaces/prover-client.ts +3 -8
  861. package/src/interfaces/prover-node.ts +36 -21
  862. package/src/interfaces/proving-job-source.ts +4 -4
  863. package/src/interfaces/proving-job.ts +18 -6
  864. package/src/interfaces/public_storage_override.ts +26 -0
  865. package/src/interfaces/server.ts +5 -2
  866. package/src/interfaces/server_circuit_prover.ts +2 -2
  867. package/src/interfaces/slasher.ts +17 -10
  868. package/src/interfaces/tx_provider.ts +6 -0
  869. package/src/interfaces/validator.ts +81 -45
  870. package/src/interfaces/world_state.ts +15 -1
  871. package/src/kernel/claimed_length_array.ts +2 -2
  872. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  873. package/src/kernel/hints/index.ts +0 -1
  874. package/src/kernel/hints/key_validation_request.ts +18 -16
  875. package/src/kernel/hints/private_kernel_reset_hints.ts +2 -5
  876. package/src/kernel/hints/read_request.ts +1 -1
  877. package/src/kernel/hints/read_request_hints.ts +3 -3
  878. package/src/kernel/index.ts +9 -1
  879. package/src/kernel/log_hash.ts +36 -13
  880. package/src/kernel/note_hash.ts +1 -1
  881. package/src/kernel/nullifier.ts +1 -1
  882. package/src/kernel/padded_side_effects.ts +3 -3
  883. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  884. package/src/kernel/private_context_inputs.ts +10 -3
  885. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -7
  886. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  887. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  888. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  889. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  890. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  891. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  892. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  893. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  894. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  895. package/src/kernel/private_kernel_prover_output.ts +4 -0
  896. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  897. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  898. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  899. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +29 -14
  900. package/src/kernel/private_log_data.ts +4 -1
  901. package/src/kernel/private_to_avm_accumulated_data.ts +20 -9
  902. package/src/kernel/private_to_public_accumulated_data.ts +19 -13
  903. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +10 -4
  904. package/src/kernel/private_to_rollup_accumulated_data.ts +13 -8
  905. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +9 -9
  906. package/src/kernel/public_call_request.ts +22 -7
  907. package/src/kernel/utils/index.ts +0 -1
  908. package/src/keys/derivation.ts +79 -22
  909. package/src/keys/public_key.ts +26 -2
  910. package/src/keys/public_keys.ts +124 -110
  911. package/src/kv-store/config.ts +29 -0
  912. package/src/kv-store/index.ts +1 -0
  913. package/src/l1-contracts/index.ts +1 -1
  914. package/src/logs/app_tagging_secret.ts +160 -0
  915. package/src/logs/app_tagging_secret_kind.ts +21 -0
  916. package/src/logs/contract_class_log.ts +15 -14
  917. package/src/logs/index.ts +6 -6
  918. package/src/logs/log_cursor.ts +110 -0
  919. package/src/logs/log_result.ts +104 -0
  920. package/src/logs/logs_query.ts +138 -0
  921. package/src/logs/message_context.ts +6 -60
  922. package/src/logs/pending_tagged_log.ts +6 -33
  923. package/src/logs/pre_tag.ts +3 -6
  924. package/src/logs/private_log.ts +10 -4
  925. package/src/logs/public_log.ts +1 -11
  926. package/src/logs/query_all_logs_by_tags.ts +98 -0
  927. package/src/logs/shared_secret_derivation.ts +47 -14
  928. package/src/logs/siloed_tag.ts +14 -10
  929. package/src/logs/tag.ts +8 -8
  930. package/src/logs/tagging_index_range.ts +4 -10
  931. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  932. package/src/messaging/index.ts +1 -0
  933. package/src/messaging/l1_to_l2_message.ts +51 -13
  934. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  935. package/src/messaging/l2_to_l1_membership.ts +108 -19
  936. package/src/messaging/l2_to_l1_message.ts +29 -9
  937. package/src/noir/index.ts +4 -1
  938. package/src/p2p/attestation_utils.ts +8 -1
  939. package/src/p2p/block_proposal.ts +112 -37
  940. package/src/p2p/checkpoint_attestation.ts +38 -30
  941. package/src/p2p/checkpoint_proposal.ts +129 -74
  942. package/src/p2p/consensus_payload.ts +59 -28
  943. package/src/p2p/gossipable.ts +4 -4
  944. package/src/p2p/index.ts +0 -1
  945. package/src/p2p/signature_utils.ts +117 -23
  946. package/src/p2p/signed_txs.ts +46 -28
  947. package/src/parity/parity_base_private_inputs.ts +10 -4
  948. package/src/parity/parity_public_inputs.ts +9 -2
  949. package/src/proofs/chonk_proof.ts +131 -19
  950. package/src/rollup/avm_proof_data.ts +2 -2
  951. package/src/rollup/base_rollup_hints.ts +2 -2
  952. package/src/rollup/block_headers_hash.ts +11 -2
  953. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  954. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  955. package/src/rollup/checkpoint_header.ts +16 -2
  956. package/src/rollup/checkpoint_rollup_public_inputs.ts +12 -2
  957. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  958. package/src/rollup/root_rollup_public_inputs.ts +2 -2
  959. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  960. package/src/schemas/schemas.ts +6 -1
  961. package/src/slashing/helpers.ts +13 -9
  962. package/src/slashing/index.ts +1 -2
  963. package/src/slashing/serialization.ts +1 -81
  964. package/src/slashing/types.ts +24 -49
  965. package/src/slashing/{tally.ts → votes.ts} +1 -1
  966. package/src/stats/stats.ts +10 -2
  967. package/src/tests/factories.ts +111 -157
  968. package/src/tests/mocks.ts +71 -70
  969. package/src/timetable/README.md +609 -0
  970. package/src/timetable/budgets.ts +87 -0
  971. package/src/timetable/build_proposer_timetable.ts +42 -0
  972. package/src/timetable/consensus_timetable.ts +126 -0
  973. package/src/timetable/index.ts +4 -66
  974. package/src/timetable/proposer_timetable.ts +190 -0
  975. package/src/timetable/timetable-example.svg +108 -0
  976. package/src/trees/append_only_tree_snapshot.ts +8 -3
  977. package/src/trees/nullifier_leaf.ts +4 -0
  978. package/src/trees/nullifier_membership_witness.ts +0 -21
  979. package/src/trees/public_data_witness.ts +0 -31
  980. package/src/tx/block_header.ts +10 -5
  981. package/src/tx/execution_payload.ts +2 -1
  982. package/src/tx/fee_provider.ts +10 -0
  983. package/src/tx/global_variable_builder.ts +3 -20
  984. package/src/tx/global_variables.ts +12 -20
  985. package/src/tx/hashed_values.ts +8 -3
  986. package/src/tx/index.ts +1 -1
  987. package/src/tx/indexed_tx_effect.ts +18 -6
  988. package/src/tx/partial_state_reference.ts +8 -3
  989. package/src/tx/private_tx_constant_data.ts +25 -2
  990. package/src/tx/profiling.ts +6 -4
  991. package/src/tx/protocol_contracts.ts +2 -2
  992. package/src/tx/proven_tx.ts +6 -0
  993. package/src/tx/public_call_request_with_calldata.ts +8 -3
  994. package/src/tx/simulated_tx.ts +18 -21
  995. package/src/tx/state_reference.ts +9 -4
  996. package/src/tx/tree_snapshots.ts +9 -4
  997. package/src/tx/tx.ts +60 -24
  998. package/src/tx/tx_constant_data.ts +8 -3
  999. package/src/tx/tx_context.ts +8 -3
  1000. package/src/tx/tx_hash.ts +20 -5
  1001. package/src/tx/tx_receipt.ts +263 -80
  1002. package/src/tx/validator/error_texts.ts +2 -1
  1003. package/src/tx/validator/tx_validator.ts +1 -5
  1004. package/src/types/shared.ts +8 -13
  1005. package/src/update-checker/dev_version.ts +2 -0
  1006. package/src/update-checker/index.ts +1 -0
  1007. package/src/update-checker/package_version.ts +10 -23
  1008. package/src/validators/schemas.ts +6 -4
  1009. package/src/validators/types.ts +21 -2
  1010. package/src/versioning/versioning.ts +1 -1
  1011. package/src/vks/verification_key.ts +5 -184
  1012. package/src/vks/vk_data.ts +1 -1
  1013. package/src/world-state/genesis_data.ts +37 -0
  1014. package/src/world-state/index.ts +1 -0
  1015. package/src/world-state/world_state_revision.ts +9 -34
  1016. package/dest/abi/mocked_keys.d.ts +0 -2
  1017. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1018. package/dest/abi/mocked_keys.js +0 -1
  1019. package/dest/avm/contract_storage_read.d.ts +0 -58
  1020. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1021. package/dest/avm/contract_storage_read.js +0 -65
  1022. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1023. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1024. package/dest/avm/contract_storage_update_request.js +0 -80
  1025. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1026. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1027. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1028. package/dest/avm/public_data_update_request.d.ts +0 -62
  1029. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1030. package/dest/avm/public_data_update_request.js +0 -67
  1031. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1032. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1033. package/dest/avm/public_inner_call_request.js +0 -74
  1034. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1035. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1036. package/dest/block/checkpointed_l2_block.js +0 -46
  1037. package/dest/contract/deployment_info.d.ts +0 -24
  1038. package/dest/contract/deployment_info.d.ts.map +0 -1
  1039. package/dest/contract/deployment_info.js +0 -3
  1040. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1041. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1042. package/dest/contract/private_function_membership_proof.js +0 -124
  1043. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1044. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1045. package/dest/contract/utility_function_membership_proof.js +0 -87
  1046. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1047. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1048. package/dest/interfaces/epoch-prover.js +0 -1
  1049. package/dest/interfaces/get_logs_response.d.ts +0 -97
  1050. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1051. package/dest/interfaces/get_logs_response.js +0 -12
  1052. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1053. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1054. package/dest/interfaces/prover-coordination.js +0 -1
  1055. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1056. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1057. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1058. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1059. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1060. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1061. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1062. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1063. package/dest/kernel/utils/optional_number.js +0 -42
  1064. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1065. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1066. package/dest/l1-contracts/slash_factory.js +0 -158
  1067. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1068. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1069. package/dest/logs/extended_contract_class_log.js +0 -67
  1070. package/dest/logs/extended_directional_app_tagging_secret.d.ts +0 -47
  1071. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +0 -1
  1072. package/dest/logs/extended_directional_app_tagging_secret.js +0 -79
  1073. package/dest/logs/extended_public_log.d.ts +0 -106
  1074. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1075. package/dest/logs/extended_public_log.js +0 -73
  1076. package/dest/logs/log_filter.d.ts +0 -25
  1077. package/dest/logs/log_filter.d.ts.map +0 -1
  1078. package/dest/logs/log_filter.js +0 -12
  1079. package/dest/logs/log_id.d.ts +0 -85
  1080. package/dest/logs/log_id.d.ts.map +0 -1
  1081. package/dest/logs/log_id.js +0 -94
  1082. package/dest/logs/tx_scoped_l2_log.d.ts +0 -51
  1083. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1084. package/dest/logs/tx_scoped_l2_log.js +0 -77
  1085. package/dest/p2p/interface.d.ts +0 -5
  1086. package/dest/p2p/interface.d.ts.map +0 -1
  1087. package/dest/p2p/interface.js +0 -1
  1088. package/dest/slashing/empire.d.ts +0 -31
  1089. package/dest/slashing/empire.d.ts.map +0 -1
  1090. package/dest/slashing/empire.js +0 -87
  1091. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1092. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1093. package/dest/tx/validator/empty_validator.js +0 -7
  1094. package/src/abi/mocked_keys.ts +0 -2
  1095. package/src/avm/contract_storage_read.ts +0 -77
  1096. package/src/avm/contract_storage_update_request.ts +0 -93
  1097. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1098. package/src/avm/public_data_update_request.ts +0 -106
  1099. package/src/avm/public_inner_call_request.ts +0 -85
  1100. package/src/block/checkpointed_l2_block.ts +0 -70
  1101. package/src/contract/deployment_info.ts +0 -25
  1102. package/src/contract/private_function_membership_proof.ts +0 -167
  1103. package/src/contract/utility_function_membership_proof.ts +0 -118
  1104. package/src/interfaces/epoch-prover.ts +0 -72
  1105. package/src/interfaces/get_logs_response.ts +0 -35
  1106. package/src/interfaces/prover-coordination.ts +0 -17
  1107. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1108. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1109. package/src/kernel/utils/optional_number.ts +0 -50
  1110. package/src/l1-contracts/slash_factory.ts +0 -180
  1111. package/src/logs/extended_contract_class_log.ts +0 -87
  1112. package/src/logs/extended_directional_app_tagging_secret.ts +0 -98
  1113. package/src/logs/extended_public_log.ts +0 -94
  1114. package/src/logs/log_filter.ts +0 -36
  1115. package/src/logs/log_id.ts +0 -125
  1116. package/src/logs/tx_scoped_l2_log.ts +0 -114
  1117. package/src/p2p/interface.ts +0 -4
  1118. package/src/slashing/empire.ts +0 -104
  1119. package/src/tx/validator/empty_validator.ts +0 -7
@@ -1,10 +1,10 @@
1
- import { GENESIS_BLOCK_HEADER_HASH } from '@aztec/constants';
2
1
  import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
3
2
  import { times } from '@aztec/foundation/collection';
4
3
  import { Fr } from '@aztec/foundation/curves/bn254';
5
4
  import { GENESIS_CHECKPOINT_HEADER_HASH, L2Block } from '@aztec/stdlib/block';
6
5
  import { Checkpoint, L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/checkpoint';
7
- import { jestExpect as expect } from '@jest/expect';
6
+ import { expect } from 'vitest';
7
+ import { GENESIS_BLOCK_HEADER_HASH } from '../block_hash.js';
8
8
  export function testL2TipsStore(makeTipsStore) {
9
9
  let tipsStore;
10
10
  // Track blocks and their hashes for test assertions
@@ -83,15 +83,19 @@ export function testL2TipsStore(makeTipsStore) {
83
83
  }
84
84
  return new PublishedCheckpoint(checkpoint, L1PublishedData.random(), []);
85
85
  };
86
- /** Creates a chain-checkpointed event with the required block field */ const makeCheckpointedEvent = async (checkpoint)=>{
87
- const lastBlock = checkpoint.checkpoint.blocks.at(-1);
86
+ /** Creates a thin chain-checkpointed event carrying the block + checkpoint ids of the checkpoint's last block. */ const makeCheckpointedEvent = async (published)=>{
87
+ const lastBlock = published.checkpoint.blocks.at(-1);
88
88
  const blockId = {
89
89
  number: lastBlock.number,
90
90
  hash: (await lastBlock.hash()).toString()
91
91
  };
92
+ const checkpointId = {
93
+ number: published.checkpoint.number,
94
+ hash: published.checkpoint.hash().toString()
95
+ };
92
96
  return {
93
97
  type: 'chain-checkpointed',
94
- checkpoint,
98
+ checkpoint: checkpointId,
95
99
  block: blockId
96
100
  };
97
101
  };
@@ -110,6 +114,93 @@ export function testL2TipsStore(makeTipsStore) {
110
114
  expect(await tipsStore.getL2BlockHash(2)).toEqual(blockHashes.get(2));
111
115
  expect(await tipsStore.getL2BlockHash(3)).toEqual(blockHashes.get(3));
112
116
  });
117
+ it('records the proposed tip number and hash from a chain-proposed event', async ()=>{
118
+ // chain-proposed is the sole writer of proposed-tip history in tips-only mode: no preceding blocks-added.
119
+ await tipsStore.handleBlockStreamEvent({
120
+ type: 'chain-proposed',
121
+ block: {
122
+ number: BlockNumber(5),
123
+ hash: new Fr(500).toString()
124
+ }
125
+ });
126
+ const tips = await tipsStore.getL2Tips();
127
+ expect(tips.proposed).toEqual({
128
+ number: BlockNumber(5),
129
+ hash: new Fr(500).toString()
130
+ });
131
+ // The hash is recorded in the same index the walk-back reads, so it resolves as a sparse anchor.
132
+ expect(await tipsStore.getL2BlockHash(5)).toEqual(new Fr(500).toString());
133
+ });
134
+ it('serves sparse proposed anchors from chain-proposed events for the walk-back', async ()=>{
135
+ // Two tip-moving polls in tips-only mode, with no blocks in between (sparse history).
136
+ await tipsStore.handleBlockStreamEvent({
137
+ type: 'chain-proposed',
138
+ block: {
139
+ number: BlockNumber(4),
140
+ hash: new Fr(400).toString()
141
+ }
142
+ });
143
+ await tipsStore.handleBlockStreamEvent({
144
+ type: 'chain-proposed',
145
+ block: {
146
+ number: BlockNumber(9),
147
+ hash: new Fr(900).toString()
148
+ }
149
+ });
150
+ // Both recorded heights resolve; the heights between them were never seen and stay undefined.
151
+ expect(await tipsStore.getL2BlockHash(4)).toEqual(new Fr(400).toString());
152
+ expect(await tipsStore.getL2BlockHash(9)).toEqual(new Fr(900).toString());
153
+ expect(await tipsStore.getL2BlockHash(6)).toBeUndefined();
154
+ const tips = await tipsStore.getL2Tips();
155
+ expect(tips.proposed).toEqual({
156
+ number: BlockNumber(9),
157
+ hash: new Fr(900).toString()
158
+ });
159
+ });
160
+ it('records block-hash witnesses without moving any tip cursor', async ()=>{
161
+ // Establish a proposed tip at 9 in tips-only fashion (sole writer of proposed history).
162
+ await tipsStore.handleBlockStreamEvent({
163
+ type: 'chain-proposed',
164
+ block: {
165
+ number: BlockNumber(9),
166
+ hash: new Fr(900).toString()
167
+ }
168
+ });
169
+ // Record sparse witnesses at heights below the tip (e.g. a consumer materializing per-height state).
170
+ await tipsStore.recordBlockHashes([
171
+ {
172
+ number: BlockNumber(4),
173
+ hash: new Fr(404).toString()
174
+ },
175
+ {
176
+ number: BlockNumber(6),
177
+ hash: new Fr(606).toString()
178
+ }
179
+ ]);
180
+ // Each recorded height resolves; an unrecorded gap stays undefined.
181
+ expect(await tipsStore.getL2BlockHash(4)).toEqual(new Fr(404).toString());
182
+ expect(await tipsStore.getL2BlockHash(6)).toEqual(new Fr(606).toString());
183
+ expect(await tipsStore.getL2BlockHash(5)).toBeUndefined();
184
+ // No tip cursor moved: the proposed tip is still 9, and every other tier is at genesis.
185
+ const tips = await tipsStore.getL2Tips();
186
+ expect(tips.proposed).toEqual({
187
+ number: BlockNumber(9),
188
+ hash: new Fr(900).toString()
189
+ });
190
+ expect(tips.checkpointed.block).toEqual(makeTip(0));
191
+ expect(tips.proven.block).toEqual(makeTip(0));
192
+ expect(tips.finalized.block).toEqual(makeTip(0));
193
+ });
194
+ it('skips witnesses with no hash and tolerates an empty list', async ()=>{
195
+ await tipsStore.recordBlockHashes([]);
196
+ await tipsStore.recordBlockHashes([
197
+ {
198
+ number: BlockNumber(3),
199
+ hash: ''
200
+ }
201
+ ]);
202
+ expect(await tipsStore.getL2BlockHash(3)).toBeUndefined();
203
+ });
113
204
  it('checkpoints all proposed blocks', async ()=>{
114
205
  // Propose blocks 1-5
115
206
  const blocks = await Promise.all(times(5, (i)=>makeBlock(i + 1)));
@@ -138,7 +229,8 @@ export function testL2TipsStore(makeTipsStore) {
138
229
  // Prove up to block 5
139
230
  await tipsStore.handleBlockStreamEvent({
140
231
  type: 'chain-proven',
141
- block: makeBlockId(5)
232
+ block: makeBlockId(5),
233
+ checkpoint: makeCheckpointIdForBlock(5)
142
234
  });
143
235
  const tips = await tipsStore.getL2Tips();
144
236
  expect(tips.proposed).toEqual(makeTip(5));
@@ -160,11 +252,13 @@ export function testL2TipsStore(makeTipsStore) {
160
252
  // Prove and finalize
161
253
  await tipsStore.handleBlockStreamEvent({
162
254
  type: 'chain-proven',
163
- block: makeBlockId(5)
255
+ block: makeBlockId(5),
256
+ checkpoint: makeCheckpointIdForBlock(5)
164
257
  });
165
258
  await tipsStore.handleBlockStreamEvent({
166
259
  type: 'chain-finalized',
167
- block: makeBlockId(5)
260
+ block: makeBlockId(5),
261
+ checkpoint: makeCheckpointIdForBlock(5)
168
262
  });
169
263
  const tips = await tipsStore.getL2Tips();
170
264
  expect(tips.proposed).toEqual(makeTip(5));
@@ -222,11 +316,13 @@ export function testL2TipsStore(makeTipsStore) {
222
316
  // Prove and finalize up to block 3 (checkpoint 1)
223
317
  await tipsStore.handleBlockStreamEvent({
224
318
  type: 'chain-proven',
225
- block: makeBlockId(3)
319
+ block: makeBlockId(3),
320
+ checkpoint: makeCheckpointIdForBlock(3)
226
321
  });
227
322
  await tipsStore.handleBlockStreamEvent({
228
323
  type: 'chain-finalized',
229
- block: makeBlockId(3)
324
+ block: makeBlockId(3),
325
+ checkpoint: makeCheckpointIdForBlock(3)
230
326
  });
231
327
  // Blocks before finalized should be cleared
232
328
  expect(await tipsStore.getL2BlockHash(1)).toBeUndefined();
@@ -246,10 +342,8 @@ export function testL2TipsStore(makeTipsStore) {
246
342
  await tipsStore.handleBlockStreamEvent({
247
343
  type: 'chain-pruned',
248
344
  block: makeBlockId(5),
249
- checkpoint: {
250
- number: CheckpointNumber.ZERO,
251
- hash: GENESIS_CHECKPOINT_HEADER_HASH.toString()
252
- }
345
+ checkpointed: makeTipId(0),
346
+ proven: makeTipId(0)
253
347
  });
254
348
  const tips = await tipsStore.getL2Tips();
255
349
  expect(tips.proposed).toEqual(makeTip(5));
@@ -271,10 +365,8 @@ export function testL2TipsStore(makeTipsStore) {
271
365
  await tipsStore.handleBlockStreamEvent({
272
366
  type: 'chain-pruned',
273
367
  block: makeTip(0),
274
- checkpoint: {
275
- number: CheckpointNumber.ZERO,
276
- hash: GENESIS_CHECKPOINT_HEADER_HASH.toString()
277
- }
368
+ checkpointed: makeTipId(0),
369
+ proven: makeTipId(0)
278
370
  });
279
371
  tips = await tipsStore.getL2Tips();
280
372
  expect(tips.proposed).toEqual(makeTip(0));
@@ -335,10 +427,8 @@ export function testL2TipsStore(makeTipsStore) {
335
427
  await tipsStore.handleBlockStreamEvent({
336
428
  type: 'chain-pruned',
337
429
  block: makeBlockId(5),
338
- checkpoint: {
339
- number: CheckpointNumber.ZERO,
340
- hash: GENESIS_CHECKPOINT_HEADER_HASH.toString()
341
- }
430
+ checkpointed: makeTipId(5),
431
+ proven: makeTipId(0)
342
432
  });
343
433
  tips = await tipsStore.getL2Tips();
344
434
  expect(tips.proposed).toEqual(makeTip(5));
@@ -398,10 +488,8 @@ export function testL2TipsStore(makeTipsStore) {
398
488
  await tipsStore.handleBlockStreamEvent({
399
489
  type: 'chain-pruned',
400
490
  block: makeBlockId(3),
401
- checkpoint: {
402
- number: CheckpointNumber.ZERO,
403
- hash: GENESIS_CHECKPOINT_HEADER_HASH.toString()
404
- }
491
+ checkpointed: makeTipId(3),
492
+ proven: makeTipId(0)
405
493
  });
406
494
  tips = await tipsStore.getL2Tips();
407
495
  expect(tips.proposed).toEqual(makeTip(3));
@@ -438,7 +526,8 @@ export function testL2TipsStore(makeTipsStore) {
438
526
  // Prove up to block 3
439
527
  await tipsStore.handleBlockStreamEvent({
440
528
  type: 'chain-proven',
441
- block: makeBlockId(3)
529
+ block: makeBlockId(3),
530
+ checkpoint: makeCheckpointIdForBlock(3)
442
531
  });
443
532
  let tips = await tipsStore.getL2Tips();
444
533
  expect(tips.proposed).toEqual(makeTip(3));
@@ -478,10 +567,8 @@ export function testL2TipsStore(makeTipsStore) {
478
567
  await tipsStore.handleBlockStreamEvent({
479
568
  type: 'chain-pruned',
480
569
  block: makeBlockId(3),
481
- checkpoint: {
482
- number: CheckpointNumber.ZERO,
483
- hash: GENESIS_CHECKPOINT_HEADER_HASH.toString()
484
- }
570
+ checkpointed: makeTipId(3),
571
+ proven: makeTipId(3)
485
572
  });
486
573
  tips = await tipsStore.getL2Tips();
487
574
  expect(tips.proposed).toEqual(makeTip(3));
@@ -524,22 +611,195 @@ export function testL2TipsStore(makeTipsStore) {
524
611
  expect(await tipsStore.getL2BlockHash(6)).not.toEqual(originalHash6);
525
612
  expect(await tipsStore.getL2BlockHash(7)).not.toEqual(originalHash7);
526
613
  });
527
- // Regression test for #13142
528
- it('does not blow up when setting proven chain on an unseen block number', async ()=>{
614
+ // Regression test for #13142: proving an unseen block number (one with no local block->checkpoint
615
+ // mapping) must not blow up. With per-cursor checkpoint ids, the proven tip resolves to the
616
+ // checkpoint id carried by the event rather than falling back to checkpoint zero.
617
+ it('resolves the proven checkpoint from the carried id when setting proven on an unseen block number', async ()=>{
529
618
  await tipsStore.handleBlockStreamEvent({
530
619
  type: 'blocks-added',
531
620
  blocks: [
532
621
  await makeBlock(5)
533
622
  ]
534
623
  });
624
+ // Block 3 has no local block->checkpoint mapping, but the event carries a real checkpoint id.
625
+ const carriedCheckpoint = {
626
+ number: CheckpointNumber(1),
627
+ hash: new Fr(42).toString()
628
+ };
535
629
  await tipsStore.handleBlockStreamEvent({
536
630
  type: 'chain-proven',
537
- block: makeBlockId(3)
631
+ block: makeBlockId(3),
632
+ checkpoint: carriedCheckpoint
538
633
  });
539
634
  const tips = await tipsStore.getL2Tips();
540
635
  expect(tips.proposed).toEqual(makeTip(5));
541
636
  expect(tips.proven.block).toEqual(makeTip(3));
542
- // No checkpoint for block 3 since it wasn't checkpointed
543
- expect(tips.proven.checkpoint.number).toEqual(CheckpointNumber.ZERO);
637
+ // Resolved from the carried id, not the (missing) local mapping.
638
+ expect(tips.proven.checkpoint).toEqual(carriedCheckpoint);
639
+ });
640
+ // proven/finalized resolve to the carried checkpoint id even when the block has no local
641
+ // block->checkpoint mapping (the cursor legitimately leads the locally-checkpointed frontier).
642
+ it('resolves proven and finalized checkpoints from carried ids without a local mapping', async ()=>{
643
+ await tipsStore.handleBlockStreamEvent({
644
+ type: 'blocks-added',
645
+ blocks: [
646
+ await makeBlock(7)
647
+ ]
648
+ });
649
+ const provenCheckpoint = {
650
+ number: CheckpointNumber(2),
651
+ hash: new Fr(101).toString()
652
+ };
653
+ const finalizedCheckpoint = {
654
+ number: CheckpointNumber(1),
655
+ hash: new Fr(100).toString()
656
+ };
657
+ await tipsStore.handleBlockStreamEvent({
658
+ type: 'chain-proven',
659
+ block: makeBlockId(5),
660
+ checkpoint: provenCheckpoint
661
+ });
662
+ await tipsStore.handleBlockStreamEvent({
663
+ type: 'chain-finalized',
664
+ block: makeBlockId(3),
665
+ checkpoint: finalizedCheckpoint
666
+ });
667
+ const tips = await tipsStore.getL2Tips();
668
+ expect(tips.proven.checkpoint).toEqual(provenCheckpoint);
669
+ expect(tips.finalized.checkpoint).toEqual(finalizedCheckpoint);
670
+ });
671
+ // Genuine corruption: a cursor points at a real (non-genesis) block that has a block hash but
672
+ // neither a stored per-cursor checkpoint id nor a block->checkpoint mapping. getL2Tips must throw
673
+ // loudly rather than silently report checkpoint zero. We reach this state by reaching past the
674
+ // event API to place the tip directly, since the normal writers always record an id.
675
+ it('throws when a cursor points at a real block with neither a stored id nor a mapping', async ()=>{
676
+ // blocks-added records the block hash for block 5 (so getBlockId succeeds) but no checkpoint id.
677
+ await tipsStore.handleBlockStreamEvent({
678
+ type: 'blocks-added',
679
+ blocks: [
680
+ await makeBlock(5)
681
+ ]
682
+ });
683
+ // Corrupt the proven cursor to point at block 5 without any id or mapping.
684
+ const internal = tipsStore;
685
+ await internal.setTip('proven', BlockNumber(5));
686
+ await expect(tipsStore.getL2Tips()).rejects.toThrow(/checkpoint/i);
687
+ });
688
+ // Backward prune of a leading cursor: a checkpoint-bearing cursor that legitimately leads the source's
689
+ // confirmed checkpointed tip is clamped down to that tip, resolving to the id the prune event carries
690
+ // (never genesis, never a throw). This is the skipped-history shape where the cursor sits on a block
691
+ // ahead of the checkpointed frontier.
692
+ it('clamps a leading checkpoint cursor down to the source checkpointed tip carried by the prune event', async ()=>{
693
+ // Checkpoint blocks 1-5 (checkpointed = block 5 / ckpt 1), then add uncheckpointed blocks 6-10.
694
+ const blocks1to5 = await Promise.all(times(5, (i)=>makeBlock(i + 1)));
695
+ await tipsStore.handleBlockStreamEvent({
696
+ type: 'blocks-added',
697
+ blocks: blocks1to5
698
+ });
699
+ const checkpoint1 = await makeCheckpoint(1, blocks1to5);
700
+ await tipsStore.handleBlockStreamEvent(await makeCheckpointedEvent(checkpoint1));
701
+ const blocks6to10 = await Promise.all(times(5, (i)=>makeBlock(i + 6)));
702
+ await tipsStore.handleBlockStreamEvent({
703
+ type: 'blocks-added',
704
+ blocks: blocks6to10
705
+ });
706
+ // Advance the proven cursor onto an uncheckpointed block (8) via a carried id, so it LEADS the
707
+ // source checkpointed tip (block 5) and will be clamped down to it on prune.
708
+ await tipsStore.handleBlockStreamEvent({
709
+ type: 'chain-proven',
710
+ block: makeBlockId(8),
711
+ checkpoint: {
712
+ number: CheckpointNumber(2),
713
+ hash: new Fr(202).toString()
714
+ }
715
+ });
716
+ // Prune to block 7, carrying the source's confirmed checkpointed and proven tips (both block 5 / ckpt 1
717
+ // here, the source's proven tip having rolled back together with its checkpointed tip).
718
+ await tipsStore.handleBlockStreamEvent({
719
+ type: 'chain-pruned',
720
+ block: makeBlockId(7),
721
+ checkpointed: makeTipId(5),
722
+ proven: makeTipId(5)
723
+ });
724
+ // Must not throw; the proven cursor is clamped to the carried proven tip, resolving to ckpt 1.
725
+ const tips = await tipsStore.getL2Tips();
726
+ expect(tips.proposed).toEqual(makeTip(7));
727
+ expect(tips.proven.block).toEqual(makeTip(5));
728
+ expect(tips.proven.checkpoint.number).toEqual(CheckpointNumber(1));
729
+ });
730
+ it('keeps the checkpointed tip when pruning to an uncheckpointed block ahead of it', async ()=>{
731
+ const blocks1to5 = await Promise.all(times(5, (i)=>makeBlock(i + 1)));
732
+ await tipsStore.handleBlockStreamEvent({
733
+ type: 'blocks-added',
734
+ blocks: blocks1to5
735
+ });
736
+ const checkpoint1 = await makeCheckpoint(1, blocks1to5);
737
+ await tipsStore.handleBlockStreamEvent(await makeCheckpointedEvent(checkpoint1)); // checkpointed = block 5 / ckpt 1
738
+ const blocks6to7 = await Promise.all(times(2, (i)=>makeBlock(i + 6)));
739
+ await tipsStore.handleBlockStreamEvent({
740
+ type: 'blocks-added',
741
+ blocks: blocks6to7
742
+ }); // proposed = 7
743
+ // Prune to block 6: an uncheckpointed block AHEAD of the checkpointed tip (block 5). The source
744
+ // checkpointed tip is still block 5 / ckpt 1, so the checkpointed cursor must not move.
745
+ await tipsStore.handleBlockStreamEvent({
746
+ type: 'chain-pruned',
747
+ block: makeBlockId(6),
748
+ checkpointed: makeTipId(5),
749
+ proven: makeTipId(0)
750
+ });
751
+ const tips = await tipsStore.getL2Tips();
752
+ expect(tips.proposed).toEqual(makeTip(6));
753
+ expect(tips.checkpointed.block).toEqual(makeTip(5));
754
+ expect(tips.checkpointed.checkpoint.number).toEqual(CheckpointNumber(1)); // must NOT be zero
755
+ });
756
+ // Per-cursor clamping on prune: when the source rolls back its proven tip below its checkpointed tip
757
+ // (e.g. a proof tx dropped by an L1 reorg), the prune event carries both source tips and each local
758
+ // cursor must clamp to its OWN source tip. Clamping the proven cursor onto the (higher) checkpointed
759
+ // tip would transiently report unproven blocks as proven until the corrective chain-proven event lands.
760
+ it('clamps the proven cursor to the source proven tip, separately from the checkpointed cursor, on prune', async ()=>{
761
+ // Checkpoint blocks 1-15 across three checkpoints (ckpt 1 = 1-5, ckpt 2 = 6-10, ckpt 3 = 11-15).
762
+ const blocks1to5 = await Promise.all(times(5, (i)=>makeBlock(i + 1)));
763
+ await tipsStore.handleBlockStreamEvent({
764
+ type: 'blocks-added',
765
+ blocks: blocks1to5
766
+ });
767
+ await tipsStore.handleBlockStreamEvent(await makeCheckpointedEvent(await makeCheckpoint(1, blocks1to5)));
768
+ const blocks6to10 = await Promise.all(times(5, (i)=>makeBlock(i + 6)));
769
+ await tipsStore.handleBlockStreamEvent({
770
+ type: 'blocks-added',
771
+ blocks: blocks6to10
772
+ });
773
+ await tipsStore.handleBlockStreamEvent(await makeCheckpointedEvent(await makeCheckpoint(2, blocks6to10)));
774
+ const blocks11to15 = await Promise.all(times(5, (i)=>makeBlock(i + 11)));
775
+ await tipsStore.handleBlockStreamEvent({
776
+ type: 'blocks-added',
777
+ blocks: blocks11to15
778
+ });
779
+ await tipsStore.handleBlockStreamEvent(await makeCheckpointedEvent(await makeCheckpoint(3, blocks11to15)));
780
+ // Prove the whole chain up to block 15 (ckpt 3), so the local proven cursor leads both source tips below.
781
+ await tipsStore.handleBlockStreamEvent({
782
+ type: 'chain-proven',
783
+ block: makeBlockId(15),
784
+ checkpoint: makeCheckpointIdForBlock(15)
785
+ });
786
+ let tips = await tipsStore.getL2Tips();
787
+ expect(tips.checkpointed.block).toEqual(makeTip(15));
788
+ expect(tips.proven.block).toEqual(makeTip(15));
789
+ // Prune arrives with the source's proven tip (block 5 / ckpt 1) BELOW its checkpointed tip (block 10 /
790
+ // ckpt 2) and below the local proven cursor (block 15). Each cursor must clamp to its own source tip.
791
+ await tipsStore.handleBlockStreamEvent({
792
+ type: 'chain-pruned',
793
+ block: makeBlockId(10),
794
+ checkpointed: makeTipId(10),
795
+ proven: makeTipId(5)
796
+ });
797
+ tips = await tipsStore.getL2Tips();
798
+ // The proven cursor lands exactly on the source proven tip, NOT on the (higher) checkpointed tip.
799
+ expect(tips.proven.block).toEqual(makeTip(5));
800
+ expect(tips.proven.checkpoint.number).toEqual(CheckpointNumber(1));
801
+ // The checkpointed cursor lands on the source checkpointed tip.
802
+ expect(tips.checkpointed.block).toEqual(makeTip(10));
803
+ expect(tips.checkpointed.checkpoint.number).toEqual(CheckpointNumber(2));
544
804
  });
545
805
  }
@@ -1,3 +1,4 @@
1
+ import type { ViemCommitteeAttestations } from '@aztec/ethereum/contracts';
1
2
  import { EpochNumber } from '@aztec/foundation/branded-types';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
3
4
  import { type ZodFor } from '@aztec/foundation/schemas';
@@ -19,6 +20,14 @@ export type ValidateCheckpointNegativeResult = {
19
20
  attestors: EthAddress[];
20
21
  /** Committee attestations for this checkpoint as they were posted to L1 */
21
22
  attestations: CommitteeAttestation[];
23
+ /**
24
+ * The exact packed `CommitteeAttestations` tuple as posted to L1 calldata, carried verbatim so the
25
+ * invalidation evidence is byte-faithful to the stored `attestationsHash`. A repack via
26
+ * `packAttestations` is not a round-trip inverse of `fromPacked`, so it would diverge from the hash
27
+ * and revert `invalidateBadAttestation`/`invalidateInsufficientAttestations`. Always populated on the
28
+ * calldata validation path, the only production source of invalidation evidence.
29
+ */
30
+ verbatimAttestations: ViemCommitteeAttestations;
22
31
  /** Reason for the checkpoint being invalid: not enough attestations were posted */
23
32
  reason: 'insufficient-attestations';
24
33
  } | {
@@ -35,6 +44,12 @@ export type ValidateCheckpointNegativeResult = {
35
44
  attestors: EthAddress[];
36
45
  /** Committee attestations for this checkpoint as they were posted to L1 */
37
46
  attestations: CommitteeAttestation[];
47
+ /**
48
+ * The exact packed `CommitteeAttestations` tuple as posted to L1 calldata, carried verbatim so the
49
+ * invalidation evidence is byte-faithful to the stored `attestationsHash`. See the same field on the
50
+ * insufficient-attestations variant for why a repack cannot be used.
51
+ */
52
+ verbatimAttestations: ViemCommitteeAttestations;
38
53
  /** Reason for the checkpoint being invalid: an invalid attestation was posted */
39
54
  reason: 'invalid-attestation';
40
55
  /** Index in the attestations array of the invalid attestation posted */
@@ -47,4 +62,4 @@ export type ValidateCheckpointResult = {
47
62
  export declare const ValidateCheckpointResultSchema: ZodFor<ValidateCheckpointResult>;
48
63
  export declare function serializeValidateCheckpointResult(result: ValidateCheckpointResult): Buffer;
49
64
  export declare function deserializeValidateCheckpointResult(bufferOrReader: Buffer | BufferReader): ValidateCheckpointResult;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVfYmxvY2tfcmVzdWx0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svdmFsaWRhdGVfYmxvY2tfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQXFCLE1BQU0saUNBQWlDLENBQUM7QUFDakYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBVyxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFJOUUsT0FBTyxFQUNMLEtBQUssY0FBYyxFQUlwQixNQUFNLGtDQUFrQyxDQUFDO0FBRTFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTNFLHdEQUF3RDtBQUN4RCxNQUFNLE1BQU0sZ0NBQWdDLEdBQ3hDO0lBQ0UsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUNiLDhDQUE4QztJQUM5QyxVQUFVLEVBQUUsY0FBYyxDQUFDO0lBQzNCLGtFQUFrRTtJQUNsRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDeEIsa0RBQWtEO0lBQ2xELEtBQUssRUFBRSxXQUFXLENBQUM7SUFDbkIsNENBQTRDO0lBQzVDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixvRUFBb0U7SUFDcEUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ3hCLDJFQUEyRTtJQUMzRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztJQUNyQyxtRkFBbUY7SUFDbkYsTUFBTSxFQUFFLDJCQUEyQixDQUFDO0NBQ3JDLEdBQ0Q7SUFDRSxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQ2IsOENBQThDO0lBQzlDLFVBQVUsRUFBRSxjQUFjLENBQUM7SUFDM0Isa0VBQWtFO0lBQ2xFLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUN4QixrREFBa0Q7SUFDbEQsS0FBSyxFQUFFLFdBQVcsQ0FBQztJQUNuQiw0Q0FBNEM7SUFDNUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLG9FQUFvRTtJQUNwRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDeEIsMkVBQTJFO0lBQzNFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ3JDLGlGQUFpRjtJQUNqRixNQUFNLEVBQUUscUJBQXFCLENBQUM7SUFDOUIsd0VBQXdFO0lBQ3hFLFlBQVksRUFBRSxNQUFNLENBQUM7Q0FDdEIsQ0FBQztBQUVOLHlEQUF5RDtBQUN6RCxNQUFNLE1BQU0sd0JBQXdCLEdBQUc7SUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFBO0NBQUUsR0FBRyxnQ0FBZ0MsQ0FBQztBQUUxRixlQUFPLE1BQU0sOEJBQThCLEVBQUUsTUFBTSxDQUFDLHdCQUF3QixDQXVCMUUsQ0FBQztBQUVILHdCQUFnQixpQ0FBaUMsQ0FBQyxNQUFNLEVBQUUsd0JBQXdCLEdBQUcsTUFBTSxDQXFCMUY7QUFFRCx3QkFBZ0IsbUNBQW1DLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsd0JBQXdCLENBc0JuSCJ9
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVfYmxvY2tfcmVzdWx0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svdmFsaWRhdGVfYmxvY2tfcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUs5RSxPQUFPLEVBQ0wsS0FBSyxjQUFjLEVBSXBCLE1BQU0sa0NBQWtDLENBQUM7QUFFMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFM0Usd0RBQXdEO0FBQ3hELE1BQU0sTUFBTSxnQ0FBZ0MsR0FDeEM7SUFDRSxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQ2IsOENBQThDO0lBQzlDLFVBQVUsRUFBRSxjQUFjLENBQUM7SUFDM0Isa0VBQWtFO0lBQ2xFLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUN4QixrREFBa0Q7SUFDbEQsS0FBSyxFQUFFLFdBQVcsQ0FBQztJQUNuQiw0Q0FBNEM7SUFDNUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLG9FQUFvRTtJQUNwRSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDeEIsMkVBQTJFO0lBQzNFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ3JDOzs7Ozs7T0FNRztJQUNILG9CQUFvQixFQUFFLHlCQUF5QixDQUFDO0lBQ2hELG1GQUFtRjtJQUNuRixNQUFNLEVBQUUsMkJBQTJCLENBQUM7Q0FDckMsR0FDRDtJQUNFLEtBQUssRUFBRSxLQUFLLENBQUM7SUFDYiw4Q0FBOEM7SUFDOUMsVUFBVSxFQUFFLGNBQWMsQ0FBQztJQUMzQixrRUFBa0U7SUFDbEUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ3hCLGtEQUFrRDtJQUNsRCxLQUFLLEVBQUUsV0FBVyxDQUFDO0lBQ25CLDRDQUE0QztJQUM1QyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2Isb0VBQW9FO0lBQ3BFLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUN4QiwyRUFBMkU7SUFDM0UsWUFBWSxFQUFFLG9CQUFvQixFQUFFLENBQUM7SUFDckM7Ozs7T0FJRztJQUNILG9CQUFvQixFQUFFLHlCQUF5QixDQUFDO0lBQ2hELGlGQUFpRjtJQUNqRixNQUFNLEVBQUUscUJBQXFCLENBQUM7SUFDOUIsd0VBQXdFO0lBQ3hFLFlBQVksRUFBRSxNQUFNLENBQUM7Q0FDdEIsQ0FBQztBQUVOLHlEQUF5RDtBQUN6RCxNQUFNLE1BQU0sd0JBQXdCLEdBQUc7SUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFBO0NBQUUsR0FBRyxnQ0FBZ0MsQ0FBQztBQVExRixlQUFPLE1BQU0sOEJBQThCLEVBQUUsTUFBTSxDQUFDLHdCQUF3QixDQXlCMUUsQ0FBQztBQUVILHdCQUFnQixpQ0FBaUMsQ0FBQyxNQUFNLEVBQUUsd0JBQXdCLEdBQUcsTUFBTSxDQTJCMUY7QUFFRCx3QkFBZ0IsbUNBQW1DLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsd0JBQXdCLENBc0NuSCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"validate_block_result.d.ts","sourceRoot":"","sources":["../../src/block/validate_block_result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAI9E,OAAO,EACL,KAAK,cAAc,EAIpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,wDAAwD;AACxD,MAAM,MAAM,gCAAgC,GACxC;IACE,KAAK,EAAE,KAAK,CAAC;IACb,8CAA8C;IAC9C,UAAU,EAAE,cAAc,CAAC;IAC3B,kEAAkE;IAClE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,kDAAkD;IAClD,KAAK,EAAE,WAAW,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,2EAA2E;IAC3E,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,mFAAmF;IACnF,MAAM,EAAE,2BAA2B,CAAC;CACrC,GACD;IACE,KAAK,EAAE,KAAK,CAAC;IACb,8CAA8C;IAC9C,UAAU,EAAE,cAAc,CAAC;IAC3B,kEAAkE;IAClE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,kDAAkD;IAClD,KAAK,EAAE,WAAW,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,2EAA2E;IAC3E,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,iFAAiF;IACjF,MAAM,EAAE,qBAAqB,CAAC;IAC9B,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN,yDAAyD;AACzD,MAAM,MAAM,wBAAwB,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG,gCAAgC,CAAC;AAE1F,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,wBAAwB,CAuB1E,CAAC;AAEH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,CAqB1F;AAED,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,wBAAwB,CAsBnH"}
1
+ {"version":3,"file":"validate_block_result.d.ts","sourceRoot":"","sources":["../../src/block/validate_block_result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAK9E,OAAO,EACL,KAAK,cAAc,EAIpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,wDAAwD;AACxD,MAAM,MAAM,gCAAgC,GACxC;IACE,KAAK,EAAE,KAAK,CAAC;IACb,8CAA8C;IAC9C,UAAU,EAAE,cAAc,CAAC;IAC3B,kEAAkE;IAClE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,kDAAkD;IAClD,KAAK,EAAE,WAAW,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,2EAA2E;IAC3E,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC;;;;;;OAMG;IACH,oBAAoB,EAAE,yBAAyB,CAAC;IAChD,mFAAmF;IACnF,MAAM,EAAE,2BAA2B,CAAC;CACrC,GACD;IACE,KAAK,EAAE,KAAK,CAAC;IACb,8CAA8C;IAC9C,UAAU,EAAE,cAAc,CAAC;IAC3B,kEAAkE;IAClE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,kDAAkD;IAClD,KAAK,EAAE,WAAW,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,2EAA2E;IAC3E,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC;;;;OAIG;IACH,oBAAoB,EAAE,yBAAyB,CAAC;IAChD,iFAAiF;IACjF,MAAM,EAAE,qBAAqB,CAAC;IAC9B,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN,yDAAyD;AACzD,MAAM,MAAM,wBAAwB,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG,gCAAgC,CAAC;AAQ1F,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,wBAAwB,CAyB1E,CAAC;AAEH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,CA2B1F;AAED,wBAAgB,mCAAmC,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,wBAAwB,CAsCnH"}
@@ -2,10 +2,15 @@ import { EpochNumber, EpochNumberSchema } from '@aztec/foundation/branded-types'
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { schemas } from '@aztec/foundation/schemas';
4
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
+ import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
6
  import { z } from 'zod';
6
7
  import { CheckpointInfoSchema, deserializeCheckpointInfo, serializeCheckpointInfo } from '../checkpoint/checkpoint_info.js';
7
8
  import { MAX_COMMITTEE_SIZE } from '../deserialization/index.js';
8
9
  import { CommitteeAttestation } from './proposal/committee_attestation.js';
10
+ /** Zod schema for the raw packed `CommitteeAttestations` viem tuple (two 0x-prefixed hex strings). */ const ViemCommitteeAttestationsSchema = z.object({
11
+ signatureIndices: schemas.HexStringWith0x,
12
+ signaturesOrAddresses: schemas.HexStringWith0x
13
+ });
9
14
  export const ValidateCheckpointResultSchema = z.union([
10
15
  z.object({
11
16
  valid: z.literal(true)
@@ -18,6 +23,7 @@ export const ValidateCheckpointResultSchema = z.union([
18
23
  seed: schemas.BigInt,
19
24
  attestors: z.array(schemas.EthAddress),
20
25
  attestations: z.array(CommitteeAttestation.schema),
26
+ verbatimAttestations: ViemCommitteeAttestationsSchema,
21
27
  reason: z.literal('insufficient-attestations')
22
28
  }),
23
29
  z.object({
@@ -28,6 +34,7 @@ export const ValidateCheckpointResultSchema = z.union([
28
34
  seed: schemas.BigInt,
29
35
  attestors: z.array(schemas.EthAddress),
30
36
  attestations: z.array(CommitteeAttestation.schema),
37
+ verbatimAttestations: ViemCommitteeAttestationsSchema,
31
38
  reason: z.literal('invalid-attestation'),
32
39
  invalidIndex: z.number()
33
40
  })
@@ -37,7 +44,9 @@ export function serializeValidateCheckpointResult(result) {
37
44
  return serializeToBuffer(true);
38
45
  }
39
46
  const checkpointBuffer = serializeCheckpointInfo(result.checkpoint);
40
- return serializeToBuffer(result.valid, result.reason, checkpointBuffer.length, checkpointBuffer, result.committee.length, result.committee, result.epoch, result.seed ?? 0n, result.attestors.length, result.attestors, result.attestations.length, result.attestations, result.reason === 'invalid-attestation' ? result.invalidIndex : 0);
47
+ const signatureIndices = hexToBuffer(result.verbatimAttestations.signatureIndices);
48
+ const signaturesOrAddresses = hexToBuffer(result.verbatimAttestations.signaturesOrAddresses);
49
+ return serializeToBuffer(result.valid, result.reason, checkpointBuffer.length, checkpointBuffer, result.committee.length, result.committee, result.epoch, result.seed ?? 0n, result.attestors.length, result.attestors, result.attestations.length, result.attestations, result.reason === 'invalid-attestation' ? result.invalidIndex : 0, signatureIndices.length, signatureIndices, signaturesOrAddresses.length, signaturesOrAddresses);
41
50
  }
42
51
  export function deserializeValidateCheckpointResult(bufferOrReader) {
43
52
  const reader = BufferReader.asReader(bufferOrReader);
@@ -55,6 +64,10 @@ export function deserializeValidateCheckpointResult(bufferOrReader) {
55
64
  const attestors = reader.readVector(EthAddress, MAX_COMMITTEE_SIZE);
56
65
  const attestations = reader.readVector(CommitteeAttestation, MAX_COMMITTEE_SIZE);
57
66
  const invalidIndex = reader.readNumber();
67
+ const verbatimAttestations = {
68
+ signatureIndices: bufferToHex(reader.readBuffer()),
69
+ signaturesOrAddresses: bufferToHex(reader.readBuffer())
70
+ };
58
71
  if (reason === 'insufficient-attestations') {
59
72
  return {
60
73
  valid,
@@ -64,7 +77,8 @@ export function deserializeValidateCheckpointResult(bufferOrReader) {
64
77
  epoch,
65
78
  seed,
66
79
  attestors,
67
- attestations
80
+ attestations,
81
+ verbatimAttestations
68
82
  };
69
83
  } else if (reason === 'invalid-attestation') {
70
84
  return {
@@ -76,7 +90,8 @@ export function deserializeValidateCheckpointResult(bufferOrReader) {
76
90
  seed,
77
91
  attestors,
78
92
  invalidIndex,
79
- attestations
93
+ attestations,
94
+ verbatimAttestations
80
95
  };
81
96
  } else {
82
97
  const _ = reason;