@aztec/stdlib 0.0.1-commit.7cf39cb55 → 0.0.1-commit.7ffbba4

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 (357) hide show
  1. package/dest/abi/decoder.d.ts +2 -2
  2. package/dest/abi/decoder.d.ts.map +1 -1
  3. package/dest/abi/decoder.js +7 -5
  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 +37 -6
  7. package/dest/abi/event_metadata_definition.d.ts +3 -1
  8. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  9. package/dest/abi/event_metadata_definition.js +1 -1
  10. package/dest/abi/utils.d.ts +14 -1
  11. package/dest/abi/utils.d.ts.map +1 -1
  12. package/dest/abi/utils.js +15 -0
  13. package/dest/auth_witness/auth_witness.js +3 -3
  14. package/dest/avm/avm.d.ts +300 -300
  15. package/dest/avm/avm_proving_request.d.ts +166 -166
  16. package/dest/avm/revert_code.d.ts +16 -1
  17. package/dest/avm/revert_code.d.ts.map +1 -1
  18. package/dest/avm/revert_code.js +15 -5
  19. package/dest/block/block_data.d.ts +52 -0
  20. package/dest/block/block_data.d.ts.map +1 -0
  21. package/dest/block/block_data.js +12 -0
  22. package/dest/block/index.d.ts +2 -1
  23. package/dest/block/index.d.ts.map +1 -1
  24. package/dest/block/index.js +1 -0
  25. package/dest/block/l2_block.d.ts +9 -1
  26. package/dest/block/l2_block.d.ts.map +1 -1
  27. package/dest/block/l2_block.js +12 -2
  28. package/dest/block/l2_block_source.d.ts +25 -1
  29. package/dest/block/l2_block_source.d.ts.map +1 -1
  30. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  31. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  32. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  33. package/dest/checkpoint/checkpoint.d.ts +22 -7
  34. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  35. package/dest/checkpoint/checkpoint.js +32 -16
  36. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  37. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  38. package/dest/checkpoint/checkpoint_data.js +26 -0
  39. package/dest/checkpoint/index.d.ts +3 -1
  40. package/dest/checkpoint/index.d.ts.map +1 -1
  41. package/dest/checkpoint/index.js +2 -0
  42. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  43. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  44. package/dest/checkpoint/published_checkpoint.js +1 -2
  45. package/dest/checkpoint/validate.d.ts +36 -0
  46. package/dest/checkpoint/validate.d.ts.map +1 -0
  47. package/dest/checkpoint/validate.js +120 -0
  48. package/dest/config/sequencer-config.d.ts +4 -2
  49. package/dest/config/sequencer-config.d.ts.map +1 -1
  50. package/dest/config/sequencer-config.js +12 -0
  51. package/dest/contract/contract_address.js +4 -4
  52. package/dest/contract/contract_class.d.ts +2 -3
  53. package/dest/contract/contract_class.d.ts.map +1 -1
  54. package/dest/contract/contract_class_id.d.ts +1 -1
  55. package/dest/contract/contract_class_id.d.ts.map +1 -1
  56. package/dest/contract/contract_class_id.js +5 -4
  57. package/dest/contract/private_function.js +2 -2
  58. package/dest/file-store/local.d.ts +3 -3
  59. package/dest/file-store/local.d.ts.map +1 -1
  60. package/dest/file-store/local.js +13 -4
  61. package/dest/file-store/s3.d.ts +1 -1
  62. package/dest/file-store/s3.d.ts.map +1 -1
  63. package/dest/file-store/s3.js +11 -3
  64. package/dest/gas/gas_fees.d.ts +1 -1
  65. package/dest/gas/gas_fees.d.ts.map +1 -1
  66. package/dest/gas/gas_fees.js +4 -1
  67. package/dest/ha-signing/config.d.ts +136 -0
  68. package/dest/ha-signing/config.d.ts.map +1 -0
  69. package/dest/ha-signing/config.js +97 -0
  70. package/dest/ha-signing/index.d.ts +4 -0
  71. package/dest/ha-signing/index.d.ts.map +1 -0
  72. package/dest/ha-signing/index.js +3 -0
  73. package/dest/ha-signing/local_config.d.ts +63 -0
  74. package/dest/ha-signing/local_config.d.ts.map +1 -0
  75. package/dest/ha-signing/local_config.js +24 -0
  76. package/dest/ha-signing/types.d.ts +85 -0
  77. package/dest/ha-signing/types.d.ts.map +1 -0
  78. package/dest/ha-signing/types.js +32 -0
  79. package/dest/hash/hash.js +11 -11
  80. package/dest/hash/map_slot.js +2 -2
  81. package/dest/interfaces/allowed_element.d.ts +26 -20
  82. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  83. package/dest/interfaces/allowed_element.js +8 -8
  84. package/dest/interfaces/archiver.d.ts +1 -1
  85. package/dest/interfaces/archiver.d.ts.map +1 -1
  86. package/dest/interfaces/archiver.js +6 -0
  87. package/dest/interfaces/aztec-node-admin.d.ts +99 -31
  88. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  89. package/dest/interfaces/aztec-node-admin.js +9 -3
  90. package/dest/interfaces/aztec-node.d.ts +11 -6
  91. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  92. package/dest/interfaces/aztec-node.js +3 -2
  93. package/dest/interfaces/block-builder.d.ts +12 -6
  94. package/dest/interfaces/block-builder.d.ts.map +1 -1
  95. package/dest/interfaces/block-builder.js +7 -2
  96. package/dest/interfaces/configs.d.ts +72 -32
  97. package/dest/interfaces/configs.d.ts.map +1 -1
  98. package/dest/interfaces/configs.js +9 -3
  99. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  100. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  101. package/dest/interfaces/p2p.d.ts +3 -8
  102. package/dest/interfaces/p2p.d.ts.map +1 -1
  103. package/dest/interfaces/proving-job.d.ts +2 -2
  104. package/dest/interfaces/validator.d.ts +104 -42
  105. package/dest/interfaces/validator.d.ts.map +1 -1
  106. package/dest/interfaces/validator.js +8 -4
  107. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  108. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  109. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  110. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  111. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  112. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  113. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  114. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  115. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  116. package/dest/kernel/hints/index.d.ts +2 -2
  117. package/dest/kernel/hints/index.js +2 -2
  118. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  119. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  120. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  121. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  122. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  123. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  124. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  125. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  126. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  127. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  128. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  129. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  130. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  131. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  132. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  133. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +4 -3
  134. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  135. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +11 -7
  136. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  137. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  138. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  139. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  140. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  141. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  142. package/dest/kernel/private_validation_requests.d.ts +3 -3
  143. package/dest/kernel/private_validation_requests.js +9 -9
  144. package/dest/keys/derivation.js +8 -8
  145. package/dest/keys/key_types.d.ts +3 -3
  146. package/dest/keys/key_types.d.ts.map +1 -1
  147. package/dest/keys/public_keys.js +2 -2
  148. package/dest/keys/utils.js +5 -5
  149. package/dest/kv-store/config.d.ts +17 -0
  150. package/dest/kv-store/config.d.ts.map +1 -0
  151. package/dest/kv-store/config.js +26 -0
  152. package/dest/kv-store/index.d.ts +2 -0
  153. package/dest/kv-store/index.d.ts.map +1 -0
  154. package/dest/kv-store/index.js +1 -0
  155. package/dest/logs/debug_log_store.d.ts +30 -0
  156. package/dest/logs/debug_log_store.d.ts.map +1 -0
  157. package/dest/logs/debug_log_store.js +30 -0
  158. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  159. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  160. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +23 -15
  161. package/dest/logs/index.d.ts +3 -2
  162. package/dest/logs/index.d.ts.map +1 -1
  163. package/dest/logs/index.js +2 -1
  164. package/dest/logs/pre_tag.d.ts +16 -11
  165. package/dest/logs/pre_tag.d.ts.map +1 -1
  166. package/dest/logs/pre_tag.js +2 -2
  167. package/dest/logs/private_log.d.ts +2 -2
  168. package/dest/logs/private_log.d.ts.map +1 -1
  169. package/dest/logs/public_log.d.ts +4 -3
  170. package/dest/logs/public_log.d.ts.map +1 -1
  171. package/dest/logs/public_log.js +2 -1
  172. package/dest/logs/siloed_tag.d.ts +5 -3
  173. package/dest/logs/siloed_tag.d.ts.map +1 -1
  174. package/dest/logs/siloed_tag.js +6 -1
  175. package/dest/logs/tag.js +1 -1
  176. package/dest/note/index.d.ts +1 -2
  177. package/dest/note/index.d.ts.map +1 -1
  178. package/dest/note/index.js +0 -1
  179. package/dest/p2p/attestation_utils.d.ts +11 -1
  180. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  181. package/dest/p2p/attestation_utils.js +45 -0
  182. package/dest/p2p/block_proposal.d.ts +2 -2
  183. package/dest/p2p/block_proposal.d.ts.map +1 -1
  184. package/dest/p2p/block_proposal.js +2 -4
  185. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  186. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  187. package/dest/p2p/checkpoint_attestation.js +1 -1
  188. package/dest/p2p/checkpoint_proposal.d.ts +11 -11
  189. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  190. package/dest/p2p/checkpoint_proposal.js +21 -28
  191. package/dest/p2p/client_type.d.ts +2 -5
  192. package/dest/p2p/client_type.d.ts.map +1 -1
  193. package/dest/p2p/client_type.js +0 -7
  194. package/dest/p2p/consensus_payload.d.ts +12 -3
  195. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  196. package/dest/p2p/consensus_payload.js +22 -15
  197. package/dest/p2p/index.d.ts +1 -2
  198. package/dest/p2p/index.d.ts.map +1 -1
  199. package/dest/p2p/index.js +0 -1
  200. package/dest/p2p/peer_error.d.ts +3 -1
  201. package/dest/p2p/peer_error.d.ts.map +1 -1
  202. package/dest/p2p/peer_error.js +5 -0
  203. package/dest/p2p/topic_type.d.ts +3 -4
  204. package/dest/p2p/topic_type.d.ts.map +1 -1
  205. package/dest/p2p/topic_type.js +7 -24
  206. package/dest/rollup/checkpoint_header.d.ts +2 -2
  207. package/dest/rollup/checkpoint_header.js +2 -2
  208. package/dest/slashing/tally.d.ts +7 -2
  209. package/dest/slashing/tally.d.ts.map +1 -1
  210. package/dest/slashing/tally.js +30 -2
  211. package/dest/tests/factories.d.ts +3 -1
  212. package/dest/tests/factories.d.ts.map +1 -1
  213. package/dest/tests/factories.js +19 -11
  214. package/dest/tests/mocks.d.ts +8 -3
  215. package/dest/tests/mocks.d.ts.map +1 -1
  216. package/dest/tests/mocks.js +31 -21
  217. package/dest/tx/block_header.d.ts +3 -1
  218. package/dest/tx/block_header.d.ts.map +1 -1
  219. package/dest/tx/block_header.js +6 -2
  220. package/dest/tx/global_variables.d.ts +4 -4
  221. package/dest/tx/global_variables.d.ts.map +1 -1
  222. package/dest/tx/profiling.d.ts +4 -4
  223. package/dest/tx/profiling.d.ts.map +1 -1
  224. package/dest/tx/profiling.js +3 -3
  225. package/dest/tx/protocol_contracts.d.ts +1 -1
  226. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  227. package/dest/tx/protocol_contracts.js +2 -2
  228. package/dest/tx/public_simulation_output.d.ts +4 -2
  229. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  230. package/dest/tx/public_simulation_output.js +7 -3
  231. package/dest/tx/simulated_tx.d.ts +5 -2
  232. package/dest/tx/simulated_tx.d.ts.map +1 -1
  233. package/dest/tx/simulated_tx.js +4 -1
  234. package/dest/tx/tx.d.ts +6 -5
  235. package/dest/tx/tx.d.ts.map +1 -1
  236. package/dest/tx/tx.js +18 -6
  237. package/dest/tx/tx_receipt.d.ts +16 -2
  238. package/dest/tx/tx_receipt.d.ts.map +1 -1
  239. package/dest/tx/tx_receipt.js +11 -3
  240. package/dest/tx/tx_request.js +2 -2
  241. package/dest/tx/validator/error_texts.d.ts +6 -2
  242. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  243. package/dest/tx/validator/error_texts.js +5 -1
  244. package/dest/update-checker/index.d.ts +3 -2
  245. package/dest/update-checker/index.d.ts.map +1 -1
  246. package/dest/update-checker/index.js +2 -1
  247. package/dest/update-checker/package_version.d.ts +3 -0
  248. package/dest/update-checker/package_version.d.ts.map +1 -0
  249. package/dest/update-checker/package_version.js +11 -0
  250. package/dest/update-checker/version_checker.d.ts +25 -0
  251. package/dest/update-checker/version_checker.d.ts.map +1 -0
  252. package/dest/update-checker/version_checker.js +50 -0
  253. package/package.json +12 -11
  254. package/src/abi/decoder.ts +15 -6
  255. package/src/abi/encoder.ts +49 -6
  256. package/src/abi/event_metadata_definition.ts +2 -0
  257. package/src/abi/utils.ts +25 -0
  258. package/src/auth_witness/auth_witness.ts +3 -3
  259. package/src/avm/revert_code.ts +15 -0
  260. package/src/block/block_data.ts +26 -0
  261. package/src/block/index.ts +1 -0
  262. package/src/block/l2_block.ts +13 -1
  263. package/src/block/l2_block_source.ts +28 -0
  264. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  265. package/src/checkpoint/checkpoint.ts +43 -16
  266. package/src/checkpoint/checkpoint_data.ts +51 -0
  267. package/src/checkpoint/index.ts +2 -0
  268. package/src/checkpoint/published_checkpoint.ts +3 -1
  269. package/src/checkpoint/validate.ts +230 -0
  270. package/src/config/sequencer-config.ts +19 -1
  271. package/src/contract/contract_address.ts +4 -4
  272. package/src/contract/contract_class.ts +3 -3
  273. package/src/contract/contract_class_id.ts +5 -4
  274. package/src/contract/private_function.ts +2 -2
  275. package/src/file-store/local.ts +15 -5
  276. package/src/file-store/s3.ts +12 -3
  277. package/src/gas/gas_fees.ts +7 -1
  278. package/src/ha-signing/config.ts +156 -0
  279. package/src/ha-signing/index.ts +27 -0
  280. package/src/ha-signing/local_config.ts +46 -0
  281. package/src/ha-signing/types.ts +112 -0
  282. package/src/hash/hash.ts +11 -11
  283. package/src/hash/map_slot.ts +2 -2
  284. package/src/interfaces/allowed_element.ts +29 -9
  285. package/src/interfaces/archiver.ts +6 -0
  286. package/src/interfaces/aztec-node-admin.ts +23 -0
  287. package/src/interfaces/aztec-node.ts +15 -5
  288. package/src/interfaces/block-builder.ts +26 -5
  289. package/src/interfaces/configs.ts +33 -8
  290. package/src/interfaces/merkle_tree_operations.ts +1 -1
  291. package/src/interfaces/p2p.ts +2 -13
  292. package/src/interfaces/validator.ts +51 -28
  293. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  294. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  295. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  296. package/src/kernel/hints/index.ts +2 -2
  297. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  298. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  299. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  300. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  301. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  302. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +14 -5
  303. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  304. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  305. package/src/kernel/private_validation_requests.ts +8 -8
  306. package/src/keys/derivation.ts +8 -8
  307. package/src/keys/key_types.ts +6 -2
  308. package/src/keys/public_keys.ts +2 -2
  309. package/src/keys/utils.ts +5 -5
  310. package/src/kv-store/config.ts +36 -0
  311. package/src/kv-store/index.ts +1 -0
  312. package/src/logs/debug_log_store.ts +54 -0
  313. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +24 -16
  314. package/src/logs/index.ts +2 -1
  315. package/src/logs/pre_tag.ts +5 -5
  316. package/src/logs/public_log.ts +4 -2
  317. package/src/logs/siloed_tag.ts +8 -2
  318. package/src/logs/tag.ts +1 -1
  319. package/src/note/index.ts +0 -1
  320. package/src/p2p/attestation_utils.ts +56 -0
  321. package/src/p2p/block_proposal.ts +1 -3
  322. package/src/p2p/checkpoint_attestation.ts +6 -1
  323. package/src/p2p/checkpoint_proposal.ts +36 -31
  324. package/src/p2p/client_type.ts +0 -6
  325. package/src/p2p/consensus_payload.ts +25 -12
  326. package/src/p2p/index.ts +0 -1
  327. package/src/p2p/peer_error.ts +7 -0
  328. package/src/p2p/topic_type.ts +8 -15
  329. package/src/rollup/checkpoint_header.ts +2 -2
  330. package/src/slashing/tally.ts +34 -1
  331. package/src/tests/factories.ts +21 -12
  332. package/src/tests/mocks.ts +46 -20
  333. package/src/tx/block_header.ts +8 -2
  334. package/src/tx/global_variables.ts +3 -3
  335. package/src/tx/profiling.ts +5 -5
  336. package/src/tx/protocol_contracts.ts +2 -2
  337. package/src/tx/public_simulation_output.ts +4 -0
  338. package/src/tx/simulated_tx.ts +8 -1
  339. package/src/tx/tx.ts +20 -11
  340. package/src/tx/tx_receipt.ts +10 -0
  341. package/src/tx/tx_request.ts +2 -2
  342. package/src/tx/validator/error_texts.ts +5 -1
  343. package/src/update-checker/index.ts +2 -1
  344. package/src/update-checker/package_version.ts +17 -0
  345. package/src/update-checker/version_checker.ts +65 -0
  346. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  347. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  348. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  349. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  350. package/dest/note/notes_filter.d.ts +0 -30
  351. package/dest/note/notes_filter.d.ts.map +0 -1
  352. package/dest/note/notes_filter.js +0 -11
  353. package/dest/update-checker/update-checker.d.ts +0 -49
  354. package/dest/update-checker/update-checker.d.ts.map +0 -1
  355. package/dest/update-checker/update-checker.js +0 -130
  356. package/src/note/notes_filter.ts +0 -41
  357. package/src/update-checker/update-checker.ts +0 -166
