@aztec/stdlib 0.0.1-commit.96bb3f7 → 0.0.1-commit.993d52e

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 (688) hide show
  1. package/dest/abi/decoder.d.ts +1 -1
  2. package/dest/abi/decoder.d.ts.map +1 -1
  3. package/dest/abi/decoder.js +1 -4
  4. package/dest/abi/encoder.d.ts +1 -1
  5. package/dest/abi/encoder.d.ts.map +1 -1
  6. package/dest/abi/encoder.js +9 -5
  7. package/dest/abi/function_call.d.ts +47 -9
  8. package/dest/abi/function_call.d.ts.map +1 -1
  9. package/dest/abi/function_call.js +20 -3
  10. package/dest/abi/utils.d.ts +7 -1
  11. package/dest/abi/utils.d.ts.map +1 -1
  12. package/dest/abi/utils.js +7 -0
  13. package/dest/auth_witness/auth_witness.d.ts +2 -1
  14. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  15. package/dest/auth_witness/auth_witness.js +3 -3
  16. package/dest/avm/avm.d.ts +362 -362
  17. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  18. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  19. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  20. package/dest/avm/avm_proving_request.d.ts +465 -465
  21. package/dest/avm/contract_storage_read.d.ts +13 -1
  22. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  23. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  24. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  25. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  26. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  27. package/dest/avm/public_data_read.d.ts +10 -1
  28. package/dest/avm/public_data_read.d.ts.map +1 -1
  29. package/dest/avm/public_data_update_request.d.ts +10 -1
  30. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  31. package/dest/avm/public_data_write.d.ts +7 -1
  32. package/dest/avm/public_data_write.d.ts.map +1 -1
  33. package/dest/avm/public_inner_call_request.d.ts +4 -1
  34. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  35. package/dest/avm/revert_code.d.ts +19 -4
  36. package/dest/avm/revert_code.d.ts.map +1 -1
  37. package/dest/avm/revert_code.js +15 -5
  38. package/dest/block/block_data.d.ts +52 -0
  39. package/dest/block/block_data.d.ts.map +1 -0
  40. package/dest/block/block_data.js +12 -0
  41. package/dest/block/block_hash.d.ts +18 -14
  42. package/dest/block/block_hash.d.ts.map +1 -1
  43. package/dest/block/block_hash.js +22 -20
  44. package/dest/block/block_parameter.d.ts +4 -3
  45. package/dest/block/block_parameter.d.ts.map +1 -1
  46. package/dest/block/block_parameter.js +2 -0
  47. package/dest/block/body.d.ts +1 -1
  48. package/dest/block/body.d.ts.map +1 -1
  49. package/dest/block/body.js +2 -1
  50. package/dest/block/checkpointed_l2_block.d.ts +20 -137
  51. package/dest/block/checkpointed_l2_block.d.ts.map +1 -1
  52. package/dest/block/checkpointed_l2_block.js +7 -45
  53. package/dest/block/in_block.d.ts +9 -9
  54. package/dest/block/in_block.d.ts.map +1 -1
  55. package/dest/block/in_block.js +5 -5
  56. package/dest/block/index.d.ts +2 -3
  57. package/dest/block/index.d.ts.map +1 -1
  58. package/dest/block/index.js +1 -2
  59. package/dest/block/l2_block.d.ts +56 -59
  60. package/dest/block/l2_block.d.ts.map +1 -1
  61. package/dest/block/l2_block.js +64 -110
  62. package/dest/block/l2_block_source.d.ts +84 -39
  63. package/dest/block/l2_block_source.d.ts.map +1 -1
  64. package/dest/block/l2_block_source.js +2 -1
  65. package/dest/block/l2_block_stream/interfaces.d.ts +9 -6
  66. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  67. package/dest/block/l2_block_stream/l2_block_stream.d.ts +6 -3
  68. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  69. package/dest/block/l2_block_stream/l2_block_stream.js +47 -34
  70. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +3 -3
  71. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  72. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  73. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  74. package/dest/block/test/l2_tips_store_test_suite.js +2 -7
  75. package/dest/block/validate_block_result.d.ts +1 -1
  76. package/dest/block/validate_block_result.d.ts.map +1 -1
  77. package/dest/block/validate_block_result.js +5 -4
  78. package/dest/checkpoint/checkpoint.d.ts +43 -19
  79. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  80. package/dest/checkpoint/checkpoint.js +37 -14
  81. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  82. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  83. package/dest/checkpoint/checkpoint_data.js +26 -0
  84. package/dest/checkpoint/index.d.ts +2 -1
  85. package/dest/checkpoint/index.d.ts.map +1 -1
  86. package/dest/checkpoint/index.js +1 -0
  87. package/dest/checkpoint/published_checkpoint.d.ts +33 -16
  88. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  89. package/dest/checkpoint/published_checkpoint.js +5 -5
  90. package/dest/config/index.d.ts +2 -1
  91. package/dest/config/index.d.ts.map +1 -1
  92. package/dest/config/index.js +1 -0
  93. package/dest/config/node-rpc-config.js +1 -1
  94. package/dest/config/sequencer-config.d.ts +12 -0
  95. package/dest/config/sequencer-config.d.ts.map +1 -0
  96. package/dest/config/sequencer-config.js +25 -0
  97. package/dest/contract/complete_address.d.ts +4 -1
  98. package/dest/contract/complete_address.d.ts.map +1 -1
  99. package/dest/contract/contract_address.js +4 -4
  100. package/dest/contract/contract_class.d.ts +2 -3
  101. package/dest/contract/contract_class.d.ts.map +1 -1
  102. package/dest/contract/contract_class_id.d.ts +2 -2
  103. package/dest/contract/contract_class_id.d.ts.map +1 -1
  104. package/dest/contract/contract_class_id.js +6 -5
  105. package/dest/contract/contract_deployment_data.d.ts +5 -5
  106. package/dest/contract/index.d.ts +1 -3
  107. package/dest/contract/index.d.ts.map +1 -1
  108. package/dest/contract/index.js +0 -2
  109. package/dest/contract/interfaces/contract_instance.d.ts +16 -16
  110. package/dest/contract/interfaces/node-info.d.ts +3 -1
  111. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  112. package/dest/contract/interfaces/node-info.js +2 -1
  113. package/dest/contract/private_function.d.ts +1 -1
  114. package/dest/contract/private_function.d.ts.map +1 -1
  115. package/dest/contract/private_function.js +3 -4
  116. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  117. package/dest/contract/private_function_membership_proof.js +1 -1
  118. package/dest/database-version/database_version.d.ts +58 -0
  119. package/dest/database-version/database_version.d.ts.map +1 -0
  120. package/dest/database-version/database_version.js +69 -0
  121. package/dest/database-version/version_manager.d.ts +3 -49
  122. package/dest/database-version/version_manager.d.ts.map +1 -1
  123. package/dest/database-version/version_manager.js +1 -66
  124. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  125. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  126. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  127. package/dest/deserialization/index.d.ts +11 -0
  128. package/dest/deserialization/index.d.ts.map +1 -0
  129. package/dest/deserialization/index.js +10 -0
  130. package/dest/epoch-helpers/index.d.ts +7 -1
  131. package/dest/epoch-helpers/index.d.ts.map +1 -1
  132. package/dest/epoch-helpers/index.js +9 -3
  133. package/dest/errors/proving_error.d.ts +2 -2
  134. package/dest/errors/proving_error.d.ts.map +1 -1
  135. package/dest/file-store/local.d.ts +3 -3
  136. package/dest/file-store/local.d.ts.map +1 -1
  137. package/dest/file-store/local.js +13 -4
  138. package/dest/file-store/s3.d.ts +1 -1
  139. package/dest/file-store/s3.d.ts.map +1 -1
  140. package/dest/file-store/s3.js +11 -3
  141. package/dest/hash/hash.d.ts +2 -1
  142. package/dest/hash/hash.d.ts.map +1 -1
  143. package/dest/hash/hash.js +16 -10
  144. package/dest/hash/map_slot.d.ts +1 -1
  145. package/dest/hash/map_slot.d.ts.map +1 -1
  146. package/dest/hash/map_slot.js +4 -3
  147. package/dest/interfaces/api_limit.d.ts +2 -1
  148. package/dest/interfaces/api_limit.d.ts.map +1 -1
  149. package/dest/interfaces/api_limit.js +1 -0
  150. package/dest/interfaces/archiver.d.ts +1 -1
  151. package/dest/interfaces/archiver.d.ts.map +1 -1
  152. package/dest/interfaces/archiver.js +23 -15
  153. package/dest/interfaces/aztec-node-admin.d.ts +110 -31
  154. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  155. package/dest/interfaces/aztec-node-admin.js +12 -4
  156. package/dest/interfaces/aztec-node.d.ts +66 -69
  157. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  158. package/dest/interfaces/aztec-node.js +10 -16
  159. package/dest/interfaces/block-builder.d.ts +22 -14
  160. package/dest/interfaces/block-builder.d.ts.map +1 -1
  161. package/dest/interfaces/block-builder.js +7 -0
  162. package/dest/interfaces/configs.d.ts +34 -9
  163. package/dest/interfaces/configs.d.ts.map +1 -1
  164. package/dest/interfaces/configs.js +6 -1
  165. package/dest/interfaces/get_logs_response.d.ts +16 -9
  166. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  167. package/dest/interfaces/l2_logs_source.d.ts +14 -5
  168. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  169. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  170. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  171. package/dest/interfaces/p2p.d.ts +4 -9
  172. package/dest/interfaces/p2p.d.ts.map +1 -1
  173. package/dest/interfaces/prover-broker.d.ts +16 -1
  174. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  175. package/dest/interfaces/prover-broker.js +4 -1
  176. package/dest/interfaces/prover-client.d.ts +15 -1
  177. package/dest/interfaces/prover-client.d.ts.map +1 -1
  178. package/dest/interfaces/prover-client.js +12 -1
  179. package/dest/interfaces/proving-job.d.ts +216 -216
  180. package/dest/interfaces/slasher.d.ts +9 -1
  181. package/dest/interfaces/slasher.d.ts.map +1 -1
  182. package/dest/interfaces/slasher.js +2 -0
  183. package/dest/interfaces/tx_provider.d.ts +3 -3
  184. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  185. package/dest/interfaces/validator.d.ts +121 -16
  186. package/dest/interfaces/validator.d.ts.map +1 -1
  187. package/dest/interfaces/validator.js +7 -3
  188. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  189. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  190. package/dest/kernel/hints/build_note_hash_read_request_hints.js +16 -6
  191. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  192. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  193. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  194. package/dest/kernel/hints/index.d.ts +2 -2
  195. package/dest/kernel/hints/index.js +2 -2
  196. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  197. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  198. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  199. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  200. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  201. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  202. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  203. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  204. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  205. package/dest/kernel/hints/read_request.d.ts +7 -1
  206. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  207. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  208. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  209. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  210. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  211. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  212. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  213. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  214. package/dest/kernel/private_call_data.d.ts +25 -1
  215. package/dest/kernel/private_call_data.d.ts.map +1 -1
  216. package/dest/kernel/private_call_request.d.ts +16 -1
  217. package/dest/kernel/private_call_request.d.ts.map +1 -1
  218. package/dest/kernel/private_circuit_public_inputs.d.ts +81 -8
  219. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  220. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  221. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +33 -3
  222. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  223. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  224. package/dest/kernel/private_kernel_data.d.ts +7 -1
  225. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  226. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  227. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  228. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  229. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  230. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  231. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  232. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +12 -3
  233. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  234. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  235. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +25 -3
  236. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  237. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
  238. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  239. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  240. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  241. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  242. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  243. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  244. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +18 -3
  245. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  246. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  247. package/dest/kernel/private_validation_requests.d.ts +13 -4
  248. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  249. package/dest/kernel/private_validation_requests.js +9 -9
  250. package/dest/kernel/public_call_request.d.ts +22 -1
  251. package/dest/kernel/public_call_request.d.ts.map +1 -1
  252. package/dest/kernel/utils/optional_number.d.ts +7 -1
  253. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  254. package/dest/keys/derivation.d.ts +3 -3
  255. package/dest/keys/derivation.js +15 -15
  256. package/dest/keys/key_types.d.ts +3 -3
  257. package/dest/keys/key_types.d.ts.map +1 -1
  258. package/dest/keys/public_keys.d.ts +5 -1
  259. package/dest/keys/public_keys.d.ts.map +1 -1
  260. package/dest/keys/public_keys.js +2 -2
  261. package/dest/keys/utils.d.ts +1 -1
  262. package/dest/keys/utils.d.ts.map +1 -1
  263. package/dest/keys/utils.js +8 -4
  264. package/dest/l1-contracts/slash_factory.d.ts +1 -1
  265. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  266. package/dest/l1-contracts/slash_factory.js +1 -0
  267. package/dest/logs/debug_log_store.d.ts +30 -0
  268. package/dest/logs/debug_log_store.d.ts.map +1 -0
  269. package/dest/logs/debug_log_store.js +30 -0
  270. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  271. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  272. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  273. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  274. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +23 -15
  275. package/dest/logs/extended_public_log.d.ts +17 -9
  276. package/dest/logs/extended_public_log.d.ts.map +1 -1
  277. package/dest/logs/index.d.ts +3 -2
  278. package/dest/logs/index.d.ts.map +1 -1
  279. package/dest/logs/index.js +2 -1
  280. package/dest/logs/log_id.d.ts +21 -14
  281. package/dest/logs/log_id.d.ts.map +1 -1
  282. package/dest/logs/log_id.js +20 -17
  283. package/dest/logs/pre_tag.d.ts +16 -11
  284. package/dest/logs/pre_tag.d.ts.map +1 -1
  285. package/dest/logs/pre_tag.js +2 -2
  286. package/dest/logs/private_log.d.ts +2 -2
  287. package/dest/logs/private_log.d.ts.map +1 -1
  288. package/dest/logs/siloed_tag.d.ts +5 -3
  289. package/dest/logs/siloed_tag.d.ts.map +1 -1
  290. package/dest/logs/siloed_tag.js +8 -6
  291. package/dest/logs/tag.js +1 -1
  292. package/dest/messaging/inbox_leaf.d.ts +3 -1
  293. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  294. package/dest/messaging/l1_actor.d.ts +7 -1
  295. package/dest/messaging/l1_actor.d.ts.map +1 -1
  296. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  297. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  298. package/dest/messaging/l2_actor.d.ts +7 -1
  299. package/dest/messaging/l2_actor.d.ts.map +1 -1
  300. package/dest/messaging/l2_to_l1_membership.d.ts +3 -3
  301. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  302. package/dest/messaging/l2_to_l1_membership.js +8 -6
  303. package/dest/messaging/out_hash.d.ts +41 -4
  304. package/dest/messaging/out_hash.d.ts.map +1 -1
  305. package/dest/messaging/out_hash.js +52 -26
  306. package/dest/note/index.d.ts +1 -2
  307. package/dest/note/index.d.ts.map +1 -1
  308. package/dest/note/index.js +0 -1
  309. package/dest/note/note_dao.d.ts +36 -5
  310. package/dest/note/note_dao.d.ts.map +1 -1
  311. package/dest/note/note_dao.js +15 -12
  312. package/dest/p2p/attestation_utils.d.ts +11 -1
  313. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  314. package/dest/p2p/attestation_utils.js +45 -0
  315. package/dest/p2p/block_proposal.d.ts +23 -8
  316. package/dest/p2p/block_proposal.d.ts.map +1 -1
  317. package/dest/p2p/block_proposal.js +26 -10
  318. package/dest/p2p/checkpoint_attestation.d.ts +6 -1
  319. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  320. package/dest/p2p/checkpoint_attestation.js +1 -1
  321. package/dest/p2p/checkpoint_proposal.d.ts +34 -9
  322. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  323. package/dest/p2p/checkpoint_proposal.js +46 -20
  324. package/dest/p2p/client_type.d.ts +2 -5
  325. package/dest/p2p/client_type.d.ts.map +1 -1
  326. package/dest/p2p/client_type.js +0 -7
  327. package/dest/p2p/consensus_payload.d.ts +15 -5
  328. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  329. package/dest/p2p/consensus_payload.js +22 -18
  330. package/dest/p2p/constants.d.ts +5 -0
  331. package/dest/p2p/constants.d.ts.map +1 -0
  332. package/dest/p2p/constants.js +3 -0
  333. package/dest/p2p/index.d.ts +2 -2
  334. package/dest/p2p/index.d.ts.map +1 -1
  335. package/dest/p2p/index.js +1 -1
  336. package/dest/p2p/message_validator.d.ts +18 -3
  337. package/dest/p2p/message_validator.d.ts.map +1 -1
  338. package/dest/p2p/message_validator.js +2 -1
  339. package/dest/p2p/signed_txs.d.ts +3 -1
  340. package/dest/p2p/signed_txs.d.ts.map +1 -1
  341. package/dest/p2p/signed_txs.js +6 -1
  342. package/dest/p2p/topic_type.d.ts +3 -4
  343. package/dest/p2p/topic_type.d.ts.map +1 -1
  344. package/dest/p2p/topic_type.js +7 -23
  345. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  346. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  347. package/dest/parity/parity_public_inputs.d.ts +4 -1
  348. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  349. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  350. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  351. package/dest/proofs/chonk_proof.d.ts +1 -1
  352. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  353. package/dest/proofs/chonk_proof.js +9 -4
  354. package/dest/proofs/proof.d.ts +4 -1
  355. package/dest/proofs/proof.d.ts.map +1 -1
  356. package/dest/proofs/recursive_proof.d.ts +10 -1
  357. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  358. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  359. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  360. package/dest/rollup/block_constant_data.d.ts +12 -1
  361. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  362. package/dest/rollup/block_headers_hash.js +1 -1
  363. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  364. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  365. package/dest/rollup/block_rollup_public_inputs.d.ts +44 -3
  366. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  367. package/dest/rollup/block_rollup_public_inputs.js +2 -2
  368. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  369. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  370. package/dest/rollup/checkpoint_constant_data.d.ts +10 -1
  371. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  372. package/dest/rollup/checkpoint_header.d.ts +31 -4
  373. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  374. package/dest/rollup/checkpoint_header.js +23 -7
  375. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  376. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  377. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +45 -10
  378. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  379. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -7
  380. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  381. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  382. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  383. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  384. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  385. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  386. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  387. package/dest/rollup/root_rollup_public_inputs.d.ts +17 -7
  388. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  389. package/dest/rollup/root_rollup_public_inputs.js +7 -4
  390. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  391. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  392. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  393. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  394. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  395. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  396. package/dest/schemas/schemas.d.ts +1 -1
  397. package/dest/slashing/empire.d.ts +1 -1
  398. package/dest/slashing/empire.d.ts.map +1 -1
  399. package/dest/slashing/empire.js +2 -0
  400. package/dest/slashing/helpers.d.ts +2 -2
  401. package/dest/slashing/helpers.d.ts.map +1 -1
  402. package/dest/slashing/helpers.js +6 -0
  403. package/dest/slashing/tally.d.ts +2 -1
  404. package/dest/slashing/tally.d.ts.map +1 -1
  405. package/dest/slashing/tally.js +6 -2
  406. package/dest/slashing/types.d.ts +7 -3
  407. package/dest/slashing/types.d.ts.map +1 -1
  408. package/dest/slashing/types.js +13 -1
  409. package/dest/stats/stats.d.ts +1 -3
  410. package/dest/stats/stats.d.ts.map +1 -1
  411. package/dest/tests/factories.d.ts +4 -4
  412. package/dest/tests/factories.d.ts.map +1 -1
  413. package/dest/tests/factories.js +26 -27
  414. package/dest/tests/jest.js +1 -1
  415. package/dest/tests/mocks.d.ts +24 -15
  416. package/dest/tests/mocks.d.ts.map +1 -1
  417. package/dest/tests/mocks.js +63 -40
  418. package/dest/timetable/index.d.ts +37 -0
  419. package/dest/timetable/index.d.ts.map +1 -0
  420. package/dest/timetable/index.js +39 -0
  421. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  422. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  423. package/dest/trees/nullifier_leaf.d.ts +13 -1
  424. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  425. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  426. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  427. package/dest/trees/public_data_leaf.d.ts +17 -1
  428. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  429. package/dest/trees/public_data_leaf.js +7 -6
  430. package/dest/trees/public_data_witness.d.ts +11 -1
  431. package/dest/trees/public_data_witness.d.ts.map +1 -1
  432. package/dest/tx/block_header.d.ts +14 -2
  433. package/dest/tx/block_header.d.ts.map +1 -1
  434. package/dest/tx/block_header.js +6 -2
  435. package/dest/tx/call_context.d.ts +13 -1
  436. package/dest/tx/call_context.d.ts.map +1 -1
  437. package/dest/tx/capsule.d.ts +4 -1
  438. package/dest/tx/capsule.d.ts.map +1 -1
  439. package/dest/tx/execution_payload.d.ts +9 -1
  440. package/dest/tx/execution_payload.d.ts.map +1 -1
  441. package/dest/tx/function_data.d.ts +4 -2
  442. package/dest/tx/function_data.d.ts.map +1 -1
  443. package/dest/tx/global_variables.d.ts +12 -4
  444. package/dest/tx/global_variables.d.ts.map +1 -1
  445. package/dest/tx/hashed_values.d.ts +7 -1
  446. package/dest/tx/hashed_values.d.ts.map +1 -1
  447. package/dest/tx/in_tx.d.ts +4 -4
  448. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  449. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  450. package/dest/tx/indexed_tx_effect.js +3 -2
  451. package/dest/tx/partial_state_reference.d.ts +4 -1
  452. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  453. package/dest/tx/private_execution_result.d.ts +23 -2
  454. package/dest/tx/private_execution_result.d.ts.map +1 -1
  455. package/dest/tx/private_execution_result.js +1 -1
  456. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  457. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  458. package/dest/tx/profiling.d.ts +152 -29
  459. package/dest/tx/profiling.d.ts.map +1 -1
  460. package/dest/tx/profiling.js +47 -10
  461. package/dest/tx/protocol_contracts.d.ts +2 -2
  462. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  463. package/dest/tx/protocol_contracts.js +2 -2
  464. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  465. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  466. package/dest/tx/public_simulation_output.d.ts +4 -2
  467. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  468. package/dest/tx/public_simulation_output.js +7 -3
  469. package/dest/tx/state_reference.d.ts +3 -1
  470. package/dest/tx/state_reference.d.ts.map +1 -1
  471. package/dest/tx/tx.d.ts +24 -1
  472. package/dest/tx/tx.d.ts.map +1 -1
  473. package/dest/tx/tx.js +6 -3
  474. package/dest/tx/tx_context.d.ts +2 -1
  475. package/dest/tx/tx_context.d.ts.map +1 -1
  476. package/dest/tx/tx_effect.d.ts +32 -6
  477. package/dest/tx/tx_effect.d.ts.map +1 -1
  478. package/dest/tx/tx_effect.js +0 -7
  479. package/dest/tx/tx_execution_request.d.ts +30 -1
  480. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  481. package/dest/tx/tx_hash.d.ts +2 -1
  482. package/dest/tx/tx_hash.d.ts.map +1 -1
  483. package/dest/tx/tx_receipt.d.ts +62 -14
  484. package/dest/tx/tx_receipt.d.ts.map +1 -1
  485. package/dest/tx/tx_receipt.js +55 -16
  486. package/dest/tx/tx_request.d.ts +6 -1
  487. package/dest/tx/tx_request.d.ts.map +1 -1
  488. package/dest/tx/tx_request.js +2 -2
  489. package/dest/tx/validator/empty_validator.d.ts +2 -2
  490. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  491. package/dest/tx/validator/error_texts.d.ts +3 -2
  492. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  493. package/dest/tx/validator/error_texts.js +3 -1
  494. package/dest/tx/validator/tx_validator.d.ts +2 -2
  495. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  496. package/dest/types/shared.d.ts +4 -1
  497. package/dest/types/shared.d.ts.map +1 -1
  498. package/dest/update-checker/index.d.ts +3 -2
  499. package/dest/update-checker/index.d.ts.map +1 -1
  500. package/dest/update-checker/index.js +2 -1
  501. package/dest/update-checker/package_version.d.ts +3 -0
  502. package/dest/update-checker/package_version.d.ts.map +1 -0
  503. package/dest/update-checker/package_version.js +11 -0
  504. package/dest/update-checker/version_checker.d.ts +25 -0
  505. package/dest/update-checker/version_checker.d.ts.map +1 -0
  506. package/dest/update-checker/version_checker.js +50 -0
  507. package/dest/validators/schemas.d.ts +38 -38
  508. package/dest/validators/schemas.d.ts.map +1 -1
  509. package/dest/validators/schemas.js +4 -3
  510. package/dest/validators/types.d.ts +3 -3
  511. package/dest/validators/types.d.ts.map +1 -1
  512. package/dest/vks/verification_key.d.ts +22 -1
  513. package/dest/vks/verification_key.d.ts.map +1 -1
  514. package/dest/vks/vk_data.d.ts +7 -1
  515. package/dest/vks/vk_data.d.ts.map +1 -1
  516. package/dest/zkpassport/index.d.ts +3 -4
  517. package/dest/zkpassport/index.d.ts.map +1 -1
  518. package/dest/zkpassport/index.js +9 -9
  519. package/package.json +28 -14
  520. package/src/abi/decoder.ts +1 -4
  521. package/src/abi/encoder.ts +8 -5
  522. package/src/abi/function_call.ts +25 -3
  523. package/src/abi/utils.ts +17 -0
  524. package/src/auth_witness/auth_witness.ts +3 -3
  525. package/src/avm/revert_code.ts +15 -0
  526. package/src/block/block_data.ts +26 -0
  527. package/src/block/block_hash.ts +26 -25
  528. package/src/block/block_parameter.ts +4 -2
  529. package/src/block/body.ts +2 -1
  530. package/src/block/checkpointed_l2_block.ts +8 -58
  531. package/src/block/in_block.ts +6 -6
  532. package/src/block/index.ts +1 -2
  533. package/src/block/l2_block.ts +102 -150
  534. package/src/block/l2_block_source.ts +93 -42
  535. package/src/block/l2_block_stream/interfaces.ts +8 -5
  536. package/src/block/l2_block_stream/l2_block_stream.ts +66 -37
  537. package/src/block/l2_block_stream/l2_tips_store_base.ts +2 -2
  538. package/src/block/test/l2_tips_store_test_suite.ts +4 -9
  539. package/src/block/validate_block_result.ts +5 -4
  540. package/src/checkpoint/checkpoint.ts +61 -21
  541. package/src/checkpoint/checkpoint_data.ts +51 -0
  542. package/src/checkpoint/index.ts +1 -0
  543. package/src/checkpoint/published_checkpoint.ts +7 -4
  544. package/src/config/index.ts +1 -0
  545. package/src/config/node-rpc-config.ts +1 -1
  546. package/src/config/sequencer-config.ts +37 -0
  547. package/src/contract/contract_address.ts +4 -4
  548. package/src/contract/contract_class.ts +3 -3
  549. package/src/contract/contract_class_id.ts +6 -5
  550. package/src/contract/index.ts +0 -2
  551. package/src/contract/interfaces/node-info.ts +3 -0
  552. package/src/contract/private_function.ts +3 -4
  553. package/src/contract/private_function_membership_proof.ts +1 -1
  554. package/src/database-version/database_version.ts +87 -0
  555. package/src/database-version/version_manager.ts +1 -77
  556. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  557. package/src/deserialization/index.ts +21 -0
  558. package/src/epoch-helpers/index.ts +13 -1
  559. package/src/file-store/local.ts +15 -5
  560. package/src/file-store/s3.ts +12 -3
  561. package/src/hash/hash.ts +14 -10
  562. package/src/hash/map_slot.ts +3 -2
  563. package/src/interfaces/api_limit.ts +1 -0
  564. package/src/interfaces/archiver.ts +23 -24
  565. package/src/interfaces/aztec-node-admin.ts +26 -2
  566. package/src/interfaces/aztec-node.ts +86 -135
  567. package/src/interfaces/block-builder.ts +41 -23
  568. package/src/interfaces/configs.ts +19 -4
  569. package/src/interfaces/l2_logs_source.ts +17 -4
  570. package/src/interfaces/merkle_tree_operations.ts +1 -1
  571. package/src/interfaces/p2p.ts +3 -14
  572. package/src/interfaces/prover-broker.ts +22 -0
  573. package/src/interfaces/prover-client.ts +22 -0
  574. package/src/interfaces/slasher.ts +4 -0
  575. package/src/interfaces/tx_provider.ts +2 -2
  576. package/src/interfaces/validator.ts +22 -13
  577. package/src/kernel/hints/build_note_hash_read_request_hints.ts +17 -6
  578. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  579. package/src/kernel/hints/index.ts +2 -2
  580. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  581. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  582. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  583. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  584. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  585. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
  586. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  587. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  588. package/src/kernel/private_validation_requests.ts +8 -8
  589. package/src/keys/derivation.ts +15 -15
  590. package/src/keys/key_types.ts +6 -2
  591. package/src/keys/public_keys.ts +2 -2
  592. package/src/keys/utils.ts +8 -4
  593. package/src/l1-contracts/slash_factory.ts +1 -0
  594. package/src/logs/debug_log_store.ts +54 -0
  595. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +24 -16
  596. package/src/logs/index.ts +2 -1
  597. package/src/logs/log_id.ts +22 -18
  598. package/src/logs/pre_tag.ts +5 -5
  599. package/src/logs/siloed_tag.ts +10 -4
  600. package/src/logs/tag.ts +1 -1
  601. package/src/messaging/l2_to_l1_membership.ts +8 -6
  602. package/src/messaging/out_hash.ts +60 -29
  603. package/src/note/index.ts +0 -1
  604. package/src/note/note_dao.ts +18 -13
  605. package/src/p2p/attestation_utils.ts +56 -0
  606. package/src/p2p/block_proposal.ts +36 -15
  607. package/src/p2p/checkpoint_attestation.ts +6 -1
  608. package/src/p2p/checkpoint_proposal.ts +74 -24
  609. package/src/p2p/client_type.ts +0 -6
  610. package/src/p2p/consensus_payload.ts +25 -17
  611. package/src/p2p/constants.ts +6 -0
  612. package/src/p2p/index.ts +1 -1
  613. package/src/p2p/message_validator.ts +14 -2
  614. package/src/p2p/signed_txs.ts +6 -1
  615. package/src/p2p/topic_type.ts +8 -15
  616. package/src/proofs/chonk_proof.ts +9 -5
  617. package/src/rollup/block_headers_hash.ts +1 -1
  618. package/src/rollup/block_rollup_public_inputs.ts +2 -2
  619. package/src/rollup/checkpoint_header.ts +22 -2
  620. package/src/rollup/checkpoint_rollup_public_inputs.ts +16 -10
  621. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  622. package/src/rollup/root_rollup_public_inputs.ts +11 -8
  623. package/src/slashing/empire.ts +3 -1
  624. package/src/slashing/helpers.ts +8 -0
  625. package/src/slashing/tally.ts +8 -2
  626. package/src/slashing/types.ts +14 -0
  627. package/src/stats/stats.ts +0 -2
  628. package/src/tests/factories.ts +32 -43
  629. package/src/tests/jest.ts +1 -1
  630. package/src/tests/mocks.ts +90 -55
  631. package/src/timetable/index.ts +66 -0
  632. package/src/trees/public_data_leaf.ts +11 -5
  633. package/src/tx/block_header.ts +12 -4
  634. package/src/tx/global_variables.ts +3 -3
  635. package/src/tx/indexed_tx_effect.ts +3 -2
  636. package/src/tx/private_execution_result.ts +1 -1
  637. package/src/tx/profiling.ts +51 -9
  638. package/src/tx/protocol_contracts.ts +2 -2
  639. package/src/tx/public_simulation_output.ts +4 -0
  640. package/src/tx/tx.ts +8 -9
  641. package/src/tx/tx_effect.ts +0 -9
  642. package/src/tx/tx_receipt.ts +85 -18
  643. package/src/tx/tx_request.ts +2 -2
  644. package/src/tx/validator/empty_validator.ts +1 -1
  645. package/src/tx/validator/error_texts.ts +4 -1
  646. package/src/tx/validator/tx_validator.ts +1 -1
  647. package/src/update-checker/index.ts +2 -1
  648. package/src/update-checker/package_version.ts +17 -0
  649. package/src/update-checker/version_checker.ts +65 -0
  650. package/src/validators/schemas.ts +8 -1
  651. package/src/validators/types.ts +5 -4
  652. package/src/zkpassport/index.ts +11 -12
  653. package/dest/block/l2_block_code_to_purge.d.ts +0 -11
  654. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  655. package/dest/block/l2_block_code_to_purge.js +0 -55
  656. package/dest/block/l2_block_header.d.ts +0 -94
  657. package/dest/block/l2_block_header.d.ts.map +0 -1
  658. package/dest/block/l2_block_header.js +0 -160
  659. package/dest/block/l2_block_new.d.ts +0 -134
  660. package/dest/block/l2_block_new.d.ts.map +0 -1
  661. package/dest/block/l2_block_new.js +0 -155
  662. package/dest/contract/contract_class_metadata.d.ts +0 -8
  663. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  664. package/dest/contract/contract_class_metadata.js +0 -1
  665. package/dest/contract/contract_metadata.d.ts +0 -7
  666. package/dest/contract/contract_metadata.d.ts.map +0 -1
  667. package/dest/contract/contract_metadata.js +0 -1
  668. package/dest/database-version/index.d.ts +0 -2
  669. package/dest/database-version/index.d.ts.map +0 -1
  670. package/dest/database-version/index.js +0 -1
  671. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -25
  672. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  673. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  674. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  675. package/dest/note/notes_filter.d.ts +0 -27
  676. package/dest/note/notes_filter.d.ts.map +0 -1
  677. package/dest/note/notes_filter.js +0 -11
  678. package/dest/update-checker/update-checker.d.ts +0 -49
  679. package/dest/update-checker/update-checker.d.ts.map +0 -1
  680. package/dest/update-checker/update-checker.js +0 -130
  681. package/src/block/l2_block_code_to_purge.ts +0 -80
  682. package/src/block/l2_block_header.ts +0 -255
  683. package/src/block/l2_block_new.ts +0 -211
  684. package/src/contract/contract_class_metadata.ts +0 -8
  685. package/src/contract/contract_metadata.ts +0 -7
  686. package/src/database-version/index.ts +0 -1
  687. package/src/note/notes_filter.ts +0 -38
  688. package/src/update-checker/update-checker.ts +0 -166
