@aztec/stdlib 0.0.1-commit.e3c1de76 → 0.0.1-commit.e57c76e

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 (1048) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +22 -10
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +20 -3
  26. package/dest/abi/function_selector.d.ts +3 -6
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +2 -4
  29. package/dest/abi/function_signature_decoder.d.ts +43 -0
  30. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  31. package/dest/abi/function_signature_decoder.js +66 -0
  32. package/dest/abi/index.d.ts +2 -1
  33. package/dest/abi/index.d.ts.map +1 -1
  34. package/dest/abi/index.js +1 -0
  35. package/dest/abi/note_selector.d.ts +4 -7
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +1 -3
  38. package/dest/abi/selector.d.ts +2 -2
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +1 -1
  41. package/dest/abi/utils.d.ts +14 -1
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +16 -1
  44. package/dest/auth_witness/auth_witness.d.ts +2 -2
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +3 -3
  47. package/dest/avm/avm.d.ts +1756 -10463
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +6 -3
  50. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  53. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  54. package/dest/avm/avm_proving_request.d.ts +653 -5446
  55. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  56. package/dest/avm/message_pack.js +12 -3
  57. package/dest/avm/public_data_write.d.ts +6 -12
  58. package/dest/avm/public_data_write.d.ts.map +1 -1
  59. package/dest/avm/revert_code.d.ts +6 -7
  60. package/dest/avm/revert_code.d.ts.map +1 -1
  61. package/dest/avm/revert_code.js +13 -21
  62. package/dest/aztec-address/index.d.ts +8 -8
  63. package/dest/aztec-address/index.d.ts.map +1 -1
  64. package/dest/aztec-address/index.js +9 -6
  65. package/dest/block/attestation_info.d.ts +3 -2
  66. package/dest/block/attestation_info.d.ts.map +1 -1
  67. package/dest/block/attestation_info.js +7 -5
  68. package/dest/block/block_data.d.ts +27 -0
  69. package/dest/block/block_data.d.ts.map +1 -0
  70. package/dest/block/block_data.js +12 -0
  71. package/dest/block/block_hash.d.ts +11 -10
  72. package/dest/block/block_hash.d.ts.map +1 -1
  73. package/dest/block/block_hash.js +10 -9
  74. package/dest/block/block_parameter.d.ts +37 -4
  75. package/dest/block/block_parameter.d.ts.map +1 -1
  76. package/dest/block/block_parameter.js +53 -2
  77. package/dest/block/in_block.d.ts +5 -24
  78. package/dest/block/in_block.d.ts.map +1 -1
  79. package/dest/block/in_block.js +1 -1
  80. package/dest/block/index.d.ts +2 -2
  81. package/dest/block/index.d.ts.map +1 -1
  82. package/dest/block/index.js +1 -1
  83. package/dest/block/l2_block.d.ts +21 -41
  84. package/dest/block/l2_block.d.ts.map +1 -1
  85. package/dest/block/l2_block.js +12 -2
  86. package/dest/block/l2_block_info.d.ts +10 -29
  87. package/dest/block/l2_block_info.d.ts.map +1 -1
  88. package/dest/block/l2_block_info.js +6 -5
  89. package/dest/block/l2_block_source.d.ts +216 -338
  90. package/dest/block/l2_block_source.d.ts.map +1 -1
  91. package/dest/block/l2_block_source.js +67 -1
  92. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  93. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  94. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  95. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/l2_block_stream.js +49 -12
  97. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  98. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  100. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  101. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  102. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  103. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  104. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  105. package/dest/block/proposal/attestations_and_signers.js +26 -18
  106. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  107. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  108. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  109. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  110. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  111. package/dest/checkpoint/checkpoint.d.ts +48 -99
  112. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  113. package/dest/checkpoint/checkpoint.js +41 -17
  114. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  115. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  116. package/dest/checkpoint/checkpoint_data.js +38 -0
  117. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  118. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  119. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  120. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  121. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  122. package/dest/checkpoint/digest.d.ts +18 -0
  123. package/dest/checkpoint/digest.d.ts.map +1 -0
  124. package/dest/checkpoint/digest.js +12 -0
  125. package/dest/checkpoint/index.d.ts +6 -1
  126. package/dest/checkpoint/index.d.ts.map +1 -1
  127. package/dest/checkpoint/index.js +5 -0
  128. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  129. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  130. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  131. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  132. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  133. package/dest/checkpoint/published_checkpoint.js +1 -2
  134. package/dest/checkpoint/validate.d.ts +36 -0
  135. package/dest/checkpoint/validate.d.ts.map +1 -0
  136. package/dest/checkpoint/validate.js +120 -0
  137. package/dest/config/chain-config.d.ts +4 -9
  138. package/dest/config/chain-config.d.ts.map +1 -1
  139. package/dest/config/chain-config.js +13 -12
  140. package/dest/config/index.d.ts +2 -1
  141. package/dest/config/index.d.ts.map +1 -1
  142. package/dest/config/index.js +1 -0
  143. package/dest/config/sequencer-config.d.ts +14 -0
  144. package/dest/config/sequencer-config.d.ts.map +1 -0
  145. package/dest/config/sequencer-config.js +38 -0
  146. package/dest/contract/complete_address.d.ts +3 -2
  147. package/dest/contract/complete_address.d.ts.map +1 -1
  148. package/dest/contract/complete_address.js +6 -2
  149. package/dest/contract/contract_address.d.ts +6 -6
  150. package/dest/contract/contract_address.d.ts.map +1 -1
  151. package/dest/contract/contract_address.js +9 -8
  152. package/dest/contract/contract_class.d.ts +2 -3
  153. package/dest/contract/contract_class.d.ts.map +1 -1
  154. package/dest/contract/contract_class_id.d.ts +3 -3
  155. package/dest/contract/contract_class_id.d.ts.map +1 -1
  156. package/dest/contract/contract_class_id.js +7 -6
  157. package/dest/contract/contract_deployment_data.d.ts +15 -61
  158. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  159. package/dest/contract/contract_instance.d.ts +4 -2
  160. package/dest/contract/contract_instance.d.ts.map +1 -1
  161. package/dest/contract/contract_instance.js +10 -3
  162. package/dest/contract/index.d.ts +1 -3
  163. package/dest/contract/index.d.ts.map +1 -1
  164. package/dest/contract/index.js +0 -2
  165. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  166. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  167. package/dest/contract/interfaces/contract_class.js +1 -28
  168. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  169. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  170. package/dest/contract/interfaces/contract_instance.js +4 -2
  171. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  172. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  173. package/dest/contract/interfaces/node-info.d.ts +3 -1
  174. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  175. package/dest/contract/interfaces/node-info.js +2 -1
  176. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  177. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  178. package/dest/contract/private_function.d.ts +1 -1
  179. package/dest/contract/private_function.d.ts.map +1 -1
  180. package/dest/contract/private_function.js +4 -6
  181. package/dest/database-version/database_version.d.ts +5 -11
  182. package/dest/database-version/database_version.d.ts.map +1 -1
  183. package/dest/database-version/version_manager.d.ts +6 -2
  184. package/dest/database-version/version_manager.d.ts.map +1 -1
  185. package/dest/database-version/version_manager.js +12 -1
  186. package/dest/epoch-helpers/index.d.ts +14 -18
  187. package/dest/epoch-helpers/index.d.ts.map +1 -1
  188. package/dest/epoch-helpers/index.js +18 -2
  189. package/dest/file-store/factory.d.ts +4 -3
  190. package/dest/file-store/factory.d.ts.map +1 -1
  191. package/dest/file-store/factory.js +2 -2
  192. package/dest/file-store/http.d.ts +9 -2
  193. package/dest/file-store/http.d.ts.map +1 -1
  194. package/dest/file-store/http.js +20 -9
  195. package/dest/file-store/index.d.ts +2 -1
  196. package/dest/file-store/index.d.ts.map +1 -1
  197. package/dest/file-store/local.d.ts +3 -3
  198. package/dest/file-store/local.d.ts.map +1 -1
  199. package/dest/file-store/local.js +13 -4
  200. package/dest/file-store/s3.d.ts +1 -1
  201. package/dest/file-store/s3.d.ts.map +1 -1
  202. package/dest/file-store/s3.js +11 -3
  203. package/dest/gas/fee_math.d.ts +49 -0
  204. package/dest/gas/fee_math.d.ts.map +1 -0
  205. package/dest/gas/fee_math.js +80 -0
  206. package/dest/gas/gas.d.ts +9 -14
  207. package/dest/gas/gas.d.ts.map +1 -1
  208. package/dest/gas/gas.js +6 -3
  209. package/dest/gas/gas_fees.d.ts +13 -14
  210. package/dest/gas/gas_fees.d.ts.map +1 -1
  211. package/dest/gas/gas_fees.js +20 -4
  212. package/dest/gas/gas_settings.d.ts +66 -86
  213. package/dest/gas/gas_settings.d.ts.map +1 -1
  214. package/dest/gas/gas_settings.js +56 -9
  215. package/dest/gas/index.d.ts +2 -1
  216. package/dest/gas/index.d.ts.map +1 -1
  217. package/dest/gas/index.js +1 -0
  218. package/dest/ha-signing/config.d.ts +72 -0
  219. package/dest/ha-signing/config.d.ts.map +1 -0
  220. package/dest/ha-signing/config.js +88 -0
  221. package/dest/ha-signing/index.d.ts +4 -0
  222. package/dest/ha-signing/index.d.ts.map +1 -0
  223. package/dest/ha-signing/index.js +3 -0
  224. package/dest/ha-signing/local_config.d.ts +32 -0
  225. package/dest/ha-signing/local_config.d.ts.map +1 -0
  226. package/dest/ha-signing/local_config.js +24 -0
  227. package/dest/ha-signing/types.d.ts +90 -0
  228. package/dest/ha-signing/types.d.ts.map +1 -0
  229. package/dest/ha-signing/types.js +39 -0
  230. package/dest/hash/hash.d.ts +35 -1
  231. package/dest/hash/hash.d.ts.map +1 -1
  232. package/dest/hash/hash.js +78 -11
  233. package/dest/hash/map_slot.js +2 -2
  234. package/dest/interfaces/allowed_element.d.ts +17 -35
  235. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  236. package/dest/interfaces/allowed_element.js +8 -8
  237. package/dest/interfaces/api_limit.d.ts +1 -1
  238. package/dest/interfaces/api_limit.js +1 -1
  239. package/dest/interfaces/archiver.d.ts +22 -32
  240. package/dest/interfaces/archiver.d.ts.map +1 -1
  241. package/dest/interfaces/archiver.js +215 -65
  242. package/dest/interfaces/aztec-node-admin.d.ts +106 -255
  243. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  244. package/dest/interfaces/aztec-node-admin.js +68 -17
  245. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  246. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  247. package/dest/interfaces/aztec-node-debug.js +21 -0
  248. package/dest/interfaces/aztec-node.d.ts +140 -124
  249. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  250. package/dest/interfaces/aztec-node.js +311 -68
  251. package/dest/interfaces/block-builder.d.ts +41 -12
  252. package/dest/interfaces/block-builder.d.ts.map +1 -1
  253. package/dest/interfaces/block-builder.js +13 -6
  254. package/dest/interfaces/block_response.d.ts +90 -0
  255. package/dest/interfaces/block_response.d.ts.map +1 -0
  256. package/dest/interfaces/block_response.js +30 -0
  257. package/dest/interfaces/chain_tips.d.ts +50 -0
  258. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  259. package/dest/interfaces/chain_tips.js +11 -0
  260. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  261. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  262. package/dest/interfaces/checkpoint_parameter.js +18 -0
  263. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  264. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  265. package/dest/interfaces/checkpoint_response.js +26 -0
  266. package/dest/interfaces/client.d.ts +8 -2
  267. package/dest/interfaces/client.d.ts.map +1 -1
  268. package/dest/interfaces/client.js +7 -1
  269. package/dest/interfaces/configs.d.ts +73 -117
  270. package/dest/interfaces/configs.d.ts.map +1 -1
  271. package/dest/interfaces/configs.js +18 -3
  272. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  273. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  274. package/dest/interfaces/l1_publish_info.js +26 -0
  275. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  276. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  277. package/dest/interfaces/l2_logs_source.js +5 -0
  278. package/dest/interfaces/merkle_tree_operations.d.ts +13 -22
  279. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  280. package/dest/interfaces/p2p-bootstrap.js +8 -2
  281. package/dest/interfaces/p2p.d.ts +18 -13
  282. package/dest/interfaces/p2p.d.ts.map +1 -1
  283. package/dest/interfaces/p2p.js +28 -5
  284. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  285. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  286. package/dest/interfaces/prover-agent.d.ts +5 -23
  287. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  288. package/dest/interfaces/prover-agent.js +4 -1
  289. package/dest/interfaces/prover-broker.d.ts +16 -1
  290. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  291. package/dest/interfaces/prover-broker.js +4 -1
  292. package/dest/interfaces/prover-client.d.ts +12 -23
  293. package/dest/interfaces/prover-client.d.ts.map +1 -1
  294. package/dest/interfaces/prover-client.js +12 -4
  295. package/dest/interfaces/prover-node.js +22 -8
  296. package/dest/interfaces/proving-job-source.js +24 -4
  297. package/dest/interfaces/proving-job.d.ts +742 -5793
  298. package/dest/interfaces/proving-job.d.ts.map +1 -1
  299. package/dest/interfaces/proving-job.js +1 -1
  300. package/dest/interfaces/public_storage_override.d.ts +22 -0
  301. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  302. package/dest/interfaces/public_storage_override.js +7 -0
  303. package/dest/interfaces/server.d.ts +6 -1
  304. package/dest/interfaces/server.d.ts.map +1 -1
  305. package/dest/interfaces/server.js +5 -0
  306. package/dest/interfaces/slasher.d.ts +27 -59
  307. package/dest/interfaces/slasher.d.ts.map +1 -1
  308. package/dest/interfaces/slasher.js +10 -4
  309. package/dest/interfaces/tx_provider.d.ts +6 -1
  310. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  311. package/dest/interfaces/validator.d.ts +76 -168
  312. package/dest/interfaces/validator.d.ts.map +1 -1
  313. package/dest/interfaces/validator.js +16 -5
  314. package/dest/interfaces/world_state.d.ts +6 -5
  315. package/dest/interfaces/world_state.d.ts.map +1 -1
  316. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  317. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  318. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  319. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  320. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  321. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  322. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  323. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  324. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  325. package/dest/kernel/hints/index.d.ts +2 -2
  326. package/dest/kernel/hints/index.js +2 -2
  327. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  328. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  329. package/dest/kernel/hints/key_validation_request.js +20 -18
  330. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  331. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  332. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  333. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  334. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  335. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  336. package/dest/kernel/index.d.ts +5 -1
  337. package/dest/kernel/index.d.ts.map +1 -1
  338. package/dest/kernel/index.js +4 -0
  339. package/dest/kernel/log_hash.d.ts +6 -2
  340. package/dest/kernel/log_hash.d.ts.map +1 -1
  341. package/dest/kernel/log_hash.js +21 -9
  342. package/dest/kernel/private_circuit_public_inputs.d.ts +10 -10
  343. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  344. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  345. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +4 -4
  346. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  347. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  348. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  349. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  350. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  351. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  352. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  353. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  354. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  355. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  356. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  357. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  358. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  359. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  360. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  361. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  362. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  363. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  364. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  365. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  366. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  367. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  368. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  369. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  370. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  371. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  372. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  373. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  374. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  375. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  376. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  377. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  378. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  379. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  380. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  381. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  382. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  383. package/dest/kernel/private_validation_requests.d.ts +3 -3
  384. package/dest/kernel/private_validation_requests.js +9 -9
  385. package/dest/kernel/public_call_request.d.ts +15 -30
  386. package/dest/kernel/public_call_request.d.ts.map +1 -1
  387. package/dest/kernel/public_call_request.js +16 -7
  388. package/dest/keys/derivation.d.ts +9 -5
  389. package/dest/keys/derivation.d.ts.map +1 -1
  390. package/dest/keys/derivation.js +28 -18
  391. package/dest/keys/key_types.d.ts +3 -3
  392. package/dest/keys/key_types.d.ts.map +1 -1
  393. package/dest/keys/public_key.d.ts +22 -3
  394. package/dest/keys/public_key.d.ts.map +1 -1
  395. package/dest/keys/public_key.js +20 -1
  396. package/dest/keys/public_keys.d.ts +55 -82
  397. package/dest/keys/public_keys.d.ts.map +1 -1
  398. package/dest/keys/public_keys.js +102 -74
  399. package/dest/keys/utils.d.ts +1 -1
  400. package/dest/keys/utils.d.ts.map +1 -1
  401. package/dest/keys/utils.js +8 -4
  402. package/dest/kv-store/config.d.ts +14 -0
  403. package/dest/kv-store/config.d.ts.map +1 -0
  404. package/dest/kv-store/config.js +21 -0
  405. package/dest/kv-store/index.d.ts +2 -0
  406. package/dest/kv-store/index.d.ts.map +1 -0
  407. package/dest/kv-store/index.js +1 -0
  408. package/dest/l1-contracts/index.d.ts +2 -2
  409. package/dest/l1-contracts/index.d.ts.map +1 -1
  410. package/dest/l1-contracts/index.js +1 -1
  411. package/dest/logs/app_tagging_secret.d.ts +46 -0
  412. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  413. package/dest/logs/app_tagging_secret.js +109 -0
  414. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  415. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  416. package/dest/logs/app_tagging_secret_kind.js +17 -0
  417. package/dest/logs/contract_class_log.d.ts +16 -34
  418. package/dest/logs/contract_class_log.d.ts.map +1 -1
  419. package/dest/logs/contract_class_log.js +11 -9
  420. package/dest/logs/debug_log_store.d.ts +30 -0
  421. package/dest/logs/debug_log_store.d.ts.map +1 -0
  422. package/dest/logs/debug_log_store.js +30 -0
  423. package/dest/logs/index.d.ts +9 -7
  424. package/dest/logs/index.d.ts.map +1 -1
  425. package/dest/logs/index.js +8 -6
  426. package/dest/logs/log_cursor.d.ts +51 -0
  427. package/dest/logs/log_cursor.d.ts.map +1 -0
  428. package/dest/logs/log_cursor.js +82 -0
  429. package/dest/logs/log_result.d.ts +54 -0
  430. package/dest/logs/log_result.d.ts.map +1 -0
  431. package/dest/logs/log_result.js +56 -0
  432. package/dest/logs/logs_query.d.ts +82 -0
  433. package/dest/logs/logs_query.d.ts.map +1 -0
  434. package/dest/logs/logs_query.js +50 -0
  435. package/dest/logs/message_context.d.ts +6 -8
  436. package/dest/logs/message_context.d.ts.map +1 -1
  437. package/dest/logs/message_context.js +27 -9
  438. package/dest/logs/pending_tagged_log.d.ts +2 -3
  439. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  440. package/dest/logs/pending_tagged_log.js +2 -2
  441. package/dest/logs/pre_tag.d.ts +14 -22
  442. package/dest/logs/pre_tag.d.ts.map +1 -1
  443. package/dest/logs/pre_tag.js +2 -2
  444. package/dest/logs/private_log.d.ts +8 -13
  445. package/dest/logs/private_log.d.ts.map +1 -1
  446. package/dest/logs/private_log.js +6 -3
  447. package/dest/logs/public_log.d.ts +4 -3
  448. package/dest/logs/public_log.d.ts.map +1 -1
  449. package/dest/logs/public_log.js +2 -1
  450. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  451. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  452. package/dest/logs/query_all_logs_by_tags.js +64 -0
  453. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  454. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  455. package/dest/logs/shared_secret_derivation.js +15 -9
  456. package/dest/logs/siloed_tag.d.ts +12 -9
  457. package/dest/logs/siloed_tag.d.ts.map +1 -1
  458. package/dest/logs/siloed_tag.js +18 -7
  459. package/dest/logs/tag.d.ts +5 -6
  460. package/dest/logs/tag.d.ts.map +1 -1
  461. package/dest/logs/tag.js +5 -1
  462. package/dest/logs/tagging_index_range.d.ts +22 -0
  463. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  464. package/dest/logs/tagging_index_range.js +8 -0
  465. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  466. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  467. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  468. package/dest/messaging/index.d.ts +2 -1
  469. package/dest/messaging/index.d.ts.map +1 -1
  470. package/dest/messaging/index.js +1 -0
  471. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  472. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  473. package/dest/messaging/l1_to_l2_message.js +11 -13
  474. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  475. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  476. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  477. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  478. package/dest/messaging/l2_to_l1_membership.js +133 -30
  479. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  480. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  481. package/dest/messaging/l2_to_l1_message.js +21 -12
  482. package/dest/noir/index.d.ts +5 -3
  483. package/dest/noir/index.d.ts.map +1 -1
  484. package/dest/note/index.d.ts +1 -2
  485. package/dest/note/index.d.ts.map +1 -1
  486. package/dest/note/index.js +0 -1
  487. package/dest/note/note.d.ts +2 -2
  488. package/dest/note/note.d.ts.map +1 -1
  489. package/dest/note/note_dao.d.ts +1 -1
  490. package/dest/note/note_dao.d.ts.map +1 -1
  491. package/dest/note/note_dao.js +1 -4
  492. package/dest/p2p/attestation_utils.d.ts +11 -1
  493. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  494. package/dest/p2p/attestation_utils.js +45 -0
  495. package/dest/p2p/block_proposal.d.ts +32 -15
  496. package/dest/p2p/block_proposal.d.ts.map +1 -1
  497. package/dest/p2p/block_proposal.js +58 -42
  498. package/dest/p2p/checkpoint_attestation.d.ts +16 -9
  499. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  500. package/dest/p2p/checkpoint_attestation.js +23 -24
  501. package/dest/p2p/checkpoint_proposal.d.ts +50 -24
  502. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  503. package/dest/p2p/checkpoint_proposal.js +77 -65
  504. package/dest/p2p/client_type.d.ts +2 -5
  505. package/dest/p2p/client_type.d.ts.map +1 -1
  506. package/dest/p2p/client_type.js +0 -7
  507. package/dest/p2p/consensus_payload.d.ts +32 -17
  508. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  509. package/dest/p2p/consensus_payload.js +47 -21
  510. package/dest/p2p/constants.d.ts +3 -1
  511. package/dest/p2p/constants.d.ts.map +1 -1
  512. package/dest/p2p/constants.js +1 -0
  513. package/dest/p2p/gossipable.d.ts +4 -4
  514. package/dest/p2p/gossipable.d.ts.map +1 -1
  515. package/dest/p2p/index.d.ts +1 -2
  516. package/dest/p2p/index.d.ts.map +1 -1
  517. package/dest/p2p/index.js +0 -1
  518. package/dest/p2p/peer_error.d.ts +3 -1
  519. package/dest/p2p/peer_error.d.ts.map +1 -1
  520. package/dest/p2p/peer_error.js +5 -0
  521. package/dest/p2p/signature_utils.d.ts +28 -19
  522. package/dest/p2p/signature_utils.d.ts.map +1 -1
  523. package/dest/p2p/signature_utils.js +118 -21
  524. package/dest/p2p/signed_txs.d.ts +15 -13
  525. package/dest/p2p/signed_txs.d.ts.map +1 -1
  526. package/dest/p2p/signed_txs.js +26 -24
  527. package/dest/p2p/topic_type.d.ts +3 -4
  528. package/dest/p2p/topic_type.d.ts.map +1 -1
  529. package/dest/p2p/topic_type.js +7 -24
  530. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  531. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  532. package/dest/parity/parity_base_private_inputs.js +7 -5
  533. package/dest/parity/parity_public_inputs.d.ts +8 -4
  534. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  535. package/dest/parity/parity_public_inputs.js +6 -3
  536. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  537. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  538. package/dest/proofs/chonk_proof.d.ts +57 -7
  539. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  540. package/dest/proofs/chonk_proof.js +112 -15
  541. package/dest/proofs/recursive_proof.d.ts +2 -2
  542. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  543. package/dest/rollup/block_headers_hash.d.ts +1 -1
  544. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  545. package/dest/rollup/block_headers_hash.js +8 -2
  546. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  547. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  548. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  549. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  550. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  551. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  552. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  553. package/dest/rollup/checkpoint_header.d.ts +2 -2
  554. package/dest/rollup/checkpoint_header.js +2 -2
  555. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  556. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  557. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  558. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  559. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  560. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  561. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  562. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  563. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  564. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  565. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  566. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  567. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  568. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  569. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  570. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  571. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  572. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  573. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  574. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  575. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  576. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  577. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  578. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  579. package/dest/schemas/schemas.d.ts +32 -78
  580. package/dest/schemas/schemas.d.ts.map +1 -1
  581. package/dest/schemas/schemas.js +2 -2
  582. package/dest/slashing/helpers.d.ts +2 -2
  583. package/dest/slashing/helpers.d.ts.map +1 -1
  584. package/dest/slashing/helpers.js +16 -7
  585. package/dest/slashing/index.d.ts +2 -3
  586. package/dest/slashing/index.d.ts.map +1 -1
  587. package/dest/slashing/index.js +1 -2
  588. package/dest/slashing/serialization.d.ts +2 -6
  589. package/dest/slashing/serialization.d.ts.map +1 -1
  590. package/dest/slashing/serialization.js +0 -60
  591. package/dest/slashing/types.d.ts +21 -111
  592. package/dest/slashing/types.d.ts.map +1 -1
  593. package/dest/slashing/types.js +28 -24
  594. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  595. package/dest/slashing/votes.d.ts.map +1 -0
  596. package/dest/slashing/{tally.js → votes.js} +35 -3
  597. package/dest/snapshots/types.d.ts +15 -78
  598. package/dest/snapshots/types.d.ts.map +1 -1
  599. package/dest/stats/stats.d.ts +2 -2
  600. package/dest/stats/stats.d.ts.map +1 -1
  601. package/dest/tests/factories.d.ts +25 -30
  602. package/dest/tests/factories.d.ts.map +1 -1
  603. package/dest/tests/factories.js +94 -86
  604. package/dest/tests/mocks.d.ts +15 -7
  605. package/dest/tests/mocks.d.ts.map +1 -1
  606. package/dest/tests/mocks.js +68 -70
  607. package/dest/timetable/index.d.ts +84 -0
  608. package/dest/timetable/index.d.ts.map +1 -0
  609. package/dest/timetable/index.js +209 -0
  610. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  611. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  612. package/dest/trees/append_only_tree_snapshot.js +6 -3
  613. package/dest/trees/nullifier_leaf.d.ts +19 -42
  614. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  615. package/dest/trees/nullifier_leaf.js +3 -0
  616. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  617. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  618. package/dest/trees/nullifier_membership_witness.js +2 -14
  619. package/dest/trees/public_data_leaf.d.ts +22 -53
  620. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  621. package/dest/trees/public_data_leaf.js +7 -6
  622. package/dest/trees/public_data_witness.d.ts +16 -58
  623. package/dest/trees/public_data_witness.d.ts.map +1 -1
  624. package/dest/tx/block_header.d.ts +7 -4
  625. package/dest/tx/block_header.d.ts.map +1 -1
  626. package/dest/tx/block_header.js +13 -6
  627. package/dest/tx/call_context.d.ts +4 -14
  628. package/dest/tx/call_context.d.ts.map +1 -1
  629. package/dest/tx/capsule.d.ts +7 -3
  630. package/dest/tx/capsule.d.ts.map +1 -1
  631. package/dest/tx/capsule.js +9 -3
  632. package/dest/tx/fee_provider.d.ts +10 -0
  633. package/dest/tx/fee_provider.d.ts.map +1 -0
  634. package/dest/tx/fee_provider.js +1 -0
  635. package/dest/tx/function_data.d.ts +4 -10
  636. package/dest/tx/function_data.d.ts.map +1 -1
  637. package/dest/tx/global_variable_builder.d.ts +3 -4
  638. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  639. package/dest/tx/global_variables.d.ts +19 -52
  640. package/dest/tx/global_variables.d.ts.map +1 -1
  641. package/dest/tx/global_variables.js +8 -12
  642. package/dest/tx/hashed_values.d.ts +4 -3
  643. package/dest/tx/hashed_values.d.ts.map +1 -1
  644. package/dest/tx/hashed_values.js +6 -3
  645. package/dest/tx/in_tx.d.ts +5 -17
  646. package/dest/tx/in_tx.d.ts.map +1 -1
  647. package/dest/tx/index.d.ts +2 -1
  648. package/dest/tx/index.d.ts.map +1 -1
  649. package/dest/tx/index.js +1 -0
  650. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  651. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  652. package/dest/tx/indexed_tx_effect.js +9 -6
  653. package/dest/tx/partial_state_reference.d.ts +22 -65
  654. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  655. package/dest/tx/partial_state_reference.js +6 -3
  656. package/dest/tx/private_execution_result.d.ts +11 -21
  657. package/dest/tx/private_execution_result.d.ts.map +1 -1
  658. package/dest/tx/private_execution_result.js +6 -6
  659. package/dest/tx/profiling.d.ts +70 -356
  660. package/dest/tx/profiling.d.ts.map +1 -1
  661. package/dest/tx/profiling.js +19 -9
  662. package/dest/tx/protocol_contracts.d.ts +5 -9
  663. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  664. package/dest/tx/protocol_contracts.js +2 -2
  665. package/dest/tx/proven_tx.d.ts +30 -74
  666. package/dest/tx/proven_tx.d.ts.map +1 -1
  667. package/dest/tx/proven_tx.js +6 -0
  668. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  669. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  670. package/dest/tx/public_call_request_with_calldata.js +6 -3
  671. package/dest/tx/public_simulation_output.d.ts +4 -2
  672. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  673. package/dest/tx/public_simulation_output.js +7 -3
  674. package/dest/tx/simulated_tx.d.ts +68 -1144
  675. package/dest/tx/simulated_tx.d.ts.map +1 -1
  676. package/dest/tx/simulated_tx.js +17 -12
  677. package/dest/tx/state_reference.d.ts +30 -117
  678. package/dest/tx/state_reference.d.ts.map +1 -1
  679. package/dest/tx/state_reference.js +6 -4
  680. package/dest/tx/tree_snapshots.d.ts +27 -84
  681. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  682. package/dest/tx/tree_snapshots.js +6 -4
  683. package/dest/tx/tx.d.ts +19 -17
  684. package/dest/tx/tx.d.ts.map +1 -1
  685. package/dest/tx/tx.js +48 -29
  686. package/dest/tx/tx_constant_data.d.ts +4 -3
  687. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  688. package/dest/tx/tx_constant_data.js +6 -3
  689. package/dest/tx/tx_context.d.ts +32 -131
  690. package/dest/tx/tx_context.d.ts.map +1 -1
  691. package/dest/tx/tx_context.js +6 -6
  692. package/dest/tx/tx_hash.d.ts +6 -4
  693. package/dest/tx/tx_hash.d.ts.map +1 -1
  694. package/dest/tx/tx_hash.js +13 -5
  695. package/dest/tx/tx_receipt.d.ts +151 -51
  696. package/dest/tx/tx_receipt.d.ts.map +1 -1
  697. package/dest/tx/tx_receipt.js +145 -51
  698. package/dest/tx/tx_request.js +2 -2
  699. package/dest/tx/validator/empty_validator.d.ts +2 -2
  700. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  701. package/dest/tx/validator/error_texts.d.ts +10 -2
  702. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  703. package/dest/tx/validator/error_texts.js +11 -1
  704. package/dest/tx/validator/tx_validator.d.ts +6 -28
  705. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  706. package/dest/tx/validator/tx_validator.js +0 -4
  707. package/dest/types/shared.d.ts +4 -12
  708. package/dest/types/shared.d.ts.map +1 -1
  709. package/dest/types/shared.js +6 -12
  710. package/dest/update-checker/dev_version.d.ts +3 -0
  711. package/dest/update-checker/dev_version.d.ts.map +1 -0
  712. package/dest/update-checker/dev_version.js +1 -0
  713. package/dest/update-checker/index.d.ts +4 -2
  714. package/dest/update-checker/index.d.ts.map +1 -1
  715. package/dest/update-checker/index.js +3 -1
  716. package/dest/update-checker/package_version.d.ts +6 -0
  717. package/dest/update-checker/package_version.d.ts.map +1 -0
  718. package/dest/update-checker/package_version.js +13 -0
  719. package/dest/update-checker/version_checker.d.ts +25 -0
  720. package/dest/update-checker/version_checker.d.ts.map +1 -0
  721. package/dest/update-checker/version_checker.js +50 -0
  722. package/dest/validators/errors.d.ts +6 -1
  723. package/dest/validators/errors.d.ts.map +1 -1
  724. package/dest/validators/errors.js +7 -0
  725. package/dest/validators/schemas.d.ts +147 -614
  726. package/dest/validators/schemas.d.ts.map +1 -1
  727. package/dest/validators/schemas.js +9 -6
  728. package/dest/validators/types.d.ts +21 -4
  729. package/dest/validators/types.d.ts.map +1 -1
  730. package/dest/versioning/versioning.d.ts +4 -2
  731. package/dest/versioning/versioning.d.ts.map +1 -1
  732. package/dest/versioning/versioning.js +5 -2
  733. package/dest/vks/verification_key.d.ts +4 -139
  734. package/dest/vks/verification_key.d.ts.map +1 -1
  735. package/dest/vks/verification_key.js +5 -126
  736. package/dest/world-state/genesis_data.d.ts +13 -0
  737. package/dest/world-state/genesis_data.d.ts.map +1 -0
  738. package/dest/world-state/genesis_data.js +7 -0
  739. package/dest/world-state/index.d.ts +2 -1
  740. package/dest/world-state/index.d.ts.map +1 -1
  741. package/dest/world-state/index.js +1 -0
  742. package/dest/world-state/world_state_revision.d.ts +15 -26
  743. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  744. package/dest/world-state/world_state_revision.js +7 -1
  745. package/package.json +27 -14
  746. package/src/abi/abi.ts +78 -21
  747. package/src/abi/authorization_selector.ts +2 -8
  748. package/src/abi/buffer.ts +25 -4
  749. package/src/abi/contract_artifact.ts +11 -6
  750. package/src/abi/decoder.ts +36 -82
  751. package/src/abi/encoder.ts +85 -6
  752. package/src/abi/event_metadata_definition.ts +2 -0
  753. package/src/abi/event_selector.ts +2 -8
  754. package/src/abi/function_call.ts +25 -3
  755. package/src/abi/function_selector.ts +4 -13
  756. package/src/abi/function_signature_decoder.ts +77 -0
  757. package/src/abi/index.ts +1 -0
  758. package/src/abi/note_selector.ts +3 -12
  759. package/src/abi/selector.ts +1 -1
  760. package/src/abi/utils.ts +31 -4
  761. package/src/auth_witness/auth_witness.ts +3 -3
  762. package/src/avm/avm.ts +5 -0
  763. package/src/avm/message_pack.ts +12 -3
  764. package/src/avm/revert_code.ts +20 -25
  765. package/src/aztec-address/index.ts +15 -12
  766. package/src/block/attestation_info.ts +11 -11
  767. package/src/block/block_data.ts +25 -0
  768. package/src/block/block_hash.ts +21 -14
  769. package/src/block/block_parameter.ts +72 -4
  770. package/src/block/in_block.ts +1 -1
  771. package/src/block/index.ts +1 -1
  772. package/src/block/l2_block.ts +13 -1
  773. package/src/block/l2_block_info.ts +8 -6
  774. package/src/block/l2_block_source.ts +214 -123
  775. package/src/block/l2_block_stream/interfaces.ts +6 -2
  776. package/src/block/l2_block_stream/l2_block_stream.ts +49 -17
  777. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  778. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  779. package/src/block/proposal/attestations_and_signers.ts +32 -17
  780. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  781. package/src/checkpoint/checkpoint.ts +54 -17
  782. package/src/checkpoint/checkpoint_data.ts +91 -0
  783. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  784. package/src/checkpoint/digest.ts +28 -0
  785. package/src/checkpoint/index.ts +5 -0
  786. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  787. package/src/checkpoint/published_checkpoint.ts +3 -1
  788. package/src/checkpoint/validate.ts +230 -0
  789. package/src/config/chain-config.ts +13 -16
  790. package/src/config/index.ts +1 -0
  791. package/src/config/sequencer-config.ts +65 -0
  792. package/src/contract/complete_address.ts +7 -3
  793. package/src/contract/contract_address.ts +10 -10
  794. package/src/contract/contract_class.ts +3 -3
  795. package/src/contract/contract_class_id.ts +7 -6
  796. package/src/contract/contract_instance.ts +11 -2
  797. package/src/contract/index.ts +0 -2
  798. package/src/contract/interfaces/contract_class.ts +2 -82
  799. package/src/contract/interfaces/contract_instance.ts +6 -2
  800. package/src/contract/interfaces/node-info.ts +3 -0
  801. package/src/contract/private_function.ts +5 -3
  802. package/src/database-version/version_manager.ts +17 -0
  803. package/src/epoch-helpers/index.ts +30 -0
  804. package/src/file-store/factory.ts +13 -4
  805. package/src/file-store/http.ts +29 -10
  806. package/src/file-store/index.ts +1 -0
  807. package/src/file-store/local.ts +15 -5
  808. package/src/file-store/s3.ts +12 -3
  809. package/src/gas/README.md +154 -0
  810. package/src/gas/fee_math.ts +120 -0
  811. package/src/gas/gas.ts +8 -3
  812. package/src/gas/gas_fees.ts +29 -10
  813. package/src/gas/gas_settings.ts +73 -15
  814. package/src/gas/index.ts +1 -0
  815. package/src/ha-signing/config.ts +152 -0
  816. package/src/ha-signing/index.ts +29 -0
  817. package/src/ha-signing/local_config.ts +46 -0
  818. package/src/ha-signing/types.ts +126 -0
  819. package/src/hash/hash.ts +76 -11
  820. package/src/hash/map_slot.ts +2 -2
  821. package/src/interfaces/allowed_element.ts +29 -9
  822. package/src/interfaces/api_limit.ts +1 -1
  823. package/src/interfaces/archiver.ts +90 -88
  824. package/src/interfaces/aztec-node-admin.ts +57 -18
  825. package/src/interfaces/aztec-node-debug.ts +40 -0
  826. package/src/interfaces/aztec-node.ts +344 -266
  827. package/src/interfaces/block-builder.ts +63 -14
  828. package/src/interfaces/block_response.ts +92 -0
  829. package/src/interfaces/chain_tips.ts +24 -0
  830. package/src/interfaces/checkpoint_parameter.ts +20 -0
  831. package/src/interfaces/checkpoint_response.ts +84 -0
  832. package/src/interfaces/client.ts +7 -1
  833. package/src/interfaces/configs.ts +75 -8
  834. package/src/interfaces/l1_publish_info.ts +40 -0
  835. package/src/interfaces/l2_logs_source.ts +13 -39
  836. package/src/interfaces/merkle_tree_operations.ts +12 -21
  837. package/src/interfaces/p2p-bootstrap.ts +2 -2
  838. package/src/interfaces/p2p.ts +38 -29
  839. package/src/interfaces/private_kernel_prover.ts +88 -0
  840. package/src/interfaces/prover-agent.ts +1 -1
  841. package/src/interfaces/prover-broker.ts +22 -0
  842. package/src/interfaces/prover-client.ts +17 -5
  843. package/src/interfaces/prover-node.ts +7 -7
  844. package/src/interfaces/proving-job-source.ts +4 -4
  845. package/src/interfaces/proving-job.ts +3 -3
  846. package/src/interfaces/public_storage_override.ts +26 -0
  847. package/src/interfaces/server.ts +5 -0
  848. package/src/interfaces/slasher.ts +21 -10
  849. package/src/interfaces/tx_provider.ts +6 -0
  850. package/src/interfaces/validator.ts +87 -36
  851. package/src/interfaces/world_state.ts +5 -4
  852. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  853. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  854. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  855. package/src/kernel/hints/index.ts +2 -2
  856. package/src/kernel/hints/key_validation_request.ts +18 -16
  857. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  858. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  859. package/src/kernel/index.ts +4 -0
  860. package/src/kernel/log_hash.ts +29 -9
  861. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  862. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  863. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  864. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  865. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  866. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  867. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  868. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  869. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  870. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  871. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  872. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  873. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  874. package/src/kernel/private_validation_requests.ts +8 -8
  875. package/src/kernel/public_call_request.ts +22 -7
  876. package/src/keys/derivation.ts +33 -21
  877. package/src/keys/key_types.ts +6 -2
  878. package/src/keys/public_key.ts +26 -2
  879. package/src/keys/public_keys.ts +125 -111
  880. package/src/keys/utils.ts +8 -4
  881. package/src/kv-store/config.ts +29 -0
  882. package/src/kv-store/index.ts +1 -0
  883. package/src/l1-contracts/index.ts +1 -1
  884. package/src/logs/app_tagging_secret.ts +137 -0
  885. package/src/logs/app_tagging_secret_kind.ts +21 -0
  886. package/src/logs/contract_class_log.ts +15 -5
  887. package/src/logs/debug_log_store.ts +54 -0
  888. package/src/logs/index.ts +8 -6
  889. package/src/logs/log_cursor.ts +110 -0
  890. package/src/logs/log_result.ts +104 -0
  891. package/src/logs/logs_query.ts +138 -0
  892. package/src/logs/message_context.ts +22 -8
  893. package/src/logs/pending_tagged_log.ts +1 -3
  894. package/src/logs/pre_tag.ts +3 -6
  895. package/src/logs/private_log.ts +9 -3
  896. package/src/logs/public_log.ts +4 -2
  897. package/src/logs/query_all_logs_by_tags.ts +98 -0
  898. package/src/logs/shared_secret_derivation.ts +21 -10
  899. package/src/logs/siloed_tag.ts +28 -14
  900. package/src/logs/tag.ts +9 -9
  901. package/src/logs/tagging_index_range.ts +18 -0
  902. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  903. package/src/messaging/index.ts +1 -0
  904. package/src/messaging/l1_to_l2_message.ts +12 -9
  905. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  906. package/src/messaging/l2_to_l1_membership.ts +192 -38
  907. package/src/messaging/l2_to_l1_message.ts +29 -9
  908. package/src/noir/index.ts +4 -2
  909. package/src/note/index.ts +0 -1
  910. package/src/note/note_dao.ts +1 -4
  911. package/src/p2p/attestation_utils.ts +56 -0
  912. package/src/p2p/block_proposal.ts +112 -39
  913. package/src/p2p/checkpoint_attestation.ts +33 -32
  914. package/src/p2p/checkpoint_proposal.ts +159 -86
  915. package/src/p2p/client_type.ts +0 -6
  916. package/src/p2p/consensus_payload.ts +68 -24
  917. package/src/p2p/constants.ts +3 -0
  918. package/src/p2p/gossipable.ts +4 -4
  919. package/src/p2p/index.ts +0 -1
  920. package/src/p2p/peer_error.ts +7 -0
  921. package/src/p2p/signature_utils.ts +110 -25
  922. package/src/p2p/signed_txs.ts +46 -28
  923. package/src/p2p/topic_type.ts +8 -15
  924. package/src/parity/parity_base_private_inputs.ts +10 -4
  925. package/src/parity/parity_public_inputs.ts +9 -2
  926. package/src/proofs/chonk_proof.ts +132 -12
  927. package/src/rollup/block_headers_hash.ts +11 -2
  928. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  929. package/src/rollup/checkpoint_header.ts +2 -2
  930. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  931. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  932. package/src/schemas/schemas.ts +6 -1
  933. package/src/slashing/helpers.ts +21 -9
  934. package/src/slashing/index.ts +1 -2
  935. package/src/slashing/serialization.ts +1 -81
  936. package/src/slashing/types.ts +38 -49
  937. package/src/slashing/{tally.ts → votes.ts} +41 -2
  938. package/src/stats/stats.ts +4 -0
  939. package/src/tests/factories.ts +120 -119
  940. package/src/tests/mocks.ts +106 -84
  941. package/src/timetable/index.ts +304 -0
  942. package/src/trees/append_only_tree_snapshot.ts +8 -3
  943. package/src/trees/nullifier_leaf.ts +4 -0
  944. package/src/trees/nullifier_membership_witness.ts +2 -12
  945. package/src/trees/public_data_leaf.ts +11 -5
  946. package/src/tx/block_header.ts +18 -7
  947. package/src/tx/capsule.ts +10 -2
  948. package/src/tx/fee_provider.ts +10 -0
  949. package/src/tx/global_variable_builder.ts +2 -3
  950. package/src/tx/global_variables.ts +13 -21
  951. package/src/tx/hashed_values.ts +8 -3
  952. package/src/tx/index.ts +1 -0
  953. package/src/tx/indexed_tx_effect.ts +18 -6
  954. package/src/tx/partial_state_reference.ts +8 -3
  955. package/src/tx/private_execution_result.ts +5 -5
  956. package/src/tx/profiling.ts +18 -9
  957. package/src/tx/protocol_contracts.ts +2 -2
  958. package/src/tx/proven_tx.ts +6 -0
  959. package/src/tx/public_call_request_with_calldata.ts +8 -3
  960. package/src/tx/public_simulation_output.ts +4 -0
  961. package/src/tx/simulated_tx.ts +30 -22
  962. package/src/tx/state_reference.ts +9 -4
  963. package/src/tx/tree_snapshots.ts +9 -4
  964. package/src/tx/tx.ts +63 -35
  965. package/src/tx/tx_constant_data.ts +8 -3
  966. package/src/tx/tx_context.ts +8 -3
  967. package/src/tx/tx_hash.ts +20 -5
  968. package/src/tx/tx_receipt.ts +269 -74
  969. package/src/tx/tx_request.ts +2 -2
  970. package/src/tx/validator/empty_validator.ts +1 -1
  971. package/src/tx/validator/error_texts.ts +13 -1
  972. package/src/tx/validator/tx_validator.ts +2 -6
  973. package/src/types/shared.ts +8 -13
  974. package/src/update-checker/dev_version.ts +2 -0
  975. package/src/update-checker/index.ts +3 -1
  976. package/src/update-checker/package_version.ts +17 -0
  977. package/src/update-checker/version_checker.ts +65 -0
  978. package/src/validators/errors.ts +9 -0
  979. package/src/validators/schemas.ts +13 -4
  980. package/src/validators/types.ts +25 -5
  981. package/src/versioning/versioning.ts +5 -2
  982. package/src/vks/verification_key.ts +5 -184
  983. package/src/world-state/genesis_data.ts +27 -0
  984. package/src/world-state/index.ts +1 -0
  985. package/src/world-state/world_state_revision.ts +9 -1
  986. package/dest/abi/mocked_keys.d.ts +0 -2
  987. package/dest/abi/mocked_keys.d.ts.map +0 -1
  988. package/dest/abi/mocked_keys.js +0 -1
  989. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  990. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  991. package/dest/block/checkpointed_l2_block.js +0 -46
  992. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  993. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  994. package/dest/contract/private_function_membership_proof.js +0 -124
  995. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  996. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  997. package/dest/contract/utility_function_membership_proof.js +0 -87
  998. package/dest/interfaces/get_logs_response.d.ts +0 -90
  999. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1000. package/dest/interfaces/get_logs_response.js +0 -12
  1001. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1002. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1003. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1004. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1005. package/dest/l1-contracts/slash_factory.js +0 -158
  1006. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1007. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1008. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1009. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1010. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1011. package/dest/logs/extended_contract_class_log.js +0 -67
  1012. package/dest/logs/extended_public_log.d.ts +0 -100
  1013. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1014. package/dest/logs/extended_public_log.js +0 -73
  1015. package/dest/logs/log_filter.d.ts +0 -22
  1016. package/dest/logs/log_filter.d.ts.map +0 -1
  1017. package/dest/logs/log_filter.js +0 -11
  1018. package/dest/logs/log_id.d.ts +0 -82
  1019. package/dest/logs/log_id.d.ts.map +0 -1
  1020. package/dest/logs/log_id.js +0 -92
  1021. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1022. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1023. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1024. package/dest/note/notes_filter.d.ts +0 -27
  1025. package/dest/note/notes_filter.d.ts.map +0 -1
  1026. package/dest/note/notes_filter.js +0 -11
  1027. package/dest/slashing/empire.d.ts +0 -31
  1028. package/dest/slashing/empire.d.ts.map +0 -1
  1029. package/dest/slashing/empire.js +0 -85
  1030. package/dest/slashing/tally.d.ts.map +0 -1
  1031. package/dest/update-checker/update-checker.d.ts +0 -49
  1032. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1033. package/dest/update-checker/update-checker.js +0 -130
  1034. package/src/abi/mocked_keys.ts +0 -2
  1035. package/src/block/checkpointed_l2_block.ts +0 -70
  1036. package/src/contract/private_function_membership_proof.ts +0 -167
  1037. package/src/contract/utility_function_membership_proof.ts +0 -118
  1038. package/src/interfaces/get_logs_response.ts +0 -35
  1039. package/src/l1-contracts/slash_factory.ts +0 -180
  1040. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1041. package/src/logs/extended_contract_class_log.ts +0 -87
  1042. package/src/logs/extended_public_log.ts +0 -94
  1043. package/src/logs/log_filter.ts +0 -31
  1044. package/src/logs/log_id.ts +0 -122
  1045. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1046. package/src/note/notes_filter.ts +0 -38
  1047. package/src/slashing/empire.ts +0 -102
  1048. package/src/update-checker/update-checker.ts +0 -166