@@ -0,0 +1,85 @@
1
+ import { BlockNumber, type CheckpointNumber, type IndexWithinCheckpoint, type SlotNumber } from '@aztec/foundation/branded-types';
2
+ /**
3
+ * Type of validator duty being performed
4
+ */
5
+ export declare enum DutyType {
6
+ BLOCK_PROPOSAL = "BLOCK_PROPOSAL",
7
+ CHECKPOINT_PROPOSAL = "CHECKPOINT_PROPOSAL",
8
+ ATTESTATION = "ATTESTATION",
9
+ ATTESTATIONS_AND_SIGNERS = "ATTESTATIONS_AND_SIGNERS",
10
+ GOVERNANCE_VOTE = "GOVERNANCE_VOTE",
11
+ SLASHING_VOTE = "SLASHING_VOTE",
12
+ AUTH_REQUEST = "AUTH_REQUEST",
13
+ TXS = "TXS"
14
+ }
15
+ /**
16
+ * Base context for signing operations
17
+ */
18
+ interface BaseSigningContext {
19
+ /** Slot number for this duty */
20
+ slot: SlotNumber;
21
+ /**
22
+ * Block or checkpoint number for this duty.
23
+ * For block proposals, this is the block number.
24
+ * For checkpoint proposals, this is the checkpoint number.
25
+ */
26
+ blockNumber: BlockNumber | CheckpointNumber;
27
+ }
28
+ /**
29
+ * Signing context for block proposals.
30
+ * blockIndexWithinCheckpoint is REQUIRED and must be >= 0.
31
+ */
32
+ export interface BlockProposalSigningContext extends BaseSigningContext {
33
+ /** Block index within checkpoint (0, 1, 2...). Required for block proposals. */
34
+ blockIndexWithinCheckpoint: IndexWithinCheckpoint;
35
+ dutyType: DutyType.BLOCK_PROPOSAL;
36
+ }
37
+ /**
38
+ * Signing context for non-block-proposal duties that require HA protection.
39
+ * blockIndexWithinCheckpoint is not applicable (internally always -1).
40
+ */
41
+ export interface OtherSigningContext extends BaseSigningContext {
42
+ dutyType: DutyType.CHECKPOINT_PROPOSAL | DutyType.ATTESTATION | DutyType.ATTESTATIONS_AND_SIGNERS;
43
+ }
44
+ /**
45
+ * Signing context for governance/slashing votes which only need slot for HA protection.
46
+ * blockNumber is not applicable (internally always 0).
47
+ */
48
+ export interface VoteSigningContext {
49
+ slot: SlotNumber;
50
+ dutyType: DutyType.GOVERNANCE_VOTE | DutyType.SLASHING_VOTE;
51
+ }
52
+ /**
53
+ * Signing context for duties which don't require slot/blockNumber
54
+ * as they don't need HA protection (AUTH_REQUEST, TXS).
55
+ */
56
+ export interface NoHAProtectionSigningContext {
57
+ dutyType: DutyType.AUTH_REQUEST | DutyType.TXS;
58
+ }
59
+ /**
60
+ * Signing contexts that require HA protection (excludes AUTH_REQUEST).
61
+ * Used by the HA signer's signWithProtection method.
62
+ */
63
+ export type HAProtectedSigningContext = BlockProposalSigningContext | OtherSigningContext | VoteSigningContext;
64
+ /**
65
+ * Context required for slashing protection during signing operations.
66
+ * Uses discriminated union to enforce type safety:
67
+ * - BLOCK_PROPOSAL duties MUST have blockIndexWithinCheckpoint >= 0
68
+ * - Other duty types do NOT have blockIndexWithinCheckpoint (internally -1)
69
+ * - Vote duties only need slot (blockNumber is internally 0)
70
+ * - AUTH_REQUEST and TXS duties don't need slot/blockNumber (no HA protection needed)
71
+ */
72
+ export type SigningContext = HAProtectedSigningContext | NoHAProtectionSigningContext;
73
+ /**
74
+ * Type guard to check if a SigningContext requires HA protection.
75
+ * Returns true for contexts that need HA protection, false for AUTH_REQUEST and TXS.
76
+ */
77
+ export declare function isHAProtectedContext(context: SigningContext): context is HAProtectedSigningContext;
78
+ /**
79
+ * Gets the block number from a signing context.
80
+ * - Vote duties (GOVERNANCE_VOTE, SLASHING_VOTE): returns BlockNumber(0)
81
+ * - Other duties: returns the blockNumber from the context
82
+ */
83
+ export declare function getBlockNumberFromSigningContext(context: HAProtectedSigningContext): BlockNumber | CheckpointNumber;
84
+ export {};
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oYS1zaWduaW5nL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBQ1gsS0FBSyxnQkFBZ0IsRUFDckIsS0FBSyxxQkFBcUIsRUFDMUIsS0FBSyxVQUFVLEVBQ2hCLE1BQU0saUNBQWlDLENBQUM7QUFFekM7O0dBRUc7QUFDSCxvQkFBWSxRQUFRO0lBQ2xCLGNBQWMsbUJBQW1CO0lBQ2pDLG1CQUFtQix3QkFBd0I7SUFDM0MsV0FBVyxnQkFBZ0I7SUFDM0Isd0JBQXdCLDZCQUE2QjtJQUNyRCxlQUFlLG9CQUFvQjtJQUNuQyxhQUFhLGtCQUFrQjtJQUMvQixZQUFZLGlCQUFpQjtJQUM3QixHQUFHLFFBQVE7Q0FDWjtBQUVEOztHQUVHO0FBQ0gsVUFBVSxrQkFBa0I7SUFDMUIsZ0NBQWdDO0lBQ2hDLElBQUksRUFBRSxVQUFVLENBQUM7SUFDakI7Ozs7T0FJRztJQUNILFdBQVcsRUFBRSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7Q0FDN0M7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFdBQVcsMkJBQTRCLFNBQVEsa0JBQWtCO0lBQ3JFLGdGQUFnRjtJQUNoRiwwQkFBMEIsRUFBRSxxQkFBcUIsQ0FBQztJQUNsRCxRQUFRLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQztDQUNuQztBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxtQkFBb0IsU0FBUSxrQkFBa0I7SUFDN0QsUUFBUSxFQUFFLFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxRQUFRLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQztDQUNuRztBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxrQkFBa0I7SUFDakMsSUFBSSxFQUFFLFVBQVUsQ0FBQztJQUNqQixRQUFRLEVBQUUsUUFBUSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO0NBQzdEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxXQUFXLDRCQUE0QjtJQUMzQyxRQUFRLEVBQUUsUUFBUSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO0NBQ2hEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLHlCQUF5QixHQUFHLDJCQUEyQixHQUFHLG1CQUFtQixHQUFHLGtCQUFrQixDQUFDO0FBRS9HOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLE1BQU0sY0FBYyxHQUFHLHlCQUF5QixHQUFHLDRCQUE0QixDQUFDO0FBRXRGOzs7R0FHRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxHQUFHLE9BQU8sSUFBSSx5QkFBeUIsQ0FFbEc7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLGdDQUFnQyxDQUFDLE9BQU8sRUFBRSx5QkFBeUIsR0FBRyxXQUFXLEdBQUcsZ0JBQWdCLENBWW5IIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ha-signing/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EAChB,MAAM,iCAAiC,CAAC;AAEzC;;GAEG;AACH,oBAAY,QAAQ;IAClB,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,WAAW,gBAAgB;IAC3B,wBAAwB,6BAA6B;IACrD,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,UAAU,kBAAkB;IAC1B,gCAAgC;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB;;;;OAIG;IACH,WAAW,EAAE,WAAW,GAAG,gBAAgB,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,kBAAkB;IACrE,gFAAgF;IAChF,0BAA0B,EAAE,qBAAqB,CAAC;IAClD,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,GAAG,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,wBAAwB,CAAC;CACnG;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC;CAC7D;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC;CAChD;AAED;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,2BAA2B,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAE/G;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG,yBAAyB,GAAG,4BAA4B,CAAC;AAEtF;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,IAAI,yBAAyB,CAElG;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,yBAAyB,GAAG,WAAW,GAAG,gBAAgB,CAYnH"}
@@ -0,0 +1,32 @@
1
+ import { BlockNumber } from '@aztec/foundation/branded-types';
2
+ /**
3
+ * Type of validator duty being performed
4
+ */ export var DutyType = /*#__PURE__*/ function(DutyType) {
5
+ DutyType["BLOCK_PROPOSAL"] = "BLOCK_PROPOSAL";
6
+ DutyType["CHECKPOINT_PROPOSAL"] = "CHECKPOINT_PROPOSAL";
7
+ DutyType["ATTESTATION"] = "ATTESTATION";
8
+ DutyType["ATTESTATIONS_AND_SIGNERS"] = "ATTESTATIONS_AND_SIGNERS";
9
+ DutyType["GOVERNANCE_VOTE"] = "GOVERNANCE_VOTE";
10
+ DutyType["SLASHING_VOTE"] = "SLASHING_VOTE";
11
+ DutyType["AUTH_REQUEST"] = "AUTH_REQUEST";
12
+ DutyType["TXS"] = "TXS";
13
+ return DutyType;
14
+ }({});
15
+ /**
16
+ * Type guard to check if a SigningContext requires HA protection.
17
+ * Returns true for contexts that need HA protection, false for AUTH_REQUEST and TXS.
18
+ */ export function isHAProtectedContext(context) {
19
+ return context.dutyType !== "AUTH_REQUEST" && context.dutyType !== "TXS";
20
+ }
21
+ /**
22
+ * Gets the block number from a signing context.
23
+ * - Vote duties (GOVERNANCE_VOTE, SLASHING_VOTE): returns BlockNumber(0)
24
+ * - Other duties: returns the blockNumber from the context
25
+ */ export function getBlockNumberFromSigningContext(context) {
26
+ // Check for duty types that have blockNumber
27
+ if (context.dutyType === "BLOCK_PROPOSAL" || context.dutyType === "CHECKPOINT_PROPOSAL" || context.dutyType === "ATTESTATION" || context.dutyType === "ATTESTATIONS_AND_SIGNERS") {
28
+ return context.blockNumber;
29
+ }
30
+ // Vote duties (GOVERNANCE_VOTE, SLASHING_VOTE) don't have blockNumber
31
+ return BlockNumber(0);
32
+ }
package/dest/hash/hash.js 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';
@@ -20,7 +20,7 @@ import { AztecAddress } from '../aztec-address/index.js';
20
20
  return poseidon2HashWithSeparator([
21
21
  nullifierZero,
22
22
  noteHashIndex
23
- ], GeneratorIndex.NOTE_HASH_NONCE);
23
+ ], DomainSeparator.NOTE_HASH_NONCE);
24
24
  }