@@ -68,23 +68,22 @@ export class DelayedPublicMutableValues {
68
68
  }
69
69
 
70
70
  static async readFromTree(delayedPublicMutableSlot: Fr, readStorage: (storageSlot: Fr) => Promise<Fr>) {
71
- const fields = [];
72
- for (let i = 0; i < DELAYED_PUBLIC_MUTABLE_VALUES_LEN; i++) {
73
- fields.push(await readStorage(delayedPublicMutableSlot.add(new Fr(i))));
74
- }
75
- return DelayedPublicMutableValues.fromFields(fields);
71
+ const fieldPromises = Array.from({ length: DELAYED_PUBLIC_MUTABLE_VALUES_LEN }).map((_, i) =>
72
+ readStorage(delayedPublicMutableSlot.add(new Fr(i))),
73
+ );
74
+ return DelayedPublicMutableValues.fromFields(await Promise.all(fieldPromises));
76
75
  }
77
76
 
78
77
  isEmpty(): boolean {
79
78
  return this.svc.isEmpty() && this.sdc.isEmpty();
80
79
  }
81
80
 
82
- async writeToTree(delayedPublicMutableSlot: Fr, storageWrite: (storageSlot: Fr, value: Fr) => Promise<void>) {
83
- const fields = this.toFields();
81
+ writeToTree(delayedPublicMutableSlot: Fr, storageWrite: (storageSlot: Fr, value: Fr) => Promise<void>) {
82
+ const fieldPromises = this.toFields().map((field, i) =>
83
+ storageWrite(delayedPublicMutableSlot.add(new Fr(i)), field),
84
+ );
84
85
 
85
- for (let i = 0; i < fields.length; i++) {
86
- await storageWrite(delayedPublicMutableSlot.add(new Fr(i)), fields[i]);
87
- }
86
+ return Promise.all(fieldPromises);
88
87
  }
89
88
 
90
89
  async hash(): Promise<Fr> {
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Constants for deserialization bounds checking.
3
+ * These constants define maximum allowed sizes during deserialization
4
+ * to prevent DoS attacks via maliciously crafted messages.
5
+ */
6
+ import { BLOBS_PER_CHECKPOINT, FIELDS_PER_BLOB } from '@aztec/constants';
7
+
8
+ /** Max transactions per block for deserialization validation */
9
+ export const MAX_TXS_PER_BLOCK = 2 ** 16;
10
+
11
+ /** Max committee size - theoretical max from bitmap design (256 bytes × 8 bits) */
12
+ export const MAX_COMMITTEE_SIZE = 2048;
13
+
14
+ /** Max blocks per checkpoint */
15
+ export const MAX_BLOCKS_PER_CHECKPOINT = 72;
16
+
17
+ /** Max tx effects per body (based on blob capacity per checkpoint) */
18
+ export const MAX_TX_EFFECTS_PER_BODY = BLOBS_PER_CHECKPOINT * FIELDS_PER_BLOB;
19
+
20
+ /** Max block hash string length (hex: 0x + 64 chars, with generous headroom) */
21
+ export const MAX_BLOCK_HASH_STRING_LENGTH = 128;
@@ -11,6 +11,7 @@ export type L1RollupConstants = {
11
11
  epochDuration: number;
12
12
  ethereumSlotDuration: number;
13
13
  proofSubmissionEpochs: number;
14
+ targetCommitteeSize: number;
14
15
  };
15
16
 
16
17
  export const EmptyL1RollupConstants: L1RollupConstants = {
@@ -20,6 +21,7 @@ export const EmptyL1RollupConstants: L1RollupConstants = {
20
21
  slotDuration: 1,
21
22
  ethereumSlotDuration: 1,
22
23
  proofSubmissionEpochs: 1,
24
+ targetCommitteeSize: 48,
23
25
  };
24
26
 
25
27
  export const L1RollupConstantsSchema = zodFor<L1RollupConstants>()(
@@ -30,6 +32,7 @@ export const L1RollupConstantsSchema = zodFor<L1RollupConstants>()(
30
32
  epochDuration: z.number(),
31
33
  ethereumSlotDuration: z.number(),
32
34
  proofSubmissionEpochs: z.number(),
35
+ targetCommitteeSize: z.number(),
33
36
  }),
34
37
  );
35
38
 
@@ -51,6 +54,15 @@ export function getSlotAtTimestamp(
51
54
  : SlotNumber.fromBigInt((ts - constants.l1GenesisTime) / BigInt(constants.slotDuration));
52
55
  }
53
56
 
57
+ /** Returns the L2 slot number at the next L1 block based on the current timestamp. */
58
+ export function getSlotAtNextL1Block(
59
+ currentL1Timestamp: bigint,
60
+ constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'ethereumSlotDuration'>,
61
+ ): SlotNumber {
62
+ const nextL1BlockTimestamp = currentL1Timestamp + BigInt(constants.ethereumSlotDuration);
63
+ return getSlotAtTimestamp(nextL1BlockTimestamp, constants);
64
+ }
65
+
54
66
  /** Returns the epoch number for a given timestamp. */
55
67
  export function getEpochNumberAtTimestamp(
56
68
  ts: bigint,
@@ -69,7 +81,7 @@ export function getSlotRangeForEpoch(
69
81
  epochNumber: EpochNumber,
70
82
  constants: Pick<L1RollupConstants, 'epochDuration'>,
71
83
  ): [SlotNumber, SlotNumber] {
72
- const startSlot = SlotNumber(epochNumber * constants.epochDuration);
84
+ const startSlot = SlotNumber(Number(epochNumber) * constants.epochDuration);
73
85
  return [startSlot, SlotNumber(startSlot + constants.epochDuration - 1)];
74
86
  }
75
87
 
@@ -1,15 +1,21 @@
1
1
  import { access, mkdir, readFile, writeFile } from 'fs/promises';
2
2
  import { dirname, resolve } from 'path';
3
+ import { promisify } from 'util';
4
+ import { gunzip as gunzipCb, gzip as gzipCb } from 'zlib';
3
5
 
4
- import type { FileStore } from './interface.js';
6
+ import type { FileStore, FileStoreSaveOptions } from './interface.js';
7
+
8
+ const gzip = promisify(gzipCb);
9
+ const gunzip = promisify(gunzipCb);
5
10
 
6
11
  export class LocalFileStore implements FileStore {
7
12
  constructor(private readonly basePath: string) {}
8
13
 
9
- public async save(path: string, data: Buffer): Promise<string> {
14
+ public async save(path: string, data: Buffer, opts?: FileStoreSaveOptions): Promise<string> {
10
15
  const fullPath = this.getFullPath(path);
11
16
  await mkdir(dirname(fullPath), { recursive: true });
12
- await writeFile(fullPath, data);
17
+ const toWrite = opts?.compress ? await gzip(data) : data;
18
+ await writeFile(fullPath, toWrite);
13
19
  return `file://${fullPath}`;
14
20
  }
15
21
 
@@ -18,9 +24,13 @@ export class LocalFileStore implements FileStore {
18
24
  return this.save(destPath, data);
19
25
  }
20
26
 
21
- public read(pathOrUrlStr: string): Promise<Buffer> {
27
+ public async read(pathOrUrlStr: string): Promise<Buffer> {
22
28
  const fullPath = this.getFullPath(pathOrUrlStr);
23
- return readFile(fullPath);
29
+ const data = await readFile(fullPath);
30
+ if (data.length >= 2 && data[0] === 0x1f && data[1] === 0x8b) {
31
+ return await gunzip(data);
32
+ }
33
+ return data;
24
34
  }
25
35
 
26
36
  public async download(pathOrUrlStr: string, destPath: string): Promise<void> {
@@ -13,10 +13,14 @@ import { tmpdir } from 'os';
13
13
  import { basename, dirname, join } from 'path';
14
14
  import { Readable } from 'stream';
15
15
  import { pipeline } from 'stream/promises';
16
- import { createGzip } from 'zlib';
16
+ import { promisify } from 'util';
17
+ import { createGzip, gunzip as gunzipCb, gzip as gzipCb } from 'zlib';
17
18
 
18
19
  import type { FileStore, FileStoreSaveOptions } from './interface.js';
19
20
 
21
+ const gzip = promisify(gzipCb);
22
+ const gunzip = promisify(gunzipCb);
23
+
20
24
  function normalizeBasePath(path: string): string {
21
25
  return path?.replace(/^\/+|\/+$/g, '') ?? '';
22
26
  }
@@ -52,7 +56,7 @@ export class S3FileStore implements FileStore {
52
56
  const key = this.getFullPath(path);
53
57
  const shouldCompress = !!opts.compress;
54
58
 
55
- const body = shouldCompress ? (await import('zlib')).gzipSync(data) : data;
59
+ const body = shouldCompress ? await gzip(data) : data;
56
60
  const contentLength = body.length;
57
61
  const contentType = this.detectContentType(key, shouldCompress);
58
62
  const put = new PutObjectCommand({
@@ -60,6 +64,7 @@ export class S3FileStore implements FileStore {
60
64
  Key: key,
61
65
  Body: body,
62
66
  ContentType: contentType,
67
+ ContentEncoding: shouldCompress ? 'gzip' : undefined,
63
68
  CacheControl: opts.metadata?.['Cache-control'],
64
69
  Metadata: this.extractUserMetadata(opts.metadata),
65
70
  ContentLength: contentLength,
@@ -134,7 +139,11 @@ export class S3FileStore implements FileStore {
134
139
  for await (const chunk of stream) {
135
140
  chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
136
141
  }
137
- return Buffer.concat(chunks);
142
+ const buffer = Buffer.concat(chunks);
143
+ if (out.ContentEncoding === 'gzip') {
144
+ return await gunzip(buffer);
145
+ }
146
+ return buffer;
138
147
  }
139
148
 
140
149
  public async download(pathOrUrlStr: string, destPath: string): Promise<void> {
package/src/hash/hash.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex, NULL_MSG_SENDER_CONTRACT_ADDRESS } from '@aztec/constants';
1
+ import { DomainSeparator, NULL_MSG_SENDER_CONTRACT_ADDRESS } from '@aztec/constants';
2
2
  import { poseidon2Hash, poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { sha256ToField } from '@aztec/foundation/crypto/sha256';
4
4
  import { Fr } from '@aztec/foundation/curves/bn254';
@@ -23,7 +23,7 @@ export async function hashVK(keyAsFields: Fr[]): Promise<Fr> {
23
23
  * @returns A note hash nonce.
24
24
  */
25
25
  export function computeNoteHashNonce(nullifierZero: Fr, noteHashIndex: number): Promise<Fr> {
26
- return poseidon2HashWithSeparator([nullifierZero, noteHashIndex], GeneratorIndex.NOTE_HASH_NONCE);
26
+ return poseidon2HashWithSeparator([nullifierZero, noteHashIndex], DomainSeparator.NOTE_HASH_NONCE);
27
27
  }
28
28
 
29
29
  /**
@@ -34,7 +34,7 @@ export function computeNoteHashNonce(nullifierZero: Fr, noteHashIndex: number):
34
34
  * @returns A siloed note hash.
35
35
  */
36
36
  export function siloNoteHash(contract: AztecAddress, noteHash: Fr): Promise<Fr> {
37
- return poseidon2HashWithSeparator([contract, noteHash], GeneratorIndex.SILOED_NOTE_HASH);
37
+ return poseidon2HashWithSeparator([contract, noteHash], DomainSeparator.SILOED_NOTE_HASH);
38
38
  }
39
39
 
40
40
  /**
@@ -44,7 +44,7 @@ export function siloNoteHash(contract: AztecAddress, noteHash: Fr): Promise<Fr>
44
44
  * @returns A unique note hash.
45
45
  */
46
46
  export function computeUniqueNoteHash(noteNonce: Fr, siloedNoteHash: Fr): Promise<Fr> {
47
- return poseidon2HashWithSeparator([noteNonce, siloedNoteHash], GeneratorIndex.UNIQUE_NOTE_HASH);
47
+ return poseidon2HashWithSeparator([noteNonce, siloedNoteHash], DomainSeparator.UNIQUE_NOTE_HASH);
48
48
  }
49
49
 
50
50
  /**
@@ -55,7 +55,7 @@ export function computeUniqueNoteHash(noteNonce: Fr, siloedNoteHash: Fr): Promis
55
55
  * @returns A siloed nullifier.
56
56
  */
57
57
  export function siloNullifier(contract: AztecAddress, innerNullifier: Fr): Promise<Fr> {
58
- return poseidon2HashWithSeparator([contract, innerNullifier], GeneratorIndex.OUTER_NULLIFIER);
58
+ return poseidon2HashWithSeparator([contract, innerNullifier], DomainSeparator.SILOED_NULLIFIER);
59
59
  }
60
60
 
61
61
  /**
@@ -69,6 +69,10 @@ export function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr> {
69
69
  return siloNullifier(AztecAddress.fromBigInt(NULL_MSG_SENDER_CONTRACT_ADDRESS), txRequestHash);
70
70
  }
71
71
 
72
+ export function computeSiloedPrivateLogFirstField(contract: AztecAddress, field: Fr): Promise<Fr> {
73
+ return poseidon2HashWithSeparator([contract, field], DomainSeparator.PRIVATE_LOG_FIRST_FIELD);
74
+ }
75
+
72
76
  /**
73
77
  * Computes a public data tree value ready for insertion.
74
78
  * @param value - Raw public data tree value to hash into a tree-insertion-ready value.
@@ -87,7 +91,7 @@ export function computePublicDataTreeValue(value: Fr): Fr {
87
91
 
88
92
  */
89
93
  export function computePublicDataTreeLeafSlot(contractAddress: AztecAddress, storageSlot: Fr): Promise<Fr> {
90
- return poseidon2HashWithSeparator([contractAddress, storageSlot], GeneratorIndex.PUBLIC_LEAF_INDEX);
94
+ return poseidon2HashWithSeparator([contractAddress, storageSlot], DomainSeparator.PUBLIC_LEAF_SLOT);
91
95
  }
92
96
 
93
97
  /**
@@ -101,7 +105,7 @@ export function computeVarArgsHash(args: Fr[]): Promise<Fr> {
101
105
  return Promise.resolve(Fr.ZERO);
102
106
  }
103
107
 
104
- return poseidon2HashWithSeparator(args, GeneratorIndex.FUNCTION_ARGS);
108
+ return poseidon2HashWithSeparator(args, DomainSeparator.FUNCTION_ARGS);
105
109
  }
106
110
 
107
111
  /**
@@ -110,7 +114,7 @@ export function computeVarArgsHash(args: Fr[]): Promise<Fr> {
110
114
  * @returns Hash of the calldata.
111
115
  */
112
116
  export function computeCalldataHash(calldata: Fr[]): Promise<Fr> {
113
- return poseidon2HashWithSeparator(calldata, GeneratorIndex.PUBLIC_CALLDATA);
117
+ return poseidon2HashWithSeparator(calldata, DomainSeparator.PUBLIC_CALLDATA);
114
118
  }
115
119
 
116
120
  /**
@@ -120,13 +124,13 @@ export function computeCalldataHash(calldata: Fr[]): Promise<Fr> {
120
124
  * @returns The hash
121
125
  */
122
126
  export function computeSecretHash(secret: Fr): Promise<Fr> {
123
- return poseidon2HashWithSeparator([secret], GeneratorIndex.SECRET_HASH);
127
+ return poseidon2HashWithSeparator([secret], DomainSeparator.SECRET_HASH);
124
128
  }
125
129
 
126
130
  export async function computeL1ToL2MessageNullifier(contract: AztecAddress, messageHash: Fr, secret: Fr) {
127
131
  const innerMessageNullifier = await poseidon2HashWithSeparator(
128
132
  [messageHash, secret],
129
- GeneratorIndex.MESSAGE_NULLIFIER,
133
+ DomainSeparator.MESSAGE_NULLIFIER,
130
134
  );
131
135
  return siloNullifier(contract, innerMessageNullifier);
132
136
  }
@@ -1,4 +1,5 @@
1
- import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
1
+ import { DomainSeparator } from '@aztec/constants';
2
+ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
2
3
  import type { Fr } from '@aztec/foundation/curves/bn254';
3
4
 
4
5
  /**
@@ -14,5 +15,5 @@ export function deriveStorageSlotInMap(
14
15
  toField: () => Fr;
15
16
  },
16
17
  ): Promise<Fr> {
17
- return poseidon2Hash([mapSlot, key.toField()]);
18
+ return poseidon2HashWithSeparator([mapSlot, key.toField()], DomainSeparator.PUBLIC_STORAGE_MAP_SLOT);
18
19
  }
@@ -2,3 +2,4 @@ export const MAX_RPC_LEN = 100;
2
2
  export const MAX_RPC_TXS_LEN = 50;
3
3
  export const MAX_RPC_BLOCKS_LEN = 50;
4
4
  export const MAX_RPC_CHECKPOINTS_LEN = 50;
5
+ export const MAX_LOGS_PER_TAG = 10;
@@ -4,12 +4,14 @@ import type { ApiSchemaFor } from '@aztec/foundation/schemas';
4
4
 
5
5
  import { z } from 'zod';
6
6
 
7
- import { CheckpointedL2Block, PublishedL2Block } from '../block/checkpointed_l2_block.js';
7
+ import { BlockDataSchema } from '../block/block_data.js';
8
+ import { BlockHash } from '../block/block_hash.js';
9
+ import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
8
10
  import { L2Block } from '../block/l2_block.js';
9
- import { L2BlockNew } from '../block/l2_block_new.js';
10
11
  import { type L2BlockSource, L2TipsSchema } from '../block/l2_block_source.js';
11
12
  import { ValidateCheckpointResultSchema } from '../block/validate_block_result.js';
12
13
  import { Checkpoint } from '../checkpoint/checkpoint.js';
14
+ import { CheckpointDataSchema } from '../checkpoint/checkpoint_data.js';
13
15
  import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
14
16
  import {
15
17
  ContractClassPublicSchema,
@@ -83,6 +85,8 @@ export const ArchiverApiSchema: ApiSchemaFor<ArchiverApi> = {
83
85
  getRegistryAddress: z.function().args().returns(schemas.EthAddress),
84
86
  getBlockNumber: z.function().args().returns(BlockNumberSchema),
85
87
  getProvenBlockNumber: z.function().args().returns(BlockNumberSchema),
88
+ getCheckpointedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
89
+ getFinalizedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
86
90
  getBlock: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
87
91
  getBlockHeader: z
88
92
  .function()
@@ -91,45 +95,40 @@ export const ArchiverApiSchema: ApiSchemaFor<ArchiverApi> = {
91
95
  getCheckpointedBlock: z.function().args(BlockNumberSchema).returns(CheckpointedL2Block.schema.optional()),
92
96
  getCheckpointedBlocks: z
93
97
  .function()
94
- .args(BlockNumberSchema, schemas.Integer, optional(z.boolean()))
98
+ .args(BlockNumberSchema, schemas.Integer)
95
99
  .returns(z.array(CheckpointedL2Block.schema)),
96
- getBlocks: z
97
- .function()
98
- .args(BlockNumberSchema, schemas.Integer, optional(z.boolean()))
99
- .returns(z.array(L2Block.schema)),
100
- getPublishedCheckpoints: z
100
+ getBlocks: z.function().args(BlockNumberSchema, schemas.Integer).returns(z.array(L2Block.schema)),
101
+ getCheckpoints: z
101
102
  .function()
102
103
  .args(CheckpointNumberSchema, schemas.Integer)
103
104
  .returns(z.array(PublishedCheckpoint.schema)),
104
- getPublishedBlocks: z
105
- .function()
106
- .args(BlockNumberSchema, schemas.Integer, optional(z.boolean()))
107
- .returns(z.array(PublishedL2Block.schema)),
108
- getL2BlocksNew: z
109
- .function()
110
- .args(BlockNumberSchema, schemas.Integer, optional(z.boolean()))
111
- .returns(z.array(L2BlockNew.schema)),
112
- getPublishedBlockByHash: z.function().args(schemas.Fr).returns(PublishedL2Block.schema.optional()),
113
- getPublishedBlockByArchive: z.function().args(schemas.Fr).returns(PublishedL2Block.schema.optional()),
114
- getBlockHeaderByHash: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
105
+ getCheckpointedBlockByHash: z.function().args(BlockHash.schema).returns(CheckpointedL2Block.schema.optional()),
106
+ getCheckpointedBlockByArchive: z.function().args(schemas.Fr).returns(CheckpointedL2Block.schema.optional()),
107
+ getBlockHeaderByHash: z.function().args(BlockHash.schema).returns(BlockHeader.schema.optional()),
115
108
  getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
116
- getL2BlockNew: z.function().args(BlockNumberSchema).returns(L2BlockNew.schema.optional()),
109
+ getBlockData: z.function().args(BlockNumberSchema).returns(BlockDataSchema.optional()),
110
+ getBlockDataByArchive: z.function().args(schemas.Fr).returns(BlockDataSchema.optional()),
111
+ getL2Block: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
112
+ getL2BlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
113
+ getL2BlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
117
114
  getTxEffect: z.function().args(TxHash.schema).returns(indexedTxSchema().optional()),
118
115
  getSettledTxReceipt: z.function().args(TxHash.schema).returns(TxReceipt.schema.optional()),
119
116
  getL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
120
117
  getL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
121
118
  getCheckpointsForEpoch: z.function().args(EpochNumberSchema).returns(z.array(Checkpoint.schema)),
122
- getBlocksForEpoch: z.function().args(EpochNumberSchema).returns(z.array(L2Block.schema)),
123
- getBlockHeadersForEpoch: z.function().args(EpochNumberSchema).returns(z.array(BlockHeader.schema)),
119
+ getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
120
+ getCheckpointedBlocksForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointedL2Block.schema)),
121
+ getBlocksForSlot: z.function().args(schemas.SlotNumber).returns(z.array(L2Block.schema)),
122
+ getCheckpointedBlockHeadersForEpoch: z.function().args(EpochNumberSchema).returns(z.array(BlockHeader.schema)),
124
123
  isEpochComplete: z.function().args(EpochNumberSchema).returns(z.boolean()),
125
124
  getL2Tips: z.function().args().returns(L2TipsSchema),
126
125
  getPrivateLogsByTags: z
127
126
  .function()
128
- .args(z.array(SiloedTag.schema))
127
+ .args(z.array(SiloedTag.schema), optional(z.number().gte(0)))
129
128
  .returns(z.array(z.array(TxScopedL2Log.schema))),
130
129
  getPublicLogsByTagsFromContract: z
131
130
  .function()
132
- .args(schemas.AztecAddress, z.array(Tag.schema))
131
+ .args(schemas.AztecAddress, z.array(Tag.schema), optional(z.number().gte(0)))
133
132
  .returns(z.array(z.array(TxScopedL2Log.schema))),
134
133
  getPublicLogs: z.function().args(LogFilterSchema).returns(GetPublicLogsResponseSchema),
135
134
  getContractClassLogs: z.function().args(LogFilterSchema).returns(GetContractClassLogsResponseSchema),
@@ -50,9 +50,30 @@ export interface AztecNodeAdmin {
50
50
 
51
51
  /** Returns all offenses applicable for the given round. */
52
52
  getSlashOffenses(round: bigint | 'all' | 'current'): Promise<Offense[]>;
53
+
54
+ /**
55
+ * Reloads keystore configuration from disk.
56
+ *
57
+ * What is updated:
58
+ * - Validator attester keys
59
+ * - Coinbase address per validator
60
+ * - Fee recipient address per validator
61
+ *
62
+ * What is NOT updated (requires node restart):
63
+ * - L1 publisher signers (the funded accounts that send L1 transactions)
64
+ * - Prover keys
65
+ * - HA signer PostgreSQL connections
66
+ *
67
+ * Notes:
68
+ * - New validators must use a publisher key that was already configured at node
69
+ * startup (or omit the publisher field to fall back to the attester key).
70
+ * A validator with an unknown publisher key will cause the reload to be rejected.
71
+ */
72
+ reloadKeystore(): Promise<void>;
53
73
  }
54
74
 
55
- export type AztecNodeAdminConfig = ValidatorClientFullConfig &
75
+ // L1 contracts are not mutable via admin updates.
76
+ export type AztecNodeAdminConfig = Omit<ValidatorClientFullConfig, 'l1Contracts'> &
56
77
  SequencerConfig &
57
78
  ProverConfig &
58
79
  SlasherConfig &
@@ -65,7 +86,7 @@ export type AztecNodeAdminConfig = ValidatorClientFullConfig &
65
86
 
66
87
  export const AztecNodeAdminConfigSchema = SequencerConfigSchema.merge(ProverConfigSchema)
67
88
  .merge(SlasherConfigSchema)
68
- .merge(ValidatorClientFullConfigSchema)
89
+ .merge(ValidatorClientFullConfigSchema.omit({ l1Contracts: true }))
69
90
  .merge(
70
91
  ArchiverSpecificConfigSchema.pick({
71
92
  archiverPollingIntervalMS: true,
@@ -87,16 +108,19 @@ export const AztecNodeAdminApiSchema: ApiSchemaFor<AztecNodeAdmin> = {
87
108
  .function()
88
109
  .args(z.union([z.bigint(), z.literal('all'), z.literal('current')]))
89
110
  .returns(z.array(OffenseSchema)),
111
+ reloadKeystore: z.function().returns(z.void()),
90
112
  };
91
113
 
92
114
  export function createAztecNodeAdminClient(
93
115
  url: string,
94
116
  versions: Partial<ComponentsVersions> = {},
95
117
  fetch = defaultFetch,
118
+ apiKey?: string,
96
119
  ): AztecNodeAdmin {
97
120
  return createSafeJsonRpcClient<AztecNodeAdmin>(url, AztecNodeAdminApiSchema, {
98
121
  namespaceMethods: 'nodeAdmin',
99
122
  fetch,
100
123
  onResponse: getVersioningResponseHandler(versions),
124
+ ...(apiKey ? { extraHeaders: { 'x-api-key': apiKey } } : {}),
101
125
  });
102
126
  }