@@ -33,3 +33,59 @@ export function orderAttestations(
33
33
 
34
34
  return orderedAttestations;
35
35
  }
36
+
37
+ /**
38
+ * Trims attestations to the minimum required number to save L1 calldata gas.
39
+ * Each signature costs 65 bytes of calldata vs 20 bytes for just an address.
40
+ *
41
+ * Priority order for keeping attestations:
42
+ * 1. The proposer's attestation (required by L1 contract - MissingProposerSignature revert)
43
+ * 2. Attestations from the local node's validator keys
44
+ * 3. Remaining attestations filled to reach the required count
45
+ */
46
+ export function trimAttestations(
47
+ attestations: CheckpointAttestation[],
48
+ required: number,
49
+ proposerAddress: EthAddress,
50
+ localAddresses: EthAddress[],
51
+ ): CheckpointAttestation[] {
52
+ if (attestations.length <= required) {
53
+ return attestations;
54
+ }
55
+
56
+ const proposerAttestation: CheckpointAttestation[] = [];
57
+ const localAttestations: CheckpointAttestation[] = [];
58
+ const otherAttestations: CheckpointAttestation[] = [];
59
+
60
+ for (const attestation of attestations) {
61
+ const sender = attestation.getSender();
62
+ if (!sender) {
63
+ continue;
64
+ }
65
+ if (sender.equals(proposerAddress)) {
66
+ proposerAttestation.push(attestation);
67
+ } else if (localAddresses.some(addr => addr.equals(sender))) {
68
+ localAttestations.push(attestation);
69
+ } else {
70
+ otherAttestations.push(attestation);
71
+ }
72
+ }
73
+
74
+ const result: CheckpointAttestation[] = [...proposerAttestation];
75
+
76
+ for (const att of localAttestations) {
77
+ if (result.length >= required) {
78
+ break;
79
+ }
80
+ result.push(att);
81
+ }
82
+
83
+ for (const att of otherAttestations) {
84
+ if (result.length >= required) {
85
+ break;
86
+ }
87
+ result.push(att);
88
+ }
89
+
90
+ return result;
91
+ }
@@ -1,33 +1,42 @@
1
- import { BlockNumber, IndexWithinCheckpoint, SlotNumber } from '@aztec/foundation/branded-types';
2
- import { Buffer32 } from '@aztec/foundation/buffer';
1
+ import {
2
+ BlockNumber,
3
+ BlockProposalHash,
4
+ type CheckpointNumber,
5
+ IndexWithinCheckpoint,
6
+ SlotNumber,
7
+ } from '@aztec/foundation/branded-types';
8
+ import { type BaseBuffer32, Buffer32 } from '@aztec/foundation/buffer';
3
9
  import { keccak256 } from '@aztec/foundation/crypto/keccak';