25
25
  /**
26
26
  * Computes a siloed note hash, given the contract address and the note hash itself.
@@ -32,7 +32,7 @@ import { AztecAddress } from '../aztec-address/index.js';
32
32
  return poseidon2HashWithSeparator([
33
33
  contract,
34
34
  noteHash
35
- ], GeneratorIndex.SILOED_NOTE_HASH);
35
+ ], DomainSeparator.SILOED_NOTE_HASH);
36
36
  }
37
37
  /**
38
38
  * Computes a unique note hash.
@@ -43,7 +43,7 @@ import { AztecAddress } from '../aztec-address/index.js';
43
43
  return poseidon2HashWithSeparator([
44
44
  noteNonce,
45
45
  siloedNoteHash
46
- ], GeneratorIndex.UNIQUE_NOTE_HASH);
46
+ ], DomainSeparator.UNIQUE_NOTE_HASH);
47
47
  }
48
48
  /**
49
49
  * Computes a siloed nullifier, given the contract address and the inner nullifier.
@@ -55,7 +55,7 @@ import { AztecAddress } from '../aztec-address/index.js';
55
55
  return poseidon2HashWithSeparator([
56
56
  contract,
57
57
  innerNullifier
58
- ], GeneratorIndex.SILOED_NULLIFIER);
58
+ ], DomainSeparator.SILOED_NULLIFIER);
59
59
  }
60
60
  /**
61
61
  * Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
@@ -70,7 +70,7 @@ export function computeSiloedPrivateLogFirstField(contract, field) {
70
70
  return poseidon2HashWithSeparator([
71
71
  contract,
72
72
  field
73
- ], GeneratorIndex.PRIVATE_LOG_FIRST_FIELD);
73
+ ], DomainSeparator.PRIVATE_LOG_FIRST_FIELD);
74
74
  }
75
75
  /**
76
76
  * Computes a public data tree value ready for insertion.
@@ -90,7 +90,7 @@ export function computeSiloedPrivateLogFirstField(contract, field) {
90
90
  return poseidon2HashWithSeparator([
91
91
  contractAddress,
92
92
  storageSlot
93
- ], GeneratorIndex.PUBLIC_LEAF_SLOT);
93
+ ], DomainSeparator.PUBLIC_LEAF_SLOT);
94
94
  }
95
95
  /**
96
96
  * Computes the hash of a list of arguments.
@@ -101,14 +101,14 @@ export function computeSiloedPrivateLogFirstField(contract, field) {
101
101
  if (args.length === 0) {
102
102
  return Promise.resolve(Fr.ZERO);
103
103
  }
104
- return poseidon2HashWithSeparator(args, GeneratorIndex.FUNCTION_ARGS);
104
+ return poseidon2HashWithSeparator(args, DomainSeparator.FUNCTION_ARGS);
105
105
  }
106
106
  /**
107
107
  * Computes the hash of a public function's calldata.
108
108
  * @param calldata - Calldata to hash.
109
109
  * @returns Hash of the calldata.
110
110
  */ export function computeCalldataHash(calldata) {
111
- return poseidon2HashWithSeparator(calldata, GeneratorIndex.PUBLIC_CALLDATA);
111
+ return poseidon2HashWithSeparator(calldata, DomainSeparator.PUBLIC_CALLDATA);
112
112
  }
113
113
  /**
114
114
  * Computes a hash of a secret.
@@ -118,13 +118,13 @@ export function computeSiloedPrivateLogFirstField(contract, field) {
118
118
  */ export function computeSecretHash(secret) {
119
119
  return poseidon2HashWithSeparator([
120
120
  secret
121
- ], GeneratorIndex.SECRET_HASH);
121
+ ], DomainSeparator.SECRET_HASH);
122
122
  }
123
123
  export async function computeL1ToL2MessageNullifier(contract, messageHash, secret) {
124
124
  const innerMessageNullifier = await poseidon2HashWithSeparator([
125
125
  messageHash,
126
126
  secret
127
- ], GeneratorIndex.MESSAGE_NULLIFIER);
127
+ ], DomainSeparator.MESSAGE_NULLIFIER);
128
128
  return siloNullifier(contract, innerMessageNullifier);
129
129
  }
130
130
  /**
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  /**
4
4
  * Computes the resulting storage slot for an entry in a map.
@@ -9,5 +9,5 @@ import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
9
9
  return poseidon2HashWithSeparator([
10
10
  mapSlot,
11
11
  key.toField()
12
- ], GeneratorIndex.PUBLIC_STORAGE_MAP_SLOT);
12
+ ], DomainSeparator.PUBLIC_STORAGE_MAP_SLOT);
13
13
  }
@@ -2,51 +2,57 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { z } from 'zod';
3
3
  import type { FunctionSelector } from '../abi/function_selector.js';
4
4
  import type { AztecAddress } from '../aztec-address/index.js';
5
- type AllowedInstance = {
6
- address: AztecAddress;
7
- };
8
5
  type AllowedInstanceFunction = {
9
6
  address: AztecAddress;
10
7
  selector: FunctionSelector;
11
- };
12
- type AllowedClass = {
13
- classId: Fr;
8
+ onlySelf?: boolean;
9
+ rejectNullMsgSender?: boolean;
10
+ calldataLength?: number;
14
11
  };
15
12
  type AllowedClassFunction = {
16
13
  classId: Fr;
17
14
  selector: FunctionSelector;
15
+ onlySelf?: boolean;
16
+ rejectNullMsgSender?: boolean;
17
+ calldataLength?: number;
18
18
  };
19
- export type AllowedElement = AllowedInstance | AllowedInstanceFunction | AllowedClass | AllowedClassFunction;
19
+ export type AllowedElement = AllowedInstanceFunction | AllowedClassFunction;
20
20
  export declare const AllowedElementSchema: z.ZodUnion<[z.ZodObject<{
21
21
  address: import("../schemas/index.js").ZodFor<AztecAddress>;
22
22
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
23
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
24
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
25
+ calldataLength: z.ZodOptional<z.ZodNumber>;
23
26
  }, "strip", z.ZodTypeAny, {
24
27
  address: AztecAddress;
25
28
  selector: FunctionSelector;
29
+ onlySelf?: boolean | undefined;
30
+ rejectNullMsgSender?: boolean | undefined;
31
+ calldataLength?: number | undefined;
26
32
  }, {
27
33
  address?: any;
28
34
  selector?: any;
29
- }>, z.ZodObject<{
30
- address: import("../schemas/index.js").ZodFor<AztecAddress>;
31
- }, "strip", z.ZodTypeAny, {
32
- address: AztecAddress;
33
- }, {
34
- address?: any;
35
+ onlySelf?: boolean | undefined;
36
+ rejectNullMsgSender?: boolean | undefined;
37
+ calldataLength?: number | undefined;
35
38
  }>, z.ZodObject<{
36
39
  classId: import("../schemas/index.js").ZodFor<Fr>;
37
40
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
41
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
42
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
43
+ calldataLength: z.ZodOptional<z.ZodNumber>;
38
44
  }, "strip", z.ZodTypeAny, {
39
45
  classId: Fr;
40
46
  selector: FunctionSelector;
47
+ onlySelf?: boolean | undefined;
48
+ rejectNullMsgSender?: boolean | undefined;
49
+ calldataLength?: number | undefined;
41
50
  }, {
42
51
  classId?: any;
43
52
  selector?: any;
44
- }>, z.ZodObject<{
45
- classId: import("../schemas/index.js").ZodFor<Fr>;
46
- }, "strip", z.ZodTypeAny, {
47
- classId: Fr;
48
- }, {
49
- classId?: any;
53
+ onlySelf?: boolean | undefined;
54
+ rejectNullMsgSender?: boolean | undefined;
55
+ calldataLength?: number | undefined;
50
56
  }>]>;
51
57
  export {};
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssZUFBZSxHQUFHO0lBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQTtDQUFFLENBQUM7QUFDakQsS0FBSyx1QkFBdUIsR0FBRztJQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBQ3JGLEtBQUssWUFBWSxHQUFHO0lBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQTtDQUFFLENBQUM7QUFDcEMsS0FBSyxvQkFBb0IsR0FBRztJQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBRXhFLE1BQU0sTUFBTSxjQUFjLEdBQUcsZUFBZSxHQUFHLHVCQUF1QixHQUFHLFlBQVksR0FBRyxvQkFBb0IsQ0FBQztBQUU3RyxlQUFPLE1BQU0sb0JBQW9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFPaEMsQ0FBQyJ9
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssdUJBQXVCLEdBQUc7SUFDN0IsT0FBTyxFQUFFLFlBQVksQ0FBQztJQUN0QixRQUFRLEVBQUUsZ0JBQWdCLENBQUM7SUFDM0IsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQ25CLG1CQUFtQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzlCLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUN6QixDQUFDO0FBQ0YsS0FBSyxvQkFBb0IsR0FBRztJQUMxQixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osUUFBUSxFQUFFLGdCQUFnQixDQUFDO0lBQzNCLFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNuQixtQkFBbUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUM5QixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDekIsQ0FBQztBQUVGLE1BQU0sTUFBTSxjQUFjLEdBQUcsdUJBQXVCLEdBQUcsb0JBQW9CLENBQUM7QUFFNUUsZUFBTyxNQUFNLG9CQUFvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUJoQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,eAAe,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AACjD,KAAK,uBAAuB,GAAG;IAAE,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACrF,KAAK,YAAY,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAC;AACpC,KAAK,oBAAoB,GAAG;IAAE,OAAO,EAAE,EAAE,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,uBAAuB,GAAG,YAAY,GAAG,oBAAoB,CAAC;AAE7G,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOhC,CAAC"}
1
+ {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,EAAE,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,uBAAuB,GAAG,oBAAoB,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBhC,CAAC"}
@@ -3,16 +3,16 @@ import { schemas, zodFor } from '../schemas/index.js';
3
3
  export const AllowedElementSchema = zodFor()(z.union([
4
4
  z.object({
5
5
  address: schemas.AztecAddress,
6
- selector: schemas.FunctionSelector
7
- }),
8
- z.object({
9
- address: schemas.AztecAddress
6
+ selector: schemas.FunctionSelector,
7
+ onlySelf: z.boolean().optional(),
8
+ rejectNullMsgSender: z.boolean().optional(),
9
+ calldataLength: z.number().optional()
10
10
  }),
11
11
  z.object({
12
12
  classId: schemas.Fr,
13
- selector: schemas.FunctionSelector
14
- }),
15
- z.object({
16
- classId: schemas.Fr
13
+ selector: schemas.FunctionSelector,
14
+ onlySelf: z.boolean().optional(),
15
+ rejectNullMsgSender: z.boolean().optional(),
16
+ calldataLength: z.number().optional()
17
17
  })
18
18
  ]));
@@ -58,4 +58,4 @@ export declare const ArchiverSpecificConfigSchema: z.ZodObject<{
58
58
  }>;
59
59
  export type ArchiverApi = Omit<L2BlockSource & L2LogsSource & ContractDataSource & L1ToL2MessageSource, 'start' | 'stop'>;
60
60
  export declare const ArchiverApiSchema: ApiSchemaFor<ArchiverApi>;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUt4QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFJL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBcUV2RCxDQUFDIn0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQU14QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFLL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBeUV2RCxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAI/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAqEvD,CAAC"}
1
+ {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAK/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAyEvD,CAAC"}
@@ -1,11 +1,13 @@
1
1
  import { BlockNumberSchema, CheckpointNumberSchema, EpochNumberSchema } from '@aztec/foundation/branded-types';
2
2
  import { z } from 'zod';
3
+ import { BlockDataSchema } from '../block/block_data.js';
3
4
  import { BlockHash } from '../block/block_hash.js';
4
5
  import { CheckpointedL2Block } from '../block/checkpointed_l2_block.js';
5
6
  import { L2Block } from '../block/l2_block.js';
6
7
  import { L2TipsSchema } from '../block/l2_block_source.js';
7
8
  import { ValidateCheckpointResultSchema } from '../block/validate_block_result.js';
8
9
  import { Checkpoint } from '../checkpoint/checkpoint.js';
10
+ import { CheckpointDataSchema } from '../checkpoint/checkpoint_data.js';
9
11
  import { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
10
12
  import { ContractClassPublicSchema, ContractInstanceWithAddressSchema } from '../contract/index.js';
11
13
  import { L1RollupConstantsSchema } from '../epoch-helpers/index.js';
@@ -35,6 +37,7 @@ export const ArchiverApiSchema = {
35
37
  getBlockNumber: z.function().args().returns(BlockNumberSchema),
36
38
  getProvenBlockNumber: z.function().args().returns(BlockNumberSchema),
37
39
  getCheckpointedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
40
+ getCheckpointNumber: z.function().args().returns(CheckpointNumberSchema),
38
41
  getFinalizedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
39
42
  getBlock: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
40
43
  getBlockHeader: z.function().args(z.union([
@@ -49,6 +52,8 @@ export const ArchiverApiSchema = {
49
52
  getCheckpointedBlockByArchive: z.function().args(schemas.Fr).returns(CheckpointedL2Block.schema.optional()),
50
53
  getBlockHeaderByHash: z.function().args(BlockHash.schema).returns(BlockHeader.schema.optional()),
51
54
  getBlockHeaderByArchive: z.function().args(schemas.Fr).returns(BlockHeader.schema.optional()),
55
+ getBlockData: z.function().args(BlockNumberSchema).returns(BlockDataSchema.optional()),
56
+ getBlockDataByArchive: z.function().args(schemas.Fr).returns(BlockDataSchema.optional()),
52
57
  getL2Block: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
53
58
  getL2BlockByHash: z.function().args(BlockHash.schema).returns(L2Block.schema.optional()),
54
59
  getL2BlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
@@ -57,6 +62,7 @@ export const ArchiverApiSchema = {
57
62
  getL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
58
63
  getL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
59
64
  getCheckpointsForEpoch: z.function().args(EpochNumberSchema).returns(z.array(Checkpoint.schema)),
65
+ getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
60
66
  getCheckpointedBlocksForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointedL2Block.schema)),
61
67
  getBlocksForSlot: z.function().args(schemas.SlotNumber).returns(z.array(L2Block.schema)),
62
68
  getCheckpointedBlockHeadersForEpoch: z.function().args(EpochNumberSchema).returns(z.array(BlockHeader.schema)),