4
- import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
5
10
  import { Fr } from '@aztec/foundation/curves/bn254';
6
11
  import type { EthAddress } from '@aztec/foundation/eth-address';
7
12
  import { Signature } from '@aztec/foundation/eth-signature';
8
13
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
9
- import { DutyType, type SigningContext } from '@aztec/validator-ha-signer/types';
14
+
15
+ import type { TypedDataDefinition } from 'viem';
10
16
 
11
17
  import type { L2Block } from '../block/l2_block.js';
12
18
  import type { L2BlockInfo } from '../block/l2_block_info.js';
13
19
  import { MAX_TXS_PER_BLOCK } from '../deserialization/index.js';
20
+ import { DutyType, type SigningContext } from '../ha-signing/index.js';
14
21
  import { BlockHeader } from '../tx/block_header.js';
15
22
  import { TxHash } from '../tx/index.js';
16
23
  import type { Tx } from '../tx/tx.js';
17
24
  import { Gossipable } from './gossipable.js';
18
25
  import {
19
- SignatureDomainSeparator,
20
- getHashedSignaturePayload,
21
- getHashedSignaturePayloadEthSignedMessage,
26
+ type CoordinationSignatureContext,
27
+ type CoordinationSignatureType,
28
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
29
+ type Signable,
30
+ coordinationSignatureContextEquals,
31
+ getCoordinationSignatureTypedData,
32
+ readCoordinationSignatureContext,
33
+ recoverCoordinationSigner,
34
+ serializeCoordinationSignatureContext,
22
35
  } from './signature_utils.js';
23
36
  import { SignedTxs } from './signed_txs.js';
24
37
  import { TopicType } from './topic_type.js';
25
38
 
26
- export class BlockProposalHash extends Buffer32 {
27
- constructor(hash: Buffer) {
28
- super(hash);
29
- }
30
- }
39
+ export type { BlockProposalHash } from '@aztec/foundation/branded-types';
31
40
 
32
41
  export type BlockProposalOptions = {
33
42
  /**
@@ -47,17 +56,17 @@ export type BlockProposalOptions = {
47
56
  * to be included in a block within a checkpoint. This is used for non-last blocks in a slot.
48
57
  * The last block is sent as part of a CheckpointProposal.
49
58
  */
50
- export class BlockProposal extends Gossipable {
59
+ export class BlockProposal extends Gossipable implements Signable {
51
60
  static override p2pTopic = TopicType.block_proposal;
52
61
 
53
- private sender: EthAddress | undefined;
62
+ readonly primaryType: CoordinationSignatureType = 'BlockProposal';
63
+
64
+ private cachedSender: EthAddress | undefined | null = undefined;
54
65
 
55
66
  constructor(
56
67
  /** The per-block header containing block state and global variables */
57
68
  public readonly blockHeader: BlockHeader,
58
69
 
59
- // TODO(palla/mbps): Is this really needed? Can we just derive it from the indexWithinCheckpoint of the parent block and the slot number?
60
- // See the block-proposal-handler, we have a lot of extra validations to check this is correct, so maybe we can avoid storing it here.
61
70
  /** Index of this block within the checkpoint (0-indexed) */
62
71
  public readonly indexWithinCheckpoint: IndexWithinCheckpoint,
63
72
 
@@ -73,14 +82,17 @@ export class BlockProposal extends Gossipable {
73
82
  /** The proposer's signature over the block data */
74
83
  public readonly signature: Signature,
75
84
 
85
+ /** The signing domain (chainId + rollupAddress) the signature is bound to */
86
+ public readonly signatureContext: CoordinationSignatureContext,
87
+
76
88
  /** The signed transactions in the block (optional, for DA guarantees) */
77
89
  public readonly signedTxs?: SignedTxs,
78
90
  ) {
79
91
  super();
80
92
  }
81
93
 
82
- override generateP2PMessageIdentifier(): Promise<Buffer32> {
83
- return Promise.resolve(new BlockProposalHash(keccak256(this.signature.toBuffer())));
94
+ override generateP2PMessageIdentifier(): Promise<BaseBuffer32> {
95
+ return Promise.resolve(new Buffer32(this.getPayloadHashBuffer()));
84
96
  }
85
97
 
86
98
  get archive(): Fr {
@@ -114,9 +126,8 @@ export class BlockProposal extends Gossipable {
114
126
  * Get the payload to sign for this block proposal.
115
127
  * The signature is over: blockHeader + indexWithinCheckpoint + inHash + archiveRoot + txHashes
116
128
  */
117
- getPayloadToSign(domainSeparator: SignatureDomainSeparator): Buffer {
129
+ getPayloadToSign(): Buffer {
118
130
  return serializeToBuffer([
119
- domainSeparator,
120
131
  this.blockHeader,
121
132
  this.indexWithinCheckpoint,
122
133
  this.inHash,
@@ -126,14 +137,32 @@ export class BlockProposal extends Gossipable {
126
137
  ]);
127
138
  }
128
139
 
140
+ private getPayloadHashBuffer(): Buffer {
141
+ return keccak256(this.getPayloadToSign());
142
+ }
143
+
144
+ /**
145
+ * Returns a keccak256 hash of the signed payload.
146
+ * Used by the attestation pool to dedup distinct signed payloads at the same
147
+ * (slot, indexWithinCheckpoint) regardless of archive collisions.
148
+ * The hash deliberately excludes the signature so non-deterministic ECDSA
149
+ * re-signs of the same payload do not look like equivocation.
150
+ */
151
+ getPayloadHash(): BlockProposalHash {
152
+ return BlockProposalHash.fromBuffer(this.getPayloadHashBuffer());
153
+ }
154
+
129
155
  static async createProposalFromSigner(
130
156
  blockHeader: BlockHeader,
157
+ checkpointNumber: CheckpointNumber,
131
158
  indexWithinCheckpoint: IndexWithinCheckpoint,
132
159
  inHash: Fr,
133
160
  archiveRoot: Fr,
134
161
  txHashes: TxHash[],
135
162
  txs: Tx[] | undefined,
136
- payloadSigner: (payload: Buffer32, context: SigningContext) => Promise<Signature>,
163
+ signatureContext: CoordinationSignatureContext,
164
+ proposalSigner: (typedData: TypedDataDefinition, context: SigningContext) => Promise<Signature>,
165
+ txsSigner?: (typedData: TypedDataDefinition, context: SigningContext) => Promise<Signature>,
137
166
  ): Promise<BlockProposal> {
138
167
  // Create a temporary proposal to get the payload to sign
139
168
  const tempProposal = new BlockProposal(
@@ -143,57 +172,76 @@ export class BlockProposal extends Gossipable {
143
172
  archiveRoot,
144
173
  txHashes,
145
174
  Signature.empty(),
175
+ signatureContext,
146
176
  );
147
177
 
148
178
  // Create the block signing context
149
179
  const blockContext: SigningContext = {
150
180
  slot: blockHeader.globalVariables.slotNumber,
151
181
  blockNumber: blockHeader.globalVariables.blockNumber,
182
+ checkpointNumber,
152
183
  blockIndexWithinCheckpoint: indexWithinCheckpoint,
153
184
  dutyType: DutyType.BLOCK_PROPOSAL,
154
185
  };
155
186
 
156
- const hashed = getHashedSignaturePayload(tempProposal, SignatureDomainSeparator.blockProposal);
157
- const sig = await payloadSigner(hashed, blockContext);
187
+ const typedData = getCoordinationSignatureTypedData(tempProposal);
188
+ const sig = await proposalSigner(typedData, blockContext);
158
189
 
159
190
  // If txs are provided, sign them as well
160
191
  let signedTxs: SignedTxs | undefined;
161
192
  if (txs) {
162
193
  const txsSigningContext: SigningContext = { dutyType: DutyType.TXS };
163
- const txsSigner = (payload: Buffer32) => payloadSigner(payload, txsSigningContext);
164
- signedTxs = await SignedTxs.createFromSigner(txs, txsSigner);
194
+ if (!txsSigner) {
195
+ throw new Error('signed_txs requires a typed-data signer');
196
+ }
197
+ signedTxs = await SignedTxs.createFromSigner(txs, signatureContext, typedData =>
198
+ txsSigner(typedData, txsSigningContext),
199
+ );
165
200
  }
166
201
 
167
- return new BlockProposal(blockHeader, indexWithinCheckpoint, inHash, archiveRoot, txHashes, sig, signedTxs);
202
+ return new BlockProposal(
203
+ blockHeader,
204
+ indexWithinCheckpoint,
205
+ inHash,
206
+ archiveRoot,
207
+ txHashes,
208
+ sig,
209
+ signatureContext,
210
+ signedTxs,
211
+ );
168
212
  }
169
213
 
170
214
  /**
171
215
  * Lazily evaluate the sender of the proposal; result is cached.
172
- * If there's signedTxs, also verifies the signedTxs sender matches the block proposal sender.
173
- * @returns The sender address, or undefined if signature recovery fails or senders don't match
216
+ * If there's signedTxs, also verifies that its signing domain matches this proposal's and
217
+ * that the signedTxs sender matches the block proposal sender. This prevents a proposer
218
+ * from wrapping a foreign-chain SignedTxs bundle inside a local-chain proposal.
219
+ * @returns The sender address, or undefined if signature recovery fails or inner/outer mismatch
174
220
  */
175
221
  getSender(): EthAddress | undefined {
176
- if (!this.sender) {
177
- const hashed = getHashedSignaturePayloadEthSignedMessage(this, SignatureDomainSeparator.blockProposal);
178
- const blockSender = tryRecoverAddress(hashed, this.signature);
222
+ if (this.cachedSender === undefined) {
223
+ const blockSender = recoverCoordinationSigner(this, this.signature);
179
224
 
180
- // If there's signedTxs, verify the sender matches
181
225
  if (blockSender && this.signedTxs) {
226
+ if (!coordinationSignatureContextEquals(this.signedTxs.signatureContext, this.signatureContext)) {
227
+ this.cachedSender = null;
228
+ return undefined;
229
+ }
182
230
  const txsSender = this.signedTxs.getSender();
183
231
  if (!txsSender || !txsSender.equals(blockSender)) {
184
- return undefined; // Sender mismatch - fail
232
+ this.cachedSender = null;
233
+ return undefined;
185
234
  }
186
235
  }
187
236
 
188
- // Cache the sender for later use
189
- this.sender = blockSender;
237
+ this.cachedSender = blockSender ?? null;
190
238
  }
191
239
 
192
- return this.sender;
240
+ return this.cachedSender ?? undefined;
193
241
  }
194
242
 
195
243
  getPayload() {
196
- return this.getPayloadToSign(SignatureDomainSeparator.blockProposal);
244
+ return this.getPayloadToSign();
197
245
  }
198
246
 
199
247
  toBuffer(): Buffer {
@@ -203,6 +251,7 @@ export class BlockProposal extends Gossipable {
203
251
  this.inHash,
204
252
  this.archiveRoot,
205
253
  this.signature,
254
+ serializeCoordinationSignatureContext(this.signatureContext),
206
255
  this.txHashes.length,
207
256
  this.txHashes,
208
257
  ];
@@ -223,6 +272,7 @@ export class BlockProposal extends Gossipable {
223
272
  const inHash = reader.readObject(Fr);
224
273
  const archiveRoot = reader.readObject(Fr);
225
274
  const signature = reader.readObject(Signature);
275
+ const signatureContext = readCoordinationSignatureContext(reader);
226
276
  const txHashCount = reader.readNumber();
227
277
  if (txHashCount > MAX_TXS_PER_BLOCK) {
228
278
  throw new Error(`txHashes count ${txHashCount} exceeds maximum ${MAX_TXS_PER_BLOCK}`);
@@ -240,12 +290,21 @@ export class BlockProposal extends Gossipable {
240
290
  archiveRoot,
241
291
  txHashes,
242
292
  signature,
293
+ signatureContext,
243
294
  signedTxs,
244
295
  );
245
296
  }
246
297
  }
247
298
 
248
- return new BlockProposal(blockHeader, indexWithinCheckpoint, inHash, archiveRoot, txHashes, signature);
299
+ return new BlockProposal(
300
+ blockHeader,
301
+ indexWithinCheckpoint,
302
+ inHash,
303
+ archiveRoot,
304
+ txHashes,
305
+ signature,
306
+ signatureContext,
307
+ );
249
308
  }
250
309
 
251
310
  getSize(): number {
@@ -255,6 +314,8 @@ export class BlockProposal extends Gossipable {
255
314
  this.inHash.size +
256
315
  this.archiveRoot.size +
257
316
  this.signature.getSize() +
317
+ 4 /* chainId */ +
318
+ 20 /* rollupAddress */ +
258
319
  4 /* txHashes.length */ +
259
320
  this.txHashes.length * TxHash.SIZE +
260
321
  4 /* hasSignedTxs flag */ +
@@ -263,7 +324,15 @@ export class BlockProposal extends Gossipable {
263
324
  }
264
325
 
265
326
  static empty(): BlockProposal {
266
- return new BlockProposal(BlockHeader.empty(), IndexWithinCheckpoint(0), Fr.ZERO, Fr.ZERO, [], Signature.empty());
327
+ return new BlockProposal(
328
+ BlockHeader.empty(),
329
+ IndexWithinCheckpoint(0),
330
+ Fr.ZERO,
331
+ Fr.ZERO,
332
+ [],
333
+ Signature.empty(),
334
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
335
+ );
267
336
  }
268
337
 
269
338
  static random(): BlockProposal {
@@ -274,6 +343,7 @@ export class BlockProposal extends Gossipable {
274
343
  Fr.random(),
275
344
  [TxHash.random(), TxHash.random()],
276
345
  Signature.random(),
346
+ EMPTY_COORDINATION_SIGNATURE_CONTEXT,
277
347
  );
278
348
  }
279
349
 
@@ -285,6 +355,8 @@ export class BlockProposal extends Gossipable {
285
355
  archiveRoot: this.archiveRoot.toString(),
286
356
  signature: this.signature.toString(),
287
357
  txHashes: this.txHashes.map(h => h.toString()),
358
+ chainId: this.signatureContext.chainId,
359
+ rollupAddress: this.signatureContext.rollupAddress.toString(),
288
360
  };
289
361
  }
290
362
 
@@ -310,6 +382,7 @@ export class BlockProposal extends Gossipable {
310
382
  this.archiveRoot,
311
383
  this.txHashes,
312
384
  this.signature,
385
+ this.signatureContext,
313
386
  );
314
387
  }
315
388
  }
@@ -1,7 +1,5 @@
1
- import { SlotNumber } from '@aztec/foundation/branded-types';
2
- import { Buffer32 } from '@aztec/foundation/buffer';
3
- import { keccak256 } from '@aztec/foundation/crypto/keccak';
4
- import { tryRecoverAddress } from '@aztec/foundation/crypto/secp256k1-signer';
1
+ import { CheckpointProposalHash, type SlotNumber } from '@aztec/foundation/branded-types';
2
+ import { type BaseBuffer32, Buffer32 } from '@aztec/foundation/buffer';
5
3
  import type { Fr } from '@aztec/foundation/curves/bn254';
6
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
7
5
  import { Signature } from '@aztec/foundation/eth-signature';
@@ -13,15 +11,9 @@ import type { ZodFor } from '../schemas/index.js';
13
11
  import { CheckpointProposal } from './checkpoint_proposal.js';
14
12
  import { ConsensusPayload } from './consensus_payload.js';
15
13
  import { Gossipable } from './gossipable.js';
16
- import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from './signature_utils.js';
14
+ import { type CoordinationSignatureContext, recoverCoordinationSigner } from './signature_utils.js';
17
15
  import { TopicType } from './topic_type.js';
18
16
 
19
- export class CheckpointAttestationHash extends Buffer32 {
20
- constructor(hash: Buffer) {
21
- super(hash);
22
- }
23
- }
24
-
25
17
  /**
26
18
  * CheckpointAttestation
27
19
  *
@@ -31,8 +23,8 @@ export class CheckpointAttestationHash extends Buffer32 {
31
23
  export class CheckpointAttestation extends Gossipable {
32
24
  static override p2pTopic = TopicType.checkpoint_attestation;
33
25
 
34
- private sender: EthAddress | undefined;
35
- private proposer: EthAddress | undefined;
26
+ private cachedSender: EthAddress | undefined | null = undefined;
27
+ private cachedProposer: EthAddress | undefined | null = undefined;
36
28
 
37
29
  constructor(
38
30
  /** The payload of the message, and what the signature is over */
@@ -57,8 +49,8 @@ export class CheckpointAttestation extends Gossipable {
57
49
  .transform(obj => new CheckpointAttestation(obj.payload, obj.signature, obj.proposerSignature));
58
50
  }
59
51
 
60
- override generateP2PMessageIdentifier(): Promise<Buffer32> {
61
- return Promise.resolve(new CheckpointAttestationHash(keccak256(this.signature.toBuffer())));
52
+ override generateP2PMessageIdentifier(): Promise<BaseBuffer32> {
53
+ return Promise.resolve(new Buffer32(this.payload.getPayloadHash()));
62
54
  }
63
55
 
64
56
  get archive(): Fr {
@@ -69,22 +61,19 @@ export class CheckpointAttestation extends Gossipable {
69
61
  return this.payload.header.slotNumber;
70
62
  }
71
63
 
64
+ get signatureContext(): CoordinationSignatureContext {
65
+ return this.payload.signatureContext;
66
+ }
67
+
72
68
  /**
73
69
  * Lazily evaluate and cache the signer of the attestation
74
70
  * @returns The signer of the attestation, or undefined if signature recovery fails
75
71
  */
76
72
  getSender(): EthAddress | undefined {
77
- if (!this.sender) {
78
- // Recover the sender from the attestation
79
- const hashed = getHashedSignaturePayloadEthSignedMessage(
80
- this.payload,
81
- SignatureDomainSeparator.checkpointAttestation,
82
- );
83
- // Cache the sender for later use
84
- this.sender = tryRecoverAddress(hashed, this.signature);
73
+ if (this.cachedSender === undefined) {
74
+ this.cachedSender = recoverCoordinationSigner(this.payload, this.signature) ?? null;
85
75
  }
86
-
87
- return this.sender;
76
+ return this.cachedSender ?? undefined;
88
77
  }
89
78
 
90
79
  /**
@@ -92,20 +81,32 @@ export class CheckpointAttestation extends Gossipable {
92
81
  * @returns The proposer of the checkpoint
93
82
  */
94
83
  getProposer(): EthAddress | undefined {
95
- if (!this.proposer) {
84
+ if (this.cachedProposer === undefined) {
96
85
  // Create a temporary CheckpointProposal to recover the proposer address.
97
86
  // We need to use CheckpointProposal because it has a different getPayloadToSign()
98
87
  // implementation than ConsensusPayload (uses serializeToBuffer vs ABI encoding).
99
- const proposal = new CheckpointProposal(this.payload.header, this.payload.archive, this.proposerSignature);
100
- // Cache the proposer for later use
101
- this.proposer = proposal.getSender();
88
+ const proposal = new CheckpointProposal(
89
+ this.payload.header,
90
+ this.payload.archive,
91
+ this.payload.feeAssetPriceModifier,
92
+ this.proposerSignature,
93
+ this.payload.signatureContext,
94
+ );
95
+ this.cachedProposer = proposal.getSender() ?? null;
102
96
  }
103
-
104
- return this.proposer;
97
+ return this.cachedProposer ?? undefined;
105
98
  }
106
99
 
107
100
  getPayload(): Buffer {
108
- return this.payload.getPayloadToSign(SignatureDomainSeparator.checkpointAttestation);
101
+ return this.payload.getPayloadToSign();
102
+ }
103
+
104
+ /**
105
+ * Returns a keccak256 hash of the signed consensus payload.
106
+ * Used to dedup distinct signed payloads. Returns same hash than the corresponding proposal.
107
+ */
108
+ getPayloadHash(): CheckpointProposalHash {
109
+ return CheckpointProposalHash.fromBuffer(this.payload.getPayloadHash());
109
110
  }
110
111
 
111
112
  toBuffer(): Buffer {